Commit b0569e2ba52fbfc1d721dfb6bcc7a9be7b9a0db5

Authored by 谭毅彬
1 parent abfe8e59

更新库存表状态事务修复,取消任务事务修复

Signed-off-by: TanYibin <5491541@qq.com>
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
... ... @@ -832,31 +832,21 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
832 832 if (taskHeader.getStatus().equals(QuantityConstant.TASK_STATUS_COMPLETED)) {
833 833 return Result.ok("任务(" + taskId + ")任务已经是完成的!");
834 834 }
835   - if (taskHeader.getStatus().intValue() > QuantityConstant.TASK_STATUS_BUILD) {
836   - Result result = wcsService.cancelWcsTask(taskHeader);
837   - if (!result.isSuccess()) {
838   - return result;
839   - }
840   - }
841   - int taskType = taskHeader.getTaskType().intValue();
842   - int preTaskNo = taskId;
843   - String warehouseCode = taskHeader.getWarehouseCode();
844   - TaskHeader preTaskHeader = getUnCompleteTaskByPreTaskNo(preTaskNo, warehouseCode);
  835 + TaskHeader preTaskHeader = getUnCompleteTaskByPreTaskNo(taskId, taskHeader.getWarehouseCode());
845 836 if (preTaskHeader != null) {
846 837 return Result.error("取消任务失败,有前置任务" + preTaskHeader.getId());
847 838 }
848   - boolean success = taskHeaderService.removeById(taskId);
849   - if (!success) {
850   - return Result.error("取消任务失败, 删除任务失败");
  839 + if (!taskHeaderService.removeById(taskId)) {
  840 + throw new JeecgBootException("取消任务失败, 删除任务失败");
851 841 }
852 842 List<TaskDetail> taskDetailList = taskDetailService.getTaskDetailListByTaskId(taskId);
853 843 if (taskDetailList.size() > 0) {
854 844 List<Integer> taskDetailIdList = taskDetailList.stream().map(TaskDetail::getId).collect(Collectors.toList());
855   - success = taskDetailService.removeByIds(taskDetailIdList);
856   - if (!success) {
857   - return Result.error("取消任务失败, 删除任务详情失败");
  845 + if (!taskDetailService.removeByIds(taskDetailIdList)) {
  846 + throw new JeecgBootException("取消任务失败, 删除任务详情失败");
858 847 }
859 848 }
  849 + int taskType = taskHeader.getTaskType().intValue();
860 850 Result result = Result.ok("取消任务成功");
861 851 switch (taskType) {
862 852 case QuantityConstant.TASK_TYPE_WHOLERECEIPT:
... ... @@ -869,6 +859,12 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
869 859 break;
870 860 }
871 861 taskHeaderService.cancelLocationAndContainerStatus(taskHeader);
  862 + if (taskHeader.getStatus().intValue() > QuantityConstant.TASK_STATUS_BUILD) {
  863 + result = wcsService.cancelWcsTask(taskHeader);
  864 + if (!result.isSuccess()) {
  865 + throw new JeecgBootException(result.getMessage());
  866 + }
  867 + }
872 868 log.info("完成取消任务" + taskHeader.getId());
873 869 return result;
874 870 }
... ...