|
@@ -1,6 +1,7 @@
|
|
|
package com.dayou.service.impl;
|
|
|
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.dynamic.datasource.annotation.DS;
|
|
@@ -37,7 +38,9 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import static com.dayou.common.Constants.OUTWARD_TO_PRICE;
|
|
|
import static com.dayou.common.Constants.PERSONAL_INWARD;
|
|
|
+import static com.dayou.enums.FineRefundStatusEnum.NOT_RETURNED;
|
|
|
import static com.dayou.enums.MainBusinessEnum.PERSONAL_BUSINESS;
|
|
|
+import static com.dayou.enums.workflow.FineRefundReason.RETURN_MONEY;
|
|
|
import static com.dayou.enums.workflow.NodeLogEnum.PASS;
|
|
|
import static com.dayou.enums.workflow.NodeStateEnum.PENDING;
|
|
|
|
|
@@ -105,6 +108,12 @@ public class PersonalServiceImpl extends ServiceImpl<PersonalMapper, Personal> i
|
|
|
@Autowired
|
|
|
private IDictDataService dictDataService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IFinanceFineService financeFineService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IFinanceFineRefundService financeFineRefundService;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
@SuppressWarnings("unchecked")
|
|
@@ -397,6 +406,21 @@ public class PersonalServiceImpl extends ServiceImpl<PersonalMapper, Personal> i
|
|
|
}
|
|
|
orderFundService.save(orderFund);
|
|
|
}
|
|
|
+
|
|
|
+ // 新增罚款后退款记录
|
|
|
+ FinanceFine financeFine = financeFineService.getFineByFundInfo(orderFund.getId(), null);
|
|
|
+ // 判断罚款记录是否为空,为空说明没有已确认的罚款,不新增罚款退款记录
|
|
|
+ if (ObjectUtil.isNotNull(financeFine)) {
|
|
|
+ FinanceFineRefund financeFineRefund = FinanceFineRefund
|
|
|
+ .builder()
|
|
|
+ .fineId(financeFine.getId())
|
|
|
+ .refundAmount(financeFine.getRealFineAmount())
|
|
|
+ .refundReason(RETURN_MONEY.getCode())
|
|
|
+ .status(NOT_RETURNED.getCode())
|
|
|
+ .build();
|
|
|
+ financeFineRefundService.save(financeFineRefund);
|
|
|
+ }
|
|
|
+
|
|
|
FinanceClaim financeClaim = new FinanceClaim();
|
|
|
financeClaim.setRealFundId(financeFundId);
|
|
|
financeClaim.setOrderFundId(orderFund.getId());
|