From 95fde02469c2709544649aa73ea380abb65b6daa Mon Sep 17 00:00:00 2001 From: chenhaozhe <cgz@hz-kingdee.com> Date: 星期四, 12 六月 2025 13:56:17 +0800 Subject: [PATCH] 添加模具状态分析API --- WebAPI/Controllers/BaseSet/Gy_WarehouseController.cs | 115 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 115 insertions(+), 0 deletions(-) diff --git a/WebAPI/Controllers/BaseSet/Gy_WarehouseController.cs b/WebAPI/Controllers/BaseSet/Gy_WarehouseController.cs index 4e856a5..79b5c2c 100644 --- a/WebAPI/Controllers/BaseSet/Gy_WarehouseController.cs +++ b/WebAPI/Controllers/BaseSet/Gy_WarehouseController.cs @@ -85,6 +85,91 @@ } + public class TreeModel + { + public string Id { get; set; } + public string Number { get; set; } + public string Title { get; set; } + public List<TreeModel> children = new List<TreeModel>(); + } + /// <summary> + /// 杩斿洖浠撳簱鍒楄〃 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("Gy_Warehouse/listTree")] + [HttpGet] + public object listTree(string sWhere, string user, string Organization) + { + try + { + List<object> columnNameList = new List<object>(); + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log_second("Gy_Warehouse", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + string sql1 = string.Format(@"select * from h_v_IF_WareHouseList_ExtendWHType where 缁勭粐鍚嶇О='" + Organization + "'"); + if (sWhere == null || sWhere.Equals("")) + { + ds = oCN.RunProcReturn(sql1 + sWhere + " order by 浠撳簱浠g爜 ", "h_v_IF_WareHouseList_ExtendWHType"); + } + else + { + string sql = sql1 + sWhere + " order by 浠撳簱浠g爜 "; + ds = oCN.RunProcReturn(sql, "h_v_IF_WareHouseList_ExtendWHType"); + } + + List<TreeModel> treeModels = new List<TreeModel>(); + TreeModel first = new TreeModel(); + first.Id = "0"; + first.Title = "妯″叿浠撳簱"; + first.Number = "0"; + 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(); + tree.Number = row["HNumber"].ToString(); + treeModels[0].children.Add(tree); + } + } + digui(ds.Tables[0], treeModels[0].children, 2); + + //娣诲姞鍒楀悕 + 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.data = Newtonsoft.Json.JsonConvert.SerializeObject(treeModels); + objJsonResult.list = columnNameList; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + /// <summary> /// 鏍规嵁鍩虹璧勬枡ID 鏌ユ壘璁板綍 @@ -1239,5 +1324,35 @@ } #endregion + #region 閫掑綊鐢熸垚鏍戠姸缁撴瀯 + /// <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(); + tbjson.Number = dt.Rows[i]["HNumber"].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 } } \ No newline at end of file -- Gitblit v1.9.1