From c98968a17029fb98e72596c1a868e7d543816102 Mon Sep 17 00:00:00 2001 From: yangle <admin@YINMOU> Date: 星期四, 18 四月 2024 16:31:11 +0800 Subject: [PATCH] 对色记录单查询优化 当前工单模块 出站汇报 --- WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs | 314 ++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 292 insertions(+), 22 deletions(-) diff --git a/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs b/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs index 88da647..e765a51 100644 --- a/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs +++ b/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs @@ -1,4 +1,5 @@ -锘縰sing Newtonsoft.Json.Linq; +锘縰sing DBUtility; +using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; @@ -16,14 +17,15 @@ private json objJsonResult = new json(); public DataSet ds = new DataSet(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); - public DLL.ClsGy_EquipFileMain BillNew0 = new DLL.ClsGy_EquipFileMain(); - public DLL.ClsGy_EquipFileMain BillOld0 = new DLL.ClsGy_EquipFileMain(); + public DLL.ClsGy_EquipFileMain BillNew0 = new DLL.ClsGy_EquipFileMain(); + public DLL.ClsGy_EquipFileMain BillOld0 = new DLL.ClsGy_EquipFileMain(); + public DAL.ClsGy_EquipFileMain BillOld = new DAL.ClsGy_EquipFileMain(); #region 璁惧妗f鍒楄〃 [Route("Gy_EquipFileMain/GetList")] [HttpGet] - public object GetList(string sWhere,string user) + public object GetList(string sWhere, string user) { try { @@ -78,7 +80,7 @@ #region [璁惧妗f鍒犻櫎鍔熻兘] [Route("Gy_EquipFileMain/Delete_EquipFile")] [HttpGet] - public object Delete_EquipFile(string HItemID,string user) + public object Delete_EquipFile(string HItemID, string user) { if (!DBUtility.ClsPub.Security_Log("Gy_EquipFile_Delete", 1, false, user)) { @@ -181,11 +183,11 @@ List<Models.ClsGy_EquipFileMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.ClsGy_EquipFileMain>>(msg2); - string hbillno= list[0].HBillNo; + string hbillno = list[0].HBillNo; string HYear = DateTime.Now.Year.ToString(); DateTime HDate = list[0].HDate; long HInterID = list[0].HInterID; - string HEquipFileNumber = list[0].HEquipFileNumber; + string HEquipFileNumber = list[0].HEquipFileNumber; string HEquipFileNo = list[0].HEquipFileNo; // varchar(50) //璁惧缂栫爜(鍞竴) string HName = list[0].HName; // 鈭� varchar(100) //璁惧鍚嶇О string HModel = list[0].HModel; // 鈭� varchar(100) //璁惧瑙勬牸 @@ -212,6 +214,7 @@ string HMakeDate = DateTime.Now.Date.ToString(); int HEquipDotCheckRuleInterID = list[0].HEquipDotCheckRuleInterID; int HEquipMaintainRuleInterID = list[0].HEquipMaintainRuleInterID; + int HSourceID = list[0].HSourceID; if (!DBUtility.ClsPub.AllowNumber(HEquipFileNumber)) { @@ -227,12 +230,11 @@ oCN.RunProc("Insert into Gy_EquipFileBillMain " + " (hbillno,HEquipFileNumber,HEquipFileNo,HName,HModel,HModel2,HMaterID,HUnitID,HOutComDate" + ",HOutComNo,HDeptID,HUseEmpID,HRepairEmpID,HAddress,HSetupDate,HStartupDate,HStatus," + - "HEquipFileTypeID,HProNum,HBarCode,HWorkArea,HLogo,HSellSupID,HMakeSupID,hbilltype,HDate,HYear,HMaker,HMakeDate,HEquipMaintainRuleInterID,HEquipDotCheckRuleInterID) " + +"HEquipFileTypeID,HProNum,HBarCode,HWorkArea,HLogo,HSellSupID,HMakeSupID,hbilltype,HDate,HYear,HMaker,HMakeDate,HEquipMaintainRuleInterID,HEquipDotCheckRuleInterID,HSourceID) " + " Values('" + hbillno + "','" + HEquipFileNumber + "','" + HEquipFileNo + "','" + HName + "','" + HModel + "','" + HModel2 + "'," + HMaterID + "," + HUnitID + ",'" + HOutComDate + "','" + HOutComNo + "'," + HDeptID + "," + HUseEmpID + "," + HRepairEmpID + ",'" + HAddress + "','" + HSetupDate + "','" + HStartupDate + "','" + HStatus + "'," + HEquipFileTypeID + ",'" + HProNum + - "','" + HBarCode + "','" + HWorkArea + "','" + HLogo + "'," + HSellSupID + "," + HMakeSupID +",'3308','" + HDate +"','"+ HYear+ "','" + HMaker + "','" + HMakeDate +"','"+ HEquipMaintainRuleInterID+"','"+ HEquipDotCheckRuleInterID+ - "')", ref DBUtility.ClsPub.sExeReturnInfo); + "','" + HBarCode + "','" + HWorkArea + "','" + HLogo + "'," + HSellSupID + "," + HMakeSupID + ",'3308','" + HDate + "','" + HYear + "','" + HMaker + "','" + HMakeDate + "','" + HEquipMaintainRuleInterID + "','" + HEquipDotCheckRuleInterID +"'," + HSourceID + ")", ref DBUtility.ClsPub.sExeReturnInfo); //淇敼涓婄骇涓洪潪鏈骇浠g爜 oCN.Commit(); objJsonResult.code = "1"; @@ -254,7 +256,7 @@ #endregion #region 璁惧妗f淇敼淇濆瓨 - + [Route("Gy_EquipFileMain/EditBill")] [HttpPost] public object EditBill([FromBody] JObject oMain) @@ -310,6 +312,8 @@ string HUpDateDate = DateTime.Now.Date.ToString(); int HEquipDotCheckRuleInterID = list[0].HEquipDotCheckRuleInterID; int HEquipMaintainRuleInterID = list[0].HEquipMaintainRuleInterID; + int HSourceID = list[0].HSourceID; + if (!DBUtility.ClsPub.AllowNumber(HEquipFileNumber)) { @@ -341,28 +345,29 @@ ",HName='" + HName + "'" + ",HModel='" + HModel + "'" + ",HModel2='" + HModel2 + "'" + - ",HMaterID=" + HMaterID + - ",HUnitID=" + HUnitID + + ",HMaterID=" + HMaterID + + ",HUnitID=" + HUnitID + ",HOutComDate='" + HOutComDate + "'" + ",HOutComNo='" + HOutComNo + "'" + - ",HDeptID=" + HDeptID + + ",HDeptID=" + HDeptID + ",HUseEmpID=" + HUseEmpID + ",HRepairEmpID=" + HRepairEmpID + ",HAddress='" + HAddress + "'" + ",HSetupDate='" + HSetupDate + "'" + ",HStartupDate='" + HStartupDate + "'" + ",HStatus='" + HStatus + "'" + - ",HEquipFileTypeID=" + HEquipFileTypeID + + ",HEquipFileTypeID=" + HEquipFileTypeID + ",HProNum='" + HProNum + "'" + ",HBarCode='" + HBarCode + "'" + ",HWorkArea='" + HWorkArea + "'" + ",HLogo='" + HLogo + "'" + - ",HSellSupID=" + HSellSupID + + ",HSellSupID=" + HSellSupID + ",HMakeSupID= " + HMakeSupID + ",HUpDater= '" + HUpDater + "'" + ",HUpDateDate= '" + HUpDateDate + "'" + - ",HEquipDotCheckRuleInterID='"+ HEquipDotCheckRuleInterID+"'"+ - ",HEquipMaintainRuleInterID='"+ HEquipMaintainRuleInterID+"'"+ + ",HEquipDotCheckRuleInterID='" + HEquipDotCheckRuleInterID + "'" + + ",HEquipMaintainRuleInterID='" + HEquipMaintainRuleInterID + "'" + + ",HSourceID='" + HSourceID + "'" + " Where HInterID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo); //淇敼瀛愰」鐩唬鐮� //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_RepairCheck,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo); @@ -392,19 +397,21 @@ public object Sb_EquipFileBillResumeDate(string HInterID) { - DataTable ds,ds1; + DataTable ds, ds1,ds2; long HInterID1 = long.Parse(HInterID); List<object> list = new List<object>(); try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); - //鑾峰彇閰嶄欢椤圭洰缂栬緫鏁版嵁 + //鑾峰彇閰嶄欢椤圭洰缂栬緫鏁版嵁 string sql1 = string.Format($"exec h_p_Gy_EquipRecord {HInterID1}"); ds = oCN.RunProcReturn(sql1, "h_p_Gy_EquipRecord").Tables[0]; ds1 = oCN.RunProcReturn(sql1, "h_p_Gy_EquipRecord").Tables[1]; + ds2 = oCN.RunProcReturn(sql1, "h_p_Gy_EquipRecord").Tables[2]; list.Add(ds);//鏃ュ父璁板綍 list.Add(ds1);//缁翠慨璁板綍 + list.Add(ds2);//閰嶄欢鏇存崲娓呭崟 objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�"; @@ -427,8 +434,8 @@ public object Gy_MouldFileBillResumeDate(string HInterID) { - DataTable ds,ds1,ds2,ds3; - + DataTable ds, ds1, ds2, ds3; + long HInterID1 = long.Parse(HInterID); List<object> list = new List<object>(); try @@ -461,5 +468,268 @@ return objJsonResult; } #endregion + + #region[鏍规嵁鏉$爜杩斿洖璁惧淇℃伅] + [Route("Gy_EquipFileMain/Gy_MouldFileBillBarCodeInfo")] + [HttpGet] + public object Gy_MouldFileBillBarCodeInfo(string HBarCode) + { + DataTable ds; + List<object> list = new List<object>(); + try + { + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + //鑾峰彇閰嶄欢椤圭洰缂栬緫鏁版嵁 + string sql1 = string.Format($"exec h_p_Gy_EquipFileGetInfoByBarCode {HBarCode}"); + ds = oCN.RunProcReturn(sql1, "h_p_Gy_EquipFileGetInfoByBarCode").Tables[0]; + + list.Add(ds);//璁惧妗f + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鑾峰彇璁惧淇℃伅鎴愬姛锛�"; + objJsonResult.list = list; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛佽妫�鏌ユ潯褰㈢爜锛�" + e.ToString(); + objJsonResult.data = null; + } + return objJsonResult; + } + #endregion + + #region 璁惧妗f瀹℃牳/鍙嶅鏍稿姛鑳� + [Route("Gy_EquipFileBill/CheckGy_EquipFileBill")] + [HttpGet] + public object CheckGy_EquipFileBill(string HInterID, int Type, string user) + { + try + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileBill_Check", 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; + oCN.BeginTran();//寮�濮嬩簨鍔� + + //Type 1 瀹℃牳 2 鍙嶅鏍� + if (Type == 1) + { + if (!BillOld.CheckBill(int.Parse(HInterID), ref ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + if (BillOld.AbandonCheck(int.Parse(HInterID), ref ClsPub.sExeReturnInfo)) + { + SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); + } + else + { + 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 璁惧妗f鍏抽棴/鍙嶅叧闂姛鑳� + [Route("Gy_EquipFileBill/CloseGy_EquipFileBill")] + [HttpGet] + public object CloseGy_EquipFileBill(string HInterID, int Type, string user) + { + try + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileBill_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; + + oCN.BeginTran();//寮�濮嬩簨鍔� + + //Type 1 鍏抽棴 2 鍙嶅叧闂� + if (Type == 1) + { + if (!BillOld.CloseBill(int.Parse(HInterID), ref ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + if (!BillOld.CancelClose(int.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 璁惧妗f鍒楄〃 鏍戠姸鍥� 璁惧鍒嗙被鏌ヨ + public class TreeModel + { + public string id { get; set; } + public string title { get; set; } + public List<TreeModel> children = new List<TreeModel>(); + } + [Route("Gy_EquipFileMain/TreeGetList")] + [HttpGet] + public object TreeGetList(string sWhere, string user) + { + try + { + + ds = oCN.RunProcReturn("select HItemID,HNumber,HName from Gy_EquipFileType", "Gy_EquipFileType"); + + List<TreeModel> treeModels = new List<TreeModel>(); + TreeModel first = new TreeModel(); + first.id = "0"; + first.title = "璁惧鍒嗙被璁剧疆"; + treeModels.Add(first); + + foreach (DataRow row in ds.Tables[0].Rows) + { + var strLen = row["hitemid"].ToString().Split('.'); + if (strLen.Length == 1) + { + TreeModel tree = new TreeModel(); + tree.id = row["HItemID"].ToString(); + tree.title = row["HName"].ToString(); + treeModels[0].children.Add(tree); + } + } + digui(ds.Tables[0], treeModels[0].children, 2); + + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(treeModels); + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + /// <summary> + /// 閫掑綊鍑芥暟 + /// </summary> + public void digui(DataTable dt, List<TreeModel> tree, int num) + { + for (int m = 0; m < tree.Count; m++) + { + tree[m].children = new List<TreeModel>(); + for (int i = 0; i < dt.Rows.Count; i++)//绗竴娆″惊鐜紝寰楀埌鎵�鏈夋牴鑺傜偣鐨勫瓙闆� + { + var strLen = dt.Rows[i]["HNumber"].ToString().Split('.'); + if (strLen.Length == num && dt.Rows[i]["HNumber"].ToString().Contains(tree[m].id + ".")) + { + TreeModel tbjson = new TreeModel(); + tbjson.id = dt.Rows[i]["HItemID"].ToString(); + tbjson.title = dt.Rows[i]["HName"].ToString(); + tree[m].children.Add(tbjson); + } + } + var strLens = tree[m].id.Split('.'); + for (int i = 0; i < tree[m].children.Count; i++) + { + digui(dt, tree[m].children, strLens.Length + 2);//鍐嶆鐢ㄥ瓙闆嗗幓寰幆锛屾嬁鍑哄瓙闆嗙殑瀛愰泦 + } + } + + } + #endregion } } -- Gitblit v1.9.1