api บันทึกเครื่องราช
This commit is contained in:
parent
9abb9c5422
commit
51bdcf4041
50 changed files with 162548 additions and 111 deletions
|
|
@ -4801,7 +4801,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
}
|
}
|
||||||
|
|
||||||
// Save Aprove
|
// Save Aprove
|
||||||
public async Task SaveAprove(Guid period, Guid ocId, InsigniaApproveRequest prm)
|
public async Task SaveAprove(Guid period, Guid ocId)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
@ -4809,11 +4809,12 @@ namespace BMA.EHR.Application.Repositories
|
||||||
|
|
||||||
if (req != null)
|
if (req != null)
|
||||||
{
|
{
|
||||||
foreach (var item in prm.Items)
|
var insigniaRequestProfiles = await _dbContext.Set<InsigniaRequestProfile>()
|
||||||
|
.Where(x => x.Request.Id == req)
|
||||||
|
.ToListAsync();
|
||||||
|
foreach (var insigniaRequestProfile in insigniaRequestProfiles)
|
||||||
{
|
{
|
||||||
var approve = await _dbContext.Set<InsigniaRequestProfile>()
|
insigniaRequestProfile.IsApprove = true;
|
||||||
.FirstOrDefaultAsync(x => x.Profile.Id == item.ProfileId && x.Request.Id == req);
|
|
||||||
approve.IsApprove = item.IsApprove;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -4835,7 +4836,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
{
|
{
|
||||||
Id = p.Id,
|
Id = p.Id,
|
||||||
Name = p.Name,
|
Name = p.Name,
|
||||||
Type = p.Type,
|
Round = p.Round,
|
||||||
Year = p.Year,
|
Year = p.Year,
|
||||||
})
|
})
|
||||||
.FirstOrDefaultAsync(x => x.Id == id);
|
.FirstOrDefaultAsync(x => x.Id == id);
|
||||||
|
|
@ -4853,7 +4854,8 @@ namespace BMA.EHR.Application.Repositories
|
||||||
return new InsigniaResults
|
return new InsigniaResults
|
||||||
{
|
{
|
||||||
PeriodId = period.Id,
|
PeriodId = period.Id,
|
||||||
Year = period.Year.ToString(),
|
Year = period.Year,
|
||||||
|
Round = period.Round,
|
||||||
Name = period.Name,
|
Name = period.Name,
|
||||||
RequestStatus = request == null ? null : request.RequestStatus,
|
RequestStatus = request == null ? null : request.RequestStatus,
|
||||||
OrganizationName = request == null ? "" : request.Organization.OrganizationOrganization.Name
|
OrganizationName = request == null ? "" : request.Organization.OrganizationOrganization.Name
|
||||||
|
|
@ -4966,6 +4968,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
.Select(h => new InsigniaRequestItem
|
.Select(h => new InsigniaRequestItem
|
||||||
{
|
{
|
||||||
Id = h.Id,
|
Id = h.Id,
|
||||||
|
CitizenId = h.Profile.CitizenId,
|
||||||
ProfileId = h.Profile.Id,
|
ProfileId = h.Profile.Id,
|
||||||
FullName = $"{h.Profile.FirstName} {h.Profile.LastName}",
|
FullName = $"{h.Profile.FirstName} {h.Profile.LastName}",
|
||||||
Position = h.Profile.Position.Name,
|
Position = h.Profile.Position.Name,
|
||||||
|
|
@ -5100,6 +5103,17 @@ namespace BMA.EHR.Application.Repositories
|
||||||
if (period == null)
|
if (period == null)
|
||||||
throw new Exception(GlobalMessages.CoinPeriodNotFound);
|
throw new Exception(GlobalMessages.CoinPeriodNotFound);
|
||||||
|
|
||||||
|
var periodOlds = await _dbContext.Set<InsigniaPeriod>().Where(p => p.Year == period.Year).ToListAsync();
|
||||||
|
foreach (var periodOld in periodOlds)
|
||||||
|
{
|
||||||
|
var requestOlds = await _dbContext.Set<InsigniaRequest>().Where(p => p.Period == periodOld).ToListAsync();
|
||||||
|
foreach (var requestOld in requestOlds)
|
||||||
|
{
|
||||||
|
var profileOlds = await _dbContext.Set<InsigniaRequestProfile>().Where(p => p.Request == requestOld).Select(x => x.Profile.Id).ToListAsync();
|
||||||
|
items = items.Where(x => !profileOlds.Contains(x.ProfileId)).ToList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var oc = await _dbContext.Set<OrganizationEntity>().FirstOrDefaultAsync(x => x.Id == ocId);
|
var oc = await _dbContext.Set<OrganizationEntity>().FirstOrDefaultAsync(x => x.Id == ocId);
|
||||||
|
|
||||||
if (oc == null)
|
if (oc == null)
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ namespace BMA.EHR.Application.Requests
|
||||||
{
|
{
|
||||||
public class InsigniaPeriodRequest
|
public class InsigniaPeriodRequest
|
||||||
{
|
{
|
||||||
public string Name { get; set; }
|
public string? Name { get; set; }
|
||||||
|
|
||||||
public int Year { get; set; }
|
public int Year { get; set; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
public class InsigniaRequestItem
|
public class InsigniaRequestItem
|
||||||
{
|
{
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
|
public string CitizenId { get; set; }
|
||||||
public Guid ProfileId { get; set; }
|
public Guid ProfileId { get; set; }
|
||||||
public string FullName { get; set; }
|
public string FullName { get; set; }
|
||||||
public string Position { get; set; }
|
public string Position { get; set; }
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,9 @@ namespace BMA.EHR.Application.Requests
|
||||||
public class InsigniaResults
|
public class InsigniaResults
|
||||||
{
|
{
|
||||||
public Guid PeriodId { get; set; }
|
public Guid PeriodId { get; set; }
|
||||||
public string Name { get; set; }
|
public string? Name { get; set; }
|
||||||
public string Year { get; set; }
|
public int Year { get; set; }
|
||||||
|
public int Round { get; set; }
|
||||||
public string RequestStatus { get; set; }
|
public string RequestStatus { get; set; }
|
||||||
public string OrganizationName { get; set; }
|
public string OrganizationName { get; set; }
|
||||||
public List<InsigniaRequestItem> Items { get; set; }
|
public List<InsigniaRequestItem> Items { get; set; }
|
||||||
|
|
|
||||||
24
BMA.EHR.Domain/Models/Insignias/InsigniaNote.cs
Normal file
24
BMA.EHR.Domain/Models/Insignias/InsigniaNote.cs
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using BMA.EHR.Domain.Models.Base;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
using BMA.EHR.Domain.Models.Documents;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Domain.Models.Insignias
|
||||||
|
{
|
||||||
|
public class InsigniaNote : EntityBase
|
||||||
|
{
|
||||||
|
[MaxLength(200)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
public int Year { get; set; }
|
||||||
|
// public DateTime StartDate { get; set; }
|
||||||
|
// public DateTime EndDate { get; set; }
|
||||||
|
// [MaxLength(50)]
|
||||||
|
// public int Amount { get; set; }
|
||||||
|
// public Document? ReliefDoc { get; set; }
|
||||||
|
// [Comment("ราบการยื่นขอ")]
|
||||||
|
// public int Round { get; set; } = 1;
|
||||||
|
public virtual List<InsigniaNoteProfile> InsigniaNoteProfiles { get; set; }
|
||||||
|
public virtual List<InsigniaNoteDoc> InsigniaNoteDocs { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
17
BMA.EHR.Domain/Models/Insignias/InsigniaNoteDoc.cs
Normal file
17
BMA.EHR.Domain/Models/Insignias/InsigniaNoteDoc.cs
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
using BMA.EHR.Domain.Models.Base;
|
||||||
|
using BMA.EHR.Domain.Models.Documents;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Domain.Models.Insignias
|
||||||
|
{
|
||||||
|
public class InsigniaNoteDoc : EntityBase
|
||||||
|
{
|
||||||
|
[Required, Comment("อ้างอิงรหัสเอกสาร")]
|
||||||
|
public Document Document { get; set; }
|
||||||
|
[Comment("หมายเหตุ")]
|
||||||
|
public string? Reason { get; set; }
|
||||||
|
[Required, Comment("อ้างอิงันทึกผลเครื่องราช")]
|
||||||
|
public virtual InsigniaNote InsigniaNote { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
45
BMA.EHR.Domain/Models/Insignias/InsigniaNoteProfile.cs
Normal file
45
BMA.EHR.Domain/Models/Insignias/InsigniaNoteProfile.cs
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using BMA.EHR.Domain.Models.Base;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using BMA.EHR.Domain.Models.HR;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Domain.Models.Insignias
|
||||||
|
{
|
||||||
|
public class InsigniaNoteProfile : EntityBase
|
||||||
|
{
|
||||||
|
public DateTime? RequestDate { get; set; }
|
||||||
|
public double? Salary { get; set; }
|
||||||
|
public bool IsApprove { get; set; } = false;
|
||||||
|
[Comment("สถานะตำแหน่งที่ยื่นขอ")]
|
||||||
|
public string Status { get; set; } = "PENDING";
|
||||||
|
[Comment("หมายเลขประกาศนียบัตรกำกับเครื่องราชฯ")]
|
||||||
|
public string? Number { get; set; }
|
||||||
|
[Comment("วันที่ได้รับพระราชทานเครื่องราชฯ")]
|
||||||
|
public DateTime? DateReceive { get; set; }
|
||||||
|
[Comment("สังกัด ณ วันที่ขอพระราชทานเครื่องราชฯ")]
|
||||||
|
public OrganizationOrganization? OrganizationOrganizationSend { get; set; }
|
||||||
|
[Comment("วันที่")]
|
||||||
|
public DateTime? Date { get; set; }
|
||||||
|
[Comment("เล่มที่")]
|
||||||
|
public string? VolumeNo { get; set; }
|
||||||
|
[Comment("ตอนที่")]
|
||||||
|
public string? Section { get; set; }
|
||||||
|
[Comment("หน้าที่")]
|
||||||
|
public string? Page { get; set; }
|
||||||
|
[Comment("ลำดับที่")]
|
||||||
|
public string? No { get; set; }
|
||||||
|
[Comment("วันที่จ่ายใบกำกับ")]
|
||||||
|
public DateTime? DatePayment { get; set; }
|
||||||
|
[Comment("รูปแบบการจ่าย")]
|
||||||
|
public string? TypePayment { get; set; }
|
||||||
|
[Comment("ที่อยู่ที่จ่าย")]
|
||||||
|
public string? Address { get; set; }
|
||||||
|
[Comment("ทะเบียนฐานันดร")]
|
||||||
|
public string? Issue { get; set; }
|
||||||
|
public Profile Profile { get; set; }
|
||||||
|
public Insignia RequestInsignia { get; set; }
|
||||||
|
public InsigniaNote InsigniaNote { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -8,15 +8,15 @@ namespace BMA.EHR.Domain.Models.Insignias
|
||||||
{
|
{
|
||||||
public class InsigniaPeriod : EntityBase
|
public class InsigniaPeriod : EntityBase
|
||||||
{
|
{
|
||||||
[Required, MaxLength(200)]
|
[MaxLength(200)]
|
||||||
public string Name { get; set; }
|
public string? Name { get; set; }
|
||||||
public int Year { get; set; }
|
public int Year { get; set; }
|
||||||
public DateTime StartDate { get; set; }
|
public DateTime StartDate { get; set; }
|
||||||
public DateTime EndDate { get; set; }
|
public DateTime EndDate { get; set; }
|
||||||
[MaxLength(50)]
|
[MaxLength(50)]
|
||||||
public int Amount { get; set; }
|
public int Amount { get; set; }
|
||||||
[MaxLength(10)]
|
[MaxLength(10)]
|
||||||
public string Type { get; set; }
|
public string? Type { get; set; }
|
||||||
public Document? ReliefDoc { get; set; }
|
public Document? ReliefDoc { get; set; }
|
||||||
[Comment("ราบการยื่นขอ")]
|
[Comment("ราบการยื่นขอ")]
|
||||||
public int Round { get; set; } = 1;
|
public int Round { get; set; } = 1;
|
||||||
|
|
|
||||||
|
|
@ -16,19 +16,19 @@ namespace BMA.EHR.Domain.Models.Insignias
|
||||||
|
|
||||||
public bool IsApprove { get; set; } = false;
|
public bool IsApprove { get; set; } = false;
|
||||||
|
|
||||||
[MaxLength(50)]
|
// [MaxLength(50)]
|
||||||
public string? QualificationStatus { get; set; }
|
// public string? QualificationStatus { get; set; }
|
||||||
|
|
||||||
[MaxLength(50)]
|
// [MaxLength(50)]
|
||||||
public string? DocumentStatus { get; set; }
|
// public string? DocumentStatus { get; set; }
|
||||||
|
|
||||||
[Column(TypeName = "text")]
|
// [Column(TypeName = "text")]
|
||||||
public string? Note { get; set; }
|
// public string? Note { get; set; }
|
||||||
|
|
||||||
[MaxLength(50)]
|
// [MaxLength(50)]
|
||||||
public string? Special { get; set; }
|
// public string? Special { get; set; }
|
||||||
|
|
||||||
[Column(TypeName = "text")]
|
[Column(TypeName = "text"), Comment("รายละเอียดเครื่องราชฯที่ขอ")]
|
||||||
public string? MatchingConditions { get; set; }
|
public string? MatchingConditions { get; set; }
|
||||||
|
|
||||||
[Comment("สถานะตำแหน่งที่ยื่นขอ")]
|
[Comment("สถานะตำแหน่งที่ยื่นขอ")]
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using BMA.EHR.Domain.Models.Base;
|
using BMA.EHR.Domain.Models.Base;
|
||||||
|
using BMA.EHR.Domain.Models.Documents;
|
||||||
|
|
||||||
namespace BMA.EHR.Domain.Models.Retirement
|
namespace BMA.EHR.Domain.Models.Retirement
|
||||||
{
|
{
|
||||||
|
|
@ -14,6 +15,8 @@ namespace BMA.EHR.Domain.Models.Retirement
|
||||||
public int Year { get; set; }
|
public int Year { get; set; }
|
||||||
[Comment("ประเภท")]
|
[Comment("ประเภท")]
|
||||||
public string Type { get; set; } = string.Empty;
|
public string Type { get; set; } = string.Empty;
|
||||||
|
[Comment("เอกสารประกาศ")]
|
||||||
|
public Document? Document { get; set; }
|
||||||
public virtual List<RetirementPeriodHistory> RetirementPeriodHistorys { get; set; } = new List<RetirementPeriodHistory>();
|
public virtual List<RetirementPeriodHistory> RetirementPeriodHistorys { get; set; } = new List<RetirementPeriodHistory>();
|
||||||
public virtual List<RetirementProfile> RetirementProfiles { get; set; } = new List<RetirementProfile>();
|
public virtual List<RetirementProfile> RetirementProfiles { get; set; } = new List<RetirementProfile>();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using BMA.EHR.Domain.Models.Base;
|
using BMA.EHR.Domain.Models.Base;
|
||||||
|
using BMA.EHR.Domain.Models.Documents;
|
||||||
|
|
||||||
namespace BMA.EHR.Domain.Models.Retirement
|
namespace BMA.EHR.Domain.Models.Retirement
|
||||||
{
|
{
|
||||||
|
|
@ -18,6 +19,8 @@ namespace BMA.EHR.Domain.Models.Retirement
|
||||||
public string Type { get; set; } = string.Empty;
|
public string Type { get; set; } = string.Empty;
|
||||||
[Comment("รายชื่อเกษียญ")]
|
[Comment("รายชื่อเกษียญ")]
|
||||||
public string ProfileFile { get; set; }
|
public string ProfileFile { get; set; }
|
||||||
|
[Comment("เอกสารประกาศ")]
|
||||||
|
public Document? Document { get; set; }
|
||||||
public RetirementPeriod RetirementPeriod { get; set; }
|
public RetirementPeriod RetirementPeriod { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
47
BMA.EHR.Domain/Models/Retirement/RetirementQuestion.cs
Normal file
47
BMA.EHR.Domain/Models/Retirement/RetirementQuestion.cs
Normal file
|
|
@ -0,0 +1,47 @@
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using BMA.EHR.Domain.Models.Base;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
using BMA.EHR.Domain.Models.Documents;
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Domain.Models.Retirement
|
||||||
|
{
|
||||||
|
public class RetirementQuestion : EntityBase
|
||||||
|
{
|
||||||
|
[Comment("รอบการลาออก")]
|
||||||
|
public RetirementResign RetirementResign { get; set; }
|
||||||
|
[Comment("เหตุใดท่านจึงตัดสินใจร่วมงานกับกรุงเทพมหานคร")]
|
||||||
|
public string? ReasonWork { get; set; }
|
||||||
|
[Comment("อื่นๆ เหตุใดท่านจึงตัดสินใจร่วมงานกับกรุงเทพมหานคร")]
|
||||||
|
public string? ReasonWorkOther { get; set; }
|
||||||
|
[Comment("สำหรับการลาออกในครั้งนี้ ท่านได้คิดทบทวนอย่างจริงจังเป็นระยะเวลานานเท่าใด")]
|
||||||
|
public string? TimeThink { get; set; }
|
||||||
|
[Comment("ปัจจัยใดที่ทำให้ท่านตัดสินใจลาออกจากราชการ")]
|
||||||
|
public string? ExitFactor { get; set; }
|
||||||
|
[Comment("อื่นๆ ปัจจัยใดที่ทำให้ท่านตัดสินใจลาออกจากราชการ")]
|
||||||
|
public string? ExitFactorOther { get; set; }
|
||||||
|
[Comment("อะไรคือสิ่งที่ท่านเห็นว่าควรปรับปรุง")]
|
||||||
|
public string? Adjust { get; set; }
|
||||||
|
[Comment("อื่นๆ อะไรคือสิ่งที่ท่านเห็นว่าควรปรับปรุง")]
|
||||||
|
public string? AdjustOther { get; set; }
|
||||||
|
[Comment("โปรดระบุสาเหตุที่แท้จริง ที่ทำให้ท่านตัดสินใจลาออกจากการปฏิบัติราชการกับกรุงเทพมหานคร")]
|
||||||
|
public string? RealReason { get; set; }
|
||||||
|
[Comment("ปัจจัยใดที่จะช่วยทำให้ท่านเปลี่ยนใจ ไม่อยากลาออกจากการปฏิบัติราชการกับกรุงเทพมหานคร")]
|
||||||
|
public string? NotExitFactor { get; set; }
|
||||||
|
[Comment("ท่านมีงานใหม่หรือไม่และอะไรคือสิ่งที่ที่ทำงานใหม่ให้กับท่าน ซึ่งท่านรู้สึกว่าเป็นที่น่าพอใจมากกว่าการปฏิบัติราชการกับกรุงเทพมหานคร")]
|
||||||
|
public bool? Havejob { get; set; }
|
||||||
|
[Comment("เหตุผลท่านมีงานใหม่หรือไม่และอะไรคือสิ่งที่ที่ทำงานใหม่ให้กับท่าน ซึ่งท่านรู้สึกว่าเป็นที่น่าพอใจมากกว่าการปฏิบัติราชการกับกรุงเทพมหานคร")]
|
||||||
|
public string? HavejobReason { get; set; }
|
||||||
|
[Comment("ท่านจะแนะนำเพื่อนให้มาร่วมงานกับกรุงเทพมหานครหรือไม่")]
|
||||||
|
public bool? SuggestFriends { get; set; }
|
||||||
|
[Comment("เหตุผลท่านจะแนะนำเพื่อนให้มาร่วมงานกับกรุงเทพมหานครหรือไม่")]
|
||||||
|
public string? SuggestFriendsReason { get; set; }
|
||||||
|
[Comment("หากท่านมีโอกาสในอนาคต ท่านอยากกลับมาร่วมงานกับกรุงเทพมหานครหรือไม่")]
|
||||||
|
public bool? FutureWork { get; set; }
|
||||||
|
[Comment("เหตุผลหากท่านมีโอกาสในอนาคต ท่านอยากกลับมาร่วมงานกับกรุงเทพมหานครหรือไม่")]
|
||||||
|
public string? FutureWorkReason { get; set; }
|
||||||
|
[Comment("ความคิดเห็นและข้อเสนอแนะอื่น ๆ ")]
|
||||||
|
public string? Suggestion { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -33,7 +33,12 @@ namespace BMA.EHR.Domain.Models.Retirement
|
||||||
public double? AmountOld { get; set; }
|
public double? AmountOld { get; set; }
|
||||||
[Comment("สถานะลาออก")]
|
[Comment("สถานะลาออก")]
|
||||||
public string? Status { get; set; } = "WAITTING";
|
public string? Status { get; set; } = "WAITTING";
|
||||||
|
[Comment("เหตุผลอนุมัติ")]
|
||||||
|
public string? ApproveReason { get; set; }
|
||||||
|
[Comment("เหตุผลไม่อนุมัติ")]
|
||||||
|
public string? RejectReason { get; set; }
|
||||||
[Comment("สถานะการใช้งาน")]
|
[Comment("สถานะการใช้งาน")]
|
||||||
public bool IsActive { get; set; } = true;
|
public bool IsActive { get; set; } = true;
|
||||||
|
public virtual List<RetirementResignDoc> RetirementResignDocs { get; set; } = new List<RetirementResignDoc>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
15
BMA.EHR.Domain/Models/Retirement/RetirementResignDoc.cs
Normal file
15
BMA.EHR.Domain/Models/Retirement/RetirementResignDoc.cs
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
using BMA.EHR.Domain.Models.Base;
|
||||||
|
using BMA.EHR.Domain.Models.Documents;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Domain.Models.Retirement
|
||||||
|
{
|
||||||
|
public class RetirementResignDoc : EntityBase
|
||||||
|
{
|
||||||
|
[Required, Comment("อ้างอิงรหัสเอกสาร")]
|
||||||
|
public Document Document { get; set; }
|
||||||
|
[Required, Comment("อ้างอิงรับย้าย")]
|
||||||
|
public virtual RetirementResign RetirementResign { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -40,6 +40,7 @@
|
||||||
public static readonly string BloodGroupNotFound = "ไม่พบข้อมูลกลุ่มเลือก";
|
public static readonly string BloodGroupNotFound = "ไม่พบข้อมูลกลุ่มเลือก";
|
||||||
public static readonly string ReligionNotFound = "ไม่พบข้อมูลศาสนา";
|
public static readonly string ReligionNotFound = "ไม่พบข้อมูลศาสนา";
|
||||||
public static readonly string InsigniaNotFound = "ไม่พบข้อมูลเครื่องราชย์ฯ";
|
public static readonly string InsigniaNotFound = "ไม่พบข้อมูลเครื่องราชย์ฯ";
|
||||||
|
public static readonly string InsigniaTypeNotFound = "ไม่พบข้อมูลประเภทเครื่องราชย์ฯ";
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
@ -87,6 +88,7 @@
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region " Retirement "
|
#region " Retirement "
|
||||||
|
public static readonly string RetirementNotCreated = "ไม่สามารถสร้างประกาศเกษียณอายุราชการได้กรุณาอัพโหลดหลักฐานประกาศ";
|
||||||
public static readonly string RetirementNotFound = "ไม่พบข้อมูลการประกาศเกษียณอายุราชการ";
|
public static readonly string RetirementNotFound = "ไม่พบข้อมูลการประกาศเกษียณอายุราชการ";
|
||||||
public static readonly string RetirementHistoryNotFound = "ไม่พบข้อมูลประวัติการประกาศเกษียณอายุราชการ";
|
public static readonly string RetirementHistoryNotFound = "ไม่พบข้อมูลประวัติการประกาศเกษียณอายุราชการ";
|
||||||
public static readonly string RetirementResignNotFound = "ไม่พบข้อมูลการคำขอลาออก";
|
public static readonly string RetirementResignNotFound = "ไม่พบข้อมูลการคำขอลาออก";
|
||||||
|
|
@ -95,6 +97,7 @@
|
||||||
public static readonly string RetirementExpulsionNotFound = "ไม่พบข้อมูลไล่ออก";
|
public static readonly string RetirementExpulsionNotFound = "ไม่พบข้อมูลไล่ออก";
|
||||||
public static readonly string RetirementOtherNotFound = "ไม่พบข้อมูลอื่นๆ";
|
public static readonly string RetirementOtherNotFound = "ไม่พบข้อมูลอื่นๆ";
|
||||||
public static readonly string RetirementOutNotFound = "ไม่พบข้อมูลให้ออก";
|
public static readonly string RetirementOutNotFound = "ไม่พบข้อมูลให้ออก";
|
||||||
|
public static readonly string RetirementQuestionNotFound = "ไม่พบข้อมูลแบบสอบถาม";
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region " Command "
|
#region " Command "
|
||||||
|
|
|
||||||
15122
BMA.EHR.Infrastructure/Migrations/20230821080732_add table RetirementResigns.Designer.cs
generated
Normal file
15122
BMA.EHR.Infrastructure/Migrations/20230821080732_add table RetirementResigns.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,60 @@
|
||||||
|
using System;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class addtableRetirementResigns : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "RetirementQuestions",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
|
||||||
|
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
|
||||||
|
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
|
||||||
|
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
RetirementResignId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
|
||||||
|
Reason = table.Column<string>(type: "longtext", nullable: true, comment: "ทำไมคุณถึงลาออก?")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
Comment = table.Column<string>(type: "longtext", nullable: true, comment: "สิ่งที่คุณต้องการจะบอกเรา?")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_RetirementQuestions", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_RetirementQuestions_RetirementResigns_RetirementResignId",
|
||||||
|
column: x => x.RetirementResignId,
|
||||||
|
principalTable: "RetirementResigns",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
})
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_RetirementQuestions_RetirementResignId",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
column: "RetirementResignId");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "RetirementQuestions");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15130
BMA.EHR.Infrastructure/Migrations/20230821082845_update table RetirementResigns add resaonapprove.Designer.cs
generated
Normal file
15130
BMA.EHR.Infrastructure/Migrations/20230821082845_update table RetirementResigns add resaonapprove.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,42 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableRetirementResignsaddresaonapprove : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "ApproveReason",
|
||||||
|
table: "RetirementResigns",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "เหตุผลอนุมัติ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "RejectReason",
|
||||||
|
table: "RetirementResigns",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "เหตุผลไม่อนุมัติ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "ApproveReason",
|
||||||
|
table: "RetirementResigns");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "RejectReason",
|
||||||
|
table: "RetirementResigns");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15216
BMA.EHR.Infrastructure/Migrations/20230821172048_update table RetirementResigns add filedoc.Designer.cs
generated
Normal file
15216
BMA.EHR.Infrastructure/Migrations/20230821172048_update table RetirementResigns add filedoc.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,68 @@
|
||||||
|
using System;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableRetirementResignsaddfiledoc : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "RetirementResignDocs",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
|
||||||
|
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
|
||||||
|
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
|
||||||
|
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
DocumentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
|
||||||
|
RetirementResignId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_RetirementResignDocs", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_RetirementResignDocs_Documents_DocumentId",
|
||||||
|
column: x => x.DocumentId,
|
||||||
|
principalTable: "Documents",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_RetirementResignDocs_RetirementResigns_RetirementResignId",
|
||||||
|
column: x => x.RetirementResignId,
|
||||||
|
principalTable: "RetirementResigns",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
})
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_RetirementResignDocs_DocumentId",
|
||||||
|
table: "RetirementResignDocs",
|
||||||
|
column: "DocumentId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_RetirementResignDocs_RetirementResignId",
|
||||||
|
table: "RetirementResignDocs",
|
||||||
|
column: "RetirementResignId");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "RetirementResignDocs");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15241
BMA.EHR.Infrastructure/Migrations/20230821184747_update table Retirement add filedoc.Designer.cs
generated
Normal file
15241
BMA.EHR.Infrastructure/Migrations/20230821184747_update table Retirement add filedoc.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,81 @@
|
||||||
|
using System;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableRetirementaddfiledoc : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AddColumn<Guid>(
|
||||||
|
name: "DocumentId",
|
||||||
|
table: "RetirementPeriods",
|
||||||
|
type: "char(36)",
|
||||||
|
nullable: true,
|
||||||
|
collation: "ascii_general_ci");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<Guid>(
|
||||||
|
name: "DocumentId",
|
||||||
|
table: "RetirementPeriodHistorys",
|
||||||
|
type: "char(36)",
|
||||||
|
nullable: true,
|
||||||
|
collation: "ascii_general_ci");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_RetirementPeriods_DocumentId",
|
||||||
|
table: "RetirementPeriods",
|
||||||
|
column: "DocumentId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_RetirementPeriodHistorys_DocumentId",
|
||||||
|
table: "RetirementPeriodHistorys",
|
||||||
|
column: "DocumentId");
|
||||||
|
|
||||||
|
migrationBuilder.AddForeignKey(
|
||||||
|
name: "FK_RetirementPeriodHistorys_Documents_DocumentId",
|
||||||
|
table: "RetirementPeriodHistorys",
|
||||||
|
column: "DocumentId",
|
||||||
|
principalTable: "Documents",
|
||||||
|
principalColumn: "Id");
|
||||||
|
|
||||||
|
migrationBuilder.AddForeignKey(
|
||||||
|
name: "FK_RetirementPeriods_Documents_DocumentId",
|
||||||
|
table: "RetirementPeriods",
|
||||||
|
column: "DocumentId",
|
||||||
|
principalTable: "Documents",
|
||||||
|
principalColumn: "Id");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropForeignKey(
|
||||||
|
name: "FK_RetirementPeriodHistorys_Documents_DocumentId",
|
||||||
|
table: "RetirementPeriodHistorys");
|
||||||
|
|
||||||
|
migrationBuilder.DropForeignKey(
|
||||||
|
name: "FK_RetirementPeriods_Documents_DocumentId",
|
||||||
|
table: "RetirementPeriods");
|
||||||
|
|
||||||
|
migrationBuilder.DropIndex(
|
||||||
|
name: "IX_RetirementPeriods_DocumentId",
|
||||||
|
table: "RetirementPeriods");
|
||||||
|
|
||||||
|
migrationBuilder.DropIndex(
|
||||||
|
name: "IX_RetirementPeriodHistorys_DocumentId",
|
||||||
|
table: "RetirementPeriodHistorys");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "DocumentId",
|
||||||
|
table: "RetirementPeriods");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "DocumentId",
|
||||||
|
table: "RetirementPeriodHistorys");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15240
BMA.EHR.Infrastructure/Migrations/20230822150102_update table InsigniaPeriod nullable name.Designer.cs
generated
Normal file
15240
BMA.EHR.Infrastructure/Migrations/20230822150102_update table InsigniaPeriod nullable name.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,50 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableInsigniaPeriodnullablename : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "Name",
|
||||||
|
table: "InsigniaPeriods",
|
||||||
|
type: "varchar(200)",
|
||||||
|
maxLength: 200,
|
||||||
|
nullable: true,
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "varchar(200)",
|
||||||
|
oldMaxLength: 200)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.UpdateData(
|
||||||
|
table: "InsigniaPeriods",
|
||||||
|
keyColumn: "Name",
|
||||||
|
keyValue: null,
|
||||||
|
column: "Name",
|
||||||
|
value: "");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "Name",
|
||||||
|
table: "InsigniaPeriods",
|
||||||
|
type: "varchar(200)",
|
||||||
|
maxLength: 200,
|
||||||
|
nullable: false,
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "varchar(200)",
|
||||||
|
oldMaxLength: 200,
|
||||||
|
oldNullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15239
BMA.EHR.Infrastructure/Migrations/20230822170142_update table InsigniaPeriod nullable type.Designer.cs
generated
Normal file
15239
BMA.EHR.Infrastructure/Migrations/20230822170142_update table InsigniaPeriod nullable type.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,50 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableInsigniaPeriodnullabletype : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "Type",
|
||||||
|
table: "InsigniaPeriods",
|
||||||
|
type: "varchar(10)",
|
||||||
|
maxLength: 10,
|
||||||
|
nullable: true,
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "varchar(10)",
|
||||||
|
oldMaxLength: 10)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.UpdateData(
|
||||||
|
table: "InsigniaPeriods",
|
||||||
|
keyColumn: "Type",
|
||||||
|
keyValue: null,
|
||||||
|
column: "Type",
|
||||||
|
value: "");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "Type",
|
||||||
|
table: "InsigniaPeriods",
|
||||||
|
type: "varchar(10)",
|
||||||
|
maxLength: 10,
|
||||||
|
nullable: false,
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "varchar(10)",
|
||||||
|
oldMaxLength: 10,
|
||||||
|
oldNullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15577
BMA.EHR.Infrastructure/Migrations/20230823060057_add table InsigniaNote.Designer.cs
generated
Normal file
15577
BMA.EHR.Infrastructure/Migrations/20230823060057_add table InsigniaNote.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,207 @@
|
||||||
|
using System;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class addtableInsigniaNote : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "InsigniaNotes",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
|
||||||
|
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
|
||||||
|
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
|
||||||
|
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
Name = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
Year = table.Column<int>(type: "int", nullable: false),
|
||||||
|
StartDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
|
||||||
|
EndDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
|
||||||
|
Amount = table.Column<int>(type: "int", maxLength: 50, nullable: false),
|
||||||
|
ReliefDocId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
|
||||||
|
Round = table.Column<int>(type: "int", nullable: false, comment: "ราบการยื่นขอ")
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_InsigniaNotes", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_InsigniaNotes_Documents_ReliefDocId",
|
||||||
|
column: x => x.ReliefDocId,
|
||||||
|
principalTable: "Documents",
|
||||||
|
principalColumn: "Id");
|
||||||
|
})
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "InsigniaNoteDocs",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
|
||||||
|
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
|
||||||
|
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
|
||||||
|
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
DocumentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
|
||||||
|
Reason = table.Column<string>(type: "longtext", nullable: true, comment: "หมายเหตุ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
InsigniaNoteId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_InsigniaNoteDocs", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_InsigniaNoteDocs_Documents_DocumentId",
|
||||||
|
column: x => x.DocumentId,
|
||||||
|
principalTable: "Documents",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_InsigniaNoteDocs_InsigniaNotes_InsigniaNoteId",
|
||||||
|
column: x => x.InsigniaNoteId,
|
||||||
|
principalTable: "InsigniaNotes",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
})
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "InsigniaNoteProfiles",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<Guid>(type: "char(36)", nullable: false, comment: "PrimaryKey", collation: "ascii_general_ci"),
|
||||||
|
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "สร้างข้อมูลเมื่อ"),
|
||||||
|
CreatedUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "แก้ไขข้อมูลล่าสุดเมื่อ"),
|
||||||
|
LastUpdateUserId = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: false, comment: "User Id ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
CreatedFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่สร้างข้อมูล")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
LastUpdateFullName = table.Column<string>(type: "varchar(200)", maxLength: 200, nullable: false, comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
RequestDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
|
||||||
|
Salary = table.Column<double>(type: "double", nullable: true),
|
||||||
|
IsApprove = table.Column<bool>(type: "tinyint(1)", nullable: false),
|
||||||
|
Status = table.Column<string>(type: "longtext", nullable: false, comment: "สถานะตำแหน่งที่ยื่นขอ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
Issue = table.Column<string>(type: "longtext", nullable: true, comment: "หมายเลขประกาศนียบัตรกำกับเครื่องราชฯ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
DateReceive = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "วันที่ได้รับพระราชทานเครื่องราชฯ"),
|
||||||
|
OrganizationOrganizationSendId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
|
||||||
|
Date = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "วันที่"),
|
||||||
|
VolumeNo = table.Column<string>(type: "longtext", nullable: true, comment: "เล่มที่")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
Section = table.Column<string>(type: "longtext", nullable: true, comment: "ตอนที่")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
Page = table.Column<string>(type: "longtext", nullable: true, comment: "หน้าที่")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
No = table.Column<string>(type: "longtext", nullable: true, comment: "ลำดับที่")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
DatePayment = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "วันที่จ่ายใบกำกับ"),
|
||||||
|
TypePayment = table.Column<string>(type: "longtext", nullable: true, comment: "รูปแบบการจ่าย")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
Address = table.Column<string>(type: "longtext", nullable: true, comment: "ที่อยู่ที่จ่าย")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4"),
|
||||||
|
ProfileId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
|
||||||
|
RequestInsigniaId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
|
||||||
|
InsigniaNoteId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_InsigniaNoteProfiles", x => x.Id);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_InsigniaNoteProfiles_InsigniaNotes_InsigniaNoteId",
|
||||||
|
column: x => x.InsigniaNoteId,
|
||||||
|
principalTable: "InsigniaNotes",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_InsigniaNoteProfiles_Insignias_RequestInsigniaId",
|
||||||
|
column: x => x.RequestInsigniaId,
|
||||||
|
principalTable: "Insignias",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_InsigniaNoteProfiles_OrganizationOrganizations_OrganizationO~",
|
||||||
|
column: x => x.OrganizationOrganizationSendId,
|
||||||
|
principalTable: "OrganizationOrganizations",
|
||||||
|
principalColumn: "Id");
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_InsigniaNoteProfiles_Profiles_ProfileId",
|
||||||
|
column: x => x.ProfileId,
|
||||||
|
principalTable: "Profiles",
|
||||||
|
principalColumn: "Id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
})
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNoteDocs_DocumentId",
|
||||||
|
table: "InsigniaNoteDocs",
|
||||||
|
column: "DocumentId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNoteDocs_InsigniaNoteId",
|
||||||
|
table: "InsigniaNoteDocs",
|
||||||
|
column: "InsigniaNoteId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNoteProfiles_InsigniaNoteId",
|
||||||
|
table: "InsigniaNoteProfiles",
|
||||||
|
column: "InsigniaNoteId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNoteProfiles_OrganizationOrganizationSendId",
|
||||||
|
table: "InsigniaNoteProfiles",
|
||||||
|
column: "OrganizationOrganizationSendId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNoteProfiles_ProfileId",
|
||||||
|
table: "InsigniaNoteProfiles",
|
||||||
|
column: "ProfileId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNoteProfiles_RequestInsigniaId",
|
||||||
|
table: "InsigniaNoteProfiles",
|
||||||
|
column: "RequestInsigniaId");
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNotes_ReliefDocId",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
column: "ReliefDocId");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "InsigniaNoteDocs");
|
||||||
|
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "InsigniaNoteProfiles");
|
||||||
|
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "InsigniaNotes");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15633
BMA.EHR.Infrastructure/Migrations/20230823065542_update table retirementResign add reason.Designer.cs
generated
Normal file
15633
BMA.EHR.Infrastructure/Migrations/20230823065542_update table retirementResign add reason.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,231 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableretirementResignaddreason : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Comment",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Reason",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "Adjust",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "อะไรคือสิ่งที่ท่านเห็นว่าควรปรับปรุง")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "AdjustOther",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "อื่นๆ อะไรคือสิ่งที่ท่านเห็นว่าควรปรับปรุง")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "ExitFactor",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "ปัจจัยใดที่ทำให้ท่านตัดสินใจลาออกจากราชการ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "ExitFactorOther",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "อื่นๆ ปัจจัยใดที่ทำให้ท่านตัดสินใจลาออกจากราชการ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<bool>(
|
||||||
|
name: "FutureWork",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "tinyint(1)",
|
||||||
|
nullable: true,
|
||||||
|
comment: "หากท่านมีโอกาสในอนาคต ท่านอยากกลับมาร่วมงานกับกรุงเทพมหานครหรือไม่");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "FutureWorkReason",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "เหตุผลหากท่านมีโอกาสในอนาคต ท่านอยากกลับมาร่วมงานกับกรุงเทพมหานครหรือไม่")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<bool>(
|
||||||
|
name: "Havejob",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "tinyint(1)",
|
||||||
|
nullable: true,
|
||||||
|
comment: "ท่านมีงานใหม่หรือไม่และอะไรคือสิ่งที่ที่ทำงานใหม่ให้กับท่าน ซึ่งท่านรู้สึกว่าเป็นที่น่าพอใจมากกว่าการปฏิบัติราชการกับกรุงเทพมหานคร");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "HavejobReason",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "เหตุผลท่านมีงานใหม่หรือไม่และอะไรคือสิ่งที่ที่ทำงานใหม่ให้กับท่าน ซึ่งท่านรู้สึกว่าเป็นที่น่าพอใจมากกว่าการปฏิบัติราชการกับกรุงเทพมหานคร")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "NotExitFactor",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "ปัจจัยใดที่จะช่วยทำให้ท่านเปลี่ยนใจ ไม่อยากลาออกจากการปฏิบัติราชการกับกรุงเทพมหานคร")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "RealReason",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "โปรดระบุสาเหตุที่แท้จริง ที่ทำให้ท่านตัดสินใจลาออกจากการปฏิบัติราชการกับกรุงเทพมหานคร")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "ReasonWork",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "เหตุใดท่านจึงตัดสินใจร่วมงานกับกรุงเทพมหานคร")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "ReasonWorkOther",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "อื่นๆ เหตุใดท่านจึงตัดสินใจร่วมงานกับกรุงเทพมหานคร")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<bool>(
|
||||||
|
name: "SuggestFriends",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "tinyint(1)",
|
||||||
|
nullable: true,
|
||||||
|
comment: "ท่านจะแนะนำเพื่อนให้มาร่วมงานกับกรุงเทพมหานครหรือไม่");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "SuggestFriendsReason",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "เหตุผลท่านจะแนะนำเพื่อนให้มาร่วมงานกับกรุงเทพมหานครหรือไม่")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "Suggestion",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "ความคิดเห็นและข้อเสนอแนะอื่น ๆ ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "TimeThink",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "สำหรับการลาออกในครั้งนี้ ท่านได้คิดทบทวนอย่างจริงจังเป็นระยะเวลานานเท่าใด")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Adjust",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "AdjustOther",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "ExitFactor",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "ExitFactorOther",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "FutureWork",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "FutureWorkReason",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Havejob",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "HavejobReason",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "NotExitFactor",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "RealReason",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "ReasonWork",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "ReasonWorkOther",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "SuggestFriends",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "SuggestFriendsReason",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Suggestion",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "TimeThink",
|
||||||
|
table: "RetirementQuestions");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "Comment",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "สิ่งที่คุณต้องการจะบอกเรา?")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "Reason",
|
||||||
|
table: "RetirementQuestions",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "ทำไมคุณถึงลาออก?")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15605
BMA.EHR.Infrastructure/Migrations/20230823084251_update table InsigniaNotes add name.Designer.cs
generated
Normal file
15605
BMA.EHR.Infrastructure/Migrations/20230823084251_update table InsigniaNotes add name.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,96 @@
|
||||||
|
using System;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableInsigniaNotesaddname : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropForeignKey(
|
||||||
|
name: "FK_InsigniaNotes_Documents_ReliefDocId",
|
||||||
|
table: "InsigniaNotes");
|
||||||
|
|
||||||
|
migrationBuilder.DropIndex(
|
||||||
|
name: "IX_InsigniaNotes_ReliefDocId",
|
||||||
|
table: "InsigniaNotes");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Amount",
|
||||||
|
table: "InsigniaNotes");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "EndDate",
|
||||||
|
table: "InsigniaNotes");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "ReliefDocId",
|
||||||
|
table: "InsigniaNotes");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Round",
|
||||||
|
table: "InsigniaNotes");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "StartDate",
|
||||||
|
table: "InsigniaNotes");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AddColumn<int>(
|
||||||
|
name: "Amount",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
type: "int",
|
||||||
|
maxLength: 50,
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: 0);
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<DateTime>(
|
||||||
|
name: "EndDate",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
type: "datetime(6)",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<Guid>(
|
||||||
|
name: "ReliefDocId",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
type: "char(36)",
|
||||||
|
nullable: true,
|
||||||
|
collation: "ascii_general_ci");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<int>(
|
||||||
|
name: "Round",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
type: "int",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: 0,
|
||||||
|
comment: "ราบการยื่นขอ");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<DateTime>(
|
||||||
|
name: "StartDate",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
type: "datetime(6)",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_InsigniaNotes_ReliefDocId",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
column: "ReliefDocId");
|
||||||
|
|
||||||
|
migrationBuilder.AddForeignKey(
|
||||||
|
name: "FK_InsigniaNotes_Documents_ReliefDocId",
|
||||||
|
table: "InsigniaNotes",
|
||||||
|
column: "ReliefDocId",
|
||||||
|
principalTable: "Documents",
|
||||||
|
principalColumn: "Id");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15595
BMA.EHR.Infrastructure/Migrations/20230823132130_update table InsigniaNotes add number.Designer.cs
generated
Normal file
15595
BMA.EHR.Infrastructure/Migrations/20230823132130_update table InsigniaNotes add number.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,127 @@
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class updatetableInsigniaNotesaddnumber : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "DocumentStatus",
|
||||||
|
table: "InsigniaRequestProfiles");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Note",
|
||||||
|
table: "InsigniaRequestProfiles");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "QualificationStatus",
|
||||||
|
table: "InsigniaRequestProfiles");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Special",
|
||||||
|
table: "InsigniaRequestProfiles");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "MatchingConditions",
|
||||||
|
table: "InsigniaRequestProfiles",
|
||||||
|
type: "text",
|
||||||
|
nullable: true,
|
||||||
|
comment: "รายละเอียดเครื่องราชฯที่ขอ",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "text",
|
||||||
|
oldNullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "Issue",
|
||||||
|
table: "InsigniaNoteProfiles",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "ทะเบียนฐานันดร",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "longtext",
|
||||||
|
oldNullable: true,
|
||||||
|
oldComment: "หมายเลขประกาศนียบัตรกำกับเครื่องราชฯ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "Number",
|
||||||
|
table: "InsigniaNoteProfiles",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "หมายเลขประกาศนียบัตรกำกับเครื่องราชฯ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "Number",
|
||||||
|
table: "InsigniaNoteProfiles");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "MatchingConditions",
|
||||||
|
table: "InsigniaRequestProfiles",
|
||||||
|
type: "text",
|
||||||
|
nullable: true,
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "text",
|
||||||
|
oldNullable: true,
|
||||||
|
oldComment: "รายละเอียดเครื่องราชฯที่ขอ")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "DocumentStatus",
|
||||||
|
table: "InsigniaRequestProfiles",
|
||||||
|
type: "varchar(50)",
|
||||||
|
maxLength: 50,
|
||||||
|
nullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "Note",
|
||||||
|
table: "InsigniaRequestProfiles",
|
||||||
|
type: "text",
|
||||||
|
nullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "QualificationStatus",
|
||||||
|
table: "InsigniaRequestProfiles",
|
||||||
|
type: "varchar(50)",
|
||||||
|
maxLength: 50,
|
||||||
|
nullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "Special",
|
||||||
|
table: "InsigniaRequestProfiles",
|
||||||
|
type: "varchar(50)",
|
||||||
|
maxLength: 50,
|
||||||
|
nullable: true)
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "Issue",
|
||||||
|
table: "InsigniaNoteProfiles",
|
||||||
|
type: "longtext",
|
||||||
|
nullable: true,
|
||||||
|
comment: "หมายเลขประกาศนียบัตรกำกับเครื่องราชฯ",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "longtext",
|
||||||
|
oldNullable: true,
|
||||||
|
oldComment: "ทะเบียนฐานันดร")
|
||||||
|
.Annotation("MySql:CharSet", "utf8mb4")
|
||||||
|
.OldAnnotation("MySql:CharSet", "utf8mb4");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -5201,6 +5201,261 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.ToTable("InsigniaManages");
|
b.ToTable("InsigniaManages");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaNote", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("char(36)")
|
||||||
|
.HasColumnOrder(0)
|
||||||
|
.HasComment("PrimaryKey")
|
||||||
|
.HasAnnotation("Relational:JsonPropertyName", "id");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(100)
|
||||||
|
.HasComment("สร้างข้อมูลเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(104)
|
||||||
|
.HasComment("ชื่อ User ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(101)
|
||||||
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(105)
|
||||||
|
.HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(103)
|
||||||
|
.HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastUpdatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(102)
|
||||||
|
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("Name")
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)");
|
||||||
|
|
||||||
|
b.Property<int>("Year")
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.ToTable("InsigniaNotes");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaNoteDoc", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("char(36)")
|
||||||
|
.HasColumnOrder(0)
|
||||||
|
.HasComment("PrimaryKey")
|
||||||
|
.HasAnnotation("Relational:JsonPropertyName", "id");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(100)
|
||||||
|
.HasComment("สร้างข้อมูลเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(104)
|
||||||
|
.HasComment("ชื่อ User ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(101)
|
||||||
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<Guid>("DocumentId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<Guid>("InsigniaNoteId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(105)
|
||||||
|
.HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(103)
|
||||||
|
.HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastUpdatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(102)
|
||||||
|
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("Reason")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("หมายเหตุ");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("DocumentId");
|
||||||
|
|
||||||
|
b.HasIndex("InsigniaNoteId");
|
||||||
|
|
||||||
|
b.ToTable("InsigniaNoteDocs");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaNoteProfile", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("char(36)")
|
||||||
|
.HasColumnOrder(0)
|
||||||
|
.HasComment("PrimaryKey")
|
||||||
|
.HasAnnotation("Relational:JsonPropertyName", "id");
|
||||||
|
|
||||||
|
b.Property<string>("Address")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("ที่อยู่ที่จ่าย");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(100)
|
||||||
|
.HasComment("สร้างข้อมูลเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(104)
|
||||||
|
.HasComment("ชื่อ User ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(101)
|
||||||
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("Date")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasComment("วันที่");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("DatePayment")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasComment("วันที่จ่ายใบกำกับ");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("DateReceive")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasComment("วันที่ได้รับพระราชทานเครื่องราชฯ");
|
||||||
|
|
||||||
|
b.Property<Guid>("InsigniaNoteId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<bool>("IsApprove")
|
||||||
|
.HasColumnType("tinyint(1)");
|
||||||
|
|
||||||
|
b.Property<string>("Issue")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("ทะเบียนฐานันดร");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(105)
|
||||||
|
.HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(103)
|
||||||
|
.HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastUpdatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(102)
|
||||||
|
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("No")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("ลำดับที่");
|
||||||
|
|
||||||
|
b.Property<string>("Number")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("หมายเลขประกาศนียบัตรกำกับเครื่องราชฯ");
|
||||||
|
|
||||||
|
b.Property<Guid?>("OrganizationOrganizationSendId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<string>("Page")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("หน้าที่");
|
||||||
|
|
||||||
|
b.Property<Guid>("ProfileId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("RequestDate")
|
||||||
|
.HasColumnType("datetime(6)");
|
||||||
|
|
||||||
|
b.Property<Guid>("RequestInsigniaId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<double?>("Salary")
|
||||||
|
.HasColumnType("double");
|
||||||
|
|
||||||
|
b.Property<string>("Section")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("ตอนที่");
|
||||||
|
|
||||||
|
b.Property<string>("Status")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("สถานะตำแหน่งที่ยื่นขอ");
|
||||||
|
|
||||||
|
b.Property<string>("TypePayment")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("รูปแบบการจ่าย");
|
||||||
|
|
||||||
|
b.Property<string>("VolumeNo")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("เล่มที่");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("InsigniaNoteId");
|
||||||
|
|
||||||
|
b.HasIndex("OrganizationOrganizationSendId");
|
||||||
|
|
||||||
|
b.HasIndex("ProfileId");
|
||||||
|
|
||||||
|
b.HasIndex("RequestInsigniaId");
|
||||||
|
|
||||||
|
b.ToTable("InsigniaNoteProfiles");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaPeriod", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaPeriod", b =>
|
||||||
{
|
{
|
||||||
b.Property<Guid>("Id")
|
b.Property<Guid>("Id")
|
||||||
|
|
@ -5260,7 +5515,6 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
||||||
|
|
||||||
b.Property<string>("Name")
|
b.Property<string>("Name")
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(200)
|
.HasMaxLength(200)
|
||||||
.HasColumnType("varchar(200)");
|
.HasColumnType("varchar(200)");
|
||||||
|
|
||||||
|
|
@ -5275,7 +5529,6 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasColumnType("datetime(6)");
|
.HasColumnType("datetime(6)");
|
||||||
|
|
||||||
b.Property<string>("Type")
|
b.Property<string>("Type")
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(10)
|
.HasMaxLength(10)
|
||||||
.HasColumnType("varchar(10)");
|
.HasColumnType("varchar(10)");
|
||||||
|
|
||||||
|
|
@ -5388,10 +5641,6 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasColumnOrder(101)
|
.HasColumnOrder(101)
|
||||||
.HasComment("User Id ที่สร้างข้อมูล");
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
b.Property<string>("DocumentStatus")
|
|
||||||
.HasMaxLength(50)
|
|
||||||
.HasColumnType("varchar(50)");
|
|
||||||
|
|
||||||
b.Property<bool>("IsApprove")
|
b.Property<bool>("IsApprove")
|
||||||
.HasColumnType("tinyint(1)");
|
.HasColumnType("tinyint(1)");
|
||||||
|
|
||||||
|
|
@ -5415,18 +5664,12 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
||||||
|
|
||||||
b.Property<string>("MatchingConditions")
|
b.Property<string>("MatchingConditions")
|
||||||
.HasColumnType("text");
|
.HasColumnType("text")
|
||||||
|
.HasComment("รายละเอียดเครื่องราชฯที่ขอ");
|
||||||
b.Property<string>("Note")
|
|
||||||
.HasColumnType("text");
|
|
||||||
|
|
||||||
b.Property<Guid>("ProfileId")
|
b.Property<Guid>("ProfileId")
|
||||||
.HasColumnType("char(36)");
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
b.Property<string>("QualificationStatus")
|
|
||||||
.HasMaxLength(50)
|
|
||||||
.HasColumnType("varchar(50)");
|
|
||||||
|
|
||||||
b.Property<DateTime>("RequestDate")
|
b.Property<DateTime>("RequestDate")
|
||||||
.HasColumnType("datetime(6)");
|
.HasColumnType("datetime(6)");
|
||||||
|
|
||||||
|
|
@ -5439,10 +5682,6 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.Property<double?>("Salary")
|
b.Property<double?>("Salary")
|
||||||
.HasColumnType("double");
|
.HasColumnType("double");
|
||||||
|
|
||||||
b.Property<string>("Special")
|
|
||||||
.HasMaxLength(50)
|
|
||||||
.HasColumnType("varchar(50)");
|
|
||||||
|
|
||||||
b.Property<string>("Status")
|
b.Property<string>("Status")
|
||||||
.IsRequired()
|
.IsRequired()
|
||||||
.HasColumnType("longtext")
|
.HasColumnType("longtext")
|
||||||
|
|
@ -12705,6 +12944,9 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasColumnOrder(101)
|
.HasColumnOrder(101)
|
||||||
.HasComment("User Id ที่สร้างข้อมูล");
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<Guid?>("DocumentId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
b.Property<string>("LastUpdateFullName")
|
b.Property<string>("LastUpdateFullName")
|
||||||
.IsRequired()
|
.IsRequired()
|
||||||
.HasMaxLength(200)
|
.HasMaxLength(200)
|
||||||
|
|
@ -12743,6 +12985,8 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("DocumentId");
|
||||||
|
|
||||||
b.ToTable("RetirementPeriods");
|
b.ToTable("RetirementPeriods");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -12774,6 +13018,9 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasColumnOrder(101)
|
.HasColumnOrder(101)
|
||||||
.HasComment("User Id ที่สร้างข้อมูล");
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<Guid?>("DocumentId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
b.Property<string>("LastUpdateFullName")
|
b.Property<string>("LastUpdateFullName")
|
||||||
.IsRequired()
|
.IsRequired()
|
||||||
.HasMaxLength(200)
|
.HasMaxLength(200)
|
||||||
|
|
@ -12824,6 +13071,8 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("DocumentId");
|
||||||
|
|
||||||
b.HasIndex("RetirementPeriodId");
|
b.HasIndex("RetirementPeriodId");
|
||||||
|
|
||||||
b.ToTable("RetirementPeriodHistorys");
|
b.ToTable("RetirementPeriodHistorys");
|
||||||
|
|
@ -12905,6 +13154,127 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.ToTable("RetirementProfiles");
|
b.ToTable("RetirementProfiles");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementQuestion", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("char(36)")
|
||||||
|
.HasColumnOrder(0)
|
||||||
|
.HasComment("PrimaryKey")
|
||||||
|
.HasAnnotation("Relational:JsonPropertyName", "id");
|
||||||
|
|
||||||
|
b.Property<string>("Adjust")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("อะไรคือสิ่งที่ท่านเห็นว่าควรปรับปรุง");
|
||||||
|
|
||||||
|
b.Property<string>("AdjustOther")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("อื่นๆ อะไรคือสิ่งที่ท่านเห็นว่าควรปรับปรุง");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(100)
|
||||||
|
.HasComment("สร้างข้อมูลเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(104)
|
||||||
|
.HasComment("ชื่อ User ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(101)
|
||||||
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<string>("ExitFactor")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("ปัจจัยใดที่ทำให้ท่านตัดสินใจลาออกจากราชการ");
|
||||||
|
|
||||||
|
b.Property<string>("ExitFactorOther")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("อื่นๆ ปัจจัยใดที่ทำให้ท่านตัดสินใจลาออกจากราชการ");
|
||||||
|
|
||||||
|
b.Property<bool?>("FutureWork")
|
||||||
|
.HasColumnType("tinyint(1)")
|
||||||
|
.HasComment("หากท่านมีโอกาสในอนาคต ท่านอยากกลับมาร่วมงานกับกรุงเทพมหานครหรือไม่");
|
||||||
|
|
||||||
|
b.Property<string>("FutureWorkReason")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("เหตุผลหากท่านมีโอกาสในอนาคต ท่านอยากกลับมาร่วมงานกับกรุงเทพมหานครหรือไม่");
|
||||||
|
|
||||||
|
b.Property<bool?>("Havejob")
|
||||||
|
.HasColumnType("tinyint(1)")
|
||||||
|
.HasComment("ท่านมีงานใหม่หรือไม่และอะไรคือสิ่งที่ที่ทำงานใหม่ให้กับท่าน ซึ่งท่านรู้สึกว่าเป็นที่น่าพอใจมากกว่าการปฏิบัติราชการกับกรุงเทพมหานคร");
|
||||||
|
|
||||||
|
b.Property<string>("HavejobReason")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("เหตุผลท่านมีงานใหม่หรือไม่และอะไรคือสิ่งที่ที่ทำงานใหม่ให้กับท่าน ซึ่งท่านรู้สึกว่าเป็นที่น่าพอใจมากกว่าการปฏิบัติราชการกับกรุงเทพมหานคร");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(105)
|
||||||
|
.HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(103)
|
||||||
|
.HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastUpdatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(102)
|
||||||
|
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("NotExitFactor")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("ปัจจัยใดที่จะช่วยทำให้ท่านเปลี่ยนใจ ไม่อยากลาออกจากการปฏิบัติราชการกับกรุงเทพมหานคร");
|
||||||
|
|
||||||
|
b.Property<string>("RealReason")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("โปรดระบุสาเหตุที่แท้จริง ที่ทำให้ท่านตัดสินใจลาออกจากการปฏิบัติราชการกับกรุงเทพมหานคร");
|
||||||
|
|
||||||
|
b.Property<string>("ReasonWork")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("เหตุใดท่านจึงตัดสินใจร่วมงานกับกรุงเทพมหานคร");
|
||||||
|
|
||||||
|
b.Property<string>("ReasonWorkOther")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("อื่นๆ เหตุใดท่านจึงตัดสินใจร่วมงานกับกรุงเทพมหานคร");
|
||||||
|
|
||||||
|
b.Property<Guid>("RetirementResignId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<bool?>("SuggestFriends")
|
||||||
|
.HasColumnType("tinyint(1)")
|
||||||
|
.HasComment("ท่านจะแนะนำเพื่อนให้มาร่วมงานกับกรุงเทพมหานครหรือไม่");
|
||||||
|
|
||||||
|
b.Property<string>("SuggestFriendsReason")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("เหตุผลท่านจะแนะนำเพื่อนให้มาร่วมงานกับกรุงเทพมหานครหรือไม่");
|
||||||
|
|
||||||
|
b.Property<string>("Suggestion")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("ความคิดเห็นและข้อเสนอแนะอื่น ๆ ");
|
||||||
|
|
||||||
|
b.Property<string>("TimeThink")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("สำหรับการลาออกในครั้งนี้ ท่านได้คิดทบทวนอย่างจริงจังเป็นระยะเวลานานเท่าใด");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("RetirementResignId");
|
||||||
|
|
||||||
|
b.ToTable("RetirementQuestions");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResign", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResign", b =>
|
||||||
{
|
{
|
||||||
b.Property<Guid>("Id")
|
b.Property<Guid>("Id")
|
||||||
|
|
@ -12922,6 +13292,10 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasColumnType("double")
|
.HasColumnType("double")
|
||||||
.HasComment("ข้อมูลหน่วยงานเดิม เงินเดือน");
|
.HasComment("ข้อมูลหน่วยงานเดิม เงินเดือน");
|
||||||
|
|
||||||
|
b.Property<string>("ApproveReason")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("เหตุผลอนุมัติ");
|
||||||
|
|
||||||
b.Property<DateTime>("CreatedAt")
|
b.Property<DateTime>("CreatedAt")
|
||||||
.HasColumnType("datetime(6)")
|
.HasColumnType("datetime(6)")
|
||||||
.HasColumnOrder(100)
|
.HasColumnOrder(100)
|
||||||
|
|
@ -12991,6 +13365,10 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
.HasColumnType("longtext")
|
.HasColumnType("longtext")
|
||||||
.HasComment("เหตุผลที่ลาออกจากราชการ");
|
.HasComment("เหตุผลที่ลาออกจากราชการ");
|
||||||
|
|
||||||
|
b.Property<string>("RejectReason")
|
||||||
|
.HasColumnType("longtext")
|
||||||
|
.HasComment("เหตุผลไม่อนุมัติ");
|
||||||
|
|
||||||
b.Property<DateTime?>("SendDate")
|
b.Property<DateTime?>("SendDate")
|
||||||
.HasColumnType("datetime(6)")
|
.HasColumnType("datetime(6)")
|
||||||
.HasComment("วันที่ยื่นขอออกราชการ");
|
.HasComment("วันที่ยื่นขอออกราชการ");
|
||||||
|
|
@ -13006,6 +13384,68 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.ToTable("RetirementResigns");
|
b.ToTable("RetirementResigns");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResignDoc", b =>
|
||||||
|
{
|
||||||
|
b.Property<Guid>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("char(36)")
|
||||||
|
.HasColumnOrder(0)
|
||||||
|
.HasComment("PrimaryKey")
|
||||||
|
.HasAnnotation("Relational:JsonPropertyName", "id");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(100)
|
||||||
|
.HasComment("สร้างข้อมูลเมื่อ");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(104)
|
||||||
|
.HasComment("ชื่อ User ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<string>("CreatedUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(101)
|
||||||
|
.HasComment("User Id ที่สร้างข้อมูล");
|
||||||
|
|
||||||
|
b.Property<Guid>("DocumentId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateFullName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(200)
|
||||||
|
.HasColumnType("varchar(200)")
|
||||||
|
.HasColumnOrder(105)
|
||||||
|
.HasComment("ชื่อ User ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<string>("LastUpdateUserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasMaxLength(40)
|
||||||
|
.HasColumnType("varchar(40)")
|
||||||
|
.HasColumnOrder(103)
|
||||||
|
.HasComment("User Id ที่แก้ไขข้อมูลล่าสุด");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("LastUpdatedAt")
|
||||||
|
.HasColumnType("datetime(6)")
|
||||||
|
.HasColumnOrder(102)
|
||||||
|
.HasComment("แก้ไขข้อมูลล่าสุดเมื่อ");
|
||||||
|
|
||||||
|
b.Property<Guid>("RetirementResignId")
|
||||||
|
.HasColumnType("char(36)");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("DocumentId");
|
||||||
|
|
||||||
|
b.HasIndex("RetirementResignId");
|
||||||
|
|
||||||
|
b.ToTable("RetirementResignDocs");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Commands.Core.Command", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Commands.Core.Command", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("BMA.EHR.Domain.Models.Commands.Core.CommandStatus", "CommandStatus")
|
b.HasOne("BMA.EHR.Domain.Models.Commands.Core.CommandStatus", "CommandStatus")
|
||||||
|
|
@ -13599,6 +14039,58 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.Navigation("Insignia");
|
b.Navigation("Insignia");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaNoteDoc", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Documents.Document", "Document")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("DocumentId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Insignias.InsigniaNote", "InsigniaNote")
|
||||||
|
.WithMany("InsigniaNoteDocs")
|
||||||
|
.HasForeignKey("InsigniaNoteId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Document");
|
||||||
|
|
||||||
|
b.Navigation("InsigniaNote");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaNoteProfile", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Insignias.InsigniaNote", "InsigniaNote")
|
||||||
|
.WithMany("InsigniaNoteProfiles")
|
||||||
|
.HasForeignKey("InsigniaNoteId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.MetaData.OrganizationOrganization", "OrganizationOrganizationSend")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("OrganizationOrganizationSendId");
|
||||||
|
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.HR.Profile", "Profile")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("ProfileId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.MetaData.Insignia", "RequestInsignia")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("RequestInsigniaId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("InsigniaNote");
|
||||||
|
|
||||||
|
b.Navigation("OrganizationOrganizationSend");
|
||||||
|
|
||||||
|
b.Navigation("Profile");
|
||||||
|
|
||||||
|
b.Navigation("RequestInsignia");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaPeriod", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaPeriod", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("BMA.EHR.Domain.Models.Documents.Document", "ReliefDoc")
|
b.HasOne("BMA.EHR.Domain.Models.Documents.Document", "ReliefDoc")
|
||||||
|
|
@ -13798,7 +14290,7 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.OrganizationEmployee.OrganizationEmployeeProfile", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.OrganizationEmployee.OrganizationEmployeeProfile", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("BMA.EHR.Domain.Models.OrganizationEmployee.OrgEmployee", "OrgEmployee")
|
b.HasOne("BMA.EHR.Domain.Models.OrganizationEmployee.OrgEmployee", "OrgEmployee")
|
||||||
.WithMany()
|
.WithMany("OrganizationEmployeeProfiles")
|
||||||
.HasForeignKey("OrgEmployeeId")
|
.HasForeignKey("OrgEmployeeId")
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
.IsRequired();
|
.IsRequired();
|
||||||
|
|
@ -14758,14 +15250,29 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.Navigation("Profile");
|
b.Navigation("Profile");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementPeriod", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Documents.Document", "Document")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("DocumentId");
|
||||||
|
|
||||||
|
b.Navigation("Document");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementPeriodHistory", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementPeriodHistory", b =>
|
||||||
{
|
{
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Documents.Document", "Document")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("DocumentId");
|
||||||
|
|
||||||
b.HasOne("BMA.EHR.Domain.Models.Retirement.RetirementPeriod", "RetirementPeriod")
|
b.HasOne("BMA.EHR.Domain.Models.Retirement.RetirementPeriod", "RetirementPeriod")
|
||||||
.WithMany("RetirementPeriodHistorys")
|
.WithMany("RetirementPeriodHistorys")
|
||||||
.HasForeignKey("RetirementPeriodId")
|
.HasForeignKey("RetirementPeriodId")
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
.IsRequired();
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Document");
|
||||||
|
|
||||||
b.Navigation("RetirementPeriod");
|
b.Navigation("RetirementPeriod");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -14788,6 +15295,17 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.Navigation("RetirementPeriod");
|
b.Navigation("RetirementPeriod");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementQuestion", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Retirement.RetirementResign", "RetirementResign")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("RetirementResignId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("RetirementResign");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResign", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResign", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("BMA.EHR.Domain.Models.HR.Profile", "Profile")
|
b.HasOne("BMA.EHR.Domain.Models.HR.Profile", "Profile")
|
||||||
|
|
@ -14799,6 +15317,25 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.Navigation("Profile");
|
b.Navigation("Profile");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResignDoc", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Documents.Document", "Document")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("DocumentId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("BMA.EHR.Domain.Models.Retirement.RetirementResign", "RetirementResign")
|
||||||
|
.WithMany("RetirementResignDocs")
|
||||||
|
.HasForeignKey("RetirementResignId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Document");
|
||||||
|
|
||||||
|
b.Navigation("RetirementResign");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Commands.Core.Command", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Commands.Core.Command", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Deployments");
|
b.Navigation("Deployments");
|
||||||
|
|
@ -14955,6 +15492,13 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
b.Navigation("LimitTypeLeaves");
|
b.Navigation("LimitTypeLeaves");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaNote", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("InsigniaNoteDocs");
|
||||||
|
|
||||||
|
b.Navigation("InsigniaNoteProfiles");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaPeriod", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Insignias.InsigniaPeriod", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("InsigniaRequests");
|
b.Navigation("InsigniaRequests");
|
||||||
|
|
@ -14977,6 +15521,8 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
|
||||||
modelBuilder.Entity("BMA.EHR.Domain.Models.OrganizationEmployee.OrgEmployee", b =>
|
modelBuilder.Entity("BMA.EHR.Domain.Models.OrganizationEmployee.OrgEmployee", b =>
|
||||||
{
|
{
|
||||||
|
b.Navigation("OrganizationEmployeeProfiles");
|
||||||
|
|
||||||
b.Navigation("OrganizationPositionEmployeeLevels");
|
b.Navigation("OrganizationPositionEmployeeLevels");
|
||||||
|
|
||||||
b.Navigation("OrganizationPositionEmployeePositionSides");
|
b.Navigation("OrganizationPositionEmployeePositionSides");
|
||||||
|
|
@ -15035,6 +15581,11 @@ namespace BMA.EHR.Infrastructure.Migrations
|
||||||
|
|
||||||
b.Navigation("RetirementProfiles");
|
b.Navigation("RetirementProfiles");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("BMA.EHR.Domain.Models.Retirement.RetirementResign", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("RetirementResignDocs");
|
||||||
|
});
|
||||||
#pragma warning restore 612, 618
|
#pragma warning restore 612, 618
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -303,28 +303,29 @@ namespace BMA.EHR.Infrastructure.Persistence
|
||||||
#region " Insignia "
|
#region " Insignia "
|
||||||
|
|
||||||
public DbSet<InsigniaPeriod> InsigniaPeriods { get; set; }
|
public DbSet<InsigniaPeriod> InsigniaPeriods { get; set; }
|
||||||
|
|
||||||
public DbSet<InsigniaRequest> InsigniaRequests { get; set; }
|
public DbSet<InsigniaRequest> InsigniaRequests { get; set; }
|
||||||
|
|
||||||
public DbSet<InsigniaRequestProfile> InsigniaRequestProfiles { get; set; }
|
public DbSet<InsigniaRequestProfile> InsigniaRequestProfiles { get; set; }
|
||||||
public DbSet<InsigniaManage> InsigniaManages { get; set; }
|
public DbSet<InsigniaManage> InsigniaManages { get; set; }
|
||||||
|
public DbSet<InsigniaNoteProfile> InsigniaNoteProfiles { get; set; }
|
||||||
|
public DbSet<InsigniaNote> InsigniaNotes { get; set; }
|
||||||
|
public DbSet<InsigniaNoteDoc> InsigniaNoteDocs { get; set; }
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region " Retirement "
|
#region " Retirement "
|
||||||
|
|
||||||
public DbSet<RetirementPeriodHistory> RetirementPeriodHistorys { get; set; }
|
public DbSet<RetirementPeriodHistory> RetirementPeriodHistorys { get; set; }
|
||||||
|
|
||||||
public DbSet<RetirementPeriod> RetirementPeriods { get; set; }
|
public DbSet<RetirementPeriod> RetirementPeriods { get; set; }
|
||||||
|
|
||||||
public DbSet<RetirementProfile> RetirementProfiles { get; set; }
|
public DbSet<RetirementProfile> RetirementProfiles { get; set; }
|
||||||
public DbSet<RetirementDeceased> RetirementDeceaseds { get; set; }
|
public DbSet<RetirementDeceased> RetirementDeceaseds { get; set; }
|
||||||
public DbSet<RetirementResign> RetirementResigns { get; set; }
|
public DbSet<RetirementResign> RetirementResigns { get; set; }
|
||||||
|
public DbSet<RetirementResignDoc> RetirementResignDocs { get; set; }
|
||||||
public DbSet<RetirementOut> RetirementOuts { get; set; }
|
public DbSet<RetirementOut> RetirementOuts { get; set; }
|
||||||
public DbSet<RetirementDischarge> RetirementDischarges { get; set; }
|
public DbSet<RetirementDischarge> RetirementDischarges { get; set; }
|
||||||
public DbSet<RetirementExpulsion> RetirementExpulsions { get; set; }
|
public DbSet<RetirementExpulsion> RetirementExpulsions { get; set; }
|
||||||
public DbSet<RetirementOther> RetirementOthers { get; set; }
|
public DbSet<RetirementOther> RetirementOthers { get; set; }
|
||||||
public DbSet<RetirementOtherDoc> RetirementOtherDocs { get; set; }
|
public DbSet<RetirementOtherDoc> RetirementOtherDocs { get; set; }
|
||||||
|
public DbSet<RetirementQuestion> RetirementQuestions { get; set; }
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -47,17 +47,16 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// list รอบเครื่องราช
|
/// list รอบเครื่องราช
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="type">ประเภทเครื่องราช(insignia=เครื่องราช,coin=เหรียญ)</param>
|
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
/// <response code="200"></response>
|
/// <response code="200"></response>
|
||||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
[HttpGet("{type}")]
|
[HttpGet()]
|
||||||
public async Task<ActionResult<ResponseObject>> GetList(string type)
|
public async Task<ActionResult<ResponseObject>> GetList()
|
||||||
{
|
{
|
||||||
var insigniaPeriods = await _context.InsigniaPeriods.AsQueryable()
|
var insigniaPeriods = await _context.InsigniaPeriods.AsQueryable()
|
||||||
.Where(x => x.Type == type)
|
// .Where(x => x.Type == type)
|
||||||
.OrderByDescending(x => x.Year)
|
.OrderByDescending(x => x.Year)
|
||||||
.ThenByDescending(x => x.StartDate)
|
.ThenByDescending(x => x.StartDate)
|
||||||
.Select(p => new
|
.Select(p => new
|
||||||
|
|
@ -147,7 +146,6 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// สร้างรอบเครื่องราช
|
/// สร้างรอบเครื่องราช
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="type">ประเภทเครื่องราช(insignia=เครื่องราช,coin=เหรียญ)</param>
|
|
||||||
/// <param name="req.Round">รอบที่</param>
|
/// <param name="req.Round">รอบที่</param>
|
||||||
/// <param name="req.Name">ชื่อรอบ</param>
|
/// <param name="req.Name">ชื่อรอบ</param>
|
||||||
/// <param name="req.Year">ปีที่เสนอ</param>
|
/// <param name="req.Year">ปีที่เสนอ</param>
|
||||||
|
|
@ -160,8 +158,8 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
[HttpPost("{type}")]
|
[HttpPost()]
|
||||||
public async Task<ActionResult<ResponseObject>> Post([FromForm] InsigniaPeriodRequest req, string type)
|
public async Task<ActionResult<ResponseObject>> Post([FromForm] InsigniaPeriodRequest req)
|
||||||
{
|
{
|
||||||
var insigniaPeriod = await _context.InsigniaPeriods.AsQueryable()
|
var insigniaPeriod = await _context.InsigniaPeriods.AsQueryable()
|
||||||
.Where(x => x.Round == req.Round && x.Year == req.Year)
|
.Where(x => x.Round == req.Round && x.Year == req.Year)
|
||||||
|
|
@ -177,7 +175,6 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
StartDate = req.StartDate,
|
StartDate = req.StartDate,
|
||||||
EndDate = req.EndDate,
|
EndDate = req.EndDate,
|
||||||
Amount = req.Amount,
|
Amount = req.Amount,
|
||||||
Type = type.Trim().ToUpper(),
|
|
||||||
IsActive = true,
|
IsActive = true,
|
||||||
CreatedUserId = FullName ?? "",
|
CreatedUserId = FullName ?? "",
|
||||||
CreatedFullName = UserId ?? "System Administrator",
|
CreatedFullName = UserId ?? "System Administrator",
|
||||||
|
|
|
||||||
|
|
@ -26,17 +26,20 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
private readonly MinIOService _documentService;
|
private readonly MinIOService _documentService;
|
||||||
private readonly IHttpContextAccessor _httpContextAccessor;
|
private readonly IHttpContextAccessor _httpContextAccessor;
|
||||||
private readonly InsigniaPeriodsRepository _repository;
|
private readonly InsigniaPeriodsRepository _repository;
|
||||||
|
private readonly IWebHostEnvironment _hostingEnvironment;
|
||||||
private readonly string Royal_Type = "Royal";
|
private readonly string Royal_Type = "Royal";
|
||||||
|
|
||||||
public InsigniaRequestController(ApplicationDBContext context,
|
public InsigniaRequestController(ApplicationDBContext context,
|
||||||
MinIOService documentService,
|
MinIOService documentService,
|
||||||
InsigniaPeriodsRepository repository,
|
InsigniaPeriodsRepository repository,
|
||||||
|
IWebHostEnvironment hostingEnvironment,
|
||||||
IHttpContextAccessor httpContextAccessor)
|
IHttpContextAccessor httpContextAccessor)
|
||||||
{
|
{
|
||||||
_context = context;
|
_context = context;
|
||||||
_documentService = documentService;
|
_documentService = documentService;
|
||||||
_repository = repository;
|
_repository = repository;
|
||||||
_httpContextAccessor = httpContextAccessor;
|
_httpContextAccessor = httpContextAccessor;
|
||||||
|
_hostingEnvironment = hostingEnvironment;
|
||||||
}
|
}
|
||||||
|
|
||||||
#region " Properties "
|
#region " Properties "
|
||||||
|
|
@ -282,12 +285,13 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
if (result != null)
|
if (result != null)
|
||||||
{
|
{
|
||||||
Guid period = result.PeriodId;
|
Guid period = result.PeriodId;
|
||||||
string periodName = result.Name;
|
var periodName = result.Name;
|
||||||
string requestStatus = result.RequestStatus;
|
string requestStatus = result.RequestStatus;
|
||||||
var resend = new InsigniaResults
|
var resend = new InsigniaResults
|
||||||
{
|
{
|
||||||
PeriodId = period,
|
PeriodId = period,
|
||||||
Year = result.Year,
|
Year = result.Year,
|
||||||
|
Round = result.Round,
|
||||||
Name = periodName,
|
Name = periodName,
|
||||||
RequestStatus = requestStatus,
|
RequestStatus = requestStatus,
|
||||||
OrganizationName = result.OrganizationName,
|
OrganizationName = result.OrganizationName,
|
||||||
|
|
@ -453,21 +457,27 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
[HttpGet("{insigniaPeriodId:length(36)}")]
|
[HttpGet("{insigniaPeriodId:length(36)}")]
|
||||||
public async Task<ActionResult<ResponseObject>> UpdateInsignaiRequestBkk(Guid insigniaPeriodId)
|
public async Task<ActionResult<ResponseObject>> UpdateInsignaiRequestBkk(Guid insigniaPeriodId)
|
||||||
{
|
{
|
||||||
var oc = await _context.Organizations.Where(x => x.Parent == null).FirstOrDefaultAsync();
|
var organizationType = await _context.OrganizationTypes.Where(x => x.Name == "หน่วยงาน").FirstOrDefaultAsync();
|
||||||
if (oc == null)
|
if (organizationType == null)
|
||||||
return Error(GlobalMessages.Error);
|
return Error(GlobalMessages.OrganizationNotFound);
|
||||||
|
var organizations = await _context.Organizations.Where(x => x.OrganizationType == organizationType).ToListAsync();
|
||||||
var result = await _repository.GetInsigniaRequest(insigniaPeriodId, oc.Id);
|
foreach (var organization in organizations)
|
||||||
if (result != null)
|
|
||||||
{
|
{
|
||||||
Guid period = result.PeriodId;
|
if (organization == null)
|
||||||
string requestStatus = result.RequestStatus;
|
continue;
|
||||||
var candidate = await _repository.GetInsigniaCandidateBKK(insigniaPeriodId, oc.Id);
|
|
||||||
// ตรวจสอบว่ารายการอยู่ใน table insignia_request_new
|
var result = await _repository.GetInsigniaRequest(insigniaPeriodId, organization.Id);
|
||||||
if (requestStatus == null)
|
if (result != null)
|
||||||
{
|
{
|
||||||
// บันทึกรายชื่อ
|
Guid period = result.PeriodId;
|
||||||
await _repository.InsertCandidate(period, oc.Id, candidate);
|
string requestStatus = result.RequestStatus;
|
||||||
|
var candidate = await _repository.GetInsigniaCandidateBKK(insigniaPeriodId, organization.Id);
|
||||||
|
// ตรวจสอบว่ารายการอยู่ใน table insignia_request_new
|
||||||
|
if (requestStatus == null)
|
||||||
|
{
|
||||||
|
// บันทึกรายชื่อ
|
||||||
|
await _repository.InsertCandidate(period, organization.Id, candidate);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return Success();
|
return Success();
|
||||||
|
|
@ -504,28 +514,99 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
|
|
||||||
// #endregion
|
// #endregion
|
||||||
|
|
||||||
// #region " เปลี่ยน status เป็น st2 รอ ผอ.สำนักรับรอง "
|
/// <summary>
|
||||||
|
/// เปลี่ยน status เป็น st3 การเจ้าหน้าที่อนุมัติ "
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpGet("officer/approve/{ocId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> ApproveChangeStatusToSt2(Guid id, Guid ocId)
|
||||||
|
{
|
||||||
|
await _repository.SaveAprove(id, ocId);
|
||||||
|
var requestId = await _repository.GetRequestId(id, ocId);
|
||||||
|
var requestNew = await _context.InsigniaRequests.FirstOrDefaultAsync(i => i.Id == requestId);
|
||||||
|
if (requestNew != null)
|
||||||
|
{
|
||||||
|
requestNew.RequestStatus = "st3";
|
||||||
|
_context.SaveChanges();
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
}
|
||||||
|
|
||||||
// [HttpPost("status/officer/send/{ocId:length(36)}")]
|
/// <summary>
|
||||||
// public async Task<ActionResult<ResponseObject>> ChangeStatusToSt2(Guid id, Guid ocId, InsigniaApproveRequest items)
|
/// เปลี่ยน status เป็น st2 การเจ้าหน้าที่ไม่อนุมัติ "
|
||||||
// {
|
/// </summary>
|
||||||
// var result = await _repository.GetInsigniaRequest(id, ocId);
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpGet("officer/reject/{ocId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> RejectChangeStatusToSt1(Guid id, Guid ocId)
|
||||||
|
{
|
||||||
|
await _repository.SaveAprove(id, ocId);
|
||||||
|
var requestId = await _repository.GetRequestId(id, ocId);
|
||||||
|
var requestNew = await _context.InsigniaRequests.FirstOrDefaultAsync(i => i.Id == requestId);
|
||||||
|
if (requestNew != null)
|
||||||
|
{
|
||||||
|
requestNew.RequestStatus = "st2";
|
||||||
|
_context.SaveChanges();
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
}
|
||||||
|
|
||||||
// if (items != null)
|
/// <summary>
|
||||||
// {
|
/// เปลี่ยน status เป็น st5 ผอ.หน่วยอนุมัติ "
|
||||||
// _repository.SaveAprove(result.PeriodId, ocId, items);
|
/// </summary>
|
||||||
// }
|
/// <returns></returns>
|
||||||
// var requestId = await _repository.GetRequestId(result.PeriodId, ocId);
|
/// <response code="200"></response>
|
||||||
// var requestNew = await _context.InsigniaRequests.FirstOrDefaultAsync(i => i.Id == requestId);
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
// if (requestNew != null)
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
// {
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
// requestNew.RequestStatus = "st2";
|
[HttpGet("director/approve/{ocId:length(36)}")]
|
||||||
// _context.SaveChanges();
|
public async Task<ActionResult<ResponseObject>> ApproveChangeStatusToSt3(Guid id, Guid ocId)
|
||||||
// return Success();
|
{
|
||||||
// }
|
var requestId = await _repository.GetRequestId(id, ocId);
|
||||||
// else
|
var requestNew = await _context.InsigniaRequests.FirstOrDefaultAsync(i => i.Id == requestId);
|
||||||
// return Error(GlobalMessages.InsigniaRequestNotFound);
|
if (requestNew != null)
|
||||||
// }
|
{
|
||||||
|
requestNew.RequestStatus = "st5";
|
||||||
|
_context.SaveChanges();
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// เปลี่ยน status เป็น st4 ผอ.หน่วยไม่อนุมัติ "
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpGet("director/reject/{ocId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> RejectChangeStatusToSt2(Guid id, Guid ocId)
|
||||||
|
{
|
||||||
|
var requestId = await _repository.GetRequestId(id, ocId);
|
||||||
|
var requestNew = await _context.InsigniaRequests.FirstOrDefaultAsync(i => i.Id == requestId);
|
||||||
|
if (requestNew != null)
|
||||||
|
{
|
||||||
|
requestNew.RequestStatus = "st4";
|
||||||
|
_context.SaveChanges();
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
}
|
||||||
|
|
||||||
// #endregion
|
// #endregion
|
||||||
|
|
||||||
|
|
@ -641,24 +722,21 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
var insigniaPeriod = await _context.InsigniaPeriods.FirstOrDefaultAsync(x => x.Id == insigniaPeriodId);
|
var insigniaPeriod = await _context.InsigniaPeriods.FirstOrDefaultAsync(x => x.Id == insigniaPeriodId);
|
||||||
if (insigniaPeriod == null)
|
if (insigniaPeriod == null)
|
||||||
return Error(GlobalMessages.InsigniaRequestNotFound);
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
var orgSendCount = await _context.InsigniaRequests
|
var orgAllCount = await _context.InsigniaRequests
|
||||||
.Where(x => x.Period == insigniaPeriod)
|
.Where(x => x.Period == insigniaPeriod)
|
||||||
.CountAsync();
|
.ToListAsync();
|
||||||
var allUserUser = await _context.InsigniaRequests
|
var allUserUser = await _context.InsigniaRequests
|
||||||
.Where(x => x.Period == insigniaPeriod)
|
.Where(x => x.Period == insigniaPeriod)
|
||||||
.Select(x => x.RequestProfiles.Count())
|
.Select(x => x.RequestProfiles.Count())
|
||||||
.SumAsync();
|
.SumAsync();
|
||||||
var orgAllCount = await _context.Organizations
|
|
||||||
.Where(x => x.OrganizationType != null)
|
|
||||||
.Where(x => x.OrganizationType.Name == "หน่วยงาน")
|
|
||||||
.CountAsync();
|
|
||||||
|
|
||||||
return Success(new { OrgAllCount = orgAllCount, OrgSendCount = orgSendCount, OrgNoSendCount = orgAllCount - orgSendCount, AllUserUser = allUserUser });
|
return Success(new { OrgAllCount = orgAllCount.Count(), OrgSendCount = orgAllCount.Where(x => x.RequestStatus != "st1" && x.RequestStatus != "st2").Count(), OrgNoSendCount = orgAllCount.Where(x => x.RequestStatus == "st1" && x.RequestStatus == "st2").Count(), AllUserUser = allUserUser });
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// หน่วยงานทียังไม่ส่งรายชื่อ
|
/// หน่วยงานทียังไม่ส่งรายชื่อ
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="insigniaPeriodId">Id รอบการยื่นขอ</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
/// <response code="200"></response>
|
/// <response code="200"></response>
|
||||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
|
@ -672,13 +750,14 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
return Error(GlobalMessages.InsigniaRequestNotFound);
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
var orgIdSend = await _context.InsigniaRequests
|
var orgIdSend = await _context.InsigniaRequests
|
||||||
.Where(x => x.Period == insigniaPeriod)
|
.Where(x => x.Period == insigniaPeriod)
|
||||||
|
.Where(x => x.RequestStatus == "st1")
|
||||||
.Select(x => x.Organization.Id)
|
.Select(x => x.Organization.Id)
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
var orgAllCount = await _context.Organizations
|
var orgAllCount = await _context.Organizations
|
||||||
.Where(x => x.OrganizationOrganization != null)
|
.Where(x => x.OrganizationOrganization != null)
|
||||||
.Where(x => x.OrganizationType != null)
|
.Where(x => x.OrganizationType != null)
|
||||||
.Where(x => x.OrganizationType.Name == "หน่วยงาน")
|
.Where(x => x.OrganizationType.Name == "หน่วยงาน")
|
||||||
.Where(x => !orgIdSend.Contains(x.Id))
|
.Where(x => orgIdSend.Contains(x.Id))
|
||||||
.Select(x => new
|
.Select(x => new
|
||||||
{
|
{
|
||||||
OrgId = x.Id,
|
OrgId = x.Id,
|
||||||
|
|
@ -686,7 +765,7 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
})
|
})
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
||||||
return Success();
|
return Success(orgAllCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -716,7 +795,7 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// เพิ่มราชชื่อผู้ได้รับเครื่องราช
|
/// เพิ่มรายชื่อผู้ได้รับเครื่องราช
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
/// <response code="200"></response>
|
/// <response code="200"></response>
|
||||||
|
|
@ -787,8 +866,9 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// แก้ไขราชชื่อผู้ได้รับเครื่องราช
|
/// แก้ไขรายชื่อผู้ได้รับเครื่องราช
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="insigniaRequestProfileId">Id รายชื่อคนที่ยื่นของในรอบ</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
/// <response code="200"></response>
|
/// <response code="200"></response>
|
||||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
|
@ -812,5 +892,354 @@ namespace BMA.EHR.Insignia.Service.Controllers
|
||||||
return Success();
|
return Success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// รายชื่อผู้ได้รับเครื่องราชส่งข้อมูลไปบันทึกผลได้รับเครื่องราช
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="insigniaPeriodId">Id รอบการยื่นขอ</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpPost("send/note/{insigniaPeriodId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> SendPeriodToNote([FromBody] InsigniaNoteNameRequest req, Guid insigniaPeriodId)
|
||||||
|
{
|
||||||
|
var insigniaPeriod = await _context.InsigniaPeriods
|
||||||
|
.Include(x => x.InsigniaRequests)
|
||||||
|
.Include(x => x.ReliefDoc)
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == insigniaPeriodId);
|
||||||
|
if (insigniaPeriod == null)
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
var insigniaNote = await _context.InsigniaNotes
|
||||||
|
.Include(x => x.InsigniaNoteProfiles)
|
||||||
|
.ThenInclude(x => x.Profile)
|
||||||
|
.Include(x => x.InsigniaNoteProfiles)
|
||||||
|
.ThenInclude(x => x.RequestInsignia)
|
||||||
|
.FirstOrDefaultAsync(x => x.Year == insigniaPeriod.Year);
|
||||||
|
if (insigniaNote == null)
|
||||||
|
{
|
||||||
|
insigniaNote = new InsigniaNote
|
||||||
|
{
|
||||||
|
// Round = insigniaPeriod.Round,
|
||||||
|
Name = req.Name,
|
||||||
|
Year = insigniaPeriod.Year,
|
||||||
|
// StartDate = insigniaPeriod.StartDate,
|
||||||
|
// EndDate = insigniaPeriod.EndDate,
|
||||||
|
// Amount = insigniaPeriod.Amount,
|
||||||
|
// ReliefDoc = insigniaPeriod.ReliefDoc,
|
||||||
|
CreatedUserId = FullName ?? "",
|
||||||
|
CreatedFullName = UserId ?? "System Administrator",
|
||||||
|
CreatedAt = DateTime.Now,
|
||||||
|
LastUpdateFullName = FullName ?? "System Administrator",
|
||||||
|
LastUpdateUserId = UserId ?? "",
|
||||||
|
LastUpdatedAt = DateTime.Now,
|
||||||
|
};
|
||||||
|
await _context.InsigniaNotes.AddAsync(insigniaNote);
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
}
|
||||||
|
var requestOlds = await _context.InsigniaRequests
|
||||||
|
.Where(p => p.Period == insigniaPeriod)
|
||||||
|
.ToListAsync();
|
||||||
|
foreach (var requestOld in requestOlds)
|
||||||
|
{
|
||||||
|
var profileOlds = await _context.InsigniaRequestProfiles
|
||||||
|
.Include(x => x.Profile)
|
||||||
|
.Include(x => x.RequestInsignia)
|
||||||
|
.Where(p => p.Request == requestOld)
|
||||||
|
.ToListAsync();
|
||||||
|
|
||||||
|
foreach (var profileOld in profileOlds)
|
||||||
|
{
|
||||||
|
var noreProfileOld = insigniaNote.InsigniaNoteProfiles
|
||||||
|
.Where(x => x.Profile == profileOld.Profile)
|
||||||
|
.FirstOrDefault();
|
||||||
|
if (noreProfileOld != null)
|
||||||
|
{
|
||||||
|
noreProfileOld.RequestDate = profileOld.RequestDate;
|
||||||
|
noreProfileOld.Salary = profileOld.Salary;
|
||||||
|
noreProfileOld.IsApprove = profileOld.IsApprove;
|
||||||
|
noreProfileOld.Status = profileOld.Status;
|
||||||
|
noreProfileOld.RequestInsignia = profileOld.RequestInsignia;
|
||||||
|
noreProfileOld.CreatedUserId = FullName ?? "";
|
||||||
|
noreProfileOld.CreatedFullName = UserId ?? "System Administrator";
|
||||||
|
noreProfileOld.CreatedAt = DateTime.Now;
|
||||||
|
noreProfileOld.LastUpdateFullName = FullName ?? "System Administrator";
|
||||||
|
noreProfileOld.LastUpdateUserId = UserId ?? "";
|
||||||
|
noreProfileOld.LastUpdatedAt = DateTime.Now;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
await _context.InsigniaNoteProfiles.AddAsync(new InsigniaNoteProfile
|
||||||
|
{
|
||||||
|
RequestDate = profileOld.RequestDate,
|
||||||
|
Salary = profileOld.Salary,
|
||||||
|
IsApprove = profileOld.IsApprove,
|
||||||
|
Status = profileOld.Status,
|
||||||
|
Profile = profileOld.Profile,
|
||||||
|
RequestInsignia = profileOld.RequestInsignia,
|
||||||
|
OrganizationOrganizationSend = await _context.OrganizationOrganizations.FirstOrDefaultAsync(x => x.Id == profileOld.Profile.OrganizationOrganizationId),
|
||||||
|
InsigniaNote = insigniaNote,
|
||||||
|
CreatedUserId = FullName ?? "",
|
||||||
|
CreatedFullName = UserId ?? "System Administrator",
|
||||||
|
CreatedAt = DateTime.Now,
|
||||||
|
LastUpdateFullName = FullName ?? "System Administrator",
|
||||||
|
LastUpdateUserId = UserId ?? "",
|
||||||
|
LastUpdatedAt = DateTime.Now,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// list รอบบันทึกผลการได้รับพระราชทานเครื่องราชย์อิสริยสภรณ์/การจ่ายใบกำกับ
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpGet("note")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> GetListNote()
|
||||||
|
{
|
||||||
|
var insigniaNotes = await _context.InsigniaNotes.AsQueryable()
|
||||||
|
.OrderByDescending(x => x.Year)
|
||||||
|
// .ThenByDescending(x => x.StartDate)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
Id = p.Id,
|
||||||
|
// Amount = p.Amount,
|
||||||
|
Name = p.Name,
|
||||||
|
// Round = p.Round,
|
||||||
|
// Start = p.StartDate,
|
||||||
|
// End = p.EndDate,
|
||||||
|
Year = p.Year,
|
||||||
|
// Doc = p.ReliefDoc == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.ReliefDoc.Id,
|
||||||
|
})
|
||||||
|
.ToListAsync();
|
||||||
|
// var data = new List<dynamic>();
|
||||||
|
// foreach (var insigniaNote in insigniaNotes)
|
||||||
|
// {
|
||||||
|
// var _data = new
|
||||||
|
// {
|
||||||
|
// Id = insigniaNote.Id,
|
||||||
|
// Amount = insigniaNote.Amount,
|
||||||
|
// Name = insigniaNote.Name,
|
||||||
|
// Round = insigniaNote.Round,
|
||||||
|
// Start = insigniaNote.Start,
|
||||||
|
// End = insigniaNote.End,
|
||||||
|
// Year = insigniaNote.Year,
|
||||||
|
// Doc = insigniaNote.Doc == Guid.Parse("00000000-0000-0000-0000-000000000000") ? null : await _documentService.ImagesPath(insigniaNote.Doc),
|
||||||
|
// };
|
||||||
|
// data.Add(_data);
|
||||||
|
// }
|
||||||
|
|
||||||
|
return Success(insigniaNotes);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// list รายชื่อบันทึกผลการได้รับพระราชทานเครื่องราชย์อิสริยสภรณ์/การจ่ายใบกำกับ
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpPost("note/search")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> GetListNoteProfile([FromBody] InsigniaNoteSearchRequest req)
|
||||||
|
{
|
||||||
|
var insigniaNote = await _context.InsigniaNotes
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == req.InsigniaNoteId);
|
||||||
|
if (insigniaNote == null)
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
var insigniaType = await _context.InsigniaTypes
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == req.InsigniaTypeId);
|
||||||
|
if (insigniaType == null)
|
||||||
|
return Error(GlobalMessages.InsigniaTypeNotFound);
|
||||||
|
var insigniaNoteProfiles = await _context.InsigniaNoteProfiles
|
||||||
|
.Where(x => x.InsigniaNote == insigniaNote)
|
||||||
|
.Where(x => x.RequestInsignia.InsigniaType == insigniaType)
|
||||||
|
.Where(x => req.InsigniaId == null ? x.RequestInsignia != null : (x.RequestInsignia.Id == req.InsigniaId))
|
||||||
|
.Select(x => new
|
||||||
|
{
|
||||||
|
FullName = $"{x.Profile.FirstName} {x.Profile.LastName}",
|
||||||
|
RequestInsignia = x.RequestInsignia.Name,
|
||||||
|
RequestInsigniaId = x.RequestInsignia.Id,
|
||||||
|
RequestInsigniaShortName = x.RequestInsignia.ShortName,
|
||||||
|
DateReceive = x.DateReceive,
|
||||||
|
OrganizationOrganizationSend = x.OrganizationOrganizationSend == null ? null : x.OrganizationOrganizationSend.Name,
|
||||||
|
OrganizationOrganizationReceive = x.Profile.OrganizationOrganization,
|
||||||
|
Date = x.Date,
|
||||||
|
VolumeNo = x.VolumeNo,
|
||||||
|
Section = x.Section,
|
||||||
|
Page = x.Page,
|
||||||
|
No = x.No,
|
||||||
|
DatePayment = x.DatePayment,
|
||||||
|
TypePayment = x.TypePayment,
|
||||||
|
Address = x.Address,
|
||||||
|
Salary = x.Salary,
|
||||||
|
}).ToListAsync();
|
||||||
|
|
||||||
|
return Success(insigniaNoteProfiles);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// เพิ่ม/แก้ไขรายชื่อบันทึกผลการได้รับพระราชทานเครื่องราชย์อิสริยสภรณ์/การจ่ายใบกำกับ
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpPut("note/{insigniaNoteId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> AddNoteProfile([FromBody] InsigniaNoteRequest req, Guid insigniaNoteId)
|
||||||
|
{
|
||||||
|
var profile = await _context.Profiles
|
||||||
|
.Include(x => x.Salaries)
|
||||||
|
.FirstOrDefaultAsync(x => x.CitizenId == req.CitizanId);
|
||||||
|
if (profile == null)
|
||||||
|
return Error(GlobalMessages.DataNotFound);
|
||||||
|
var insignia = await _context.Insignias
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == req.InsigniaId);
|
||||||
|
if (insignia == null)
|
||||||
|
return Error(GlobalMessages.InsigniaNotFound);
|
||||||
|
var insigniaNote = await _context.InsigniaNotes
|
||||||
|
.Include(x => x.InsigniaNoteProfiles)
|
||||||
|
.ThenInclude(x => x.Profile)
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == insigniaNoteId);
|
||||||
|
if (insigniaNote == null)
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
|
||||||
|
var profileInsignia = insigniaNote.InsigniaNoteProfiles.FirstOrDefault(x => x.Profile.CitizenId == req.CitizanId);
|
||||||
|
if (profileInsignia == null)
|
||||||
|
{
|
||||||
|
await _context.InsigniaNoteProfiles.AddAsync(new InsigniaNoteProfile
|
||||||
|
{
|
||||||
|
Salary = profile.Salaries.Count() == 0 ? null : profile.Salaries.OrderByDescending(x => x.Order).FirstOrDefault().Amount,
|
||||||
|
IsApprove = true,
|
||||||
|
Status = "PENDING",
|
||||||
|
Profile = profile,
|
||||||
|
Issue = req.Issue,
|
||||||
|
Number = req.Number,
|
||||||
|
DateReceive = req.DateReceive,
|
||||||
|
Date = req.Date,
|
||||||
|
VolumeNo = req.VolumeNo,
|
||||||
|
Section = req.Section,
|
||||||
|
Page = req.Page,
|
||||||
|
No = req.No,
|
||||||
|
DatePayment = req.DatePayment,
|
||||||
|
TypePayment = req.TypePayment,
|
||||||
|
Address = req.Address,
|
||||||
|
RequestInsignia = insignia,
|
||||||
|
OrganizationOrganizationSend = await _context.OrganizationOrganizations.FirstOrDefaultAsync(x => x.Id == profile.OrganizationOrganizationId),
|
||||||
|
InsigniaNote = insigniaNote,
|
||||||
|
CreatedUserId = FullName ?? "",
|
||||||
|
CreatedFullName = UserId ?? "System Administrator",
|
||||||
|
CreatedAt = DateTime.Now,
|
||||||
|
LastUpdateFullName = FullName ?? "System Administrator",
|
||||||
|
LastUpdateUserId = UserId ?? "",
|
||||||
|
LastUpdatedAt = DateTime.Now,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
profileInsignia.Issue = req.Issue;
|
||||||
|
profileInsignia.Number = req.Number;
|
||||||
|
profileInsignia.DateReceive = req.DateReceive;
|
||||||
|
profileInsignia.Date = req.Date;
|
||||||
|
profileInsignia.VolumeNo = req.VolumeNo;
|
||||||
|
profileInsignia.Section = req.Section;
|
||||||
|
profileInsignia.Page = req.Page;
|
||||||
|
profileInsignia.No = req.No;
|
||||||
|
profileInsignia.DatePayment = req.DatePayment;
|
||||||
|
profileInsignia.TypePayment = req.TypePayment;
|
||||||
|
profileInsignia.Address = req.Address;
|
||||||
|
profileInsignia.RequestInsignia = insignia;
|
||||||
|
profileInsignia.LastUpdateFullName = FullName ?? "System Administrator";
|
||||||
|
profileInsignia.LastUpdateUserId = UserId ?? "";
|
||||||
|
profileInsignia.LastUpdatedAt = DateTime.Now;
|
||||||
|
}
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// เพิ่มเอกสารบันทึกผลการได้รับพระราชทานเครื่องราชย์อิสริยสภรณ์/การจ่ายใบกำกับ
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpPut("note/doc/{insigniaNoteId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> AddDocumentProfile([FromForm] InsigniaNoteDocRequest req, Guid insigniaNoteId)
|
||||||
|
{
|
||||||
|
var insigniaNote = await _context.InsigniaNotes
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == insigniaNoteId);
|
||||||
|
if (insigniaNote == null)
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
|
||||||
|
if (Request.Form.Files != null && Request.Form.Files.Count != 0)
|
||||||
|
{
|
||||||
|
foreach (var file in Request.Form.Files)
|
||||||
|
{
|
||||||
|
var fileExtension = Path.GetExtension(file.FileName);
|
||||||
|
|
||||||
|
var doc = await _documentService.UploadFileAsync(file, req.Name == null ? file.FileName : req.Name);
|
||||||
|
var _doc = await _context.Documents.AsQueryable()
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == doc.Id);
|
||||||
|
if (_doc != null)
|
||||||
|
{
|
||||||
|
await _context.InsigniaNoteDocs.AddAsync(new InsigniaNoteDoc
|
||||||
|
{
|
||||||
|
Reason = req.Reason,
|
||||||
|
Document = _doc,
|
||||||
|
InsigniaNote = insigniaNote,
|
||||||
|
CreatedUserId = FullName ?? "",
|
||||||
|
CreatedFullName = UserId ?? "System Administrator",
|
||||||
|
CreatedAt = DateTime.Now,
|
||||||
|
LastUpdateFullName = FullName ?? "System Administrator",
|
||||||
|
LastUpdateUserId = UserId ?? "",
|
||||||
|
LastUpdatedAt = DateTime.Now,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// List เอกสารบันทึกผลการได้รับพระราชทานเครื่องราชย์อิสริยสภรณ์/การจ่ายใบกำกับ
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpGet("note/doc/{insigniaNoteId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> GetDocumentProfile([FromBody] InsigniaNoteDocRequest req, Guid insigniaNoteId)
|
||||||
|
{
|
||||||
|
var insigniaNote = await _context.InsigniaNotes
|
||||||
|
.Include(x => x.InsigniaNoteDocs)
|
||||||
|
.ThenInclude(x => x.Document)
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == insigniaNoteId);
|
||||||
|
if (insigniaNote == null)
|
||||||
|
return Error(GlobalMessages.InsigniaRequestNotFound);
|
||||||
|
var insigniaNoteDocs = new List<dynamic>();
|
||||||
|
foreach (var doc in insigniaNote.InsigniaNoteDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
|
{
|
||||||
|
FileName = doc.Document.FileName,
|
||||||
|
PathName = await _documentService.ImagesPath(doc.Document.Id)
|
||||||
|
};
|
||||||
|
insigniaNoteDocs.Add(_doc);
|
||||||
|
}
|
||||||
|
return Success(insigniaNoteDocs);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
6214
BMA.EHR.Insignia.Service/FileSql/Dump20230821.sql
Normal file
6214
BMA.EHR.Insignia.Service/FileSql/Dump20230821.sql
Normal file
File diff suppressed because one or more lines are too long
12
BMA.EHR.Insignia.Service/Requests/InsigniaNoteDocRequest.cs
Normal file
12
BMA.EHR.Insignia.Service/Requests/InsigniaNoteDocRequest.cs
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Insignia.Service.Requests
|
||||||
|
{
|
||||||
|
public class InsigniaNoteDocRequest
|
||||||
|
{
|
||||||
|
public string? Name { get; set; }
|
||||||
|
public string? Reason { get; set; }
|
||||||
|
public List<FormFile>? File { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
10
BMA.EHR.Insignia.Service/Requests/InsigniaNoteNameRequest.cs
Normal file
10
BMA.EHR.Insignia.Service/Requests/InsigniaNoteNameRequest.cs
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Insignia.Service.Requests
|
||||||
|
{
|
||||||
|
public class InsigniaNoteNameRequest
|
||||||
|
{
|
||||||
|
public string? Name { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
23
BMA.EHR.Insignia.Service/Requests/InsigniaNoteRequest.cs
Normal file
23
BMA.EHR.Insignia.Service/Requests/InsigniaNoteRequest.cs
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Insignia.Service.Requests
|
||||||
|
{
|
||||||
|
public class InsigniaNoteRequest
|
||||||
|
{
|
||||||
|
public string CitizanId { get; set; }
|
||||||
|
public Guid? InsigniaId { get; set; }
|
||||||
|
|
||||||
|
public string? Issue { get; set; }
|
||||||
|
public string? Number { get; set; }
|
||||||
|
public DateTime? DateReceive { get; set; }
|
||||||
|
public DateTime? Date { get; set; }
|
||||||
|
public string? VolumeNo { get; set; }
|
||||||
|
public string? Section { get; set; }
|
||||||
|
public string? Page { get; set; }
|
||||||
|
public string? No { get; set; }
|
||||||
|
public DateTime? DatePayment { get; set; }
|
||||||
|
public string? TypePayment { get; set; }
|
||||||
|
public string? Address { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Insignia.Service.Requests
|
||||||
|
{
|
||||||
|
public class InsigniaNoteSearchRequest
|
||||||
|
{
|
||||||
|
public Guid InsigniaTypeId { get; set; }
|
||||||
|
public Guid InsigniaNoteId { get; set; }
|
||||||
|
public Guid? InsigniaId { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -161,11 +161,13 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
Total = x.Total,
|
Total = x.Total,
|
||||||
TypeReport = x.TypeReport,
|
TypeReport = x.TypeReport,
|
||||||
Json = true,
|
Json = true,
|
||||||
|
Document = x.Document == null ? false : true,
|
||||||
})
|
})
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
||||||
var retire = await _context.RetirementPeriods
|
var retire = await _context.RetirementPeriods
|
||||||
.Include(x => x.RetirementProfiles)
|
.Include(x => x.RetirementProfiles)
|
||||||
|
.Include(x => x.Document)
|
||||||
.Where(x => x.Year == year)
|
.Where(x => x.Year == year)
|
||||||
.Where(x => x.Type.Trim().ToUpper().Contains(type.Trim().ToUpper()))
|
.Where(x => x.Type.Trim().ToUpper().Contains(type.Trim().ToUpper()))
|
||||||
.FirstOrDefaultAsync();
|
.FirstOrDefaultAsync();
|
||||||
|
|
@ -180,6 +182,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
Total = retire.RetirementProfiles.Count(),
|
Total = retire.RetirementProfiles.Count(),
|
||||||
TypeReport = retire.TypeReport,
|
TypeReport = retire.TypeReport,
|
||||||
Json = false,
|
Json = false,
|
||||||
|
Document = retire.Document == null ? false : true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -208,6 +211,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
|
|
||||||
var round = 1;
|
var round = 1;
|
||||||
var retire = await _context.RetirementPeriods
|
var retire = await _context.RetirementPeriods
|
||||||
|
.Include(x => x.Document)
|
||||||
.Include(x => x.RetirementPeriodHistorys)
|
.Include(x => x.RetirementPeriodHistorys)
|
||||||
.Include(x => x.RetirementProfiles)
|
.Include(x => x.RetirementProfiles)
|
||||||
.ThenInclude(x => x.Profile)
|
.ThenInclude(x => x.Profile)
|
||||||
|
|
@ -259,6 +263,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
if (retire.Document == null)
|
||||||
|
return Error(GlobalMessages.RetirementNotCreated);
|
||||||
if (req.Option == null)
|
if (req.Option == null)
|
||||||
req.Option = "EDIT";
|
req.Option = "EDIT";
|
||||||
var file_name = $"retire_tmp_{DateTime.Now.ToString("yyyyMMddTHHmmss")}";
|
var file_name = $"retire_tmp_{DateTime.Now.ToString("yyyyMMddTHHmmss")}";
|
||||||
|
|
@ -295,6 +301,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
TypeReport = retire.TypeReport,
|
TypeReport = retire.TypeReport,
|
||||||
Year = retire.Year,
|
Year = retire.Year,
|
||||||
Type = retire.Type,
|
Type = retire.Type,
|
||||||
|
Document = retire.Document,
|
||||||
Total = retire.RetirementProfiles.Count(),
|
Total = retire.RetirementProfiles.Count(),
|
||||||
ProfileFile = file_name,
|
ProfileFile = file_name,
|
||||||
CreatedUserId = FullName ?? "",
|
CreatedUserId = FullName ?? "",
|
||||||
|
|
@ -307,6 +314,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
await _context.RetirementPeriodHistorys.AddAsync(history);
|
await _context.RetirementPeriodHistorys.AddAsync(history);
|
||||||
// await _context.SaveChangesAsync();
|
// await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
retire.Document = null;
|
||||||
retire.Round = retire.Round + 1;
|
retire.Round = retire.Round + 1;
|
||||||
retire.TypeReport = req.Option.Trim().ToUpper();
|
retire.TypeReport = req.Option.Trim().ToUpper();
|
||||||
retire.LastUpdateFullName = FullName ?? "System Administrator";
|
retire.LastUpdateFullName = FullName ?? "System Administrator";
|
||||||
|
|
@ -430,11 +438,13 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
{
|
{
|
||||||
var retire = await _context.RetirementPeriods
|
var retire = await _context.RetirementPeriods
|
||||||
.Include(x => x.RetirementProfiles)
|
.Include(x => x.RetirementProfiles)
|
||||||
|
.Include(x => x.Document)
|
||||||
.FirstOrDefaultAsync(x => x.Id == retireId);
|
.FirstOrDefaultAsync(x => x.Id == retireId);
|
||||||
if (retire == null)
|
if (retire == null)
|
||||||
{
|
{
|
||||||
var profileHistorys = await _context.RetirementPeriodHistorys.AsQueryable()
|
var profileHistorys = await _context.RetirementPeriodHistorys.AsQueryable()
|
||||||
.FirstOrDefaultAsync(x => x.Id == retireId);
|
.Include(x => x.Document)
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == retireId);
|
||||||
if (profileHistorys == null)
|
if (profileHistorys == null)
|
||||||
return Error(GlobalMessages.RetirementHistoryNotFound, 404);
|
return Error(GlobalMessages.RetirementHistoryNotFound, 404);
|
||||||
using (var client = new HttpClient())
|
using (var client = new HttpClient())
|
||||||
|
|
@ -442,8 +452,9 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
var url = $"https://s3cluster.frappet.com/bma-ehr-fpt/{profileHistorys.ProfileFile}.json";
|
var url = $"https://s3cluster.frappet.com/bma-ehr-fpt/{profileHistorys.ProfileFile}.json";
|
||||||
var responseTask = client.GetAsync(url);
|
var responseTask = client.GetAsync(url);
|
||||||
var results = responseTask.Result;
|
var results = responseTask.Result;
|
||||||
|
var filehis = profileHistorys.Document == null ? null : await _documentService.ImagesPath(profileHistorys.Document.Id);
|
||||||
// Console.WriteLine(results.Content.ReadAsStringAsync().Result);
|
// Console.WriteLine(results.Content.ReadAsStringAsync().Result);
|
||||||
return Success(new { Json = true, profileHistorys.Id, profileHistorys.CreatedAt, profileHistorys.Year, profileHistorys.Round, profileHistorys.Type, profileHistorys.TypeReport, profile = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ProfileJsonRequest>>(results.Content.ReadAsStringAsync().Result) });
|
return Success(new { Json = true, profileHistorys.Id, profileHistorys.CreatedAt, profileHistorys.Year, profileHistorys.Round, profileHistorys.Type, profileHistorys.TypeReport, profile = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ProfileJsonRequest>>(results.Content.ReadAsStringAsync().Result), File = filehis });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var profile_new = await _context.RetirementProfiles
|
var profile_new = await _context.RetirementProfiles
|
||||||
|
|
@ -470,8 +481,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
posNoEmployee = x.Profile.PosNoEmployee,
|
posNoEmployee = x.Profile.PosNoEmployee,
|
||||||
})
|
})
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
var file = retire.Document == null ? null : await _documentService.ImagesPath(retire.Document.Id);
|
||||||
return Success(new { Json = false, retire.Id, retire.CreatedAt, retire.Year, retire.Round, retire.Type, retire.TypeReport, profile = profile_new });
|
return Success(new { Json = false, retire.Id, retire.CreatedAt, retire.Year, retire.Round, retire.Type, retire.TypeReport, profile = profile_new, File = file });
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -672,5 +683,61 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
|
|
||||||
return Success();
|
return Success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// อัพเอกสารเกษียณอายุราชการ
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="retireId">Id ประกาศ</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpPut("upload/{retireId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> UploadRetirement([FromForm] RetirementFileRequest req, Guid retireId)
|
||||||
|
{
|
||||||
|
var retire = await _context.RetirementPeriods
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == retireId);
|
||||||
|
if (retire == null)
|
||||||
|
return Error(GlobalMessages.DataNotFound, 404);
|
||||||
|
if (Request.Form.Files != null && Request.Form.Files.Count != 0)
|
||||||
|
{
|
||||||
|
var file = Request.Form.Files[0];
|
||||||
|
var fileExtension = Path.GetExtension(file.FileName);
|
||||||
|
|
||||||
|
var doc = await _documentService.UploadFileAsync(file, file.FileName);
|
||||||
|
var _doc = await _context.Documents.AsQueryable()
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == doc.Id);
|
||||||
|
retire.Document = _doc;
|
||||||
|
retire.LastUpdateFullName = FullName ?? "System Administrator";
|
||||||
|
retire.LastUpdateUserId = UserId ?? "";
|
||||||
|
retire.LastUpdatedAt = DateTime.Now;
|
||||||
|
}
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ตรวจสอบการอัพเอกสารเกษียญ false=ยังไม่อัพโหลด true=อัพโหลดเอกสารแล้ว
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="retireId">Id ประกาศ</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpGet("upload/check/{retireId:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> CheckUploadRetirement(Guid retireId)
|
||||||
|
{
|
||||||
|
var retire = await _context.RetirementPeriods
|
||||||
|
.Include(x => x.Document)
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == retireId);
|
||||||
|
if (retire == null)
|
||||||
|
return Error(GlobalMessages.DataNotFound, 404);
|
||||||
|
if (retire.Document == null)
|
||||||
|
return Success(false);
|
||||||
|
return Success(true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
p.SendDate,
|
p.SendDate,
|
||||||
p.ActiveDate,
|
p.ActiveDate,
|
||||||
p.Reason,
|
p.Reason,
|
||||||
|
p.ApproveReason,
|
||||||
|
p.RejectReason,
|
||||||
p.Status,
|
p.Status,
|
||||||
p.IsActive,
|
p.IsActive,
|
||||||
})
|
})
|
||||||
|
|
@ -112,6 +114,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
p.PositionLevelOld,
|
p.PositionLevelOld,
|
||||||
p.PositionNumberOld,
|
p.PositionNumberOld,
|
||||||
p.OrganizationPositionOld,
|
p.OrganizationPositionOld,
|
||||||
|
p.ApproveReason,
|
||||||
|
p.RejectReason,
|
||||||
p.IsActive,
|
p.IsActive,
|
||||||
p.CreatedAt,
|
p.CreatedAt,
|
||||||
})
|
})
|
||||||
|
|
@ -137,29 +141,67 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
.Select(p => new
|
.Select(p => new
|
||||||
{
|
{
|
||||||
p.Id,
|
p.Id,
|
||||||
ProfileId = p.Profile.Id,
|
|
||||||
Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name,
|
Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name,
|
||||||
PrefixId = p.Profile.Prefix == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.Profile.Prefix.Id,
|
PrefixId = p.Profile.Prefix == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.Profile.Prefix.Id,
|
||||||
p.Profile.FirstName,
|
p.Profile.FirstName,
|
||||||
p.Profile.LastName,
|
p.Profile.LastName,
|
||||||
|
ProfileId = p.Profile.Id,
|
||||||
p.Location,
|
p.Location,
|
||||||
p.SendDate,
|
p.SendDate,
|
||||||
p.ActiveDate,
|
p.ActiveDate,
|
||||||
p.Reason,
|
p.Reason,
|
||||||
p.Status,
|
p.Status,
|
||||||
salary = p.AmountOld,
|
salary = p.AmountOld,
|
||||||
|
p.ApproveReason,
|
||||||
|
p.RejectReason,
|
||||||
|
p.IsActive,
|
||||||
|
p.CreatedAt,
|
||||||
p.PositionTypeOld,
|
p.PositionTypeOld,
|
||||||
p.PositionLevelOld,
|
p.PositionLevelOld,
|
||||||
p.PositionNumberOld,
|
p.PositionNumberOld,
|
||||||
p.OrganizationPositionOld,
|
p.OrganizationPositionOld,
|
||||||
p.IsActive,
|
RetirementResignDocs = p.RetirementResignDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
||||||
p.CreatedAt,
|
|
||||||
})
|
})
|
||||||
.FirstOrDefaultAsync();
|
.FirstOrDefaultAsync();
|
||||||
if (data == null)
|
if (data == null)
|
||||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
|
|
||||||
return Success(data);
|
var retirementResignDocs = new List<dynamic>();
|
||||||
|
foreach (var doc in data.RetirementResignDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
|
{
|
||||||
|
FileName = doc.FileName,
|
||||||
|
PathName = await _documentService.ImagesPath(doc.Id)
|
||||||
|
};
|
||||||
|
retirementResignDocs.Add(_doc);
|
||||||
|
}
|
||||||
|
var _data = new
|
||||||
|
{
|
||||||
|
data.Id,
|
||||||
|
data.ProfileId,
|
||||||
|
data.Prefix,
|
||||||
|
data.PrefixId,
|
||||||
|
data.FirstName,
|
||||||
|
data.LastName,
|
||||||
|
data.Location,
|
||||||
|
data.SendDate,
|
||||||
|
data.ActiveDate,
|
||||||
|
data.Reason,
|
||||||
|
data.Status,
|
||||||
|
data.salary,
|
||||||
|
data.PositionTypeOld,
|
||||||
|
data.PositionLevelOld,
|
||||||
|
data.PositionNumberOld,
|
||||||
|
data.OrganizationPositionOld,
|
||||||
|
data.ApproveReason,
|
||||||
|
data.RejectReason,
|
||||||
|
data.IsActive,
|
||||||
|
data.CreatedAt,
|
||||||
|
Docs = retirementResignDocs,
|
||||||
|
};
|
||||||
|
|
||||||
|
return Success(_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -206,8 +248,35 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
};
|
};
|
||||||
await _context.RetirementResigns.AddAsync(retirementResign);
|
await _context.RetirementResigns.AddAsync(retirementResign);
|
||||||
await _context.SaveChangesAsync();
|
await _context.SaveChangesAsync();
|
||||||
|
if (Request.Form.Files != null && Request.Form.Files.Count != 0)
|
||||||
|
{
|
||||||
|
foreach (var file in Request.Form.Files)
|
||||||
|
{
|
||||||
|
var fileExtension = Path.GetExtension(file.FileName);
|
||||||
|
|
||||||
return Success();
|
var doc = await _documentService.UploadFileAsync(file, file.FileName);
|
||||||
|
var _doc = await _context.Documents.AsQueryable()
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == doc.Id);
|
||||||
|
if (_doc != null)
|
||||||
|
{
|
||||||
|
var retirementResignDoc = new RetirementResignDoc
|
||||||
|
{
|
||||||
|
RetirementResign = retirementResign,
|
||||||
|
Document = _doc,
|
||||||
|
CreatedUserId = FullName ?? "",
|
||||||
|
CreatedFullName = UserId ?? "System Administrator",
|
||||||
|
CreatedAt = DateTime.Now,
|
||||||
|
LastUpdateFullName = FullName ?? "System Administrator",
|
||||||
|
LastUpdateUserId = UserId ?? "",
|
||||||
|
LastUpdatedAt = DateTime.Now,
|
||||||
|
};
|
||||||
|
await _context.RetirementResignDocs.AddAsync(retirementResignDoc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
return Success(retirementResign);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -259,7 +328,20 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
.FirstOrDefaultAsync(x => x.Id == id);
|
.FirstOrDefaultAsync(x => x.Id == id);
|
||||||
if (deleted == null)
|
if (deleted == null)
|
||||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
|
var retirementResignDocs = new List<dynamic>();
|
||||||
|
foreach (var doc in deleted.RetirementResignDocs)
|
||||||
|
{
|
||||||
|
if (doc.Document != null)
|
||||||
|
retirementResignDocs.Add(doc.Document.Id);
|
||||||
|
}
|
||||||
|
_context.RetirementResignDocs.RemoveRange(deleted.RetirementResignDocs);
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
_context.RetirementResigns.Remove(deleted);
|
_context.RetirementResigns.Remove(deleted);
|
||||||
|
foreach (var doc in retirementResignDocs)
|
||||||
|
{
|
||||||
|
if (doc != null)
|
||||||
|
await _documentService.DeleteFileAsync(doc);
|
||||||
|
}
|
||||||
await _context.SaveChangesAsync();
|
await _context.SaveChangesAsync();
|
||||||
return Success();
|
return Success();
|
||||||
}
|
}
|
||||||
|
|
@ -273,8 +355,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
[HttpGet("confirm/{id:length(36)}")]
|
[HttpPut("confirm/{id:length(36)}")]
|
||||||
public async Task<ActionResult<ResponseObject>> AdminConfirm(Guid id)
|
public async Task<ActionResult<ResponseObject>> AdminConfirm([FromBody] RetirementReasonRequest req, Guid id)
|
||||||
{
|
{
|
||||||
var updated = await _context.RetirementResigns
|
var updated = await _context.RetirementResigns
|
||||||
.FirstOrDefaultAsync(x => x.Id == id);
|
.FirstOrDefaultAsync(x => x.Id == id);
|
||||||
|
|
@ -282,6 +364,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
|
|
||||||
updated.Status = "APPROVE";
|
updated.Status = "APPROVE";
|
||||||
|
updated.ApproveReason = req.Reason;
|
||||||
updated.LastUpdateFullName = FullName ?? "System Administrator";
|
updated.LastUpdateFullName = FullName ?? "System Administrator";
|
||||||
updated.LastUpdateUserId = UserId ?? "";
|
updated.LastUpdateUserId = UserId ?? "";
|
||||||
updated.LastUpdatedAt = DateTime.Now;
|
updated.LastUpdatedAt = DateTime.Now;
|
||||||
|
|
@ -299,8 +382,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
[HttpGet("reject/{id:length(36)}")]
|
[HttpPut("reject/{id:length(36)}")]
|
||||||
public async Task<ActionResult<ResponseObject>> AdminReject(Guid id)
|
public async Task<ActionResult<ResponseObject>> AdminReject([FromBody] RetirementReasonRequest req, Guid id)
|
||||||
{
|
{
|
||||||
var updated = await _context.RetirementResigns
|
var updated = await _context.RetirementResigns
|
||||||
.FirstOrDefaultAsync(x => x.Id == id);
|
.FirstOrDefaultAsync(x => x.Id == id);
|
||||||
|
|
@ -308,6 +391,7 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
|
|
||||||
updated.Status = "REJECT";
|
updated.Status = "REJECT";
|
||||||
|
updated.RejectReason = req.Reason;
|
||||||
updated.LastUpdateFullName = FullName ?? "System Administrator";
|
updated.LastUpdateFullName = FullName ?? "System Administrator";
|
||||||
updated.LastUpdateUserId = UserId ?? "";
|
updated.LastUpdateUserId = UserId ?? "";
|
||||||
updated.LastUpdatedAt = DateTime.Now;
|
updated.LastUpdatedAt = DateTime.Now;
|
||||||
|
|
@ -343,5 +427,207 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
|
|
||||||
return Success();
|
return Success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// list แบบสอบถามหลังลาออก
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpGet("questionnaire")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> GetListQuestion()
|
||||||
|
{
|
||||||
|
var data = await _context.RetirementQuestions.AsQueryable()
|
||||||
|
.OrderByDescending(x => x.CreatedAt)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
Id = p.Id,
|
||||||
|
ReasonWork = p.ReasonWork == null ? p.ReasonWork : Newtonsoft.Json.JsonConvert.DeserializeObject(p.ReasonWork),
|
||||||
|
ReasonWorkOther = p.ReasonWorkOther,
|
||||||
|
TimeThink = p.TimeThink == null ? p.TimeThink : Newtonsoft.Json.JsonConvert.DeserializeObject(p.TimeThink),
|
||||||
|
ExitFactor = p.ExitFactor == null ? p.ExitFactor : Newtonsoft.Json.JsonConvert.DeserializeObject(p.ExitFactor),
|
||||||
|
ExitFactorOther = p.ExitFactorOther,
|
||||||
|
Adjust = p.Adjust == null ? p.Adjust : Newtonsoft.Json.JsonConvert.DeserializeObject(p.Adjust),
|
||||||
|
AdjustOther = p.AdjustOther,
|
||||||
|
RealReason = p.RealReason,
|
||||||
|
NotExitFactor = p.NotExitFactor,
|
||||||
|
Havejob = p.Havejob,
|
||||||
|
HavejobReason = p.HavejobReason,
|
||||||
|
SuggestFriends = p.SuggestFriends,
|
||||||
|
SuggestFriendsReason = p.SuggestFriendsReason,
|
||||||
|
FutureWork = p.FutureWork,
|
||||||
|
FutureWorkReason = p.FutureWorkReason,
|
||||||
|
Suggestion = p.Suggestion,
|
||||||
|
LastUpdatedAt = p.LastUpdatedAt,
|
||||||
|
CreatedAt = p.CreatedAt,
|
||||||
|
})
|
||||||
|
.ToListAsync();
|
||||||
|
return Success(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// get รายละเอียดแบบสอบถามหลังลาออก
|
||||||
|
/// </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>
|
||||||
|
[HttpGet("questionnaire/{id:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> GetByIdQuestion(Guid id)
|
||||||
|
{
|
||||||
|
var data = await _context.RetirementQuestions.AsQueryable()
|
||||||
|
.Where(x => x.Id == id)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
Id = p.Id,
|
||||||
|
ReasonWork = p.ReasonWork == null ? p.ReasonWork : Newtonsoft.Json.JsonConvert.DeserializeObject(p.ReasonWork),
|
||||||
|
ReasonWorkOther = p.ReasonWorkOther,
|
||||||
|
TimeThink = p.TimeThink == null ? p.TimeThink : Newtonsoft.Json.JsonConvert.DeserializeObject(p.TimeThink),
|
||||||
|
ExitFactor = p.ExitFactor == null ? p.ExitFactor : Newtonsoft.Json.JsonConvert.DeserializeObject(p.ExitFactor),
|
||||||
|
ExitFactorOther = p.ExitFactorOther,
|
||||||
|
Adjust = p.Adjust == null ? p.Adjust : Newtonsoft.Json.JsonConvert.DeserializeObject(p.Adjust),
|
||||||
|
AdjustOther = p.AdjustOther,
|
||||||
|
RealReason = p.RealReason,
|
||||||
|
NotExitFactor = p.NotExitFactor,
|
||||||
|
Havejob = p.Havejob,
|
||||||
|
HavejobReason = p.HavejobReason,
|
||||||
|
SuggestFriends = p.SuggestFriends,
|
||||||
|
SuggestFriendsReason = p.SuggestFriendsReason,
|
||||||
|
FutureWork = p.FutureWork,
|
||||||
|
FutureWorkReason = p.FutureWorkReason,
|
||||||
|
Suggestion = p.Suggestion,
|
||||||
|
LastUpdatedAt = p.LastUpdatedAt,
|
||||||
|
CreatedAt = p.CreatedAt,
|
||||||
|
})
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
if (data == null)
|
||||||
|
return Error(GlobalMessages.RetirementQuestionNotFound, 404);
|
||||||
|
|
||||||
|
return Success(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// สร้างแบบสอบถามหลังลาออก
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <response code="200"></response>
|
||||||
|
/// <response code="400">ค่าตัวแปรที่ส่งมาไม่ถูกต้อง</response>
|
||||||
|
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
|
||||||
|
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
|
||||||
|
[HttpPost("questionnaire")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> PostQuestion([FromForm] RetirementQuestionRequest req)
|
||||||
|
{
|
||||||
|
var retirementResign = await _context.RetirementResigns.AsQueryable()
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == req.RetirementResignId);
|
||||||
|
if (retirementResign == null)
|
||||||
|
return Error(GlobalMessages.RetirementResignNotFound);
|
||||||
|
|
||||||
|
var period = new RetirementQuestion
|
||||||
|
{
|
||||||
|
RetirementResign = retirementResign,
|
||||||
|
ReasonWork = Newtonsoft.Json.JsonConvert.SerializeObject(req.ReasonWork),
|
||||||
|
ReasonWorkOther = req.ReasonWorkOther,
|
||||||
|
TimeThink = Newtonsoft.Json.JsonConvert.SerializeObject(req.TimeThink),
|
||||||
|
ExitFactor = Newtonsoft.Json.JsonConvert.SerializeObject(req.ExitFactor),
|
||||||
|
ExitFactorOther = req.ExitFactorOther,
|
||||||
|
Adjust = Newtonsoft.Json.JsonConvert.SerializeObject(req.Adjust),
|
||||||
|
AdjustOther = req.AdjustOther,
|
||||||
|
RealReason = req.RealReason,
|
||||||
|
NotExitFactor = req.NotExitFactor,
|
||||||
|
Havejob = req.Havejob,
|
||||||
|
HavejobReason = req.HavejobReason,
|
||||||
|
SuggestFriends = req.SuggestFriends,
|
||||||
|
SuggestFriendsReason = req.SuggestFriendsReason,
|
||||||
|
FutureWork = req.FutureWork,
|
||||||
|
FutureWorkReason = req.FutureWorkReason,
|
||||||
|
Suggestion = req.Suggestion,
|
||||||
|
CreatedUserId = FullName ?? "",
|
||||||
|
CreatedFullName = UserId ?? "System Administrator",
|
||||||
|
CreatedAt = DateTime.Now,
|
||||||
|
LastUpdateFullName = FullName ?? "System Administrator",
|
||||||
|
LastUpdateUserId = UserId ?? "",
|
||||||
|
LastUpdatedAt = DateTime.Now,
|
||||||
|
};
|
||||||
|
await _context.RetirementQuestions.AddAsync(period);
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <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>
|
||||||
|
[HttpDelete("questionnaire/{id:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> DeleteQuestion(Guid id)
|
||||||
|
{
|
||||||
|
var deleted = await _context.RetirementQuestions.AsQueryable()
|
||||||
|
.Where(x => x.Id == id)
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
|
||||||
|
if (deleted == null)
|
||||||
|
return Error(GlobalMessages.RetirementQuestionNotFound);
|
||||||
|
_context.RetirementQuestions.Remove(deleted);
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <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("questionnaire/{id:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> PutQuestion([FromForm] RetirementQuestionRequest req, Guid id)
|
||||||
|
{
|
||||||
|
var uppdated = await _context.RetirementQuestions.AsQueryable()
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == id);
|
||||||
|
if (uppdated == null)
|
||||||
|
return Error(GlobalMessages.RetirementQuestionNotFound);
|
||||||
|
|
||||||
|
var retirementResign = await _context.RetirementResigns.AsQueryable()
|
||||||
|
.FirstOrDefaultAsync(x => x.Id == req.RetirementResignId);
|
||||||
|
if (retirementResign == null)
|
||||||
|
return Error(GlobalMessages.InsigniaNotFound);
|
||||||
|
|
||||||
|
// uppdated.RetirementResign = retirementResign;
|
||||||
|
uppdated.ReasonWork = Newtonsoft.Json.JsonConvert.SerializeObject(req.ReasonWork);
|
||||||
|
uppdated.ReasonWorkOther = req.ReasonWorkOther;
|
||||||
|
uppdated.TimeThink = Newtonsoft.Json.JsonConvert.SerializeObject(req.TimeThink);
|
||||||
|
uppdated.ExitFactor = Newtonsoft.Json.JsonConvert.SerializeObject(req.ExitFactor);
|
||||||
|
uppdated.ExitFactorOther = req.ExitFactorOther;
|
||||||
|
uppdated.Adjust = Newtonsoft.Json.JsonConvert.SerializeObject(req.Adjust);
|
||||||
|
uppdated.AdjustOther = req.AdjustOther;
|
||||||
|
uppdated.RealReason = req.RealReason;
|
||||||
|
uppdated.NotExitFactor = req.NotExitFactor;
|
||||||
|
uppdated.Havejob = req.Havejob;
|
||||||
|
uppdated.HavejobReason = req.HavejobReason;
|
||||||
|
uppdated.SuggestFriends = req.SuggestFriends;
|
||||||
|
uppdated.SuggestFriendsReason = req.SuggestFriendsReason;
|
||||||
|
uppdated.FutureWork = req.FutureWork;
|
||||||
|
uppdated.FutureWorkReason = req.FutureWorkReason;
|
||||||
|
uppdated.Suggestion = req.Suggestion;
|
||||||
|
uppdated.LastUpdateFullName = FullName ?? "System Administrator";
|
||||||
|
uppdated.LastUpdateUserId = UserId ?? "";
|
||||||
|
uppdated.LastUpdatedAt = DateTime.Now;
|
||||||
|
|
||||||
|
await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
return Success();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
10
BMA.EHR.Retirement.Service/Requests/RetirementFileRequest.cs
Normal file
10
BMA.EHR.Retirement.Service/Requests/RetirementFileRequest.cs
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Retirement.Service.Requests
|
||||||
|
{
|
||||||
|
public class RetirementFileRequest
|
||||||
|
{
|
||||||
|
public List<FormFile>? File { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Retirement.Service.Requests
|
||||||
|
{
|
||||||
|
public class RetirementQuestionRequest
|
||||||
|
{
|
||||||
|
public Guid RetirementResignId { get; set; }
|
||||||
|
public List<string>? ReasonWork { get; set; }
|
||||||
|
public string? ReasonWorkOther { get; set; }
|
||||||
|
public List<string>? TimeThink { get; set; }
|
||||||
|
public List<string>? ExitFactor { get; set; }
|
||||||
|
public string? ExitFactorOther { get; set; }
|
||||||
|
public List<string>? Adjust { get; set; }
|
||||||
|
public string? AdjustOther { get; set; }
|
||||||
|
public string? RealReason { get; set; }
|
||||||
|
public string? NotExitFactor { get; set; }
|
||||||
|
public bool? Havejob { get; set; }
|
||||||
|
public string? HavejobReason { get; set; }
|
||||||
|
public bool? SuggestFriends { get; set; }
|
||||||
|
public string? SuggestFriendsReason { get; set; }
|
||||||
|
public bool? FutureWork { get; set; }
|
||||||
|
public string? FutureWorkReason { get; set; }
|
||||||
|
public string? Suggestion { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
using BMA.EHR.Domain.Models.MetaData;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace BMA.EHR.Retirement.Service.Requests
|
||||||
|
{
|
||||||
|
public class RetirementReasonRequest
|
||||||
|
{
|
||||||
|
public string Reason { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -14,5 +14,6 @@ namespace BMA.EHR.Retirement.Service.Requests
|
||||||
public string? PositionLevelOld { get; set; }
|
public string? PositionLevelOld { get; set; }
|
||||||
public string? PositionNumberOld { get; set; }
|
public string? PositionNumberOld { get; set; }
|
||||||
public double? AmountOld { get; set; }
|
public double? AmountOld { get; set; }
|
||||||
|
public List<FormFile>? File { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue