From d2b36a334c1a60b7b35e0eb3a9edd6988d49628d Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 19 七月 2025 15:34:15 +0800 Subject: [PATCH] no message --- rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java | 31 +++++++++++++++++++++++++------ 1 files changed, 25 insertions(+), 6 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java index e470f48..ac2cbd1 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java @@ -4,11 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.server.manager.entity.*; -import com.vincent.rsf.server.manager.enums.CheckDiffExceStatus; -import com.vincent.rsf.server.manager.enums.CheckExceStatus; -import com.vincent.rsf.server.manager.enums.TaskStsType; -import com.vincent.rsf.server.manager.enums.TaskType; +import com.vincent.rsf.server.manager.enums.*; import com.vincent.rsf.server.manager.service.*; +import com.vincent.rsf.server.manager.service.impl.LocServiceImpl; import com.vincent.rsf.server.system.utils.SystemAuthUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -40,6 +38,8 @@ private CheckOrderService checkOrderService; @Autowired private CheckOrderItemService checkOrderItemService; + @Autowired + private LocServiceImpl locService; /** * @author Ryan @@ -51,7 +51,7 @@ @Transactional(rollbackFor = Exception.class) public void genReCheck() { List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>() - .notExists("SELECT 1 FROM man_check_diff_item cdi WHERE id = cdi.task_item_id")); + .notExists("SELECT 1 FROM man_check_diff_item cdi WHERE id != cdi.task_item_id")); if (taskItems.isEmpty()) { return; } @@ -68,7 +68,7 @@ checkDiff.setAnfme(order.getAnfme()) .setCheckType(order.getCheckType()) .setOrderCode(order.getCode()) - .setExceStatus(CheckDiffExceStatus.CHECK_DIFF_EXCE_STATUS_ING.val) + .setExceStatus(CheckDiffExceStatus.CHECK_DIFF_EXCE_STATUS_INIT.val) .setCreateBy(loginUserId) .setCreateTime(new Date()) .setUpdateBy(loginUserId) @@ -83,6 +83,10 @@ List<CheckDiffItem> diffItems = new ArrayList<>(); CheckDiff finalCheckDiff = checkDiff; items.forEach(item -> { + Task task = taskService.getById(item.getTaskId()); + if (Objects.isNull(task)) { + throw new CoolException("鏁版嵁閿欒锛氫换鍔′笉瀛樺湪锛侊紒"); + } CheckDiffItem checkDiffItem = new CheckDiffItem(); BeanUtils.copyProperties(item, checkDiffItem); checkDiffItem.setCheckId(finalCheckDiff.getId()) @@ -90,10 +94,25 @@ .setTaskId(item.getTaskId()) .setCreateBy(loginUserId) .setCreateTime(new Date()) + .setBarcode(task.getBarcode()) .setUpdateBy(loginUserId) .setUpdateTime(new Date()) .setOrderCode(finalCheckDiff.getOrderCode()); diffItems.add(checkDiffItem); + + if (Objects.isNull(finalCheckDiff.getAreaId())) { + Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>() + .eq(Loc::getCode, task.getOrgLoc()) + .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_R.type)); + if (Objects.isNull(loc)) { + throw new CoolException("鐩樼偣搴撲綅涓嶅瓨鍦紒锛�"); + } + finalCheckDiff.setAreaId(loc.getAreaId()).setAreaName(loc.getAreaId$()); + + if (!checkDiffService.updateById(finalCheckDiff)) { + throw new CoolException("搴撳尯淇℃伅淇敼澶辫触锛侊紒"); + } + } }); if (!checkDiffItemService.saveBatch(diffItems)) { -- Gitblit v1.9.1