From 42723be1452bfb3e132dff36fd46d2999c095f14 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期二, 22 七月 2025 20:15:04 +0800 Subject: [PATCH] no message --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java | 304 ++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 243 insertions(+), 61 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java index 9ad72a4..1365f70 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java @@ -33,6 +33,7 @@ import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; @Service("taskService") public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService { @@ -79,6 +80,18 @@ private LocItemWorkingService locItemWorkingService; @Autowired private WcsService wcsService; + @Autowired + private OutStockService outStockService; + @Autowired + private OutStockItemService outStockItemService; + @Autowired + private CheckOrderItemService checkOrderItemService; + @Autowired + private CheckOrderService checkOrderService; + @Autowired + private CheckDiffService checkDiffService; + @Autowired + private CheckDiffItemService checkDiffItemService; @Override @Transactional(rollbackFor = Exception.class) @@ -306,6 +319,7 @@ task.setTaskCode(ruleCode) .setTaskStatus(TaskStsType.GENERATE_IN.id) .setTaskType(TaskType.TASK_TYPE_IN.type) + .setResource(TaskResouceType.TASK_RESOUCE_PAKIN_TYPE.val) .setTargLoc(targetLoc) .setBarcode(pakin.getBarcode()) .setOrgSite(deviceSite.getSite()) @@ -451,7 +465,7 @@ .in(Task::getTaskStatus, longs)); if (Objects.isNull(task)) { - throw new CoolException("褰撳墠浠诲姟姝e湪鎵ц涓紝涓嶅彲鍙栨秷锛侊紒"); + throw new CoolException("鏁版嵁閿欒锛氬綋鍓嶄换鍔′笉鍙墽琛屽畬缁撴搷浣滐紒锛�"); } modiftyTaskSort(task, loginUserId); @@ -459,7 +473,7 @@ // if (task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) { // task.setTaskStatus(TaskStsType.COMPLETE_OUT.id); // } else { - task.setTaskStatus(task.getTaskType() < 100 ? TaskStsType.COMPLETE_IN.id : TaskStsType.COMPLETE_OUT.id); + task.setTaskStatus(task.getTaskType() < 100 ? TaskStsType.COMPLETE_IN.id : TaskStsType.AWAIT.id); // } if (!this.updateById(task)) { throw new CoolException("瀹屾垚浠诲姟澶辫触"); @@ -519,6 +533,7 @@ /** * 浠诲姟瀹屾垚鍚庯紝鍒ゆ柇娣卞簱浣嶆槸鍚︿负绌猴紝濡傛灉涓虹┖鐢熸垚绉诲簱浠诲姟 + * * @param loginUserId * @param curLoc */ @@ -669,13 +684,13 @@ if (taskItems.isEmpty()) { throw new CoolException("浠诲姟鏄庣粏涓嶅瓨鍦紒锛�"); } + List<LocItem> items = new ArrayList<>(); for (TaskItem taskItem : taskItems) { LocItem locItem = new LocItem(); LocItemWorking locWorking = locItemWorkingService.getOne(new LambdaQueryWrapper<LocItemWorking>() .eq(LocItemWorking::getTaskId, taskItem.getTaskId()) .eq(StringUtils.isNotBlank(taskItem.getBatch()), LocItemWorking::getBatch, taskItem.getBatch()) - .eq(StringUtils.isNotBlank(taskItem.getFieldsIndex()), LocItemWorking::getFieldsIndex, taskItem.getFieldsIndex()) .eq(LocItemWorking::getMatnrId, taskItem.getMatnrId())); if (Objects.isNull(locWorking)) { throw new CoolException("鏁版嵁閿欒锛屼綔涓氫腑搴撳瓨鏁版嵁涓㈠け锛侊紒"); @@ -723,7 +738,8 @@ TaskType.TASK_TYPE_EMPITY_OUT.type, TaskType.TASK_TYPE_MERGE_OUT.type); List<Task> tasks = this.list(new LambdaQueryWrapper<Task>() .in(Task::getTaskType, list) - .in(Task::getId, ids).in(Task::getTaskStatus, longs)); + .in(Task::getId, ids) + .in(Task::getTaskStatus, longs)); if (tasks.isEmpty()) { throw new CoolException("浠诲姟宸插鎵ц鐘舵�佷笉鍙彇娑堬紒锛�"); } @@ -735,7 +751,9 @@ .set(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_F.type))) { throw new CoolException("婧愬簱浣嶇姸鎬佷慨鏀瑰け璐ワ紒锛�"); } - if (!locService.update(new LambdaUpdateWrapper<Loc>().eq(Loc::getCode, task.getTargLoc()).set(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type))) { + if (!locService.update(new LambdaUpdateWrapper<Loc>() + .eq(Loc::getCode, task.getTargLoc()) + .set(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type))) { throw new CoolException("绉诲簱鐩爣搴撲綅鐘舵�佷慨鏀瑰け璐ワ紒锛�"); } @@ -753,8 +771,40 @@ if (!this.updateById(outTask)) { throw new CoolException("浠诲姟淇℃伅淇敼澶辫触锛侊紒"); } - } else { -// throw new CoolException("鏃犳硶鐢熸垚鏂扮殑绉诲簱浠诲姟锛屽彇娑堝け璐ワ紒锛�"); + } + } else if (task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type)) { + List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().in(TaskItem::getTaskId, Arrays.asList(ids))); + if (!taskItems.isEmpty()) { + + taskItems.forEach(taskItem -> { + if (!checkOrderItemService.update(new LambdaUpdateWrapper<WkOrderItem>() + .eq(WkOrderItem::getId, taskItem.getOrderItemId()) + .setSql("work_qty = work_qty - " + taskItem.getAnfme()))) { + throw new CoolException("鏄庣粏鏁伴噺淇敼澶辫触锛侊紒"); + } + + if (!checkOrderService.update(new LambdaUpdateWrapper<WkOrder>() + .eq(WkOrder::getId, taskItem.getOrderId()) + .setSql("work_qty = work_qty - " + taskItem.getAnfme()))) { + throw new CoolException("鐩樼偣鍗曟墽琛屾暟閲忎慨鏀瑰け璐ワ紒锛�"); + } + + CheckDiffItem serviceOne = checkDiffItemService.getOne(new LambdaQueryWrapper<CheckDiffItem>().eq(CheckDiffItem::getTaskItemId, taskItem.getId())); + + checkDiffItemService.remove(new LambdaQueryWrapper<CheckDiffItem>().eq(CheckDiffItem::getTaskItemId, taskItem.getId())); + if (!Objects.isNull(serviceOne)) { + CheckDiff checkDiff = checkDiffService.getById(serviceOne.getCheckId()); + if (!Objects.isNull(checkDiff)) { + checkDiffService.removeById(checkDiff.getId()); + } + } + }); + } + + if (!locService.update(new LambdaUpdateWrapper<Loc>() + .eq(Loc::getCode, task.getOrgLoc()) + .set(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_F.type))) { + throw new CoolException("婧愬簱浣嶇姸鎬佷慨鏀瑰け璐ワ紒锛�"); } } @@ -763,8 +813,7 @@ if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_IN.type)) { basStation = basStationService.getOne(new LambdaQueryWrapper<BasStation>() .eq(BasStation::getStationName, task.getOrgSite()) - .eq(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_R.type) - ); + .eq(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_R.type)); } else if (task.getTaskType().equals(TaskType.TASK_TYPE_OUT.type) || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type) || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_OUT.type) @@ -786,18 +835,70 @@ List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId())); if (!taskItems.isEmpty()) { for (TaskItem item : taskItems) { - if (item.getOrderType().equals(OrderType.ORDER_OUT.type)) { + if (!Objects.isNull(item.getOrderType()) && item.getOrderType().equals(OrderType.ORDER_OUT.type)) { + Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, task.getOrgLoc())); + if (Objects.isNull(loc)) { + throw new CoolException("鏁版嵁閿欒锛氬簱浣嶄俊鎭笉瀛樺湪锛侊紒"); + } + loc.setUseStatus(LocStsType.LOC_STS_TYPE_F.type) + .setBarcode(task.getBarcode()) + .setUpdateBy(loginUserId) + .setUpdateTime(new Date()); + if (!locService.updateById(loc)) { + throw new CoolException("搴撲綅淇℃伅淇敼澶辫触锛侊紒"); + } //鍑哄簱 if (item.getWkType().equals(Short.parseShort(OrderWorkType.ORDER_WORK_TYPE_STOCK_OUT.type))) { //搴撳瓨鍑哄簱 - Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getId, item.getSourceId())); - if (Objects.isNull(loc)) { - throw new CoolException("鏁版嵁閿欒锛氬簱浣嶄俊鎭笉瀛樺湪锛侊紒"); + } else if (task.getResource().equals(TaskResouceType.TASK_RESOUCE_WAVE_TYPE.val)) { + WaveItem waveItem = waveItemService.getById(item.getSource()); + if (Objects.isNull(waveItem)) { + throw new CoolException("娉㈡鏄庣粏涓嶅瓨鍦紒锛�"); + } + Double workQty = Math.round((waveItem.getWorkQty() - item.getAnfme()) * 10000) / 10000.0; + waveItem.setWorkQty(workQty).setExceStatus(WaveItemExceStatus.WAVE_ITEM_EXCE_STATUS_UN.val); + if (!waveItemService.updateById(waveItem)) { + throw new CoolException("娉㈡鏄庣粏鏇存柊澶辫触锛侊紒"); } - loc.setUseStatus(LocStsType.LOC_STS_TYPE_F.type).setBarcode(task.getBarcode()).setUpdateBy(loginUserId).setUpdateTime(new Date()); - if (!locService.updateById(loc)) { - throw new CoolException("搴撲綅淇℃伅淇敼澶辫触锛侊紒"); + Wave wave = waveService.getOne(new LambdaQueryWrapper<Wave>().eq(Wave::getId, waveItem.getWaveId())); + if (Objects.isNull(wave)) { + throw new CoolException("娉㈡淇℃伅涓嶅瓨鍦紒锛�"); + } + wave.setExceStatus(WaveExceStatus.WAVE_EXCE_STATUS_INIT.val).setWorkQty(0.0).setQty(0.0); + if (!waveService.updateById(wave)) { + throw new CoolException("娉㈡鏇存柊澶辫触锛侊紒"); + } + + } else if (item.getWkType().equals(Short.parseShort(OrderWorkType.ORDER_WORK_TYPE_OTHER.type))) { + //鍏跺畠鍑哄簱 + + } else { + //鍑哄簱鍗曞嚭搴� + WkOrder wkOrder = outStockService.getById(item.getSourceId()); + if (Objects.isNull(wkOrder)) { + throw new CoolException("鏁版嵁閿欒锛氬崟鎹凡涓嶅瓨鍦紒锛�"); + } + Double workQty = Math.round((wkOrder.getWorkQty() - item.getAnfme()) * 10000) / 10000.0; + + wkOrder.setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_INIT.val) + .setWorkQty(workQty.compareTo(0.00) > 0 ? workQty : 0.00) + .setUpdateBy(loginUserId) + .setUpdateTime(new Date()); + if (!outStockService.updateById(wkOrder)) { + throw new CoolException("鍘熷崟鎹姸鎬佷慨鏀瑰け璐ワ紒锛�"); + } + + WkOrderItem orderItem = outStockItemService.getById(item.getSource()); + if (Objects.isNull(orderItem)) { + throw new CoolException("鏁版嵁閿欒锛氬崟鎹槑缁嗗凡涓嶅瓨鍦紒锛�"); + } + + Double workItmQty = Math.round((orderItem.getWorkQty() - item.getAnfme()) * 10000) / 10000.0; + orderItem.setWorkQty(workItmQty); + + if (!outStockItemService.updateById(orderItem)) { + throw new CoolException("鍘熷崟鎹槑缁嗕慨鏀瑰け璐ワ紒锛�"); } } } else { @@ -813,7 +914,8 @@ } Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, task.getTaskType() < TaskStsType.UPDATED_IN.id ? task.getTargLoc() : task.getOrgLoc())); - if (null != loc && (loc.getUseStatus().equals(LocStsType.LOC_STS_TYPE_S.type) || loc.getUseStatus().equals(LocStsType.LOC_STS_TYPE_R.type))) { + if (null != loc && (loc.getUseStatus().equals(LocStsType.LOC_STS_TYPE_S.type) + || loc.getUseStatus().equals(LocStsType.LOC_STS_TYPE_R.type))) { loc.setUseStatus(LocStsType.LOC_STS_TYPE_O.type); if (!locService.updateById(loc)) { throw new CoolException("鏇存柊搴撲綅鐘舵�佸け璐ワ紒锛�"); @@ -889,46 +991,84 @@ if (!this.updateById(task)) { throw new CoolException("浠诲姟鐘舵�佹洿鏂板け璐ワ紒锛�"); } - + //鑾峰彇鍥犲綋鍓嶄换鍔″嚭搴撶殑鎵�鏈夌墿鏂欎俊鎭� + List<LocItemWorking> tempLocs = locItemWorkingService.list(new LambdaQueryWrapper<LocItemWorking>().eq(LocItemWorking::getTaskId, task.getId())); + if (tempLocs.isEmpty()) { + throw new CoolException("鏁版嵁閿欒锛屼綔涓氫腑搴撳瓨鏁版嵁涓㈠け锛侊紒"); + } List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId())); - for (int i = 0; i < taskItems.size(); i++) { - TaskItem taskItem = taskItems.get(i); - LocItemWorking locWorking = locItemWorkingService.getOne(new LambdaQueryWrapper<LocItemWorking>() - .eq(LocItemWorking::getTaskId, taskItem.getTaskId()) - .eq(StringUtils.isNotBlank(taskItem.getBatch()), LocItemWorking::getBatch, taskItem.getBatch()) - .eq(StringUtils.isNotBlank(taskItem.getFieldsIndex()), LocItemWorking::getFieldsIndex, taskItem.getFieldsIndex()) - .eq(LocItemWorking::getMatnrId, taskItem.getMatnrId())); - if (Objects.isNull(locWorking)) { - throw new CoolException("鏁版嵁閿欒锛屼綔涓氫腑搴撳瓨鏁版嵁涓㈠け锛侊紒"); - } - if (task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) { - locWorking.setWorkQty(0.0); - locWorking.setAnfme(taskItem.getAnfme()); - } else { - if (locWorking.getAnfme().compareTo(taskItem.getAnfme()) >= 0) { - locWorking.setWorkQty(0.0); - locWorking.setAnfme(Math.round((locWorking.getAnfme() - taskItem.getAnfme()) * 10000) / 10000.0); - } else { - continue; + if (taskItems.isEmpty()) { + throw new CoolException("鏁版嵁閿欒锛氫换鍔℃槑缁嗕负绌猴紒锛�"); + } + + tempLocs.forEach(working -> { + taskItems.forEach(taskItem -> { + if (taskItem.getMatnrId().equals(working.getMatnrId())) { + Double minQty = taskItem.getAnfme(); + if (!task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) { + minQty = Math.round((working.getAnfme() - taskItem.getAnfme()) * 10000) / 10000.0; + } + if (minQty.compareTo(0.0) > 0) { + taskItem.setAnfme(minQty); + if (!taskItemService.updateById(taskItem)) { + throw new CoolException("浠诲姟鏄庣粏淇敼澶辫触锛侊紒"); + } + } else { + if (!taskItemService.removeById(taskItem)) { + throw new CoolException("浠诲姟鏄庣粏淇敼澶辫触锛侊紒"); + } + } } - } - if (!locItemWorkingService.updateById(locWorking)) { - throw new CoolException("涓存椂搴撳瓨鏇存柊澶辫触锛侊紒"); - } - taskItems.get(i).setAnfme(locWorking.getAnfme()); - } - if (!taskItemService.updateBatchById(taskItems)) { - throw new CoolException("浠诲姟鏄庣粏鏇存柊澶辫触锛侊紒"); - } - Loc one = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, task.getTargLoc())); - if (Objects.isNull(one)) { + }); + }); + List<Long> matnrIds = taskItems.stream().map(TaskItem::getMatnrId).collect(Collectors.toList()); + //鍒犻櫎涓庝换鍔℃槑缁嗛噸澶嶇殑搴撳瓨淇℃伅锛屼互浠诲姟鏄庣粏涓哄噯 + List<LocItemWorking> itemWorkings = tempLocs.stream() + .filter(working -> !matnrIds.contains(working.getMatnrId())) + .collect(Collectors.toList()); + itemWorkings.forEach(working -> { + TaskItem taskItem = taskItems.stream().findFirst().get(); + taskItem.setMatnrId(working.getMatnrId()) + .setMaktx(working.getMaktx()) + .setMatnrId(working.getMatnrId()) + .setMatnrCode(working.getMatnrCode()) + .setSpec(working.getSpec()) + .setAnfme(working.getAnfme()) + .setBatch(working.getBatch()) + .setFieldsIndex(working.getFieldsIndex()) + .setUnit(working.getUnit()) + .setId(null) + .setModel(working.getModel()); + + if (!taskItemService.saveOrUpdate(taskItem)) { + throw new CoolException("涓存椂搴撳瓨杞换鍔℃槑缁嗗け璐ワ紒锛�"); + } + }); + + locItemWorkingService.remove(new LambdaQueryWrapper<LocItemWorking>().eq(LocItemWorking::getTaskId, task.getId())); + Loc loc1 = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, task.getTargLoc())); + if (Objects.isNull(loc1)) { throw new CoolException("鐩爣搴撲綅涓嶅瓨鍦紒锛�"); } - one.setUseStatus(LocStsType.LOC_STS_TYPE_S.type); - if (!locService.updateById(one)) { + List<LocItemWorking> workings = new ArrayList<>(); + List<TaskItem> items = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId())); + items.forEach(taskItem -> { + LocItemWorking itemWorking = new LocItemWorking(); + BeanUtils.copyProperties(taskItem, itemWorking); + itemWorking.setTaskId(task.getId()).setLocId(loc1.getId()).setLocCode(loc1.getCode()); + workings.add(itemWorking); + }); + + if (!locItemWorkingService.saveBatch(workings)) { + throw new CoolException("涓存椂搴撳瓨鏇存柊澶辫触锛侊紒"); + } + + loc1.setUseStatus(LocStsType.LOC_STS_TYPE_S.type); + + if (!locService.updateById(loc1)) { throw new CoolException("搴撲綅棰勭害鍏ュ簱澶辫触锛侊紒"); } return task; @@ -998,19 +1138,39 @@ if (Objects.isNull(list) || list.isEmpty()) { Map<Long, List<TaskItem>> maps = taskItems.stream().collect(Collectors.groupingBy(TaskItem::getSource)); maps.keySet().forEach(key -> { - WaveItem waveItem = waveItemService.getById(key); - if (Objects.isNull(waveItem)) { - throw new CoolException("娉㈡鏄庣粏涓嶅瓨鍦紒锛�"); - } - try { - saveOutStockItem(maps.get(key), waveItem, loginUserId); - } catch (Exception e) { - throw new CoolException(e.getMessage()); + if (task.getResource().equals(TaskResouceType.TASK_RESOUCE_WAVE_TYPE.val)) { + WaveItem waveItem = waveItemService.getById(key); + if (Objects.isNull(waveItem)) { + throw new CoolException("娉㈡鏄庣粏涓嶅瓨鍦紒锛�"); + } + try { + saveOutStockItem(maps.get(key), null, waveItem, null, loginUserId); + } catch (Exception e) { + throw new CoolException(e.getMessage()); + } + } else if (task.getResource().equals(TaskResouceType.TASK_RESOUCE_ORDER_TYPE.val) || task.getResource().equals(TaskResouceType.TASK_RESOUCE_CHECK_TYPE.val)) { + WkOrderItem orderItem = new WkOrderItem(); + if (task.getResource().equals(TaskResouceType.TASK_RESOUCE_CHECK_TYPE.val)) { + CheckDiffItem diffItem = checkDiffItemService.getById(key); + } else { + orderItem = asnOrderItemService.getById(key); + + } + if (Objects.isNull(orderItem)) { + throw new CoolException("鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛�"); + } + try { + saveOutStockItem(maps.get(key), orderItem, null, null, loginUserId); + } catch (Exception e) { + throw new CoolException(e.getMessage()); + } + } else { + } }); } else { try { - saveOutStockItem(taskItems, null, loginUserId); + saveOutStockItem(taskItems, null, null, null, loginUserId); } catch (Exception e) { throw new CoolException(e.getMessage()); } @@ -1057,7 +1217,22 @@ * @version 1.0 */ @Transactional(rollbackFor = Exception.class) - public void saveOutStockItem(List<TaskItem> taskItems, WaveItem waveItem, Long loginUserId) throws Exception { + public void saveOutStockItem(List<TaskItem> taskItems, CheckDiffItem diffItem, Long loginUserId) { + try { + saveOutStockItem(taskItems, null, null, diffItem, loginUserId); + } catch (Exception e) { + throw new CoolException(e); + } + } + + /** + * @author Ryan + * @date 2025/5/20 + * @description: 鍑哄簱淇℃伅淇濆瓨鑷冲簱瀛樻槑缁嗚〃 + * @version 1.0 + */ + @Transactional(rollbackFor = Exception.class) + public void saveOutStockItem(List<TaskItem> taskItems, WkOrderItem orderItem, WaveItem waveItem, CheckDiffItem diffItem, Long loginUserId) throws Exception { Stock stock = new Stock(); String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_STOCK_CODE, null); if (StringUtils.isBlank(ruleCode)) { @@ -1070,8 +1245,15 @@ .setAnfme(sum); if (Objects.isNull(waveItem)) { stock.setWkType(Short.parseShort(OrderWorkType.ORDER_WORK_TYPE_STOCK_OUT.type)) - .setMemo("鍑哄簱鍗曞嚭搴擄紝鏃犲崟鎹俊鎭紒锛�") + .setMemo("搴撳瓨鍑哄簱锛屾棤鍗曟嵁淇℃伅锛侊紒") .setType(OrderType.ORDER_OUT.type); + } else if (!Objects.isNull(orderItem) && StringUtils.isNotBlank(orderItem.getId() + "")) { + WkOrder wkOrder = asnOrderService.getById(orderItem.getOrderId()); + stock.setWkType(Short.parseShort(wkOrder.getWkType())) + .setType(OrderType.ORDER_OUT.type); + } else if (!Objects.isNull(diffItem)) { + stock.setWkType(Short.parseShort(OrderWorkType.ORDER_WORK_TYPE_STOCK_CHECK.type)) + .setType(OrderType.ORDER_CHECK.type); } else { //TODO 鐢熸垚娉㈡鏃堕渶瑕佸皢娉㈡鍙峰啓鍏ュ崟鎹紝閫氳繃鐗╂枡锛屾壒娆★紝鍔ㄦ�佸瓧娈电瓑鍞竴鍊煎弽鏌ュ崟鎹俊鎭� stock.setSourceId(waveItem.getId()).setType(OrderType.ORDER_OUT.type); -- Gitblit v1.9.1