From b59c16db71fbe29770d3dfffe3cb468857c2eca2 Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期一, 30 十二月 2024 09:27:12 +0800 Subject: [PATCH] 完善金蝶上报流程 --- src/main/java/com/zy/asrs/controller/OrderController.java | 36 ++++++++++++++++++ src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java | 22 ++++------ src/main/java/com/zy/asrs/entity/OrderDetl.java | 4 +- src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java | 29 ++++++++++++-- src/main/webapp/static/js/order/order.js | 6 +-- src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java | 4 +- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 3 + src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java | 3 - src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java | 4 +- src/main/webapp/views/order/order.html | 2 10 files changed, 82 insertions(+), 31 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java index d6666bf..a89e6fa 100644 --- a/src/main/java/com/zy/asrs/controller/OrderController.java +++ b/src/main/java/com/zy/asrs/controller/OrderController.java @@ -675,6 +675,42 @@ return R.ok(); } + @RequestMapping(value = "/order/report") + @ManagerAuth(memo = "涓婃姤") + public R report(@RequestParam String orderNo) { + Order order = orderService.selectByNo(orderNo); + if(Cools.isEmpty(order)){ + return R.parse(BaseRes.EMPTY); + } + List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo)); + if (Cools.isEmpty(orderDetls)) { + return R.parse(BaseRes.EMPTY); + } + int wrkCount = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("order_no",order.getOrderNo())); + int pakinCount = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("order_no",order.getOrderNo())); + if (wrkCount > 0 || pakinCount > 0) { + throw new CoolException("瀛樺湪浣滀笟涓暟鎹紝涓嶈兘瀹岀粨銆傝妫�鏌ュ叆搴撻�氱煡妗e拰宸ヤ綔妗�"); + } + Boolean boo=true; + for (OrderDetl orderDetl : orderDetls) { + if(!orderDetl.getQty().equals(orderDetl.getWorkQty())){ + return R.error("浣滀笟鏁伴噺鍜屽畬鎴愭暟閲忎笉涓�鑷存棤娉曚笂鎶ョ墿鏂欑紪鍙凤細"+orderDetl.getMatnr()); + } + if((Cools.isEmpty(orderDetl.getPrice())&&orderDetl.getQty()>0)||!orderDetl.getPrice().equals(orderDetl.getQty())){ + boo=false; + } + if(Cools.isEmpty(orderDetl.getPrice())){ + orderDetl.setPrice(0.0); + orderDetlService.updateById(orderDetl); + } + } + if(boo){ + return R.error("娌℃湁闇�瑕佷笂浼犵殑鏁版嵁"); + } + order.setMemo("0");//鐘舵�佽浆鎹㈡垚寮�濮嬩笅鎺� + orderService.updateById(order); + return R.ok(); + } } diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java index 39d5a98..cff818e 100644 --- a/src/main/java/com/zy/asrs/entity/OrderDetl.java +++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java @@ -129,9 +129,9 @@ private String unit; /** - * 鍗曚环 + * 宸蹭笂鎶ユ暟閲� */ - @ApiModelProperty(value= "鍗曚环") + @ApiModelProperty(value= "宸蹭笂鎶ユ暟閲�") private Double price; /** diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index ed50a08..ba355f6 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -177,6 +177,7 @@ orderDetl.setCreateTime(now); orderDetl.setUpdateBy(9527L); orderDetl.setUpdateTime(now); + orderDetl.setPrice(0.0); LocOwner locOwner = locOwnerService.selectOne(new EntityWrapper<LocOwner>().eq("owner", detlDto.getOwnerName())); if (Cools.isEmpty(locOwner)){ throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); @@ -305,6 +306,7 @@ orderDetl.setUpdateTime(now); orderDetl.setStatus(1); orderDetl.setQty(0.0D); + orderDetl.setPrice(0.0);//鍒濆鍖栧凡涓婃姤鏁伴噺 orderDetl.setOwner(detlDto.getOwner()); orderDetl.setBeBatch(detlDto.getBeBatch()); orderDetl.setWeight(detlDto.getWeight()); @@ -421,6 +423,7 @@ orderDetl.setCreateTime(now); orderDetl.setUpdateBy(9527L); orderDetl.setUpdateTime(now); + orderDetl.setPrice(0.0); LocOwner locOwner = locOwnerService.selectOne(new EntityWrapper<LocOwner>().eq("owner", detlDto.getOwnerName())); if (Cools.isEmpty(locOwner)){ throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); diff --git a/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java index e21aeaa..b6b2264 100644 --- a/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java +++ b/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java @@ -31,24 +31,20 @@ @Scheduled(cron = "0/3 * * * * ? ") @Async("orderThreadPool") - public void completeAndReport(){ - if(!SaveOrderSwitch){ + public void completeAndReport() { + if (!SaveOrderSwitch) { return; } List<Order> orders = orderService.selectCompletemEmo1(); for (Order order : orders) { - try{ - if(order.getSettle()==4){ - order.setMemo("2"); - order.setUpdateTime(new Date()); - orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); - }else{ - ReturnT<String> result = saveOrderSyncHandler.start(order); - if (!result.isSuccess()) { - log.error("鍗曟嵁[orderNo={}]淇濆瓨鑷砮rp澶辫触", order.getOrderNo()); - } + try { + + ReturnT<String> result = saveOrderSyncHandler.start(order); + if (!result.isSuccess()) { + log.error("鍗曟嵁[orderNo={}]淇濆瓨鑷砮rp澶辫触", order.getOrderNo()); } - }catch (Exception e){ + + } catch (Exception e) { Order order1 = orderService.selectById(order.getId()); order1.setUpdateTime(new Date()); orderService.updateById(order1); diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java index 56f35dc..ce0cf6c 100644 --- a/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java @@ -76,7 +76,6 @@ // return SUCCESS; // } //鏉′欢鎷兼帴 - log.info("鏉′欢鎷兼帴"); String entryIds = null; if (kingDeeUtilType.entryId==1){ List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); @@ -103,8 +102,6 @@ jsonObject.put("FormId",kingDeeUtilType.formId); jsonObject.put("data", dataJsonObject); String add = jsonObject.toJSONString(); - log.info("鏉′欢鎷兼帴:"+jsonObject); - //涓嬫帹 log.info("涓嬫帹"); String response = ""; diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java index 48b8312..6ed11ac 100644 --- a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java @@ -93,10 +93,10 @@ JsonNode rootNode = objectMapper.readTree(response); boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); log.info("瀹℃牳bool:" + bool); - //瀹℃牳瀹屾垚鍘熻鍗�2杞�3 3.瀹℃牳瀹屾垚 + //瀹℃牳瀹屾垚鍘熻鍗�3杞�4 4.瀹℃牳瀹屾垚 if (bool) { success = true; - order.setMemo("3");//瀹℃牳瀹屾垚 + order.setMemo("4");//瀹℃牳瀹屾垚 order.setUpdateTime(new Date()); diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java index af4cb64..62b53fa 100644 --- a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java @@ -108,7 +108,11 @@ orderedMap.put("FMATERIALID", jsonObjectFMATERIALID); orderedMap.put("FSTOCKID", jsonObjectFSTOCKID); orderedMap.put("FLOT", jsonObjectFLOT); - orderedMap.put("FQty", orderDetl.getQty()); // 灏�"FQty"鏀惧埌鏈�鍚� + if(orderDetl.getQty().equals(0.0)){ + orderedMap.put("FQty", orderDetl.getQty()); + }else{ + orderedMap.put("FQty", orderDetl.getQty()-orderDetl.getPrice()); // 灏�"FQty"鏀惧埌鏈�鍚� + } JSONObject jsonObjectEnd = new JSONObject(orderedMap); @@ -153,18 +157,35 @@ Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess"); String bool1=IsSuccess.toString(); boolean bool = false; - //淇濆瓨瀹屾垚鍘熻鍗�5杞�6 6.淇濆瓨瀹屾垚 + //淇濆瓨瀹屾垚鍘熻鍗�1杞�2 2.淇濆瓨瀹屾垚 if(bool1.equals("true")){ ObjectMapper objectMapper = new ObjectMapper(); JsonNode rootNode = objectMapper.readTree(response); bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); log.info("淇濆瓨bool:"+bool); - //鎻愪氦瀹屾垚鍘熻鍗�5杞�6 6.涓婃姤瀹屾垚 + //鎻愪氦瀹屾垚鍘熻鍗�1杞�2 2.涓婃姤瀹屾垚 if(bool){ success = true; - order.setSettle(6L); + order.setMemo("2"); order.setUpdateTime(new Date()); orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); + + for(OrderDetl orderDetl:orderDetls){ + orderDetl.setPrice(orderDetl.getQty()); + orderDetl.setUpdateTime(new Date()); + if(Cools.isEmpty(orderDetl.getBatch())){ + orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>() + .eq("order_no",order.getOrderNo()) + .eq("matnr",orderDetl.getMatnr())); + }else{ + orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>() + .eq("order_no",order.getOrderNo()) + .eq("matnr",orderDetl.getMatnr()) + .eq("batch",orderDetl.getBatch())); + } + + } + } } diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java index 7bcbc34..ced9a06 100644 --- a/src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java @@ -91,11 +91,11 @@ JsonNode rootNode = objectMapper.readTree(response); boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); log.info("瀹℃牳bool:"+bool); - //鎻愪氦瀹屾垚鍘熻鍗�1杞�2 2.鎻愪氦瀹屾垚 + //鎻愪氦瀹屾垚鍘熻鍗�2杞�3 3.鎻愪氦瀹屾垚 if(bool){ success = true; // order.setSettle(7L); - order.setMemo("2"); + order.setMemo("3"); order.setUpdateTime(new Date()); orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); } diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js index 9900430..cc3eeeb 100644 --- a/src/main/webapp/static/js/order/order.js +++ b/src/main/webapp/static/js/order/order.js @@ -560,7 +560,7 @@ // 淇敼璁㈠崟鐘舵�� function doModify(orderId, orderNo, settle) { - layer.confirm('纭畾瑕佹墜鍔ㄥ畬缁撳悧锛�', { + layer.confirm('纭畾瑕佹墜鍔ㄤ笂鎶ュ悧锛�', { shade: .1, skin: 'layui-layer-admin' }, function (i) { @@ -569,12 +569,10 @@ console.log(orderId); console.log(settle); $.ajax({ - url: baseUrl+"/order/update/auth", + url: baseUrl+"/order/report", headers: {'token': localStorage.getItem('token')}, data: { - id: orderId, orderNo: orderNo, - settle: settle }, method: 'POST', success: function (res) { diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html index f0181c8..686e232 100644 --- a/src/main/webapp/views/order/order.html +++ b/src/main/webapp/views/order/order.html @@ -94,7 +94,7 @@ <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="del">鍒犻櫎</a> {{# } }} {{# if (d.settle == 2) { }} - <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="complete">瀹岀粨</a> + <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="complete">涓婃姤</a> {{# } }} <!-- {{# if ((d.settle == 0 || d.settle == 1) && (d.docType == 1 || d.docType == 11 || d.docType == 14 || d.docType == 17 || d.docType == 18)) { }}--> -- Gitblit v1.9.1