| | |
| | | } |
| | | #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 根据父id和等级获得树状图递归 |
| | | |
| | | [Route("Gy_BadReason/Gy_CusTypeTreeListByLevel")] |
| | |
| | | |
| | | #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> |
| | | /// 递归函数 |