From 2fc66774335bfc603aa36b1ca41e5f1be19442b0 Mon Sep 17 00:00:00 2001 From: bfwms <1> Date: 星期一, 07 七月 2025 16:27:05 +0800 Subject: [PATCH] ERP对接 --- src/main/java/com/zy/asrs/task/CollectOrdersScheduler.java | 37 +++++++++++++++++++++++++++++-------- 1 files changed, 29 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/CollectOrdersScheduler.java b/src/main/java/com/zy/asrs/task/CollectOrdersScheduler.java index cd2aa4e..9dfd3ae 100644 --- a/src/main/java/com/zy/asrs/task/CollectOrdersScheduler.java +++ b/src/main/java/com/zy/asrs/task/CollectOrdersScheduler.java @@ -49,8 +49,8 @@ /** * 杞鑾峰彇鍏ュ簱璁㈠崟 */ - @Scheduled(cron = "0/10 * * * * ? ") - private void execute() { + @Scheduled(cron = "0/30 * * * * ? ") + private synchronized void execute() { // 鑾峰彇褰撳墠鏃ユ湡鏃堕棿 LocalDateTime now = LocalDateTime.now(); @@ -63,13 +63,18 @@ // 鏍煎紡鍖栨棩鏈熸椂闂� String formattedDateTime = oneMonthAgo.format(formatter); + HashMap<String ,Object> hashMap=new HashMap<>(); + HashMap<String, Object> map = new HashMap<>(); - map.put("orgNo", 0);//缁勭粐缂栧彿 + + map.put("orgNo", "2");//缁勭粐缂栧彿 // map.put("docNo",0); map.put("startTime", formattedDateTime);//寮�濮嬫椂闂� String format = now.format(formatter); map.put("endTime", format);//缁撴潫鏃堕棿 + + hashMap.put("condition",map); //鏌ヨ璁㈠崟 String response = ""; @@ -78,14 +83,14 @@ response = new HttpHandler.Builder() .setUri(URL) .setPath(inaddress) - .setJson(JSON.toJSONString(map)) + .setJson(JSON.toJSONString(hashMap)) .build() .doPost(); JSONObject jsonObject = JSON.parseObject(response); if (jsonObject.getInteger("status") == 200) { JSONArray response1 = JSON.parseArray(jsonObject.get("response").toString()); for (int j = 0; j < response1.size(); j++) { - OrderResult orderResult = response1.getObject(0, OrderResult.class); + OrderResult orderResult = response1.getObject(j, OrderResult.class); Order order = orderService.selectByNo(orderResult.getDocNo());//鍗曟嵁缂栧彿 if (Cools.isEmpty(order)) { Date now1 = new Date(); @@ -127,22 +132,38 @@ now1, // 淇敼鏃堕棿 null // 澶囨敞 ); + if (!orderService.insert(order)) { + throw new CoolException("鐢熸垚鍗曟嵁澶辫触锛岃鑱旂郴绠$悊鍛�"); + } } //鐗╂枡缂栫爜 Mat mat = matService.selectByMatnr(orderResult.getItemNo()); if (Cools.isEmpty(mat)) { - throw new CoolException(orderResult.getItemNo() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); + Mat mat1=new Mat(); + mat1.setTagId(1L); + mat1.setMatnr(orderResult.getItemNo()); + mat1.setMaktx(orderResult.getItemName()); + mat1.setSpecs(orderResult.getItemSpec()); + matService.insert(mat1); +// throw new CoolException(orderResult.getItemNo() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); } OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>() .eq("order_no", orderResult.getDocNo()) .eq("matnr", orderResult.getItemNo()) .eq("batch", orderResult.getDocLotNo()));//鎵瑰彿 + if(Cools.isEmpty(orderResult.getDocLotNo())){ + orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>() + .eq("order_no", orderResult.getDocNo()) + .eq("matnr", orderResult.getItemNo())); + } + if (!Cools.isEmpty(orderDetl1)) { continue; } - DocType docType = docTypeService.selectById(orderResult.getDocType()); OrderDetl orderDetl = new OrderDetl(); - orderDetl.sync(mat); + orderDetl.setMatnr(orderResult.getItemNo()); + orderDetl.setMaktx(orderResult.getItemName()); + orderDetl.setSpecs(orderResult.getItemSpec()); orderDetl.setBatch(orderResult.getDocLotNo()); orderDetl.setAnfme(orderResult.getApplyQty()); orderDetl.setOrderId(order.getId()); -- Gitblit v1.9.1