From bc3749c68a8e10d346628b4612e7820f708ea556 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期三, 09 四月 2025 08:48:37 +0800
Subject: [PATCH] 界面翻译为俄语

---
 src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java |  135 ++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 121 insertions(+), 14 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 db3a673..67eccbf 100644
--- a/src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java
+++ b/src/main/java/com/zy/ints/task/scheduler/LkDetTbScheduler.java
@@ -1,6 +1,16 @@
 package com.zy.ints.task.scheduler;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+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.LkDetTb;
+import com.zy.ints.entity.LkDetTbBak;
 import com.zy.ints.erp.ErpSqlServer;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -8,6 +18,9 @@
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 
 /**
@@ -22,36 +35,130 @@
      */
     @Value("${erp.enabled}")
     private Boolean erpEnabled;
+    @Value("${erp.useName.ip}")
+    private String ip;
+    @Autowired
+    private ApiLogService apiLogService;
     @Autowired
     private ErpSqlServer erpSqlServer;
+    @Autowired
+    private OrderService orderService;
+    @Autowired
+    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 sqlUpDateLkDetTbOne = "update lk_det_tb set status=1 where prd_no=";
-        String sqlUpDateLkDetTbTwo = "update lk_det_tb set status=2 where prd_no=";
+        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<LkDetTb> lkDetTbs = erpSqlServer.select(sqlSelectLkDetTb, LkDetTb.class);
-            if (lkDetTbs.size() > 0){
-                for (LkDetTb lkDetTb:lkDetTbs){
-                    Integer status = lkDetTb.getStatus();
-                    if (status == 0){
+            List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 4L));
+            if (orders.size() > 0) {
+                for (Order order : orders) {
 
-                    }else if (status == 1){
+                    List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
+                    if (!Cools.isEmpty(orderDetls)) {
+                        for (OrderDetl orderDetl : orderDetls) {
+                            String orderNo = orderDetl.getOrderNo().split("---")[0];
+                            Integer itm = Integer.getInteger(orderDetl.getOrderNo().split("---")[1]);
+                            Date now = new Date();
+                            List<LkDetTb> lkDetTbs = erpSqlServer.select(sqlSelectLkDetTb +
+                                            " and bill_no='" + orderNo + "'" +
+                                            " and prd_no='" + orderDetl.getMatnr() + "'" +
+                                            " and ITM='" + itm + "'" +
+                                            " and prd_mark='" + orderDetl.getBatch() + "'"
+                                    , LkDetTb.class);
+                            List<LkDetTbBak> lkDetTbBaks = erpSqlServer.select(sqlSelectLkDetTbBak +
+                                            " and bill_no='" + orderNo + "'" +
+                                            " and prd_no='" + orderDetl.getMatnr() + "'" +
+                                            " and ITM='" + itm + "'" +
+                                            " and prd_mark='" + orderDetl.getBatch() + "'"
+                                    , LkDetTbBak.class);
+                            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 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", "'" + orderNo + "'");
+                                condition.put("prd_no", "'" + orderDetl.getMatnr() + "'");
+                                condition.put("itm", "'" + itm + "'");
 
-                    }else if (status == 2){
+                                DocType docType = docTypeService.selectById(order.getDocType());
+                                if (!Cools.isEmpty(docType)) {
+                                    int addid = docType.getPakin() == 1 ? 1 : 2;
+                                    condition.put("iokindid", "'" + docType.getDocName$() + "'");
+                                    condition.put("add_id", "'" + addid + "'");
+                                }
 
-                    }else {
-
+                                condition.put("qty", "'" + orderDetl.getQty() + "'");
+                                condition.put("prd_mark", "'" + orderDetl.getBatch() + "'");
+                                condition.put("wh", "'" + orderDetl.getMemo() + "'");
+                                condition.put("billdate", "'" + format + "'");
+                                condition.put("status", "'" + 0 + "'");
+                                erpSqlServer.insert(LkDetTb.class, condition);
+                                callApiLogSaveOrderDetl(orderDetl, "瀹岀粨璁㈠崟鏄庣粏涓婃姤瀹屾垚", true);
+                            }
+                            //淇濆瓨璁㈠崟鏄庣粏鍘嗗彶妗�
+                            if (orderDetlService.addToLogTable(orderDetl)) {
+//                                callApiLogSaveOrderDetl(orderDetl, "淇濆瓨璁㈠崟鏄庣粏鍘嗗彶妗f垚鍔燂紒", true);
+                                //鍒犻櫎璁㈠崟鏄庣粏
+                                orderDetlService.deleteById(orderDetl.getId());
+                                callApiLogSaveOrderDetl(orderDetl, "璁㈠崟鏄庣粏妗d繚瀛樺悗鍒犻櫎鎴愬姛锛�", true);
+                            }
+                        }
+                        //淇濆瓨璁㈠崟鍘嗗彶妗�
+                        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