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