|
@@ -86,6 +86,9 @@ public class OrderOperationLogAspect {
|
|
|
Object result = null;
|
|
Object result = null;
|
|
|
// 创建 JSONConfig 并设置日期格式, 会把LocalDate 和LocalDateTime 都转换为 包含时分秒的格式(后续有了更好的办法再优化)
|
|
// 创建 JSONConfig 并设置日期格式, 会把LocalDate 和LocalDateTime 都转换为 包含时分秒的格式(后续有了更好的办法再优化)
|
|
|
JSONConfig jsonConfig = JSONConfig.create().setDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
JSONConfig jsonConfig = JSONConfig.create().setDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
|
|
+ QuoteEchoVo detailVoOld;
|
|
|
|
|
+ QuoteEchoVo detailVoNew;
|
|
|
|
|
+ Map<String, List<String>> diffMap;
|
|
|
switch (log.optType().getCode()){
|
|
switch (log.optType().getCode()){
|
|
|
// 创建订单
|
|
// 创建订单
|
|
|
case 0:
|
|
case 0:
|
|
@@ -169,18 +172,21 @@ public class OrderOperationLogAspect {
|
|
|
case 15:
|
|
case 15:
|
|
|
logger.info("费用调整log.orderSpEl()=[{}]",log.orderSpEl());
|
|
logger.info("费用调整log.orderSpEl()=[{}]",log.orderSpEl());
|
|
|
PtlAgreementCostRatioVo vo = parser.parseExpression(log.orderSpEl()).getValue(context, PtlAgreementCostRatioVo.class);
|
|
PtlAgreementCostRatioVo vo = parser.parseExpression(log.orderSpEl()).getValue(context, PtlAgreementCostRatioVo.class);
|
|
|
- QuoteEchoVo detailVoOld = insFeeAuditService.auditInfo(vo.getOrderNo());
|
|
|
|
|
|
|
+ detailVoOld = insFeeAuditService.auditInfo(vo.getOrderNo());
|
|
|
result = joinPoint.proceed();
|
|
result = joinPoint.proceed();
|
|
|
- QuoteEchoVo detailVoNew = insFeeAuditService.auditInfo(vo.getOrderNo());
|
|
|
|
|
- Map<String, List<String>> diffMap = JsonDiffUtil.compareJson(JSONUtil.toJsonStr(detailVoOld,jsonConfig), JSONUtil.toJsonStr(detailVoNew,jsonConfig), new HashSet<>());
|
|
|
|
|
|
|
+ detailVoNew = insFeeAuditService.auditInfo(vo.getOrderNo());
|
|
|
|
|
+ diffMap = JsonDiffUtil.compareJson(JSONUtil.toJsonStr(detailVoOld,jsonConfig), JSONUtil.toJsonStr(detailVoNew,jsonConfig), new HashSet<>());
|
|
|
this.saveCostInfo(result,log, vo,diffMap);
|
|
this.saveCostInfo(result,log, vo,diffMap);
|
|
|
break;
|
|
break;
|
|
|
// 设为疑问订单
|
|
// 设为疑问订单
|
|
|
case 17:
|
|
case 17:
|
|
|
logger.info("设置为疑问订单.log.orderSpEl()=[{}]",log.orderSpEl());
|
|
logger.info("设置为疑问订单.log.orderSpEl()=[{}]",log.orderSpEl());
|
|
|
QuestionOrder questionOrder = parser.parseExpression(log.orderSpEl()).getValue(context, QuestionOrder.class);
|
|
QuestionOrder questionOrder = parser.parseExpression(log.orderSpEl()).getValue(context, QuestionOrder.class);
|
|
|
|
|
+ detailVoOld = insFeeAuditService.auditInfo(questionOrder.getOrderNo());
|
|
|
result = joinPoint.proceed();
|
|
result = joinPoint.proceed();
|
|
|
- this.updateToQuestionOrder(result,log, questionOrder);
|
|
|
|
|
|
|
+ detailVoNew = insFeeAuditService.auditInfo(questionOrder.getOrderNo());
|
|
|
|
|
+ diffMap = JsonDiffUtil.compareJson(JSONUtil.toJsonStr(detailVoOld,jsonConfig), JSONUtil.toJsonStr(detailVoNew,jsonConfig), new HashSet<>());
|
|
|
|
|
+ this.updateToQuestionOrder(result,log, questionOrder,diffMap);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
return result;
|
|
return result;
|
|
@@ -192,14 +198,14 @@ public class OrderOperationLogAspect {
|
|
|
* @author lipf
|
|
* @author lipf
|
|
|
* @date 2026/7/16 16:35
|
|
* @date 2026/7/16 16:35
|
|
|
*/
|
|
*/
|
|
|
- private void updateToQuestionOrder(Object result, OrderOperationLog log, QuestionOrder questionOrder) {
|
|
|
|
|
|
|
+ private void updateToQuestionOrder(Object result, OrderOperationLog log, QuestionOrder questionOrder,Map<String, List<String>> diffMap) {
|
|
|
logger.info("设置为疑问订单。questionOrder=[{}]", JSONUtil.toJsonStr(questionOrder));
|
|
logger.info("设置为疑问订单。questionOrder=[{}]", JSONUtil.toJsonStr(questionOrder));
|
|
|
InsOrdersTrack track = new InsOrdersTrack();
|
|
InsOrdersTrack track = new InsOrdersTrack();
|
|
|
track.setModule(log.module());
|
|
track.setModule(log.module());
|
|
|
track.setSubModule(log.subModule());
|
|
track.setSubModule(log.subModule());
|
|
|
track.setOptType(log.optType().getCode());
|
|
track.setOptType(log.optType().getCode());
|
|
|
track.setOptContent(log.description());
|
|
track.setOptContent(log.description());
|
|
|
- track.setChangeAfter(JSONUtil.toJsonStr(questionOrder));
|
|
|
|
|
|
|
+ //track.setChangeAfter(JSONUtil.toJsonStr(questionOrder));
|
|
|
track.setResult(JSONUtil.toJsonStr(result));
|
|
track.setResult(JSONUtil.toJsonStr(result));
|
|
|
InsOrders insOrders = orderService.getById(questionOrder.getOrderNo());
|
|
InsOrders insOrders = orderService.getById(questionOrder.getOrderNo());
|
|
|
if(insOrders != null){
|
|
if(insOrders != null){
|
|
@@ -212,6 +218,7 @@ public class OrderOperationLogAspect {
|
|
|
}
|
|
}
|
|
|
track.setStatus(1);
|
|
track.setStatus(1);
|
|
|
track.setOrderNo(questionOrder.getOrderNo());
|
|
track.setOrderNo(questionOrder.getOrderNo());
|
|
|
|
|
+ this.fillBeforeAndAfter(diffMap, track);
|
|
|
traceService.save(track);
|
|
traceService.save(track);
|
|
|
|
|
|
|
|
}
|
|
}
|
|
@@ -276,6 +283,13 @@ public class OrderOperationLogAspect {
|
|
|
track.setResult("要进行费用调整的订单不存在");
|
|
track.setResult("要进行费用调整的订单不存在");
|
|
|
}
|
|
}
|
|
|
track.setStatus(1);
|
|
track.setStatus(1);
|
|
|
|
|
+ this.fillBeforeAndAfter(diffMap, track);
|
|
|
|
|
+ track.setOrderNo(orderNo);
|
|
|
|
|
+ track.setResult(JSONUtil.toJsonStr(result));
|
|
|
|
|
+ traceService.save(track);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private void fillBeforeAndAfter(Map<String, List<String>> diffMap, InsOrdersTrack track) {
|
|
|
if(CollUtil.isNotEmpty(diffMap)){
|
|
if(CollUtil.isNotEmpty(diffMap)){
|
|
|
List<String> oldItems = new ArrayList<>();
|
|
List<String> oldItems = new ArrayList<>();
|
|
|
List<String> newItems = new ArrayList<>();
|
|
List<String> newItems = new ArrayList<>();
|
|
@@ -292,11 +306,8 @@ public class OrderOperationLogAspect {
|
|
|
track.setChangeBefore(String.join("\n", oldItems));
|
|
track.setChangeBefore(String.join("\n", oldItems));
|
|
|
track.setChangeAfter(String.join("\n", newItems));
|
|
track.setChangeAfter(String.join("\n", newItems));
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- track.setOrderNo(orderNo);
|
|
|
|
|
- track.setResult(JSONUtil.toJsonStr(result));
|
|
|
|
|
- traceService.save(track);
|
|
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 订单审核(通过/驳回)
|
|
* 订单审核(通过/驳回)
|
|
|
*
|
|
*
|