Commit d18c0ce1 authored by 332784038@qq.com's avatar 332784038@qq.com

Merge branch 'test' into release

parents 3c1309dd c7fbb7d1
...@@ -40,6 +40,7 @@ public enum OrderApprovalTypeEnum { ...@@ -40,6 +40,7 @@ public enum OrderApprovalTypeEnum {
DISCOUNT_APPLY_BATCH(31, "批量优惠申请", Arrays.asList(1, 2, 6, 11, 14, 23, 28, 32)), // 拆单申请/合单申请/订单修改/退仓/撤销拆单审批/优惠申请(当前商品有在途申请)/批量管理折扣申请(当前商品有在途申请)/管理优惠(当前商品有在途申请) DISCOUNT_APPLY_BATCH(31, "批量优惠申请", Arrays.asList(1, 2, 6, 11, 14, 23, 28, 32)), // 拆单申请/合单申请/订单修改/退仓/撤销拆单审批/优惠申请(当前商品有在途申请)/批量管理折扣申请(当前商品有在途申请)/管理优惠(当前商品有在途申请)
ADMIN_DISCOUNT_BATCH(32, "批量管理折扣申请", Arrays.asList(1, 2, 6, 11, 14, 23, 28, 31)), // 拆单申请/合单申请/订单修改/退仓/撤销拆单审批/优惠申请(当前商品有在途申请)/批量优惠申请(当前商品有在途申请)/管理优惠(当前商品有在途申请) ADMIN_DISCOUNT_BATCH(32, "批量管理折扣申请", Arrays.asList(1, 2, 6, 11, 14, 23, 28, 31)), // 拆单申请/合单申请/订单修改/退仓/撤销拆单审批/优惠申请(当前商品有在途申请)/批量优惠申请(当前商品有在途申请)/管理优惠(当前商品有在途申请)
expense_apply_BATCH(41, "批量费用申请", Arrays.asList(6, 11, 28)), // 拆单申请/合单申请/撤销拆单审批
//分拣 //分拣
sorting(50, "分拣审批", Arrays.asList(6, 11, 13, 14, 22, 23, 28)), // 自编号全部申请互斥,跟原本一致,不修改, 自编号下订单除拆单申请/合单申请/调仓申请/订单修改/入仓申请/退仓申请外,其他申请不受限制,允许封柜反审批 sorting(50, "分拣审批", Arrays.asList(6, 11, 13, 14, 22, 23, 28)), // 自编号全部申请互斥,跟原本一致,不修改, 自编号下订单除拆单申请/合单申请/调仓申请/订单修改/入仓申请/退仓申请外,其他申请不受限制,允许封柜反审批
......
...@@ -153,6 +153,11 @@ public enum OrderApprovalTypeResultEnum implements IntArrayValuable { ...@@ -153,6 +153,11 @@ public enum OrderApprovalTypeResultEnum implements IntArrayValuable {
admin_discount_batch_reject(32,3, "admin.discount.batch.reject"), admin_discount_batch_reject(32,3, "admin.discount.batch.reject"),
admin_discount_batch_cancel(32,4, "admin.discount.batch.cancel"), admin_discount_batch_cancel(32,4, "admin.discount.batch.cancel"),
//批量费用申请
expense_apply_batch_processing(41,1, "fee.application.processing"),
expense_apply_batch_pass(41,2, "fee.application.pass"),
expense_apply_batch_reject(41,3, "fee.application.reject"),
expense_apply_batch_cancel(41,4, "fee.application.cancel"),
//分拣 //分拣
sorting_processing(50,1, "shipment.sorting.processing"), sorting_processing(50,1, "shipment.sorting.processing"),
......
...@@ -38,8 +38,11 @@ import cn.iocoder.yudao.module.system.service.user.AdminUserService; ...@@ -38,8 +38,11 @@ import cn.iocoder.yudao.module.system.service.user.AdminUserService;
import cn.iocoder.yudao.module.wealth.dal.dataobject.receivable.ReceivableDO; import cn.iocoder.yudao.module.wealth.dal.dataobject.receivable.ReceivableDO;
import cn.iocoder.yudao.module.wealth.service.receivable.ReceivableService; import cn.iocoder.yudao.module.wealth.service.receivable.ReceivableService;
import cn.iocoder.yudao.module.wealth.vo.receivable.ReceivableCreateReqVO; import cn.iocoder.yudao.module.wealth.vo.receivable.ReceivableCreateReqVO;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -55,8 +58,7 @@ import java.util.Objects; ...@@ -55,8 +58,7 @@ import java.util.Objects;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.order.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.order.enums.ErrorCodeConstants.*;
import static cn.iocoder.yudao.module.order.enums.OrderApprovalTypeEnum.ORDER_UPDATE; import static cn.iocoder.yudao.module.order.enums.OrderApprovalTypeEnum.*;
import static cn.iocoder.yudao.module.order.enums.OrderApprovalTypeEnum.expense_apply;
/** /**
* 订单费用申请 Service 实现类 * 订单费用申请 Service 实现类
...@@ -182,19 +184,18 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl ...@@ -182,19 +184,18 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl
orderApprovalDO.setFollowUpSalesmanId(String.valueOf(SecurityFrameworkUtils.getLoginUserId())); orderApprovalDO.setFollowUpSalesmanId(String.valueOf(SecurityFrameworkUtils.getLoginUserId()));
orderApprovalDO.setOrderId(createReqVO.getOrderId()); orderApprovalDO.setOrderId(createReqVO.getOrderId());
//批量费用申请 //批量费用申请
orderApprovalDO.setType(expense_apply.getValue()); orderApprovalDO.setType(expense_apply_BATCH.getValue());
orderApprovalDO.setStatus(ApprovalResultStatusEnum.processing.getValue()); orderApprovalDO.setStatus(ApprovalResultStatusEnum.processing.getValue());
Long bpmProcessId = orderApprovalService.applyAndCreate(orderApprovalDO, WorkFlowEmus.ORDER_BATCH_FREE_APPLY, createReqVO.getCopyUserId()); Long bpmProcessId = orderApprovalService.applyAndCreate(orderApprovalDO, WorkFlowEmus.ORDER_BATCH_FREE_APPLY, createReqVO.getCopyUserId());
//创建审批流 //创建审批流
OrderDO orderDO = orderService.selectOne(OrderDO::getOrderId, createReqVO.getOrderId()); OrderDO orderDO = orderService.selectOne(OrderDO::getOrderId, createReqVO.getOrderId());
orderService.updateStatus(orderDO.getOrderId(), null, null, null, null, null, OrderApprovalTypeResultEnum.expense_apply_processing.getType(), OrderApprovalTypeResultEnum.expense_apply_processing.getDesc()); orderService.updateStatus(orderDO.getOrderId(), null, null, null, null, null, OrderApprovalTypeResultEnum.expense_apply_batch_processing.getType(), OrderApprovalTypeResultEnum.expense_apply_batch_processing.getDesc());
//更新费用列表对应的流程申请ID //更新费用列表对应的流程申请ID
for (OrderFeeApplicationDO feeApplication : batchFeeList) { for (OrderFeeApplicationDO feeApplication : batchFeeList) {
feeApplication.setBatchBpmBusinessId(String.valueOf(bpmProcessId)); feeApplication.setBatchBpmBusinessId(String.valueOf(bpmProcessId));
feeApplication.setBpmProcessId(String.valueOf(bpmProcessId));
feeApplication.setStatus(ApprovalResultStatusEnum.processing.getValue()); feeApplication.setStatus(ApprovalResultStatusEnum.processing.getValue());
feeApplicationMapper.updateById(feeApplication); feeApplicationMapper.updateById(feeApplication);
} }
...@@ -216,12 +217,19 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl ...@@ -216,12 +217,19 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl
} }
// 更新 // 更新
OrderFeeApplicationDO updateObj = OrderFeeApplicationConvert.INSTANCE.convert(updateReqVO); OrderFeeApplicationDO updateObj = OrderFeeApplicationConvert.INSTANCE.convert(updateReqVO);
Long userId = SecurityFrameworkUtils.getLoginUserId(); //创建审批单,发起流程
String bpmProcessId = bpmCreateServiceFactory.createBmp(userId, updateObj.getId(), WorkFlowEmus.ORDER_FREE_APPLY.getKey(), orderDO.getOrderNo(), updateReqVO.getCopyUserId()); OrderApprovalDO orderApprovalDO = new OrderApprovalDO();
orderApprovalDO.setFollowUpSalesmanId(String.valueOf(SecurityFrameworkUtils.getLoginUserId()));
orderApprovalDO.setOrderId(updateReqVO.getOrderId());
//费用申请
orderApprovalDO.setType(expense_apply.getValue());
orderApprovalDO.setStatus(ApprovalResultStatusEnum.processing.getValue());
orderApprovalDO.setDetails(JSONObject.toJSONString(updateObj));
Long bpmProcessId = orderApprovalService.applyAndCreate(orderApprovalDO, WorkFlowEmus.ORDER_FREE_APPLY, updateReqVO.getCopyUserId());
Integer auditType = OrderApprovalTypeResultEnum.expense_apply_processing.getType(); Integer auditType = OrderApprovalTypeResultEnum.expense_apply_processing.getType();
orderService.updateStatus(orderDO.getOrderId(), null, null, null, null, null, auditType, OrderApprovalTypeResultEnum.expense_apply_processing.getDesc()); orderService.updateStatus(orderDO.getOrderId(), null, null, null, null, null, auditType, OrderApprovalTypeResultEnum.expense_apply_processing.getDesc());
updateObj.setBpmProcessId(bpmProcessId); orderFeeApplicationDOOld.setBpmProcessId(String.valueOf(bpmProcessId));
feeApplicationMapper.updateById(updateObj); feeApplicationMapper.updateById(orderFeeApplicationDOOld);
DictDataRespDTO dictDataFromCacheOld = DictFrameworkUtils.getDictDataFromCache(DictTypeConstants.RECEIVABLE_FEE_TYPE, String.valueOf(orderFeeApplicationDOOld.getFeeType())); DictDataRespDTO dictDataFromCacheOld = DictFrameworkUtils.getDictDataFromCache(DictTypeConstants.RECEIVABLE_FEE_TYPE, String.valueOf(orderFeeApplicationDOOld.getFeeType()));
DictDataRespDTO dictDataFromCache = DictFrameworkUtils.getDictDataFromCache(DictTypeConstants.RECEIVABLE_FEE_TYPE, String.valueOf(updateReqVO.getFeeType())); DictDataRespDTO dictDataFromCache = DictFrameworkUtils.getDictDataFromCache(DictTypeConstants.RECEIVABLE_FEE_TYPE, String.valueOf(updateReqVO.getFeeType()));
CurrencyDO currency = currencyService.getCurrency(updateReqVO.getApplicationFeeCurrency()); CurrencyDO currency = currencyService.getCurrency(updateReqVO.getApplicationFeeCurrency());
...@@ -254,7 +262,7 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl ...@@ -254,7 +262,7 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl
} }
// 当费用金额为0时,可以不经审批直接删除 // 当费用金额为0时,可以不经审批直接删除
// 判断金额是否为0 // 判断金额是否为0
if (orderFeeApplicationDO.getApplicationFee().compareTo(BigDecimal.ZERO) != 0){ if (orderFeeApplicationDO.getApplicationFee().compareTo(BigDecimal.ZERO) != 0) {
throw exception(FEE_APPLICATION_NOT_IS_ZERO); throw exception(FEE_APPLICATION_NOT_IS_ZERO);
} }
// 删除可能的应收单 // 删除可能的应收单
...@@ -262,7 +270,7 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl ...@@ -262,7 +270,7 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl
orderFeeApplicationDO.getReceivableId() > 0) { orderFeeApplicationDO.getReceivableId() > 0) {
long idTemp = (long) orderFeeApplicationDO.getReceivableId(); long idTemp = (long) orderFeeApplicationDO.getReceivableId();
ReceivableDO rDo = receivableService.getReceivable(idTemp); ReceivableDO rDo = receivableService.getReceivable(idTemp);
if(Objects.nonNull(rDo)){ if (Objects.nonNull(rDo)) {
receivableService.removeById(rDo.getId()); receivableService.removeById(rDo.getId());
} }
} }
...@@ -316,8 +324,14 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl ...@@ -316,8 +324,14 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateFeeApproveResult(String id, int result) { public void updateFeeApproveResult(String id, int result) {
OrderFeeApplicationDO orderFeeApplicationDO = OrderApprovalDO orderApprovalDO = orderApprovalService.getApproval(Long.parseLong(id));
feeApplicationMapper.selectById(id); if (Objects.isNull(orderApprovalDO)){
throw exception(ORDER_APPROVAL_INFO_NOT_FIND);
}
orderApprovalDO.setStatus(result);
orderApprovalService.updateById(orderApprovalDO);
// 这里已经将修改后的内容更新到原数据中去了
OrderFeeApplicationDO orderFeeApplicationDO = JSONObject.parseObject(orderApprovalDO.getDetails(), OrderFeeApplicationDO.class);
if (orderFeeApplicationDO != null) { if (orderFeeApplicationDO != null) {
orderFeeApplicationDO.setStatus(result); orderFeeApplicationDO.setStatus(result);
feeApplicationMapper.updateById(orderFeeApplicationDO); feeApplicationMapper.updateById(orderFeeApplicationDO);
...@@ -416,91 +430,92 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl ...@@ -416,91 +430,92 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateFeeApproveBatchResult(String id, int result) { public void updateFeeApproveBatchResult(String id, int result) {
OrderApprovalDO orderApprovalDO = orderApprovalService.getApproval(Long.parseLong(id)); OrderApprovalDO orderApprovalDO = orderApprovalService.getApproval(Long.parseLong(id));
if (orderApprovalDO != null) { if (Objects.isNull(orderApprovalDO)){
orderApprovalDO.setStatus(result); throw exception(ORDER_APPROVAL_INFO_NOT_FIND);
orderApprovalService.updateById(orderApprovalDO); }
if (result == ApprovalResultStatusEnum.pass.getValue()) { orderApprovalDO.setStatus(result);
List<FeeDto> feeDtos = new ArrayList<>(); orderApprovalService.updateById(orderApprovalDO);
OrderBackVO order = orderQueryService.getOrder(orderApprovalDO.getOrderId()); if (result == ApprovalResultStatusEnum.pass.getValue()) {
LambdaQueryWrapper<OrderFeeApplicationDO> lambdaQueryWrapper = new LambdaQueryWrapper(); List<FeeDto> feeDtos = new ArrayList<>();
lambdaQueryWrapper.eq(OrderFeeApplicationDO::getOrderId, orderApprovalDO.getOrderId()); OrderBackVO order = orderQueryService.getOrder(orderApprovalDO.getOrderId());
lambdaQueryWrapper.eq(OrderFeeApplicationDO::getBatchBpmBusinessId, orderApprovalDO.getOrderApprovalId()); LambdaQueryWrapper<OrderFeeApplicationDO> lambdaQueryWrapper = new LambdaQueryWrapper();
List<OrderFeeApplicationDO> batchFeeList = this.list(lambdaQueryWrapper); lambdaQueryWrapper.eq(OrderFeeApplicationDO::getOrderId, orderApprovalDO.getOrderId());
for (OrderFeeApplicationDO feeApplicationDO : batchFeeList) { lambdaQueryWrapper.eq(OrderFeeApplicationDO::getBatchBpmBusinessId, orderApprovalDO.getOrderApprovalId());
//生成应收 List<OrderFeeApplicationDO> batchFeeList = this.list(lambdaQueryWrapper);
DictDataRespDTO dictDto = DictFrameworkUtils.getDictDataFromCache("receivable_fee_type", String.valueOf(feeApplicationDO.getFeeType())); for (OrderFeeApplicationDO feeApplicationDO : batchFeeList) {
if (feeApplicationDO.getReceivableId() != null && feeApplicationDO.getReceivableId() > 0) { //生成应收
ReceivableDO receivableDO = new ReceivableDO(); DictDataRespDTO dictDto = DictFrameworkUtils.getDictDataFromCache("receivable_fee_type", String.valueOf(feeApplicationDO.getFeeType()));
//应收款ID if (feeApplicationDO.getReceivableId() != null && feeApplicationDO.getReceivableId() > 0) {
receivableDO.setId(Long.valueOf(feeApplicationDO.getReceivableId())); ReceivableDO receivableDO = new ReceivableDO();
receivableDO.setTitleZh(dictDto.getLabel()); //应收款ID
receivableDO.setTitleEn(dictDto.getLabelEn()); receivableDO.setId(Long.valueOf(feeApplicationDO.getReceivableId()));
receivableDO.setOrderId(feeApplicationDO.getOrderId()); receivableDO.setTitleZh(dictDto.getLabel());
receivableDO.setOrderNo(order.getOrderNo()); receivableDO.setTitleEn(dictDto.getLabelEn());
receivableDO.setTotalAmount(feeApplicationDO.getApplicationFee()); receivableDO.setOrderId(feeApplicationDO.getOrderId());
receivableDO.setCollectionType(feeApplicationDO.getPayType()); receivableDO.setOrderNo(order.getOrderNo());
receivableDO.setUnitPrice(feeApplicationDO.getApplicationFee()); receivableDO.setTotalAmount(feeApplicationDO.getApplicationFee());
receivableDO.setCurrencyId(Long.valueOf(feeApplicationDO.getApplicationFeeCurrency())); receivableDO.setCollectionType(feeApplicationDO.getPayType());
receivableDO.setFeeType(feeApplicationDO.getFeeType()); receivableDO.setUnitPrice(feeApplicationDO.getApplicationFee());
receivableDO.setIsPayAdvance(feeApplicationDO.getPayType() == 4 ? 0 : 1); receivableDO.setCurrencyId(Long.valueOf(feeApplicationDO.getApplicationFeeCurrency()));
receivableDO.setState(feeApplicationDO.getReceiveFlag()); receivableDO.setFeeType(feeApplicationDO.getFeeType());
receivableDO.setPaymentUser(String.valueOf(order.getDrawee() != 3 ? order.getDrawee() : orderQueryService.customDrawee(OrderConvert.INSTANCE.convert(order), feeApplicationDO.getFeeType())));//6待修改 receivableDO.setIsPayAdvance(feeApplicationDO.getPayType() == 4 ? 0 : 1);
receivableDO.setFeeSource(2); receivableDO.setState(feeApplicationDO.getReceiveFlag());
receivableDO.setAuthor(feeApplicationDO.getApplicationAuthor()); receivableDO.setPaymentUser(String.valueOf(order.getDrawee() != 3 ? order.getDrawee() : orderQueryService.customDrawee(OrderConvert.INSTANCE.convert(order), feeApplicationDO.getFeeType())));//6待修改
receivableDO.setRemark(feeApplicationDO.getRemarks()); receivableDO.setFeeSource(2);
//订单费用申请,是申请付给我们的费用, receivableDO.setAuthor(feeApplicationDO.getApplicationAuthor());
// 所以要更新应收款信息 receivableDO.setRemark(feeApplicationDO.getRemarks());
receivableService.updateReceivableById(receivableDO); //订单费用申请,是申请付给我们的费用,
} else { // 所以要更新应收款信息
ReceivableCreateReqVO receivableCreateReqVO = new ReceivableCreateReqVO(); receivableService.updateReceivableById(receivableDO);
receivableCreateReqVO.setTitleZh(dictDto.getLabel()); } else {
receivableCreateReqVO.setTitleEn(dictDto.getLabelEn()); ReceivableCreateReqVO receivableCreateReqVO = new ReceivableCreateReqVO();
receivableCreateReqVO.setOrderId(feeApplicationDO.getOrderId()); receivableCreateReqVO.setTitleZh(dictDto.getLabel());
receivableCreateReqVO.setOrderNo(order.getOrderNo()); receivableCreateReqVO.setTitleEn(dictDto.getLabelEn());
receivableCreateReqVO.setTotalAmount(feeApplicationDO.getApplicationFee()); receivableCreateReqVO.setOrderId(feeApplicationDO.getOrderId());
receivableCreateReqVO.setUnitPrice(feeApplicationDO.getApplicationFee()); receivableCreateReqVO.setOrderNo(order.getOrderNo());
receivableCreateReqVO.setCollectionType(feeApplicationDO.getPayType()); receivableCreateReqVO.setTotalAmount(feeApplicationDO.getApplicationFee());
receivableCreateReqVO.setCurrencyId(Long.valueOf(feeApplicationDO.getApplicationFeeCurrency())); receivableCreateReqVO.setUnitPrice(feeApplicationDO.getApplicationFee());
receivableCreateReqVO.setFeeType(feeApplicationDO.getFeeType()); receivableCreateReqVO.setCollectionType(feeApplicationDO.getPayType());
receivableCreateReqVO.setIsPayAdvance(feeApplicationDO.getPayType() == 4 ? 0 : 1); receivableCreateReqVO.setCurrencyId(Long.valueOf(feeApplicationDO.getApplicationFeeCurrency()));
receivableCreateReqVO.setState(feeApplicationDO.getReceiveFlag()); receivableCreateReqVO.setFeeType(feeApplicationDO.getFeeType());
receivableCreateReqVO.setPaymentUser(String.valueOf(order.getDrawee() != 3 ? order.getDrawee() : orderQueryService.customDrawee(OrderConvert.INSTANCE.convert(order), feeApplicationDO.getFeeType())));//6待修改 receivableCreateReqVO.setIsPayAdvance(feeApplicationDO.getPayType() == 4 ? 0 : 1);
receivableCreateReqVO.setFeeSource(2); receivableCreateReqVO.setState(feeApplicationDO.getReceiveFlag());
receivableCreateReqVO.setAuthor(feeApplicationDO.getApplicationAuthor()); receivableCreateReqVO.setPaymentUser(String.valueOf(order.getDrawee() != 3 ? order.getDrawee() : orderQueryService.customDrawee(OrderConvert.INSTANCE.convert(order), feeApplicationDO.getFeeType())));//6待修改
receivableCreateReqVO.setRemark(feeApplicationDO.getRemarks()); receivableCreateReqVO.setFeeSource(2);
Long receivableId = receivableService.createReceivable(receivableCreateReqVO); receivableCreateReqVO.setAuthor(feeApplicationDO.getApplicationAuthor());
feeApplicationDO.setReceivableId(receivableId.intValue()); receivableCreateReqVO.setRemark(feeApplicationDO.getRemarks());
} Long receivableId = receivableService.createReceivable(receivableCreateReqVO);
feeApplicationDO.setStatus(ApprovalResultStatusEnum.pass.getValue()); feeApplicationDO.setReceivableId(receivableId.intValue());
feeApplicationMapper.updateById(feeApplicationDO);
FeeDto feeDto = new FeeDto();
feeDto.setFeeType(feeApplicationDO.getFeeType());
feeDto.setAmount(feeApplicationDO.getApplicationFee());
feeDto.setCurrencyId(feeApplicationDO.getApplicationFeeCurrency());
feeDtos.add(feeDto);
} }
feeApplicationDO.setStatus(ApprovalResultStatusEnum.pass.getValue());
feeApplicationMapper.updateById(feeApplicationDO);
FeeDto feeDto = new FeeDto();
feeDto.setFeeType(feeApplicationDO.getFeeType());
feeDto.setAmount(feeApplicationDO.getApplicationFee());
feeDto.setCurrencyId(feeApplicationDO.getApplicationFeeCurrency());
feeDtos.add(feeDto);
orderService.addOrderOtherFee(orderApprovalDO.getOrderId(), feeDtos);
orderService.updateStatus(orderApprovalDO.getOrderId(), null, null, null, null, null, 0, OrderApprovalTypeResultEnum.expense_apply_pass.getDesc());
} }
if (result == ApprovalResultStatusEnum.reject.getValue()) { orderService.addOrderOtherFee(orderApprovalDO.getOrderId(), feeDtos);
LambdaUpdateWrapper<OrderFeeApplicationDO> lambdaUpdateWrapper = new LambdaUpdateWrapper(); orderService.updateStatus(orderApprovalDO.getOrderId(), null, null, null, null, null, 0, OrderApprovalTypeResultEnum.expense_apply_pass.getDesc());
lambdaUpdateWrapper.eq(OrderFeeApplicationDO::getOrderId, orderApprovalDO.getOrderId()); }
lambdaUpdateWrapper.eq(OrderFeeApplicationDO::getBatchBpmBusinessId, orderApprovalDO.getOrderApprovalId());
lambdaUpdateWrapper.set(OrderFeeApplicationDO::getStatus, ApprovalResultStatusEnum.reject.getValue());
this.update(lambdaUpdateWrapper);
orderService.updateStatus(orderApprovalDO.getOrderId(), null, null, null, null, null, 0, OrderApprovalTypeResultEnum.expense_apply_reject.getDesc());
}
if (result == ApprovalResultStatusEnum.cancel.getValue()) { if (result == ApprovalResultStatusEnum.reject.getValue()) {
LambdaQueryWrapper<OrderFeeApplicationDO> lambdaQueryWrapper = new LambdaQueryWrapper(); LambdaUpdateWrapper<OrderFeeApplicationDO> lambdaUpdateWrapper = new LambdaUpdateWrapper();
lambdaQueryWrapper.eq(OrderFeeApplicationDO::getOrderId, orderApprovalDO.getOrderId()); lambdaUpdateWrapper.eq(OrderFeeApplicationDO::getOrderId, orderApprovalDO.getOrderId());
lambdaQueryWrapper.eq(OrderFeeApplicationDO::getBatchBpmBusinessId, orderApprovalDO.getOrderApprovalId()); lambdaUpdateWrapper.eq(OrderFeeApplicationDO::getBatchBpmBusinessId, orderApprovalDO.getOrderApprovalId());
this.remove(lambdaQueryWrapper); lambdaUpdateWrapper.set(OrderFeeApplicationDO::getStatus, ApprovalResultStatusEnum.reject.getValue());
orderService.updateStatus(orderApprovalDO.getOrderId(), null, null, null, null, null, 0, OrderApprovalTypeResultEnum.expense_apply_cancel.getDesc()); this.update(lambdaUpdateWrapper);
} orderService.updateStatus(orderApprovalDO.getOrderId(), null, null, null, null, null, 0, OrderApprovalTypeResultEnum.expense_apply_reject.getDesc());
}
if (result == ApprovalResultStatusEnum.cancel.getValue()) {
LambdaQueryWrapper<OrderFeeApplicationDO> lambdaQueryWrapper = new LambdaQueryWrapper();
lambdaQueryWrapper.eq(OrderFeeApplicationDO::getOrderId, orderApprovalDO.getOrderId());
lambdaQueryWrapper.eq(OrderFeeApplicationDO::getBatchBpmBusinessId, orderApprovalDO.getOrderApprovalId());
this.remove(lambdaQueryWrapper);
orderService.updateStatus(orderApprovalDO.getOrderId(), null, null, null, null, null, 0, OrderApprovalTypeResultEnum.expense_apply_cancel.getDesc());
} }
} }
...@@ -519,6 +534,13 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl ...@@ -519,6 +534,13 @@ public class OrderFeeApplicationServiceImpl extends AbstractService<OrderFeeAppl
} else { } else {
item.setReceiveFlag(0); item.setReceiveFlag(0);
} }
if (item.getStatus() == 1 && StringUtils.isNotBlank(item.getBpmProcessId())){
OrderApprovalDO approvalDO = orderApprovalService.getApproval(Long.valueOf(item.getBpmProcessId()));
if (Objects.nonNull(approvalDO) && Objects.nonNull(approvalDO.getDetails())){
OrderFeeApplicationDO feeApplicationDO = JSONObject.parseObject(approvalDO.getDetails(), OrderFeeApplicationDO.class);
BeanUtils.copyProperties(feeApplicationDO, item);
}
}
}); });
return feeApplicationList; return feeApplicationList;
} }
......
...@@ -197,7 +197,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM ...@@ -197,7 +197,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM
.eq(BoxPreloadGoodsDO::getIsRemove, 0) .eq(BoxPreloadGoodsDO::getIsRemove, 0)
); );
OrderDO orderDO = orderService.getById(orderId); OrderDO orderDO = orderService.getById(orderId);
OrderApprovalTypeCheckEvent approvalTypeCheckEvent = new OrderApprovalTypeCheckEvent(orderDO.getOrderId(), null, null, Arrays.asList(1,2,3,4,5,12,31,32) , false); OrderApprovalTypeCheckEvent approvalTypeCheckEvent = new OrderApprovalTypeCheckEvent(orderDO.getOrderId(), null, null, Arrays.asList(6,11,13,14,22,23) , false);
applicationContext.publishEvent(approvalTypeCheckEvent); applicationContext.publishEvent(approvalTypeCheckEvent);
if (approvalTypeCheckEvent.getResult()) { if (approvalTypeCheckEvent.getResult()) {
throw exception(ORDER_IS_APPROVAL_IN_PROCESS); throw exception(ORDER_IS_APPROVAL_IN_PROCESS);
...@@ -209,7 +209,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM ...@@ -209,7 +209,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM
List<GuanLianOrderStatusVO> approvalGuanLianOrderList = guanLianOrderStatusVOList.stream().filter(vo -> vo.getType() == 2).collect(Collectors.toList()); List<GuanLianOrderStatusVO> approvalGuanLianOrderList = guanLianOrderStatusVOList.stream().filter(vo -> vo.getType() == 2).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(approvalGuanLianOrderList)){ if (CollectionUtil.isNotEmpty(approvalGuanLianOrderList)){
String orderNoStr = approvalGuanLianOrderList.stream().filter(o -> { String orderNoStr = approvalGuanLianOrderList.stream().filter(o -> {
OrderApprovalTypeCheckEvent guanLianApprovalTypeCheckEvent = new OrderApprovalTypeCheckEvent(o.getOrderId(), null, null, Arrays.asList(1,2,3,4,5,12,31,32) , false); OrderApprovalTypeCheckEvent guanLianApprovalTypeCheckEvent = new OrderApprovalTypeCheckEvent(o.getOrderId(), null, null, Arrays.asList(6,11,13,14,22,23) , false);
applicationContext.publishEvent(guanLianApprovalTypeCheckEvent); applicationContext.publishEvent(guanLianApprovalTypeCheckEvent);
return guanLianApprovalTypeCheckEvent.getResult(); return guanLianApprovalTypeCheckEvent.getResult();
}).map(GuanLianOrderStatusVO::getOrderNo).collect(Collectors.joining(StrUtil.COMMA)); }).map(GuanLianOrderStatusVO::getOrderNo).collect(Collectors.joining(StrUtil.COMMA));
...@@ -782,7 +782,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM ...@@ -782,7 +782,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM
OrderDO orderDO, OrderDO orderDO,
List<Long> orderItemIdList) { List<Long> orderItemIdList) {
//订单校验是否在审核中 //订单校验是否在审核中
OrderApprovalTypeCheckEvent approvalTypeCheckEvent = new OrderApprovalTypeCheckEvent(orderDO.getOrderId(), null, null, Arrays.asList(1,2,3,4,5,12,31,32) , false); OrderApprovalTypeCheckEvent approvalTypeCheckEvent = new OrderApprovalTypeCheckEvent(orderDO.getOrderId(), null, null, Arrays.asList(6,11,13,14,22,23) , false);
applicationContext.publishEvent(approvalTypeCheckEvent); applicationContext.publishEvent(approvalTypeCheckEvent);
if (approvalTypeCheckEvent.getResult()) { if (approvalTypeCheckEvent.getResult()) {
throw exception(ORDER_IS_APPROVAL_IN_PROCESS); throw exception(ORDER_IS_APPROVAL_IN_PROCESS);
...@@ -794,7 +794,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM ...@@ -794,7 +794,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM
// List<GuanLianOrderStatusVO> approvalGuanLianOrderList = guanLianOrderStatusVOList.stream().filter(vo -> vo.getType() == 2).collect(Collectors.toList()); // List<GuanLianOrderStatusVO> approvalGuanLianOrderList = guanLianOrderStatusVOList.stream().filter(vo -> vo.getType() == 2).collect(Collectors.toList());
// if (CollectionUtil.isNotEmpty(approvalGuanLianOrderList)){ // if (CollectionUtil.isNotEmpty(approvalGuanLianOrderList)){
// String orderNoStr = approvalGuanLianOrderList.stream().filter(o -> { // String orderNoStr = approvalGuanLianOrderList.stream().filter(o -> {
// OrderApprovalTypeCheckEvent guanLianApprovalTypeCheckEvent = new OrderApprovalTypeCheckEvent(o.getOrderId(), null, null, Arrays.asList(1,2,3,4,5,12,31,32) , false); // OrderApprovalTypeCheckEvent guanLianApprovalTypeCheckEvent = new OrderApprovalTypeCheckEvent(o.getOrderId(), null, null, Arrays.asList(6,11,13,14,22,23) , false);
// applicationContext.publishEvent(guanLianApprovalTypeCheckEvent); // applicationContext.publishEvent(guanLianApprovalTypeCheckEvent);
// return guanLianApprovalTypeCheckEvent.getResult(); // return guanLianApprovalTypeCheckEvent.getResult();
// }).map(GuanLianOrderStatusVO::getOrderNo).collect(Collectors.joining(StrUtil.COMMA)); // }).map(GuanLianOrderStatusVO::getOrderNo).collect(Collectors.joining(StrUtil.COMMA));
...@@ -2300,7 +2300,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM ...@@ -2300,7 +2300,7 @@ public class BoxPreloadGoodsServiceImpl extends AbstractService<BoxPreloadGoodsM
OrderConsigneeDO filterConsigneeDO = getFilterOrderConsigneeDO(boxDO, loadList); OrderConsigneeDO filterConsigneeDO = getFilterOrderConsigneeDO(boxDO, loadList);
OrderDO orderDO = orderService.getById(orderId); OrderDO orderDO = orderService.getById(orderId);
OrderApprovalTypeCheckEvent approvalTypeCheckEvent = new OrderApprovalTypeCheckEvent(orderDO.getOrderId(), null, null, Arrays.asList(1,2,3,4,5,12,31,32) , false); OrderApprovalTypeCheckEvent approvalTypeCheckEvent = new OrderApprovalTypeCheckEvent(orderDO.getOrderId(), null, null, Arrays.asList(6,11,13,14,22,23) , false);
applicationContext.publishEvent(approvalTypeCheckEvent); applicationContext.publishEvent(approvalTypeCheckEvent);
if (approvalTypeCheckEvent.getResult()) { if (approvalTypeCheckEvent.getResult()) {
throw exception(ORDER_IS_APPROVAL_IN_PROCESS); throw exception(ORDER_IS_APPROVAL_IN_PROCESS);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment