sort ประเมินผลการปฏิบัติราชการระดับบุคคล
This commit is contained in:
parent
50da2b4e70
commit
254d6ae810
3 changed files with 135 additions and 17 deletions
|
|
@ -360,6 +360,8 @@ export class KpiUserDevelopmentController extends Controller {
|
|||
// results?: string | null;
|
||||
// reqedit?: string | null;
|
||||
// evaluating?: boolean | null;
|
||||
sortBy?: string;
|
||||
descending?: boolean;
|
||||
},
|
||||
) {
|
||||
// await new permission().PermissionList(request, "SYS_RESULT");
|
||||
|
|
@ -372,7 +374,7 @@ export class KpiUserDevelopmentController extends Controller {
|
|||
_data = x;
|
||||
})
|
||||
.catch((x) => {});
|
||||
const [kpiUserDevelopment, total] = await AppDataSource.getRepository(KpiUserDevelopment)
|
||||
let query = await AppDataSource.getRepository(KpiUserDevelopment)
|
||||
.createQueryBuilder("kpiUserDevelopment")
|
||||
.leftJoinAndSelect("kpiUserDevelopment.kpiUserEvaluation", "kpiUserEvaluation")
|
||||
.leftJoinAndSelect("kpiUserEvaluation.kpiPeriod", "kpiPeriod")
|
||||
|
|
@ -476,7 +478,46 @@ export class KpiUserDevelopmentController extends Controller {
|
|||
});
|
||||
}),
|
||||
)
|
||||
.orderBy("kpiUserDevelopment.createdAt", "ASC")
|
||||
|
||||
if (requestBody.sortBy) {
|
||||
if(requestBody.sortBy === "developmentName"){
|
||||
query = query.orderBy(
|
||||
`kpiUserDevelopment.name`,
|
||||
requestBody.descending ? "DESC" : "ASC"
|
||||
);
|
||||
}else if (requestBody.sortBy === "organization"){
|
||||
query = query
|
||||
.orderBy(`kpiUserEvaluation.child4`, requestBody.descending ? "DESC" : "ASC")
|
||||
.addOrderBy(`kpiUserEvaluation.child3`, requestBody.descending ? "DESC" : "ASC")
|
||||
.addOrderBy(`kpiUserEvaluation.child2`, requestBody.descending ? "DESC" : "ASC")
|
||||
.addOrderBy(`kpiUserEvaluation.child1`, requestBody.descending ? "DESC" : "ASC")
|
||||
.addOrderBy(`kpiUserEvaluation.org`, requestBody.descending ? "DESC" : "ASC");
|
||||
}else if(requestBody.sortBy === "firstname"){
|
||||
query = query.orderBy(
|
||||
`kpiUserEvaluation.firstName`,
|
||||
requestBody.descending ? "DESC" : "ASC"
|
||||
);
|
||||
}else if(requestBody.sortBy === "lastname"){
|
||||
query = query.orderBy(
|
||||
`kpiUserEvaluation.lastName`,
|
||||
requestBody.descending ? "DESC" : "ASC"
|
||||
);
|
||||
}else if(requestBody.sortBy === "root"){
|
||||
query = query.orderBy(
|
||||
`kpiUserEvaluation.org`,
|
||||
requestBody.descending ? "DESC" : "ASC"
|
||||
);
|
||||
}else{
|
||||
query = query.orderBy(
|
||||
`kpiUserEvaluation.${requestBody.sortBy}`,
|
||||
requestBody.descending ? "DESC" : "ASC"
|
||||
);
|
||||
}
|
||||
}else{
|
||||
query = query.orderBy("kpiUserDevelopment.createdAt", "ASC")
|
||||
}
|
||||
|
||||
const [kpiUserDevelopment, total] = await query
|
||||
.skip((requestBody.page - 1) * requestBody.pageSize)
|
||||
.take(requestBody.pageSize)
|
||||
.getManyAndCount();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue