new-salary gen (emp)
This commit is contained in:
parent
e585e41a70
commit
1a38978b17
2 changed files with 431 additions and 16 deletions
|
|
@ -20,6 +20,7 @@ import { viewPosMaster } from "../entities/view/viewPosMaster";
|
||||||
import { viewProfileEmployeeEvaluation } from "../entities/view/viewProfileEmployeeEvaluation";
|
import { viewProfileEmployeeEvaluation } from "../entities/view/viewProfileEmployeeEvaluation";
|
||||||
import Extension from "../interfaces/extension";
|
import Extension from "../interfaces/extension";
|
||||||
import { resetPassword } from "../keycloak";
|
import { resetPassword } from "../keycloak";
|
||||||
|
import { viewEmployeePosMaster } from "../entities/view/viewEmployeePosMaster";
|
||||||
@Route("api/v1/org/unauthorize")
|
@Route("api/v1/org/unauthorize")
|
||||||
@Tags("OrganizationUnauthorize")
|
@Tags("OrganizationUnauthorize")
|
||||||
@Response(
|
@Response(
|
||||||
|
|
@ -299,8 +300,8 @@ export class OrganizationUnauthorizeController extends Controller {
|
||||||
* @summary TEST รายชื่อราชการที่เลื่อนเงินเดือน #76 (unauthorize)
|
* @summary TEST รายชื่อราชการที่เลื่อนเงินเดือน #76 (unauthorize)
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Post("testsalary/gen")
|
@Post("new-salary/gen")
|
||||||
async testsalaryGen(
|
async newSalaryGen(
|
||||||
@Body()
|
@Body()
|
||||||
body: {
|
body: {
|
||||||
page: number;
|
page: number;
|
||||||
|
|
@ -476,21 +477,18 @@ export class OrganizationUnauthorizeController extends Controller {
|
||||||
child4Order: item.orgChild4Order,
|
child4Order: item.orgChild4Order,
|
||||||
result: pointSum,
|
result: pointSum,
|
||||||
duration: null,
|
duration: null,
|
||||||
// isPunish:
|
isPunish:
|
||||||
// item.current_holder.profileDisciplines.filter(
|
new Date(
|
||||||
// (x: any) =>
|
`${new Date(item.disCriplineDate).getFullYear()}-${String(new Date(item.disCriplineDate).getMonth() + 1).padStart(2, "0")}-${String(new Date(item.disCriplineDate).getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
||||||
// new Date(
|
) >= datePeriodStart &&
|
||||||
// `${new Date(x.date).getFullYear()}-${String(new Date(x.date).getMonth() + 1).padStart(2, "0")}-${String(new Date(x.date).getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
new Date(
|
||||||
// ) >= datePeriodStart &&
|
`${new Date(item.disCriplineDate).getFullYear()}-${String(new Date(item.disCriplineDate).getMonth() + 1).padStart(2, "0")}-${String(new Date(item.disCriplineDate).getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
||||||
// new Date(
|
) <= datePeriodEnd
|
||||||
// `${new Date(x.date).getFullYear()}-${String(new Date(x.date).getMonth() + 1).padStart(2, "0")}-${String(new Date(x.date).getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
? true
|
||||||
// ) <= datePeriodEnd,
|
: false,
|
||||||
// ).length > 0
|
|
||||||
// ? true
|
|
||||||
// : false,
|
|
||||||
isSuspension: item.dateRetire == null ? false : true,
|
isSuspension: item.dateRetire == null ? false : true,
|
||||||
isAbsent: item.profileDisciplineId ? true : false,
|
isAbsent: item.profileDisciplineId ? true : false,
|
||||||
isLeave: item.profileLeaveId ? true : false,
|
isLeave: item.profileLeaveId ? true : false,
|
||||||
isRetired:
|
isRetired:
|
||||||
item.birthDate == null ||
|
item.birthDate == null ||
|
||||||
calculateRetireDate(item.birthDate).getFullYear() != body.year
|
calculateRetireDate(item.birthDate).getFullYear() != body.year
|
||||||
|
|
@ -722,6 +720,208 @@ export class OrganizationUnauthorizeController extends Controller {
|
||||||
return new HttpSuccess({ data: formattedData, total: total });
|
return new HttpSuccess({ data: formattedData, total: total });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* API รายชื่อราชการที่เลื่อนเงินเดือน (unauthorize)
|
||||||
|
*
|
||||||
|
* @summary ORG_072 - รายชื่อราชการที่เลื่อนเงินเดือน #76 (unauthorize)
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@Post("new-salary/employee/gen")
|
||||||
|
async newSalaryEmployeeGen(
|
||||||
|
@Body()
|
||||||
|
body: {
|
||||||
|
page: number;
|
||||||
|
pageSize: number;
|
||||||
|
keyword?: string;
|
||||||
|
year: number;
|
||||||
|
period: string;
|
||||||
|
},
|
||||||
|
) {
|
||||||
|
const findRevision = await this.orgRevisionRepository.findOne({
|
||||||
|
where: { orgRevisionIsCurrent: true },
|
||||||
|
});
|
||||||
|
if (!findRevision) {
|
||||||
|
throw new HttpError(HttpStatusCode.NOT_FOUND, "not found. OrgRevision");
|
||||||
|
}
|
||||||
|
|
||||||
|
const [findPosMaster, total] = await AppDataSource.getRepository(viewEmployeePosMaster)
|
||||||
|
.createQueryBuilder("viewEmployeePosMaster")
|
||||||
|
.where({
|
||||||
|
orgRevisionId: findRevision?.id,
|
||||||
|
})
|
||||||
|
.andWhere(
|
||||||
|
new Brackets((qb) => {
|
||||||
|
qb.where(
|
||||||
|
body.keyword != null && body.keyword != ""
|
||||||
|
? "prefix LIKE :keyword"
|
||||||
|
: "1=1",
|
||||||
|
{
|
||||||
|
keyword: `%${body.keyword}%`,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
.orWhere(
|
||||||
|
body.keyword != null && body.keyword != ""
|
||||||
|
? "firstName LIKE :keyword"
|
||||||
|
: "1=1",
|
||||||
|
{
|
||||||
|
keyword: `%${body.keyword}%`,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
.orWhere(
|
||||||
|
body.keyword != null && body.keyword != ""
|
||||||
|
? "lastName LIKE :keyword"
|
||||||
|
: "1=1",
|
||||||
|
{
|
||||||
|
keyword: `%${body.keyword}%`,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
.orWhere(
|
||||||
|
body.keyword != null && body.keyword != ""
|
||||||
|
? "position LIKE :keyword"
|
||||||
|
: "1=1",
|
||||||
|
{
|
||||||
|
keyword: `%${body.keyword}%`,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
.orWhere(
|
||||||
|
body.keyword != null && body.keyword != ""
|
||||||
|
? "citizenId LIKE :keyword"
|
||||||
|
: "1=1",
|
||||||
|
{
|
||||||
|
keyword: `%${body.keyword}%`,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
.orWhere(
|
||||||
|
body.keyword != null && body.keyword != ""
|
||||||
|
? "posType.posTypeName LIKE :keyword"
|
||||||
|
: "1=1",
|
||||||
|
{
|
||||||
|
keyword: `%${body.keyword}%`,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
.orWhere(
|
||||||
|
body.keyword != null && body.keyword != ""
|
||||||
|
? "posLevel.posLevelName LIKE :keyword"
|
||||||
|
: "1=1",
|
||||||
|
{
|
||||||
|
keyword: `%${body.keyword}%`,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
.orderBy("citizenId", "ASC")
|
||||||
|
.skip((body.page - 1) * body.pageSize)
|
||||||
|
.take(body.pageSize)
|
||||||
|
.getManyAndCount();
|
||||||
|
if (!findPosMaster) {
|
||||||
|
throw new HttpError(HttpStatusCode.NOT_FOUND, "not found. PosMaster");
|
||||||
|
}
|
||||||
|
|
||||||
|
const formattedData = findPosMaster.map((item) => {
|
||||||
|
let orgShortName = "";
|
||||||
|
|
||||||
|
if (item.orgChild1Id === null) {
|
||||||
|
orgShortName = item?.orgRootShortName;
|
||||||
|
} else if (item.orgChild2Id === null) {
|
||||||
|
orgShortName = item?.orgChild1ShortName;
|
||||||
|
} else if (item.orgChild3Id === null) {
|
||||||
|
orgShortName = item?.orgChild2ShortName;
|
||||||
|
} else if (item.orgChild4Id === null) {
|
||||||
|
orgShortName = item?.orgChild3ShortName;
|
||||||
|
} else {
|
||||||
|
orgShortName = item?.orgChild4ShortName;
|
||||||
|
}
|
||||||
|
|
||||||
|
// const amount =
|
||||||
|
// item.current_holder == null || item.current_holder.profileSalary.length == 0
|
||||||
|
// ? null
|
||||||
|
// : item.current_holder.profileSalary.sort((a: any, b: any) => b.date - a.date)[0].amount;
|
||||||
|
const amount = item ? item.amount : null;
|
||||||
|
let datePeriodStart = new Date(
|
||||||
|
`${new Date().getFullYear()}-${String(new Date().getMonth() + 1).padStart(2, "0")}-${String(new Date().getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
||||||
|
);
|
||||||
|
let datePeriodEnd = new Date(
|
||||||
|
`${new Date().getFullYear()}-${String(new Date().getMonth() + 1).padStart(2, "0")}-${String(new Date().getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
||||||
|
);
|
||||||
|
if (body.period.toLocaleUpperCase() == "APR") {
|
||||||
|
datePeriodStart = new Date(`${body.year}-03-31T00:00:00.000Z`);
|
||||||
|
datePeriodEnd = new Date(`${body.year}-03-31T00:00:00.000Z`);
|
||||||
|
}
|
||||||
|
if (body.period.toLocaleUpperCase() == "OCT") {
|
||||||
|
datePeriodStart = new Date(`${body.year}-09-30T00:00:00.000Z`);
|
||||||
|
datePeriodEnd = new Date(`${body.year}-09-30T00:00:00.000Z`);
|
||||||
|
}
|
||||||
|
datePeriodStart = new Date(
|
||||||
|
new Date(datePeriodStart.setDate(datePeriodStart.getDate() + 1)).setMonth(
|
||||||
|
datePeriodStart.getMonth() - 6,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
// const latestProfileAssessment = item.current_holder.profileAssessments
|
||||||
|
// ? item.current_holder.profileAssessments.sort((a: any, b: any) => b.date - a.date)[0]
|
||||||
|
// : null;
|
||||||
|
// const pointSum = latestProfileAssessment
|
||||||
|
// ? `(${this.textPointSummaryKpi(latestProfileAssessment.pointSum)})${latestProfileAssessment.pointSum}`
|
||||||
|
// : null;
|
||||||
|
const pointSum = item.pointSum
|
||||||
|
? `(${this.textPointSummaryKpi(item.pointSum)})${item.pointSum}` //่join ธรรมดาดึง row ล่าสุดอยู่แล้ว
|
||||||
|
: null;
|
||||||
|
return {
|
||||||
|
profileId: item.id,
|
||||||
|
salaryLevel: item.salaryLevel,
|
||||||
|
group: item.group,
|
||||||
|
prefix: item.prefix,
|
||||||
|
firstName: item.firstName,
|
||||||
|
lastName: item.lastName,
|
||||||
|
citizenId: item.citizenId,
|
||||||
|
posMasterNoPrefix: item.posMasterNoPrefix,
|
||||||
|
posMasterNo: item.posMasterNo,
|
||||||
|
posMasterNoSuffix: item.posMasterNoSuffix,
|
||||||
|
orgShortName: orgShortName,
|
||||||
|
position: item.position,
|
||||||
|
posType: item.posTypeName,
|
||||||
|
posTypeShort: item.posTypeShortName,
|
||||||
|
posLevel: item.posLevelName,
|
||||||
|
amount: amount ? amount : null,
|
||||||
|
rootId: item.orgRootId,
|
||||||
|
root: item?.orgRootName ? item.orgRootName : null,
|
||||||
|
rootOrder: item?.orgRootOrder ? item.orgRootOrder : null,
|
||||||
|
child1Id: item.orgChild1Id,
|
||||||
|
child1: item?.orgChild1Name ? item.orgChild1Name : null,
|
||||||
|
child1Order: item?.orgChild1Order ? item.orgChild1Order : null,
|
||||||
|
child2Id: item.orgChild2Id,
|
||||||
|
child2: item?.orgChild2Name ? item.orgChild2Name : null,
|
||||||
|
child2Order: item?.orgChild2Order ? item.orgChild2Order : null,
|
||||||
|
child3Id: item.orgChild3Id,
|
||||||
|
child3: item?.orgChild3Name ? item.orgChild3Name : null,
|
||||||
|
child3Order: item?.orgChild3Order ? item.orgChild3Order : null,
|
||||||
|
child4Id: item.orgChild4Id,
|
||||||
|
child4: item?.orgChild4Name ? item.orgChild4Name : null,
|
||||||
|
child4Order: item?.orgChild4Order ? item.orgChild4Order : null,
|
||||||
|
result: pointSum,
|
||||||
|
duration: null,
|
||||||
|
isPunish:
|
||||||
|
new Date(
|
||||||
|
`${new Date(item.disCriplineDate).getFullYear()}-${String(new Date(item.disCriplineDate).getMonth() + 1).padStart(2, "0")}-${String(new Date(item.disCriplineDate).getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
||||||
|
) >= datePeriodStart &&
|
||||||
|
new Date(
|
||||||
|
`${new Date(item.disCriplineDate).getFullYear()}-${String(new Date(item.disCriplineDate).getMonth() + 1).padStart(2, "0")}-${String(new Date(item.disCriplineDate).getDate() + 1).padStart(2, "0")}T00:00:00.000Z`,
|
||||||
|
) <= datePeriodEnd
|
||||||
|
? true
|
||||||
|
: false,
|
||||||
|
isSuspension: item.dateRetire == null ? false : true,
|
||||||
|
isAbsent: item.profileDisciplineId ? true : false,
|
||||||
|
isLeave: item.profileLeaveId ? true : false,
|
||||||
|
isRetired:
|
||||||
|
item.birthDate == null ||
|
||||||
|
calculateRetireDate(item.birthDate).getFullYear() != body.year
|
||||||
|
? false
|
||||||
|
: true,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
return new HttpSuccess({ data: formattedData, total: total });
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* API หาสำนักทั้งหมด (unauthorize)
|
* API หาสำนักทั้งหมด (unauthorize)
|
||||||
*
|
*
|
||||||
|
|
|
||||||
215
src/entities/view/viewEmployeePosMaster.ts
Normal file
215
src/entities/view/viewEmployeePosMaster.ts
Normal file
|
|
@ -0,0 +1,215 @@
|
||||||
|
import { ViewColumn, ViewEntity } from "typeorm";
|
||||||
|
|
||||||
|
@ViewEntity({
|
||||||
|
expression: `SELECT
|
||||||
|
employeePosMaster.id,
|
||||||
|
employeePosMaster.posMasterNoPrefix,
|
||||||
|
employeePosMaster.posMasterNo,
|
||||||
|
employeePosMaster.posMasterNoSuffix,
|
||||||
|
employeePosMaster.orgRevisionId,
|
||||||
|
employeePosMaster.orgRootId,
|
||||||
|
employeePosMaster.orgChild1Id,
|
||||||
|
employeePosMaster.orgChild2Id,
|
||||||
|
employeePosMaster.orgChild3Id,
|
||||||
|
employeePosMaster.orgChild4Id,
|
||||||
|
employeePosMaster.current_holderId,
|
||||||
|
profileEmployee.id as profileId,
|
||||||
|
profileEmployee.prefix,
|
||||||
|
profileEmployee.firstName,
|
||||||
|
profileEmployee.lastName,
|
||||||
|
profileEmployee.citizenId,
|
||||||
|
profileEmployee.position,
|
||||||
|
profileEmployee.amount,
|
||||||
|
profileEmployee.dateRetire,
|
||||||
|
profileEmployee.birthDate,
|
||||||
|
profileEmployee.salaryLevel,
|
||||||
|
profileEmployee.group,
|
||||||
|
orgRoot.id as rootId,
|
||||||
|
orgRoot.orgRootShortName,
|
||||||
|
orgRoot.orgRootOrder,
|
||||||
|
orgRoot.orgRootName,
|
||||||
|
orgChild1.id as child1Id,
|
||||||
|
orgChild1.orgChild1ShortName,
|
||||||
|
orgChild1.orgChild1Order,
|
||||||
|
orgChild1.orgChild1Name,
|
||||||
|
orgChild2.id as child2Id,
|
||||||
|
orgChild2.orgChild2ShortName,
|
||||||
|
orgChild2.orgChild2Order,
|
||||||
|
orgChild2.orgChild2Name,
|
||||||
|
orgChild3.id as child3Id,
|
||||||
|
orgChild3.orgChild3ShortName,
|
||||||
|
orgChild3.orgChild3Order,
|
||||||
|
orgChild3.orgChild3Name,
|
||||||
|
orgChild4.id as child4Id,
|
||||||
|
orgChild4.orgChild4ShortName,
|
||||||
|
orgChild4.orgChild4Order,
|
||||||
|
orgChild4.orgChild4Name,
|
||||||
|
position.id as positionId,
|
||||||
|
position.positionIsSelected,
|
||||||
|
position.posExecutiveId as positionPosExecutiveId,
|
||||||
|
position.isSpecial,
|
||||||
|
posExecutive.id as posExecutiveId,
|
||||||
|
posExecutive.posExecutiveName,
|
||||||
|
profileDiscipline.id as profileDisciplineId,
|
||||||
|
profileDiscipline.date as disCriplineDate,
|
||||||
|
profileLeave.id as profileLeaveId,
|
||||||
|
profileAssessment.id as profileAssessmentId,
|
||||||
|
profileAssessment.pointSum,
|
||||||
|
employeePosLevel.id as posLevelId,
|
||||||
|
employeePosLevel.posLevelName,
|
||||||
|
employeePosType.id as posTypeId,
|
||||||
|
employeePosType.posTypeName,
|
||||||
|
employeePosType.posTypeShortName
|
||||||
|
FROM
|
||||||
|
employeePosMaster
|
||||||
|
LEFT JOIN
|
||||||
|
profileEmployee ON employeePosMaster.current_holderId = profileEmployee.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgRoot ON employeePosMaster.orgRootId = orgRoot.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild1 ON employeePosMaster.orgChild1Id = orgChild1.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild2 ON employeePosMaster.orgChild2Id = orgChild2.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild3 ON employeePosMaster.orgChild3Id = orgChild3.id
|
||||||
|
LEFT JOIN
|
||||||
|
orgChild4 ON employeePosMaster.orgChild4Id = orgChild4.id
|
||||||
|
LEFT JOIN
|
||||||
|
position ON employeePosMaster.id = position.posMasterId
|
||||||
|
LEFT JOIN
|
||||||
|
posExecutive ON position.posExecutiveId = posExecutive.id
|
||||||
|
LEFT JOIN
|
||||||
|
profileDiscipline ON profileDiscipline.profileId = profileEmployee.id
|
||||||
|
LEFT JOIN
|
||||||
|
profileLeave ON profileLeave.profileId = profileEmployee.id
|
||||||
|
LEFT JOIN
|
||||||
|
profileAssessment ON profileAssessment.profileId = profileEmployee.id
|
||||||
|
LEFT JOIN
|
||||||
|
employeePosLevel ON profileEmployee.posLevelId = employeePosLevel.id
|
||||||
|
LEFT JOIN
|
||||||
|
employeePosType ON profileEmployee.posTypeId = employeePosType.id
|
||||||
|
WHERE
|
||||||
|
employeePosMaster.current_holderId IS NOT NULL
|
||||||
|
ORDER BY
|
||||||
|
profileEmployee.citizenId ASC
|
||||||
|
`,
|
||||||
|
})
|
||||||
|
|
||||||
|
export class viewEmployeePosMaster {
|
||||||
|
@ViewColumn()
|
||||||
|
id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posMasterNoPrefix: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posMasterNo: number;
|
||||||
|
@ViewColumn()
|
||||||
|
posMasterNoSuffix: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgRevisionId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgRootId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild1Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild2Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild3Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild4Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
current_holderId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
profileId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
prefix: string;
|
||||||
|
@ViewColumn()
|
||||||
|
firstName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
lastName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
citizenId: number;
|
||||||
|
@ViewColumn()
|
||||||
|
position: string;
|
||||||
|
@ViewColumn()
|
||||||
|
amount: number;
|
||||||
|
@ViewColumn()
|
||||||
|
dateRetire: Date;
|
||||||
|
@ViewColumn()
|
||||||
|
birthDate: Date;
|
||||||
|
@ViewColumn()
|
||||||
|
rootId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgRootShortName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgRootOrder: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgRootName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child1Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild1ShortName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild1Order: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild1Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child2Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild2ShortName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild2Order: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild2Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child3Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild3ShortName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild3Order: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild3Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
child4Id: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild4ShortName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild4Order: string;
|
||||||
|
@ViewColumn()
|
||||||
|
orgChild4Name: string;
|
||||||
|
@ViewColumn()
|
||||||
|
positionId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
positionIsSelected: boolean;
|
||||||
|
@ViewColumn()
|
||||||
|
positionPosExecutiveId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
isSpecial: boolean;
|
||||||
|
@ViewColumn()
|
||||||
|
posExecutiveId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posExecutiveName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
profileDisciplineId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
disCriplineDate: Date;
|
||||||
|
@ViewColumn()
|
||||||
|
profileLeaveId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
profileAssessmentId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
pointSum: number;
|
||||||
|
@ViewColumn()
|
||||||
|
posLevelId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posLevelName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posTypeId: string;
|
||||||
|
@ViewColumn()
|
||||||
|
posTypeName: string;
|
||||||
|
@ViewColumn()
|
||||||
|
salaryLevel: number;
|
||||||
|
@ViewColumn()
|
||||||
|
group: number;
|
||||||
|
@ViewColumn()
|
||||||
|
posTypeShortName: string;
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue