using Dlhis.Basic.Organization.Filters; using Dlhis.Basic.Organization.Request; using Dlhis.Basic.Organization.Response; using Dlhis.Basic.Organization.Services; using Kurisu.AspNetCore.MVC; using Kurisu.Core.DataAccess.Dto; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; namespace Dlhis.Basic.MealUser.Controllers; /// /// sap档案表 /// [Authorize] [ApiDefinition("SAP", Description = "晶科sap组织架构信息")] [Route("api/[controller]")] [ApiController] public class GainfosController : ControllerBase { private readonly IGainfoService _gainfoService; public GainfosController(IGainfoService gainfoService) { _gainfoService = gainfoService; } /// /// 档案表保存 /// /// /// [HttpPost("save")] public async Task SaveAsync(List requests) { await _gainfoService.SaveAsync(requests); } /// /// 档案分页 /// /// /// [HttpPost("page")] public async Task> GetPageAsync(GainfoPageRequest request) { return await _gainfoService.GetPageAsync(request); } /// /// 档案表修改 /// /// /// [HttpPut("update")] public async Task UpdateAsync(GainfoSaveRequest request) { await _gainfoService.UpdateAsync(request); } /// /// 离职 /// /// /// [HttpPost("dimission")] public async Task DimissionAsync(GainfoDimissionRequest request) { await _gainfoService.DimissionAsync(request); } /// /// 入职 /// /// /// [HttpPost("onboarding")] public async Task OnboardingAsync(GainfoDimissionRequest request) { await _gainfoService.OnboardingAsync(request); } /// /// 当前人员信息,余额 /// /// [HttpGet("current")] public async Task CurrentUserInfoAsync() { return await _gainfoService.CurrentUserInfoAsync(); } /// /// 上传人脸照片 /// /// [HttpPost("face")] public async Task UploadFaceAsync(GainfoUploadFaceRequest request) { await _gainfoService.UploadFaceAsync(request); } /// /// 批量上传人脸照片 /// /// /// [HttpPost("batchface")] public async Task UploadFaceAsync(List request) { await _gainfoService.UploadFacesAsync(request); } /// /// 通过token获取人脸照片,失效或者找不到返回HttpStatus404状态码 /// /// /// [NotFound] [AllowAnonymous] [HttpGet("face")] public async Task GetFaceAsync(string token) { return await _gainfoService.GetFaceAsync(token); } /// /// 通过学工号获取人脸照片url地址 /// /// /// [HttpGet("face/{userCode}")] public async Task GetFaceByUserCodeAsync(string userCode) { return await _gainfoService.GetFaceByUserCodeAsync(userCode); } /// /// 批量获取人脸照片url地址 /// /// /// [HttpPost("faces")] public async Task> GetFaceByUserCodesAsync(GetFaceByUserCodesRequest request) { return await _gainfoService.GetFaceByUserCodesAsync(request); } /// /// 档案列表 /// /// /// [HttpGet("list")] public async Task> GetGainfoListTaskAsync([FromQuery] GainfoListRequest request) { return await _gainfoService.GetGainfoListAsync(request); } /// /// 档案详情 /// /// /// [HttpGet("detail")] public async Task GetGainfoDetailAsync([FromQuery] GainfoDetailRequest request) { return await _gainfoService.GetGainfoDetailAsync(request); } }