From f9669110ecdcb722f6f22e6e24e6851aa6e1460d Mon Sep 17 00:00:00 2001 From: liuxy Date: Tue, 19 Jul 2022 10:24:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../st/rest/MaterialsafeivtController.java | 17 ++ .../st/service/MaterialsafeivtService.java | 8 + .../impl/MaterialsafeivtServiceImpl.java | 54 ++++ .../basedata/st/wql/QST_IVT_MATERIALSAFE.wql | 41 +++ .../api/wms/basedata/st/materialsafeivt.js | 10 +- .../views/wms/basedata/em/bjsafeivt/index.vue | 233 ++++++++++++++++++ 6 files changed, 362 insertions(+), 1 deletion(-) create mode 100644 mes/qd/src/views/wms/basedata/em/bjsafeivt/index.vue diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/MaterialsafeivtController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/MaterialsafeivtController.java index bcb1278a..b2777752 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/MaterialsafeivtController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/rest/MaterialsafeivtController.java @@ -37,6 +37,14 @@ public class MaterialsafeivtController { return new ResponseEntity<>(materialsafeivtService.queryAll(whereJson,page),HttpStatus.OK); } + @GetMapping("/bjsafeivt") + @Log("查询备件安全库存") + @ApiOperation("查询备件安全库存") + //@PreAuthorize("@el.check('materialsafeivt:list')") + public ResponseEntity bjsafeivt(@RequestParam Map whereJson, Pageable page){ + return new ResponseEntity<>(materialsafeivtService.bjsafeivt(whereJson,page),HttpStatus.OK); + } + @PostMapping @Log("新增安全库存") @ApiOperation("新增安全库存") @@ -72,4 +80,13 @@ public class MaterialsafeivtController { materialsafeivtService.insertSafe(whereJson); return new ResponseEntity<>(HttpStatus.CREATED); } + + @PostMapping("/insertSafeBj") + @Log("插入备件安全库存") + @ApiOperation("插入备件安全库存") + //@PreAuthorize("@el.check('structrelamaterial:edit')") + public ResponseEntity insertSafeBj(@RequestBody Map whereJson){ + materialsafeivtService.insertSafeBj(whereJson); + return new ResponseEntity<>(HttpStatus.CREATED); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/MaterialsafeivtService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/MaterialsafeivtService.java index b0059521..798aeab2 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/MaterialsafeivtService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/MaterialsafeivtService.java @@ -65,5 +65,13 @@ public interface MaterialsafeivtService { void deleteAll(Long[] ids); void insertSafe(Map whereJson); + void insertSafeBj(Map whereJson); + /** + * 查询数据分页 + * @param whereJson 条件 + * @param page 分页参数 + * @return Map + */ + Map bjsafeivt(Map whereJson, Pageable page); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/MaterialsafeivtServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/MaterialsafeivtServiceImpl.java index 742efe36..4f48aa65 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/MaterialsafeivtServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/service/impl/MaterialsafeivtServiceImpl.java @@ -94,6 +94,60 @@ public class MaterialsafeivtServiceImpl implements MaterialsafeivtService { } } + @Override + public void insertSafeBj(Map whereJson) { + Long currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getNickName(); + String now = DateUtil.now(); + String stor_id = (String) whereJson.get("stor_id"); + ArrayList rows = (ArrayList) whereJson.get("rows"); + for (int i = 0; i < rows.size(); i++) { + HashMap row = rows.get(i); + WQLObject.getWQLObject("ST_IVT_MaterialSafeIvt").delete("stor_id = '" + stor_id + "' AND material_id = '" + row.get("material_id") + "'"); + JSONObject jo = new JSONObject(); + jo.put("stor_id", stor_id); + jo.put("safe_ivt_down", row.get("safe_ivt_down")); + jo.put("material_id", row.get("material_id")); + jo.put("safe_ivt_up", row.get("safe_ivt_up")); + jo.put("qty_unit_id", row.get("qty_unit_id")); + jo.put("qty_unit_name", row.get("qty_unit_name")); + jo.put("set_id", currentUserId + ""); + jo.put("set_name", nickName); + jo.put("set_time", now); + WQLObject.getWQLObject("ST_IVT_MaterialSafeIvt").insert(jo); + } + } + + @Override + public Map bjsafeivt(Map whereJson, Pageable page) { + String search = (String) whereJson.get("search"); + String class_idStr = (String) whereJson.get("class_idStr"); + HashMap map = new HashMap<>(); + if (!StrUtil.isEmpty(search)) { + //处理转义字符 + if (search.contains("\\")) search = search.replace("\\", "\\\\\\"); + map.put("search", "%" + search + "%"); + } + String material_type_id = (String) whereJson.get("material_type_id"); + //处理物料当前节点的所有子节点 + if (!StrUtil.isEmpty(material_type_id)) { + map.put("material_type_id", material_type_id); + String classIds = classstandardService.getChildIdStr(material_type_id); + map.put("classIds", classIds); + } else if (ObjectUtil.isNotEmpty(class_idStr)) { + String classIds = classstandardService.getAllChildIdStr(class_idStr); + map.put("classIds", classIds); + } else { + String classIds = classstandardService.getAllChildIdStr(MaterOptTypeEnum.SPARE.getClass_idStr()); + map.put("classIds", classIds); + } + + map.put("flag", "2"); + map.put("stor_id", MapUtil.getStr(whereJson, "stor_id")); + JSONObject jo = WQL.getWO("QST_IVT_MATERIALSAFE").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "set_time desc"); + return jo; + } + @Override public List queryAll(Map whereJson) { WQLObject wo = WQLObject.getWQLObject("st_ivt_materialsafeivt"); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_IVT_MATERIALSAFE.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_IVT_MATERIALSAFE.wql index 0dd25798..4bd003ef 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_IVT_MATERIALSAFE.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_IVT_MATERIALSAFE.wql @@ -81,5 +81,46 @@ ENDPAGEQUERY ENDIF + IF 输入.flag = "2" + PAGEQUERY + SELECT + (case when stor.stor_id is null THEN '' else stor.stor_id end) AS stor_id, + (case when stor.stor_code is null then 'bjk01' else stor.stor_code end) stor_code, + (case when stor.stor_name is null then '备件库' else stor.stor_name end) stor_name, + (case when safe.safe_ivt_down is null then 0 else safe.safe_ivt_down end) safe_ivt_down, + (case when safe.safe_ivt_up is null then 999999 else safe.safe_ivt_up end) safe_ivt_up, + mb.material_code, + mb.material_name, + mb.base_unit_id, + mb.material_id, + mb.base_unit_id AS qty_unit_id, + safe.set_name, + safe.set_time, + unit.unit_name AS qty_unit_name + FROM + md_me_materialbase mb + LEFT JOIN st_ivt_materialsafeivt safe ON safe.material_id = mb.material_id + LEFT JOIN st_ivt_bsrealstorattr stor ON stor.stor_id = safe.stor_id + LEFT JOIN md_pb_measureunit unit ON unit.measure_unit_id = mb.base_unit_id + LEFT JOIN md_pb_classstandard class ON class.class_id =mb.material_type_id + WHERE + 1=1 + OPTION 输入.classIds <> "" + mb.material_type_id in 输入.classIds + ENDOPTION + OPTION 输入.stor_id <> "" + stor.stor_id = 输入.stor_id + ENDOPTION + OPTION 输入.search <> "" + ( + mb.material_code like 输入.search + OR + mb.material_name like 输入.search + ) + ENDOPTION + ENDSELECT + ENDPAGEQUERY + ENDIF + diff --git a/mes/qd/src/api/wms/basedata/st/materialsafeivt.js b/mes/qd/src/api/wms/basedata/st/materialsafeivt.js index 1b85d22a..47f13d80 100644 --- a/mes/qd/src/api/wms/basedata/st/materialsafeivt.js +++ b/mes/qd/src/api/wms/basedata/st/materialsafeivt.js @@ -32,4 +32,12 @@ export function insertSafe(data) { }) } -export default { add, edit, del, insertSafe } +export function insertSafeBj(data) { + return request({ + url: 'api/materialsafeivt/insertSafeBj', + method: 'post', + data + }) +} + +export default { add, edit, del, insertSafe, insertSafeBj } diff --git a/mes/qd/src/views/wms/basedata/em/bjsafeivt/index.vue b/mes/qd/src/views/wms/basedata/em/bjsafeivt/index.vue new file mode 100644 index 00000000..48297f0a --- /dev/null +++ b/mes/qd/src/views/wms/basedata/em/bjsafeivt/index.vue @@ -0,0 +1,233 @@ + + + + +