เกษียณเพิ่มส่วนราชการต้นสังกัด
This commit is contained in:
parent
1f5edf20ed
commit
a2bc99f739
9 changed files with 250 additions and 85 deletions
|
|
@ -141,6 +141,96 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
return 999999999;
|
||||
return index;
|
||||
}
|
||||
|
||||
private async Task<string> GetAgency(Guid profileId)
|
||||
{
|
||||
var organizationAgency = "-";
|
||||
var _profile = await _context.Profiles
|
||||
.Where(x => x.Id == profileId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (_profile != null)
|
||||
{
|
||||
if (_profile.ProfileType == "officer")
|
||||
{
|
||||
var organization = await _context.Organizations
|
||||
.Where(x => x.Id == _profile.OcId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (organization != null)
|
||||
{
|
||||
var _organizationAgency = await _context.Organizations
|
||||
.Include(x => x.OrganizationOrganization)
|
||||
.Where(x => x.Id == organization.OrganizationAgencyId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (_organizationAgency != null && _organizationAgency.OrganizationOrganization != null)
|
||||
{
|
||||
organizationAgency = _organizationAgency.OrganizationOrganization.Name;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var profilePosition = await _context.OrganizationEmployees
|
||||
.Include(x => x.OrganizationAgency)
|
||||
.ThenInclude(x => x.OrganizationOrganization)
|
||||
.Where(x => x.Organization != null)
|
||||
.Where(x => x.OrganizationAgency != null)
|
||||
.Where(x => x.OrganizationAgency.OrganizationOrganization != null)
|
||||
.Where(x => x.OrganizationAgency.OrganizationOrganization.Name != null)
|
||||
.Where(x => x.Organization.Id == _profile.OcId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (profilePosition != null)
|
||||
{
|
||||
organizationAgency = profilePosition.OrganizationAgency.OrganizationOrganization.Name;
|
||||
}
|
||||
}
|
||||
}
|
||||
return organizationAgency;
|
||||
}
|
||||
|
||||
private async Task<string> GetGovermentAgency(Guid profileId)
|
||||
{
|
||||
var organizationGovernmentAgency = "-";
|
||||
var _profile = await _context.Profiles
|
||||
.Where(x => x.Id == profileId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (_profile != null)
|
||||
{
|
||||
if (_profile.ProfileType == "officer")
|
||||
{
|
||||
var organization = await _context.Organizations
|
||||
.Where(x => x.Id == _profile.OcId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (organization != null)
|
||||
{
|
||||
var _organizationGovernmentAgency = await _context.Organizations
|
||||
.Include(x => x.OrganizationOrganization)
|
||||
.Where(x => x.Id == organization.OrganizationGovernmentAgencyId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (_organizationGovernmentAgency != null && _organizationGovernmentAgency.OrganizationOrganization != null)
|
||||
{
|
||||
organizationGovernmentAgency = _organizationGovernmentAgency.OrganizationOrganization.Name;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var profilePosition = await _context.OrganizationEmployees
|
||||
.Include(x => x.OrganizationGovernmentAgency)
|
||||
.ThenInclude(x => x.OrganizationOrganization)
|
||||
.Where(x => x.Organization != null)
|
||||
.Where(x => x.OrganizationGovernmentAgency != null)
|
||||
.Where(x => x.OrganizationGovernmentAgency.OrganizationOrganization != null)
|
||||
.Where(x => x.OrganizationGovernmentAgency.OrganizationOrganization.Name != null)
|
||||
.Where(x => x.Organization.Id == _profile.OcId)
|
||||
.FirstOrDefaultAsync();
|
||||
if (profilePosition != null)
|
||||
{
|
||||
organizationGovernmentAgency = profilePosition.OrganizationGovernmentAgency.OrganizationOrganization.Name;
|
||||
}
|
||||
}
|
||||
}
|
||||
return organizationGovernmentAgency;
|
||||
}
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -308,6 +398,9 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
var profile_olds = new List<ProfileJsonRequest>();
|
||||
foreach (var r in profile_old)
|
||||
{
|
||||
var organizationAgency = await GetAgency(r.profileId);
|
||||
var organizationGovernmentAgency = await GetGovermentAgency(r.profileId);
|
||||
|
||||
var data = new ProfileJsonRequest
|
||||
{
|
||||
order = r.order,
|
||||
|
|
@ -328,6 +421,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
positionEmployeeLevel = r.positionEmployeeLevel,
|
||||
positionEmployeeGroup = r.positionEmployeeGroup,
|
||||
posNoEmployee = r.posNoEmployee,
|
||||
organizationAgency = organizationAgency,//หน่วยงานต้นสังกัด
|
||||
organizationGovernmentAgency = organizationGovernmentAgency,//ส่วนราชการต้นสังกัด
|
||||
};
|
||||
profile_olds.Add(data);
|
||||
}
|
||||
|
|
@ -465,6 +560,9 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
var profile_news = new List<ProfileJsonRequest>();
|
||||
foreach (var r in profile_new)
|
||||
{
|
||||
var organizationAgency = await GetAgency(r.profileId);
|
||||
var organizationGovernmentAgency = await GetGovermentAgency(r.profileId);
|
||||
|
||||
var data = new ProfileJsonRequest
|
||||
{
|
||||
order = r.order,
|
||||
|
|
@ -485,6 +583,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
positionEmployeeLevel = r.positionEmployeeLevel,
|
||||
positionEmployeeGroup = r.positionEmployeeGroup,
|
||||
posNoEmployee = r.posNoEmployee,
|
||||
organizationAgency = organizationAgency,//หน่วยงานต้นสังกัด
|
||||
organizationGovernmentAgency = organizationGovernmentAgency,//ส่วนราชการต้นสังกัด
|
||||
};
|
||||
profile_news.Add(data);
|
||||
}
|
||||
|
|
@ -553,6 +653,9 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
var profile_news = new List<ProfileJsonRequest>();
|
||||
foreach (var r in profile_new)
|
||||
{
|
||||
var organizationAgency = await GetAgency(r.profileId);
|
||||
var organizationGovernmentAgency = await GetGovermentAgency(r.profileId);
|
||||
|
||||
var data = new ProfileJsonRequest
|
||||
{
|
||||
order = r.order,
|
||||
|
|
@ -573,6 +676,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
positionEmployeeLevel = r.positionEmployeeLevel,
|
||||
positionEmployeeGroup = r.positionEmployeeGroup,
|
||||
posNoEmployee = r.posNoEmployee,
|
||||
organizationAgency = organizationAgency,//หน่วยงานต้นสังกัด
|
||||
organizationGovernmentAgency = organizationGovernmentAgency,//ส่วนราชการต้นสังกัด
|
||||
};
|
||||
profile_news.Add(data);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -144,12 +144,12 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
p.Status,
|
||||
p.Amount,
|
||||
p.RecruitDate,
|
||||
PosNoId = p.PositionNumber == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.PositionNumber.Id,
|
||||
PositionId = p.PositionPath == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.PositionPath.Id,
|
||||
PositionPathSideId = p.PositionPathSide == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.PositionPathSide.Id,
|
||||
PositionTypeId = p.PositionType == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.PositionType.Id,
|
||||
PositionLineId = p.PositionLine == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.PositionLine.Id,
|
||||
PositionLevelId = p.PositionLevel == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.PositionLevel.Id,
|
||||
PosNo = p.PositionNumber == null ? "-" : p.PositionNumber.Name,
|
||||
Position = p.PositionPath == null ? "-" : p.PositionPath.Name,
|
||||
PositionPathSide = p.PositionPathSide == null ? "-" : p.PositionPathSide.Name,
|
||||
PositionType = p.PositionType == null ? "-" : p.PositionType.Name,
|
||||
PositionLine = p.PositionLine == null ? "-" : p.PositionLine.Name,
|
||||
PositionLevel = p.PositionLevel == null ? "-" : p.PositionLevel.Name,
|
||||
OrganizationPositionId = p.OrganizationPosition == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.OrganizationPosition.Id,
|
||||
p.CreatedAt,
|
||||
p.Reason,
|
||||
|
|
@ -198,12 +198,12 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
data.Status,
|
||||
data.Amount,
|
||||
data.RecruitDate,
|
||||
data.PosNoId,
|
||||
data.PositionId,
|
||||
data.PositionPathSideId,
|
||||
data.PositionTypeId,
|
||||
data.PositionLineId,
|
||||
data.PositionLevelId,
|
||||
data.PosNo,
|
||||
data.Position,
|
||||
data.PositionPathSide,
|
||||
data.PositionType,
|
||||
data.PositionLine,
|
||||
data.PositionLevel,
|
||||
data.OrganizationPositionId,
|
||||
data.CreatedAt,
|
||||
data.Reason,
|
||||
|
|
@ -267,6 +267,13 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
PositionTypeOld = profile.PositionType == null ? null : profile.PositionType.Name,
|
||||
PositionNumberOld = profile.PosNo == null ? null : profile.PosNo.Name,
|
||||
OrganizationPositionOld = profile.Position == null ? profile.Oc : $"{profile.Position.Name}-{profile.Oc}",
|
||||
PositionNumber = profile.PosNo,
|
||||
PositionPath = profile.Position,
|
||||
PositionPathSide = await _context.PositionPathSides.FindAsync(profile.PositionPathSideId),
|
||||
PositionType = profile.PositionType,
|
||||
PositionLine = await _context.PositionLines.FindAsync(profile.PositionLineId),
|
||||
PositionLevel = profile.PositionLevel,
|
||||
// OrganizationPositionId = p.OrganizationPosition == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.OrganizationPosition.Id,
|
||||
Status = "WAITTING",
|
||||
CreatedUserId = UserId ?? "System Administrator",
|
||||
CreatedFullName = FullName ?? "",
|
||||
|
|
|
|||
|
|
@ -354,8 +354,8 @@ namespace BMA.EHR.Retirement.Service.Controllers
|
|||
}
|
||||
await _repositoryNoti.PushNotificationAsync(
|
||||
Guid.Parse("08db721d-ae2f-4f5d-836a-02d2413df33d"),
|
||||
$"{profile.Prefix?.Name}{profile.FirstName} {profile.LastName} ได้ทำการยื่นคำลาออก",
|
||||
$"{profile.Prefix?.Name}{profile.FirstName} {profile.LastName} ได้ทำการยื่นคำลาออก",
|
||||
$"{profile.Prefix?.Name}{profile.FirstName} {profile.LastName} ได้ทำการยื่นขอลาออก",
|
||||
$"{profile.Prefix?.Name}{profile.FirstName} {profile.LastName} ได้ทำการยื่นขอลาออก",
|
||||
"",
|
||||
true
|
||||
);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue