From d5f446da1b638fe1024c35f9732e72c12d71f1f8 Mon Sep 17 00:00:00 2001
From: baiXiao8813 <516776535@qq.com>
Date: 星期二, 27 七月 2021 14:14:37 +0800
Subject: [PATCH] 立库日入库、出库导出列顺序调整

---
 src/main/java/com/zy/common/service/erp/ErpService.java |   86 +++++++++++++++++++++++++++++++++---------
 1 files changed, 67 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/zy/common/service/erp/ErpService.java b/src/main/java/com/zy/common/service/erp/ErpService.java
index 0d0adc0..de28db0 100644
--- a/src/main/java/com/zy/common/service/erp/ErpService.java
+++ b/src/main/java/com/zy/common/service/erp/ErpService.java
@@ -1,7 +1,10 @@
 package com.zy.common.service.erp;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
 import com.core.common.DateUtils;
+import com.zy.asrs.service.OutStockMainService;
+import com.zy.asrs.service.OutStockService;
 import com.zy.common.service.erp.dto.InStockDto;
 import com.zy.common.service.erp.dto.PInStockDto;
 import com.zy.common.service.erp.entity.*;
@@ -9,6 +12,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.math.BigDecimal;
 import java.text.MessageFormat;
 import java.util.ArrayList;
 import java.util.Date;
@@ -150,11 +154,11 @@
             CPICMO cpicmo = select.get(0);
             boolean complete = false;
             if (cpicmo.getFQty() > 0) {
-                if (cpicmo.getFAuxCommitQty() >= cpicmo.getFQty()) {
+                if (Double.doubleToLongBits(cpicmo.getFAuxCommitQty()) == Double.doubleToLongBits(cpicmo.getFQty())) {
                     complete = true;
                 }
             } else {
-                if (cpicmo.getFAuxCommitQty() >= cpicmo.getFAuxQty()) {
+                if (Double.doubleToLongBits(cpicmo.getFAuxCommitQty()) == Double.doubleToLongBits(cpicmo.getFAuxQty())) {
                     complete = true;
                 }
             }
@@ -224,14 +228,14 @@
 
     /**
      * 搴撳瓨鐩樼偣
-     * @param FItemID 鐗╂枡鍐呯爜
+     * @param FNumber 鐗╂枡鍐呯爜
      * @param qty 鏁伴噺锛堟琛ㄧず鐩樼泩銆佽礋琛ㄧず鐩樹簭锛�
      */
-    public boolean checkStockEntity(Integer FItemID, Integer FEntryID, Double qty){
-        String sql = "insert [dbo].[StockCheckRecord] ([FItemID],[FEntryID], [CheckQty],[Fflag_rw],[Fflag_finish]) values ({0,number,#}, {1,number,#}, {2,number,#}, 0, 0);";
-        sql = MessageFormat.format(sql, FItemID, FEntryID, qty);
+    public boolean checkStockEntity(String FNumber, Double qty){
+        String sql = "insert [dbo].[StockCheckRecord] ([FNumber],[CheckQty],[Fflag_rw],[Fflag_finish],[sync_id]) values (''{0}'', {1,number,#}, 0, 0, -1);";
+        sql = MessageFormat.format(sql, FNumber, qty);
         if (erpSqlServer.update(sql) == 0) {
-            log.error("{}鏂板鐩樼偣璁板綍澶辫触", FItemID);
+            log.error("{}鏂板鐩樼偣璁板綍澶辫触", FNumber);
             return false;
         }
         return true;
@@ -281,21 +285,51 @@
         return erpSqlServer.update(sql) > 0;
     }
 
+    /* 鏌ヨerp涓勾琛∣utStockBill鏁版嵁 */
+    public List<OutStockBill> syncOutStock() {
+        return erpSqlServer.select("SELECT * FROM  xtyasrs_dual.dbo.OutStockBill", OutStockBill.class);
+    }
 
+    public List<OutStockBillEntry> syncOutStockDetail() {
+        return erpSqlServer.select("SELECT * FROM  xtyasrs_dual.dbo.OutStockBillEntry", OutStockBillEntry.class);
+    }
 
+    /* 鎴愬搧澧為噺鍑哄簱 */
+    public boolean incrementCPakOut(Integer FInterID, String Fnumber, Double increment, String FBillNo) {
+        String sql = "update OutStockbillEntry set FAuxCommitQty = (FAuxCommitQty + {0,number,#}) where 1=1 and Fnumber = ''{1}'' and FInterID = {2,number,#}";
+        sql = MessageFormat.format(sql, increment, Fnumber, FInterID);
+        if (erpSqlServer.update(sql) > 0) {
+            sql = "select * from OutStockbillEntry where 1=1 and Fnumber = ''{0}'' and FInterID = {1,number,#}";
+            sql = MessageFormat.format(sql, Fnumber, FInterID);
+            List<OutStockBillEntry> select = erpSqlServer.select(sql, OutStockBillEntry.class);
+            OutStockBillEntry outStockBillEntry = select.get(0);
+            boolean complete = false;
+            if (outStockBillEntry.getFQty().compareTo(BigDecimal.ZERO) == 1) {
+                if (outStockBillEntry.getFAuxCommitQty().compareTo(outStockBillEntry.getFQty()) > -1) {
+                    complete = true;
+                }
+            } else {
+                if (outStockBillEntry.getFAuxCommitQty().compareTo(outStockBillEntry.getFAuxQty()) > -1) {
+                    complete = true;
+                }
+            }
+            if (complete) {
+                if (!completeCPakOut(FBillNo)) {
+                    log.error("{}鍑哄簱鍗曟爣璁板畬鎴愬け璐�", FBillNo);
+                }
+            }
+            return true;
+        } else {
+            return false;
+        }
+    }
 
-
-
-
-
-
-
-
-
-
-
-
-
+    /* 鎴愬搧鍑哄簱鍗曟爣璁板畬鎴� */
+    private boolean completeCPakOut(String FBillNo){
+        String sql = "update OutStockbill set Fflag_finish = 1 where FBillNo = ''{0}''";
+        sql = MessageFormat.format(sql, FBillNo);
+        return erpSqlServer.update(sql) > 0;
+    }
 
 
     public boolean updateFnumber(Integer itemId, String FNumber){
@@ -310,4 +344,18 @@
         return erpSqlServer.update(sql) > 0;
     }
 
+    public List<CPICMO> queryErpCPICMO(String fbillNo, String fsourceBillNo) {
+        String sql = "select * from CPICMO";
+        if (!Cools.isEmpty(fbillNo) && Cools.isEmpty(fsourceBillNo)) {
+            sql = "select * from CPICMO where FBillNo = ''{0}''";
+            sql = MessageFormat.format(sql, fbillNo);
+        } else if (Cools.isEmpty(fbillNo) && !Cools.isEmpty(fsourceBillNo)) {
+            sql = "select * from CPICMO where FSourceBillNo = ''{0}''";
+            sql = MessageFormat.format(sql, fsourceBillNo);
+        } else if (!Cools.isEmpty(fbillNo) && !Cools.isEmpty(fsourceBillNo)) {
+            sql = "select * from CPICMO where FBillNo = ''{0}'' and FSourceBillNo = ''{1}''";
+            sql = MessageFormat.format(sql, fbillNo, fsourceBillNo);
+        }
+        return erpSqlServer.select(sql, CPICMO.class);
+    }
 }

--
Gitblit v1.9.1