using Dlhis.Basic.Device.Response;
using Dlhis.Basic.Organization.Request;
using Dlhis.Basic.Organization.Response;
using Dlhis.Basic.Organization.Services;
using Kurisu.AspNetCore.DataAccess.SqlSugar.Aop;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Dlhis.Basic.Organization.Controllers;
///
/// 档案分组
///
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class GainfoGroupsController : ControllerBase
{
private readonly IGainfoGroupService _gainfoGroupService;
public GainfoGroupsController(IGainfoGroupService gainfoGroupService)
{
_gainfoGroupService = gainfoGroupService;
}
///
/// 获取档案分组树
///
///
[HttpGet("tree")]
[IgnoreTenant]
[DataPermission]
public async Task> GetTreeAsync()
{
return await _gainfoGroupService.GetTreeAsync();
}
///
/// 保存档案组
///
///
///
[HttpPost("save")]
public async Task SaveAsync(GainfoGroupSaveRequest request)
{
await _gainfoGroupService.SaveAsync(request);
}
///
/// 根据分组code获取人员档案
///
///
///
[HttpGet("gainfos")]
public async Task> GetGainfosByGroupAsync(Guid code)
{
return await _gainfoGroupService.GetGainfosByGroupAsync(code);
}
///
/// 根据userCode获取分配的分组
///
///
///
[HttpGet("groups")]
public async Task> GetGainfoGroupsByUserCodeAsync(string userCode)
{
return await _gainfoGroupService.GetGainfoGroupsByUserCodeAsync(userCode);
}
///
/// 分配人员
///
///
///
[HttpPost("assign")]
[Transactional]
[CrossTenant]
public async Task AssignGainfosAsync(GainfoAssignRequest request)
{
return await _gainfoGroupService.AssignGainfosAsync(request);
}
}