เพิ่ม API การเจ้าหน้าที่แก้ไขข้อมูลการขอลาออกได้หาก สถานะเป็น ใหม่ (NEW) #1714
Some checks failed
release-dev / release-dev (push) Failing after 11s
Some checks failed
release-dev / release-dev (push) Failing after 11s
This commit is contained in:
parent
e3a57b0159
commit
23d86f632e
3 changed files with 88 additions and 0 deletions
|
|
@ -3563,6 +3563,43 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// แก้ไขข้อมูลการลาออกของข้าราชการ
|
||||
/// </summary>
|
||||
/// <param name="id">Id ลาออก</param>
|
||||
/// <returns></returns>
|
||||
/// <response code="200"></response>
|
||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||
[HttpPut("admin-update/resign-info/{id:length(36)}")]
|
||||
public async Task<ActionResult<ResponseObject>> UpdateResignInfo([FromBody] RetirementUpdateResignInfoRequest req, Guid id)
|
||||
{
|
||||
var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_RESIGN");
|
||||
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
|
||||
if (jsonData["status"]?.ToString() != "200")
|
||||
{
|
||||
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
|
||||
}
|
||||
var updated = await _context.RetirementResigns.AsQueryable()
|
||||
.FirstOrDefaultAsync(x => x.Id == id);
|
||||
if (updated == null)
|
||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||
|
||||
updated.Location = !string.IsNullOrEmpty(req.Location) ? req.Location : updated.Location;
|
||||
updated.ReasonResign = !string.IsNullOrEmpty(req.ReasonResign) ? req.ReasonResign : updated.ReasonResign;
|
||||
updated.Remark = !string.IsNullOrEmpty(req.ReasonResign) && req.ReasonResign == "อื่น ๆ" && !string.IsNullOrEmpty(req.Remark)
|
||||
? req.Remark
|
||||
: null;
|
||||
updated.SendDate = req.SendDate.HasValue ? req.SendDate : updated.SendDate;
|
||||
updated.ActiveDate = req.ActiveDate.HasValue ? req.ActiveDate : updated.ActiveDate;
|
||||
updated.LastUpdateFullName = FullName ?? "System Administrator";
|
||||
updated.LastUpdateUserId = UserId ?? "";
|
||||
updated.LastUpdatedAt = DateTime.Now;
|
||||
await _context.SaveChangesAsync();
|
||||
return Success();
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3030,5 +3030,42 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// แก้ไขข้อมูลการลาออกของลูกจ้างประจำ
|
||||
/// </summary>
|
||||
/// <param name="id">Id ลาออก</param>
|
||||
/// <returns></returns>
|
||||
/// <response code="200"></response>
|
||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||
[HttpPut("admin-update/resign-info/{id:length(36)}")]
|
||||
public async Task<ActionResult<ResponseObject>> UpdateResignInfo([FromBody] RetirementUpdateResignInfoRequest req, Guid id)
|
||||
{
|
||||
var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_RESIGN_EMP");
|
||||
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
|
||||
if (jsonData["status"]?.ToString() != "200")
|
||||
{
|
||||
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
|
||||
}
|
||||
var updated = await _context.RetirementResignEmployees.AsQueryable()
|
||||
.FirstOrDefaultAsync(x => x.Id == id);
|
||||
if (updated == null)
|
||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||
|
||||
updated.Location = !string.IsNullOrEmpty(req.Location) ? req.Location : updated.Location;
|
||||
updated.ReasonResign = !string.IsNullOrEmpty(req.ReasonResign) ? req.ReasonResign : updated.ReasonResign;
|
||||
updated.Remark = !string.IsNullOrEmpty(req.ReasonResign) && req.ReasonResign == "อื่น ๆ" && !string.IsNullOrEmpty(req.Remark)
|
||||
? req.Remark
|
||||
: null;
|
||||
updated.SendDate = req.SendDate.HasValue ? req.SendDate : updated.SendDate;
|
||||
updated.ActiveDate = req.ActiveDate.HasValue ? req.ActiveDate : updated.ActiveDate;
|
||||
updated.LastUpdateFullName = FullName ?? "System Administrator";
|
||||
updated.LastUpdateUserId = UserId ?? "";
|
||||
updated.LastUpdatedAt = DateTime.Now;
|
||||
await _context.SaveChangesAsync();
|
||||
return Success();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,14 @@
|
|||
using BMA.EHR.Domain.Models.MetaData;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace BMA.EHR.Retirement.Service.Requests
|
||||
{
|
||||
public class RetirementUpdateResignInfoRequest
|
||||
{
|
||||
public string? Location { get; set; }
|
||||
public string? ReasonResign { get; set; }
|
||||
public string? Remark { get; set; }
|
||||
public DateTime? SendDate { get; set; }
|
||||
public DateTime? ActiveDate { get; set; }
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue