Security/Yuebon.Security.Services/OrganizeService.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

namespace Yuebon.Security.Services;

/// <summary>
/// 组织机构
/// </summary>
public class OrganizeService: BaseService<Organize, OrganizeOutputDto>, IOrganizeService
{
    private readonly IOrganizeRepository _repository;
    private readonly ILogService _logService;
    private readonly IUserRepository _userRepository;
    /// <summary>
    /// 
    /// </summary>
    /// <param name="repository"></param>
    /// <param name="logService"></param>
    public OrganizeService(IOrganizeRepository organizeRepository, ILogService logService, IUserRepository userRepository)
    {
        repository = organizeRepository;
        _repository = organizeRepository;
        _logService = logService;
        _userRepository = userRepository;
    }


    /// <summary>
    /// 获取组织机构适用于Vue 树形列表
    /// </summary>
    /// <returns></returns>
    public async Task<List<Organize>> GetAllOrganizeTreeTable()
    {
        return await _repository.GetAllOrganizeTreeTable();
    }


    /// <summary>
    /// 获取子集,递归调用
    /// </summary>
    /// <param name="data"></param>
    /// <param name="parentId">父级Id</param>
    /// <returns></returns>
    private List<OrganizeOutputDto> GetSubOrganizes(List<Organize> data, long parentId)
    {
        List<OrganizeOutputDto> list = new List<OrganizeOutputDto>();
        OrganizeOutputDto OrganizeOutputDto = new OrganizeOutputDto();
        var ChilList = data.FindAll(t => t.ParentId == parentId);
        foreach (Organize entity in ChilList)
        {
            OrganizeOutputDto = entity.MapTo<OrganizeOutputDto>();
            OrganizeOutputDto.Children = GetSubOrganizes(data, entity.Id).OrderBy(t => t.SortCode).MapTo<OrganizeOutputDto>();
            list.Add(OrganizeOutputDto);
        }
        return list;
    }

    /// <summary>
    /// 获取根节点组织
    /// </summary>
    /// <param name="id">组织Id</param>
    /// <returns></returns>
    public Organize GetRootOrganize(long? id)
后面还有 76 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。