public ActionResult GetAreaListJson(string areaId = "", string mode = "", string planId = "", string dataType = "", string areaName = "") { DangerSourceBLL dsBll = new DangerSourceBLL(); var curUser = new OperatorProvider().Current(); List <DistrictEntity> list = bis_districtbll.GetList().Where(p => p.OrganizeId == curUser.OrganizeId).ToList(); List <DistrictEntity> districtdata = list.Where(p => p.DistrictCode.Contains(curUser.OrganizeCode) && p.DistrictID != "0").ToList(); RiskPlanBLL plan = new RiskPlanBLL(); string ids = plan.GetPlanAreaIds(0, planId); if (dataType.Equals("0") && string.IsNullOrEmpty(ids)) { areaId = "-1"; } if (dataType.Equals("0")) { districtdata = districtdata.Where(t => !ids.Contains(t.DistrictID)).ToList(); } else { districtdata = districtdata.Where(t => areaId.Contains(t.DistrictID)).ToList(); } List <DistrictEntity> list1 = new List <DistrictEntity>(); foreach (DistrictEntity item in districtdata) { bool hasChildren = list.Count(t => t.ParentID == item.DistrictID) == 0 ? false : true; if (!hasChildren) { item.Description = item.DistrictName; item.DistrictName = dsBll.GetPathName(item.DistrictCode, curUser.OrganizeId); list1.Add(item); } else { item.Description = item.DistrictName; list1.Add(item); } } if (!string.IsNullOrWhiteSpace(areaName)) { list1 = list1.Where(t => t.DistrictName.Contains(areaName.Trim())).ToList(); } var JsonData = new { rows = list1.OrderBy(t => t.DistrictCode).ThenBy(t => t.SortCode).ToList(), total = 1, page = 1, records = districtdata.Count }; return(Content(JsonData.ToJson())); }
public ActionResult GetCurListJson(string areaId = "", string mode = "", string planId = "", string dataType = "", string objId = "", string areaName = "") { try { var curUser = new OperatorProvider().Current(); List <DistrictEntity> list = new List <DistrictEntity>(); if (!string.IsNullOrEmpty(objId)) { list = bis_districtbll.GetOrgList(objId).ToList(); } else { list = bis_districtbll.GetList().ToList(); } if (!string.IsNullOrWhiteSpace(areaName)) { list = list.Where(t => t.DistrictName.Contains(areaName.Trim())).ToList(); } List <DistrictEntity> allList = bis_districtbll.GetOrgList(curUser.OrganizeId).ToList(); List <DistrictEntity> districtdata = list; if (!curUser.IsSystem && string.IsNullOrEmpty(objId)) { districtdata = districtdata.Where(p => p.OrganizeId == curUser.OrganizeId).ToList(); } if (string.IsNullOrEmpty(areaId)) { if (mode == "1") { RiskPlanBLL plan = new RiskPlanBLL(); areaId = plan.GetPlanAreaIds(0, planId); districtdata = districtdata.Where(t => !areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList(); List <DistrictEntity> list1 = districtdata.Where(t => t.DistrictCode.Length > 6).ToList(); foreach (DistrictEntity entity in list1) { if (entity.DistrictCode.Length >= 6) { string code = entity.DistrictCode.Substring(0, 6); var d = districtdata.Where(t => t.DistrictCode == code); if (districtdata.Where(t => t.DistrictCode == code).Count() == 0) { DistrictEntity de = list.Where(t => t.DistrictCode == code).FirstOrDefault(); if (!districtdata.Contains(de)) { districtdata.Add(de); } } } } } //else //{ // districtdata = districtdata.Where(t => areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList(); //} List <TreeGridEntity> treeList = new List <TreeGridEntity>(); string parentId = "0"; if (!string.IsNullOrWhiteSpace(areaName) && districtdata.Count > 0) { districtdata = GetParentId(districtdata, allList); // parentId = districtdata[0].ParentID; } districtdata = districtdata.OrderBy(a => a.DistrictCode).ThenBy(a => a.SortCode).ToList(); foreach (DistrictEntity item in districtdata) { TreeGridEntity tree = new TreeGridEntity(); int count = districtdata.Count(t => t.DistrictCode.StartsWith(item.DistrictCode)); int count1 = districtdata.Count(t => t.DistrictCode.StartsWith(item.DistrictCode) && t.DistrictCode != item.DistrictCode); bool hasChildren = count1 == 0 ? false : true; tree.id = item.DistrictID; tree.parentId = item.ParentID; tree.expanded = false; tree.hasChildren = hasChildren; tree.childCount = count; tree.code = item.DistrictCode; string itemJson = item.ToJson(); tree.entityJson = itemJson; treeList.Add(tree); } return(Content(treeList.TreeJson(parentId))); } else { if (mode == "1") { RiskPlanBLL plan = new RiskPlanBLL(); string ids = plan.GetPlanAreaIds(0, planId); if (!string.IsNullOrEmpty(ids) && dataType.Equals("0")) { areaId = ids; districtdata = districtdata.Where(t => !areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList(); } else { if (dataType == "0") { districtdata = districtdata.Where(t => t.DistrictID != "0").ToList(); } else { districtdata = districtdata.Where(t => areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList(); } } List <DistrictEntity> list1 = districtdata.Where(t => t.DistrictCode.Length > 6).ToList(); foreach (DistrictEntity entity in list1) { if (entity.DistrictCode.Length >= 6) { string code = entity.DistrictCode.Substring(0, 6); if (districtdata.Where(t => t.DistrictCode == code).Count() == 0) { DistrictEntity de = list.Where(t => t.DistrictCode == code).FirstOrDefault(); if (!districtdata.Contains(de)) { districtdata.Add(de); } } } } } else { districtdata = districtdata.Where(t => areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList(); } districtdata = districtdata.OrderBy(a => a.DistrictCode).ThenBy(a => a.SortCode).ToList(); var JsonData = new { rows = districtdata, total = 1, page = 1, records = districtdata.Count }; return(Content(JsonData.ToJson())); } } catch (Exception ex) { return(Error(ex.ToString())); } }