提交 14f96fbd authored 作者: aiqingguo's avatar aiqingguo

司机上报积分统计

上级 a4efddbb
...@@ -25,8 +25,9 @@ public enum CollectTruckWaitEnum { ...@@ -25,8 +25,9 @@ public enum CollectTruckWaitEnum {
@Getter @Getter
@AllArgsConstructor @AllArgsConstructor
public enum waitType { public enum waitType {
LOAD(1, "装车类型"), NO(1, "无需排队"),
UNLOAD(2, "卸车类型"); INNER(2, "场内需要排队"),
OUTER(3, "厂外需要排队");
private final Integer code; private final Integer code;
private final String msg; private final String msg;
......
package com.clx.performance.enums.integral;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
public enum IntegralRecordEnum {
;
@Getter
@AllArgsConstructor
public enum Type{
SYSTEM(1, "系统"),
PROTECTION(2, "保护分"),
PROTECTION_CANCEL(3, "保护分取消"),
SETTLEMENT(4, "结算分"),
BASE(5, "基础分"),
ORDER_CHILD_COMPLETE(11, "运单完成"),
ORDER_CHILD_COMPLETE_NUM(12, "运单完成数量"),
ORDER_CHILD_COMPLETE_WATER(13, "流水单"),
ORDER_CHILD_COMPLETE_SUPPORT(14, "支援单"),
ORDER_CHILD_COMPLETE_TIMEOUT(15, "运单完成超时"),
ORDER_CHILD_CANCEL(21, "运单取消"),
ORDER_CHILD_CANCEL_TIMEOUT(22, "运单取消超时"),
REPORT_TRUCK_INFO(50, "提交基础信息"),
REPORT_REFUEL(51, "油表上报"),
REPORT_TRAFFIC(52, "上报交通拥堵"),
REPORT_SEND_ADDRESS_WAIT(53, "上报货源地需要排队"),
REPORT_SEND_ADDRESS_NO_WAIT(54, "上报货源地无需排队"),
REPORT_RECEIVE_ADDRESS_WAIT(55, "上报目的地需要排队"),
REPORT_RECEIVE_ADDRESS_NO_WAIT(56, "上报目的地无需排队"),
REPORT_QUALITY(57, "上报煤炭质量问题"),
REPORT_ABNORMAL(58, "上报拉运异常问题"),
;
private Integer value;
private String msg;
}
// 取消
public static final List<Integer> DRIVER_REPORT_lIST = Arrays.asList(
Type.REPORT_TRUCK_INFO.value,
Type.REPORT_REFUEL.value,
Type.REPORT_TRAFFIC.value,
Type.REPORT_SEND_ADDRESS_WAIT.value,
Type.REPORT_SEND_ADDRESS_NO_WAIT.value,
Type.REPORT_RECEIVE_ADDRESS_WAIT.value,
Type.REPORT_RECEIVE_ADDRESS_NO_WAIT.value,
Type.REPORT_QUALITY.value,
Type.REPORT_ABNORMAL.value
);
}
package com.clx.performance.controller.app; package com.clx.performance.controller.app;
import com.clx.performance.param.app.collect.*; import com.clx.performance.param.app.collect.*;
import com.clx.performance.service.collect.CollectTruckReportService; import com.clx.performance.service.collect.CollectTruckService;
import com.clx.performance.vo.app.collect.AppCollectTruckVO; import com.clx.performance.vo.app.collect.AppCollectTruckVO;
import com.msl.common.result.Result; import com.msl.common.result.Result;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -21,12 +21,12 @@ import javax.validation.constraints.NotBlank; ...@@ -21,12 +21,12 @@ import javax.validation.constraints.NotBlank;
@AllArgsConstructor @AllArgsConstructor
public class AppDriverCollectTruckController { public class AppDriverCollectTruckController {
private final CollectTruckReportService collectTruckReportService; private final CollectTruckService collectTruckService;
@ApiOperation(value = "更新卸车方式", notes = "<br>By:艾庆国") @ApiOperation(value = "更新卸车方式", notes = "<br>By:艾庆国")
@PostMapping("/updateUnloadType") @PostMapping("/updateUnloadType")
public Result<Void> updateUnloadType(@RequestBody @Validated CollectTruckUnloadTypeUpdateParam param) { public Result<Void> updateUnloadType(@RequestBody @Validated CollectTruckUnloadTypeUpdateParam param) {
collectTruckReportService.updateUnloadType(param); collectTruckService.updateUnloadType(param);
return Result.ok(); return Result.ok();
} }
...@@ -34,7 +34,7 @@ public class AppDriverCollectTruckController { ...@@ -34,7 +34,7 @@ public class AppDriverCollectTruckController {
@ApiOperation(value = "更新车贷情况", notes = "<br>By:艾庆国") @ApiOperation(value = "更新车贷情况", notes = "<br>By:艾庆国")
@PostMapping("/updateAutoLoanStatus") @PostMapping("/updateAutoLoanStatus")
public Result<Void> updateAutoLoanStatus(@RequestBody @Validated CollectAutoLoanStatusUpdateParam param) { public Result<Void> updateAutoLoanStatus(@RequestBody @Validated CollectAutoLoanStatusUpdateParam param) {
collectTruckReportService.updateAutoLoanStatus(param); collectTruckService.updateAutoLoanStatus(param);
return Result.ok(); return Result.ok();
} }
...@@ -42,7 +42,7 @@ public class AppDriverCollectTruckController { ...@@ -42,7 +42,7 @@ public class AppDriverCollectTruckController {
@ApiOperation(value = "更新车辆停放位置", notes = "<br>By:艾庆国") @ApiOperation(value = "更新车辆停放位置", notes = "<br>By:艾庆国")
@PostMapping("/updateParkAddress") @PostMapping("/updateParkAddress")
public Result<Void> updateParkAddress(@RequestBody @Validated CollectTruckReportParkAddressUpdateParam param) { public Result<Void> updateParkAddress(@RequestBody @Validated CollectTruckReportParkAddressUpdateParam param) {
collectTruckReportService.updateParkAddress(param); collectTruckService.updateParkAddress(param);
return Result.ok(); return Result.ok();
} }
...@@ -50,7 +50,7 @@ public class AppDriverCollectTruckController { ...@@ -50,7 +50,7 @@ public class AppDriverCollectTruckController {
@ApiOperation(value = "更新拉运方式", notes = "<br>By:艾庆国") @ApiOperation(value = "更新拉运方式", notes = "<br>By:艾庆国")
@PostMapping("/updateOverTonnageType") @PostMapping("/updateOverTonnageType")
public Result<Void> updateOverTonnageType(@RequestBody @Validated CollectTruckReportOverTonnageTypeUpdateParam param) { public Result<Void> updateOverTonnageType(@RequestBody @Validated CollectTruckReportOverTonnageTypeUpdateParam param) {
collectTruckReportService.updateOverTonnageType(param); collectTruckService.updateOverTonnageType(param);
return Result.ok(); return Result.ok();
} }
...@@ -58,14 +58,14 @@ public class AppDriverCollectTruckController { ...@@ -58,14 +58,14 @@ public class AppDriverCollectTruckController {
@ApiOperation(value = "更新接受距常驻地最远距离", notes = "<br>By:艾庆国") @ApiOperation(value = "更新接受距常驻地最远距离", notes = "<br>By:艾庆国")
@PostMapping("/updateUsualPlaceDistanceMax") @PostMapping("/updateUsualPlaceDistanceMax")
public Result<Void> updateDistanceUsualPlaceMax(@RequestBody @Validated CollectTruckReportDistanceUsualPlaceMaxUpdateParam param) { public Result<Void> updateDistanceUsualPlaceMax(@RequestBody @Validated CollectTruckReportDistanceUsualPlaceMaxUpdateParam param) {
collectTruckReportService.updateDistanceUsualPlaceMax(param); collectTruckService.updateDistanceUsualPlaceMax(param);
return Result.ok(); return Result.ok();
} }
@ApiOperation(value = "更新单次任务接受最远距离", notes = "<br>By:艾庆国") @ApiOperation(value = "更新单次任务接受最远距离", notes = "<br>By:艾庆国")
@PostMapping("/updateLineDistanceMax") @PostMapping("/updateLineDistanceMax")
public Result<Void> updateDistanceLineMax(@RequestBody @Validated CollectTruckReportDistanceLineMaxUpdateParam param) { public Result<Void> updateDistanceLineMax(@RequestBody @Validated CollectTruckReportDistanceLineMaxUpdateParam param) {
collectTruckReportService.updateDistanceLineMax(param); collectTruckService.updateDistanceLineMax(param);
return Result.ok(); return Result.ok();
} }
...@@ -73,7 +73,7 @@ public class AppDriverCollectTruckController { ...@@ -73,7 +73,7 @@ public class AppDriverCollectTruckController {
@ApiOperation(value = "更新接受距货源地最远距离", notes = "<br>By:艾庆国") @ApiOperation(value = "更新接受距货源地最远距离", notes = "<br>By:艾庆国")
@PostMapping("/updateSendAddressDistanceMax") @PostMapping("/updateSendAddressDistanceMax")
public Result<Void> updateDistanceSendAddressMax(@RequestBody @Validated CollectTruckReportDistanceSendAddressMaxUpdateParam param) { public Result<Void> updateDistanceSendAddressMax(@RequestBody @Validated CollectTruckReportDistanceSendAddressMaxUpdateParam param) {
collectTruckReportService.updateDistanceSendAddressMax(param); collectTruckService.updateDistanceSendAddressMax(param);
return Result.ok(); return Result.ok();
} }
...@@ -81,7 +81,7 @@ public class AppDriverCollectTruckController { ...@@ -81,7 +81,7 @@ public class AppDriverCollectTruckController {
@ApiOperation(value = "更新拉运货物意愿", notes = "<br>By:艾庆国") @ApiOperation(value = "更新拉运货物意愿", notes = "<br>By:艾庆国")
@PostMapping("/updateGoodsType") @PostMapping("/updateGoodsType")
public Result<Void> updateGoodsType(@RequestBody @Validated CollectTruckReportGoodsTypeUpdateParam param) { public Result<Void> updateGoodsType(@RequestBody @Validated CollectTruckReportGoodsTypeUpdateParam param) {
collectTruckReportService.updateGoodsType(param); collectTruckService.updateGoodsType(param);
return Result.ok(); return Result.ok();
} }
...@@ -90,7 +90,7 @@ public class AppDriverCollectTruckController { ...@@ -90,7 +90,7 @@ public class AppDriverCollectTruckController {
@GetMapping("/getReportInfo") @GetMapping("/getReportInfo")
public Result<AppCollectTruckVO> getReportInfo(@Validated @NotBlank(message = "车牌不能为空") String truckNo) { public Result<AppCollectTruckVO> getReportInfo(@Validated @NotBlank(message = "车牌不能为空") String truckNo) {
return Result.ok(collectTruckReportService.getReportInfo(truckNo)); return Result.ok(collectTruckService.getReportInfo(truckNo));
} }
......
...@@ -8,6 +8,8 @@ import com.clx.performance.vo.pc.IntegralRecordVO; ...@@ -8,6 +8,8 @@ import com.clx.performance.vo.pc.IntegralRecordVO;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 积分记录 * @Description: 积分记录
...@@ -21,6 +23,7 @@ public interface IntegralRecordDao extends BaseDao<IntegraRecordMapper, Integral ...@@ -21,6 +23,7 @@ public interface IntegralRecordDao extends BaseDao<IntegraRecordMapper, Integral
Integer sumIntegral(@Param("statisticsId") Integer statisticsId); Integer sumIntegral(@Param("statisticsId") Integer statisticsId);
IntegralRecord selectByStatisticsIdAndType(@Param("statisticsId") Integer statisticsId, @Param("type") Integer type); IntegralRecord selectByStatisticsIdAndType(@Param("statisticsId") Integer statisticsId, @Param("type") Integer type);
int sumByStatisticsIdAndTypes(@Param("statisticsId") Integer statisticsId, @Param("list") List<Integer> typeList);
Integer sumByStatisticsIdAndTypeAndTime(@Param("statisticsId") Integer statisticsId, Integer sumByStatisticsIdAndTypeAndTime(@Param("statisticsId") Integer statisticsId,
@Param("type") Integer type, @Param("type") Integer type,
......
...@@ -11,6 +11,8 @@ import com.msl.common.base.Optional; ...@@ -11,6 +11,8 @@ import com.msl.common.base.Optional;
import com.msl.common.dao.impl.BaseDaoImpl; import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
...@@ -37,7 +39,14 @@ public class IntegralRecordDaoImpl extends BaseDaoImpl<IntegraRecordMapper, Inte ...@@ -37,7 +39,14 @@ public class IntegralRecordDaoImpl extends BaseDaoImpl<IntegraRecordMapper, Inte
public IntegralRecord selectByStatisticsIdAndType(Integer statisticsId, Integer type) { public IntegralRecord selectByStatisticsIdAndType(Integer statisticsId, Integer type) {
return getOne(lQrWrapper() return getOne(lQrWrapper()
.eq(IntegralRecord::getStatisticsId, statisticsId) .eq(IntegralRecord::getStatisticsId, statisticsId)
.eq(IntegralRecord::getType, type)); .eq(IntegralRecord::getType, type)
.orderByDesc(IntegralRecord::getCreateTime)
);
}
@Override
public int sumByStatisticsIdAndTypes(Integer statisticsId, List<Integer> typeList) {
return baseMapper.sumByStatisticsIdAndTypes(statisticsId, typeList);
} }
@Override @Override
......
...@@ -6,13 +6,14 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -6,13 +6,14 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.model.IntegralRecord; import com.clx.performance.model.IntegralRecord;
import com.clx.performance.param.pc.pageIntegralStatisticsDetailParam; import com.clx.performance.param.pc.pageIntegralStatisticsDetailParam;
import com.clx.performance.sqlProvider.IntegralRecordSqlProvider; import com.clx.performance.sqlProvider.IntegralRecordSqlProvider;
import com.clx.performance.sqlProvider.IntegralTruckSqlProvider;
import com.clx.performance.vo.pc.IntegralRecordVO; import com.clx.performance.vo.pc.IntegralRecordVO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.SelectProvider; import org.apache.ibatis.annotations.SelectProvider;
import java.util.List;
/** /**
* @Author: aiqinguo * @Author: aiqinguo
* @Description: 积分记录 * @Description: 积分记录
...@@ -34,6 +35,13 @@ public interface IntegraRecordMapper extends BaseMapper<IntegralRecord> { ...@@ -34,6 +35,13 @@ public interface IntegraRecordMapper extends BaseMapper<IntegralRecord> {
@Param("type") Integer type, @Param("type") Integer type,
@Param("beginTime")String beginTime, @Param("beginTime")String beginTime,
@Param("endTime")String endTime); @Param("endTime")String endTime);
@Select("<script>select sum(integral) from integral_record where " +
" type in <foreach collection='list' item='item' open='(' separator=',' close=')'>#{item}</foreach> " +
" and statistics_id = #{statisticsId}" +
"</script>")
int sumByStatisticsIdAndTypes(@Param("statisticsId") Integer statisticsId, @Param("list") List<Integer> typeList);
@Select("select count(1) from integral_record where statistics_id = #{statisticsId} and type = #{type} and create_time >= #{beginTime} and create_time < #{endTime}") @Select("select count(1) from integral_record where statistics_id = #{statisticsId} and type = #{type} and create_time >= #{beginTime} and create_time < #{endTime}")
Integer countByStatisticsIdAndTypeAndTime(@Param("statisticsId") Integer statisticsId, Integer countByStatisticsIdAndTypeAndTime(@Param("statisticsId") Integer statisticsId,
@Param("type") Integer type, @Param("type") Integer type,
......
...@@ -5,7 +5,10 @@ import com.baomidou.mybatisplus.annotation.TableId; ...@@ -5,7 +5,10 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.msl.common.config.KeyColumn; import com.msl.common.config.KeyColumn;
import com.msl.common.model.HasKey; import com.msl.common.model.HasKey;
import lombok.*; import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -43,14 +46,24 @@ public class IntegralRecord implements HasKey<Integer> { ...@@ -43,14 +46,24 @@ public class IntegralRecord implements HasKey<Integer> {
SETTLEMENT(4, "结算分"), SETTLEMENT(4, "结算分"),
BASE(5, "基础分"), BASE(5, "基础分"),
ORDER_CHILD_COMPLETE(11, "运单完成"), // ORDER_CHILD_COMPLETE(11, "运单完成"),
ORDER_CHILD_COMPLETE_NUM(12, "运单完成数量"), // ORDER_CHILD_COMPLETE_NUM(12, "运单完成数量"),
ORDER_CHILD_COMPLETE_WATER(13, "流水单"), // ORDER_CHILD_COMPLETE_WATER(13, "流水单"),
ORDER_CHILD_COMPLETE_SUPPORT(14, "支援单"), // ORDER_CHILD_COMPLETE_SUPPORT(14, "支援单"),
ORDER_CHILD_COMPLETE_TIMEOUT(15, "运单完成超时"), // ORDER_CHILD_COMPLETE_TIMEOUT(15, "运单完成超时"),
//
// ORDER_CHILD_CANCEL(21, "运单取消"),
// ORDER_CHILD_CANCEL_TIMEOUT(22, "运单取消超时"),
ORDER_CHILD_CANCEL(21, "运单取消"), // REPORT_TRUCK_INFO(50, "提交基础信息"),
ORDER_CHILD_CANCEL_TIMEOUT(22, "运单取消超时"), // REPORT_REFUEL(51, "油表上报"),
// REPORT_TRAFFIC(52, "上报交通拥堵"),
// REPORT_SEND_ADDRESS_WAIT(53, "上报货源地需要排队"),
// REPORT_SEND_ADDRESS_NO_WAIT(54, "上报货源地无需排队"),
// REPORT_RECEIVE_ADDRESS_WAIT(55, "上报目的地需要排队"),
// REPORT_RECEIVE_ADDRESS_NO_WAIT(56, "上报目的地无需排队"),
// REPORT_QUALITY(57, "上报煤炭质量问题"),
// REPORT_ABNORMAL(58, "上报拉运异常问题"),
; ;
private Integer value; private Integer value;
......
...@@ -2,6 +2,7 @@ package com.clx.performance.service; ...@@ -2,6 +2,7 @@ package com.clx.performance.service;
import com.clx.performance.model.IntegralRecord; import com.clx.performance.model.IntegralRecord;
import com.clx.performance.param.pc.IntegralRecordAddParam; import com.clx.performance.param.pc.IntegralRecordAddParam;
import com.clx.performance.vo.pc.integral.AppIntegralRuleVO;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -9,6 +10,8 @@ public interface IntegralRecordService { ...@@ -9,6 +10,8 @@ public interface IntegralRecordService {
void addRecord(IntegralRecordAddParam param); void addRecord(IntegralRecordAddParam param);
void addRecord(AppIntegralRuleVO ruleInfo, String truckNo, Integer type, Integer integral, String remark);
IntegralRecord save(Integer statisticsId, LocalDateTime statisticsDate, String truckNo, Integer type, Integer integral, String remark); IntegralRecord save(Integer statisticsId, LocalDateTime statisticsDate, String truckNo, Integer type, Integer integral, String remark);
} }
package com.clx.performance.service.collect; package com.clx.performance.service.collect;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.model.collect.CollectLineReport;
import com.clx.performance.param.app.collect.*; import com.clx.performance.param.app.collect.*;
import com.clx.performance.param.pc.carrier.*; import com.clx.performance.param.pc.carrier.*;
import com.clx.performance.vo.pc.collect.CollectLineReportVO; import com.clx.performance.vo.pc.collect.CollectLineReportVO;
...@@ -10,11 +11,11 @@ public interface CollectLineReportService { ...@@ -10,11 +11,11 @@ public interface CollectLineReportService {
void saveSendAddressReport(CollectLineReportSendAddressSaveParam param); void saveSendAddressReport(CollectLineReportSendAddressSaveParam param);
void saveAbnormalReport(CollectLineReportAbnormalSaveParam param); void saveAbnormalReport(CollectLineReportAbnormalSaveParam param);
void saveSendAddressAbnormalReport(CollectLineReportSendAddressAbnormalSaveParam param); CollectLineReport saveSendAddressAbnormalReport(CollectLineReportSendAddressAbnormalSaveParam param);
void saveLoadAbnormalReport(CollectLineReportLoadAbnormalSaveParam param); CollectLineReport saveLoadAbnormalReport(CollectLineReportLoadAbnormalSaveParam param);
void saveReceiveAddressAbnormalReport(CollectLineReportReceiveAddressAbnormalSaveParam param); CollectLineReport saveReceiveAddressAbnormalReport(CollectLineReportReceiveAddressAbnormalSaveParam param);
void saveNoTakeOrderAbnormalReport(CollectLineReportNoTakeOrderAbnormalSaveParam param); void saveNoTakeOrderAbnormalReport(CollectLineReportNoTakeOrderAbnormalSaveParam param);
void saveLoadUnloadAbnormalReport(CollectLineReportLoadUnloadAbnormalSaveParam param); CollectLineReport saveLoadUnloadAbnormalReport(CollectLineReportLoadUnloadAbnormalSaveParam param);
void saveOtherReport(CollectLineReportOtherSaveParam param); void saveOtherReport(CollectLineReportOtherSaveParam param);
......
...@@ -3,7 +3,7 @@ package com.clx.performance.service.collect; ...@@ -3,7 +3,7 @@ package com.clx.performance.service.collect;
import com.clx.performance.param.app.collect.*; import com.clx.performance.param.app.collect.*;
import com.clx.performance.vo.app.collect.AppCollectTruckVO; import com.clx.performance.vo.app.collect.AppCollectTruckVO;
public interface CollectTruckReportService { public interface CollectTruckService {
void updateUnloadType(CollectTruckUnloadTypeUpdateParam param); void updateUnloadType(CollectTruckUnloadTypeUpdateParam param);
void updateAutoLoanStatus(CollectAutoLoanStatusUpdateParam param); void updateAutoLoanStatus(CollectAutoLoanStatusUpdateParam param);
......
...@@ -2,6 +2,7 @@ package com.clx.performance.service.impl; ...@@ -2,6 +2,7 @@ package com.clx.performance.service.impl;
import com.clx.performance.dao.*; import com.clx.performance.dao.*;
import com.clx.performance.enums.OrderChildEnum; import com.clx.performance.enums.OrderChildEnum;
import com.clx.performance.enums.integral.IntegralRecordEnum;
import com.clx.performance.model.*; import com.clx.performance.model.*;
import com.clx.performance.param.mq.*; import com.clx.performance.param.mq.*;
import com.clx.performance.service.*; import com.clx.performance.service.*;
...@@ -412,7 +413,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService { ...@@ -412,7 +413,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService {
completeNumIntegral = 0; completeNumIntegral = 0;
} }
if (completeNumIntegral > 0){ if (completeNumIntegral > 0){
integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecord.type.ORDER_CHILD_COMPLETE_NUM.getValue(), completeNumIntegral, completeNumIntegralRemark); integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecordEnum.Type.ORDER_CHILD_COMPLETE_NUM.getValue(), completeNumIntegral, completeNumIntegralRemark);
} }
// 奖励积分(低价)(下期启用) // 奖励积分(低价)(下期启用)
...@@ -458,7 +459,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService { ...@@ -458,7 +459,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService {
sendAddressTimeoutIntegral = -ruleInfo.getOrderChildTimeoutRule().getIntegralSendAddressTimeout(); sendAddressTimeoutIntegral = -ruleInfo.getOrderChildTimeoutRule().getIntegralSendAddressTimeout();
} }
if (sendAddressTimeoutIntegral < 0){ if (sendAddressTimeoutIntegral < 0){
integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecord.type.ORDER_CHILD_COMPLETE_TIMEOUT.getValue(), sendAddressTimeoutIntegral, "未按时到达货源地减分"); integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecordEnum.Type.ORDER_CHILD_COMPLETE_TIMEOUT.getValue(), sendAddressTimeoutIntegral, "未按时到达货源地减分");
} }
int receiveAddressTimeoutIntegral = 0; int receiveAddressTimeoutIntegral = 0;
...@@ -466,7 +467,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService { ...@@ -466,7 +467,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService {
receiveAddressTimeoutIntegral = -ruleInfo.getOrderChildTimeoutRule().getIntegralSendAddressTimeout(); receiveAddressTimeoutIntegral = -ruleInfo.getOrderChildTimeoutRule().getIntegralSendAddressTimeout();
} }
if (receiveAddressTimeoutIntegral < 0){ if (receiveAddressTimeoutIntegral < 0){
integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecord.type.ORDER_CHILD_COMPLETE_TIMEOUT.getValue(), receiveAddressTimeoutIntegral, "未按时到达目的地减分"); integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecordEnum.Type.ORDER_CHILD_COMPLETE_TIMEOUT.getValue(), receiveAddressTimeoutIntegral, "未按时到达目的地减分");
} }
integralSum = completeIntegral+completeNumIntegral+waterOrderIntegral+supportOrderIntegral+sendAddressTimeoutIntegral+receiveAddressTimeoutIntegral; integralSum = completeIntegral+completeNumIntegral+waterOrderIntegral+supportOrderIntegral+sendAddressTimeoutIntegral+receiveAddressTimeoutIntegral;
...@@ -504,7 +505,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService { ...@@ -504,7 +505,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService {
// } // }
if (cancelIntegral < 0){ if (cancelIntegral < 0){
integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecord.type.ORDER_CHILD_CANCEL.getValue(), cancelIntegral, cancelIntegralRemark); integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecordEnum.Type.ORDER_CHILD_CANCEL.getValue(), cancelIntegral, cancelIntegralRemark);
} }
...@@ -525,7 +526,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService { ...@@ -525,7 +526,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService {
sendAddressTimeoutIntegral = -ruleInfo.getOrderChildTimeoutRule().getIntegralSendAddressTimeout(); sendAddressTimeoutIntegral = -ruleInfo.getOrderChildTimeoutRule().getIntegralSendAddressTimeout();
} }
if (sendAddressTimeoutIntegral < 0){ if (sendAddressTimeoutIntegral < 0){
integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecord.type.ORDER_CHILD_CANCEL_TIMEOUT.getValue(), sendAddressTimeoutIntegral, "未按时到达货源地减分"); integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecordEnum.Type.ORDER_CHILD_CANCEL_TIMEOUT.getValue(), sendAddressTimeoutIntegral, "未按时到达货源地减分");
} }
int receiveAddressTimeoutIntegral = 0; int receiveAddressTimeoutIntegral = 0;
...@@ -537,7 +538,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService { ...@@ -537,7 +538,7 @@ public class IntegralMqHandlerServiceImpl implements IntegralMqHandlerService {
} }
if (receiveAddressTimeoutIntegral < 0){ if (receiveAddressTimeoutIntegral < 0){
integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecord.type.ORDER_CHILD_CANCEL_TIMEOUT.getValue(), receiveAddressTimeoutIntegral, "未按时到达目的地减分"); integralRecordService.save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecordEnum.Type.ORDER_CHILD_CANCEL_TIMEOUT.getValue(), receiveAddressTimeoutIntegral, "未按时到达目的地减分");
} }
integralSum = cancelIntegral+sendAddressTimeoutIntegral+receiveAddressTimeoutIntegral; integralSum = cancelIntegral+sendAddressTimeoutIntegral+receiveAddressTimeoutIntegral;
......
...@@ -4,6 +4,7 @@ import com.clx.performance.dao.IntegralRecordDao; ...@@ -4,6 +4,7 @@ import com.clx.performance.dao.IntegralRecordDao;
import com.clx.performance.dao.IntegralStatisticsDao; import com.clx.performance.dao.IntegralStatisticsDao;
import com.clx.performance.dao.IntegralTruckDao; import com.clx.performance.dao.IntegralTruckDao;
import com.clx.performance.enums.PerformanceResultEnum; import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.integral.IntegralRecordEnum;
import com.clx.performance.model.IntegralRecord; import com.clx.performance.model.IntegralRecord;
import com.clx.performance.model.IntegralStatistics; import com.clx.performance.model.IntegralStatistics;
import com.clx.performance.model.IntegralTruck; import com.clx.performance.model.IntegralTruck;
...@@ -11,10 +12,12 @@ import com.clx.performance.param.pc.IntegralRecordAddParam; ...@@ -11,10 +12,12 @@ import com.clx.performance.param.pc.IntegralRecordAddParam;
import com.clx.performance.service.IntegralMqService; import com.clx.performance.service.IntegralMqService;
import com.clx.performance.service.IntegralRecordService; import com.clx.performance.service.IntegralRecordService;
import com.clx.performance.utils.LocalDateTimeUtils; import com.clx.performance.utils.LocalDateTimeUtils;
import com.clx.performance.vo.pc.integral.AppIntegralRuleVO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@Slf4j @Slf4j
...@@ -50,7 +53,46 @@ public class IntegralRecordServiceImpl implements IntegralRecordService { ...@@ -50,7 +53,46 @@ public class IntegralRecordServiceImpl implements IntegralRecordService {
integralTruckDao.updateIntegral(truck); integralTruckDao.updateIntegral(truck);
// 新增积分记录 // 新增积分记录
IntegralRecord record = save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecord.type.SYSTEM.getValue(), param.getIntegral(), param.getRemark()); IntegralRecord record = save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), IntegralRecordEnum.Type.SYSTEM.getValue(), param.getIntegral(), param.getRemark());
// 发送mq (新增积分记录)
integralMqService.integralRecordAdd(record.getStatisticsId(), record.getTruckNo(), record.getType(), record.getIntegral(), record.getRemark());
}
@Override
public void addRecord(AppIntegralRuleVO ruleInfo, String truckNo, Integer type, Integer integral, String remark) {
String statisticsDate = LocalDateTimeUtils.getWeekStart();
IntegralTruck truck = integralTruckDao.getByTruckNo(truckNo).orNull();
if (truck == null) {return;}
// 查找最新统计
IntegralStatistics statistics = integralStatisticsDao.selectByTruckNoAndStatisticsDate(truckNo, statisticsDate).orNull();
if (statistics == null) {return;}
IntegralRecord integralRecord = integralRecordDao.selectByStatisticsIdAndType(statistics.getId(), type);
if (integralRecord != null
&& integralRecord.getCreateTime().plusSeconds(ruleInfo.getDriverReportRule().getReportLimit().multiply(new BigDecimal(3600)).intValue()).isAfter(LocalDateTime.now())){
log.info("上报频繁,本次无效, truckNo:{}, type:{}, integral:{}, remark:{}", truckNo, type, integral, remark);
return;
}
int sum = integralRecordDao.sumByStatisticsIdAndTypes(statistics.getId(), IntegralRecordEnum.DRIVER_REPORT_lIST);
if (sum > ruleInfo.getDriverReportRule().getIntegralLimit()){
log.info("上报积分超上限,本次无效, truckNo:{}, type:{}, integral:{}, remark:{}", truckNo, type, integral, remark);
return;
}
// 更新积分
statistics.setIntegral(statistics.getIntegral()+integral);
integralStatisticsDao.updateIntegral(statistics);
truck.setIntegral(statistics.getIntegral());
integralTruckDao.updateIntegral(truck);
// 新增积分记录
IntegralRecord record = save(statistics.getId(), statistics.getStatisticsDate(), statistics.getTruckNo(), type, integral, remark);
// 发送mq (新增积分记录) // 发送mq (新增积分记录)
integralMqService.integralRecordAdd(record.getStatisticsId(), record.getTruckNo(), record.getType(), record.getIntegral(), record.getRemark()); integralMqService.integralRecordAdd(record.getStatisticsId(), record.getTruckNo(), record.getType(), record.getIntegral(), record.getRemark());
......
...@@ -5,13 +5,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -5,13 +5,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.dao.OrderChildDao; import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.dao.collect.CollectLineReportDao; import com.clx.performance.dao.collect.CollectLineReportDao;
import com.clx.performance.enums.PerformanceResultEnum; import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.integral.IntegralRecordEnum;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.model.collect.CollectLineReport; import com.clx.performance.model.collect.CollectLineReport;
import com.clx.performance.param.app.collect.*; import com.clx.performance.param.app.collect.*;
import com.clx.performance.param.pc.carrier.*; import com.clx.performance.param.pc.carrier.*;
import com.clx.performance.service.IntegralRecordService;
import com.clx.performance.service.collect.CollectLineReportService; import com.clx.performance.service.collect.CollectLineReportService;
import com.clx.performance.service.integral.IntegralRuleService;
import com.clx.performance.struct.collect.CollectLineReportStruct; import com.clx.performance.struct.collect.CollectLineReportStruct;
import com.clx.performance.vo.pc.collect.CollectLineReportVO; import com.clx.performance.vo.pc.collect.CollectLineReportVO;
import com.clx.performance.vo.pc.integral.AppIntegralRuleVO;
import com.msl.user.data.UserSessionData; import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil; import com.msl.user.utils.TokenUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -32,7 +36,10 @@ public class CollectLineReportServiceImpl implements CollectLineReportService { ...@@ -32,7 +36,10 @@ public class CollectLineReportServiceImpl implements CollectLineReportService {
@Autowired @Autowired
private CollectLineReportStruct collectLineReportStruct; private CollectLineReportStruct collectLineReportStruct;
@Autowired
private IntegralRuleService integralRuleService;
@Autowired
private IntegralRecordService integralRecordService;
@Override @Override
public void saveSendAddressReport(CollectLineReportSendAddressSaveParam param) { public void saveSendAddressReport(CollectLineReportSendAddressSaveParam param) {
...@@ -65,22 +72,31 @@ public class CollectLineReportServiceImpl implements CollectLineReportService { ...@@ -65,22 +72,31 @@ public class CollectLineReportServiceImpl implements CollectLineReportService {
@Override @Override
public void saveAbnormalReport(CollectLineReportAbnormalSaveParam param) { public void saveAbnormalReport(CollectLineReportAbnormalSaveParam param) {
CollectLineReport collectLineReport = null;
if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.UNABLE_TO_SEND_ADDRESS.getCode())){ if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.UNABLE_TO_SEND_ADDRESS.getCode())){
saveSendAddressAbnormalReport(new CollectLineReportSendAddressAbnormalSaveParam(param.getChildNo(), param.getRemark())); collectLineReport = saveSendAddressAbnormalReport(new CollectLineReportSendAddressAbnormalSaveParam(param.getChildNo(), param.getRemark()));
} }
else if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.UNABLE_LOAD.getCode())){ else if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.UNABLE_LOAD.getCode())){
saveLoadAbnormalReport(new CollectLineReportLoadAbnormalSaveParam(param.getChildNo(), param.getRemark())); collectLineReport = saveLoadAbnormalReport(new CollectLineReportLoadAbnormalSaveParam(param.getChildNo(), param.getRemark()));
} }
else if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.UNABLE_TO_RECEIVE_ADDRESS.getCode())){ else if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.UNABLE_TO_RECEIVE_ADDRESS.getCode())){
saveReceiveAddressAbnormalReport(new CollectLineReportReceiveAddressAbnormalSaveParam(param.getChildNo(), param.getRemark())); collectLineReport = saveReceiveAddressAbnormalReport(new CollectLineReportReceiveAddressAbnormalSaveParam(param.getChildNo(), param.getRemark()));
} }
else if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.LOAD_UNLOAD.getCode())){ else if (Objects.equals(param.getReportType(), CollectLineReport.ReportType.LOAD_UNLOAD.getCode())){
saveLoadUnloadAbnormalReport(new CollectLineReportLoadUnloadAbnormalSaveParam(param.getChildNo(), param.getRemark())); collectLineReport = saveLoadUnloadAbnormalReport(new CollectLineReportLoadUnloadAbnormalSaveParam(param.getChildNo(), param.getRemark()));
} }
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
integralRecordService.addRecord(ruleInfo, collectLineReport.getTruckNo(), IntegralRecordEnum.Type.REPORT_ABNORMAL.getValue(),
ruleInfo.getDriverReportRule().getIntegralQuality(), IntegralRecordEnum.Type.REPORT_ABNORMAL.getMsg());
} }
@Override @Override
public void saveSendAddressAbnormalReport(CollectLineReportSendAddressAbnormalSaveParam param) { public CollectLineReport saveSendAddressAbnormalReport(CollectLineReportSendAddressAbnormalSaveParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo(); Long userNo = loginUserInfo.getUserNo();
...@@ -106,10 +122,12 @@ public class CollectLineReportServiceImpl implements CollectLineReportService { ...@@ -106,10 +122,12 @@ public class CollectLineReportServiceImpl implements CollectLineReportService {
collectLineReport.setReportTime(LocalDateTime.now()); collectLineReport.setReportTime(LocalDateTime.now());
collectLineReport.setCreateTime(collectLineReport.getReportTime()); collectLineReport.setCreateTime(collectLineReport.getReportTime());
collectLineReportDao.saveEntity(collectLineReport); collectLineReportDao.saveEntity(collectLineReport);
return collectLineReport;
} }
@Override @Override
public void saveLoadAbnormalReport(CollectLineReportLoadAbnormalSaveParam param) { public CollectLineReport saveLoadAbnormalReport(CollectLineReportLoadAbnormalSaveParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo(); Long userNo = loginUserInfo.getUserNo();
...@@ -135,10 +153,12 @@ public class CollectLineReportServiceImpl implements CollectLineReportService { ...@@ -135,10 +153,12 @@ public class CollectLineReportServiceImpl implements CollectLineReportService {
collectLineReport.setReportTime(LocalDateTime.now()); collectLineReport.setReportTime(LocalDateTime.now());
collectLineReport.setCreateTime(collectLineReport.getReportTime()); collectLineReport.setCreateTime(collectLineReport.getReportTime());
collectLineReportDao.saveEntity(collectLineReport); collectLineReportDao.saveEntity(collectLineReport);
return collectLineReport;
} }
@Override @Override
public void saveReceiveAddressAbnormalReport(CollectLineReportReceiveAddressAbnormalSaveParam param) { public CollectLineReport saveReceiveAddressAbnormalReport(CollectLineReportReceiveAddressAbnormalSaveParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo(); Long userNo = loginUserInfo.getUserNo();
...@@ -164,10 +184,12 @@ public class CollectLineReportServiceImpl implements CollectLineReportService { ...@@ -164,10 +184,12 @@ public class CollectLineReportServiceImpl implements CollectLineReportService {
collectLineReport.setReportTime(LocalDateTime.now()); collectLineReport.setReportTime(LocalDateTime.now());
collectLineReport.setCreateTime(collectLineReport.getReportTime()); collectLineReport.setCreateTime(collectLineReport.getReportTime());
collectLineReportDao.saveEntity(collectLineReport); collectLineReportDao.saveEntity(collectLineReport);
return collectLineReport;
} }
@Override @Override
public void saveLoadUnloadAbnormalReport(CollectLineReportLoadUnloadAbnormalSaveParam param) { public CollectLineReport saveLoadUnloadAbnormalReport(CollectLineReportLoadUnloadAbnormalSaveParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo(); Long userNo = loginUserInfo.getUserNo();
...@@ -192,6 +214,8 @@ public class CollectLineReportServiceImpl implements CollectLineReportService { ...@@ -192,6 +214,8 @@ public class CollectLineReportServiceImpl implements CollectLineReportService {
collectLineReport.setReportTime(LocalDateTime.now()); collectLineReport.setReportTime(LocalDateTime.now());
collectLineReport.setCreateTime(collectLineReport.getReportTime()); collectLineReport.setCreateTime(collectLineReport.getReportTime());
collectLineReportDao.saveEntity(collectLineReport); collectLineReportDao.saveEntity(collectLineReport);
return collectLineReport;
} }
...@@ -273,6 +297,14 @@ public class CollectLineReportServiceImpl implements CollectLineReportService { ...@@ -273,6 +297,14 @@ public class CollectLineReportServiceImpl implements CollectLineReportService {
collectLineReport.setReportTime(LocalDateTime.now()); collectLineReport.setReportTime(LocalDateTime.now());
collectLineReport.setCreateTime(collectLineReport.getReportTime()); collectLineReport.setCreateTime(collectLineReport.getReportTime());
collectLineReportDao.saveEntity(collectLineReport); collectLineReportDao.saveEntity(collectLineReport);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
integralRecordService.addRecord(ruleInfo, collectLineReport.getTruckNo(), IntegralRecordEnum.Type.REPORT_QUALITY.getValue(),
ruleInfo.getDriverReportRule().getIntegralQuality(), IntegralRecordEnum.Type.REPORT_QUALITY.getMsg());
} }
@Override @Override
......
...@@ -4,14 +4,18 @@ import com.alibaba.fastjson.JSON; ...@@ -4,14 +4,18 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.dao.collect.CollectTrafficCongestionDao; import com.clx.performance.dao.collect.CollectTrafficCongestionDao;
import com.clx.performance.enums.PerformanceResultEnum; import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.integral.IntegralRecordEnum;
import com.clx.performance.model.collect.CollectTrafficCongestion; import com.clx.performance.model.collect.CollectTrafficCongestion;
import com.clx.performance.param.app.collect.CollectTrafficCongestionAuditParam; import com.clx.performance.param.app.collect.CollectTrafficCongestionAuditParam;
import com.clx.performance.param.app.collect.CollectTrafficCongestionSaveParam; import com.clx.performance.param.app.collect.CollectTrafficCongestionSaveParam;
import com.clx.performance.param.app.collect.PageCollectTraficCongestionParam; import com.clx.performance.param.app.collect.PageCollectTraficCongestionParam;
import com.clx.performance.param.pc.carrier.CarrierPageCollectTraficCongestionParam; import com.clx.performance.param.pc.carrier.CarrierPageCollectTraficCongestionParam;
import com.clx.performance.service.IntegralRecordService;
import com.clx.performance.service.collect.CollectTrafficCongestionService; import com.clx.performance.service.collect.CollectTrafficCongestionService;
import com.clx.performance.service.integral.IntegralRuleService;
import com.clx.performance.struct.collect.CollectTrafficCongestionStruct; import com.clx.performance.struct.collect.CollectTrafficCongestionStruct;
import com.clx.performance.vo.pc.collect.CollectTrafficCongestionVO; import com.clx.performance.vo.pc.collect.CollectTrafficCongestionVO;
import com.clx.performance.vo.pc.integral.AppIntegralRuleVO;
import com.msl.user.data.UserSessionData; import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil; import com.msl.user.utils.TokenUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -30,7 +34,10 @@ public class CollectTrafficCongestionServiceImpl implements CollectTrafficConges ...@@ -30,7 +34,10 @@ public class CollectTrafficCongestionServiceImpl implements CollectTrafficConges
@Autowired @Autowired
private CollectTrafficCongestionStruct collectTrafficCongestionStruct; private CollectTrafficCongestionStruct collectTrafficCongestionStruct;
@Autowired
private IntegralRecordService integralRecordService;
@Autowired
private IntegralRuleService integralRuleService;
@Override @Override
public void saveTrafficReport(CollectTrafficCongestionSaveParam param) { public void saveTrafficReport(CollectTrafficCongestionSaveParam param) {
...@@ -67,6 +74,14 @@ public class CollectTrafficCongestionServiceImpl implements CollectTrafficConges ...@@ -67,6 +74,14 @@ public class CollectTrafficCongestionServiceImpl implements CollectTrafficConges
collectTrafficCongestion.setReportTime(LocalDateTime.now()); collectTrafficCongestion.setReportTime(LocalDateTime.now());
collectTrafficCongestion.setCreateTime(collectTrafficCongestion.getReportTime()); collectTrafficCongestion.setCreateTime(collectTrafficCongestion.getReportTime());
collectTrafficCongestionDao.saveEntity(collectTrafficCongestion); collectTrafficCongestionDao.saveEntity(collectTrafficCongestion);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
integralRecordService.addRecord(ruleInfo, collectTrafficCongestion.getTruckNo(), IntegralRecordEnum.Type.REPORT_TRAFFIC.getValue(),
ruleInfo.getDriverReportRule().getIntegralTraffic(), IntegralRecordEnum.Type.REPORT_TRAFFIC.getMsg());
} }
@Override @Override
......
...@@ -5,19 +5,24 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -5,19 +5,24 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.dao.OrderChildDao; import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.dao.collect.CollectTruckRefuelDao; import com.clx.performance.dao.collect.CollectTruckRefuelDao;
import com.clx.performance.enums.PerformanceResultEnum; import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.integral.IntegralRecordEnum;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.model.collect.CollectTruckRefuel; import com.clx.performance.model.collect.CollectTruckRefuel;
import com.clx.performance.param.app.collect.CollectTruckRefuelSaveParam; import com.clx.performance.param.app.collect.CollectTruckRefuelSaveParam;
import com.clx.performance.param.app.collect.PageCollectTruckRefuelParam; import com.clx.performance.param.app.collect.PageCollectTruckRefuelParam;
import com.clx.performance.param.pc.carrier.CarrierPageCollectTruckRefuelParam; import com.clx.performance.param.pc.carrier.CarrierPageCollectTruckRefuelParam;
import com.clx.performance.service.IntegralRecordService;
import com.clx.performance.service.collect.CollectTruckRefuelService; import com.clx.performance.service.collect.CollectTruckRefuelService;
import com.clx.performance.service.integral.IntegralRuleService;
import com.clx.performance.struct.collect.CollectTruckRefuelStruct; import com.clx.performance.struct.collect.CollectTruckRefuelStruct;
import com.clx.performance.vo.pc.collect.CollectTruckRefuelVO; import com.clx.performance.vo.pc.collect.CollectTruckRefuelVO;
import com.clx.performance.vo.pc.integral.AppIntegralRuleVO;
import com.msl.user.data.UserSessionData; import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil; import com.msl.user.utils.TokenUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -34,7 +39,12 @@ public class CollectTruckRefuelServiceImpl implements CollectTruckRefuelService ...@@ -34,7 +39,12 @@ public class CollectTruckRefuelServiceImpl implements CollectTruckRefuelService
@Autowired @Autowired
private CollectTruckRefuelStruct collectTruckRefuelStruct; private CollectTruckRefuelStruct collectTruckRefuelStruct;
@Autowired
private IntegralRuleService integralRuleService;
@Autowired
private IntegralRecordService integralRecordService;
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void saveRefuelReport(CollectTruckRefuelSaveParam param) { public void saveRefuelReport(CollectTruckRefuelSaveParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -62,6 +72,14 @@ public class CollectTruckRefuelServiceImpl implements CollectTruckRefuelService ...@@ -62,6 +72,14 @@ public class CollectTruckRefuelServiceImpl implements CollectTruckRefuelService
collectTruckRefuel.setCreateTime(collectTruckRefuel.getReportTime()); collectTruckRefuel.setCreateTime(collectTruckRefuel.getReportTime());
collectTruckRefuelDao.saveEntity(collectTruckRefuel); collectTruckRefuelDao.saveEntity(collectTruckRefuel);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
integralRecordService.addRecord(ruleInfo, collectTruckRefuel.getTruckNo(), IntegralRecordEnum.Type.REPORT_REFUEL.getValue(),
ruleInfo.getDriverReportRule().getIntegralRefuel(), IntegralRecordEnum.Type.REPORT_REFUEL.getMsg());
} }
@Override @Override
......
package com.clx.performance.service.impl.collect; package com.clx.performance.service.impl.collect;
import com.clx.performance.dao.collect.CollectTruckDao; import com.clx.performance.dao.collect.CollectTruckDao;
import com.clx.performance.enums.integral.IntegralRecordEnum;
import com.clx.performance.model.collect.CollectTruck; import com.clx.performance.model.collect.CollectTruck;
import com.clx.performance.param.app.collect.*; import com.clx.performance.param.app.collect.*;
import com.clx.performance.service.collect.CollectTruckReportService; import com.clx.performance.service.IntegralRecordService;
import com.clx.performance.service.collect.CollectTruckService;
import com.clx.performance.service.integral.IntegralRuleService;
import com.clx.performance.struct.collect.CollectTruckStruct; import com.clx.performance.struct.collect.CollectTruckStruct;
import com.clx.performance.vo.app.collect.AppCollectTruckVO; import com.clx.performance.vo.app.collect.AppCollectTruckVO;
import com.clx.performance.vo.pc.integral.AppIntegralRuleVO;
import com.msl.user.data.UserSessionData; import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil; import com.msl.user.utils.TokenUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Slf4j @Slf4j
@Service @Service
public class CollectTruckReportServiceImpl implements CollectTruckReportService { public class CollectTruckServiceImpl implements CollectTruckService {
@Autowired @Autowired
private CollectTruckDao collectTruckDao; private CollectTruckDao collectTruckDao;
@Autowired @Autowired
private CollectTruckStruct collectTruckStruct; private CollectTruckStruct collectTruckStruct;
@Autowired
private IntegralRecordService integralRecordService;
@Autowired
private IntegralRuleService integralRuleService;
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateUnloadType(CollectTruckUnloadTypeUpdateParam param) { public void updateUnloadType(CollectTruckUnloadTypeUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -37,8 +47,16 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -37,8 +47,16 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
truck.setUnloadType(param.getUnloadType()); truck.setUnloadType(param.getUnloadType());
collectTruckDao.update(truck); collectTruckDao.update(truck);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
integralRecordService.addRecord(ruleInfo, truck.getTruckNo(), IntegralRecordEnum.Type.REPORT_TRUCK_INFO.getValue(),
ruleInfo.getDriverReportRule().getIntegralTruck(), IntegralRecordEnum.Type.REPORT_TRUCK_INFO.getMsg());
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateAutoLoanStatus(CollectAutoLoanStatusUpdateParam param) { public void updateAutoLoanStatus(CollectAutoLoanStatusUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -55,8 +73,17 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -55,8 +73,17 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
truck.setAutoLoanStatus(param.getAutoLoanStatus()); truck.setAutoLoanStatus(param.getAutoLoanStatus());
truck.setAutoLoanMonth(param.getAutoLoanMonth()); truck.setAutoLoanMonth(param.getAutoLoanMonth());
collectTruckDao.update(truck); collectTruckDao.update(truck);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
integralRecordService.addRecord(ruleInfo, truck.getTruckNo(), IntegralRecordEnum.Type.REPORT_TRUCK_INFO.getValue(),
ruleInfo.getDriverReportRule().getIntegralTruck(), IntegralRecordEnum.Type.REPORT_TRUCK_INFO.getMsg());
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateParkAddress(CollectTruckReportParkAddressUpdateParam param) { public void updateParkAddress(CollectTruckReportParkAddressUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -72,8 +99,17 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -72,8 +99,17 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
truck.setParkAddress(param.getParkAddress()); truck.setParkAddress(param.getParkAddress());
collectTruckDao.update(truck); collectTruckDao.update(truck);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
integralRecordService.addRecord(ruleInfo, truck.getTruckNo(), IntegralRecordEnum.Type.REPORT_TRUCK_INFO.getValue(),
ruleInfo.getDriverReportRule().getIntegralTruck(), IntegralRecordEnum.Type.REPORT_TRUCK_INFO.getMsg());
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateOverTonnageType(CollectTruckReportOverTonnageTypeUpdateParam param) { public void updateOverTonnageType(CollectTruckReportOverTonnageTypeUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -91,6 +127,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -91,6 +127,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
collectTruckDao.update(truck); collectTruckDao.update(truck);
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateDistanceUsualPlaceMax(CollectTruckReportDistanceUsualPlaceMaxUpdateParam param) { public void updateDistanceUsualPlaceMax(CollectTruckReportDistanceUsualPlaceMaxUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -108,6 +145,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -108,6 +145,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
collectTruckDao.update(truck); collectTruckDao.update(truck);
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateDistanceLineMax(CollectTruckReportDistanceLineMaxUpdateParam param) { public void updateDistanceLineMax(CollectTruckReportDistanceLineMaxUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -125,6 +163,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -125,6 +163,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
collectTruckDao.update(truck); collectTruckDao.update(truck);
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateDistanceSendAddressMax(CollectTruckReportDistanceSendAddressMaxUpdateParam param) { public void updateDistanceSendAddressMax(CollectTruckReportDistanceSendAddressMaxUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -142,6 +181,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -142,6 +181,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
collectTruckDao.update(truck); collectTruckDao.update(truck);
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public void updateGoodsType(CollectTruckReportGoodsTypeUpdateParam param) { public void updateGoodsType(CollectTruckReportGoodsTypeUpdateParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
...@@ -159,6 +199,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService ...@@ -159,6 +199,7 @@ public class CollectTruckReportServiceImpl implements CollectTruckReportService
collectTruckDao.update(truck); collectTruckDao.update(truck);
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
public AppCollectTruckVO getReportInfo(String truckNo) { public AppCollectTruckVO getReportInfo(String truckNo) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
......
...@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.dao.OrderChildDao; import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.dao.collect.CollectTruckWaitDao; import com.clx.performance.dao.collect.CollectTruckWaitDao;
import com.clx.performance.enums.PerformanceResultEnum; import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.collect.CollectTruckWaitEnum;
import com.clx.performance.enums.integral.IntegralRecordEnum;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.model.collect.CollectTruckWait; import com.clx.performance.model.collect.CollectTruckWait;
import com.clx.performance.param.app.collect.CollectLineReportTruckWaitAuditParam; import com.clx.performance.param.app.collect.CollectLineReportTruckWaitAuditParam;
...@@ -12,9 +14,12 @@ import com.clx.performance.param.app.collect.CollectWaitReportReceiveAddressSave ...@@ -12,9 +14,12 @@ import com.clx.performance.param.app.collect.CollectWaitReportReceiveAddressSave
import com.clx.performance.param.app.collect.CollectWaitReportSendAddressSaveParam; import com.clx.performance.param.app.collect.CollectWaitReportSendAddressSaveParam;
import com.clx.performance.param.app.collect.PageCollectTruckWaitParam; import com.clx.performance.param.app.collect.PageCollectTruckWaitParam;
import com.clx.performance.param.pc.carrier.CarrierPageCollectTruckWaitParam; import com.clx.performance.param.pc.carrier.CarrierPageCollectTruckWaitParam;
import com.clx.performance.service.IntegralRecordService;
import com.clx.performance.service.collect.CollectWaitReportService; import com.clx.performance.service.collect.CollectWaitReportService;
import com.clx.performance.service.integral.IntegralRuleService;
import com.clx.performance.struct.collect.CollectTruckWaitStruct; import com.clx.performance.struct.collect.CollectTruckWaitStruct;
import com.clx.performance.vo.pc.collect.CollectTruckWaitVO; import com.clx.performance.vo.pc.collect.CollectTruckWaitVO;
import com.clx.performance.vo.pc.integral.AppIntegralRuleVO;
import com.msl.user.data.UserSessionData; import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil; import com.msl.user.utils.TokenUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -22,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -22,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Objects;
@Slf4j @Slf4j
@Service @Service
...@@ -34,7 +40,10 @@ public class CollectWaitReportServiceImpl implements CollectWaitReportService { ...@@ -34,7 +40,10 @@ public class CollectWaitReportServiceImpl implements CollectWaitReportService {
@Autowired @Autowired
private CollectTruckWaitStruct collectTruckWaitStruct; private CollectTruckWaitStruct collectTruckWaitStruct;
@Autowired
private IntegralRuleService integralRuleService;
@Autowired
private IntegralRecordService integralRecordService;
@Override @Override
public void saveSendAddressReport(CollectWaitReportSendAddressSaveParam param) { public void saveSendAddressReport(CollectWaitReportSendAddressSaveParam param) {
...@@ -62,6 +71,20 @@ public class CollectWaitReportServiceImpl implements CollectWaitReportService { ...@@ -62,6 +71,20 @@ public class CollectWaitReportServiceImpl implements CollectWaitReportService {
collectTruckWait.setReportTime(LocalDateTime.now()); collectTruckWait.setReportTime(LocalDateTime.now());
collectTruckWait.setCreateTime(collectTruckWait.getReportTime()); collectTruckWait.setCreateTime(collectTruckWait.getReportTime());
collectTruckWaitDao.saveEntity(collectTruckWait); collectTruckWaitDao.saveEntity(collectTruckWait);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
if (Objects.equals(collectTruckWait.getWaitType(), CollectTruckWaitEnum.waitType.INNER.getCode())
|| Objects.equals(collectTruckWait.getWaitType(), CollectTruckWaitEnum.waitType.OUTER.getCode()) ) {
integralRecordService.addRecord(ruleInfo, collectTruckWait.getTruckNo(), IntegralRecordEnum.Type.REPORT_SEND_ADDRESS_WAIT.getValue(),
ruleInfo.getDriverReportRule().getIntegralSendAddressWait(), IntegralRecordEnum.Type.REPORT_SEND_ADDRESS_WAIT.getMsg());
}
else {
integralRecordService.addRecord(ruleInfo, collectTruckWait.getTruckNo(), IntegralRecordEnum.Type.REPORT_SEND_ADDRESS_NO_WAIT.getValue(),
ruleInfo.getDriverReportRule().getIntegralSendAddressNoWait(), IntegralRecordEnum.Type.REPORT_SEND_ADDRESS_NO_WAIT.getMsg());
}
} }
@Override @Override
...@@ -90,6 +113,20 @@ public class CollectWaitReportServiceImpl implements CollectWaitReportService { ...@@ -90,6 +113,20 @@ public class CollectWaitReportServiceImpl implements CollectWaitReportService {
collectTruckWait.setReportTime(LocalDateTime.now()); collectTruckWait.setReportTime(LocalDateTime.now());
collectTruckWait.setCreateTime(collectTruckWait.getReportTime()); collectTruckWait.setCreateTime(collectTruckWait.getReportTime());
collectTruckWaitDao.saveEntity(collectTruckWait); collectTruckWaitDao.saveEntity(collectTruckWait);
// 查找规则
AppIntegralRuleVO ruleInfo = integralRuleService.getRuleInfo();
// 报存积分
if (Objects.equals(collectTruckWait.getWaitType(), CollectTruckWaitEnum.waitType.INNER.getCode())
|| Objects.equals(collectTruckWait.getWaitType(), CollectTruckWaitEnum.waitType.OUTER.getCode()) ) {
integralRecordService.addRecord(ruleInfo, collectTruckWait.getTruckNo(), IntegralRecordEnum.Type.REPORT_RECEIVE_ADDRESS_WAIT.getValue(),
ruleInfo.getDriverReportRule().getIntegralReceiveAddressWait(), IntegralRecordEnum.Type.REPORT_RECEIVE_ADDRESS_WAIT.getMsg());
}
else {
integralRecordService.addRecord(ruleInfo, collectTruckWait.getTruckNo(), IntegralRecordEnum.Type.REPORT_RECEIVE_ADDRESS_NO_WAIT.getValue(),
ruleInfo.getDriverReportRule().getIntegralReceiveAddressNoWait(), IntegralRecordEnum.Type.REPORT_RECEIVE_ADDRESS_NO_WAIT.getMsg());
}
} }
@Override @Override
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论