แก้โครงสร้างพ้นราชการ

This commit is contained in:
Kittapath 2024-05-03 17:39:10 +07:00
parent 18d75f4b04
commit db712d586a
41 changed files with 125142 additions and 411 deletions

View file

@ -67,49 +67,72 @@ namespace BMA.EHR.Placement.Service.Controllers
[HttpGet()]
public async Task<ActionResult<ResponseObject>> GetListByAdmin()
{
var placementAppointments = await _context.PlacementAppointments.AsQueryable()
.Where(x => x.type == "OFFICER")
.OrderByDescending(x => x.CreatedAt)
.Select(p => new
{
p.Id,
p.profileId,
p.prefix,
p.firstName,
p.lastName,
p.citizenId,
p.DateOfBirth,
p.root,
p.rootId,
p.rootShortName,
p.child1,
p.child1Id,
p.child1ShortName,
p.child2,
p.child2Id,
p.child2ShortName,
p.child3,
p.child3Id,
p.child3ShortName,
p.child4,
p.child4Id,
p.child4ShortName,
p.orgRevisionId,
p.positionId,
p.posMasterNo,
p.positionName,
p.posLevelName,
p.position,
p.positionField,
p.posTypeId,
p.posTypeName,
p.posLevelId,
p.posLevelName,
node = p.root == null ? (int?)null : (p.child1 == null ? 0 : (p.child2 == null ? 1 : (p.child3 == null ? 2 : (p.child4 == null ? 3 : 4)))),
nodeName = p.root == null ? null : (p.child1 == null ? p.root : (p.child2 == null ? p.child1 : (p.child3 == null ? p.child2 : (p.child4 == null ? p.child3 : p.child4)))),
nodeId = p.rootId == null ? null : (p.child1Id == null ? p.rootId : (p.child2Id == null ? p.child1Id : (p.child3Id == null ? p.child2Id : (p.child4Id == null ? p.child3Id : p.child4Id)))),
nodeShortName = p.rootShortName == null ? null : (p.child1ShortName == null ? p.rootShortName : (p.child2ShortName == null ? p.child1ShortName : (p.child3ShortName == null ? p.child2ShortName : (p.child4ShortName == null ? p.child3ShortName : p.child4ShortName)))),
p.rootOld,
p.rootOldId,
p.rootShortNameOld,
p.child1Old,
p.child1OldId,
p.child1ShortNameOld,
p.child2Old,
p.child2OldId,
p.child2ShortNameOld,
p.child3Old,
p.child3OldId,
p.child3ShortNameOld,
p.child4Old,
p.child4OldId,
p.child4ShortNameOld,
p.posMasterNoOld,
p.positionOld,
p.posLevelNameOld,
p.posTypeOldId,
p.posTypeNameOld,
p.posLevelOldId,
p.posLevelNameOld,
p.Status,
p.Amount,
p.RecruitDate,
p.ReportingDate,
p.IsActive,
p.PositionDate,
@ -120,8 +143,12 @@ namespace BMA.EHR.Placement.Service.Controllers
p.PositionLevelOld,
p.PositionNumberOld,
p.OrganizationPositionOld,
p.AmountOld,
p.OrganizationOld,
p.posmasterId,
p.PositionOld,
p.CreatedAt,
CommandType = p.CommandType == null ? null : p.CommandType.Name,
p.typeCommand,
})
.ToListAsync();
// if (PlacementAdmin == true)
@ -149,38 +176,55 @@ namespace BMA.EHR.Placement.Service.Controllers
{
p.Id,
p.profileId,
p.DateOfBirth,
p.prefix,
p.firstName,
p.lastName,
p.root,
p.rootId,
p.rootShortName,
p.child1,
p.child1Id,
p.child1ShortName,
p.child2,
p.child2Id,
p.child2ShortName,
p.child3,
p.child3Id,
p.child3ShortName,
p.child4,
p.child4Id,
p.child4ShortName,
p.orgRevisionId,
p.positionId,
p.posMasterNo,
p.positionName,
p.posLevelName,
p.position,
p.positionField,
p.posTypeId,
p.posTypeName,
p.posLevelId,
p.posLevelName,
p.rootOld,
p.rootOldId,
p.rootShortNameOld,
p.child1Old,
p.child1OldId,
p.child1ShortNameOld,
p.child2Old,
p.child2OldId,
p.child2ShortNameOld,
p.child3Old,
p.child3OldId,
p.child3ShortNameOld,
p.child4Old,
p.child4OldId,
p.child4ShortNameOld,
p.posMasterNoOld,
p.positionOld,
p.posLevelNameOld,
p.posTypeOldId,
p.posTypeNameOld,
p.posLevelOldId,
p.posLevelNameOld,
p.Status,
p.Amount,
@ -195,8 +239,11 @@ namespace BMA.EHR.Placement.Service.Controllers
p.PositionNumberOld,
p.OrganizationPositionOld,
p.PositionDate,
p.AmountOld,
p.OrganizationOld,
p.PositionOld,
// PlacementAppointmentDocs = p.PlacementAppointmentDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
CommandType = p.CommandType == null ? null : p.CommandType.Name,
p.typeCommand,
})
.FirstOrDefaultAsync();
if (data == null)
@ -212,61 +259,88 @@ namespace BMA.EHR.Placement.Service.Controllers
// };
// placementAppointmentDocs.Add(_doc);
// }
// var _data = new
// {
// data.Id,
// data.profileId,
// data.prefix,
// data.firstName,
// data.lastName,
// data.root,
// data.rootShortName,
// data.child1,
// data.child1ShortName,
// data.child2,
// data.child2ShortName,
// data.child3,
// data.child3ShortName,
// data.child4,
// data.child4ShortName,
// data.posMasterNo,
// data.positionName,
// data.posLevelName,
// data.posTypeName,
var _data = new
{
data.Id,
data.profileId,
data.prefix,
data.firstName,
data.lastName,
data.DateOfBirth,
data.root,
data.rootShortName,
data.child1,
data.child1Id,
data.child1ShortName,
data.child2,
data.child2Id,
data.child2ShortName,
data.child3,
data.child3Id,
data.child3ShortName,
data.child4,
data.child4Id,
data.child4ShortName,
node = data.root == null ? (int?)null : (data.child1 == null ? 0 : (data.child2 == null ? 1 : (data.child3 == null ? 2 : (data.child4 == null ? 3 : 4)))),
nodeName = data.root == null ? null : (data.child1 == null ? data.root : (data.child2 == null ? data.child1 : (data.child3 == null ? data.child2 : (data.child4 == null ? data.child3 : data.child4)))),
nodeId = data.rootId == null ? null : (data.child1Id == null ? data.rootId : (data.child2Id == null ? data.child1Id : (data.child3Id == null ? data.child2Id : (data.child4Id == null ? data.child3Id : data.child4Id)))),
nodeShortName = data.rootShortName == null ? null : (data.child1ShortName == null ? data.rootShortName : (data.child2ShortName == null ? data.child1ShortName : (data.child3ShortName == null ? data.child2ShortName : (data.child4ShortName == null ? data.child3ShortName : data.child4ShortName)))),
data.orgRevisionId,
data.positionId,
data.posMasterNo,
data.position,
data.positionField,
data.posTypeId,
data.posTypeName,
data.posLevelId,
data.posLevelName,
// data.rootOld,
// data.rootShortNameOld,
// data.child1Old,
// data.child1ShortNameOld,
// data.child2Old,
// data.child2ShortNameOld,
// data.child3Old,
// data.child3ShortNameOld,
// data.child4Old,
// data.child4ShortNameOld,
// data.posMasterNoOld,
// data.positionOld,
// data.posLevelNameOld,
// data.posTypeNameOld,
data.rootOld,
data.rootOldId,
data.rootShortNameOld,
data.child1Old,
data.child1OldId,
data.child1ShortNameOld,
data.child2Old,
data.child2OldId,
data.child2ShortNameOld,
data.child3Old,
data.child3OldId,
data.child3ShortNameOld,
data.child4Old,
data.child4OldId,
data.child4ShortNameOld,
nodeOld = data.rootOld == null ? (int?)null : (data.child1Old == null ? 0 : (data.child2Old == null ? 1 : (data.child3Old == null ? 2 : (data.child4Old == null ? 3 : 4)))),
nodeNameOld = data.rootOld == null ? null : (data.child1Old == null ? data.root : (data.child2Old == null ? data.child1Old : (data.child3Old == null ? data.child2Old : (data.child4Old == null ? data.child3Old : data.child4Old)))),
nodeOldId = data.rootOldId == null ? null : (data.child1OldId == null ? data.rootOldId : (data.child2OldId == null ? data.child1OldId : (data.child3OldId == null ? data.child2OldId : (data.child4OldId == null ? data.child3OldId : data.child4OldId)))),
nodeShortNameOld = data.rootShortNameOld == null ? null : (data.child1ShortNameOld == null ? data.rootShortNameOld : (data.child2ShortNameOld == null ? data.child1ShortNameOld : (data.child3ShortNameOld == null ? data.child2ShortNameOld : (data.child4ShortNameOld == null ? data.child3ShortNameOld : data.child4ShortNameOld)))),
data.posMasterNoOld,
data.posTypeOldId,
data.posTypeNameOld,
data.posLevelOldId,
data.posLevelNameOld,
// data.Status,
// data.Amount,
// data.RecruitDate,
data.Status,
data.Amount,
data.RecruitDate,
// data.CreatedAt,
// data.Reason,
// data.EducationOld,
// data.salary,
// data.PositionTypeOld,
// data.PositionLevelOld,
// data.PositionNumberOld,
// data.OrganizationPositionOld,
// data.PositionDate,
// Docs = placementAppointmentDocs,
// data.CommandType,
// };
data.CreatedAt,
data.Reason,
data.EducationOld,
data.salary,
data.PositionTypeOld,
data.PositionLevelOld,
data.PositionNumberOld,
data.OrganizationPositionOld,
data.PositionDate,
data.AmountOld,
data.OrganizationOld,
data.PositionOld,
// Docs = placementAppointmentDocs,
data.typeCommand,
};
return Success(data);
return Success(_data);
}
/// <summary>
@ -329,6 +403,7 @@ namespace BMA.EHR.Placement.Service.Controllers
placementAppointment.firstName = org.result.firstName;
placementAppointment.lastName = org.result.lastName;
placementAppointment.citizenId = org.result.citizenId;
placementAppointment.DateOfBirth = org.result.birthDate;
placementAppointment.rootOld = org.result.root;
placementAppointment.rootOldId = org.result.rootId;
placementAppointment.rootShortNameOld = org.result.rootShortName;
@ -345,11 +420,24 @@ namespace BMA.EHR.Placement.Service.Controllers
placementAppointment.child4OldId = org.result.child4Id;
placementAppointment.child4ShortNameOld = org.result.child4ShortName;
placementAppointment.posMasterNoOld = org.result.posMasterNo;
placementAppointment.positionOld = org.result.position;
placementAppointment.posTypeOldId = org.result.posTypeId;
placementAppointment.posTypeNameOld = org.result.posTypeName;
placementAppointment.posLevelOldId = org.result.posLevelId;
placementAppointment.posLevelNameOld = org.result.posLevelName;
// placementAppointment.EducationOld = profile.Educations.Count() == 0 ? null : $"{profile.Educations.OrderByDescending(x => x.FinishDate).FirstOrDefault().Degree}-{profile.Educations.OrderByDescending(x => x.FinishDate).FirstOrDefault().Field}";
// placementAppointment.AmountOld = profile.Salaries.Count() == 0 ? null : profile.Salaries.OrderByDescending(x => x.Order).FirstOrDefault().Amount;
placementAppointment.PositionOld = org.result.position;
placementAppointment.PositionLevelOld = org.result.posLevelName;
placementAppointment.PositionTypeOld = org.result.posTypeName;
placementAppointment.PositionNumberOld = org.result.nodeShortName + org.result.posMasterNo;
placementAppointment.OrganizationOld = (org.result.child4 == null ? "" : org.result.child4 + "/") +
(org.result.child3 == null ? "" : org.result.child3 + "/") +
(org.result.child2 == null ? "" : org.result.child2 + "/") +
(org.result.child1 == null ? "" : org.result.child1 + "/") +
(org.result.root == null ? "" : org.result.root + "/");
placementAppointment.OrganizationPositionOld = org.result.position + "-" + placementAppointment.OrganizationOld;
}
await _context.PlacementAppointments.AddAsync(placementAppointment);
await _context.SaveChangesAsync();
@ -436,20 +524,21 @@ namespace BMA.EHR.Placement.Service.Controllers
uppdated.child4ShortName = req.node <= 3 ? null : org.result.child4ShortName;
}
uppdated.typeCommand = req.typeCommand == null ? null : req.typeCommand.Trim().ToUpper();
uppdated.posmasterId = req.posmasterId;
uppdated.node = req.node;
uppdated.nodeId = req.nodeId;
uppdated.orgRevisionId = req.orgRevisionId;
uppdated.positionId = req.positionId;
uppdated.posMasterNo = req.posMasterNo;
uppdated.positionName = req.positionName;
uppdated.position = req.position;
uppdated.positionField = req.positionField;
uppdated.posTypeId = req.posTypeId;
uppdated.posTypeName = req.posTypeName;
uppdated.posLevelId = req.posLevelId;
uppdated.posLevelName = req.posLevelName;
uppdated.Amount = req.Amount;
uppdated.RecruitDate = req.RecruitDate;
uppdated.ReportingDate = req.reportingDate;
uppdated.Status = "PENDING";
uppdated.LastUpdateFullName = FullName ?? "System Administrator";
uppdated.LastUpdateUserId = UserId ?? "";
@ -559,7 +648,7 @@ namespace BMA.EHR.Placement.Service.Controllers
if (uppdated == null)
continue;
uppdated.CommandType = await _context.CommandTypes.FindAsync(commandTypeId);
// uppdated.CommandType = await _context.CommandTypes.FindAsync(commandTypeId);
uppdated.Status = "REPORT";
uppdated.LastUpdateFullName = FullName ?? "System Administrator";
uppdated.LastUpdateUserId = UserId ?? "";