From e0b42ac6d0f0361233bf2190b149c6c63c4e2323 Mon Sep 17 00:00:00 2001 From: verou <857149855@qq.com> Date: 星期一, 31 三月 2025 15:50:25 +0800 Subject: [PATCH] Merge branch 'devlop' of http://47.97.1.152:5880/r/wms-master into devlop --- rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/QlyIsptStatus.java | 25 ++++++++ rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java | 14 +++- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java | 34 ++++++++--- rsf-server/src/main/java/com/vincent/rsf/server/system/utils/SerialRuleUtils.java | 3 rsf-admin/src/i18n/zh.js | 34 +++++++++++ rsf-admin/src/i18n/en.js | 34 +++++++++++ rsf-admin/src/page/ResourceContent.js | 10 ++- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/QlyInspectService.java | 4 8 files changed, 137 insertions(+), 21 deletions(-) diff --git a/rsf-admin/src/i18n/en.js b/rsf-admin/src/i18n/en.js index ac05407..ce79b97 100644 --- a/rsf-admin/src/i18n/en.js +++ b/rsf-admin/src/i18n/en.js @@ -153,6 +153,8 @@ deviceSite: 'deviceSite', waitPakin: 'WaitPakin', waitPakinItem: 'WaitPakinItem', + task: 'Task', + taskItem: 'TaskItem', }, table: { field: { @@ -663,6 +665,38 @@ qty: "qty", batch: "batch", }, + task: { + taskCode: "TaskCode", + taskStatus: "Status", + taskType: "Type", + orgLoc: "orgLoc", + orgSite: "orgSite", + targLoc: "targLoc", + targSite: "targSite", + barcode: "barcode", + robotCode: "robotCode", + exceStatus: "exceStatus", + expDesc: "expDesc", + sort: "sort", + expCode: "expCode", + startTime: "startTime", + endTime: "endTime", + }, + taskItem: { + taskId: "taskId", + orderId: "orderId", + orderType: "orderType", + orderItemId: "orderItemId", + sourceCode: "sourceCode", + matnrId: "matnrId", + maktx: "maktx", + matnrCode: "matnrCode", + unit: "unit", + anfme: "anfme", + batch: "batch", + spec: "spec", + model: "model", + }, } }, page: { diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js index 655f20e..8724e0b 100644 --- a/rsf-admin/src/i18n/zh.js +++ b/rsf-admin/src/i18n/zh.js @@ -155,6 +155,8 @@ waitPakinItem: '缁勬嫋妗f槑缁�', waitPakinLog: '缁勬嫋鍘嗗彶妗�', waitPakinItemLog: '缁勬嫋鍘嗗彶妗f槑缁�', + task: '浠诲姟宸ヤ綔妗�', + taskItem: '浠诲姟妗f槑缁�', }, table: { field: { @@ -672,6 +674,38 @@ qty: "宸插畬鎴�", batch: "鎵规", }, + task: { + taskCode: "浠诲姟鍙�", + taskStatus: "浠诲姟鐘舵��", + taskType: "浠诲姟绫诲瀷", + orgLoc: "婧愬簱浣�", + orgSite: "婧愮珯鐐�", + targLoc: "鐩爣搴撲綅", + targSite: "鐩爣绔欑偣", + barcode: "鎷栫洏鐮�", + robotCode: "鏈哄櫒缂栫爜", + exceStatus: "鎵ц鐘舵��", + expDesc: "寮傚父璇存槑", + sort: "浼樺厛绾�", + expCode: "寮傚父缂栫爜", + startTime: "寮�濮嬫椂闂�", + endTime: "缁撴潫鏃堕棿", + }, + taskItem: { + taskId: "taskId", + orderId: "璁㈠崟ID", + orderType: "鍗曟嵁绫诲瀷", + orderItemId: "璁㈠崟鏄庣粏ID", + sourceCode: "璁㈠崟鍙�", + matnrId: "鐗╂枡ID", + maktx: "鐗╂枡鍚嶇О", + matnrCode: "鐗╂枡缂栫爜", + unit: "鍗曚綅", + anfme: "鏁伴噺", + batch: "鎵规", + spec: "瑙勬牸", + model: "鍨嬪彿", + }, } }, page: { diff --git a/rsf-admin/src/page/ResourceContent.js b/rsf-admin/src/page/ResourceContent.js index 1b3287b..c966560 100644 --- a/rsf-admin/src/page/ResourceContent.js +++ b/rsf-admin/src/page/ResourceContent.js @@ -46,6 +46,9 @@ import waitPakinItemLog from './waitPakinItemLog'; import asnOrderLog from './asnOrderLog'; import asnOrderItemLog from './asnOrderItemLog'; +import task from './task'; +import taskItem from './taskItem'; + const ResourceContent = (node) => { switch (node.component) { @@ -133,9 +136,10 @@ return waitPakinLog; case 'waitPakinItemLog': return waitPakinItemLog; - - - + case 'task': + return task; + case 'taskItem': + return taskItem; default: return { diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java index 5bd9c60..b9427e9 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java @@ -59,21 +59,25 @@ return R.ok(qlyInspectService.listByAsn(map)); } - @GetMapping("/qlyInspect/asn/list") + @PostMapping("/qlyInspect/asn/list") @ApiOperation("鑾峰彇寰呰川妫�鍗�") @PreAuthorize("hasAuthority('manager:qlyInspect:list')") - public R getUnInspect() { - return R.ok(qlyInspectService.getUnInspect()); + public R getUnInspect(@RequestBody Map<String, Object> map) { + if (Objects.isNull(map)) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + return R.ok(qlyInspectService.getUnInspect(map)); } @PostMapping("/qlyInspect/selected") @ApiOperation("閫夋嫨璐ㄦ鍗曟嵁") @PreAuthorize("hasAuthority('manager:qlyInspect:update')") - public R selectedOrder(IsptOrderParam param) { + public R selectedOrder(@RequestBody IsptOrderParam param) { if (Objects.isNull(param)) { throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - return qlyInspectService.saveSelected(param); + Long loginUserId = getLoginUserId(); + return qlyInspectService.saveSelected(param, loginUserId); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/QlyIsptStatus.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/QlyIsptStatus.java new file mode 100644 index 0000000..d1ac3b8 --- /dev/null +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/QlyIsptStatus.java @@ -0,0 +1,25 @@ +package com.vincent.rsf.server.manager.enums; + +/** + * @author Ryan + * @version 1.0 + * @title QlyIsptStatus + * @description + * @create 2025/3/31 15:38 + */ +public enum QlyIsptStatus { + //璐ㄦ鐘舵�� + QLY_ISPT_STAS_ING("2", "璐ㄦ涓�"), + QLY_ISPT_STAS_DONE("1", "璐ㄦ瀹屾垚"), + QLY_ISPT_STAS_HOLD("0", "寰呰川妫�"), + QLY_ISPT_STAS_CLOSE("3", "鍏抽棴") + ; + + QlyIsptStatus(String val, String desc) { + this.val = val; + this.desc = desc; + } + + public String val; + public String desc; +} diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/QlyInspectService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/QlyInspectService.java index 5535166..74f09eb 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/QlyInspectService.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/QlyInspectService.java @@ -17,7 +17,7 @@ R allSave(QlyInspectAndItem params); - List<AsnOrder> getUnInspect(); + List<AsnOrder> getUnInspect(Map<String, Object> map); - R saveSelected(IsptOrderParam param); + R saveSelected(IsptOrderParam param, Long loginUserId); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java index 1348ba0..c64cd4a 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyInspectServiceImpl.java @@ -8,6 +8,7 @@ import com.vincent.rsf.server.manager.entity.AsnOrder; import com.vincent.rsf.server.manager.entity.AsnOrderItem; import com.vincent.rsf.server.manager.entity.QlyIsptItem; +import com.vincent.rsf.server.manager.enums.QlyIsptStatus; import com.vincent.rsf.server.manager.mapper.QlyInspectMapper; import com.vincent.rsf.server.manager.entity.QlyInspect; import com.vincent.rsf.server.manager.service.AsnOrderItemService; @@ -100,20 +101,30 @@ * @return * @time 2025/3/31 10:12 */ - @Override - public List<AsnOrder> getUnInspect() { - List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getStatus, 1).eq(AsnOrder::getNtyStatus, 0)); + public List<AsnOrder> getUnInspect(Map<String, Object> params) { + List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>() + .eq(AsnOrder::getStatus, 1) + .eq(!Objects.isNull(params.get("asnCode")), AsnOrder::getCode, !Objects.isNull(params.get("asnCode")) ? params.get("asnCode").toString() : "") + .eq(AsnOrder::getNtyStatus, 0)); return asnOrders; } + /** + * @author Ryan + * @description 淇濆瓨 + * @param + * @return + * @time 2025/3/31 14:54 + */ + @Override @Transactional(rollbackFor = Exception.class) - public R saveSelected(IsptOrderParam param) { + public R saveSelected(IsptOrderParam param, Long loginUserId) { if (Objects.isNull(param.getIds()) || param.getIds().isEmpty()) { throw new CoolException("鍗曟嵁ID涓嶈兘涓虹┖锛侊紒"); } - List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()).eq(AsnOrder::getNtyStatus, 1)); + List<AsnOrder> asnOrders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, param.getIds()).eq(AsnOrder::getNtyStatus, 0)); if (asnOrders.isEmpty()) { throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�"); } @@ -122,14 +133,18 @@ throw new CoolException("鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛�"); } Map<Long, List<AsnOrderItem>> listMap = orderItems.stream().collect(Collectors.groupingBy(AsnOrderItem::getAsnId)); - List<QlyInspect> qlyInspects = new ArrayList<>(); for (AsnOrder asnOrder : asnOrders) { QlyInspect inspect = new QlyInspect(); String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_INSPECT_CODE, null); if (StringUtils.isBlank(ruleCode)) { throw new CoolException("绛栫暐閿欒锛氳妫�鏌ョ瓥鐣ャ��" + SerialRuleCode.SYS_INSPECT_CODE + "銆嶆槸鍚﹁缃纭紒锛�"); } - inspect.setCode(ruleCode).setWkType(asnOrder.getWkType()).setAsnId(asnOrder.getId()).setCode(asnOrder.getCode()); + inspect.setCode(ruleCode) + .setWkType(asnOrder.getWkType()) + .setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_ING.val) + .setCreateBy(loginUserId) + .setAsnId(asnOrder.getId()) + .setAsnCode(asnOrder.getCode()); /**鑾峰彇鍗曟嵁鏄庣粏*/ List<AsnOrderItem> asnOrderItems = listMap.get(asnOrder.getId()); if (Objects.isNull(asnOrderItems) || asnOrderItems.isEmpty()) { @@ -146,16 +161,15 @@ QlyIsptItem isptItem = new QlyIsptItem(); BeanUtils.copyProperties(orderItem, isptItem); isptItem.setAsnItemId(orderItem.getId()) + .setIspectId(inspect.getId()) .setRcptQty(orderItem.getQty()) + .setCreateBy(loginUserId) .setDlyQty(orderItem.getAnfme()); items.add(isptItem); } if (!qlyIsptItemService.saveBatch(items)) { throw new CoolException("鏄庣粏淇濆瓨澶辫触锛侊紒"); } - } - if (!this.saveBatch(qlyInspects)) { - throw new CoolException("璐ㄦ鍗曚繚瀛樺け璐ワ紒锛�"); } return R.ok("淇濆瓨鎴愬姛锛侊紒"); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/system/utils/SerialRuleUtils.java b/rsf-server/src/main/java/com/vincent/rsf/server/system/utils/SerialRuleUtils.java index 9e977d0..5bbc861 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/system/utils/SerialRuleUtils.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/system/utils/SerialRuleUtils.java @@ -41,6 +41,7 @@ .getOne(new LambdaQueryWrapper<SerialRule>() .eq(SerialRule::getCode, code)); if (Objects.isNull(serialRule)) { + throw new CoolException("褰撳墠涓氬姟锛�" + code + "锛岀紪鐮佽鍒欎笉瀛樺湪锛侊紒"); } SerialRuleItemService serialRuleItemService = SpringUtils.getBean(SerialRuleItemService.class); @@ -112,7 +113,7 @@ if (Objects.isNull(start) || end == 0) { buffer.append(str); } else { - if (str.length() <= (end + start)) { + if (str.length() < (end + start)) { throw new CoolException("鎴彇瀛楃璧峰嚭瀛楃涓查暱搴︼紝璇锋煡鐪嬭鍒欒瀹氾紒锛�"); } //杩斿洖璧峰浣嶇疆lenStr寮�濮嬶紝缁堢偣浣嶇疆涓簂enStr + len闀垮害鐨勫瓧绗︿覆 -- Gitblit v1.9.1