提交 91f8c649 authored 作者: 刘海泉's avatar 刘海泉

增加日志详情

上级 0fa1e8aa
...@@ -101,6 +101,10 @@ public class OrderChildExceptionReport implements HasKey<Integer> { ...@@ -101,6 +101,10 @@ public class OrderChildExceptionReport implements HasKey<Integer> {
@Schema(description="是否转司机违约 1:是") @Schema(description="是否转司机违约 1:是")
private Integer transferDriverBreakContract; private Integer transferDriverBreakContract;
@TableField("break_contract_reason")
@Schema(description="违约原因")
private String breakContractReason;
@TableField("create_time") @TableField("create_time")
@Schema(description="创建时间") @Schema(description="创建时间")
private LocalDateTime createTime; private LocalDateTime createTime;
......
...@@ -21,7 +21,7 @@ public class OrderChildExceptionReportOperationLog implements HasKey<Integer> { ...@@ -21,7 +21,7 @@ public class OrderChildExceptionReportOperationLog implements HasKey<Integer> {
@TableId(value = "id", type = IdType.AUTO) @TableId(value = "id", type = IdType.AUTO)
private Integer id; //id private Integer id; //id
private String reportNo; //运单编号 private String reportNo; //异常上报编号
private Integer type; //操作事项编码 private Integer type; //操作事项编码
private String result; //处理结果 private String result; //处理结果
private Long createBy; //操作人编号 private Long createBy; //操作人编号
......
package com.clx.performance.model.breakcontract; package com.clx.performance.model.breakcontract;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
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;
...@@ -8,9 +10,8 @@ import io.swagger.v3.oas.annotations.media.Schema; ...@@ -8,9 +10,8 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.math.BigDecimal; import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime; import java.time.LocalDateTime;
/** /**
...@@ -79,6 +80,33 @@ public class BreakContractDriverRecord implements HasKey<Integer> { ...@@ -79,6 +80,33 @@ public class BreakContractDriverRecord implements HasKey<Integer> {
@Schema(description="结算单编号") @Schema(description="结算单编号")
private String settlementNo; private String settlementNo;
@TableField("exception_report_no")
@Schema(description="异常上报单号")
private String exceptionReportNo;
@TableField("exception_category")
@Schema(description="异常类别")
private String exceptionCategory;
@TableField("exception_type")
@Schema(description="异常类型")
private String exceptionType;
@TableField("picture_url")
@Schema(description="图片")
private String pictureUrl;
@TableField("video_url")
@Schema(description="视频")
private String videoUrl;
@TableField("remark") @TableField("remark")
@Schema(description="备注") @Schema(description="备注")
private String remark; private String remark;
......
...@@ -15,22 +15,26 @@ import com.clx.performance.dao.OrderChildDao; ...@@ -15,22 +15,26 @@ import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.dao.OrderChildExceptionReportDao; import com.clx.performance.dao.OrderChildExceptionReportDao;
import com.clx.performance.dao.OrderChildExceptionReportDealLogDao; import com.clx.performance.dao.OrderChildExceptionReportDealLogDao;
import com.clx.performance.dao.OrderChildExceptionReportOperationLogDao; import com.clx.performance.dao.OrderChildExceptionReportOperationLogDao;
import com.clx.performance.dao.breakcontract.BreakContractDriverRecordDao;
import com.clx.performance.enums.*; import com.clx.performance.enums.*;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.model.OrderChildExceptionReport; import com.clx.performance.model.OrderChildExceptionReport;
import com.clx.performance.model.OrderChildExceptionReportDealLog; import com.clx.performance.model.OrderChildExceptionReportDealLog;
import com.clx.performance.model.OrderChildExceptionReportOperationLog; import com.clx.performance.model.OrderChildExceptionReportOperationLog;
import com.clx.performance.model.breakcontract.BreakContractDriverRecord;
import com.clx.performance.param.pc.DealExceptionReportParam; import com.clx.performance.param.pc.DealExceptionReportParam;
import com.clx.performance.param.pc.PageExceptionReportParam; import com.clx.performance.param.pc.PageExceptionReportParam;
import com.clx.performance.param.pc.TransferDriverBreakContractParam; import com.clx.performance.param.pc.TransferDriverBreakContractParam;
import com.clx.performance.service.OrderChildExceptionReportService; import com.clx.performance.service.OrderChildExceptionReportService;
import com.clx.performance.service.breakcontract.BreakContractDriverRecordService; import com.clx.performance.service.breakcontract.BreakContractDriverRecordService;
import com.clx.performance.struct.OrderChildExceptionReportOperationLogStruct;
import com.clx.performance.struct.OrderChildExceptionReportStruct; import com.clx.performance.struct.OrderChildExceptionReportStruct;
import com.clx.performance.utils.LocalDateTimeUtils; import com.clx.performance.utils.LocalDateTimeUtils;
import com.clx.performance.utils.excel.ExcelData; import com.clx.performance.utils.excel.ExcelData;
import com.clx.performance.utils.excel.ExcelField; import com.clx.performance.utils.excel.ExcelField;
import com.clx.performance.utils.excel.ExcelSheet; import com.clx.performance.utils.excel.ExcelSheet;
import com.clx.performance.utils.excel.ExcelUtil; import com.clx.performance.utils.excel.ExcelUtil;
import com.clx.performance.vo.pc.OrderChildExceptionReportOperationLogVO;
import com.clx.performance.vo.pc.OrderChildExceptionReportVO; import com.clx.performance.vo.pc.OrderChildExceptionReportVO;
import com.msl.common.base.Optional; import com.msl.common.base.Optional;
import com.msl.common.exception.ServiceSystemException; import com.msl.common.exception.ServiceSystemException;
...@@ -70,6 +74,8 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio ...@@ -70,6 +74,8 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio
private final OrderChildExceptionReportOperationLogDao orderChildExceptionReportOperationLogDao; private final OrderChildExceptionReportOperationLogDao orderChildExceptionReportOperationLogDao;
private final BreakContractDriverRecordService breakContractDriverRecordService; private final BreakContractDriverRecordService breakContractDriverRecordService;
private final OrderChildDao orderChildDao; private final OrderChildDao orderChildDao;
private final BreakContractDriverRecordDao breakContractDriverRecordDao;
private final OrderChildExceptionReportOperationLogStruct orderChildExceptionReportOperationLogStruct;
@Override @Override
public Result<String> smbSyncExceptionReportInfo(SmbSyncExceptionReportInfoAction action) { public Result<String> smbSyncExceptionReportInfo(SmbSyncExceptionReportInfoAction action) {
...@@ -358,9 +364,10 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio ...@@ -358,9 +364,10 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio
vo.setAppealPictureUrlList(JSON.parseArray(dealLog.getVideoUrl(),String.class)); vo.setAppealPictureUrlList(JSON.parseArray(dealLog.getVideoUrl(),String.class));
vo.setAppealVideoUrlList(JSON.parseArray(dealLog.getPictureUrl(),String.class)); vo.setAppealVideoUrlList(JSON.parseArray(dealLog.getPictureUrl(),String.class));
} }
//TODO 增加操作日志 所有地方增加操作日志保存 List<OrderChildExceptionReportOperationLog> list = orderChildExceptionReportOperationLogDao.listByField(
OrderChildExceptionReportOperationLog::getReportNo, report.getReportNo());
List<OrderChildExceptionReportOperationLogVO> logs = orderChildExceptionReportOperationLogStruct.convertList(list);
vo.setOperationLogs(logs);
return vo; return vo;
} }
...@@ -373,11 +380,12 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio ...@@ -373,11 +380,12 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio
&& Objects.equals(report.getDealResult(),ExceptionReportEnum.DealResult.CARRIER_BREAK_CONTRACT.getCode())){ && Objects.equals(report.getDealResult(),ExceptionReportEnum.DealResult.CARRIER_BREAK_CONTRACT.getCode())){
throw new ServiceSystemException(ResultEnum.DATA_ERROR); throw new ServiceSystemException(ResultEnum.DATA_ERROR);
} }
//创建司机违约记录
//@TODO 创建司机违约记录 saveDriverBreakContractRecord(report);
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
report.setTransferDriverBreakContract(1); report.setTransferDriverBreakContract(1);
report.setBreakContractReason(param.getReason());
orderChildExceptionReportDao.updateEntityByKey(report); orderChildExceptionReportDao.updateEntityByKey(report);
saveOperationLog(report.getReportNo(),CarrierExceptionLogEnum.Type.TRANSFER_DRIVER_BREAK_CONTRACT,null,loginUserInfo.getUserNo(), saveOperationLog(report.getReportNo(),CarrierExceptionLogEnum.Type.TRANSFER_DRIVER_BREAK_CONTRACT,null,loginUserInfo.getUserNo(),
loginUserInfo.getUserName()); loginUserInfo.getUserName());
...@@ -397,39 +405,28 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio ...@@ -397,39 +405,28 @@ public class OrderChildExceptionReportServiceImpl implements OrderChildExceptio
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo(); Long userNo = loginUserInfo.getUserNo();
LocalDateTime time = LocalDateTime.now(); LocalDateTime time = LocalDateTime.now();
String breakNo = breakContractDriverRecordService.breakNoGenerate(); String breakNo = breakContractDriverRecordService.breakNoGenerate();
OrderChild orderChild = orderChildDao.getByChildNo(report.getChildNo()).orElseThrow(PerformanceResultEnum.ORDER_CHILD_NO_FOUND); OrderChild orderChild = orderChildDao.getByChildNo(report.getChildNo()).orElseThrow(PerformanceResultEnum.ORDER_CHILD_NO_FOUND);
BreakContractDriverRecord record = new BreakContractDriverRecord();
/* BreakContractDriverRecord record = new BreakContractDriverRecord();
record.setBreakNo(breakNo); record.setBreakNo(breakNo);
record.setTriggerType(BreakContractRecordEnum.TriggerType.MANUAL.getCode()); record.setTriggerType(BreakContractRecordEnum.TriggerType.EXCEPTION_REPORT.getCode());
record.setFigure(param.getFigure());
record.setRemark(param.getRemark());
if (Objects.equals(param.getBreakContractPartyType(), BreakContractRecordEnum.BreakContractPartyType.DRIVER.getCode())) {
record.setBreakContractPartyType(BreakContractRecordEnum.BreakContractPartyType.DRIVER.getCode()); record.setBreakContractPartyType(BreakContractRecordEnum.BreakContractPartyType.DRIVER.getCode());
if (param.getTimeLimit() != null) { record.setChildNo(orderChild.getChildNo());
record.setTimeLimit(param.getTimeLimit());
record.setLimitTime(time.plusSeconds(param.getTimeLimit().multiply(BigDecimal.valueOf(3600L)).intValue()));
}
}
else {
record.setBreakContractPartyType(BreakContractRecordEnum.BreakContractPartyType.PLATFORM.getCode());
}
record.setChildNo(param.getChildNo());
record.setTruckNo(orderChild.getTruckNo()); record.setTruckNo(orderChild.getTruckNo());
record.setTruckOwnUserNo(orderChild.getTruckOwnUserNo());
record.setTruckOwnName(orderChild.getTruckOwnName()); record.setTruckOwnName(orderChild.getTruckOwnName());
record.setTruckOwnUserNo(orderChild.getTruckOwnUserNo());
record.setDriverUserNo(orderChild.getDriverUserNo()); record.setDriverUserNo(orderChild.getDriverUserNo());
record.setDriverName(orderChild.getDriverName()); record.setDriverName(orderChild.getDriverName());
record.setFigure(report.getDeductionAmount());
record.setExceptionCategory(record.getExceptionCategory());
record.setExceptionType(record.getExceptionType());
record.setExceptionReportNo(report.getReportNo());
record.setPictureUrl(record.getPictureUrl());
record.setVideoUrl(record.getVideoUrl());
record.setRemark(report.getBreakContractReason());
record.setCreateBy(userNo); record.setCreateBy(userNo);
record.setCreateName(loginUserInfo.getUserName()); record.setCreateName(loginUserInfo.getUserName());
record.setCreateTime(time); record.setCreateTime(time);
breakContractDriverRecordDao.saveEntity(record);
breakContractDriverRecordDao.saveEntity(record);*/
} }
} }
package com.clx.performance.struct;
import com.clx.performance.model.OrderChildExceptionReportOperationLog;
import com.clx.performance.vo.pc.OrderChildExceptionReportOperationLogVO;
import java.util.List;
public interface OrderChildExceptionReportOperationLogStruct {
List<OrderChildExceptionReportOperationLogVO> convertList(List<OrderChildExceptionReportOperationLog> list);
}
...@@ -14,6 +14,7 @@ public enum BreakContractRecordEnum { ...@@ -14,6 +14,7 @@ public enum BreakContractRecordEnum {
public enum TriggerType { public enum TriggerType {
SYSTEM(1, "系统触发"), SYSTEM(1, "系统触发"),
MANUAL(2, "手动触发"), MANUAL(2, "手动触发"),
EXCEPTION_REPORT(3, "异常上报"),
; ;
private final Integer code; private final Integer code;
......
package com.clx.performance.vo.pc;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class OrderChildExceptionReportOperationLogVO {
@Schema(description = "id")
private Integer id; //id
@Schema(description = "异常上报编号")
private String reportNo; //运单编号
@Schema(description = "操作事项编码")
private Integer type; //操作事项编码
@Schema(description = "处理结果")
private String result; //处理结果
@Schema(description = "操作人名称")
private String createName; //操作人名称
@Schema(description = "创建时间")
private String createTime; //创建时间
}
\ No newline at end of file
...@@ -157,5 +157,11 @@ public class OrderChildExceptionReportVO { ...@@ -157,5 +157,11 @@ public class OrderChildExceptionReportVO {
@Schema(description="操作日志列表")
private List<OrderChildExceptionReportOperationLogVO> operationLogs;
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论