using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using Ropin.Inspection.Api.Common; using Ropin.Inspection.Model.ViewModel; using Ropin.Inspection.Service.Interface; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace Ropin.Inspection.Api.Controllers { /// /// 人员岗位 /// public class TsysUserPostController : BaseController { public ILogger _logger { get; } private readonly ITsysUserPostService _service; /// /// 构造函数 /// /// /// public TsysUserPostController(ITsysUserPostService service, ILogger logger) { _service = service; _logger = logger; } /// /// 添加人员岗位 /// /// /// [Route("CreateOneAsync")] [HttpPost] public async Task CreateOneAsync(TsysUserPostViewModel createViewModel) { if (createViewModel == null) { return new ApiResult(ReturnCode.ArgsError); } if (createViewModel.G_UserCode.Equals(Guid.Empty)) { throw new Exception("请选择人员"); } if (createViewModel.G_PostCode.Equals(Guid.Empty)) { throw new Exception("请选择岗位"); } try { await _service.CreateOneAsync(createViewModel); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } /// /// 通过用户ID取职位 /// /// /// [HttpGet("GetUserPostByUserIdAsync/{id}")] public async Task GetUserPostByUserIdAsync(Guid userId) { if (Guid.Empty == userId) { return new ApiResult(ReturnCode.GeneralError); } try { var post = await _service.GetUserPostsByUserIdAsync(userId); return new ApiResult(post); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 删除 /// /// /// [HttpDelete("DeleteUserPostAsync/{id}")] public async Task DeleteUserPostAsync(Guid id) { if (Guid.Empty == id) { return new ApiResult(ReturnCode.GeneralError); } try { await _service.DeleteAsync(id); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } } }