From 5e89cb64a5cc8c60d22aa477799112e4b0d60157 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期三, 04 一月 2023 16:53:23 +0800
Subject: [PATCH] #显示优化

---
 src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java |   93 ++++++++++++++++++++++++++++++++--------------
 1 files changed, 64 insertions(+), 29 deletions(-)

diff --git a/src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java b/src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java
index 282b5ac..2c347f3 100644
--- a/src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java
+++ b/src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java
@@ -2,14 +2,13 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
-import com.core.exception.CoolException;
 import com.zy.asrs.entity.DocType;
 import com.zy.asrs.entity.Order;
 import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.service.ApiLogService;
 import com.zy.asrs.service.DocTypeService;
 import com.zy.asrs.service.OrderDetlService;
 import com.zy.asrs.service.OrderService;
-import com.zy.ints.entity.ErpDetTbBak;
 import com.zy.ints.entity.LkDetTb;
 import com.zy.ints.entity.LkDetTbBak;
 import com.zy.ints.erp.ErpSqlServer;
@@ -36,6 +35,10 @@
      */
     @Value("${erp.enabled}")
     private Boolean erpEnabled;
+    @Value("${erp.useName.ip}")
+    private String ip;
+    @Autowired
+    private ApiLogService apiLogService;
     @Autowired
     private ErpSqlServer erpSqlServer;
     @Autowired
@@ -44,51 +47,54 @@
     private OrderDetlService orderDetlService;
     @Autowired
     private DocTypeService docTypeService;
+
     /**
      * 涓婃姤鍏ュ嚭搴撳畬缁撹鍗曚俊鎭�
      */
     @Scheduled(cron = "${erp.refreshtime}")
-    public void InOrOutOrder() {
+    public void reportOrder() {
         if (!erpEnabled) return;
         String sqlSelectLkDetTb = "select bill_no as billNo,prd_no as prdNo,iokindid,add_id as addId,qty,prd_mark as prdMark,wh,billdate,status,temp1,temp2,temp3 from lk_det_tb where 1=1";
         String sqlSelectLkDetTbBak = "select bill_no as billNo,prd_no as prdNo,iokindid,add_id as addId,qty,prd_mark as prdMark,wh,billdate,status,temp1,temp2,temp3 from lk_det_tb_bak where 1=1";
 
         try {
             List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 4L));
-            if (orders.size()>0){
-                for (Order order:orders){
+            if (orders.size() > 0) {
+                for (Order order : orders) {
                     List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
-                    if (!Cools.isEmpty(orderDetls)){
-                        for (OrderDetl orderDetl:orderDetls){
+                    if (!Cools.isEmpty(orderDetls)) {
+                        for (OrderDetl orderDetl : orderDetls) {
                             Date now = new Date();
-                            List<LkDetTb> lkDetTbs = erpSqlServer.select(sqlSelectLkDetTb+
-                                            " and bill_no='"+orderDetl.getOrderNo()+"'" +
-                                            " and prd_no='"+orderDetl.getMatnr()+"'" +
-                                            " and prd_mark='"+orderDetl.getBatch()+"'"
+                            List<LkDetTb> lkDetTbs = erpSqlServer.select(sqlSelectLkDetTb +
+                                            " and bill_no='" + orderDetl.getOrderNo() + "'" +
+                                            " and prd_no='" + orderDetl.getMatnr() + "'" +
+                                            " and prd_mark='" + orderDetl.getBatch() + "'"
                                     , LkDetTb.class);
-                            List<LkDetTbBak> lkDetTbBaks = erpSqlServer.select(sqlSelectLkDetTbBak+
-                                            " and bill_no='"+orderDetl.getOrderNo()+"'" +
-                                            " and prd_no='"+orderDetl.getMatnr()+"'" +
-                                            " and prd_mark='"+orderDetl.getBatch()+"'"
+                            List<LkDetTbBak> lkDetTbBaks = erpSqlServer.select(sqlSelectLkDetTbBak +
+                                            " and bill_no='" + orderDetl.getOrderNo() + "'" +
+                                            " and prd_no='" + orderDetl.getMatnr() + "'" +
+                                            " and prd_mark='" + orderDetl.getBatch() + "'"
                                     , LkDetTbBak.class);
-                            if (lkDetTbs.size() == 1 || lkDetTbBaks.size()==1){
-                                log.error("璁㈠崟鍙凤細"+orderDetl.getOrderNo()+"銆佸晢鍝佺紪鍙凤細"+orderDetl.getMatnr()+"銆佽揣鍝佺壒寰侊細"+orderDetl.getBatch()+" " +
-                                        "宸茬粡涓婃姤浣嗘槸鏄庣粏渚濇棫瀛樺湪锛岃鑱旂郴寮�鍙戜汉鍛橈紒锛侊紒");
+                            if (lkDetTbs.size() == 1) {
+                                callApiLogSaveLkDetTb(lkDetTbs.get(0), "erp_det_tb", "宸茬粡涓婃姤浣嗘槸鏄庣粏渚濇棫瀛樺湪锛岃鑱旂郴寮�鍙戜汉鍛橈紒锛侊紒", false);
                                 continue;
-                            }else if (lkDetTbs.size()>1 || lkDetTbBaks.size()>1){
-                                log.error("鐩稿悓 璁㈠崟鍙凤細"+orderDetl.getOrderNo()+"銆佸晢鍝佺紪鍙凤細"+orderDetl.getMatnr()+"銆佽揣鍝佺壒寰侊細"+orderDetl.getBatch()+" " +
-                                        "瀛樺湪閲嶅璧勬枡锛岃仈绯诲紑鍙戜汉鍛橈紒锛侊紒");
+                            } else if (lkDetTbBaks.size() == 1) {
+                                callApiLogSaveLkDetTbBak(lkDetTbBaks.get(0), "erp_det_tb_bak", "宸茬粡涓婃姤浣嗘槸鏄庣粏渚濇棫瀛樺湪锛岃鑱旂郴寮�鍙戜汉鍛橈紒锛侊紒", false);
                                 continue;
-//                                throw new CoolException("鐩稿悓 璁㈠崟鍙凤細"+orderDetl.getOrderNo()+"銆佸晢鍝佺紪鍙凤細"+orderDetl.getMatnr()+"銆佽揣鍝佺壒寰侊細"+orderDetl.getBatch()+" " +
-//                                        "瀛樺湪閲嶅璧勬枡锛岃仈绯诲紑鍙戜汉鍛橈紒锛侊紒");
-                            }else {
+                            } else if (lkDetTbs.size() > 1) {
+                                callApiLogSaveLkDetTb(lkDetTbs.get(0), "erp_det_tb", "瀛樺湪閲嶅璧勬枡锛岃仈绯诲紑鍙戜汉鍛橈紒锛侊紒", false);
+                                continue;
+                            } else if (lkDetTbBaks.size() > 1) {
+                                callApiLogSaveLkDetTbBak(lkDetTbBaks.get(0), "erp_det_tb_bak", "瀛樺湪閲嶅璧勬枡锛岃仈绯诲紑鍙戜汉鍛橈紒锛侊紒", false);
+                                continue;
+                            } else {
                                 String format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(now);
                                 HashMap<String, Object> condition = new HashMap<>();
                                 condition.put("bill_no", "'" + orderDetl.getOrderNo() + "'");
                                 condition.put("prd_no", "'" + orderDetl.getMatnr() + "'");
 
                                 DocType docType = docTypeService.selectById(order.getDocType());
-                                if (!Cools.isEmpty(docType)){
+                                if (!Cools.isEmpty(docType)) {
                                     int addid = docType.getPakin() == 1 ? 1 : 2;
                                     condition.put("iokindid", "'" + docType.getDocName$() + "'");
                                     condition.put("add_id", "'" + addid + "'");
@@ -100,24 +106,53 @@
                                 condition.put("billdate", "'" + format + "'");
                                 condition.put("status", "'" + 0 + "'");
                                 erpSqlServer.insert(LkDetTb.class, condition);
+                                callApiLogSaveOrderDetl(orderDetl, "瀹岀粨璁㈠崟鏄庣粏涓婃姤瀹屾垚", true);
                             }
                             //淇濆瓨璁㈠崟鏄庣粏鍘嗗彶妗�
-                            if (orderDetlService.addToLogTable(orderDetl)){
+                            if (orderDetlService.addToLogTable(orderDetl)) {
+//                                callApiLogSaveOrderDetl(orderDetl, "淇濆瓨璁㈠崟鏄庣粏鍘嗗彶妗f垚鍔燂紒", true);
                                 //鍒犻櫎璁㈠崟鏄庣粏
                                 orderDetlService.deleteById(orderDetl.getId());
+                                callApiLogSaveOrderDetl(orderDetl, "璁㈠崟鏄庣粏妗d繚瀛樺悗鍒犻櫎鎴愬姛锛�", true);
                             }
                         }
                         //淇濆瓨璁㈠崟鍘嗗彶妗�
-                        if (orderService.addToLogTable(order)){
+                        if (orderService.addToLogTable(order)) {
+//                            callApiLogSaveOrder(order, "瀹岀粨璁㈠崟涓婃姤瀹屾垚锛屽苟淇濆瓨璁㈠崟鍘嗗彶妗f垚鍔燂紒锛侊紒", true);
                             //鍒犻櫎瀹岀粨璁㈠崟
                             orderService.deleteById(order.getId());
+                            callApiLogSaveOrder(order, "瀹岀粨璁㈠崟涓婃姤瀹屾垚锛屽苟淇濆瓨璁㈠崟鍘嗗彶妗e悗鍒犻櫎瀹岀粨璁㈠崟鎴愬姛锛侊紒锛�", true);
                         }
                     }
                 }
             }
 
-        }catch (Exception e){
-
+        } catch (Exception e) {
+            Date date = new Date();
+            log.error(date + ": 琛ㄥ悕锛歭k_det_tb :" + e);
         }
     }
+
+    public void callApiLogSaveLkDetTb(LkDetTb lkDetTb, String tableName, String response, Boolean bool) {
+        apiLogService.save("涓婃姤瀹岀粨璁㈠崟鏄庣粏淇℃伅", tableName, "null", ip,
+                "璁㈠崟鍙凤細" + lkDetTb.getBillNo() + "銆佸搧鍙凤細" + lkDetTb.getPrdNo() + "銆佽揣鍝佺壒寰侊細" + lkDetTb.getPrdMark() + "銆佺姸鎬侊細" + lkDetTb.getStatus$(),
+                response, bool);
+    }
+
+    public void callApiLogSaveLkDetTbBak(LkDetTbBak lkDetTbBak, String tableName, String response, Boolean bool) {
+        apiLogService.save("涓婃姤瀹岀粨璁㈠崟鏄庣粏淇℃伅", tableName, "null", ip,
+                "璁㈠崟鍙凤細" + lkDetTbBak.getBillNo() + "銆佸搧鍙凤細" + lkDetTbBak.getPrdNo() + "銆佽揣鍝佺壒寰侊細" + lkDetTbBak.getPrdMark() + "銆佺姸鎬侊細" + lkDetTbBak.getStatus$(),
+                response, bool);
+    }
+
+    public void callApiLogSaveOrderDetl(OrderDetl orderDetl, String response, Boolean bool) {
+        apiLogService.save("涓婃姤瀹岀粨璁㈠崟鏄庣粏淇℃伅", "lk_det_tb", "null", ip,
+                "璁㈠崟鍙凤細" + orderDetl.getOrderNo() + "銆佸搧鍙凤細" + orderDetl.getMatnr() + "銆佽揣鍝佺壒寰侊細" + orderDetl.getBatch(),
+                response, bool);
+    }
+
+    public void callApiLogSaveOrder(Order order, String response, Boolean bool) {
+        apiLogService.save("瀹岀粨璁㈠崟淇℃伅涓婃姤瀹屾垚", "lk_det_tb", "null", ip,
+                "璁㈠崟鍙凤細" + order.getOrderNo(), response, bool);
+    }
 }

--
Gitblit v1.9.1