Merge branch 'develop' into working
All checks were successful
Build & Deploy Leave Service / build (push) Successful in 1m9s
Build & Deploy Checkin Service / build (push) Successful in 2m4s

This commit is contained in:
Suphonchai Phoonsawat 2026-01-19 22:43:24 +07:00
commit 6c8e79b1bc
2 changed files with 50 additions and 19 deletions

View file

@ -1136,9 +1136,28 @@ namespace BMA.EHR.Leave.Service.Controllers
dateSendLeave = data.CreatedAt.Date.ToThaiShortDate().ToThaiNumber(),
leaveTypeName = data.Type.Name,
fullname = fullName,
positionName = profile!.Position == null ? "-" : profile!.Position.ToThaiNumber(),
position = string.IsNullOrEmpty(profile.Position) ? "-" : profile.Position,
positionName = (!string.IsNullOrEmpty(profile.PositionLeaveName) &&
(profile.PositionLeaveName.Contains("อำนวยการ") || profile.PositionLeaveName.Contains("บริหาร"))
? string.IsNullOrEmpty(profile.PosExecutiveName)
? string.IsNullOrEmpty(profile.Position)
? "-"
: profile.Position
: profile.PosExecutiveName
: string.IsNullOrEmpty(profile.Position)
? "-"
: string.IsNullOrEmpty(profile.PositionLeaveName)
? profile.Position
: $"{profile.Position}{profile.PositionLeaveName}").ToThaiNumber(),
positionLeaveName = profile!.PositionLeaveName == null ? "-" : profile!.PositionLeaveName.ToThaiNumber(),
organizationName = profile!.Oc ?? "",
posExecutiveName = profile.PosExecutiveName,
organizationName = profile!.Oc!.ToThaiNumber(),
posExOrg = !string.IsNullOrEmpty(profile.PositionLeaveName) &&
(profile.PositionLeaveName.Contains("อำนวยการ") || profile.PositionLeaveName.Contains("บริหาร"))
? new[] { (profile!.Oc!.ToThaiNumber()) }
: !string.IsNullOrEmpty(profile.PosExecutiveName)
? new[] { (profile.PosExecutiveName.ToThaiNumber()), (profile!.Oc!.ToThaiNumber()) }
: new[] { (profile!.Oc!.ToThaiNumber()) },
leaveDateStart = data.LeaveStartDate.Date.ToThaiShortDate().ToThaiNumber(),
leaveDateEnd = data.LeaveEndDate.Date.ToThaiShortDate().ToThaiNumber(),
dear = data.CommanderPosition == null ? data.Dear : data.CommanderPosition.ToThaiNumber(),
@ -2834,7 +2853,7 @@ namespace BMA.EHR.Leave.Service.Controllers
? x.LastUpdatedAt.Value.Date.ToThaiShortDate().ToThaiNumber()
: "............/............/............",
comment = !string.IsNullOrEmpty(x.Comment)
? x.Comment.Replace("\r", "").Replace("\n", " ").Trim()
? (x.Comment.Replace("\r", "").Replace("\n", " ").Trim()).ToThaiNumber()
: "......................................................................................................................................................................",
approveType = (x.ApproveType ?? "").Trim().ToUpper()
})

View file

@ -239,16 +239,6 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpGet("{id:length(36)}")]
public async Task<ActionResult<ResponseObject>> GetDetailAdmin(Guid id)
{
var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), "SYS_DISMISS");
if (getWorkflow == false)
{
var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_DISMISS");
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
}
var data = await _context.RetirementOuts.AsQueryable()
.Where(x => x.Id == id)
.Select(p => new
@ -294,6 +284,20 @@ namespace BMA.EHR.Retirement.Service.Controllers
p.OrganizationOld,
})
.FirstOrDefaultAsync();
string _system = data != null && data.profileType?.Trim().ToUpper() == "OFFICER" ? "SYS_DISMISS" : "SYS_DISMISS_EMP";
var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), _system);
if (getWorkflow == false)
{
var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_DISMISS");
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
}
if (data == null)
return Error(GlobalMessages.DataNotFound, 404);
@ -462,14 +466,18 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpPut("{id:length(36)}")]
public async Task<ActionResult<ResponseObject>> Put([FromBody] RetirementOutEditRequest req, Guid id)
{
var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_DISMISS");
var uppdated = await _context.RetirementOuts
.FirstOrDefaultAsync(x => x.Id == id);
string _system = uppdated != null && uppdated.profileType?.Trim().ToUpper() == "OFFICER" ? "SYS_DISMISS" : "SYS_DISMISS_EMP";
var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", _system);
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
var uppdated = await _context.RetirementOuts
.FirstOrDefaultAsync(x => x.Id == id);
if (uppdated == null)
return Error(GlobalMessages.RetirementOutNotFound, 404);
@ -527,14 +535,18 @@ namespace BMA.EHR.Retirement.Service.Controllers
[HttpDelete("{id:length(36)}")]
public async Task<ActionResult<ResponseObject>> Delete(Guid id)
{
var getPermission = await _permission.GetPermissionAPIAsync("DELETE", "SYS_DISMISS");
var deleted = await _context.RetirementOuts.AsQueryable()
.FirstOrDefaultAsync(x => x.Id == id);
string _system = deleted != null && deleted.profileType?.Trim().ToUpper() == "OFFICER" ? "SYS_DISMISS" : "SYS_DISMISS_EMP";
var getPermission = await _permission.GetPermissionAPIAsync("DELETE", _system);
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
if (jsonData["status"]?.ToString() != "200")
{
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
}
var deleted = await _context.RetirementOuts.AsQueryable()
.FirstOrDefaultAsync(x => x.Id == id);
if (deleted == null)
return NotFound();
_context.RetirementOuts.Remove(deleted);