Files
jinko.yikatong/Src/Dlhis.Basic/Organization/Controllers/GainfoGroupsController.cs

83 lines
2.3 KiB
C#

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;
/// <summary>
/// 档案分组
/// </summary>
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class GainfoGroupsController : ControllerBase
{
private readonly IGainfoGroupService _gainfoGroupService;
public GainfoGroupsController(IGainfoGroupService gainfoGroupService)
{
_gainfoGroupService = gainfoGroupService;
}
/// <summary>
/// 获取档案分组树
/// </summary>
/// <returns></returns>
[HttpGet("tree")]
[IgnoreTenant]
[DataPermission]
public async Task<List<GainfoGroupTreeResponse>> GetTreeAsync(string search)
{
return await _gainfoGroupService.GetTreeAsync(search);
}
/// <summary>
/// 保存档案组
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost("save")]
public async Task SaveAsync(GainfoGroupSaveRequest request)
{
await _gainfoGroupService.SaveAsync(request);
}
/// <summary>
/// 根据分组code获取人员档案
/// </summary>
/// <param name="code"></param>
/// <returns></returns>
[HttpGet("gainfos")]
public async Task<List<GainfoPageResponse>> GetGainfosByGroupAsync(Guid code)
{
return await _gainfoGroupService.GetGainfosByGroupAsync(code);
}
/// <summary>
/// 根据userCode获取分配的分组
/// </summary>
/// <param name="userCode"></param>
/// <returns></returns>
[HttpGet("groups")]
public async Task<List<GainfoGroupTreeResponse>> GetGainfoGroupsByUserCodeAsync(string userCode)
{
return await _gainfoGroupService.GetGainfoGroupsByUserCodeAsync(userCode);
}
/// <summary>
/// 分配人员
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost("assign")]
[Transactional]
[CrossTenant]
public async Task<DevicePermissionAssignResponse> AssignGainfosAsync(GainfoAssignRequest request)
{
return await _gainfoGroupService.AssignGainfosAsync(request);
}
}