feat(sip): 更新订单状态并集成待办服务- 引入TodoService用于处理流程相关操作

- 在撤单时更新版本号并设置订单状态为审批拒绝
- 删除与订单相关的待办事项
- 注释掉发货时不必要的版本号更新逻辑
dev_1.0.0
chenhao 2025-11-18 15:37:19 +08:00
parent f53b64264f
commit 52839e343c
2 changed files with 8 additions and 2 deletions

View File

@ -6,6 +6,7 @@ import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.sip.domain.*;
import com.ruoyi.sip.dto.inventory.ProductDetail;
import com.ruoyi.sip.dto.inventory.ProductWarehouseInfo;
import com.ruoyi.sip.flowable.service.TodoService;
import com.ruoyi.sip.mapper.InventoryDeliveryMapper;
import com.ruoyi.sip.mapper.ProjectOrderInfoMapper;
import com.ruoyi.sip.service.*;
@ -50,6 +51,8 @@ public class ExecutionTrackServiceImpl implements IExecutionTrackService {
private IInventoryAuthService inventoryAuthService;
@Autowired
private InventoryDeliveryMapper deliveryMapper;
@Autowired
private TodoService todoService;
@Override
public ExecutionOrderVo selectInfo(Long id) {
@ -240,9 +243,12 @@ public class ExecutionTrackServiceImpl implements IExecutionTrackService {
updateOrder.setOuterStatus(ProjectOrderInfo.OuterStatusEnum.NOT_OUTER.getCode());
updateOrder.setDeliveryStatus(ProjectOrderInfo.DeliveryStatusEnum.NOT_DELIVERY.getCode());
updateOrder.setSignStatus(ProjectOrderInfo.SignStatusEnum.NOT_SIGN.getCode());
//todo 撤单是否需要重新审批
updateOrder.setVersionCode(String.valueOf(Integer.parseInt(projectOrderInfo.getVersionCode())+1));
updateOrder.setOrderStatus(ProjectOrderInfo.OrderStatus.APPROVE_REJECT.getCode());
updateOrder.setId(id);
projectOrderInfoMapper.updateProjectOrderInfo(updateOrder);
//剔除流程
todoService.deleteTodoByBusinessKey(projectOrderInfo.getOrderCode());
//修改库存
InventoryOuter inventoryOuter = new InventoryOuter();
inventoryOuter.setOrderCode(projectOrderInfo.getOrderCode());

View File

@ -289,7 +289,7 @@ public class InventoryDeliveryServiceImpl implements IInventoryDeliveryService {
//修改订单的发货状态
ProjectOrderInfo updateOrder = new ProjectOrderInfo();
updateOrder.setOrderCode(inventoryDelivery.getOrderCode());
updateOrder.setVersionCode("add");
// updateOrder.setVersionCode("add");
updateOrder.setUpdateTime(new Date());
updateOrder.setUpdateBy(ShiroUtils.getUserId().toString());
updateOrder.setDeliveryStatus(sum == allSum ? ProjectOrderInfo.DeliveryStatusEnum.ALL_DELIVERY.getCode() : ProjectOrderInfo.DeliveryStatusEnum.PART_DELIVERY.getCode());