From 2f251e18ee5a26bc26531b3431e5b4165911b1aa Mon Sep 17 00:00:00 2001 From: ZY <zc857179121@qq.com> Date: 星期三, 25 九月 2024 10:23:17 +0800 Subject: [PATCH] 1 --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 146 +++++++++++++++++++++++++++++++++--------------- 1 files changed, 100 insertions(+), 46 deletions(-) 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 a460f79..b75acf9 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -33,6 +33,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; /** * Created by vincent on 2022/4/9 @@ -93,12 +94,12 @@ throw new CoolException(param.getOrderNo() + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦"); } - for (DetlDto detlDto : param.getOrderDetails()){ - if (Cools.isEmpty(detlDto) || Cools.isEmpty(detlDto.getOwnerName(),detlDto.getPayment())){ + for (DetlDto detlDto : param.getOrderDetails()) { + if (Cools.isEmpty(detlDto) || Cools.isEmpty(detlDto.getOwnerName(), detlDto.getPayment())) { throw new CoolException(param.getOrderNo() + "缂哄皯璐т富鎴栬揣鐗╁舰鎬�"); - }else { + } else { LocOwner locOwner = locOwnerService.selectOne(new EntityWrapper<LocOwner>().eq("owner", detlDto.getOwnerName())); - if (Cools.isEmpty(locOwner)){ + if (Cools.isEmpty(locOwner)) { LocOwner locOwner1 = new LocOwner(); locOwner1.setOwner(detlDto.getOwnerName()); locOwnerService.insert(locOwner1); @@ -151,7 +152,7 @@ List<DetlDto> list = new ArrayList<>(); List<DetlDto> orderDetails = param.getOrderDetails(); for (DetlDto detail : orderDetails) { - DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getAnfme(),detail.getOwnerName(),detail.getPayment()); + DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getAnfme(), detail.getOwnerName(), detail.getPayment()); if (DetlDto.has(list, dto)) { DetlDto detlDto = DetlDto.find(list, dto.getMatnr(), dto.getBatch()); assert detlDto != null; @@ -184,9 +185,9 @@ orderDetl.setUpdateBy(9527L); orderDetl.setUpdateTime(now); LocOwner locOwner = locOwnerService.selectOne(new EntityWrapper<LocOwner>().eq("owner", detlDto.getOwnerName())); - if (Cools.isEmpty(locOwner)){ + if (Cools.isEmpty(locOwner)) { throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); - }else { + } else { orderDetl.setOwner(locOwner.getId().intValue()); } orderDetl.setPayment(detlDto.getPayment()); @@ -215,7 +216,7 @@ //鏌ユ壘鍋氬崟鐢ㄦ埛 User user = userService.selectOne(new EntityWrapper<User>().eq("username", param.getCMaker())); - if(Cools.isEmpty(user)){ + if (Cools.isEmpty(user)) { throw new CoolException("鏈煡璇㈠埌璇ョ敤鎴�"); } @@ -229,9 +230,9 @@ null, // null, // 璋冩嫧椤圭洰缂栧彿 null, // 鍒濆绁ㄦ嵁鍙� - null, // 绁ㄦ嵁鍙� + param.getCAccount(), // 涓讳綋 null, // 瀹㈡埛缂栧彿 - param.getCAccount(), // 瀹㈡埛 + param.getCCusName(), // 瀹㈡埛 null, // 鑱旂郴鏂瑰紡 param.getCMaker(), // 鎿嶄綔浜哄憳 null, // 鍚堣閲戦 @@ -260,7 +261,7 @@ throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"); } // 鍗曟嵁鏄庣粏妗� - for (OpenOrderPakoutParam.Body body : param.getADDBody()){ + for (OpenOrderPakoutParam.Body body : param.getADDBody()) { Mat mat = matService.selectByMatnr(body.getCInvCode()); if (Cools.isEmpty(mat)) { throw new CoolException(body.getCInvCode() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); @@ -408,8 +409,18 @@ @Override @Transactional public void syncMat(MatSyncParam param) { + if (Cools.isEmpty(param.getMatDetails()) || param.getMatDetails().size() <= 0) { throw new CoolException("鍟嗗搧鏁版嵁涓虹┖"); + } + + //鍒犻櫎瀛樿揣妗f + if (param.deleteFlag == 1) { + for (MatSyncParam.MatParam matParam : param.getMatDetails()) { + matService.deleteById(matParam.getMatnr()); + } + + return; } for (MatSyncParam.MatParam matParam : param.getMatDetails()) { @@ -525,30 +536,30 @@ } /* - * 閫熻吘鏁板瓧瀛敓璋冪敤鎺ュ彛 - * */ + * 閫熻吘鏁板瓧瀛敓璋冪敤鎺ュ彛 + * */ @Override public DigitalTwin inventoryQuantity() { DigitalTwin digitalTwin = new DigitalTwin(); LocChartPie locUseRate = reportQueryMapper.getLocUseRate(); LocChartPie locUseRateL = reportQueryMapper.getLocUseRateL(); LocChartPie locUseRateP = reportQueryMapper.getLocUseRateP(); - if(locUseRate!=null) { - digitalTwin.setCount(locUseRate.getOqty()+locUseRate.getFqty()+locUseRate.getUqty()+locUseRate.getXqty()); + if (locUseRate != null) { + digitalTwin.setCount(locUseRate.getOqty() + locUseRate.getFqty() + locUseRate.getUqty() + locUseRate.getXqty()); digitalTwin.setOqty(locUseRate.getOqty()); digitalTwin.setFqty(locUseRate.getFqty()); digitalTwin.setUqty(locUseRate.getUqty()); digitalTwin.setXqty(locUseRate.getXqty()); } - if(locUseRateL!=null) { - digitalTwin.setCountL(locUseRateL.getOqty()+locUseRateL.getFqty()+locUseRateL.getUqty()+locUseRateL.getXqty()); + if (locUseRateL != null) { + digitalTwin.setCountL(locUseRateL.getOqty() + locUseRateL.getFqty() + locUseRateL.getUqty() + locUseRateL.getXqty()); digitalTwin.setOqtyL(locUseRateL.getOqty()); digitalTwin.setFqtyL(locUseRateL.getFqty()); digitalTwin.setUqtyL(locUseRateL.getUqty()); digitalTwin.setXqtyL(locUseRateL.getXqty()); } - if (locUseRateP!=null){ - digitalTwin.setCountP(locUseRateP.getOqty()+locUseRateP.getFqty()+locUseRateP.getUqty()+locUseRateP.getXqty()); + if (locUseRateP != null) { + digitalTwin.setCountP(locUseRateP.getOqty() + locUseRateP.getFqty() + locUseRateP.getUqty() + locUseRateP.getXqty()); digitalTwin.setOqtyP(locUseRateP.getOqty()); digitalTwin.setFqtyP(locUseRateP.getFqty()); digitalTwin.setUqtyP(locUseRateP.getUqty()); @@ -563,9 +574,8 @@ List<OpenOrderPakoutParam> list = new ArrayList<>(); - - for (Object o : jsonArray){ - JSONObject jsonObject = (JSONObject)o; + for (Object o : jsonArray) { + JSONObject jsonObject = (JSONObject) o; String brand = jsonObject.get("brand").toString(); String batch = jsonObject.get("batch").toString(); Integer packageNo = Integer.parseInt(jsonObject.get("packageNo").toString()); @@ -573,11 +583,12 @@ Pla pla = plaService.selectByBatchAndPackageNo(batch, packageNo, brand); Mat mat = matService.selectByMaktx(pla.getBrand()); //褰撶敓浜у崟鍙蜂笉涓�鑷存椂锛岄渶瑕佹柊寤轰竴涓猵aram - if(list.size() == 0 || checkOrder(list,pla.getProOrderNo()) == null){ + if (list.size() == 0 || checkOrder(list, pla.getProOrderNo()) == null) { OpenOrderPakoutParam param = new OpenOrderPakoutParam(); - String type = Cools.isEmpty(pla.getProOrderNo()) ? "璋冩嫧鍏ュ簱鍗�" : "鐢熶骇鍏ュ簱鍗�"; - param.setcCode(pla.getProOrderNo()); - param.setcAccount(pla.getOwner()); + param.setcMaker(json.get("user").toString()); + String type = Cools.isEmpty(pla.getProOrderNo()) ? "璋冩嫧鍏ュ簱鍗�" : "浜ф垚鍝佸叆搴�"; + param.setcCode(Cools.isEmpty(pla.getProOrderNo()) ? (new Date().getTime()) + "" : pla.getProOrderNo()); + param.setcAccount(pla.getWorkshop()); param.setdDate(Utils.getDateStr(new Date())); param.setType(type); @@ -585,38 +596,74 @@ OpenOrderPakoutParam.Body body = new OpenOrderPakoutParam.Body(); body.setcInvCode(mat.getMatnr()); body.setiQuantity(pla.getWeightAnfme()); + body.setcBatch(""); body.setCbMemo(pla.getMemo()); bodyList.add(body); param.setaDDBody(bodyList); list.add(param); - }else { + } else { OpenOrderPakoutParam param = checkOrder(list, pla.getProOrderNo()); List<OpenOrderPakoutParam.Body> bodyList = param.getADDBody(); OpenOrderPakoutParam.Body body = checkOrderDetl(bodyList, mat.getMatnr()); //鏈夋柊鐨勭墝鍙峰垯娣诲姞鏂扮殑orderDetl锛屽惁鍒欑疮鍔� - if(body == null){ + if (body == null) { body = new OpenOrderPakoutParam.Body(); body.setcInvCode(mat.getMatnr()); body.setiQuantity(pla.getWeightAnfme()); body.setCbMemo(pla.getMemo()); bodyList.add(body); - }else { + } else { body.setiQuantity(body.getIQuantity() + pla.getWeightAnfme()); } } } - return doHttpRequest(list, "鍏ュ簱鍗曚笂鎶�", url, orderReportPath, null, "127.0.0.1"); + for (OpenOrderPakoutParam param : list) { + doHttpRequest(param, "鍏ュ簱鍗曚笂鎶�", url, orderReportPath, null, "127.0.0.1"); + + } + + return 200; + + //return doHttpRequest(list, "鍏ュ簱鍗曚笂鎶�", url, orderReportPath, null, "127.0.0.1"); } - private OpenOrderPakoutParam checkOrder(List<OpenOrderPakoutParam> list, String orderNo){ + @Override + public List<Order> selectOrderInformation(Map<String, String> param) { + List<Order> list = new ArrayList<>(); + String name = param.get("name"); + User user = userService.selectOne(new EntityWrapper<User>().eq("username", name)); + if (Cools.isEmpty(user)) { + return list; + } + List<Order> orderList = orderService.selectList(new EntityWrapper<Order>().eq("create_by", user.getId())); + if (Cools.isEmpty(orderList)) { + return list; + } + for (Order order : orderList) { + if (order.getSettle() == 1 || order.getSettle() == 2) { + List<OrderDetl> detlList = orderDetlService.selectByOrderId(order.getId()); + order.setOrderDetls(detlList); + list.add(order); + } + } - for (OpenOrderPakoutParam param : list){ + return list; + } + + private OpenOrderPakoutParam checkOrder(List<OpenOrderPakoutParam> list, String orderNo) { + + for (OpenOrderPakoutParam param : list) { + + if (Cools.eq("璋冩嫧鍏ュ簱鍗�", param.getType()) && Cools.isEmpty(orderNo)) { + return param; + } + //鍒ゆ柇鏄惁鍖呭惈閲嶅鐨勮鍗曞彿 - if(Cools.eq(param.getCCode(),orderNo)){ + if (Cools.eq(param.getCCode(), orderNo)) { return param; } } @@ -625,11 +672,11 @@ } - private OpenOrderPakoutParam.Body checkOrderDetl(List<OpenOrderPakoutParam.Body> bodyList, String matnr){ + private OpenOrderPakoutParam.Body checkOrderDetl(List<OpenOrderPakoutParam.Body> bodyList, String matnr) { - for (OpenOrderPakoutParam.Body param : bodyList){ + for (OpenOrderPakoutParam.Body param : bodyList) { //鍒ゆ柇鏄惁鍖呭惈閲嶅鐨勮鍗曞彿 - if(Cools.eq(param.getCInvCode(),matnr)){ + if (Cools.eq(param.getCInvCode(), matnr)) { return param; } } @@ -638,7 +685,7 @@ } - private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip){ + private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip) { String response = ""; boolean success = false; @@ -649,22 +696,27 @@ .setJson(JSONObject.toJSONString(requestParam)) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); - if(Cools.isEmpty(jsonObject.get("errCode"))){ - throw new CoolException(jsonObject.get("Message").toString()); + response = response.replace("\\", ""); + response = response.substring(1, response.length() - 1); + + JSONObject jsonObject = JSON.parseObject(response); + JSONArray jsonArray = (JSONArray) jsonObject.get(""); + JSONObject jsonResult = (JSONObject) jsonArray.get(0); + if (Cools.isEmpty(jsonResult.get("ErrorCode"))) { + throw new CoolException(jsonResult.get("errorMsg").toString()); } - int code = (int) jsonObject.get("errCode"); - if(code != 0){ - throw new CoolException(jsonObject.get("errMsg").toString()); + int code = Integer.parseInt(jsonResult.get("ErrorCode").toString()); + if (code != 1) { + throw new CoolException(jsonResult.get("ErrorMsg").toString()); } success = true; return code; - }catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage()); - throw new CoolException("璋冪敤鎺ュ彛鍝嶅簲閿欒"); - }finally { + throw new CoolException(e.getMessage()); + } finally { apiLogService.save( namespace, url + path, @@ -678,4 +730,6 @@ } + + } -- Gitblit v1.9.1