From 14fdd4d979f0306b79bb638576b341ed13f4780a Mon Sep 17 00:00:00 2001 From: yangle <admin@YINMOU> Date: 星期一, 25 十二月 2023 14:26:05 +0800 Subject: [PATCH] 单品过站优化 生产分析报表 --- WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs | 397 +++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 346 insertions(+), 51 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs index fbe4b72..6267b43 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();//寮�濮嬭鏃� @@ -1409,12 +1424,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 +1515,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 +1606,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 +2029,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,6 +2117,27 @@ 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)) { @@ -2036,6 +2159,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,20 +2421,35 @@ #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; + } } + 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(','); DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill(); @@ -2299,20 +2564,35 @@ #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(','); DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill(); @@ -2451,19 +2731,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