From c2ef1e65edb97ddbd00cc130e9f4dd9d47e0252d Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期三, 07 八月 2024 16:22:40 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/CJGL/Cj_SingleStationController.cs |  126 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 114 insertions(+), 12 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
index 4800450..1ec1af4 100644
--- a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
@@ -682,8 +682,26 @@
                 oCN.RunProc($@"insert into Sc_StationOutBillSub_SN(HInterID,HBillNo_bak,HEntryID,HBarCode,HBarCodeQty,HMakeTime,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney)
 values({HInterID}, '{HBillNo}', {(ds.Tables[0].Rows.Count == 0 ? 1 : int.Parse(ds.Tables[0].Rows[0]["HEntryID"].ToString()) + 1)}, '{omodel.HBarCode_P}', 1, GETDATE(), '', " + HProcExchInterID + ","+ HProcExchEntryID + ", '"+ HProcExchBillNo + "', '', 0, 0)");
 
+                //鎶婃潯鐮佸啓鍏ユ棩蹇楅噷闈�
+                LogService.CustomWriteLog("鏉$爜:" + omodel.HBarCode_P + ",宸ュ簭:"+ HProcID + ",鍑虹珯鏃堕棿:" + DateTime.Now, "TM" + DateTime.Now.ToString("yyyy-MM-dd"));
+
                 //鍙嶅啓宸ュ簭鍑虹珯鍗曠殑鍚堟牸鏁伴噺
                 oCN.RunProc("update Sc_StationOutBillMain set HQty+=1  where HProcExchInterID='" + HProcExchInterID + "' and HProcExchEntryID=" + HProcExchEntryID+ " and HInterID=" + HInterID);
+
+
+                ds = oCN.RunProcReturn($@"select (b.HQty -sum(isnull(ou.HQty,0))-sum(isnull(ou.HBadCount,0))) HQty from Sc_ProcessExchangeBillSub b WITH(NOLOCK)
+left join Sc_StationOutBillMain ou WITH(NOLOCK) on b.HInterID=ou.HProcExchInterID and b.HEntryID=ou.HProcExchEntryID
+where b.HInterID={HProcExchInterID} and b.HEntryID={HProcExchEntryID}
+group by b.HInterID,b.HEntryID,b.HQty", "Sc_ProcessExchangeBill_Out");
+
+                if (double.Parse(ds.Tables[0].Rows[0][0].ToString()) < 0) {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍑虹珯鏁伴噺瓒呰繃娴佽浆鍗℃暟閲�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
 
                 oCN.Commit();
 
@@ -718,7 +736,7 @@
                 {
                     if (HBarCode.Length == 29)
                     {
-                        string str1 = HBarCode.Substring(23, 3);
+                        string str1 = HBarCode.Substring(18, 8);
 
                         DataSet dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
 left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
@@ -727,11 +745,27 @@
 
                         if (dataSet.Tables[0].Rows.Count == 0)
                         {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鏉$爜涓庢祦杞崱涓嶅瓨鍦ㄥ搴斿叧绯�!";
-                            objJsonResult.data = null;
-                            return objJsonResult;
+                            str1 = HBarCode.Substring(23, 3);
+
+                            dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
+left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
+left join Xt_ORGANIZATIONS o WITH(NOLOCK) on a.HPRDORGID=o.HItemID 
+where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID=" + HOrgID, "Sc_ProcessExchangeBillMain");
+
+                            if (dataSet.Tables[0].Rows.Count == 0)
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "鏉$爜涓庢祦杞崱涓嶅瓨鍦ㄥ搴斿叧绯�!";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                            else
+                            {
+                                ClsPub.CurUserName = user;
+                                //鏉$爜鐢熸垚
+                                return get_HBardBillSave(HProcExchBillNo, HBarCode);
+                            }
                         }
                         else {
                             ClsPub.CurUserName = user;
@@ -750,7 +784,7 @@
                 }
                 else {
                    
-                    string str1 = HBarCode.Substring(23, 3);
+                    string str1 = HBarCode.Substring(18, 8);
 
                     DataSet dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
 left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
@@ -759,11 +793,21 @@
 
                     if (dataSet.Tables[0].Rows.Count == 0)
                     {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "鏉$爜涓庢祦杞崱涓嶅瓨鍦ㄥ搴斿叧绯�!";
-                        objJsonResult.data = null;
-                        return objJsonResult;
+                        str1 = HBarCode.Substring(23, 3);
+
+                        dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
+left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
+left join Xt_ORGANIZATIONS o WITH(NOLOCK) on a.HPRDORGID=o.HItemID 
+where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID=" + HOrgID, "Sc_ProcessExchangeBillMain");
+
+                        if (dataSet.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鏉$爜涓庢祦杞崱涓嶅瓨鍦ㄥ搴斿叧绯�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
                     }
 
                     if (ds.Tables[0].Rows[0]["HStatus"].ToString() != "")
@@ -1502,9 +1546,28 @@
 //                        }
 
                         oCN.RunProc("update Gy_BarCodeBill set HStatus='' where HBarCode='" + model.HBarCode + "'");
+
+                        DataSet dataSet = oCN.RunProcReturn($"select top 1 HInterID  from Sc_StationOutBillMain where HProcExchInterID={subLsit[0].HProcExchInterID} and HProcExchEntryID={subLsit[0].HProcExchEntryID} and HBadCount>0", "Sc_StationOutBillMain");
+
+                        if (dataSet.Tables[0].Rows.Count > 0)
+                        {
+                            string HOutInterID = dataSet.Tables[0].Rows[0][0].ToString();
+
+                            oCN.RunProc("update Sc_StationOutBillMain set HBadCount-=1 where HInterID='" + HOutInterID + "'");
+                        }
+                        else
+                        {
+                            oCN.RollBack();
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "淇濆瓨澶辫触,褰撳墠娴佽浆鍗″綋鍓嶅伐搴忕殑鍑虹珯鍗曟病鏈変笉鑹暟閲�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
                     }
                 }
                 else {
+                    oCN.RollBack();
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
                     objJsonResult.Message = "淇濆瓨澶辫触,鏃犵粨鏋滐紒";
@@ -1851,6 +1914,45 @@
         }
         #endregion
 
+        #region 宸ュ簭鍗曞搧杩囩珯 杩芥函鎶ヨ〃 閰嶄欢娓呭崟鏌ヨ
+        [Route("Sc_AssemblyBill/AssemblyBillAndStationInBillList_SN")]
+        [HttpGet]
+        public object AssemblyBillAndStationInBillList_SN(string sWhere)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                string sql1 = "exec h_p_Sc_AssemblyBillAndStationInBillList_SN ";
+                string sql = sql1 + sWhere;
+                ds = oCN.RunProcReturn(sql, "h_p_Sc_AssemblyBillAndStationInBillList_SN");
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region 宸ュ簭鍗曞搧杩囩珯 閫嗗悜杩芥函鎶ヨ〃 娴佽浆鍗℃煡璇�
         [Route("Cj_SingleStation/Sc_ProcessExchangeBillMainList")]
         [HttpGet]

--
Gitblit v1.9.1