Cat.Business/Cat.Business/OrganizationManage/DepartmentBLL.cs
(开头部分) 7KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Cat.Entity.OrganizationManage;
using Cat.Model.Param.OrganizationManage;
using Cat.Model.Result;
using Cat.Service.OrganizationManage;
using Cat.Util;
using Cat.Util.Extension;
using Cat.Util.Model;
using Cat.Web.Code;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Cat.Business.OrganizationManage
{
public class DepartmentBLL
{
private DepartmentService departmentService = new DepartmentService();
private UserService userService = new UserService();
#region 获取数据
public async Task<TData<List<DepartmentEntity>>> GetList(DepartmentListParam param)
{
TData<List<DepartmentEntity>> obj = new TData<List<DepartmentEntity>>();
obj.Data = await departmentService.GetList(param);
OperatorInfo operatorInfo = await Operator.Instance.Current();
if (operatorInfo.IsSystem != 1)
{
List<long> childrenDepartmentIdList = await GetChildrenDepartmentIdList(obj.Data, operatorInfo.DepartmentId.Value);
obj.Data = obj.Data.Where(p => childrenDepartmentIdList.Contains(p.Id.Value)).ToList();
}
List<UserEntity> userList = await userService.GetList(new UserListParam { UserIds = string.Join(",", obj.Data.Select(p => p.PrincipalId).ToArray()) });
foreach (DepartmentEntity entity in obj.Data)
{
if (entity.PrincipalId > 0)
{
entity.PrincipalName = userList.Where(p => p.Id == entity.PrincipalId).Select(p => p.RealName).FirstOrDefault();
}
else
{
entity.PrincipalName = string.Empty;
}
}
obj.Tag = 1;
return obj;
}
public async Task<TData<List<ZtreeInfo>>> GetZtreeDepartmentList(DepartmentListParam param)
{
var obj = new TData<List<ZtreeInfo>>();
obj.Data = new List<ZtreeInfo>();
List<DepartmentEntity> departmentList = await departmentService.GetList(param);
OperatorInfo operatorInfo = await Operator.Instance.Current();
if (operatorInfo.IsSystem != 1)
{
List<long> childrenDepartmentIdList = await GetChildrenDepartmentIdList(departmentList, operatorInfo.DepartmentId.Value);
departmentList = departmentList.Where(p => childrenDepartmentIdList.Contains(p.Id.Value)).ToList();
}
foreach (DepartmentEntity department in departmentList)
{
obj.Data.Add(new ZtreeInfo
后面还有 136 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。