From 17f0f4d8c8e19d14e5ef9b42999e65f98eba5f43 Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期三, 01 六月 2022 08:48:12 +0800
Subject: [PATCH] 生产计划平台 维护

---
 WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs |  105 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 89 insertions(+), 16 deletions(-)

diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
index c4d01bf..51bce5f 100644
--- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
@@ -98,6 +98,8 @@
             public long HSouceInterID = 0;//HSourceInterIDCol
             public long HSourceEntryID = 0;//HSourceEntryIDCol
             public int? 鍙枡鏁伴噺 = 0;//HBHGQtyCol
+            public int? 宸插彨鏂欐暟閲� = 0;//HBHGQtyCol
+            public int? 宸查厤閫佹暟閲� = 0;//HBHGQtyCol
             public double? 閫�鏂欐暟閲� = 0;//閫�鏂欐暟閲�
             public long HSTOCKID = 0;//HSTOCKID
             public string 閫�鏂欏師鍥� { get; set; }//閫�鏂欏師鍥�
@@ -183,6 +185,15 @@
                 {
                     if (listCa[i].HMaterialID != 0 && listCa[i].鍙枡鏁伴噺 > 0)
                     {
+                        if (listCa[i].鍙枡鏁伴噺 > listCa[i].璁″垝鍙戞枡鏁伴噺)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍙枡鏁伴噺澶т簬璁″垝鍙戞枡鏁伴噺!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
                         j = 1;
 
                         var txtHBillNo = DBUtility.ClsPub.CreateBillCode_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿
@@ -272,7 +283,7 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犱换浣曞彨鏂欐暟閲忥紝鏃犳硶鍙枡!";
+                    objJsonResult.Message = "鏃犱换浣曞彨鏂欐暟閲忔垨鍙枡鏁伴噺灏忎簬0锛屾棤娉曞彨鏂�!";
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -374,6 +385,27 @@
                 {
                     if (listCa[i].閫�鏂欐暟閲� > 0)
                     {
+                        if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        ds = oCN.RunProcReturn("select sum(d.HQty) HQty from JIT_CallGoodsBackRequestBillSub c inner join JIT_CallGoodsBackBillSub d on c.HInterID = d.HSourceInterID and c.HEntryID = d.HSourceEntryID and c.HMaterID = d.HMaterID " +
+                   $"where c.HSourceInterID={listCa[i].HSouceInterID} and c.HSourceEntryID ={listCa[i].HSourceEntryID} and c.HSourceBillNo = '{listCa[i].HSourceBillNo}' and c.HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub");
+
+                        if ((double.Parse(ds.Tables[0].Rows[0][0].ToString()==""?"0": ds.Tables[0].Rows[0][0].ToString()) +listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = $"宸茬粡閫�鏂欐暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
                         flag = AddICStockTuiBill(listCa[i], "666601", "涓嶈壇鍝侀��鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
                         j = 1;
                     }
@@ -382,7 +414,7 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犱换浣曢��鏂欐暟閲忥紝鏃犳硶閫�鏂�!";
+                    objJsonResult.Message = "鏃犱换浣曢��鏂欐暟閲忔垨閫�鏂欐暟閲忓皬浜�0锛屾棤娉曢��鏂�!";
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -419,14 +451,13 @@
         {
             try
             {
-              
-                    Int64 lngBillKey = listCa.HSouceInterID == 0 ? 0 : listCa.HSouceInterID;
-                    Int64 lngBillKeyEntry = listCa.HSourceEntryID == 0 ? 0 : listCa.HSourceEntryID;
-                    double HQty = (double)(listCa.閫�鏂欐暟閲� == 0 ? 0 : listCa.閫�鏂欐暟閲�);
-                    long HDeptWHID = listCa.HSTOCKID == 0 ? 0 : listCa.HSTOCKID;
-                    string HTuiResult = listCa.閫�鏂欏師鍥� == "" ? "" : listCa.閫�鏂欏師鍥�;
-                    var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿
-                    var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
+                Int64 lngBillKey = listCa.HSouceInterID == 0 ? 0 : listCa.HSouceInterID;
+                Int64 lngBillKeyEntry = listCa.HSourceEntryID == 0 ? 0 : listCa.HSourceEntryID;
+                double HQty = (double)(listCa.閫�鏂欐暟閲� == 0 ? 0 : listCa.閫�鏂欐暟閲�);
+                long HDeptWHID = listCa.HSTOCKID == 0 ? 0 : listCa.HSTOCKID;
+                string HTuiResult = listCa.閫�鏂欏師鍥� == "" ? "" : listCa.閫�鏂欏師鍥�;
+                var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿
+                var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
 
                 oCN.BeginTran();
                 //鎻掑叆瀛愯〃
@@ -465,12 +496,12 @@
             var _value = msg["msg"].ToString();
             string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
             string msg2 = sArray[0].ToString();
-            string user = sArray[1].ToString();
+            DBUtility.ClsPub.CurUserName = sArray[1].ToString();
             string HOrgID = sArray[2].ToString();
 
             try
             {
-                if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, user))
+                if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, DBUtility.ClsPub.CurUserName))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -491,6 +522,27 @@
                 {
                     if (listCa[i].閫�鏂欐暟閲� > 0)
                     {
+                        if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        ds = oCN.RunProcReturn("select sum(d.HQty) HQty from JIT_CallGoodsBackRequestBillSub c inner join JIT_CallGoodsBackBillSub d on c.HInterID = d.HSourceInterID and c.HEntryID = d.HSourceEntryID and c.HMaterID = d.HMaterID " +
+                   $"where c.HSourceInterID={listCa[i].HSouceInterID} and c.HSourceEntryID ={listCa[i].HSourceEntryID} and c.HSourceBillNo = '{listCa[i].HSourceBillNo}' and c.HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub");
+
+                        if ((double.Parse(ds.Tables[0].Rows[0][0].ToString() == "" ? "0" : ds.Tables[0].Rows[0][0].ToString()) + listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = $"宸茬粡閫�鏂欐暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
                         flag = AddICStockTuiBill(listCa[i], "666602", " 浣欓噺閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
                         j = 1;
                     }
@@ -541,12 +593,12 @@
             var _value = msg["msg"].ToString();
             string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
             string msg2 = sArray[0].ToString();
-            string user = sArray[1].ToString();
+            DBUtility.ClsPub.CurUserName = sArray[1].ToString();
             string HOrgID = sArray[2].ToString();
 
             try
             {
-                if (!DBUtility.ClsPub.Security_Log("JIT_BF_ComplementGoods_Edit", 1, false, user))
+                if (!DBUtility.ClsPub.Security_Log("JIT_BF_ComplementGoods_Edit", 1, false, DBUtility.ClsPub.CurUserName))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -567,6 +619,27 @@
                 {
                     if (listCa[i].閫�鏂欐暟閲� > 0)
                     {
+                        if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        ds = oCN.RunProcReturn("select sum(d.HQty) HQty from JIT_CallGoodsBackRequestBillSub c inner join JIT_CallGoodsBackBillSub d on c.HInterID = d.HSourceInterID and c.HEntryID = d.HSourceEntryID and c.HMaterID = d.HMaterID " +
+                   $"where c.HSourceInterID={listCa[i].HSouceInterID} and c.HSourceEntryID ={listCa[i].HSourceEntryID} and c.HSourceBillNo = '{listCa[i].HSourceBillNo}' and c.HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub");
+
+                        if ((double.Parse(ds.Tables[0].Rows[0][0].ToString() == "" ? "0" : ds.Tables[0].Rows[0][0].ToString()) + listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = $"宸茬粡閫�鏂欐暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
                         flag = AddICStockTuiBill(listCa[i], "666603", "鎶ュ簾閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
                         j = 1;
                     }
@@ -608,7 +681,7 @@
         }
         #endregion
 
-        #region 鐢熶骇鍙枡骞冲彴  鍙枡鎷f枡淇℃伅鏌ヨ
+        #region 鐢熶骇鍙枡骞冲彴  鍙枡鎷f枡淇℃伅鏌ヨ  涓婃煡/涓嬫煡
         //鏌ヨ鏉′欢
         public class HlpBill
         {
@@ -777,7 +850,7 @@
                 msg2 = msg2.Replace("\\", "");
                 msg2 = msg2.Replace("\n", "");
 
-                ds = oCN.RunProcReturn("select * from JIT_CallGoodsBackBillMain ", "JIT_CallGoodsBackBillMain ");
+                ds = oCN.RunProcReturn("select * from JIT_CallGoodsBackRequestBillMain where HISCheck=0 ", "JIT_CallGoodsBackRequestBillMain ");
 
                 if (ds.Tables[0].Rows.Count > 0)
                 {

--
Gitblit v1.9.1