From 50f766bdd428af1214c4b35b369695880e902137 Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期三, 14 六月 2023 13:30:59 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs |  279 +++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 208 insertions(+), 71 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
index c4c808d..336f225 100644
--- a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
+++ b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
@@ -7,6 +7,7 @@
 using System.Data;
 using System.Data.SqlClient;
 using System.Web.Http;
+using System.Windows.Forms;
 using WebAPI.Models;
 
 namespace WebAPI.Controllers
@@ -19,6 +20,7 @@
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
         DataSet ds;
         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+              
 
         #region[鏂板鍗曟嵁-淇濆瓨鎸夐挳]
         /// <summary>
@@ -37,6 +39,7 @@
             string msg3 = sArray[1].ToString();
             string msg4 = sArray[2].ToString();
             string msg5 = sArray[3].ToString();
+            string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О    
 
             string UserName = "";
             ListModels oListModels = new ListModels();
@@ -98,12 +101,18 @@
                 bool bResult;
                 if (msg5 == "xz")
                 {
+                    LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
                     // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                     bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+
+                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 else
                 {
+                    LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",淇敼宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
                     bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+
+                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "淇敼宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 if (bResult)
                 {
@@ -391,6 +400,7 @@
             string msg3 = sArray[1].ToString();
             string msg4 = sArray[2].ToString();
             string msg5 = sArray[3].ToString();
+            string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О    
 
             string UserName = "";
             ListModels oListModels = new ListModels();
@@ -449,8 +459,17 @@
                             oBill.omodel.HQty = HPlanQty;
                         }
 
+                        for (int j = 0; j < oBill.DetailColl.Count; j++)
+                        {
+                            oBill.DetailColl[j].HRelationQty_In = 0;
+                            oBill.DetailColl[j].HRelationQty_Out = 0;
+                            oBill.DetailColl[j].HRelationQty_Bad = 0;
+                        }
+
                         //淇濆瓨瀹屾瘯鍚庡鐞�
                         bool bResult;
+                        LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
+                        oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
 
                         bResult = oBill.AddBill(ref sReturn);
                         if (bResult)
@@ -498,6 +517,7 @@
             string msg4 = sArray[2].ToString();//宸ヨ壓璺嚎
             string msg5 = sArray[3].ToString();//绫诲瀷
             string msg6 = sArray[4].ToString();//鐢ㄦ埛
+            string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О    
 
             ListModels oListModels = new ListModels();
 
@@ -571,6 +591,9 @@
                     bool bResult=false;
                     if (msg5 == "2")
                     {
+                        LogService.Write("鐢ㄦ埛:" + msg6 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
+                        oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg6 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+
                         bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                     }
                     oBill.DetailColl.Clear();
@@ -779,7 +802,7 @@
                                                 宸ヤ綔涓績 HCenterName,HSupID,渚涘簲鍟嗕唬鐮� HSupNumber,渚涘簲鍟� HSupName,isEntrust HSupFlag,璁″垝鏁伴噺 HQty,鍔犲伐鍗曚环 HOutPrice, 琛ㄤ綋澶囨敞 HRemark,
                                             杩涚珯鍏宠仈鏁伴噺 HRelationQty_In,鍑虹珯鍏宠仈鏁伴噺 HRelationQty_Out,濮斿宸ュ崟鏁伴噺 HRelationQty_WWOrder,涓嶅悎鏍兼暟閲� HRelationQty_Bad,瓒呴姣斾緥 HOverRate,
                                             鑹巼 HPassRate,绱鑹巼 HSumPassRate,鍥剧焊缂栧彿 HPicNum,鏈伐搴忕‘璁よ褰� HProcCheckNote,宸ヨ壓鍙傛暟 HTechnologyParameter,HDeptID,
-                                            鍔犲伐杞﹂棿浠g爜 HDeptNumber,鍔犲伐杞﹂棿 HDeptName
+                                            鍔犲伐杞﹂棿浠g爜 HDeptNumber,鍔犲伐杞﹂棿 HDeptName,鍑虹珯鎶ュ簾鍏宠仈鏁伴噺 HRelationQty_OutBad
                                             from h_v_Sc_ProcessExchangeBillQuerySub");
                 ds = oCN.RunProcReturn(sql+ " where hmainid="+ HInterID + "  order by cast(娴佹按鍙� as int) ", "h_v_Sc_ProcessExchangeBillQuerySub");
                 objJsonResult.code = "0";
@@ -805,7 +828,7 @@
         /// <returns></returns>
         [Route("Sc_ProcessExchangeBill/DeltetProcessExchangeBillByID")]
         [HttpGet]
-        public object DeltetProcessExchangeBillByID(string HInterID,int HPRDORGID, string user)
+        public object DeltetProcessExchangeBillByID(string HInterID, int HPRDORGID, string user)
         {
             //缂栬緫鏉冮檺
             if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Drop", 1, false, user))
@@ -817,84 +840,103 @@
                 return objJsonResult;
             }
 
-            Int64 lngBillKey = 0;
-            lngBillKey = DBUtility.ClsPub.isLong(HInterID);
-            if (lngBillKey == 0)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鍗曟嵁ID涓虹┖锛�";
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-
-            //鍒犻櫎鍓嶅垽鏂叧鑱旀暟閲�
-            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
-            DataSet ds;
-            ds = oCn.RunProcReturn("select ct from (  " +
-                          "  select 1 ct from Sc_StationInBillMain Where HProcExchInterID=" + lngBillKey + " " +
-                          "  union all " +
-                          "  select 1 from Sc_StationOutBillMain Where HProcExchInterID=" + lngBillKey + " ) as a  ", "Sc_ProcExchReportSub");
-            if (ds.Tables[0].Rows.Count != 0)
-            {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "娴佽浆鍗″凡缁忔湁涓嬫父杩涘嚭绔欏崟鍚庯紝涓嶅厑璁稿垹闄わ紒";
-                objJsonResult.data = null;
-                return objJsonResult;
-            }
-
+            string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О    
 
             DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill();
-            DBUtility.ClsPub.HOrgID = HPRDORGID;
-            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
+
+            string[] HBillNo = HInterID.Split(',');
+
+            string HBillNo_S = "";
+
+            foreach (var item in HBillNo)
             {
-                string sReturn = "";
-                if (oSystemParameter.ShowBill(ref sReturn))
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(item);
+
+                DBUtility.ClsPub.HOrgID = HPRDORGID;
+                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
                 {
-                    if (oSystemParameter.omodel.Sc_ProcessExchangeBill_DeleterAndMakerMustSame == "Y")
+                    if (lngBillKey == 0)
                     {
-                        if (oBill.omodel.HMaker != user)
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙�:"+ oBill .omodel.HBillNo+ "鍗曟嵁ID涓虹┖锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    //鍒犻櫎鍓嶅垽鏂叧鑱旀暟閲�
+                    SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+                    DataSet ds;
+                    ds = oCn.RunProcReturn("select ct from (  " +
+                                  "  select 1 ct from Sc_StationInBillMain Where HProcExchInterID=" + lngBillKey + " " +
+                                  "  union all " +
+                                  "  select 1 from Sc_StationOutBillMain Where HProcExchInterID=" + lngBillKey + " ) as a  ", "Sc_ProcExchReportSub");
+                    if (ds.Tables[0].Rows.Count != 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "娴佽浆鍗″凡缁忔湁涓嬫父杩涘嚭绔欏崟鍚庯紝涓嶅厑璁稿垹闄わ紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    string sReturn = "";
+                    if (oSystemParameter.ShowBill(ref sReturn))
+                    {
+                        if (oSystemParameter.omodel.Sc_ProcessExchangeBill_DeleterAndMakerMustSame == "Y")
                         {
-                            objJsonResult.code = "0";
-                            objJsonResult.count = 0;
-                            objJsonResult.Message = "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒";
-                            objJsonResult.data = null;
-                            return objJsonResult;
+                            if (oBill.omodel.HMaker != user && (user != "admin" && user != "Admin"))
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
                         }
                     }
-                }
 
 
-                if (oBill.omodel.HBillStatus > 1)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鍗曟嵁褰撳墠澶勪簬涓嶈兘鍒犻櫎鐘舵��,涓嶈兘鍒犻櫎锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-                if (oBill.omodel.HChecker != "")
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
+                    if (oBill.omodel.HBillStatus > 1)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍗曟嵁褰撳墠澶勪簬涓嶈兘鍒犻櫎鐘舵��,涓嶈兘鍒犻櫎锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
 
-                bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
-                if (IsDete)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 1;
-                    objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
-                    objJsonResult.data = null;
-                    return objJsonResult;
+                    if (oBill.omodel.HChecker != "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    HBillNo_S += oBill.omodel.HBillNo + ",";
                 }
                 else
                 {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁鏈壘鍒�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
 
+            HBillNo_S = HBillNo_S.Substring(0, HBillNo_S.Length - 1);
+            LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鍒犻櫎宸ュ簭娴佽浆鍗″崟鎹�:" + HBillNo_S);
+
+            oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鍒犻櫎宸ュ簭娴佽浆鍗″崟鎹細" + HBillNo_S + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鍒犻櫎鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+
+            foreach (var item in HBillNo)
+            {
+                bool IsDete = oBill.DeleteBill(long.Parse(item), ref DBUtility.ClsPub.sExeReturnInfo);
+                if (!IsDete)
+                {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
                     objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
@@ -902,14 +944,22 @@
                     return objJsonResult;
                 }
             }
-            else
+
+            if (oSystemParameter.omodel.WMS_CampanyName == "鐟炰笌绁�")
             {
-                objJsonResult.code = "0";
-                objJsonResult.count = 0;
-                objJsonResult.Message = "鍗曟嵁鏈壘鍒�";
-                objJsonResult.data = null;
-                return objJsonResult;
+                ds = oCN.RunProcReturn("select  * from Sc_ProcessExchangeBillMain where HICMOInterID='" + oBill.omodel.HICMOInterID + "' and HICMOEntryID='" + oBill.omodel.HICMOEntryID + "'", "Sc_ProcessExchangeBillMain");
+
+                if (ds.Tables[0].Rows.Count == 0)
+                {
+                    oCN.RunProc("update AIS20220308151944..T_PRD_MOENTRY  set F_BSV_TEXT2 = '鍚�' where  FID='" + oBill.omodel.HICMOInterID + "' and FENTRYID='" + oBill.omodel.HICMOEntryID + "'");
+                }
             }
+
+            objJsonResult.code = "0";
+            objJsonResult.count = 1;
+            objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
+            objJsonResult.data = null;
+            return objJsonResult;
         }
         #endregion
 
@@ -1219,5 +1269,92 @@
         }
 
         #endregion
+
+
+        #region 鍗曟嵁鍙樻洿 椤甸潰鍒濆鍖�
+        [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_init")]
+        [HttpGet]
+        public object GetProcessExchangeBillMain_Change_init(string HInterID)
+        {
+            try
+            {
+                if (string.IsNullOrEmpty(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "Exception锛丠InterID涓嶈兘涓虹┖";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+                ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillQuery  where hmainid = " + HInterID + " ", "h_v_Sc_ProcessExchangeBillQuery");
+
+                if (ds==null||ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "Exception锛佷笉瀛樺湪宸ュ簭娴佽浆鍗�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍗曟嵁鍙樻洿 淇濆瓨
+        [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_save")]
+        [HttpGet]
+        public object GetProcessExchangeBillMain_Change_save(string HInterID,string HMaterModel2)
+        {
+            try
+            {
+                if (string.IsNullOrEmpty(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "Exception锛丠InterID涓嶈兘涓虹┖";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+                oCN.BeginTran();
+                oCN.RunProc("update Sc_ProcessExchangeBillMain set HMaterModel2 = '" + HMaterModel2 + "' where HInterID = " + HInterID + "");
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1