From 202d0a21ec39591d5127d4a3a4d5df2489babee2 Mon Sep 17 00:00:00 2001 From: chenhaozhe <cgz@hz-kingdee.com> Date: 星期四, 08 五月 2025 13:22:18 +0800 Subject: [PATCH] 添加 根据使用组织 生成 树状结构 方法 --- WebAPI/Controllers/BaseSet/Gy_CustomerController.cs | 75 +++++++++++++++++++++++++++++++++++++ 1 files changed, 75 insertions(+), 0 deletions(-) diff --git a/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs b/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs index 18b2239..851310e 100644 --- a/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs +++ b/WebAPI/Controllers/BaseSet/Gy_CustomerController.cs @@ -1385,6 +1385,56 @@ } #endregion + + // #region 瀹㈡埛鍒嗙被灞炴�х粨鏋� 鏍规嵁缁勭粐鍒嗙被 + [Route("Gy_BadReason/Gy_CusTypeTreeListByOrganization")] + [HttpGet] + public object Gy_CusTypeTreeListByOrganization() + { + try + { + string sql1 = string.Format("select hitemid,hnumber,hname,hparentid from Xt_ORGANIZATIONS where hstopflag != 1 order by hnumber"); + + ds = oCN.RunProcReturn(sql1, "Xt_ORGANIZATIONS"); + + List <TreeModel> treeModels = new List<TreeModel>(); + TreeModel first = new TreeModel(); + first.title = "浣跨敤缁勭粐"; + first.id = "0"; + treeModels.Add(first); + + foreach (DataRow row in ds.Tables[0].Rows) + { + int HParentID = (int)row["hparentid"]; + int HItemID = (int)row["hitemid"]; + //if(HParentID == 0 || HItemID == HParentID) // 鐖惰妭鐐逛负0鎴栬�呰嚜寮曠敤鐨勮缃负涓�绾у嚑鐐� + //{ + TreeModel tree = new TreeModel(); + tree.id = row["hitemid"].ToString(); + tree.title = row["hname"].ToString(); + treeModels[0].children.Add(tree); + + //} + } + //getTreeByHItemID(ds.Tables[0], treeModels); + 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; + } + } + // #endregion + #region 鏍规嵁鐖秈d鍜岀瓑绾ц幏寰楁爲鐘跺浘閫掑綊 [Route("Gy_BadReason/Gy_CusTypeTreeListByLevel")] @@ -1539,6 +1589,31 @@ #endregion + public void getTreeByHItemID(DataTable dt, List<TreeModel> tree) + { + for (int m = 0; m < tree.Count; m++) + { + tree[m].children = new List<TreeModel>(); + for (int i = 0; i < dt.Rows.Count; i++)//绗竴娆″惊鐜紝寰楀埌鎵�鏈夋牴鑺傜偣鐨勫瓙闆� + { + var HParentID = dt.Rows[i]["hparentid"].ToString(); + var HItemID = dt.Rows[i]["hitemid"].ToString(); + if (HParentID == tree[m].id && HParentID != HItemID) + { + TreeModel tbjson = new TreeModel(); + tbjson.id = dt.Rows[i]["hitemid"].ToString(); + tbjson.title = dt.Rows[i]["hname"].ToString(); + tree[m].children.Add(tbjson); + } + } + + for (int i = 0; i < tree[m].children.Count; i++) + { + getTreeByHItemID(dt, tree[m].children);//鍐嶆鐢ㄥ瓙闆嗗幓寰幆锛屾嬁鍑哄瓙闆嗙殑瀛愰泦 + } + } + } + #region 閫掑綊鍑芥暟 /// <summary> /// 閫掑綊鍑芥暟 -- Gitblit v1.9.1