public object GetDepartments([FromBody] JObject json) { string res = json.Value <string>("json"); dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); string userid = dy.userid; //获取用户基本信息 OperatorProvider.AppUserId = userid; //设置当前用户 Operator curUser = OperatorProvider.Provider.Current(); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!" }); } //获取当前部门 string organizeId = curUser.OrganizeId; string parentId = "0"; IList <DeptData> list = new List <DeptData>(); //获取当前机构下的所有部门 OrganizeEntity org = orgBLL.GetEntity(organizeId); DeptData dept = new DeptData(); dept.deptid = org.OrganizeId; dept.code = org.EnCode; dept.oranizeid = org.OrganizeId; dept.parentcode = ""; dept.parentid = parentId; dept.name = org.FullName; list.Add(dept); List <DepartmentEntity> data = new List <DepartmentEntity>(); if (!curUser.IsSystem) { if (curUser.RoleName.Contains("厂级") || curUser.RoleName.Contains("公司")) { data = departmentBLL.GetList().Where(t => t.OrganizeId == organizeId).OrderBy(t => t.SortCode).ToList(); } else if (curUser.RoleName.Contains("部门")) { data = departmentBLL.GetList().Where(x => x.DepartmentId == curUser.DeptId || x.SendDeptID == curUser.DeptId || (x.Description == "外包工程承包商" && x.OrganizeId == organizeId)).OrderBy(t => t.SortCode).ToList(); } else { list = new List <DeptData>(); data = departmentBLL.GetDepts(curUser.DeptId).OrderBy(t => t.SortCode).ToList(); } } foreach (DepartmentEntity entity in data) { DeptData depts = new DeptData(); depts.deptid = entity.DepartmentId; depts.code = entity.EnCode; depts.oranizeid = entity.OrganizeId; depts.parentid = entity.ParentId; var parentDept = data.Where(p => p.DepartmentId == depts.parentid).FirstOrDefault(); if (null != parentDept) { depts.parentcode = parentDept.EnCode; } else { depts.parentcode = ""; } depts.name = entity.FullName; list.Add(depts); } return(new { code = 0, info = "获取数据成功", count = data.Count(), data = list }); }
public object getDeptList([FromBody] JObject json) { string res = json.Value <string>("json"); dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!" }); } string userId = dy.userid; //获取用户基本信息 OperatorProvider.AppUserId = userId; //设置当前用户 Operator user = OperatorProvider.Provider.Current(); IList <DeptData> result = new List <DeptData>(); var provdata = departmentBLL.GetList().Where(t => t.Nature == "省级" && !t.FullName.Contains("各电厂") && t.FullName != "区域子公司" && t.DeptCode.StartsWith(user.NewDeptCode.Substring(0, 3))); DepartmentEntity provEntity = null; //省级根节点 if (provdata.Count() > 0) { provEntity = provdata.FirstOrDefault(); DeptData deptdata1 = new DeptData(); deptdata1.deptid = provEntity.DepartmentId; deptdata1.code = provEntity.EnCode; deptdata1.name = provEntity.FullName; deptdata1.newcode = provEntity.DeptCode; result.Add(deptdata1); } try { if (curUser.RoleName.Contains("省级用户")) { var dtDept = departmentBLL.GetAllFactory(curUser); foreach (DataRow row in dtDept.Rows) { DeptData entity = new DeptData(); entity.deptid = row["departmentid"].ToString(); entity.code = row["encode"].ToString(); entity.name = row["fullname"].ToString(); entity.newcode = row["deptcode"].ToString(); result.Add(entity); } } else { //当前用户的所属机构 DepartmentEntity dept = userbll.GetUserOrgInfo(curUser.UserId); DeptData deptdata = new DeptData(); deptdata.deptid = dept.DepartmentId; deptdata.code = dept.EnCode; deptdata.name = dept.FullName; deptdata.newcode = dept.DeptCode; result.Add(deptdata); } } catch (Exception) { return(new { code = -1, info = "获取数据失败", count = 0 }); } return(new { code = 0, info = "获取数据成功", count = 0, data = result }); }
public object GetInst([FromBody] JObject json) { string res = json.Value <string>("json"); dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!" }); } //选中的所属单位 string orgid = string.Empty; string organizeId = string.Empty; string parentId = string.Empty; IList <DeptData> result = new List <DeptData>(); parentId = departmentBLL.GetEntity(curUser.OrganizeId).ParentId; List <DepartmentEntity> plist = new List <DepartmentEntity>(); IList <DeptData> list = new List <DeptData>(); try { DepartmentEntity org = null; DeptData dept = new DeptData(); if (curUser.RoleName.Contains("厂级部门") || curUser.RoleName.Contains("公司级")) { organizeId = curUser.OrganizeId; org = departmentBLL.GetEntity(organizeId); parentId = org.DepartmentId; plist = departmentBLL.GetList().Where(t => t.ParentId == parentId && (t.Nature == "厂级" || t.Nature == "部门")).OrderBy(t => t.SortCode).ToList(); } else if (curUser.RoleName.Contains("专业级") || curUser.RoleName.Contains("班组级")) { var deptEntity = new DepartmentBLL().GetParentDeptBySpecialArgs(curUser.ParentId, "部门"); organizeId = deptEntity.DepartmentId; org = departmentBLL.GetEntity(organizeId); parentId = deptEntity.DepartmentId; plist = departmentBLL.GetList().Where(t => t.ParentId == parentId && t.Nature == "部门").OrderBy(t => t.SortCode).ToList(); } else { organizeId = curUser.DeptId; org = departmentBLL.GetEntity(organizeId); parentId = curUser.DeptId; plist = departmentBLL.GetList().Where(t => t.ParentId == parentId && t.Nature == "部门").OrderBy(t => t.SortCode).ToList(); } dept.deptid = org.DepartmentId; dept.code = org.EnCode; dept.newcode = org.DeptCode; dept.isorg = 1; dept.oranizeid = org.OrganizeId; dept.parentcode = ""; dept.parentid = parentId; dept.name = org.FullName; dept.isparent = true; foreach (DepartmentEntity entity in plist) { DeptData depts = new DeptData(); depts.deptid = entity.DepartmentId; depts.code = entity.EnCode; depts.oranizeid = entity.OrganizeId; depts.name = entity.FullName; depts.isorg = 0; depts.parentid = entity.ParentId; if (depts.parentid == "0") { depts.parentid = depts.oranizeid; } depts.parentcode = dept.parentcode; list.Add(depts); } dept.children = list; result.Add(dept); } catch (Exception ex) { return(new { code = -1, info = "获取数据失败", count = 0 }); } return(new { code = 0, info = "获取数据成功", count = 0, data = result }); }