api ใบประกอบวิชาชีพ

This commit is contained in:
Kittapath 2023-07-05 19:08:38 +07:00
parent e4fa2ff1c1
commit 0a626fb393
8 changed files with 104 additions and 55 deletions

View file

@ -1,5 +1,6 @@
using BMA.EHR.Application.Repositories;
using BMA.EHR.Domain.Common;
using BMA.EHR.Domain.Models.Placement;
using BMA.EHR.Domain.Shared;
using BMA.EHR.Infrastructure.Persistence;
using BMA.EHR.Placement.Service.Requests;
@ -541,16 +542,64 @@ namespace BMA.EHR.Placement.Service.Controllers
return Success();
}
[HttpGet("certificate/{personalId:length(36)}")]
[HttpPut("certificate/{personalId:length(36)}")]
public async Task<ActionResult<ResponseObject>> UpdateCertificate([FromBody] PersonCertificateRequest req, Guid personalId)
{
var person = await _context.PlacementProfiles.FindAsync(personalId);
var person = await _context.PlacementProfiles
.Include(x => x.PlacementCertificates)
.FirstOrDefaultAsync(x => x.Id == personalId);
if (person == null)
return Error(GlobalMessages.DataNotFound, 404);
person.LastUpdateFullName = FullName ?? "System Administrator";
person.LastUpdateUserId = UserId ?? "";
person.LastUpdatedAt = DateTime.Now;
if (req.Id == null)
{
var data = new PlacementCertificate
{
PlacementProfile = person,
CertificateNo = req.CertificateNo,
Issuer = req.Issuer,
IssueDate = req.IssueDate,
ExpireDate = req.ExpireDate,
CertificateType = req.CertificateType,
CreatedUserId = FullName ?? "",
CreatedFullName = UserId ?? "System Administrator",
CreatedAt = DateTime.Now,
LastUpdateFullName = FullName ?? "System Administrator",
LastUpdateUserId = UserId ?? "",
LastUpdatedAt = DateTime.Now,
};
}
else
{
var certificate = person.PlacementCertificates.FirstOrDefault(x => x.Id == req.Id);
if (certificate == null)
return Error(GlobalMessages.CertificateNotFound, 404);
certificate.CertificateNo = req.CertificateNo;
certificate.Issuer = req.Issuer;
certificate.IssueDate = req.IssueDate;
certificate.ExpireDate = req.ExpireDate;
certificate.CertificateType = req.CertificateType;
certificate.LastUpdateFullName = FullName ?? "System Administrator";
certificate.LastUpdateUserId = UserId ?? "";
certificate.LastUpdatedAt = DateTime.Now;
}
_context.SaveChanges();
return Success();
}
[HttpDelete("certificate/{personalId:length(36)}/{certificateId:length(36)}")]
public async Task<ActionResult<ResponseObject>> DeleteCertificate(Guid personalId, Guid certificateId)
{
var person = await _context.PlacementProfiles
.Include(x => x.PlacementCertificates)
.FirstOrDefaultAsync(x => x.Id == personalId);
if (person == null)
return Error(GlobalMessages.DataNotFound, 404);
var certificate = person.PlacementCertificates.FirstOrDefault(x => x.Id == certificateId);
if (certificate == null)
return Error(GlobalMessages.CertificateNotFound, 404);
_context.PlacementCertificates.Remove(certificate);
_context.SaveChanges();
return Success();

View file

@ -5,7 +5,11 @@ namespace BMA.EHR.Placement.Service.Requests
{
public class PersonCertificateRequest
{
public string Name { get; set; }
public bool Value { get; set; }
public Guid? Id { get; set; }
public string? CertificateNo { get; set; }
public string? Issuer { get; set; }
public DateTime? IssueDate { get; set; }
public DateTime? ExpireDate { get; set; }
public string? CertificateType { get; set; }
}
}

View file

@ -11,31 +11,31 @@ namespace BMA.EHR.Placement.Service.Requests
public string? CoupleLastName { get; set; }
public string? CoupleLastNameOld { get; set; }
public string? CoupleCareer { get; set; }
public string? CoupleCitizenId { get; set; }
public bool CoupleLive { get; set; }
// public string? CoupleCitizenId { get; set; }
// public bool CoupleLive { get; set; }
public Guid? FatherPrefixId { get; set; }
public string? FatherFirstName { get; set; }
public string? FatherLastName { get; set; }
public string? FatherCareer { get; set; }
public string? FatherCitizenId { get; set; }
public bool FatherLive { get; set; }
// public string? FatherCitizenId { get; set; }
// public bool FatherLive { get; set; }
public Guid? MotherPrefixId { get; set; }
public string? MotherFirstName { get; set; }
public string? MotherLastName { get; set; }
public string? MotherCareer { get; set; }
public string? MotherCitizenId { get; set; }
public bool MotherLive { get; set; }
public virtual List<ProfileChildrenRequest> Childrens { get; set; } = new List<ProfileChildrenRequest>();
}
public class ProfileChildrenRequest
{
public Guid? ChildrenPrefixId { get; set; }
public string? ChildrenFirstName { get; set; }
public string? ChildrenLastName { get; set; }
public string? ChildrenCareer { get; set; }
public string? ChildrenCitizenId { get; set; }
public string ChildrenLive { get; set; }
// public string? MotherCitizenId { get; set; }
// public bool MotherLive { get; set; }
// public virtual List<ProfileChildrenRequest> Childrens { get; set; } = new List<ProfileChildrenRequest>();
}
// public class ProfileChildrenRequest
// {
// public Guid? ChildrenPrefixId { get; set; }
// public string? ChildrenFirstName { get; set; }
// public string? ChildrenLastName { get; set; }
// public string? ChildrenCareer { get; set; }
// public string? ChildrenCitizenId { get; set; }
// public string ChildrenLive { get; set; }
// }
}