From c40039183a5c7f9a09953c19f60cf3b45110c2cb Mon Sep 17 00:00:00 2001 From: duhe <226547893@qq.com> Date: 星期四, 14 九月 2023 17:31:40 +0800 Subject: [PATCH] 生产领料单:新增或复制保存时,后端不再重新生成单据内码 --- WebAPI/Controllers/CJGL/Cj_StationInBillController.cs | 320 +++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 275 insertions(+), 45 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs index 83b1ba4..705fbcc 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationInBillController.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 @@ -21,6 +22,7 @@ private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + public DAL.ClsSc_ICMOBill BillOld = new DAL.ClsSc_ICMOBill(); DataSet ds; DataSet ds1; @@ -37,16 +39,33 @@ //濮斿宸ュ簭鍙戝嚭鍙嶅簭鍒楀寲 string msg2 = "[" + sArray[0].ToString() + "]"; string user = sArray[1].ToString(); + string OperationType = sArray[2].ToString(); + string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О - //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� - if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_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_StationInBill_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_StationInBill_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "杩涚珯鍗曟棤缂栬緫鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } + } + List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg2); long HMainInterID = 0; @@ -134,6 +153,23 @@ objJsonResult.data = null; return objJsonResult; } + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") //绯荤粺鍙傛暟 鍒ゆ柇瀹㈡埛 + { + //鍒ゆ柇鐢熶骇璧勬簮 + if (HSourceID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鐢熶骇璧勬簮娌℃湁閫夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + } + if (HCenterID <= 0) { objJsonResult.code = "0"; @@ -194,7 +230,7 @@ ",HProcNo,HOrderProcNO,HMainInterID,HPRDOrgID" + ",HmaterOutqty" + ") " + - " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + + " values('" + BillType + "','" + (OperationType=="5"?"SUB":BillType) + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + "," + HYear + "," + HPeriod + ",'" + HRemark + "'" + "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID + ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID + @@ -202,6 +238,9 @@ "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + ",'" + HSourceName + "'," + HCenterID + ",'" + HProcNo + "','" + HOrderProcNO + "','" + HMainInterID + "'," + HPRDOrgID + ","+ HmaterOutqty + ") "); + + 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); } else if ("Modify".Equals(eventType)) { @@ -244,6 +283,9 @@ ",HProcNo='" + HProcNo + "'" + ",HOrderProcNO='" + HOrderProcNO + "'" + " where HInterID=" + HInterID); + + 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); } else { @@ -297,7 +339,7 @@ } oCN.Commit(); - string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) { if (oSystemParameter.omodel.MES_StationInBill_SaveAutoAddnew == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 @@ -507,20 +549,36 @@ #region 杩斿洖宸ュ簭杩涚珯鎺ユ敹鍗曞垪琛� [Route("Cj_StationInBill/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_StationInBill_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_StationInBill_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_StationInBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "杩涚珯鍗曟棤鏌ヨ鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } + } + if (sWhere == null || sWhere.Equals("")) { @@ -653,20 +711,36 @@ #region 瀹℃牳 [Route("Cj_StationInBill/set_CheckBill")] [HttpGet] - public object set_CheckBill(int HInterID,string CurUserName) + public object set_CheckBill(int HInterID,string CurUserName,string HBillSubType) { try { - string ModRightNameCheck = "Cj_StationInBill_Check"; - //瀹℃牳鏉冮檺 - if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false,CurUserName)) + string ModRightNameCheck = ""; + + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�"; - objJsonResult.data = null; - return objJsonResult; + //瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_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_StationInBill_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "杩涚珯鍗曞鏍稿け璐ワ紒鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + } + if (HInterID == 0) { objJsonResult.code = "0"; @@ -770,20 +844,36 @@ #region 鍙嶅鏍� [Route("Cj_StationInBill/set_AbandonCheck")] [HttpGet] - public object set_AbandonCheck(int HInterID, string CurUserName) + public object set_AbandonCheck(int HInterID, string CurUserName, string HBillSubType) { try { - string ModRightNameCheck = "Cj_StationInBill_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_StationInBill_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_StationInBill_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "杩涚珯鍗曞弽瀹℃牳澶辫触锛佹棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + + if (HInterID == 0) { @@ -912,6 +1002,127 @@ } #endregion + #region 宸ュ簭杩涚珯鍏抽棴/鍙嶅叧闂姛鑳� + [Route("Cj_StationInBill/CloseCj_StationInBill")] + [HttpGet] + public object CloseSc_StationInBill(string HInterID, int Type, string user,string HBillSubType) + { + try + { + if (HBillSubType == "SUB") + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_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_StationInBill_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_StationInBillMain"; + 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 + //鎵归噺杩涚珯 #region 鎵归噺杩涚珯妯″潡杩斿洖鏄庣粏淇℃伅鍒楄〃 [Route("Cj_StationInBill/get_BarCodeDetail")] @@ -961,19 +1172,35 @@ #region 鏍规嵁id鍒犻櫎杩涚珯鍗� [Route("Cj_StationInBill/del_StationInBill")] [HttpGet] - public object del_StationInBill(long HInterID,string HDeleteMan) + public object del_StationInBill(long HInterID,string HDeleteMan,string HBillSubType) { try { - //缂栬緫鏉冮檺 - if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Drop", 1, false, HDeleteMan)) + string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鏃犳潈闄愶紒"; - objJsonResult.data = null; - return objJsonResult; + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_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_StationInBill_Drop", 1, false, HDeleteMan)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "杩涚珯鎺ユ敹鍗曟棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + DAL.ClsSc_StationInBill oBill = new DAL.ClsSc_StationInBill(); if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) { @@ -1034,8 +1261,7 @@ return objJsonResult; } - //鍐欏叆鍒犻櫎鏃ュ織 - string WorkList = "鍒犻櫎杩涚珯鍗曪細" + oBill.omodel.HBillNo; + if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, ref DBUtility.ClsPub.sExeReturnInfo)) { objJsonResult.code = "0"; @@ -1046,6 +1272,10 @@ } else { + //鍐欏叆鍒犻櫎鏃ュ織 + LogService.Write("鐢ㄦ埛:" + HDeleteMan + ",鏃ユ湡:" + DateTime.Now + ",鍒犻櫎宸ュ簭杩涚珯鍗曟嵁:" + oBill.omodel.HBillNo); + oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + HDeleteMan + "','" + HComputerName + "','" + "鍒犻櫎宸ュ簭杩涚珯鍗曟嵁锛�" + oBill.omodel.HBillNo + "','LMES-宸ュ簭杩涚珯妯″潡','" + DBUtility.ClsPub.IPAddress + "','鍒犻櫎鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo); + objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "鍒犻櫎鎴愬姛锛�"; -- Gitblit v1.9.1