From b81dec285551c7e90c5b13877466f54d9e32bd6a Mon Sep 17 00:00:00 2001 From: yangle <admin@YINMOU> Date: 星期四, 31 八月 2023 10:44:01 +0800 Subject: [PATCH] 对色记录 试样记录 删除 审核 查询 --- WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs | 172 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 162 insertions(+), 10 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs index ae497c1..fbe4b72 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs @@ -7,6 +7,7 @@ using System.Collections.Generic; using System.Data; using System.Data.SqlClient; +using System.Diagnostics; using System.IO; using System.Web; using System.Web.Http; @@ -20,7 +21,7 @@ { public DBUtility.ClsPub.Enum_BillStatus BillStatus; Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); - + public DAL.ClsSc_ICMOBill BillOld = new DAL.ClsSc_ICMOBill(); private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; @@ -40,6 +41,7 @@ //鍙嶅簭鍒楀寲 string msg2 = "[" + sArray[0].ToString() + "]"; string user = sArray[1].ToString();//鐢ㄦ埛鍚� + string OperationType = sArray[2].ToString();//绫诲瀷 string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� @@ -52,6 +54,8 @@ return objJsonResult; } + Stopwatch sw = new Stopwatch(); + sw.Start();//寮�濮嬭鏃� List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg2); long HMainInterID = 0; @@ -64,8 +68,8 @@ int HBillStatus = 0; string HMaker = user;//鍒跺崟浜� string HMouldNum = list[0].HMouldNum;//妯$┐鍙� - int HYear = 2021; - double HPeriod = 1; + int HYear = DateTime.Now.Year; + double HPeriod = DateTime.Now.Month; string HRemark = list[0].HRemark;//澶囨敞 string HSourceName = list[0].HSourceName;//鐢熶骇璧勬簮鍚嶇О double HPieceQty = list[0].HPieceQty;//杩涚珯PCS鏁� @@ -121,6 +125,11 @@ long HQCCheckID = list[0].HQCCheckID;//妫�楠屽憳ID long HPRDOrgID = list[0].HPRDOrgID;//缁勭粐ID double HmaterOutqty = list[0].HmaterOutqty;//鐧藉澂鍙戝竷 + double HProcPriceRate = list[0].HProcPriceRate;//宸ヤ环绯绘暟 + int HTemporaryAreaID = list[0].HTemporaryAreaID;//鏆傛斁鍖� + + LogService.Write($"1.瀛楁璧嬪�硷紝鐢ㄦ椂" + sw.Elapsed ); + //鍗曟嵁瀹屾暣鎬у垽鏂� if (HProcExchInterID <= 0) { @@ -221,6 +230,18 @@ } } } + //鍒ゆ柇瀹㈡埛涓虹憺涓庣ズ + else if (oSystemParameter.omodel.WMS_CampanyName == "鐟炰笌绁�") + { + if (HEmpID == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎿嶄綔鍛樻病鏈夐�夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } } //if (HCenterID == 0) @@ -280,7 +301,11 @@ // objJsonResult.data = null; // return objJsonResult; //} + + //LogService.Write($"2.鏉′欢鍒ゆ柇锛岀敤鏃�" + sw.Elapsed); + var num = 0; + //LogService.Write($"3.浜嬪姟寮�濮嬶紝鐢ㄦ椂" + sw.Elapsed); //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙� oCN.BeginTran(); @@ -296,6 +321,7 @@ objJsonResult.data = null; return objJsonResult; } + LogService.Write($"3.1锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("Insert Into Sc_StationOutBillMain " + "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate,HMouldNum" + ",HYear,HPeriod,HRemark,HSourceName,HPieceQty,HWasterQty,HPlanPieceQty,HBadPNL" + @@ -305,9 +331,9 @@ ",HSupID,HQty,HPrice,HMoney,HBadCount,HCenterID,HProcNo,HOrderProcNO,HSourceNameList" + ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" + ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" + - ",HmaterOutqty" + + ",HmaterOutqty,HProcPriceRate,HTemporaryAreaID" + ") " + - " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" + + " values('" + BillType + "','" + (OperationType == "5" ? "SUB" : HBillSubType) + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" + "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL + "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID + ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID + "," + HPayProcID + @@ -315,8 +341,9 @@ "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HBadCount + "," + HCenterID + "," + HProcNo + ",'" + HOrderProcNO + "'" + ",'" + HSourceNameList + "'" + "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) + "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID + - ","+ HmaterOutqty + ") "); + ","+ HmaterOutqty + "," + HProcPriceRate + ","+ HTemporaryAreaID + ") "); + LogService.Write($"4.鏂板缁撴潫锛岀敤鏃�" + sw.Elapsed); LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭鍑虹珯鍗曟嵁:" + HBillNo); oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板宸ュ簭鍑虹珯鍗曟嵁锛�" + HBillNo + "','LMES-宸ュ簭鍑虹珯妯″潡','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo); } @@ -346,6 +373,7 @@ ",HQty=" + HQty + ",HDSQty=" + HDSQty + ",HChongQty=" + HChongQty + + ",HTemporaryAreaID=" + HTemporaryAreaID + ",HMouldNum='" + HMouldNum + "'" + ",HSourceNameList='" + HSourceNameList + "'" + ",HWasterQty=" + HWasterQty + @@ -366,6 +394,7 @@ } //涓昏〃 + //LogService.Write($"5.绯荤粺鎺у埗鏌ヨ鍒ゆ柇锛岀敤鏃�" + sw.Elapsed); ds = oCN.RunProcReturn("exec h_p_MES_StationOutBill_QtyCtrl " + HInterID + "", "h_p_MES_StationOutBill_QtyCtrl"); if (ds == null) { @@ -376,6 +405,7 @@ objJsonResult.data = null; return objJsonResult; } + //LogService.Write($"5.1锛岀敤鏃�" + sw.Elapsed); if (ds.Tables[0].Rows.Count == 0) { oCN.RollBack(); @@ -385,6 +415,7 @@ objJsonResult.data = null; return objJsonResult; } + //LogService.Write($"5.2锛岀敤鏃�" + sw.Elapsed); if (ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2") { oCN.RollBack(); @@ -394,9 +425,13 @@ objJsonResult.data = null; return objJsonResult; } + //LogService.Write($"6.鍒ゆ柇缁撴潫锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Out " + HInterID + ","+ num + ""); + //LogService.Write($"6.1锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("exec h_p_Mes_ProcessExchangeChangeStatus " + HInterID + " "); + //LogService.Write($"6.2锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("exec h_p_Mes_StationOutBillBackBarCode " + HInterID + " "); + //LogService.Write($"7.瀛樺偍杩囩▼缁撴潫锛岀敤鏃�" + sw.Elapsed); //鍒ゆ柇鏄惁鏄� 鏈亾宸ュ簭 ds1 = oCN.RunProcReturn(" select HLastProc,HFstProc from Sc_ProcessExchangeBillMain a " + " inner join Sc_ProcessExchangeBillSub b on a.HInterID=b.HInterID " + @@ -414,8 +449,10 @@ //鍒ゆ柇鏈亾 鐢熶骇姹囨姤姹囨姤 鏄惁鍕鹃�� if (oSystemParameter.omodel.MES_StationOutBill_LastAutoICMOReport == "Y") //绯荤粺鍙傛暟 { + //LogService.Write($"7.1锛岀敤鏃�" + sw.Elapsed); //鍚屾鐢熶骇姹囨姤鍗� - objJsonResult= (json)SaveICMOReportBill(HInterID.ToString(), user, HBillNo, HPRDOrgID.ToString()); + objJsonResult = (json)SaveICMOReportBill(HInterID.ToString(), user, HBillNo, HPRDOrgID.ToString()); + //LogService.Write($"7.2锛岀敤鏃�" + sw.Elapsed); if (objJsonResult.count == 0) { oCN.RollBack(); @@ -425,12 +462,15 @@ objJsonResult.data = null; return objJsonResult; } + //LogService.Write($"8.鐢熶骇姹囨姤缁撴潫锛岀敤鏃�" + sw.Elapsed); } //鍒ゆ柇鏈亾 鐢熶骇鍏ュ簱 鏄惁鍕鹃�� else if (oSystemParameter.omodel.MES_StationOutBill_AutoStockIn == "Y") //绯荤粺鍙傛暟 { + //LogService.Write($"8.1锛岀敤鏃�" + sw.Elapsed); //鍚屾鐢熶骇鍏ュ簱鍗� - objJsonResult=(json)SaveProcdutInBill(HBillNo); + objJsonResult =(json)SaveProcdutInBill(HBillNo); + //LogService.Write($"8.2锛岀敤鏃�" + sw.Elapsed); if (objJsonResult.count == 0) { oCN.RollBack(); @@ -440,14 +480,15 @@ objJsonResult.data = null; return objJsonResult; } + //LogService.Write($"9.鐢熶骇鍏ュ簱缁撴潫锛岀敤鏃�" + sw.Elapsed); } } } } - - + + //LogService.Write($"10.浜嬪姟缁撴潫锛岀敤鏃�" + sw.Elapsed); oCN.Commit(); string sReturn = ""; if (oSystemParameter.ShowBill(ref sReturn) == true) @@ -461,6 +502,8 @@ objJsonResult.Verify = "N"; } } + sw.Stop();//缁撴潫璁℃椂 + LogService.Write($"11.鍙傛暟鏌ヨ缁撴潫,鏂板缁撴潫锛岀敤鏃�" + sw.Elapsed); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; @@ -2404,6 +2447,115 @@ } } + + #region 宸ュ簭鍑虹珯鍏抽棴/鍙嶅叧闂姛鑳� + [Route("Cj_StationOutBill/CloseCj_StationOutBill")] + [HttpGet] + public object CloseCj_StationOutBill(string HInterID, int Type, string user) + { + try + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Close", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳潈闄愬叧闂�!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (string.IsNullOrWhiteSpace(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + ClsPub.CurUserName = user; + BillOld.MvarItemKey = "Sc_StationOutBillMain"; + oCN.BeginTran();//寮�濮嬩簨鍔� + + //Type 1 鍏抽棴 2 鍙嶅叧闂� + if (Type == 1) + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴 + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶉渶瑕佸啀鍏抽棴!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鍏抽棴鍗曟嵁 + if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂� + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插弽鍏抽棴!涓嶉渶瑕佸啀鍙嶅叧闂�!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鍙嶅叧闂崟鎹� + if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + } + + oCN.Commit();//鎻愪氦浜嬪姟 + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鎵ц鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; ; + + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + + //鏄惁琚叧鑱� public bool Cj_StationInBillisUse(Int64 lngBillKey, ref string sReturn) { -- Gitblit v1.9.1