From 3b083cf02d0998dc456da7cfc88287cf6f78d736 Mon Sep 17 00:00:00 2001 From: zrg <z18737863051@163.com> Date: 星期二, 09 四月 2024 17:21:31 +0800 Subject: [PATCH] 不良品评审结论单 --- WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs | 608 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 528 insertions(+), 80 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs index fbe4b72..2dbbae2 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs @@ -44,15 +44,30 @@ string OperationType = sArray[2].ToString();//绫诲瀷 string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О - //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� - if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Edit", 1, false, user)) + if (OperationType == "5") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鏃犵紪杈戞潈闄�!"; - objJsonResult.data = null; - return objJsonResult; + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曟棤缂栬緫鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } } + else { + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍑虹珯鍗曟棤缂栬緫鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } + } + Stopwatch sw = new Stopwatch(); sw.Start();//寮�濮嬭鏃� @@ -307,6 +322,28 @@ var num = 0; //LogService.Write($"3.浜嬪姟寮�濮嬶紝鐢ㄦ椂" + sw.Elapsed); + //淇濆瓨鍓嶆帶鍒�========================================= + string HBillNote = ""; + ds = oCN.RunProcReturn("Exec h_p_Sc_StationOutBill_BeforeSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "','" + HBillNote + "',1 ", " h_p_Sc_StationOutBill_BeforeSaveCtrl "); + if (ds == null) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨鍓嶅垽鏂け璐ワ紒"; + objJsonResult.data = null; + return objJsonResult; + } + if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); + objJsonResult.data = null; + return objJsonResult; + } + //========================================================= + + //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙� oCN.BeginTran(); if ("Add".Equals(eventType)) @@ -394,7 +431,7 @@ } //涓昏〃 - //LogService.Write($"5.绯荤粺鎺у埗鏌ヨ鍒ゆ柇锛岀敤鏃�" + sw.Elapsed); + LogService.Write($"5.绯荤粺鎺у埗鏌ヨ鍒ゆ柇锛岀敤鏃�" + sw.Elapsed); ds = oCN.RunProcReturn("exec h_p_MES_StationOutBill_QtyCtrl " + HInterID + "", "h_p_MES_StationOutBill_QtyCtrl"); if (ds == null) { @@ -405,7 +442,7 @@ objJsonResult.data = null; return objJsonResult; } - //LogService.Write($"5.1锛岀敤鏃�" + sw.Elapsed); + LogService.Write($"5.1锛岀敤鏃�" + sw.Elapsed); if (ds.Tables[0].Rows.Count == 0) { oCN.RollBack(); @@ -415,7 +452,7 @@ objJsonResult.data = null; return objJsonResult; } - //LogService.Write($"5.2锛岀敤鏃�" + sw.Elapsed); + LogService.Write($"5.2锛岀敤鏃�" + sw.Elapsed); if (ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2") { oCN.RollBack(); @@ -425,17 +462,18 @@ objJsonResult.data = null; return objJsonResult; } - //LogService.Write($"6.鍒ゆ柇缁撴潫锛岀敤鏃�" + sw.Elapsed); + LogService.Write($"6.鍒ゆ柇缁撴潫锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Out " + HInterID + ","+ num + ""); - //LogService.Write($"6.1锛岀敤鏃�" + sw.Elapsed); + LogService.Write($"6.1锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("exec h_p_Mes_ProcessExchangeChangeStatus " + HInterID + " "); - //LogService.Write($"6.2锛岀敤鏃�" + sw.Elapsed); + LogService.Write($"6.2锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("exec h_p_Mes_StationOutBillBackBarCode " + HInterID + " "); - //LogService.Write($"7.瀛樺偍杩囩▼缁撴潫锛岀敤鏃�" + sw.Elapsed); + 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 " + " Where a.HInterID=" + HProcExchInterID + " and b.HEntryID=" + HProcExchEntryID + " ", "Sc_ProcessExchangeBillMain"); + LogService.Write($"7.1.鏌ヨ锛岀敤鏃�" + sw.Elapsed); //鍒ゆ柇鏄惁鏄柊澧� if ("Add".Equals(eventType)) { @@ -486,9 +524,33 @@ } } } + LogService.Write($"7.2.鏌ヨ锛岀敤鏃�" + sw.Elapsed); + + //=========================淇濆瓨鍚庢帶鍒� + DataSet ds2 = oCN.RunProcReturn("Exec h_p_Sc_StationOutBill_AfterSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "',1 ", "h_p_Sc_StationOutBill_AfterSaveCtrl"); + if (ds2 == null) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨鍚庢帶鍒跺垽鏂け璐ワ紒"; + objJsonResult.data = null; + return objJsonResult; + + } + if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0") + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触2锛�" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]); + objJsonResult.data = null; + return objJsonResult; + } + //============================ - //LogService.Write($"10.浜嬪姟缁撴潫锛岀敤鏃�" + sw.Elapsed); + LogService.Write($"10.浜嬪姟缁撴潫锛岀敤鏃�" + sw.Elapsed); oCN.Commit(); string sReturn = ""; if (oSystemParameter.ShowBill(ref sReturn) == true) @@ -583,7 +645,7 @@ long HMaterID = listSub[i].HMaterID;//浜у搧ID long HProcID = listSub[i].HProcID;//褰撳墠宸ュ簭ID double HICMOQty = listSub[i].HICMOQty;//浠诲姟鍗曟暟閲� - double HPlanQty = list[0].HPlanQty;//绉讳氦PNL鏁� + double HPlanQty = listSub[i].HPlanQty;//绉讳氦PNL鏁� DateTime HStationOutTime = list[0].HStationOutTime;//姹囨姤鏃堕棿 long HSourceID = listSub[i].HSourceID;//鐢熶骇璧勬簮ID long HPayProcID = list[0].HPayProcID;//鏍哥畻宸ュ簭ID @@ -606,10 +668,11 @@ string HProcNo = listSub[i].HProcNo;//娴佹按鍙� string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙� string HSourceNameList = list[0].HSourceNameList;//璁惧娓呭崟 - long HMainSourceInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D - string HMainSourceBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿 + long HMainSourceInterID = listSub[0].HMainSourceInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D + long HMainSourceEntryID = listSub[0].HMainSourceEntryID;//閫掑叆type寰楀埌鐨勫崟鎹瓙ID + string HMainSourceBillNo = listSub[0].HMainSourceBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿 string HMainSourceBillType = "3790"; - bool HLastSubProc = list[0].HLastSubProc;//杞笅宸ュ簭 + bool HLastSubProc = listSub[0].HLastSubProc;//杞笅宸ュ簭 long HEmpID2 = list[0].HEmpID2;//鎿嶄綔鍛�2ID long HEmpID3 = list[0].HEmpID3;//鎿嶄綔鍛�3ID long HEmpID4 = list[0].HEmpID4;//鎿嶄綔鍛�4ID @@ -644,7 +707,7 @@ ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate,HSourceID2,HSourceID3,HSourceID4,HSourceID5" + ",HSupID,HQty,HPrice,HMoney,HBadCount,HCenterID,HProcNo,HOrderProcNO,HSourceNameList" + ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" + - ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" + + ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID,HMainSourceEntryID" + ") " + " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" + "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL + @@ -653,7 +716,7 @@ "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" + "," + HSourceID2 + "," + HSourceID3 + "," + HSourceID4 + "," + HSourceID5 + "," + 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 + + "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID + "," + HMainSourceEntryID + ") "); } else @@ -1409,12 +1472,12 @@ //閫掑叆鐗╂枡淇℃伅 杩斿洖鏈畬鍏ㄦ眹鎶ョ殑娴佽浆鍗� [Route("LEMS/Sc_StationOutBill_Mul_RYQ")] [HttpGet] - public object Sc_StationOutBill_Mul_RYQ(String HMaterName, Int64 HOrgID) + public object Sc_StationOutBill_Mul_RYQ(String HMaterName,string HProcNumber, Int64 HOrgID) { try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); - DataSet ds = oCN.RunProcReturn("exec h_p_CJGXPLHB_Query '" + HMaterName + "'," + HOrgID + "", "h_p_CJGXPLHB_Query"); + DataSet ds = oCN.RunProcReturn("exec h_p_CJGXPLHB_Query '" + HMaterName + "'," + HOrgID + ",'"+ HProcNumber + "'", "h_p_CJGXPLHB_Query"); if (ds == null || ds.Tables[0].Rows.Count <= 0) { @@ -1500,20 +1563,35 @@ #region 杩斿洖宸ュ簭鍑虹珯姹囨姤鍗曞垪琛� [Route("Cj_StationOutBill/get_Display")] [HttpGet] - public object get_Display(string sWhere,string user) + public object get_Display(string sWhere,string user,string HBillSubType) { try { List<object> columnNameList = new List<object>(); - //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� - if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Query", 1, false, user)) + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鏃犳煡璇㈡潈闄�!"; - objJsonResult.data = null; - return objJsonResult; + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曟棤鏌ヨ鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } } + else { + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍑虹珯鍗曟棤鏌ヨ鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鑾峰彇绯荤粺鍙傛暟 string Ret = ""; @@ -1576,6 +1654,63 @@ //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 + + #region 宸ュ簭鍑虹珯姹囨姤鍗� 瀛愯〃鏌ヨ + [Route("Cj_StationOutBill/get_SubDisplay")] + [HttpGet] + public object get_SubDisplay(string sWhere, string TableName) + { + try + { + List<object> columnNameList = new List<object>(); + + string sql = ""; + + switch (TableName) + { + case "TechParam": + sql = "select * from h_v_Sc_StationOutBillSubQuery_TechParam where 1 = 1 and HInterID=" + sWhere; + break; + case "Note": + sql = "select * from h_v_Sc_StationOutBillSubQuery_Note where 1 = 1 and HInterID=" + sWhere; + break; + case "SN": + sql = "select * from h_v_Sc_StationOutBillSubQuery_SN where 1 = 1 and HInterID=" + sWhere; + break; + case "Emp": + sql = "select * from h_v_Sc_StationOutBillSubQuery_Emp where 1 = 1 and HInterID=" + sWhere; + break; + + } + + ds = oCN.RunProcReturn(sql, TableName); + + //娣诲姞鍒楀悕 + 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.list = columnNameList; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; } catch (Exception e) { @@ -1942,20 +2077,35 @@ #region 鏍规嵁id鍒犻櫎鍑虹珯鍗� [Route("Cj_StationOutBill/del_StationOutBill")] [HttpGet] - public object del_StationOutBill(long HInterID, string HDeleteMan) + public object del_StationOutBill(long HInterID, string HDeleteMan,string HBillSubType) { try { string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О - //缂栬緫鏉冮檺 - if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Drop", 1, false, HDeleteMan)) + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鏃犳潈闄愶紒"; - objJsonResult.data = null; - return objJsonResult; + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Drop", 1, false, HDeleteMan)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曟棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } } + else { + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Drop", 1, false, HDeleteMan)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍑虹珯鍗曟棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill(); if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) { @@ -2015,8 +2165,52 @@ objJsonResult.data = null; return objJsonResult; } + //鍒犻櫎鍓嶅垽鏂湁娌℃湁鐢熸垚閲戣澏鍗曟嵁锛堢敓浜ф眹鎶ュ崟锛岀敓浜у叆搴撳崟锛� + ds = oCn.RunProcReturn($"exec h_p_Cj_StationOutBill_BeforeDelCtrl {HInterID}", "h_p_Cj_StationOutBill_BeforeDelCtrl"); + if (ds == null || ds.Tables[0].Rows.Count <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒犻櫎鍑虹珯姹囨姤鍗曞彂鐢熷紓甯革紝娌℃湁浠讳綍杩斿洖璁板綍锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + if (ds.Tables[0].Rows[0]["HBackCount"].ToString() == "1") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = ds.Tables[0].Rows[0]["HRemarkBack"].ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } - if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, ref DBUtility.ClsPub.sExeReturnInfo)) + //鍒犻櫎鍓嶆帶鍒�========================================= + string HBillNo = oBill.omodel.HBillNo; + string sql1 = "exec h_p_Sc_StationOutBill_BeforeDelCtrl " + HInterID + ",'" + HBillNo + "','" + HDeleteMan + "'"; + ds = oCN.RunProcReturn(sql1, "h_p_Sc_StationOutBill_BeforeDelCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:鍒犻櫎鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴"; + objJsonResult.data = null; + return objJsonResult; + } + + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; + objJsonResult.data = null; + return objJsonResult; + } + //================================================================================== + + if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, HBillNo, "h_p_Sc_StationOutBill_AfterDelCtrl", HDeleteMan, ref DBUtility.ClsPub.sExeReturnInfo)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -2036,6 +2230,133 @@ objJsonResult.data = null; return objJsonResult; } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + 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 + + #region 鏍规嵁id鍒犻櫎鍑虹珯鍗� 瀛愪欢鏉$爜 + [Route("Cj_StationOutBill/del_StationOutBill_SN")] + [HttpGet] + public object del_StationOutBill_SN(long HInterID,string HBardcode, string HDeleteMan, string HBillSubType) + { + try + { + string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О + if (HBillSubType == "SUB") + { + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Drop", 1, false, HDeleteMan)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曟棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Drop", 1, false, HDeleteMan)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍑虹珯鍗曟棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + + DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill(); + if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) + { + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn)) + { + if (oSystemParameter.omodel.MES_StationOutBill_DeleteCtl == "Y") + { + if (oBill.omodel.HMaker != HDeleteMan && (HDeleteMan != "admin" && HDeleteMan != "Admin")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒"; + objJsonResult.data = null; + return objJsonResult; + } + } + } + + + SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); + DataSet ds; + //鍒ゆ柇鏄惁瀛樺湪 鐩稿悓鍗曟嵁鍙� 鐨勯鏂欏崟 鍒ゆ柇鐢熶骇璁㈠崟鏄惁宸茬粨妗堬紝瑕佹眰璁″垝鎵嬪伐鍙嶇粨妗� + ds = oCn.RunProcReturn("exec h_p_MES_StationOutBill_DelCtrl '" + oBill.omodel.HBillNo + "'", "h_p_MES_StationOutBill_DelCtrl"); + if (ds == null) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒ゆ柇鍏宠仈澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (ds.Tables[0].Rows.Count > 0 && Pub_Class.ClsPub.isInt(ds.Tables[0].Rows[0][0]) == 2) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0][1]); + objJsonResult.data = null; + return objJsonResult; + } + if (oBill.omodel.HChecker != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + ds = oCn.RunProcReturn($"exec h_p_DelOutInBill {HInterID},'MES_StationOutBill_DeleteRelationCtl'", "h_p_DelOutInBill"); + + if (ds.Tables[0].Rows[0][0].ToString() == "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "绯荤粺鍙傛暟鎺у埗,宸叉湁涓嬮亾宸ュ簭,涓嶈兘鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + oCn.BeginTran(); + + oCn.RunProc("delete from Sc_StationOutBillSub_SN where HInterID="+ HInterID+ " and HBarCode='"+ HBardcode + "'"); + + oCn.Commit(); + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鍒犻櫎鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } else { @@ -2171,26 +2492,42 @@ #region 瀹℃牳 [Route("Cj_StationOutBill/set_CheckBill")] [HttpGet] - public object set_CheckBill(string HInterID, string CurUserName) + public object set_CheckBill(string HInterID, string CurUserName,string HBillSubType) { try { - string ModRightNameCheck = "Cj_StationOutBill_Check"; - ////瀹℃牳鏉冮檺 - if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName)) + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�"; - objJsonResult.data = null; - return objJsonResult; + ////瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曞鏍稿け璐ワ紒鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } } - var HBillNo = HInterID.Split(','); + else + { ////瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍑虹珯鍗曞鏍稿け璐ワ紒鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + } + + + var HInterIDs = HInterID.Split(','); + string[] HBillNo = new string[HInterIDs.Length]; DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill(); - for (int i = 0; i < HBillNo.Length; i++) + for (int i = 0; i < HInterIDs.Length; i++) { - if (HBillNo[i] == "0") + if (HInterIDs[i] == "0") { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -2199,7 +2536,7 @@ return objJsonResult; } //鏌ョ湅鏄惁宸插鏍�,鍏抽棴,浣滃簾 - if (oBill.ShowBill(long.Parse(HBillNo[i]), ref DBUtility.ClsPub.sExeReturnInfo)) + if (oBill.ShowBill(long.Parse(HInterIDs[i]), ref DBUtility.ClsPub.sExeReturnInfo)) { if (oBill.omodel.HChecker.Trim() != "") { @@ -2209,6 +2546,7 @@ objJsonResult.data = null; return objJsonResult; } + HBillNo[i] = oBill.omodel.HBillNo; } else { @@ -2221,10 +2559,32 @@ } int j = 0; - for (int i = 0; i < HBillNo.Length; i++) + for (int i = 0; i < HInterIDs.Length; i++) { + //瀹℃牳鍓嶆帶鍒� + string sql = "exec h_p_Sc_StationOutBill_BeforeCheckCtrl " + HInterIDs[i] + ",'" + HBillNo[i] + "','" + CurUserName + "'"; + ds = oCN.RunProcReturn(sql, "h_p_Sc_StationOutBill_BeforeCheckCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴"; + objJsonResult.data = null; + return objJsonResult; + } + + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; + objJsonResult.data = null; + return objJsonResult; + } + + //瀹℃牳 - if (Cj_StationOutBillCheckBill(long.Parse(HBillNo[i]), CurUserName, oBill.omodel.HLastSubProc, ref DBUtility.ClsPub.sExeReturnInfo)) + if (Cj_StationOutBillCheckBill(long.Parse(HInterIDs[i]), HBillNo[i], CurUserName, oBill.omodel.HLastSubProc, ref DBUtility.ClsPub.sExeReturnInfo)) { j += 1; } @@ -2255,7 +2615,7 @@ } //瀹℃牳 - public bool Cj_StationOutBillCheckBill(Int64 lngBillKey, string CurUserName,bool HLastSubProc, ref string sReturn) + public bool Cj_StationOutBillCheckBill(Int64 lngBillKey, string HBillNo, string CurUserName,bool HLastSubProc, ref string sReturn) { try { @@ -2283,6 +2643,23 @@ else if (Pub_Class.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HFstProc"]) == "鏄�") { } + + //瀹℃牳鍚庢帶鍒� + string sql = "exec h_p_Sc_StationOutBill_AfterCheckCtrl " + lngBillKey + ",'" + HBillNo + "','" + CurUserName + "'"; + ds = oCN.RunProcReturn(sql, "h_p_Sc_StationOutBill_AfterCheckCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + sReturn = "瀹℃牳杩囩▼涓嚭閿欙紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴"; + oCN.RollBack(); + return false; + } + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + sReturn = ds.Tables[0].Rows[0]["HRemark"].ToString(); + oCN.RollBack(); + return false; + } + sReturn = sReturn + " 瀹℃牳鍔熻兘锛�"; oCN.Commit(); return true; @@ -2299,31 +2676,47 @@ #region 鍙嶅鏍� [Route("Cj_StationOutBill/set_AbandonCheck")] [HttpGet] - public object set_AbandonCheck(string HInterID, string CurUserName) + public object set_AbandonCheck(string HInterID, string CurUserName,string HBillSubType) { try { - string ModRightNameCheck = "Cj_StationOutBill_Check"; - ////瀹℃牳鏉冮檺 - if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName)) + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鍙嶅鏍稿け璐ワ紒鏃犳潈闄愶紒"; - objJsonResult.data = null; - return objJsonResult; + ////瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曞弽瀹℃牳澶辫触锛佹棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } } + else + { + ////瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍑虹珯鍗曞弽瀹℃牳澶辫触锛佹棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + - var HBillNo = HInterID.Split(','); + var HInterIDs = HInterID.Split(','); + string[] HBillNo = new string[HInterIDs.Length]; DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill(); //鑾峰彇绯荤粺鍙傛暟 string Ret = ""; oSystemParameter.ShowBill(ref Ret); - for (int i = 0; i < HBillNo.Length; i++) + for (int i = 0; i < HInterIDs.Length; i++) { - if (long.Parse(HBillNo[i]) == 0) + if (long.Parse(HInterIDs[i]) == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -2333,7 +2726,7 @@ } //鏌ョ湅鏄惁宸插鏍�,鍏抽棴,浣滃簾 - if (oBill.ShowBill(long.Parse(HBillNo[i]), ref DBUtility.ClsPub.sExeReturnInfo)) + if (oBill.ShowBill(long.Parse(HInterIDs[i]), ref DBUtility.ClsPub.sExeReturnInfo)) { if (oBill.omodel.HChecker.Trim() == "") { @@ -2356,6 +2749,8 @@ return objJsonResult; } } + + HBillNo[i] = oBill.omodel.HBillNo; } else { @@ -2368,10 +2763,31 @@ } int j = 0; - for (int i = 0; i < HBillNo.Length; i++) + for (int i = 0; i < HInterIDs.Length; i++) { + //鍙嶅鏍稿墠鎺у埗 + string sql = "exec h_p_Sc_StationOutBill_BeforeUnCheckCtrl " + HInterIDs[i] + ",'" + HBillNo[i] + "','" + CurUserName + "'"; + ds = oCN.RunProcReturn(sql, "h_p_Sc_StationOutBill_BeforeUnCheckCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�"; + objJsonResult.data = null; + return objJsonResult; + + } + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; + objJsonResult.data = null; + return objJsonResult; + } + //鍙嶅鏍� - if (Cj_StationOutBillAbandonCheckBill(long.Parse(HBillNo[i]), CurUserName, oBill.omodel.HLastSubProc, ref DBUtility.ClsPub.sExeReturnInfo)) + if (Cj_StationOutBillAbandonCheckBill(long.Parse(HInterIDs[i]),HBillNo[i], CurUserName, oBill.omodel.HLastSubProc, ref DBUtility.ClsPub.sExeReturnInfo)) { j += 1; } @@ -2402,7 +2818,7 @@ } //鍙嶅鏍� - public bool Cj_StationOutBillAbandonCheckBill(Int64 lngBillKey, string CurUserName, bool HLastSubProc, ref string sReturn) + public bool Cj_StationOutBillAbandonCheckBill(Int64 lngBillKey,string HBillNo, string CurUserName, bool HLastSubProc, ref string sReturn) { if (Cj_StationInBillisUse(lngBillKey, ref sReturn)) { @@ -2435,6 +2851,23 @@ else if (Pub_Class.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HFstProc"]) == "鏄�") { } + + //鍙嶅鏍稿悗鎺у埗 + string sql = "exec h_p_Sc_StationOutBill_AfterUnCheckCtrl " + lngBillKey + ",'" + HBillNo + "','" + CurUserName + "'"; + ds = oCN.RunProcReturn(sql, "h_p_Sc_StationOutBill_AfterUnCheckCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + sReturn = "鍙嶅鏍歌繃绋嬩腑鍑洪敊锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�"; + oCN.RollBack(); + return false; + } + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + sReturn = ds.Tables[0].Rows[0]["HRemark"].ToString(); + oCN.RollBack(); + return false; + } + sReturn = sReturn + "鍙嶅鏍稿姛鑳斤紒"; oCN.Commit(); return true; @@ -2451,19 +2884,34 @@ #region 宸ュ簭鍑虹珯鍏抽棴/鍙嶅叧闂姛鑳� [Route("Cj_StationOutBill/CloseCj_StationOutBill")] [HttpGet] - public object CloseCj_StationOutBill(string HInterID, int Type, string user) + public object CloseCj_StationOutBill(string HInterID, int Type, string user,string HBillSubType) { try { - //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� - if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Close", 1, false, user)) + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鏃犳潈闄愬叧闂�!"; - objJsonResult.data = null; - return objJsonResult; + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Close", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曟棤鏉冮檺鍏抽棴!"; + objJsonResult.data = null; + return objJsonResult; + } } + else { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + 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)) { -- Gitblit v1.9.1