permission พ้นจากราชการ

This commit is contained in:
Bright 2024-08-20 17:27:27 +07:00
parent f8c62a1cde
commit 114ef1c01e
4 changed files with 147 additions and 4 deletions

View file

@ -10,6 +10,7 @@ using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Swashbuckle.AspNetCore.Annotations;
using System.Net.Http.Headers;
using System.Security.Claims;
@ -31,6 +32,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
private readonly OrganizationCommonRepository _organizationCommonRepository;
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly IConfiguration _configuration;
private readonly PermissionRepository _permission;
public RetirementController(RetirementRepository repository,
NotificationRepository repositoryNoti,
@ -38,7 +40,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
MinIOService documentService,
IConfiguration configuration,
OrganizationCommonRepository organizationCommonRepository,
IHttpContextAccessor httpContextAccessor)
IHttpContextAccessor httpContextAccessor,
PermissionRepository permission)
{
_repository = repository;
_repositoryNoti = repositoryNoti;
@ -47,6 +50,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
_organizationCommonRepository = organizationCommonRepository;
_httpContextAccessor = httpContextAccessor;
_configuration = configuration;
_permission = permission;
}
#region " Properties "
@ -315,6 +319,15 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpPost("profile")]
public async Task<ActionResult<ResponseObject>> CreateProfileRetirement([FromBody] PeriodRequest req)
{
var action = "CREATE";
var system = "SYS_RETIREMENT";
var getPermission = await _permission.GetPermissionAPIAsync(action, system);
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
var attrPrivilege = jsonData["result"]?.ToString();
if (!req.Type.Trim().ToUpper().Contains("EMPLOYEE") && !req.Type.Trim().ToUpper().Contains("OFFICER"))
return Error("ประเภทพ้นราชการไม่ถูกต้อง");
if (req.Year == 0)
@ -862,6 +875,16 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpPut("profile/{retireId:length(36)}")]
public async Task<ActionResult<ResponseObject>> AddProfileRetirement([FromBody] ProfileRequest req, Guid retireId)
{
var action = "UPDATE";
var system = "SYS_RETIREMENT";
var getPermission = await _permission.GetPermissionAPIAsync(action, system);
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
var attrPrivilege = jsonData["result"]?.ToString();
// var profile = await _context.Profiles
// .FirstOrDefaultAsync(x => x.Id == req.ProfileId);
// if (profile == null)
@ -1042,6 +1065,15 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpPost("edit")]
public async Task<ActionResult<ResponseObject>> EditReasonProfileRetirement([FromBody] ProfileRetireRequest req)
{
var action = "CREATE";
var system = "SYS_RETIREMENT";
var getPermission = await _permission.GetPermissionAPIAsync(action, system);
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
var attrPrivilege = jsonData["result"]?.ToString();
var profile = await _context.RetirementProfiles
.FirstOrDefaultAsync(x => x.Id == req.RetireProfileId);
if (profile == null)
@ -1155,6 +1187,15 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpPut("upload/{retireId:length(36)}")]
public async Task<ActionResult<ResponseObject>> UploadRetirement([FromForm] RetirementFileRequest req, Guid retireId)
{
var action = "UPDATE";
var system = "SYS_RETIREMENT";
var getPermission = await _permission.GetPermissionAPIAsync(action, system);
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
var attrPrivilege = jsonData["result"]?.ToString();
var retire = await _context.RetirementPeriods
.FirstOrDefaultAsync(x => x.Id == retireId);
if (retire == null)
@ -1212,6 +1253,15 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpPut("detail/{retireId:length(36)}")]
public async Task<ActionResult<ResponseObject>> UpdateDetailRetirement([FromForm] RetirementDetailRequest req, Guid retireId)
{
var action = "UPDATE";
var system = "SYS_RETIREMENT";
var getPermission = await _permission.GetPermissionAPIAsync(action, system);
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
var attrPrivilege = jsonData["result"]?.ToString();
var retire = await _context.RetirementPeriods
.FirstOrDefaultAsync(x => x.Id == retireId);
if (retire == null)