remove workflow retire
This commit is contained in:
parent
61407c342b
commit
afb2cfa189
4 changed files with 1070 additions and 425 deletions
|
|
@ -625,7 +625,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = _firstCommander!.ProfileId,
|
ReceiverUserId = _firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.RetirementResignEmployee.Id}",
|
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(_noti1);
|
_dbContext.Set<Notification>().Add(_noti1);
|
||||||
}
|
}
|
||||||
|
|
@ -643,7 +643,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = firstCommander!.ProfileId,
|
ReceiverUserId = firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.RetirementResignEmployee.Id}",
|
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti1);
|
_dbContext.Set<Notification>().Add(noti1);
|
||||||
await _dbContext.SaveChangesAsync();
|
await _dbContext.SaveChangesAsync();
|
||||||
|
|
@ -731,7 +731,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = nextApprover!.ProfileId,
|
ReceiverUserId = nextApprover!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.RetirementResignEmployee.Id}",
|
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti);
|
_dbContext.Set<Notification>().Add(noti);
|
||||||
await _dbContext.SaveChangesAsync();
|
await _dbContext.SaveChangesAsync();
|
||||||
|
|
@ -758,7 +758,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = firstCommander!.ProfileId,
|
ReceiverUserId = firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.RetirementResignEmployee.Id}",
|
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti1);
|
_dbContext.Set<Notification>().Add(noti1);
|
||||||
await _dbContext.SaveChangesAsync();
|
await _dbContext.SaveChangesAsync();
|
||||||
|
|
@ -820,7 +820,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = nextApprover!.ProfileId,
|
ReceiverUserId = nextApprover!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.RetirementResignEmployee.Id}",
|
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti);
|
_dbContext.Set<Notification>().Add(noti);
|
||||||
|
|
||||||
|
|
@ -848,7 +848,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = firstCommander!.ProfileId,
|
ReceiverUserId = firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.RetirementResignEmployee.Id}",
|
Payload = $"{URL}/retirement/resign-employee-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti1);
|
_dbContext.Set<Notification>().Add(noti1);
|
||||||
await _dbContext.SaveChangesAsync();
|
await _dbContext.SaveChangesAsync();
|
||||||
|
|
|
||||||
|
|
@ -550,7 +550,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = _firstCommander!.ProfileId,
|
ReceiverUserId = _firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.RetirementResign.Id}",
|
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(_noti1);
|
_dbContext.Set<Notification>().Add(_noti1);
|
||||||
}
|
}
|
||||||
|
|
@ -566,7 +566,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = firstCommander!.ProfileId,
|
ReceiverUserId = firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.RetirementResign.Id}",
|
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti1);
|
_dbContext.Set<Notification>().Add(noti1);
|
||||||
await _dbContext.SaveChangesAsync();
|
await _dbContext.SaveChangesAsync();
|
||||||
|
|
@ -626,7 +626,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = nextApprover!.ProfileId,
|
ReceiverUserId = nextApprover!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.RetirementResign.Id}",
|
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti);
|
_dbContext.Set<Notification>().Add(noti);
|
||||||
await _dbContext.SaveChangesAsync();
|
await _dbContext.SaveChangesAsync();
|
||||||
|
|
@ -650,7 +650,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = firstCommander!.ProfileId,
|
ReceiverUserId = firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.RetirementResign.Id}",
|
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti1);
|
_dbContext.Set<Notification>().Add(noti1);
|
||||||
}
|
}
|
||||||
|
|
@ -713,7 +713,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = nextApprover!.ProfileId,
|
ReceiverUserId = nextApprover!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.RetirementResign.Id}",
|
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti);
|
_dbContext.Set<Notification>().Add(noti);
|
||||||
|
|
||||||
|
|
@ -742,7 +742,7 @@ namespace BMA.EHR.Application.Repositories
|
||||||
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
Body = $"การขอยกเลิกลาออกของคุณ {rawData.firstName} {rawData.lastName} รอรับการอนุมัติจากคุณ",
|
||||||
ReceiverUserId = firstCommander!.ProfileId,
|
ReceiverUserId = firstCommander!.ProfileId,
|
||||||
Type = "",
|
Type = "",
|
||||||
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.RetirementResign.Id}",
|
Payload = $"{URL}/retirement/resign-detail-reject/{rawData.Id}",
|
||||||
};
|
};
|
||||||
_dbContext.Set<Notification>().Add(noti1);
|
_dbContext.Set<Notification>().Add(noti1);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -349,179 +349,165 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
// if (dataMain.IsCancel != true)
|
// if (dataMain.IsCancel != true)
|
||||||
// {
|
// {
|
||||||
var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), "SYS_RESIGN");
|
var data = await _context.RetirementResigns.AsQueryable()
|
||||||
var createdUserId = await _context.RetirementResigns.AsQueryable()
|
.Where(x => x.Id == id)
|
||||||
.Where(x => x.Id == id)
|
.Select(p => new
|
||||||
.Where(x => x.CreatedUserId == UserId)
|
{
|
||||||
.FirstOrDefaultAsync();
|
p.Id,
|
||||||
if (getWorkflow == false && createdUserId == null)
|
p.prefix,
|
||||||
{
|
p.firstName,
|
||||||
var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_RESIGN");
|
p.lastName,
|
||||||
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
|
p.profileId,
|
||||||
if (jsonData["status"]?.ToString() != "200")
|
p.Location,
|
||||||
{
|
p.SendDate,
|
||||||
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
|
p.ActiveDate,
|
||||||
}
|
p.Reason,
|
||||||
}
|
p.ReasonResign,
|
||||||
var data = await _context.RetirementResigns.AsQueryable()
|
p.Remark,
|
||||||
.Where(x => x.Id == id)
|
p.Status,
|
||||||
.Select(p => new
|
salary = p.AmountOld,
|
||||||
{
|
p.ApproveReason,
|
||||||
p.Id,
|
p.RejectReason,
|
||||||
p.prefix,
|
p.IsActive,
|
||||||
p.firstName,
|
p.CreatedAt,
|
||||||
p.lastName,
|
p.PositionTypeOld,
|
||||||
p.profileId,
|
p.PositionLevelOld,
|
||||||
p.Location,
|
p.PositionNumberOld,
|
||||||
p.SendDate,
|
p.OrganizationPositionOld,
|
||||||
p.ActiveDate,
|
p.OligarchReject,
|
||||||
p.Reason,
|
p.OligarchApproveReason,
|
||||||
p.ReasonResign,
|
p.OligarchRejectReason,
|
||||||
p.Remark,
|
p.OligarchRejectDate,
|
||||||
p.Status,
|
p.CommanderReject,
|
||||||
salary = p.AmountOld,
|
p.CommanderApproveReason,
|
||||||
p.ApproveReason,
|
p.CommanderRejectReason,
|
||||||
p.RejectReason,
|
p.CommanderRejectDate,
|
||||||
p.IsActive,
|
p.OfficerReject,
|
||||||
p.CreatedAt,
|
p.OfficerApproveReason,
|
||||||
p.PositionTypeOld,
|
p.OfficerRejectReason,
|
||||||
p.PositionLevelOld,
|
p.OfficerRejectDate,
|
||||||
p.PositionNumberOld,
|
p.RemarkHorizontal,
|
||||||
p.OrganizationPositionOld,
|
p.rootOld,
|
||||||
p.OligarchReject,
|
p.rootOldId,
|
||||||
p.OligarchApproveReason,
|
p.rootShortNameOld,
|
||||||
p.OligarchRejectReason,
|
p.child1Old,
|
||||||
p.OligarchRejectDate,
|
p.child1OldId,
|
||||||
p.CommanderReject,
|
p.child1ShortNameOld,
|
||||||
p.CommanderApproveReason,
|
p.child2Old,
|
||||||
p.CommanderRejectReason,
|
p.child2OldId,
|
||||||
p.CommanderRejectDate,
|
p.child2ShortNameOld,
|
||||||
p.OfficerReject,
|
p.child3Old,
|
||||||
p.OfficerApproveReason,
|
p.child3OldId,
|
||||||
p.OfficerRejectReason,
|
p.child3ShortNameOld,
|
||||||
p.OfficerRejectDate,
|
p.child4Old,
|
||||||
p.RemarkHorizontal,
|
p.child4OldId,
|
||||||
p.rootOld,
|
p.child4ShortNameOld,
|
||||||
p.rootOldId,
|
p.PositionOld,
|
||||||
p.rootShortNameOld,
|
p.posMasterNoOld,
|
||||||
p.child1Old,
|
p.posTypeOldId,
|
||||||
p.child1OldId,
|
p.posTypeNameOld,
|
||||||
p.child1ShortNameOld,
|
p.posLevelOldId,
|
||||||
p.child2Old,
|
p.posLevelNameOld,
|
||||||
p.child2OldId,
|
p.IsNoDebt,
|
||||||
p.child2ShortNameOld,
|
p.IsNoBurden,
|
||||||
p.child3Old,
|
p.IsDiscipline,
|
||||||
p.child3OldId,
|
p.CancelReason,
|
||||||
p.child3ShortNameOld,
|
p.ApproveStep,
|
||||||
p.child4Old,
|
p.Group,
|
||||||
p.child4OldId,
|
Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
p.child4ShortNameOld,
|
Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
p.PositionOld,
|
KeycloakUserId = p.CreatedUserId,
|
||||||
p.posMasterNoOld,
|
RetirementResignCancels = p.RetirementResignCancels.FirstOrDefault(),
|
||||||
p.posTypeOldId,
|
RetirementResignDocs = p.RetirementResignDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
||||||
p.posTypeNameOld,
|
})
|
||||||
p.posLevelOldId,
|
.FirstOrDefaultAsync();
|
||||||
p.posLevelNameOld,
|
if (data == null)
|
||||||
p.IsNoDebt,
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
p.IsNoBurden,
|
|
||||||
p.IsDiscipline,
|
|
||||||
p.CancelReason,
|
|
||||||
p.ApproveStep,
|
|
||||||
p.Group,
|
|
||||||
Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
|
||||||
Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
|
||||||
KeycloakUserId = p.CreatedUserId,
|
|
||||||
RetirementResignCancels = p.RetirementResignCancels.FirstOrDefault(),
|
|
||||||
RetirementResignDocs = p.RetirementResignDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
|
||||||
})
|
|
||||||
.FirstOrDefaultAsync();
|
|
||||||
if (data == null)
|
|
||||||
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
|
||||||
|
|
||||||
var retirementResignDocs = new List<dynamic>();
|
var retirementResignDocs = new List<dynamic>();
|
||||||
foreach (var doc in data.RetirementResignDocs)
|
foreach (var doc in data.RetirementResignDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
{
|
{
|
||||||
var _doc = new
|
FileName = doc.FileName,
|
||||||
{
|
PathName = await _documentService.ImagesPath(doc.Id),
|
||||||
FileName = doc.FileName,
|
doc.Id,
|
||||||
PathName = await _documentService.ImagesPath(doc.Id),
|
|
||||||
doc.Id,
|
|
||||||
};
|
|
||||||
retirementResignDocs.Add(_doc);
|
|
||||||
}
|
|
||||||
var _data = new
|
|
||||||
{
|
|
||||||
data.Id,
|
|
||||||
data.profileId,
|
|
||||||
data.prefix,
|
|
||||||
data.firstName,
|
|
||||||
data.lastName,
|
|
||||||
data.Location,
|
|
||||||
data.SendDate,
|
|
||||||
data.ActiveDate,
|
|
||||||
data.Reason,
|
|
||||||
data.ReasonResign,
|
|
||||||
data.Remark,
|
|
||||||
data.Status,
|
|
||||||
data.salary,
|
|
||||||
data.PositionTypeOld,
|
|
||||||
data.PositionLevelOld,
|
|
||||||
data.PositionNumberOld,
|
|
||||||
data.OrganizationPositionOld,
|
|
||||||
data.ApproveReason,
|
|
||||||
data.RejectReason,
|
|
||||||
data.IsActive,
|
|
||||||
data.CreatedAt,
|
|
||||||
data.OligarchReject,
|
|
||||||
data.OligarchApproveReason,
|
|
||||||
data.OligarchRejectReason,
|
|
||||||
data.OligarchRejectDate,
|
|
||||||
data.CommanderReject,
|
|
||||||
data.CommanderApproveReason,
|
|
||||||
data.CommanderRejectReason,
|
|
||||||
data.CommanderRejectDate,
|
|
||||||
data.OfficerReject,
|
|
||||||
data.OfficerApproveReason,
|
|
||||||
data.OfficerRejectReason,
|
|
||||||
data.OfficerRejectDate,
|
|
||||||
data.RemarkHorizontal,
|
|
||||||
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,
|
|
||||||
data.PositionOld,
|
|
||||||
data.posMasterNoOld,
|
|
||||||
data.posTypeOldId,
|
|
||||||
data.posTypeNameOld,
|
|
||||||
data.posLevelOldId,
|
|
||||||
data.posLevelNameOld,
|
|
||||||
data.IsNoDebt,
|
|
||||||
data.IsNoBurden,
|
|
||||||
data.IsDiscipline,
|
|
||||||
data.CancelReason,
|
|
||||||
data.KeycloakUserId,
|
|
||||||
data.Approvers,
|
|
||||||
data.Commanders,
|
|
||||||
data.ApproveStep,
|
|
||||||
data.Group,
|
|
||||||
idCancel = data.RetirementResignCancels?.Id ?? null,
|
|
||||||
statusCancel = data.RetirementResignCancels?.Status ?? null,
|
|
||||||
statusMain = data.Status == "CANCEL" ? "DONECANCEL" : data.Status,
|
|
||||||
Docs = retirementResignDocs,
|
|
||||||
};
|
};
|
||||||
|
retirementResignDocs.Add(_doc);
|
||||||
|
}
|
||||||
|
var _data = new
|
||||||
|
{
|
||||||
|
data.Id,
|
||||||
|
data.profileId,
|
||||||
|
data.prefix,
|
||||||
|
data.firstName,
|
||||||
|
data.lastName,
|
||||||
|
data.Location,
|
||||||
|
data.SendDate,
|
||||||
|
data.ActiveDate,
|
||||||
|
data.Reason,
|
||||||
|
data.ReasonResign,
|
||||||
|
data.Remark,
|
||||||
|
data.Status,
|
||||||
|
data.salary,
|
||||||
|
data.PositionTypeOld,
|
||||||
|
data.PositionLevelOld,
|
||||||
|
data.PositionNumberOld,
|
||||||
|
data.OrganizationPositionOld,
|
||||||
|
data.ApproveReason,
|
||||||
|
data.RejectReason,
|
||||||
|
data.IsActive,
|
||||||
|
data.CreatedAt,
|
||||||
|
data.OligarchReject,
|
||||||
|
data.OligarchApproveReason,
|
||||||
|
data.OligarchRejectReason,
|
||||||
|
data.OligarchRejectDate,
|
||||||
|
data.CommanderReject,
|
||||||
|
data.CommanderApproveReason,
|
||||||
|
data.CommanderRejectReason,
|
||||||
|
data.CommanderRejectDate,
|
||||||
|
data.OfficerReject,
|
||||||
|
data.OfficerApproveReason,
|
||||||
|
data.OfficerRejectReason,
|
||||||
|
data.OfficerRejectDate,
|
||||||
|
data.RemarkHorizontal,
|
||||||
|
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,
|
||||||
|
data.PositionOld,
|
||||||
|
data.posMasterNoOld,
|
||||||
|
data.posTypeOldId,
|
||||||
|
data.posTypeNameOld,
|
||||||
|
data.posLevelOldId,
|
||||||
|
data.posLevelNameOld,
|
||||||
|
data.IsNoDebt,
|
||||||
|
data.IsNoBurden,
|
||||||
|
data.IsDiscipline,
|
||||||
|
data.CancelReason,
|
||||||
|
data.KeycloakUserId,
|
||||||
|
data.Approvers,
|
||||||
|
data.Commanders,
|
||||||
|
data.ApproveStep,
|
||||||
|
data.Group,
|
||||||
|
idCancel = data.RetirementResignCancels?.Id ?? null,
|
||||||
|
statusCancel = data.RetirementResignCancels?.Status ?? null,
|
||||||
|
statusMain = data.Status == "CANCEL" ? "DONECANCEL" : data.Status,
|
||||||
|
Docs = retirementResignDocs,
|
||||||
|
};
|
||||||
|
|
||||||
return Success(_data);
|
return Success(_data);
|
||||||
// }
|
// }
|
||||||
// else
|
// else
|
||||||
// {
|
// {
|
||||||
|
|
@ -700,6 +686,360 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <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("user/{id:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> GetDetailByUsers(Guid id)
|
||||||
|
{
|
||||||
|
var dataMain = await _context.RetirementResigns.AsQueryable()
|
||||||
|
.Where(x => x.Id == id)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
p.IsCancel,
|
||||||
|
})
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
if (dataMain == null)
|
||||||
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
|
if (dataMain.IsCancel != true)
|
||||||
|
{
|
||||||
|
var data = await _context.RetirementResigns.AsQueryable()
|
||||||
|
.Where(x => x.Id == id)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
p.Id,
|
||||||
|
p.prefix,
|
||||||
|
p.firstName,
|
||||||
|
p.lastName,
|
||||||
|
p.profileId,
|
||||||
|
p.Location,
|
||||||
|
p.SendDate,
|
||||||
|
p.ActiveDate,
|
||||||
|
p.Reason,
|
||||||
|
p.ReasonResign,
|
||||||
|
p.Remark,
|
||||||
|
p.Status,
|
||||||
|
salary = p.AmountOld,
|
||||||
|
p.ApproveReason,
|
||||||
|
p.RejectReason,
|
||||||
|
p.IsActive,
|
||||||
|
p.CreatedAt,
|
||||||
|
p.PositionTypeOld,
|
||||||
|
p.PositionLevelOld,
|
||||||
|
p.PositionNumberOld,
|
||||||
|
p.OrganizationPositionOld,
|
||||||
|
p.OligarchReject,
|
||||||
|
p.OligarchApproveReason,
|
||||||
|
p.OligarchRejectReason,
|
||||||
|
p.OligarchRejectDate,
|
||||||
|
p.CommanderReject,
|
||||||
|
p.CommanderApproveReason,
|
||||||
|
p.CommanderRejectReason,
|
||||||
|
p.CommanderRejectDate,
|
||||||
|
p.OfficerReject,
|
||||||
|
p.OfficerApproveReason,
|
||||||
|
p.OfficerRejectReason,
|
||||||
|
p.OfficerRejectDate,
|
||||||
|
p.RemarkHorizontal,
|
||||||
|
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.PositionOld,
|
||||||
|
p.posMasterNoOld,
|
||||||
|
p.posTypeOldId,
|
||||||
|
p.posTypeNameOld,
|
||||||
|
p.posLevelOldId,
|
||||||
|
p.posLevelNameOld,
|
||||||
|
p.IsNoDebt,
|
||||||
|
p.IsNoBurden,
|
||||||
|
p.IsDiscipline,
|
||||||
|
p.CancelReason,
|
||||||
|
p.ApproveStep,
|
||||||
|
p.Group,
|
||||||
|
Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
|
Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
|
CancelApprovers = new List<dynamic>(),
|
||||||
|
CancelCommanders = new List<dynamic>(),
|
||||||
|
KeycloakUserId = p.CreatedUserId,
|
||||||
|
RetirementResignCancels = p.RetirementResignCancels.FirstOrDefault(),
|
||||||
|
RetirementResignDocs = p.RetirementResignDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
||||||
|
})
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
if (data == null)
|
||||||
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
|
|
||||||
|
var retirementResignDocs = new List<dynamic>();
|
||||||
|
foreach (var doc in data.RetirementResignDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
|
{
|
||||||
|
FileName = doc.FileName,
|
||||||
|
PathName = await _documentService.ImagesPath(doc.Id),
|
||||||
|
doc.Id,
|
||||||
|
};
|
||||||
|
retirementResignDocs.Add(_doc);
|
||||||
|
}
|
||||||
|
var _data = new
|
||||||
|
{
|
||||||
|
data.Id,
|
||||||
|
data.profileId,
|
||||||
|
data.prefix,
|
||||||
|
data.firstName,
|
||||||
|
data.lastName,
|
||||||
|
data.Location,
|
||||||
|
data.SendDate,
|
||||||
|
data.ActiveDate,
|
||||||
|
data.Reason,
|
||||||
|
data.ReasonResign,
|
||||||
|
data.Remark,
|
||||||
|
data.Status,
|
||||||
|
data.salary,
|
||||||
|
data.PositionTypeOld,
|
||||||
|
data.PositionLevelOld,
|
||||||
|
data.PositionNumberOld,
|
||||||
|
data.OrganizationPositionOld,
|
||||||
|
data.ApproveReason,
|
||||||
|
data.RejectReason,
|
||||||
|
data.IsActive,
|
||||||
|
data.CreatedAt,
|
||||||
|
data.OligarchReject,
|
||||||
|
data.OligarchApproveReason,
|
||||||
|
data.OligarchRejectReason,
|
||||||
|
data.OligarchRejectDate,
|
||||||
|
data.CommanderReject,
|
||||||
|
data.CommanderApproveReason,
|
||||||
|
data.CommanderRejectReason,
|
||||||
|
data.CommanderRejectDate,
|
||||||
|
data.OfficerReject,
|
||||||
|
data.OfficerApproveReason,
|
||||||
|
data.OfficerRejectReason,
|
||||||
|
data.OfficerRejectDate,
|
||||||
|
data.RemarkHorizontal,
|
||||||
|
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,
|
||||||
|
data.PositionOld,
|
||||||
|
data.posMasterNoOld,
|
||||||
|
data.posTypeOldId,
|
||||||
|
data.posTypeNameOld,
|
||||||
|
data.posLevelOldId,
|
||||||
|
data.posLevelNameOld,
|
||||||
|
data.IsNoDebt,
|
||||||
|
data.IsNoBurden,
|
||||||
|
data.IsDiscipline,
|
||||||
|
data.CancelReason,
|
||||||
|
data.KeycloakUserId,
|
||||||
|
data.Approvers,
|
||||||
|
data.Commanders,
|
||||||
|
data.ApproveStep,
|
||||||
|
data.CancelApprovers,
|
||||||
|
data.CancelCommanders,
|
||||||
|
data.Group,
|
||||||
|
idCancel = data.RetirementResignCancels?.Id ?? null,
|
||||||
|
statusCancel = data.RetirementResignCancels?.Status ?? null,
|
||||||
|
statusMain = data.Status == "CANCEL" ? "DONECANCEL" : data.Status,
|
||||||
|
Docs = retirementResignDocs,
|
||||||
|
};
|
||||||
|
|
||||||
|
return Success(_data);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var data = await _context.RetirementResignCancels.AsQueryable()
|
||||||
|
.Where(x => x.RetirementResign.Id == id)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
p.Id,
|
||||||
|
p.prefix,
|
||||||
|
p.firstName,
|
||||||
|
p.lastName,
|
||||||
|
p.profileId,
|
||||||
|
p.Location,
|
||||||
|
p.SendDate,
|
||||||
|
p.ActiveDate,
|
||||||
|
p.Reason,
|
||||||
|
p.Remark,
|
||||||
|
p.Status,
|
||||||
|
salary = p.AmountOld,
|
||||||
|
p.ApproveReason,
|
||||||
|
p.RejectReason,
|
||||||
|
p.IsActive,
|
||||||
|
p.CreatedAt,
|
||||||
|
p.PositionTypeOld,
|
||||||
|
p.PositionLevelOld,
|
||||||
|
p.PositionNumberOld,
|
||||||
|
p.OrganizationPositionOld,
|
||||||
|
p.OligarchReject,
|
||||||
|
p.OligarchApproveReason,
|
||||||
|
p.OligarchRejectReason,
|
||||||
|
p.OligarchRejectDate,
|
||||||
|
p.CommanderReject,
|
||||||
|
p.CommanderApproveReason,
|
||||||
|
p.CommanderRejectReason,
|
||||||
|
p.CommanderRejectDate,
|
||||||
|
p.OfficerReject,
|
||||||
|
p.OfficerApproveReason,
|
||||||
|
p.OfficerRejectReason,
|
||||||
|
p.OfficerRejectDate,
|
||||||
|
p.RemarkHorizontal,
|
||||||
|
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.PositionOld,
|
||||||
|
p.posMasterNoOld,
|
||||||
|
p.posTypeOldId,
|
||||||
|
p.posTypeNameOld,
|
||||||
|
p.posLevelOldId,
|
||||||
|
p.posLevelNameOld,
|
||||||
|
p.IsNoDebt,
|
||||||
|
p.IsNoBurden,
|
||||||
|
p.IsDiscipline,
|
||||||
|
p.CancelReason,
|
||||||
|
p.ApproveStep,
|
||||||
|
p.Group,
|
||||||
|
Approvers = p.RetirementResign.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
|
Commanders = p.RetirementResign.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
|
CancelApprovers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
|
CancelCommanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
|
KeycloakUserId = p.CreatedUserId,
|
||||||
|
idMain = p.RetirementResign.Id,
|
||||||
|
statusMain = p.RetirementResign.Status,
|
||||||
|
RetirementResignDocs = p.RetirementResign.RetirementResignDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
||||||
|
})
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
if (data == null)
|
||||||
|
return Error(GlobalMessages.RetirementResignNotFound, 404);
|
||||||
|
|
||||||
|
var retirementResignDocs = new List<dynamic>();
|
||||||
|
foreach (var doc in data.RetirementResignDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
|
{
|
||||||
|
FileName = doc.FileName,
|
||||||
|
PathName = await _documentService.ImagesPath(doc.Id),
|
||||||
|
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.Remark,
|
||||||
|
data.Status,
|
||||||
|
data.salary,
|
||||||
|
data.PositionTypeOld,
|
||||||
|
data.PositionLevelOld,
|
||||||
|
data.PositionNumberOld,
|
||||||
|
data.OrganizationPositionOld,
|
||||||
|
data.ApproveReason,
|
||||||
|
data.RejectReason,
|
||||||
|
data.IsActive,
|
||||||
|
data.CreatedAt,
|
||||||
|
data.OligarchReject,
|
||||||
|
data.OligarchApproveReason,
|
||||||
|
data.OligarchRejectReason,
|
||||||
|
data.OligarchRejectDate,
|
||||||
|
data.CommanderReject,
|
||||||
|
data.CommanderApproveReason,
|
||||||
|
data.CommanderRejectReason,
|
||||||
|
data.CommanderRejectDate,
|
||||||
|
data.OfficerReject,
|
||||||
|
data.OfficerApproveReason,
|
||||||
|
data.OfficerRejectReason,
|
||||||
|
data.OfficerRejectDate,
|
||||||
|
data.RemarkHorizontal,
|
||||||
|
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,
|
||||||
|
data.PositionOld,
|
||||||
|
data.posMasterNoOld,
|
||||||
|
data.posTypeOldId,
|
||||||
|
data.posTypeNameOld,
|
||||||
|
data.posLevelOldId,
|
||||||
|
data.posLevelNameOld,
|
||||||
|
data.IsNoDebt,
|
||||||
|
data.IsNoBurden,
|
||||||
|
data.IsDiscipline,
|
||||||
|
data.CancelReason,
|
||||||
|
data.idMain,
|
||||||
|
data.statusMain,
|
||||||
|
data.KeycloakUserId,
|
||||||
|
data.ApproveStep,
|
||||||
|
data.Group,
|
||||||
|
data.Approvers,
|
||||||
|
data.Commanders,
|
||||||
|
data.CancelApprovers,
|
||||||
|
data.CancelCommanders,
|
||||||
|
statusCancel = data.Status,
|
||||||
|
Docs = retirementResignDocs,
|
||||||
|
};
|
||||||
|
return Success(_data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// get รายละเอียดลาออก
|
/// get รายละเอียดลาออก
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -712,19 +1052,6 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
[HttpGet("cancel/{id:length(36)}")]
|
[HttpGet("cancel/{id:length(36)}")]
|
||||||
public async Task<ActionResult<ResponseObject>> GetDetailByUserCancel(Guid id)
|
public async Task<ActionResult<ResponseObject>> GetDetailByUserCancel(Guid id)
|
||||||
{
|
{
|
||||||
var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), "RETIREMENT_CANCEL");
|
|
||||||
var createdUserId = await _context.RetirementResignCancels.AsQueryable()
|
|
||||||
.Where(x => x.CreatedUserId == UserId)
|
|
||||||
.FirstOrDefaultAsync();
|
|
||||||
if (getWorkflow == false && createdUserId == null)
|
|
||||||
{
|
|
||||||
var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_RESIGN");
|
|
||||||
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
|
|
||||||
if (jsonData["status"]?.ToString() != "200")
|
|
||||||
{
|
|
||||||
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var data = await _context.RetirementResignCancels.AsQueryable()
|
var data = await _context.RetirementResignCancels.AsQueryable()
|
||||||
.Where(x => x.Id == id)
|
.Where(x => x.Id == id)
|
||||||
.Select(p => new
|
.Select(p => new
|
||||||
|
|
@ -1026,19 +1353,6 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
await _context.SaveChangesAsync();
|
await _context.SaveChangesAsync();
|
||||||
using (var client = new HttpClient())
|
|
||||||
{
|
|
||||||
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", ""));
|
|
||||||
client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]);
|
|
||||||
var _res = await client.PostAsJsonAsync($"{_configuration["API"]}/org/workflow/add-workflow", new
|
|
||||||
{
|
|
||||||
refId = retirementResign.Id,
|
|
||||||
sysName = "SYS_RESIGN",
|
|
||||||
posLevelName = retirementResign.PositionLevelOld,
|
|
||||||
posTypeName = retirementResign.PositionTypeOld,
|
|
||||||
fullName = $"{retirementResign.prefix}{retirementResign.firstName} {retirementResign.lastName}"
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return Success(retirementResign);
|
return Success(retirementResign);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1304,18 +1618,6 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
}
|
}
|
||||||
await _context.AddRangeAsync(addList);
|
await _context.AddRangeAsync(addList);
|
||||||
await _context.SaveChangesAsync();
|
await _context.SaveChangesAsync();
|
||||||
using (var client = new HttpClient())
|
|
||||||
{
|
|
||||||
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", ""));
|
|
||||||
client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]);
|
|
||||||
var _res = await client.PostAsJsonAsync($"{_configuration["API"]}/org/workflow/add-workflow", new
|
|
||||||
{
|
|
||||||
refId = retirementResignCancel.Id,
|
|
||||||
sysName = "RETIREMENT_CANCEL",
|
|
||||||
posLevelName = retirementResignCancel.PositionLevelOld,
|
|
||||||
posTypeName = retirementResignCancel.PositionTypeOld,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
updated.IsCancel = true;
|
updated.IsCancel = true;
|
||||||
updated.Status = "CANCELING";
|
updated.Status = "CANCELING";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -288,179 +288,165 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
|
|
||||||
// if (dataMain.IsCancel != true)
|
// if (dataMain.IsCancel != true)
|
||||||
// {
|
// {
|
||||||
var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), "SYS_RESIGN_EMP");
|
var data = await _context.RetirementResignEmployees.AsQueryable()
|
||||||
var createdUserId = await _context.RetirementResignEmployees.AsQueryable()
|
.Where(x => x.Id == id)
|
||||||
.Where(x => x.Id == id)
|
.Select(p => new
|
||||||
.Where(x => x.CreatedUserId == UserId)
|
{
|
||||||
.FirstOrDefaultAsync();
|
p.Id,
|
||||||
if (getWorkflow == false && createdUserId == null)
|
p.prefix,
|
||||||
{
|
p.firstName,
|
||||||
var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_RESIGN_EMP");
|
p.lastName,
|
||||||
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
|
p.profileId,
|
||||||
if (jsonData["status"]?.ToString() != "200")
|
p.Location,
|
||||||
{
|
p.SendDate,
|
||||||
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
|
p.ActiveDate,
|
||||||
}
|
p.Reason,
|
||||||
}
|
p.ReasonResign,
|
||||||
var data = await _context.RetirementResignEmployees.AsQueryable()
|
p.Remark,
|
||||||
.Where(x => x.Id == id)
|
p.Status,
|
||||||
.Select(p => new
|
salary = p.AmountOld,
|
||||||
{
|
p.ApproveReason,
|
||||||
p.Id,
|
p.RejectReason,
|
||||||
p.prefix,
|
p.IsActive,
|
||||||
p.firstName,
|
p.CreatedAt,
|
||||||
p.lastName,
|
p.PositionTypeOld,
|
||||||
p.profileId,
|
p.PositionLevelOld,
|
||||||
p.Location,
|
p.PositionNumberOld,
|
||||||
p.SendDate,
|
p.OrganizationPositionOld,
|
||||||
p.ActiveDate,
|
p.OligarchReject,
|
||||||
p.Reason,
|
p.OligarchApproveReason,
|
||||||
p.ReasonResign,
|
p.OligarchRejectReason,
|
||||||
p.Remark,
|
p.OligarchRejectDate,
|
||||||
p.Status,
|
p.CommanderReject,
|
||||||
salary = p.AmountOld,
|
p.CommanderApproveReason,
|
||||||
p.ApproveReason,
|
p.CommanderRejectReason,
|
||||||
p.RejectReason,
|
p.CommanderRejectDate,
|
||||||
p.IsActive,
|
p.OfficerReject,
|
||||||
p.CreatedAt,
|
p.OfficerApproveReason,
|
||||||
p.PositionTypeOld,
|
p.OfficerRejectReason,
|
||||||
p.PositionLevelOld,
|
p.OfficerRejectDate,
|
||||||
p.PositionNumberOld,
|
p.RemarkHorizontal,
|
||||||
p.OrganizationPositionOld,
|
p.rootOld,
|
||||||
p.OligarchReject,
|
p.rootOldId,
|
||||||
p.OligarchApproveReason,
|
p.rootShortNameOld,
|
||||||
p.OligarchRejectReason,
|
p.child1Old,
|
||||||
p.OligarchRejectDate,
|
p.child1OldId,
|
||||||
p.CommanderReject,
|
p.child1ShortNameOld,
|
||||||
p.CommanderApproveReason,
|
p.child2Old,
|
||||||
p.CommanderRejectReason,
|
p.child2OldId,
|
||||||
p.CommanderRejectDate,
|
p.child2ShortNameOld,
|
||||||
p.OfficerReject,
|
p.child3Old,
|
||||||
p.OfficerApproveReason,
|
p.child3OldId,
|
||||||
p.OfficerRejectReason,
|
p.child3ShortNameOld,
|
||||||
p.OfficerRejectDate,
|
p.child4Old,
|
||||||
p.RemarkHorizontal,
|
p.child4OldId,
|
||||||
p.rootOld,
|
p.child4ShortNameOld,
|
||||||
p.rootOldId,
|
p.PositionOld,
|
||||||
p.rootShortNameOld,
|
p.posMasterNoOld,
|
||||||
p.child1Old,
|
p.posTypeOldId,
|
||||||
p.child1OldId,
|
p.posTypeNameOld,
|
||||||
p.child1ShortNameOld,
|
p.posLevelOldId,
|
||||||
p.child2Old,
|
p.posLevelNameOld,
|
||||||
p.child2OldId,
|
p.IsNoDebt,
|
||||||
p.child2ShortNameOld,
|
p.IsNoBurden,
|
||||||
p.child3Old,
|
p.IsDiscipline,
|
||||||
p.child3OldId,
|
p.CancelReason,
|
||||||
p.child3ShortNameOld,
|
p.ApproveStep,
|
||||||
p.child4Old,
|
p.Group,
|
||||||
p.child4OldId,
|
Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
p.child4ShortNameOld,
|
Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
p.PositionOld,
|
KeycloakUserId = p.CreatedUserId,
|
||||||
p.posMasterNoOld,
|
RetirementResignEmployeeCancels = p.RetirementResignEmployeeCancels.FirstOrDefault(),
|
||||||
p.posTypeOldId,
|
RetirementResignEmployeeDocs = p.RetirementResignEmployeeDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
||||||
p.posTypeNameOld,
|
})
|
||||||
p.posLevelOldId,
|
.FirstOrDefaultAsync();
|
||||||
p.posLevelNameOld,
|
if (data == null)
|
||||||
p.IsNoDebt,
|
return Error(GlobalMessages.RetirementResignEmployeeNotFound, 404);
|
||||||
p.IsNoBurden,
|
|
||||||
p.IsDiscipline,
|
|
||||||
p.CancelReason,
|
|
||||||
p.ApproveStep,
|
|
||||||
p.Group,
|
|
||||||
Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
|
||||||
Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
|
||||||
KeycloakUserId = p.CreatedUserId,
|
|
||||||
RetirementResignEmployeeCancels = p.RetirementResignEmployeeCancels.FirstOrDefault(),
|
|
||||||
RetirementResignEmployeeDocs = p.RetirementResignEmployeeDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
|
||||||
})
|
|
||||||
.FirstOrDefaultAsync();
|
|
||||||
if (data == null)
|
|
||||||
return Error(GlobalMessages.RetirementResignEmployeeNotFound, 404);
|
|
||||||
|
|
||||||
var retirementResignEmployeeDocs = new List<dynamic>();
|
var retirementResignEmployeeDocs = new List<dynamic>();
|
||||||
foreach (var doc in data.RetirementResignEmployeeDocs)
|
foreach (var doc in data.RetirementResignEmployeeDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
{
|
{
|
||||||
var _doc = new
|
FileName = doc.FileName,
|
||||||
{
|
PathName = await _documentService.ImagesPath(doc.Id),
|
||||||
FileName = doc.FileName,
|
doc.Id,
|
||||||
PathName = await _documentService.ImagesPath(doc.Id),
|
|
||||||
doc.Id,
|
|
||||||
};
|
|
||||||
retirementResignEmployeeDocs.Add(_doc);
|
|
||||||
}
|
|
||||||
var _data = new
|
|
||||||
{
|
|
||||||
data.Id,
|
|
||||||
data.profileId,
|
|
||||||
data.prefix,
|
|
||||||
data.firstName,
|
|
||||||
data.lastName,
|
|
||||||
data.Location,
|
|
||||||
data.SendDate,
|
|
||||||
data.ActiveDate,
|
|
||||||
data.Reason,
|
|
||||||
data.ReasonResign,
|
|
||||||
data.Remark,
|
|
||||||
data.Status,
|
|
||||||
data.salary,
|
|
||||||
data.PositionTypeOld,
|
|
||||||
data.PositionLevelOld,
|
|
||||||
data.PositionNumberOld,
|
|
||||||
data.OrganizationPositionOld,
|
|
||||||
data.ApproveReason,
|
|
||||||
data.RejectReason,
|
|
||||||
data.IsActive,
|
|
||||||
data.CreatedAt,
|
|
||||||
data.OligarchReject,
|
|
||||||
data.OligarchApproveReason,
|
|
||||||
data.OligarchRejectReason,
|
|
||||||
data.OligarchRejectDate,
|
|
||||||
data.CommanderReject,
|
|
||||||
data.CommanderApproveReason,
|
|
||||||
data.CommanderRejectReason,
|
|
||||||
data.CommanderRejectDate,
|
|
||||||
data.OfficerReject,
|
|
||||||
data.OfficerApproveReason,
|
|
||||||
data.OfficerRejectReason,
|
|
||||||
data.OfficerRejectDate,
|
|
||||||
data.RemarkHorizontal,
|
|
||||||
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,
|
|
||||||
data.PositionOld,
|
|
||||||
data.posMasterNoOld,
|
|
||||||
data.posTypeOldId,
|
|
||||||
data.posTypeNameOld,
|
|
||||||
data.posLevelOldId,
|
|
||||||
data.posLevelNameOld,
|
|
||||||
data.IsNoDebt,
|
|
||||||
data.IsNoBurden,
|
|
||||||
data.IsDiscipline,
|
|
||||||
data.CancelReason,
|
|
||||||
data.KeycloakUserId,
|
|
||||||
data.Approvers,
|
|
||||||
data.Commanders,
|
|
||||||
data.ApproveStep,
|
|
||||||
data.Group,
|
|
||||||
idCancel = data.RetirementResignEmployeeCancels?.Id ?? Guid.Empty,
|
|
||||||
statusCancel = data.RetirementResignEmployeeCancels?.Status ?? null,
|
|
||||||
statusMain = data.Status == "CANCEL" ? "DONECANCEL" : data.Status,
|
|
||||||
Docs = retirementResignEmployeeDocs,
|
|
||||||
};
|
};
|
||||||
|
retirementResignEmployeeDocs.Add(_doc);
|
||||||
|
}
|
||||||
|
var _data = new
|
||||||
|
{
|
||||||
|
data.Id,
|
||||||
|
data.profileId,
|
||||||
|
data.prefix,
|
||||||
|
data.firstName,
|
||||||
|
data.lastName,
|
||||||
|
data.Location,
|
||||||
|
data.SendDate,
|
||||||
|
data.ActiveDate,
|
||||||
|
data.Reason,
|
||||||
|
data.ReasonResign,
|
||||||
|
data.Remark,
|
||||||
|
data.Status,
|
||||||
|
data.salary,
|
||||||
|
data.PositionTypeOld,
|
||||||
|
data.PositionLevelOld,
|
||||||
|
data.PositionNumberOld,
|
||||||
|
data.OrganizationPositionOld,
|
||||||
|
data.ApproveReason,
|
||||||
|
data.RejectReason,
|
||||||
|
data.IsActive,
|
||||||
|
data.CreatedAt,
|
||||||
|
data.OligarchReject,
|
||||||
|
data.OligarchApproveReason,
|
||||||
|
data.OligarchRejectReason,
|
||||||
|
data.OligarchRejectDate,
|
||||||
|
data.CommanderReject,
|
||||||
|
data.CommanderApproveReason,
|
||||||
|
data.CommanderRejectReason,
|
||||||
|
data.CommanderRejectDate,
|
||||||
|
data.OfficerReject,
|
||||||
|
data.OfficerApproveReason,
|
||||||
|
data.OfficerRejectReason,
|
||||||
|
data.OfficerRejectDate,
|
||||||
|
data.RemarkHorizontal,
|
||||||
|
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,
|
||||||
|
data.PositionOld,
|
||||||
|
data.posMasterNoOld,
|
||||||
|
data.posTypeOldId,
|
||||||
|
data.posTypeNameOld,
|
||||||
|
data.posLevelOldId,
|
||||||
|
data.posLevelNameOld,
|
||||||
|
data.IsNoDebt,
|
||||||
|
data.IsNoBurden,
|
||||||
|
data.IsDiscipline,
|
||||||
|
data.CancelReason,
|
||||||
|
data.KeycloakUserId,
|
||||||
|
data.Approvers,
|
||||||
|
data.Commanders,
|
||||||
|
data.ApproveStep,
|
||||||
|
data.Group,
|
||||||
|
idCancel = data.RetirementResignEmployeeCancels?.Id ?? Guid.Empty,
|
||||||
|
statusCancel = data.RetirementResignEmployeeCancels?.Status ?? null,
|
||||||
|
statusMain = data.Status == "CANCEL" ? "DONECANCEL" : data.Status,
|
||||||
|
Docs = retirementResignEmployeeDocs,
|
||||||
|
};
|
||||||
|
|
||||||
return Success(_data);
|
return Success(_data);
|
||||||
// }
|
// }
|
||||||
// else
|
// else
|
||||||
// {
|
// {
|
||||||
|
|
@ -638,6 +624,376 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <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("user/{id:length(36)}")]
|
||||||
|
public async Task<ActionResult<ResponseObject>> GetDetailByUsers(Guid id)
|
||||||
|
{
|
||||||
|
var dataMain = await _context.RetirementResignEmployees.AsQueryable()
|
||||||
|
.Where(x => x.Id == id)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
p.IsCancel,
|
||||||
|
})
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
if (dataMain == null)
|
||||||
|
return Error(GlobalMessages.RetirementResignEmployeeNotFound, 404);
|
||||||
|
|
||||||
|
if (dataMain.IsCancel != true)
|
||||||
|
{
|
||||||
|
var createdUserId = await _context.RetirementResignEmployees.AsQueryable()
|
||||||
|
.Where(x => x.Id == id)
|
||||||
|
.Where(x => x.CreatedUserId == UserId)
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
var data = await _context.RetirementResignEmployees.AsQueryable()
|
||||||
|
.Where(x => x.Id == id)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
p.Id,
|
||||||
|
p.prefix,
|
||||||
|
p.firstName,
|
||||||
|
p.lastName,
|
||||||
|
p.profileId,
|
||||||
|
p.Location,
|
||||||
|
p.SendDate,
|
||||||
|
p.ActiveDate,
|
||||||
|
p.Reason,
|
||||||
|
p.ReasonResign,
|
||||||
|
p.Remark,
|
||||||
|
p.Status,
|
||||||
|
salary = p.AmountOld,
|
||||||
|
p.ApproveReason,
|
||||||
|
p.RejectReason,
|
||||||
|
p.IsActive,
|
||||||
|
p.CreatedAt,
|
||||||
|
p.PositionTypeOld,
|
||||||
|
p.PositionLevelOld,
|
||||||
|
p.PositionNumberOld,
|
||||||
|
p.OrganizationPositionOld,
|
||||||
|
p.OligarchReject,
|
||||||
|
p.OligarchApproveReason,
|
||||||
|
p.OligarchRejectReason,
|
||||||
|
p.OligarchRejectDate,
|
||||||
|
p.CommanderReject,
|
||||||
|
p.CommanderApproveReason,
|
||||||
|
p.CommanderRejectReason,
|
||||||
|
p.CommanderRejectDate,
|
||||||
|
p.OfficerReject,
|
||||||
|
p.OfficerApproveReason,
|
||||||
|
p.OfficerRejectReason,
|
||||||
|
p.OfficerRejectDate,
|
||||||
|
p.RemarkHorizontal,
|
||||||
|
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.PositionOld,
|
||||||
|
p.posMasterNoOld,
|
||||||
|
p.posTypeOldId,
|
||||||
|
p.posTypeNameOld,
|
||||||
|
p.posLevelOldId,
|
||||||
|
p.posLevelNameOld,
|
||||||
|
p.IsNoDebt,
|
||||||
|
p.IsNoBurden,
|
||||||
|
p.IsDiscipline,
|
||||||
|
p.CancelReason,
|
||||||
|
p.ApproveStep,
|
||||||
|
p.Group,
|
||||||
|
Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
|
Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
|
CancelApprovers = new List<dynamic>(),
|
||||||
|
CancelCommanders = new List<dynamic>(),
|
||||||
|
KeycloakUserId = p.CreatedUserId,
|
||||||
|
RetirementResignEmployeeCancels = p.RetirementResignEmployeeCancels.FirstOrDefault(),
|
||||||
|
RetirementResignEmployeeDocs = p.RetirementResignEmployeeDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
||||||
|
})
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
if (data == null)
|
||||||
|
return Error(GlobalMessages.RetirementResignEmployeeNotFound, 404);
|
||||||
|
|
||||||
|
var retirementResignEmployeeDocs = new List<dynamic>();
|
||||||
|
foreach (var doc in data.RetirementResignEmployeeDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
|
{
|
||||||
|
FileName = doc.FileName,
|
||||||
|
PathName = await _documentService.ImagesPath(doc.Id),
|
||||||
|
doc.Id,
|
||||||
|
};
|
||||||
|
retirementResignEmployeeDocs.Add(_doc);
|
||||||
|
}
|
||||||
|
var _data = new
|
||||||
|
{
|
||||||
|
data.Id,
|
||||||
|
data.profileId,
|
||||||
|
data.prefix,
|
||||||
|
data.firstName,
|
||||||
|
data.lastName,
|
||||||
|
data.Location,
|
||||||
|
data.SendDate,
|
||||||
|
data.ActiveDate,
|
||||||
|
data.Reason,
|
||||||
|
data.ReasonResign,
|
||||||
|
data.Remark,
|
||||||
|
data.Status,
|
||||||
|
data.salary,
|
||||||
|
data.PositionTypeOld,
|
||||||
|
data.PositionLevelOld,
|
||||||
|
data.PositionNumberOld,
|
||||||
|
data.OrganizationPositionOld,
|
||||||
|
data.ApproveReason,
|
||||||
|
data.RejectReason,
|
||||||
|
data.IsActive,
|
||||||
|
data.CreatedAt,
|
||||||
|
data.OligarchReject,
|
||||||
|
data.OligarchApproveReason,
|
||||||
|
data.OligarchRejectReason,
|
||||||
|
data.OligarchRejectDate,
|
||||||
|
data.CommanderReject,
|
||||||
|
data.CommanderApproveReason,
|
||||||
|
data.CommanderRejectReason,
|
||||||
|
data.CommanderRejectDate,
|
||||||
|
data.OfficerReject,
|
||||||
|
data.OfficerApproveReason,
|
||||||
|
data.OfficerRejectReason,
|
||||||
|
data.OfficerRejectDate,
|
||||||
|
data.RemarkHorizontal,
|
||||||
|
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,
|
||||||
|
data.PositionOld,
|
||||||
|
data.posMasterNoOld,
|
||||||
|
data.posTypeOldId,
|
||||||
|
data.posTypeNameOld,
|
||||||
|
data.posLevelOldId,
|
||||||
|
data.posLevelNameOld,
|
||||||
|
data.IsNoDebt,
|
||||||
|
data.IsNoBurden,
|
||||||
|
data.IsDiscipline,
|
||||||
|
data.CancelReason,
|
||||||
|
data.KeycloakUserId,
|
||||||
|
data.Approvers,
|
||||||
|
data.Commanders,
|
||||||
|
data.ApproveStep,
|
||||||
|
data.CancelApprovers,
|
||||||
|
data.CancelCommanders,
|
||||||
|
data.Group,
|
||||||
|
idCancel = data.RetirementResignEmployeeCancels?.Id ?? Guid.Empty,
|
||||||
|
statusCancel = data.RetirementResignEmployeeCancels?.Status ?? null,
|
||||||
|
statusMain = data.Status == "CANCEL" ? "DONECANCEL" : data.Status,
|
||||||
|
Docs = retirementResignEmployeeDocs,
|
||||||
|
};
|
||||||
|
|
||||||
|
return Success(_data);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var createdUserId = await _context.RetirementResignEmployeeCancels.AsQueryable()
|
||||||
|
.Where(x => x.CreatedUserId == UserId)
|
||||||
|
.Where(x => x.RetirementResignEmployee.Id == id)
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
{
|
||||||
|
var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_RESIGN_EMP");
|
||||||
|
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
|
||||||
|
if (jsonData["status"]?.ToString() != "200")
|
||||||
|
{
|
||||||
|
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var data = await _context.RetirementResignEmployeeCancels.AsQueryable()
|
||||||
|
.Where(x => x.RetirementResignEmployee.Id == id)
|
||||||
|
.Select(p => new
|
||||||
|
{
|
||||||
|
p.Id,
|
||||||
|
p.prefix,
|
||||||
|
p.firstName,
|
||||||
|
p.lastName,
|
||||||
|
p.profileId,
|
||||||
|
p.Location,
|
||||||
|
p.SendDate,
|
||||||
|
p.ActiveDate,
|
||||||
|
p.Reason,
|
||||||
|
p.Remark,
|
||||||
|
p.Status,
|
||||||
|
salary = p.AmountOld,
|
||||||
|
p.ApproveReason,
|
||||||
|
p.RejectReason,
|
||||||
|
p.IsActive,
|
||||||
|
p.CreatedAt,
|
||||||
|
p.PositionTypeOld,
|
||||||
|
p.PositionLevelOld,
|
||||||
|
p.PositionNumberOld,
|
||||||
|
p.OrganizationPositionOld,
|
||||||
|
p.OligarchReject,
|
||||||
|
p.OligarchApproveReason,
|
||||||
|
p.OligarchRejectReason,
|
||||||
|
p.OligarchRejectDate,
|
||||||
|
p.CommanderReject,
|
||||||
|
p.CommanderApproveReason,
|
||||||
|
p.CommanderRejectReason,
|
||||||
|
p.CommanderRejectDate,
|
||||||
|
p.OfficerReject,
|
||||||
|
p.OfficerApproveReason,
|
||||||
|
p.OfficerRejectReason,
|
||||||
|
p.OfficerRejectDate,
|
||||||
|
p.RemarkHorizontal,
|
||||||
|
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.PositionOld,
|
||||||
|
p.posMasterNoOld,
|
||||||
|
p.posTypeOldId,
|
||||||
|
p.posTypeNameOld,
|
||||||
|
p.posLevelOldId,
|
||||||
|
p.posLevelNameOld,
|
||||||
|
p.IsNoDebt,
|
||||||
|
p.IsNoBurden,
|
||||||
|
p.IsDiscipline,
|
||||||
|
p.ApproveStep,
|
||||||
|
p.Group,
|
||||||
|
Approvers = p.RetirementResignEmployee.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
|
Commanders = p.RetirementResignEmployee.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
|
CancelApprovers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"),
|
||||||
|
CancelCommanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"),
|
||||||
|
KeycloakUserId = p.CreatedUserId,
|
||||||
|
p.CancelReason,
|
||||||
|
idMain = p.RetirementResignEmployee.Id,
|
||||||
|
statusMain = p.RetirementResignEmployee.Status,
|
||||||
|
RetirementResignEmployeeDocs = p.RetirementResignEmployee.RetirementResignEmployeeDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }),
|
||||||
|
})
|
||||||
|
.FirstOrDefaultAsync();
|
||||||
|
if (data == null)
|
||||||
|
return Error(GlobalMessages.RetirementResignEmployeeNotFound, 404);
|
||||||
|
|
||||||
|
var retirementResignEmployeeDocs = new List<dynamic>();
|
||||||
|
foreach (var doc in data.RetirementResignEmployeeDocs)
|
||||||
|
{
|
||||||
|
var _doc = new
|
||||||
|
{
|
||||||
|
FileName = doc.FileName,
|
||||||
|
PathName = await _documentService.ImagesPath(doc.Id),
|
||||||
|
doc.Id,
|
||||||
|
};
|
||||||
|
retirementResignEmployeeDocs.Add(_doc);
|
||||||
|
}
|
||||||
|
var _data = new
|
||||||
|
{
|
||||||
|
data.Id,
|
||||||
|
data.profileId,
|
||||||
|
data.prefix,
|
||||||
|
data.firstName,
|
||||||
|
data.lastName,
|
||||||
|
data.Location,
|
||||||
|
data.SendDate,
|
||||||
|
data.ActiveDate,
|
||||||
|
data.Reason,
|
||||||
|
data.Remark,
|
||||||
|
data.Status,
|
||||||
|
data.salary,
|
||||||
|
data.PositionTypeOld,
|
||||||
|
data.PositionLevelOld,
|
||||||
|
data.PositionNumberOld,
|
||||||
|
data.OrganizationPositionOld,
|
||||||
|
data.ApproveReason,
|
||||||
|
data.RejectReason,
|
||||||
|
data.IsActive,
|
||||||
|
data.CreatedAt,
|
||||||
|
data.OligarchReject,
|
||||||
|
data.OligarchApproveReason,
|
||||||
|
data.OligarchRejectReason,
|
||||||
|
data.OligarchRejectDate,
|
||||||
|
data.CommanderReject,
|
||||||
|
data.CommanderApproveReason,
|
||||||
|
data.CommanderRejectReason,
|
||||||
|
data.CommanderRejectDate,
|
||||||
|
data.OfficerReject,
|
||||||
|
data.OfficerApproveReason,
|
||||||
|
data.OfficerRejectReason,
|
||||||
|
data.OfficerRejectDate,
|
||||||
|
data.RemarkHorizontal,
|
||||||
|
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,
|
||||||
|
data.PositionOld,
|
||||||
|
data.posMasterNoOld,
|
||||||
|
data.posTypeOldId,
|
||||||
|
data.posTypeNameOld,
|
||||||
|
data.posLevelOldId,
|
||||||
|
data.posLevelNameOld,
|
||||||
|
data.IsNoDebt,
|
||||||
|
data.IsNoBurden,
|
||||||
|
data.IsDiscipline,
|
||||||
|
data.CancelReason,
|
||||||
|
data.idMain,
|
||||||
|
data.statusMain,
|
||||||
|
data.ApproveStep,
|
||||||
|
data.Group,
|
||||||
|
data.KeycloakUserId,
|
||||||
|
data.Approvers,
|
||||||
|
data.Commanders,
|
||||||
|
data.CancelApprovers,
|
||||||
|
data.CancelCommanders,
|
||||||
|
statusCancel = data.Status,
|
||||||
|
Docs = retirementResignEmployeeDocs,
|
||||||
|
};
|
||||||
|
return Success(_data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// get รายละเอียดลาออก
|
/// get รายละเอียดลาออก
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -650,19 +1006,6 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
[HttpGet("cancel/{id:length(36)}")]
|
[HttpGet("cancel/{id:length(36)}")]
|
||||||
public async Task<ActionResult<ResponseObject>> GetDetailByUserCancel(Guid id)
|
public async Task<ActionResult<ResponseObject>> GetDetailByUserCancel(Guid id)
|
||||||
{
|
{
|
||||||
var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), "RETIREMENT_CANCEL_EMP");
|
|
||||||
var createdUserId = await _context.RetirementResignEmployeeCancels.AsQueryable()
|
|
||||||
.Where(x => x.CreatedUserId == UserId)
|
|
||||||
.FirstOrDefaultAsync();
|
|
||||||
if (getWorkflow == false && createdUserId == null)
|
|
||||||
{
|
|
||||||
var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_RESIGN_EMP");
|
|
||||||
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
|
|
||||||
if (jsonData["status"]?.ToString() != "200")
|
|
||||||
{
|
|
||||||
return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var data = await _context.RetirementResignEmployeeCancels.AsQueryable()
|
var data = await _context.RetirementResignEmployeeCancels.AsQueryable()
|
||||||
.Where(x => x.Id == id)
|
.Where(x => x.Id == id)
|
||||||
.Select(p => new
|
.Select(p => new
|
||||||
|
|
@ -961,18 +1304,18 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
await _context.SaveChangesAsync();
|
await _context.SaveChangesAsync();
|
||||||
using (var client = new HttpClient())
|
// using (var client = new HttpClient())
|
||||||
{
|
// {
|
||||||
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", ""));
|
// client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", ""));
|
||||||
client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]);
|
// client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]);
|
||||||
var _res = await client.PostAsJsonAsync($"{_configuration["API"]}/org/workflow/add-workflow", new
|
// var _res = await client.PostAsJsonAsync($"{_configuration["API"]}/org/workflow/add-workflow", new
|
||||||
{
|
// {
|
||||||
refId = retirementResignEmployee.Id,
|
// refId = retirementResignEmployee.Id,
|
||||||
sysName = "SYS_RESIGN_EMP",
|
// sysName = "SYS_RESIGN_EMP",
|
||||||
posLevelName = retirementResignEmployee.PositionLevelOld,
|
// posLevelName = retirementResignEmployee.PositionLevelOld,
|
||||||
posTypeName = retirementResignEmployee.PositionTypeOld,
|
// posTypeName = retirementResignEmployee.PositionTypeOld,
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
return Success(retirementResignEmployee);
|
return Success(retirementResignEmployee);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1209,18 +1552,18 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
||||||
}
|
}
|
||||||
await _context.AddRangeAsync(addList);
|
await _context.AddRangeAsync(addList);
|
||||||
await _context.SaveChangesAsync();
|
await _context.SaveChangesAsync();
|
||||||
using (var client = new HttpClient())
|
// using (var client = new HttpClient())
|
||||||
{
|
// {
|
||||||
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", ""));
|
// client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", ""));
|
||||||
client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]);
|
// client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]);
|
||||||
var _res = await client.PostAsJsonAsync($"{_configuration["API"]}/org/workflow/add-workflow", new
|
// var _res = await client.PostAsJsonAsync($"{_configuration["API"]}/org/workflow/add-workflow", new
|
||||||
{
|
// {
|
||||||
refId = retirementResignEmployeeCancel.Id,
|
// refId = retirementResignEmployeeCancel.Id,
|
||||||
sysName = "RETIREMENT_CANCEL_EMP",
|
// sysName = "RETIREMENT_CANCEL_EMP",
|
||||||
posLevelName = retirementResignEmployeeCancel.PositionLevelOld,
|
// posLevelName = retirementResignEmployeeCancel.PositionLevelOld,
|
||||||
posTypeName = retirementResignEmployeeCancel.PositionTypeOld,
|
// posTypeName = retirementResignEmployeeCancel.PositionTypeOld,
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
updated.IsCancel = true;
|
updated.IsCancel = true;
|
||||||
updated.Status = "CANCELING";
|
updated.Status = "CANCELING";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue