fixing path
This commit is contained in:
parent
400b9c0b28
commit
ba612f1b2b
12 changed files with 325 additions and 723 deletions
13
src/app.ts
13
src/app.ts
|
|
@ -4,11 +4,10 @@ import cors from "cors";
|
||||||
import express from "express";
|
import express from "express";
|
||||||
import swaggerUi from "swagger-ui-express";
|
import swaggerUi from "swagger-ui-express";
|
||||||
import swaggerDocument from "./swagger.json";
|
import swaggerDocument from "./swagger.json";
|
||||||
import * as cron from "node-cron";
|
|
||||||
import error from "./middlewares/error";
|
import error from "./middlewares/error";
|
||||||
import { AppDataSource } from "./database/data-source";
|
import { AppDataSource } from "./database/data-source";
|
||||||
import { RegisterRoutes } from "./routes";
|
import { RegisterRoutes } from "./routes";
|
||||||
// import logMiddleware from "./middlewares/logs";
|
import logMiddleware from "./middlewares/logs";
|
||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
await AppDataSource.initialize();
|
await AppDataSource.initialize();
|
||||||
|
|
@ -18,11 +17,11 @@ async function main() {
|
||||||
app.use(
|
app.use(
|
||||||
cors({
|
cors({
|
||||||
origin: "*",
|
origin: "*",
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
app.use(express.json());
|
app.use(express.json());
|
||||||
app.use(express.urlencoded({ extended: true }));
|
app.use(express.urlencoded({ extended: true }));
|
||||||
// app.use(logMiddleware);
|
app.use(logMiddleware);
|
||||||
app.use("/", express.static("static"));
|
app.use("/", express.static("static"));
|
||||||
app.use("/api-docs", swaggerUi.serve, swaggerUi.setup(swaggerDocument));
|
app.use("/api-docs", swaggerUi.serve, swaggerUi.setup(swaggerDocument));
|
||||||
|
|
||||||
|
|
@ -36,11 +35,9 @@ async function main() {
|
||||||
APP_PORT,
|
APP_PORT,
|
||||||
APP_HOST,
|
APP_HOST,
|
||||||
() => (
|
() => (
|
||||||
console.log(
|
console.log(`[APP] Application is running on: http://localhost:${APP_PORT}`),
|
||||||
`[APP] Application is running on: http://localhost:${APP_PORT}`
|
|
||||||
),
|
|
||||||
console.log(`[APP] Swagger on: http://localhost:${APP_PORT}/api-docs`)
|
console.log(`[APP] Swagger on: http://localhost:${APP_PORT}/api-docs`)
|
||||||
)
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,21 +21,12 @@ import { findEndDate, setLogDataDiff } from "../interfaces/utils";
|
||||||
import { Personal } from "../entities/Personal";
|
import { Personal } from "../entities/Personal";
|
||||||
import permission from "../interfaces/permission";
|
import permission from "../interfaces/permission";
|
||||||
import { Assign, CreateAssign } from "../entities/Assign";
|
import { Assign, CreateAssign } from "../entities/Assign";
|
||||||
import {
|
import { AssignDirector, CreateAssignDirector } from "../entities/AssignDirector";
|
||||||
AssignDirector,
|
|
||||||
CreateAssignDirector,
|
|
||||||
} from "../entities/AssignDirector";
|
|
||||||
import { AssignJob, CreateAssignJob } from "../entities/AssignJob";
|
import { AssignJob, CreateAssignJob } from "../entities/AssignJob";
|
||||||
import {
|
import { AssignKnowledge, CreateAssignKnowledge } from "../entities/AssignKnowledge";
|
||||||
AssignKnowledge,
|
|
||||||
CreateAssignKnowledge,
|
|
||||||
} from "../entities/AssignKnowledge";
|
|
||||||
import { AssignLaw, CreateAssignLaw } from "../entities/AssignLaw";
|
import { AssignLaw, CreateAssignLaw } from "../entities/AssignLaw";
|
||||||
import { AssignSkill, CreateAssignSkill } from "../entities/AssignSkill";
|
import { AssignSkill, CreateAssignSkill } from "../entities/AssignSkill";
|
||||||
import {
|
import { AssignCompetency, CreateAssignCompetency } from "../entities/AssignCompetency";
|
||||||
AssignCompetency,
|
|
||||||
CreateAssignCompetency,
|
|
||||||
} from "../entities/AssignCompetency";
|
|
||||||
import {
|
import {
|
||||||
AssignCompetencyGroup,
|
AssignCompetencyGroup,
|
||||||
CreateAssignCompetencyGroup,
|
CreateAssignCompetencyGroup,
|
||||||
|
|
@ -44,29 +35,24 @@ import { AssignOutput, CreateAssignOutput } from "../entities/AssignOutput";
|
||||||
import { Law } from "../entities/Law";
|
import { Law } from "../entities/Law";
|
||||||
import CallAPI from "../interfaces/call-api";
|
import CallAPI from "../interfaces/call-api";
|
||||||
|
|
||||||
@Route("api/v1/assign")
|
@Route("api/v1/probation/assign")
|
||||||
@Tags("ฟอร์มมอบหมายงาน")
|
@Tags("ฟอร์มมอบหมายงาน")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class AssignController extends Controller {
|
export class AssignController extends Controller {
|
||||||
private assignRepository = AppDataSource.getRepository(Assign);
|
private assignRepository = AppDataSource.getRepository(Assign);
|
||||||
private personalRepository = AppDataSource.getRepository(Personal);
|
private personalRepository = AppDataSource.getRepository(Personal);
|
||||||
private assignDirectorRepository =
|
private assignDirectorRepository = AppDataSource.getRepository(AssignDirector);
|
||||||
AppDataSource.getRepository(AssignDirector);
|
|
||||||
private assignJobRepository = AppDataSource.getRepository(AssignJob);
|
private assignJobRepository = AppDataSource.getRepository(AssignJob);
|
||||||
private assignKnowledgeRepository =
|
private assignKnowledgeRepository = AppDataSource.getRepository(AssignKnowledge);
|
||||||
AppDataSource.getRepository(AssignKnowledge);
|
|
||||||
private assignLawRepository = AppDataSource.getRepository(AssignLaw);
|
private assignLawRepository = AppDataSource.getRepository(AssignLaw);
|
||||||
private assignSkillRepository = AppDataSource.getRepository(AssignSkill);
|
private assignSkillRepository = AppDataSource.getRepository(AssignSkill);
|
||||||
private assignCompetencyRepository =
|
private assignCompetencyRepository = AppDataSource.getRepository(AssignCompetency);
|
||||||
AppDataSource.getRepository(AssignCompetency);
|
private assignCompetencyGroupRepository = AppDataSource.getRepository(AssignCompetencyGroup);
|
||||||
private assignCompetencyGroupRepository = AppDataSource.getRepository(
|
|
||||||
AssignCompetencyGroup
|
|
||||||
);
|
|
||||||
private assignOutputRepository = AppDataSource.getRepository(AssignOutput);
|
private assignOutputRepository = AppDataSource.getRepository(AssignOutput);
|
||||||
private lawsRepository = AppDataSource.getRepository(Law);
|
private lawsRepository = AppDataSource.getRepository(Law);
|
||||||
|
|
||||||
|
|
@ -77,10 +63,7 @@ export class AssignController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Post("")
|
@Post("")
|
||||||
async AddAssign(
|
async AddAssign(@Request() request: RequestWithUser, @Body() requestBody: CreateAssign) {
|
||||||
@Request() request: RequestWithUser,
|
|
||||||
@Body() requestBody: CreateAssign
|
|
||||||
) {
|
|
||||||
await new permission().PermissionUpdate(request, "SYS_PROBATION");
|
await new permission().PermissionUpdate(request, "SYS_PROBATION");
|
||||||
const person = await this.personalRepository.findOne({
|
const person = await this.personalRepository.findOne({
|
||||||
where: {
|
where: {
|
||||||
|
|
@ -112,17 +95,15 @@ export class AssignController extends Controller {
|
||||||
const assign = await this.assignRepository.save(data, { data: request });
|
const assign = await this.assignRepository.save(data, { data: request });
|
||||||
setLogDataDiff(request, { before, after: data });
|
setLogDataDiff(request, { before, after: data });
|
||||||
|
|
||||||
const jobs = await requestBody.assign_jobs.map(
|
const jobs = await requestBody.assign_jobs.map((x: CreateAssignJob, index: number) => ({
|
||||||
(x: CreateAssignJob, index: number) => ({
|
...x,
|
||||||
...x,
|
id: index + 1,
|
||||||
id: index + 1,
|
assign_id: assign.id,
|
||||||
assign_id: assign.id,
|
createdUserId: request.user.sub,
|
||||||
createdUserId: request.user.sub,
|
createdFullName: request.user.name,
|
||||||
createdFullName: request.user.name,
|
updateUserId: request.user.sub,
|
||||||
updateUserId: request.user.sub,
|
updateFullName: request.user.name,
|
||||||
updateFullName: request.user.name,
|
}));
|
||||||
})
|
|
||||||
);
|
|
||||||
await this.assignJobRepository.save(jobs, { data: request });
|
await this.assignJobRepository.save(jobs, { data: request });
|
||||||
setLogDataDiff(request, { before, after: jobs });
|
setLogDataDiff(request, { before, after: jobs });
|
||||||
|
|
||||||
|
|
@ -135,36 +116,32 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignKnowledgeRepository.save(knowledges, { data: request });
|
await this.assignKnowledgeRepository.save(knowledges, { data: request });
|
||||||
setLogDataDiff(request, { before, after: knowledges });
|
setLogDataDiff(request, { before, after: knowledges });
|
||||||
|
|
||||||
const laws = await requestBody.assign_law.map(
|
const laws = await requestBody.assign_law.map((x: CreateAssignLaw, index: number) => ({
|
||||||
(x: CreateAssignLaw, index: number) => ({
|
ordering: index + 1,
|
||||||
ordering: index + 1,
|
law_id: x.id,
|
||||||
law_id: x.id,
|
assign_id: assign.id,
|
||||||
assign_id: assign.id,
|
createdUserId: request.user.sub,
|
||||||
createdUserId: request.user.sub,
|
createdFullName: request.user.name,
|
||||||
createdFullName: request.user.name,
|
updateUserId: request.user.sub,
|
||||||
updateUserId: request.user.sub,
|
updateFullName: request.user.name,
|
||||||
updateFullName: request.user.name,
|
}));
|
||||||
})
|
|
||||||
);
|
|
||||||
await this.assignLawRepository.save(laws, { data: request });
|
await this.assignLawRepository.save(laws, { data: request });
|
||||||
setLogDataDiff(request, { before, after: laws });
|
setLogDataDiff(request, { before, after: laws });
|
||||||
|
|
||||||
const skills = await requestBody.assign_skill.map(
|
const skills = await requestBody.assign_skill.map((x: CreateAssignSkill, index: number) => ({
|
||||||
(x: CreateAssignSkill, index: number) => ({
|
skill_id: index + 1,
|
||||||
skill_id: index + 1,
|
skill_level: x.level,
|
||||||
skill_level: x.level,
|
assign_id: assign.id,
|
||||||
assign_id: assign.id,
|
createdUserId: request.user.sub,
|
||||||
createdUserId: request.user.sub,
|
createdFullName: request.user.name,
|
||||||
createdFullName: request.user.name,
|
updateUserId: request.user.sub,
|
||||||
updateUserId: request.user.sub,
|
updateFullName: request.user.name,
|
||||||
updateFullName: request.user.name,
|
}));
|
||||||
})
|
|
||||||
);
|
|
||||||
await this.assignSkillRepository.save(skills, { data: request });
|
await this.assignSkillRepository.save(skills, { data: request });
|
||||||
setLogDataDiff(request, { before, after: skills });
|
setLogDataDiff(request, { before, after: skills });
|
||||||
|
|
||||||
|
|
@ -179,7 +156,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignCompetencyRepository.save(competencise, { data: request });
|
await this.assignCompetencyRepository.save(competencise, { data: request });
|
||||||
setLogDataDiff(request, { before, after: competencise });
|
setLogDataDiff(request, { before, after: competencise });
|
||||||
|
|
@ -195,7 +172,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignCompetencyGroupRepository.save(competencyGroups, {
|
await this.assignCompetencyGroupRepository.save(competencyGroups, {
|
||||||
data: request,
|
data: request,
|
||||||
|
|
@ -211,7 +188,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignOutputRepository.save(outputs, { data: request });
|
await this.assignOutputRepository.save(outputs, { data: request });
|
||||||
setLogDataDiff(request, { before, after: outputs });
|
setLogDataDiff(request, { before, after: outputs });
|
||||||
|
|
@ -226,7 +203,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignDirectorRepository.save(directors, { data: request });
|
await this.assignDirectorRepository.save(directors, { data: request });
|
||||||
setLogDataDiff(request, { before, after: directors });
|
setLogDataDiff(request, { before, after: directors });
|
||||||
|
|
@ -244,7 +221,7 @@ export class AssignController extends Controller {
|
||||||
async EditAssign(
|
async EditAssign(
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Request() request: RequestWithUser,
|
@Request() request: RequestWithUser,
|
||||||
@Body() requestBody: CreateAssign
|
@Body() requestBody: CreateAssign,
|
||||||
) {
|
) {
|
||||||
await new permission().PermissionUpdate(request, "SYS_PROBATION");
|
await new permission().PermissionUpdate(request, "SYS_PROBATION");
|
||||||
|
|
||||||
|
|
@ -254,10 +231,7 @@ export class AssignController extends Controller {
|
||||||
let before = assign;
|
let before = assign;
|
||||||
|
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const person = await this.personalRepository.findOne({
|
const person = await this.personalRepository.findOne({
|
||||||
|
|
@ -278,17 +252,15 @@ export class AssignController extends Controller {
|
||||||
};
|
};
|
||||||
|
|
||||||
await this.assignJobRepository.delete({ assign_id });
|
await this.assignJobRepository.delete({ assign_id });
|
||||||
const jobs = await requestBody.assign_jobs.map(
|
const jobs = await requestBody.assign_jobs.map((x: CreateAssignJob, index: number) => ({
|
||||||
(x: CreateAssignJob, index: number) => ({
|
...x,
|
||||||
...x,
|
id: index + 1,
|
||||||
id: index + 1,
|
assign_id: assign.id,
|
||||||
assign_id: assign.id,
|
createdUserId: request.user.sub,
|
||||||
createdUserId: request.user.sub,
|
createdFullName: request.user.name,
|
||||||
createdFullName: request.user.name,
|
updateUserId: request.user.sub,
|
||||||
updateUserId: request.user.sub,
|
updateFullName: request.user.name,
|
||||||
updateFullName: request.user.name,
|
}));
|
||||||
})
|
|
||||||
);
|
|
||||||
await this.assignJobRepository.save(jobs);
|
await this.assignJobRepository.save(jobs);
|
||||||
|
|
||||||
await this.assignKnowledgeRepository.delete({ assign_id });
|
await this.assignKnowledgeRepository.delete({ assign_id });
|
||||||
|
|
@ -301,36 +273,32 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignKnowledgeRepository.save(knowledges);
|
await this.assignKnowledgeRepository.save(knowledges);
|
||||||
|
|
||||||
await this.assignLawRepository.delete({ assign_id });
|
await this.assignLawRepository.delete({ assign_id });
|
||||||
const laws = await requestBody.assign_law.map(
|
const laws = await requestBody.assign_law.map((x: CreateAssignLaw, index: number) => ({
|
||||||
(x: CreateAssignLaw, index: number) => ({
|
ordering: index + 1,
|
||||||
ordering: index + 1,
|
law_id: x.id,
|
||||||
law_id: x.id,
|
assign_id: assign.id,
|
||||||
assign_id: assign.id,
|
createdUserId: request.user.sub,
|
||||||
createdUserId: request.user.sub,
|
createdFullName: request.user.name,
|
||||||
createdFullName: request.user.name,
|
updateUserId: request.user.sub,
|
||||||
updateUserId: request.user.sub,
|
updateFullName: request.user.name,
|
||||||
updateFullName: request.user.name,
|
}));
|
||||||
})
|
|
||||||
);
|
|
||||||
await this.assignLawRepository.save(laws);
|
await this.assignLawRepository.save(laws);
|
||||||
|
|
||||||
await this.assignSkillRepository.delete({ assign_id });
|
await this.assignSkillRepository.delete({ assign_id });
|
||||||
const skills = await requestBody.assign_skill.map(
|
const skills = await requestBody.assign_skill.map((x: CreateAssignSkill, index: number) => ({
|
||||||
(x: CreateAssignSkill, index: number) => ({
|
skill_id: index + 1,
|
||||||
skill_id: index + 1,
|
skill_level: x.level,
|
||||||
skill_level: x.level,
|
assign_id: assign.id,
|
||||||
assign_id: assign.id,
|
createdUserId: request.user.sub,
|
||||||
createdUserId: request.user.sub,
|
createdFullName: request.user.name,
|
||||||
createdFullName: request.user.name,
|
updateUserId: request.user.sub,
|
||||||
updateUserId: request.user.sub,
|
updateFullName: request.user.name,
|
||||||
updateFullName: request.user.name,
|
}));
|
||||||
})
|
|
||||||
);
|
|
||||||
await this.assignSkillRepository.save(skills);
|
await this.assignSkillRepository.save(skills);
|
||||||
|
|
||||||
await this.assignCompetencyRepository.delete({ assign_id });
|
await this.assignCompetencyRepository.delete({ assign_id });
|
||||||
|
|
@ -345,7 +313,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignCompetencyRepository.save(competencise);
|
await this.assignCompetencyRepository.save(competencise);
|
||||||
|
|
||||||
|
|
@ -361,7 +329,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignCompetencyGroupRepository.save(competencyGroups);
|
await this.assignCompetencyGroupRepository.save(competencyGroups);
|
||||||
|
|
||||||
|
|
@ -375,7 +343,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignOutputRepository.save(outputs);
|
await this.assignOutputRepository.save(outputs);
|
||||||
|
|
||||||
|
|
@ -390,7 +358,7 @@ export class AssignController extends Controller {
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
await this.assignDirectorRepository.save(directors);
|
await this.assignDirectorRepository.save(directors);
|
||||||
|
|
||||||
|
|
@ -469,10 +437,7 @@ export class AssignController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("assign-list")
|
@Get("assign-list")
|
||||||
async ListPersonal(
|
async ListPersonal(@Request() request: RequestWithUser, @Query() personal_id: string) {
|
||||||
@Request() request: RequestWithUser,
|
|
||||||
@Query() personal_id: string
|
|
||||||
) {
|
|
||||||
await new permission().PermissionGet(request, "SYS_PROBATION");
|
await new permission().PermissionGet(request, "SYS_PROBATION");
|
||||||
const lists = await this.assignRepository.find({
|
const lists = await this.assignRepository.find({
|
||||||
select: ["id", "round_no", "date_start", "date_finish"],
|
select: ["id", "round_no", "date_start", "date_finish"],
|
||||||
|
|
@ -500,14 +465,10 @@ export class AssignController extends Controller {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const commanderData = await (director.find(
|
const commanderData = await (director.find((x) => x.role == "commander") ?? null);
|
||||||
(x) => x.role == "commander"
|
|
||||||
) ?? null);
|
|
||||||
const commander = commanderData ? commanderData.fullname : null;
|
const commander = commanderData ? commanderData.fullname : null;
|
||||||
|
|
||||||
const chairmanData = await (director.find(
|
const chairmanData = await (director.find((x) => x.role == "chairman") ?? null);
|
||||||
(x) => x.role == "chairman"
|
|
||||||
) ?? null);
|
|
||||||
const chairman = chairmanData ? chairmanData.fullname : null;
|
const chairman = chairmanData ? chairmanData.fullname : null;
|
||||||
|
|
||||||
await result.push({
|
await result.push({
|
||||||
|
|
@ -516,7 +477,7 @@ export class AssignController extends Controller {
|
||||||
commander: commander,
|
commander: commander,
|
||||||
chairman: chairman,
|
chairman: chairman,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
return new HttpSuccess(result);
|
return new HttpSuccess(result);
|
||||||
|
|
@ -529,10 +490,7 @@ export class AssignController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("")
|
@Get("")
|
||||||
async GetAssign(
|
async GetAssign(@Query() assign_id: string, @Request() request: RequestWithUser) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
await new permission().PermissionUpdate(request, "SYS_PROBATION");
|
await new permission().PermissionUpdate(request, "SYS_PROBATION");
|
||||||
|
|
||||||
const assign = await this.assignRepository.findOne({
|
const assign = await this.assignRepository.findOne({
|
||||||
|
|
@ -553,10 +511,7 @@ export class AssignController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const profileData = await this.personalRepository.findOne({
|
const profileData = await this.personalRepository.findOne({
|
||||||
|
|
@ -651,12 +606,7 @@ export class AssignController extends Controller {
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const competencyData = await this.assignCompetencyRepository.find({
|
const competencyData = await this.assignCompetencyRepository.find({
|
||||||
select: [
|
select: ["competency_id", "competency_level", "competency_name", "competency_description"],
|
||||||
"competency_id",
|
|
||||||
"competency_level",
|
|
||||||
"competency_name",
|
|
||||||
"competency_description",
|
|
||||||
],
|
|
||||||
where: { assign_id },
|
where: { assign_id },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -667,17 +617,15 @@ export class AssignController extends Controller {
|
||||||
description: x.competency_description,
|
description: x.competency_description,
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const competencyGroupData = await this.assignCompetencyGroupRepository.find(
|
const competencyGroupData = await this.assignCompetencyGroupRepository.find({
|
||||||
{
|
select: [
|
||||||
select: [
|
"competency_group_id",
|
||||||
"competency_group_id",
|
"competency_group_level",
|
||||||
"competency_group_level",
|
"competency_group_name",
|
||||||
"competency_group_name",
|
"competency_group_description",
|
||||||
"competency_group_description",
|
],
|
||||||
],
|
where: { assign_id },
|
||||||
where: { assign_id },
|
});
|
||||||
}
|
|
||||||
);
|
|
||||||
const competency_groups = await competencyGroupData.map((x) => ({
|
const competency_groups = await competencyGroupData.map((x) => ({
|
||||||
id: x.competency_group_id,
|
id: x.competency_group_id,
|
||||||
level: x.competency_group_level,
|
level: x.competency_group_level,
|
||||||
|
|
@ -703,16 +651,13 @@ export class AssignController extends Controller {
|
||||||
...e,
|
...e,
|
||||||
name: e.fullname,
|
name: e.fullname,
|
||||||
label:
|
label:
|
||||||
e.fullname +
|
e.fullname + " " + (e.position ? `(${e.position}, ${e.posType}: ${e.posLevel})` : ""),
|
||||||
" " +
|
|
||||||
(e.position ? `(${e.position}, ${e.posType}: ${e.posLevel})` : ""),
|
|
||||||
Position: e.position, // report
|
Position: e.position, // report
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const commanderData = await (director.find((x) => x.role == "commander") ??
|
const commanderData = await (director.find((x) => x.role == "commander") ?? null);
|
||||||
null);
|
|
||||||
const commander = await (commanderData
|
const commander = await (commanderData
|
||||||
? {
|
? {
|
||||||
...commanderData,
|
...commanderData,
|
||||||
|
|
@ -727,8 +672,7 @@ export class AssignController extends Controller {
|
||||||
}
|
}
|
||||||
: null);
|
: null);
|
||||||
|
|
||||||
const chairmanData = await (director.find((x) => x.role == "chairman") ??
|
const chairmanData = await (director.find((x) => x.role == "chairman") ?? null);
|
||||||
null);
|
|
||||||
const chairman = await (chairmanData
|
const chairman = await (chairmanData
|
||||||
? {
|
? {
|
||||||
...chairmanData,
|
...chairmanData,
|
||||||
|
|
|
||||||
|
|
@ -15,12 +15,12 @@ import HttpStatusCode from "../interfaces/http-status";
|
||||||
import { RequestWithUser } from "../middlewares/user";
|
import { RequestWithUser } from "../middlewares/user";
|
||||||
import { findEndDate } from "../interfaces/utils";
|
import { findEndDate } from "../interfaces/utils";
|
||||||
|
|
||||||
@Route("api/v1/calculate")
|
@Route("api/v1/probation/calculate")
|
||||||
@Tags("ฟอร์มมอบหมายงาน")
|
@Tags("ฟอร์มมอบหมายงาน")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class CalculateController extends Controller {
|
export class CalculateController extends Controller {
|
||||||
|
|
@ -37,7 +37,7 @@ export class CalculateController extends Controller {
|
||||||
month: number;
|
month: number;
|
||||||
start_date: Date;
|
start_date: Date;
|
||||||
},
|
},
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const { month, start_date } = requestBody;
|
const { month, start_date } = requestBody;
|
||||||
const finish_date = findEndDate(month, start_date);
|
const finish_date = findEndDate(month, start_date);
|
||||||
|
|
|
||||||
|
|
@ -22,19 +22,18 @@ import { Personal } from "../entities/Personal";
|
||||||
import { Law } from "../entities/Law";
|
import { Law } from "../entities/Law";
|
||||||
import { Assign } from "../entities/Assign";
|
import { Assign } from "../entities/Assign";
|
||||||
|
|
||||||
@Route("api/v1/data-options")
|
@Route("api/v1/probation/data-options")
|
||||||
@Tags("Data Options")
|
@Tags("Data Options")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class DataOptionController extends Controller {
|
export class DataOptionController extends Controller {
|
||||||
private personalRepository = AppDataSource.getRepository(Personal);
|
private personalRepository = AppDataSource.getRepository(Personal);
|
||||||
private knowledgeRepository = AppDataSource.getRepository(Knowledge);
|
private knowledgeRepository = AppDataSource.getRepository(Knowledge);
|
||||||
private mapKnowledgeSkillRepository =
|
private mapKnowledgeSkillRepository = AppDataSource.getRepository(MapKnowledgeSkill);
|
||||||
AppDataSource.getRepository(MapKnowledgeSkill);
|
|
||||||
private skillRepository = AppDataSource.getRepository(Skill);
|
private skillRepository = AppDataSource.getRepository(Skill);
|
||||||
private lawRepository = AppDataSource.getRepository(Law);
|
private lawRepository = AppDataSource.getRepository(Law);
|
||||||
private assignRepository = AppDataSource.getRepository(Assign);
|
private assignRepository = AppDataSource.getRepository(Assign);
|
||||||
|
|
@ -46,10 +45,7 @@ export class DataOptionController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("knowledge")
|
@Get("knowledge")
|
||||||
async GetKnowledge(
|
async GetKnowledge(@Query() personal_id: string, @Request() request: RequestWithUser) {
|
||||||
@Query() personal_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const person = await this.personalRepository.findOne({
|
const person = await this.personalRepository.findOne({
|
||||||
where: { personal_id },
|
where: { personal_id },
|
||||||
});
|
});
|
||||||
|
|
@ -102,10 +98,7 @@ export class DataOptionController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("skill")
|
@Get("skill")
|
||||||
async GetSkill(
|
async GetSkill(@Query() personal_id: string, @Request() request: RequestWithUser) {
|
||||||
@Query() personal_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const person = await this.personalRepository.findOne({
|
const person = await this.personalRepository.findOne({
|
||||||
where: { personal_id },
|
where: { personal_id },
|
||||||
});
|
});
|
||||||
|
|
@ -223,10 +216,7 @@ export class DataOptionController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("law")
|
@Get("law")
|
||||||
async GetLaw(
|
async GetLaw(@Query() personal_id: string, @Request() request: RequestWithUser) {
|
||||||
@Query() personal_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const results = await this.lawRepository.find({
|
const results = await this.lawRepository.find({
|
||||||
select: ["id", "parent_id", "description", "status_select"],
|
select: ["id", "parent_id", "description", "status_select"],
|
||||||
where: {
|
where: {
|
||||||
|
|
@ -253,10 +243,7 @@ export class DataOptionController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("new-assign")
|
@Get("new-assign")
|
||||||
async NewAssign(
|
async NewAssign(@Query() personal_id: string, @Request() request: RequestWithUser) {
|
||||||
@Query() personal_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const person = await this.personalRepository.findOne({
|
const person = await this.personalRepository.findOne({
|
||||||
select: [
|
select: [
|
||||||
"personal_id",
|
"personal_id",
|
||||||
|
|
|
||||||
|
|
@ -22,25 +22,20 @@ import HttpError from "../interfaces/http-error";
|
||||||
import { Assign } from "../entities/Assign";
|
import { Assign } from "../entities/Assign";
|
||||||
import { Personal } from "../entities/Personal";
|
import { Personal } from "../entities/Personal";
|
||||||
import CallAPI from "../interfaces/call-api";
|
import CallAPI from "../interfaces/call-api";
|
||||||
import {
|
import { CreateEvaluateChairman, EvaluateChairman } from "../entities/EvaluateChairman";
|
||||||
CreateEvaluateChairman,
|
|
||||||
EvaluateChairman,
|
|
||||||
} from "../entities/EvaluateChairman";
|
|
||||||
|
|
||||||
@Route("api/v1/evaluate-chairman")
|
@Route("api/v1/probation/evaluate-chairman")
|
||||||
@Tags("แบบประเมินผล (คณะกรรมการ)")
|
@Tags("แบบประเมินผล (คณะกรรมการ)")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class EvaluateChairmanController extends Controller {
|
export class EvaluateChairmanController extends Controller {
|
||||||
private assignDirectorRepository =
|
private assignDirectorRepository = AppDataSource.getRepository(AssignDirector);
|
||||||
AppDataSource.getRepository(AssignDirector);
|
|
||||||
private assignRepository = AppDataSource.getRepository(Assign);
|
private assignRepository = AppDataSource.getRepository(Assign);
|
||||||
private evaluateChairmanRepository =
|
private evaluateChairmanRepository = AppDataSource.getRepository(EvaluateChairman);
|
||||||
AppDataSource.getRepository(EvaluateChairman);
|
|
||||||
private personalRepository = AppDataSource.getRepository(Personal);
|
private personalRepository = AppDataSource.getRepository(Personal);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -50,10 +45,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("create")
|
@Get("create")
|
||||||
async CreateEvaluate(
|
async CreateEvaluate(@Query() assign_id: string) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
where: {
|
where: {
|
||||||
|
|
@ -71,10 +63,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const profile = await (assign.profile
|
const profile = await (assign.profile
|
||||||
|
|
@ -82,10 +71,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
...assign.profile,
|
...assign.profile,
|
||||||
id: assign.profile.personal_id,
|
id: assign.profile.personal_id,
|
||||||
name:
|
name:
|
||||||
assign.profile.prefixName +
|
assign.profile.prefixName + assign.profile.firstName + " " + assign.profile.lastName,
|
||||||
assign.profile.firstName +
|
|
||||||
" " +
|
|
||||||
assign.profile.lastName,
|
|
||||||
Oc: assign.profile.organization,
|
Oc: assign.profile.organization,
|
||||||
}
|
}
|
||||||
: null);
|
: null);
|
||||||
|
|
@ -107,10 +93,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!directorData) {
|
if (!directorData) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let mentors = "";
|
let mentors = "";
|
||||||
|
|
@ -125,14 +108,10 @@ export class EvaluateChairmanController extends Controller {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const commanderData = await (directorData.find(
|
const commanderData = await (directorData.find((x) => x.role == "commander") ?? null);
|
||||||
(x) => x.role == "commander"
|
|
||||||
) ?? null);
|
|
||||||
const commander = commanderData ? commanderData.fullname : null;
|
const commander = commanderData ? commanderData.fullname : null;
|
||||||
|
|
||||||
const chairmanData = await (directorData.find(
|
const chairmanData = await (directorData.find((x) => x.role == "chairman") ?? null);
|
||||||
(x) => x.role == "chairman"
|
|
||||||
) ?? null);
|
|
||||||
const chairman = chairmanData ? chairmanData.fullname : null;
|
const chairman = chairmanData ? chairmanData.fullname : null;
|
||||||
|
|
||||||
return new HttpSuccess({
|
return new HttpSuccess({
|
||||||
|
|
@ -193,10 +172,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const experimenteeData = await this.personalRepository.find({
|
const experimenteeData = await this.personalRepository.find({
|
||||||
|
|
@ -223,10 +199,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!directorData) {
|
if (!directorData) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let mentors = "";
|
let mentors = "";
|
||||||
|
|
@ -241,14 +214,10 @@ export class EvaluateChairmanController extends Controller {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const commanderData = await (directorData.find(
|
const commanderData = await (directorData.find((x) => x.role == "commander") ?? null);
|
||||||
(x) => x.role == "commander"
|
|
||||||
) ?? null);
|
|
||||||
const commander = commanderData ? commanderData.fullname : null;
|
const commander = commanderData ? commanderData.fullname : null;
|
||||||
|
|
||||||
const chairmanData = await (directorData.find(
|
const chairmanData = await (directorData.find((x) => x.role == "chairman") ?? null);
|
||||||
(x) => x.role == "chairman"
|
|
||||||
) ?? null);
|
|
||||||
const chairman = chairmanData ? chairmanData.fullname : null;
|
const chairman = chairmanData ? chairmanData.fullname : null;
|
||||||
|
|
||||||
return new HttpSuccess({
|
return new HttpSuccess({
|
||||||
|
|
@ -271,7 +240,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
async PostData(
|
async PostData(
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Body() requestBody: CreateEvaluateChairman,
|
@Body() requestBody: CreateEvaluateChairman,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
|
|
@ -291,10 +260,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const postData: any = await {
|
const postData: any = await {
|
||||||
|
|
@ -313,9 +279,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
: 0,
|
: 0,
|
||||||
behavior_other_desc: requestBody.behavior_orther.text,
|
behavior_other_desc: requestBody.behavior_orther.text,
|
||||||
behavior_other_level:
|
behavior_other_level:
|
||||||
requestBody.behavior_orther.text != ""
|
requestBody.behavior_orther.text != "" ? Number(requestBody.behavior_orther.level) : 0,
|
||||||
? Number(requestBody.behavior_orther.level)
|
|
||||||
: 0,
|
|
||||||
|
|
||||||
createdUserId: request.user.sub,
|
createdUserId: request.user.sub,
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
|
|
@ -359,10 +323,10 @@ export class EvaluateChairmanController extends Controller {
|
||||||
*/
|
*/
|
||||||
@Put("")
|
@Put("")
|
||||||
async UpdateData(
|
async UpdateData(
|
||||||
@Query() assign_id: string,
|
// @Query() assign_id: string,
|
||||||
@Query() evaluate_id: string,
|
@Query() evaluate_id: string,
|
||||||
@Body() requestBody: CreateEvaluateChairman,
|
@Body() requestBody: CreateEvaluateChairman,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
let evaluate = await this.evaluateChairmanRepository.findOne({
|
let evaluate = await this.evaluateChairmanRepository.findOne({
|
||||||
where: { id: evaluate_id },
|
where: { id: evaluate_id },
|
||||||
|
|
@ -384,9 +348,7 @@ export class EvaluateChairmanController extends Controller {
|
||||||
? requestBody.achievement_other.text
|
? requestBody.achievement_other.text
|
||||||
: "";
|
: "";
|
||||||
evaluate.achievement_other_level =
|
evaluate.achievement_other_level =
|
||||||
requestBody.achievement_other.text != ""
|
requestBody.achievement_other.text != "" ? Number(requestBody.achievement_other.level) : 0;
|
||||||
? Number(requestBody.achievement_other.level)
|
|
||||||
: 0;
|
|
||||||
|
|
||||||
evaluate.conduct1_level = requestBody.conduct1_level;
|
evaluate.conduct1_level = requestBody.conduct1_level;
|
||||||
evaluate.conduct2_level = requestBody.conduct2_level;
|
evaluate.conduct2_level = requestBody.conduct2_level;
|
||||||
|
|
@ -402,24 +364,15 @@ export class EvaluateChairmanController extends Controller {
|
||||||
evaluate.discipline5_level = requestBody.discipline5_level;
|
evaluate.discipline5_level = requestBody.discipline5_level;
|
||||||
evaluate.behavior_other_desc = requestBody.behavior_orther.text;
|
evaluate.behavior_other_desc = requestBody.behavior_orther.text;
|
||||||
evaluate.behavior_other_level =
|
evaluate.behavior_other_level =
|
||||||
requestBody.behavior_orther.text != ""
|
requestBody.behavior_orther.text != "" ? Number(requestBody.behavior_orther.level) : 0;
|
||||||
? Number(requestBody.behavior_orther.level)
|
|
||||||
: 0;
|
|
||||||
evaluate.develop_orientation_score = requestBody.develop_orientation_score;
|
evaluate.develop_orientation_score = requestBody.develop_orientation_score;
|
||||||
evaluate.develop_self_learning_score =
|
evaluate.develop_self_learning_score = requestBody.develop_self_learning_score;
|
||||||
requestBody.develop_self_learning_score;
|
evaluate.develop_training_seminar_score = requestBody.develop_training_seminar_score;
|
||||||
evaluate.develop_training_seminar_score =
|
evaluate.develop_other_training_score = requestBody.develop_other_training_score;
|
||||||
requestBody.develop_training_seminar_score;
|
evaluate.develop_orientation_percent = requestBody.develop_orientation_percent;
|
||||||
evaluate.develop_other_training_score =
|
evaluate.develop_self_learning_percent = requestBody.develop_self_learning_percent;
|
||||||
requestBody.develop_other_training_score;
|
evaluate.develop_training_seminar_percent = requestBody.develop_training_seminar_percent;
|
||||||
evaluate.develop_orientation_percent =
|
evaluate.develop_other_training_percent = requestBody.develop_other_training_percent;
|
||||||
requestBody.develop_orientation_percent;
|
|
||||||
evaluate.develop_self_learning_percent =
|
|
||||||
requestBody.develop_self_learning_percent;
|
|
||||||
evaluate.develop_training_seminar_percent =
|
|
||||||
requestBody.develop_training_seminar_percent;
|
|
||||||
evaluate.develop_other_training_percent =
|
|
||||||
requestBody.develop_other_training_percent;
|
|
||||||
evaluate.develop_result = requestBody.develop_result;
|
evaluate.develop_result = requestBody.develop_result;
|
||||||
evaluate.achievement_score = requestBody.achievement_score;
|
evaluate.achievement_score = requestBody.achievement_score;
|
||||||
evaluate.achievement_score_total = requestBody.achievement_score_total;
|
evaluate.achievement_score_total = requestBody.achievement_score_total;
|
||||||
|
|
|
||||||
|
|
@ -20,27 +20,22 @@ import { AppDataSource } from "../database/data-source";
|
||||||
import { AssignDirector } from "../entities/AssignDirector";
|
import { AssignDirector } from "../entities/AssignDirector";
|
||||||
import HttpError from "../interfaces/http-error";
|
import HttpError from "../interfaces/http-error";
|
||||||
import { Assign } from "../entities/Assign";
|
import { Assign } from "../entities/Assign";
|
||||||
import {
|
import { CreateEvaluateCommander, EvaluateCommander } from "../entities/EvaluateCommander";
|
||||||
CreateEvaluateCommander,
|
|
||||||
EvaluateCommander,
|
|
||||||
} from "../entities/EvaluateCommander";
|
|
||||||
import { Personal } from "../entities/Personal";
|
import { Personal } from "../entities/Personal";
|
||||||
import CallAPI from "../interfaces/call-api";
|
import CallAPI from "../interfaces/call-api";
|
||||||
|
|
||||||
@Route("api/v1/evaluate")
|
@Route("api/v1/probation/evaluate")
|
||||||
@Tags("แบบประเมินผล (ผู้บังคับบัญชา)")
|
@Tags("แบบประเมินผล (ผู้บังคับบัญชา)")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class EvaluateController extends Controller {
|
export class EvaluateController extends Controller {
|
||||||
private assignDirectorRepository =
|
private assignDirectorRepository = AppDataSource.getRepository(AssignDirector);
|
||||||
AppDataSource.getRepository(AssignDirector);
|
|
||||||
private assignRepository = AppDataSource.getRepository(Assign);
|
private assignRepository = AppDataSource.getRepository(Assign);
|
||||||
private evaluateCommanderRepository =
|
private evaluateCommanderRepository = AppDataSource.getRepository(EvaluateCommander);
|
||||||
AppDataSource.getRepository(EvaluateCommander);
|
|
||||||
private personalRepository = AppDataSource.getRepository(Personal);
|
private personalRepository = AppDataSource.getRepository(Personal);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -50,10 +45,7 @@ export class EvaluateController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("create")
|
@Get("create")
|
||||||
async CreateEvaluate(
|
async CreateEvaluate(@Query() assign_id: string) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
where: {
|
where: {
|
||||||
|
|
@ -71,10 +63,7 @@ export class EvaluateController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const profile = await (assign.profile
|
const profile = await (assign.profile
|
||||||
|
|
@ -82,10 +71,7 @@ export class EvaluateController extends Controller {
|
||||||
...assign.profile,
|
...assign.profile,
|
||||||
id: assign.profile.personal_id,
|
id: assign.profile.personal_id,
|
||||||
name:
|
name:
|
||||||
assign.profile.prefixName +
|
assign.profile.prefixName + assign.profile.firstName + " " + assign.profile.lastName,
|
||||||
assign.profile.firstName +
|
|
||||||
" " +
|
|
||||||
assign.profile.lastName,
|
|
||||||
Oc: assign.profile.organization,
|
Oc: assign.profile.organization,
|
||||||
}
|
}
|
||||||
: null);
|
: null);
|
||||||
|
|
@ -103,14 +89,7 @@ export class EvaluateController extends Controller {
|
||||||
: findEndDate(evaluate_amount * 3, assign.date_start);
|
: findEndDate(evaluate_amount * 3, assign.date_start);
|
||||||
|
|
||||||
const commanderData = await this.assignDirectorRepository.find({
|
const commanderData = await this.assignDirectorRepository.find({
|
||||||
select: [
|
select: ["personal_id", "dated", "fullname", "position", "posType", "posLevel"],
|
||||||
"personal_id",
|
|
||||||
"dated",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
],
|
|
||||||
where: { personal_id: director_id },
|
where: { personal_id: director_id },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -176,10 +155,7 @@ export class EvaluateController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// const profile = await (assign.profile
|
// const profile = await (assign.profile
|
||||||
|
|
@ -208,14 +184,7 @@ export class EvaluateController extends Controller {
|
||||||
// : findEndDate(evaluate_amount * 3, assign.date_start);
|
// : findEndDate(evaluate_amount * 3, assign.date_start);
|
||||||
|
|
||||||
const directorData = await this.assignDirectorRepository.find({
|
const directorData = await this.assignDirectorRepository.find({
|
||||||
select: [
|
select: ["personal_id", "dated", "fullname", "position", "posType", "posLevel"],
|
||||||
"personal_id",
|
|
||||||
"dated",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
],
|
|
||||||
where: { personal_id: director_id },
|
where: { personal_id: director_id },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -262,7 +231,7 @@ export class EvaluateController extends Controller {
|
||||||
async PostData(
|
async PostData(
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Body() requestBody: CreateEvaluateCommander,
|
@Body() requestBody: CreateEvaluateCommander,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
|
|
@ -282,10 +251,7 @@ export class EvaluateController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const postData: any = await {
|
const postData: any = await {
|
||||||
|
|
@ -304,9 +270,7 @@ export class EvaluateController extends Controller {
|
||||||
: 0,
|
: 0,
|
||||||
behavior_other_desc: requestBody.behavior_orther.text,
|
behavior_other_desc: requestBody.behavior_orther.text,
|
||||||
behavior_other_level:
|
behavior_other_level:
|
||||||
requestBody.behavior_orther.text != ""
|
requestBody.behavior_orther.text != "" ? Number(requestBody.behavior_orther.level) : 0,
|
||||||
? Number(requestBody.behavior_orther.level)
|
|
||||||
: 0,
|
|
||||||
|
|
||||||
createdUserId: request.user.sub,
|
createdUserId: request.user.sub,
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
|
|
@ -350,10 +314,10 @@ export class EvaluateController extends Controller {
|
||||||
*/
|
*/
|
||||||
@Put("")
|
@Put("")
|
||||||
async UpdateData(
|
async UpdateData(
|
||||||
@Query() assign_id: string,
|
// @Query() assign_id: string,
|
||||||
@Query() evaluate_id: string,
|
@Query() evaluate_id: string,
|
||||||
@Body() requestBody: CreateEvaluateCommander,
|
@Body() requestBody: CreateEvaluateCommander,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
let evaluate = await this.evaluateCommanderRepository.findOne({
|
let evaluate = await this.evaluateCommanderRepository.findOne({
|
||||||
where: { id: evaluate_id },
|
where: { id: evaluate_id },
|
||||||
|
|
@ -376,9 +340,7 @@ export class EvaluateController extends Controller {
|
||||||
? requestBody.achievement_other.text
|
? requestBody.achievement_other.text
|
||||||
: "";
|
: "";
|
||||||
evaluate.achievement_other_level =
|
evaluate.achievement_other_level =
|
||||||
requestBody.achievement_other.text != ""
|
requestBody.achievement_other.text != "" ? Number(requestBody.achievement_other.level) : 0;
|
||||||
? Number(requestBody.achievement_other.level)
|
|
||||||
: 0;
|
|
||||||
|
|
||||||
evaluate.conduct1_level = requestBody.conduct1_level;
|
evaluate.conduct1_level = requestBody.conduct1_level;
|
||||||
evaluate.conduct2_level = requestBody.conduct2_level;
|
evaluate.conduct2_level = requestBody.conduct2_level;
|
||||||
|
|
@ -394,9 +356,7 @@ export class EvaluateController extends Controller {
|
||||||
evaluate.discipline5_level = requestBody.discipline5_level;
|
evaluate.discipline5_level = requestBody.discipline5_level;
|
||||||
evaluate.behavior_other_desc = requestBody.behavior_orther.text;
|
evaluate.behavior_other_desc = requestBody.behavior_orther.text;
|
||||||
evaluate.behavior_other_level =
|
evaluate.behavior_other_level =
|
||||||
requestBody.behavior_orther.text != ""
|
requestBody.behavior_orther.text != "" ? Number(requestBody.behavior_orther.level) : 0;
|
||||||
? Number(requestBody.behavior_orther.level)
|
|
||||||
: 0;
|
|
||||||
evaluate.behavior_strength_desc = requestBody.behavior_strength_desc;
|
evaluate.behavior_strength_desc = requestBody.behavior_strength_desc;
|
||||||
evaluate.behavior_improve_desc = requestBody.behavior_improve_desc;
|
evaluate.behavior_improve_desc = requestBody.behavior_improve_desc;
|
||||||
evaluate.orientation = requestBody.orientation;
|
evaluate.orientation = requestBody.orientation;
|
||||||
|
|
|
||||||
|
|
@ -22,34 +22,25 @@ import HttpError from "../interfaces/http-error";
|
||||||
import { Assign } from "../entities/Assign";
|
import { Assign } from "../entities/Assign";
|
||||||
import { Personal } from "../entities/Personal";
|
import { Personal } from "../entities/Personal";
|
||||||
import { AssignOutput } from "../entities/AssignOutput";
|
import { AssignOutput } from "../entities/AssignOutput";
|
||||||
import {
|
import { CreateEvaluateAssessor, EvaluateAssessor } from "../entities/EvaluateAssessor";
|
||||||
CreateEvaluateAssessor,
|
import { CreateEvaluateAchievement, EvaluateAchievement } from "../entities/EvaluateAchievement";
|
||||||
EvaluateAssessor,
|
|
||||||
} from "../entities/EvaluateAssessor";
|
|
||||||
import {
|
|
||||||
CreateEvaluateAchievement,
|
|
||||||
EvaluateAchievement,
|
|
||||||
} from "../entities/EvaluateAchievement";
|
|
||||||
import CallAPI from "../interfaces/call-api";
|
import CallAPI from "../interfaces/call-api";
|
||||||
|
|
||||||
@Route("api/v1/evaluate-record")
|
@Route("api/v1/probation/evaluate-record")
|
||||||
@Tags("แบบบันทึกผล")
|
@Tags("แบบบันทึกผล")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class EvaluateRecordController extends Controller {
|
export class EvaluateRecordController extends Controller {
|
||||||
private assignDirectorRepository =
|
private assignDirectorRepository = AppDataSource.getRepository(AssignDirector);
|
||||||
AppDataSource.getRepository(AssignDirector);
|
|
||||||
private assignRepository = AppDataSource.getRepository(Assign);
|
private assignRepository = AppDataSource.getRepository(Assign);
|
||||||
private personalRepository = AppDataSource.getRepository(Personal);
|
private personalRepository = AppDataSource.getRepository(Personal);
|
||||||
private assignOutputRepository = AppDataSource.getRepository(AssignOutput);
|
private assignOutputRepository = AppDataSource.getRepository(AssignOutput);
|
||||||
private evaluateAssessorRepository =
|
private evaluateAssessorRepository = AppDataSource.getRepository(EvaluateAssessor);
|
||||||
AppDataSource.getRepository(EvaluateAssessor);
|
private evaluateAchievementRepository = AppDataSource.getRepository(EvaluateAchievement);
|
||||||
private evaluateAchievementRepository =
|
|
||||||
AppDataSource.getRepository(EvaluateAchievement);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* API ดึงข้อมูลตอนกดสร้างแบบบันทึกผล
|
* API ดึงข้อมูลตอนกดสร้างแบบบันทึกผล
|
||||||
|
|
@ -58,19 +49,9 @@ export class EvaluateRecordController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("create")
|
@Get("create")
|
||||||
async GetCreate(
|
async GetCreate(@Query() assign_id: string) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const directorData = await this.assignDirectorRepository.findOne({
|
const directorData = await this.assignDirectorRepository.findOne({
|
||||||
select: [
|
select: ["personal_id", "dated", "fullname", "position", "posType", "posLevel"],
|
||||||
"personal_id",
|
|
||||||
"dated",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
],
|
|
||||||
where: {
|
where: {
|
||||||
assign_id,
|
assign_id,
|
||||||
role: "mentor",
|
role: "mentor",
|
||||||
|
|
@ -96,10 +77,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const profileData = await this.personalRepository.findOne({
|
const profileData = await this.personalRepository.findOne({
|
||||||
|
|
@ -122,11 +100,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
|
|
||||||
const profile = await {
|
const profile = await {
|
||||||
id: profileData.personal_id,
|
id: profileData.personal_id,
|
||||||
name:
|
name: profileData.prefixName + profileData.firstName + " " + profileData.lastName,
|
||||||
profileData.prefixName +
|
|
||||||
profileData.firstName +
|
|
||||||
" " +
|
|
||||||
profileData.lastName,
|
|
||||||
positionName: profileData.positionName,
|
positionName: profileData.positionName,
|
||||||
positionLevelName: profileData.positionLevelName,
|
positionLevelName: profileData.positionLevelName,
|
||||||
Oc: profileData.organization,
|
Oc: profileData.organization,
|
||||||
|
|
@ -153,22 +127,12 @@ export class EvaluateRecordController extends Controller {
|
||||||
: findEndDate(evaluate_amount * 2, assign.date_start));
|
: findEndDate(evaluate_amount * 2, assign.date_start));
|
||||||
|
|
||||||
var commanderData = await this.assignDirectorRepository.findOne({
|
var commanderData = await this.assignDirectorRepository.findOne({
|
||||||
select: [
|
select: ["personal_id", "dated", "fullname", "position", "posType", "posLevel"],
|
||||||
"personal_id",
|
|
||||||
"dated",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
],
|
|
||||||
where: { personal_id: director_id },
|
where: { personal_id: director_id },
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!commanderData) {
|
if (!commanderData) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลผู้บังคับบัญชา");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลผู้บังคับบัญชา"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const commander = await {
|
const commander = await {
|
||||||
|
|
@ -225,12 +189,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
const achievementData = await this.evaluateAchievementRepository.find({
|
const achievementData = await this.evaluateAchievementRepository.find({
|
||||||
select: [
|
select: ["output_desc", "evaluate_expect_level", "output_desc", "evaluate_output_level"],
|
||||||
"output_desc",
|
|
||||||
"evaluate_expect_level",
|
|
||||||
"output_desc",
|
|
||||||
"evaluate_output_level",
|
|
||||||
],
|
|
||||||
where: {
|
where: {
|
||||||
evaluate_id: evaluate.id,
|
evaluate_id: evaluate.id,
|
||||||
},
|
},
|
||||||
|
|
@ -304,20 +263,18 @@ export class EvaluateRecordController extends Controller {
|
||||||
|
|
||||||
await Promise.all(
|
await Promise.all(
|
||||||
evaluate.map(async (element: any, index: number) => {
|
evaluate.map(async (element: any, index: number) => {
|
||||||
const achievementData = await this.evaluateAchievementRepository.find(
|
const achievementData = await this.evaluateAchievementRepository.find({
|
||||||
{
|
select: [
|
||||||
select: [
|
"output_desc",
|
||||||
"output_desc",
|
"evaluate_expect_level",
|
||||||
"evaluate_expect_level",
|
"output_desc",
|
||||||
"output_desc",
|
"evaluate_output_level",
|
||||||
"evaluate_output_level",
|
],
|
||||||
],
|
where: {
|
||||||
where: {
|
evaluate_id: element.id,
|
||||||
evaluate_id: element.id,
|
},
|
||||||
},
|
order: { output_id: "ASC" },
|
||||||
order: { output_id: "ASC" },
|
});
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
const achievements = await achievementData.map((achievement) => {
|
const achievements = await achievementData.map((achievement) => {
|
||||||
return {
|
return {
|
||||||
|
|
@ -368,7 +325,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
updatedAt: element.updatedAt,
|
updatedAt: element.updatedAt,
|
||||||
achievements: achievements,
|
achievements: achievements,
|
||||||
};
|
};
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -379,10 +336,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const experimenteeData = await this.personalRepository.find({
|
const experimenteeData = await this.personalRepository.find({
|
||||||
|
|
@ -405,14 +359,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const directorData = await this.assignDirectorRepository.find({
|
const directorData = await this.assignDirectorRepository.find({
|
||||||
select: [
|
select: ["personal_id", "dated", "fullname", "position", "posType", "posLevel"],
|
||||||
"personal_id",
|
|
||||||
"dated",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
],
|
|
||||||
where: { personal_id: director_id },
|
where: { personal_id: director_id },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -440,7 +387,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
async PostData(
|
async PostData(
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Body() requestBody: CreateEvaluateAssessor,
|
@Body() requestBody: CreateEvaluateAssessor,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
|
|
@ -460,10 +407,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const postData: any = await {
|
const postData: any = await {
|
||||||
|
|
@ -482,9 +426,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
: 0,
|
: 0,
|
||||||
behavior_other_desc: requestBody.behavio_orther.text,
|
behavior_other_desc: requestBody.behavio_orther.text,
|
||||||
behavior_other_level:
|
behavior_other_level:
|
||||||
requestBody.behavio_orther.text != ""
|
requestBody.behavio_orther.text != "" ? Number(requestBody.behavio_orther.level) : 0,
|
||||||
? Number(requestBody.behavio_orther.level)
|
|
||||||
: 0,
|
|
||||||
behavior_strength_desc: requestBody.behavior_strength_desc,
|
behavior_strength_desc: requestBody.behavior_strength_desc,
|
||||||
behavior_improve_desc: requestBody.behavior_improve_desc,
|
behavior_improve_desc: requestBody.behavior_improve_desc,
|
||||||
orientation: requestBody.orientation,
|
orientation: requestBody.orientation,
|
||||||
|
|
@ -497,10 +439,9 @@ export class EvaluateRecordController extends Controller {
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
};
|
};
|
||||||
|
|
||||||
const evaluateAssessor = await this.evaluateAssessorRepository.save(
|
const evaluateAssessor = await this.evaluateAssessorRepository.save(postData, {
|
||||||
postData,
|
data: request,
|
||||||
{ data: request }
|
});
|
||||||
);
|
|
||||||
|
|
||||||
if (evaluateAssessor) {
|
if (evaluateAssessor) {
|
||||||
await Promise.all(
|
await Promise.all(
|
||||||
|
|
@ -513,9 +454,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
assessor_id: director_id,
|
assessor_id: director_id,
|
||||||
evaluate_expect_level: Number(expenct.level),
|
evaluate_expect_level: Number(expenct.level),
|
||||||
output_desc: requestBody.evaluate_ouptut[index].text,
|
output_desc: requestBody.evaluate_ouptut[index].text,
|
||||||
evaluate_output_level: Number(
|
evaluate_output_level: Number(requestBody.evaluate_ouptut[index].level),
|
||||||
requestBody.evaluate_ouptut[index].level
|
|
||||||
),
|
|
||||||
createdUserId: request.user.sub,
|
createdUserId: request.user.sub,
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
|
|
@ -524,7 +463,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
||||||
data: request,
|
data: request,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -564,7 +503,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Query() evaluate_id: string,
|
@Query() evaluate_id: string,
|
||||||
@Body() requestBody: CreateEvaluateAssessor,
|
@Body() requestBody: CreateEvaluateAssessor,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
|
|
@ -599,9 +538,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
? requestBody.achievement_other.text
|
? requestBody.achievement_other.text
|
||||||
: "";
|
: "";
|
||||||
evaluate.achievement_other_level =
|
evaluate.achievement_other_level =
|
||||||
requestBody.achievement_other.text != ""
|
requestBody.achievement_other.text != "" ? Number(requestBody.achievement_other.level) : 0;
|
||||||
? Number(requestBody.achievement_other.level)
|
|
||||||
: 0;
|
|
||||||
|
|
||||||
evaluate.achievement_strength_desc = requestBody.achievement_strength_desc;
|
evaluate.achievement_strength_desc = requestBody.achievement_strength_desc;
|
||||||
evaluate.achievement_improve_desc = requestBody.achievement_improve_desc;
|
evaluate.achievement_improve_desc = requestBody.achievement_improve_desc;
|
||||||
|
|
@ -619,9 +556,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
evaluate.discipline5_level = requestBody.discipline5_level;
|
evaluate.discipline5_level = requestBody.discipline5_level;
|
||||||
evaluate.behavior_other_desc = requestBody.behavio_orther.text;
|
evaluate.behavior_other_desc = requestBody.behavio_orther.text;
|
||||||
evaluate.behavior_other_level =
|
evaluate.behavior_other_level =
|
||||||
requestBody.behavio_orther.text != ""
|
requestBody.behavio_orther.text != "" ? Number(requestBody.behavio_orther.level) : 0;
|
||||||
? Number(requestBody.behavio_orther.level)
|
|
||||||
: 0;
|
|
||||||
evaluate.behavior_strength_desc = requestBody.behavior_strength_desc;
|
evaluate.behavior_strength_desc = requestBody.behavior_strength_desc;
|
||||||
evaluate.behavior_improve_desc = requestBody.behavior_improve_desc;
|
evaluate.behavior_improve_desc = requestBody.behavior_improve_desc;
|
||||||
evaluate.orientation = requestBody.orientation;
|
evaluate.orientation = requestBody.orientation;
|
||||||
|
|
@ -631,10 +566,9 @@ export class EvaluateRecordController extends Controller {
|
||||||
evaluate.updateUserId = request.user.sub;
|
evaluate.updateUserId = request.user.sub;
|
||||||
evaluate.updateFullName = request.user.name;
|
evaluate.updateFullName = request.user.name;
|
||||||
|
|
||||||
const evaluateAssessor = await this.evaluateAssessorRepository.save(
|
const evaluateAssessor = await this.evaluateAssessorRepository.save(evaluate, {
|
||||||
evaluate,
|
data: request,
|
||||||
{ data: request }
|
});
|
||||||
);
|
|
||||||
|
|
||||||
if (evaluateAssessor) {
|
if (evaluateAssessor) {
|
||||||
await this.evaluateAchievementRepository.delete({
|
await this.evaluateAchievementRepository.delete({
|
||||||
|
|
@ -649,9 +583,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
assessor_id: director_id,
|
assessor_id: director_id,
|
||||||
evaluate_expect_level: Number(expenct.level),
|
evaluate_expect_level: Number(expenct.level),
|
||||||
output_desc: requestBody.evaluate_ouptut[index].text,
|
output_desc: requestBody.evaluate_ouptut[index].text,
|
||||||
evaluate_output_level: Number(
|
evaluate_output_level: Number(requestBody.evaluate_ouptut[index].level),
|
||||||
requestBody.evaluate_ouptut[index].level
|
|
||||||
),
|
|
||||||
createdUserId: request.user.sub,
|
createdUserId: request.user.sub,
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
|
|
@ -660,7 +592,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
||||||
data: request,
|
data: request,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -676,19 +608,9 @@ export class EvaluateRecordController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("create/commander")
|
@Get("create/commander")
|
||||||
async GetCreateCommander(
|
async GetCreateCommander(@Query() assign_id: string) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const directorData = await this.assignDirectorRepository.findOne({
|
const directorData = await this.assignDirectorRepository.findOne({
|
||||||
select: [
|
select: ["personal_id", "dated", "fullname", "position", "posType", "posLevel"],
|
||||||
"personal_id",
|
|
||||||
"dated",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
],
|
|
||||||
where: {
|
where: {
|
||||||
assign_id,
|
assign_id,
|
||||||
role: "commander",
|
role: "commander",
|
||||||
|
|
@ -714,10 +636,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const profileData = await this.personalRepository.findOne({
|
const profileData = await this.personalRepository.findOne({
|
||||||
|
|
@ -740,11 +659,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
|
|
||||||
const profile = await {
|
const profile = await {
|
||||||
id: profileData.personal_id,
|
id: profileData.personal_id,
|
||||||
name:
|
name: profileData.prefixName + profileData.firstName + " " + profileData.lastName,
|
||||||
profileData.prefixName +
|
|
||||||
profileData.firstName +
|
|
||||||
" " +
|
|
||||||
profileData.lastName,
|
|
||||||
positionName: profileData.positionName,
|
positionName: profileData.positionName,
|
||||||
positionLevelName: profileData.positionLevelName,
|
positionLevelName: profileData.positionLevelName,
|
||||||
Oc: profileData.organization,
|
Oc: profileData.organization,
|
||||||
|
|
@ -788,10 +703,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("commander")
|
@Get("commander")
|
||||||
async GetDataCommander(
|
async GetDataCommander(@Query() assign_id: string, @Query() evaluate_no?: string) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Query() evaluate_no?: string
|
|
||||||
) {
|
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
where: {
|
where: {
|
||||||
|
|
@ -821,12 +733,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
const achievementData = await this.evaluateAchievementRepository.find({
|
const achievementData = await this.evaluateAchievementRepository.find({
|
||||||
select: [
|
select: ["output_desc", "evaluate_expect_level", "output_desc", "evaluate_output_level"],
|
||||||
"output_desc",
|
|
||||||
"evaluate_expect_level",
|
|
||||||
"output_desc",
|
|
||||||
"evaluate_output_level",
|
|
||||||
],
|
|
||||||
where: {
|
where: {
|
||||||
evaluate_id: evaluate.id,
|
evaluate_id: evaluate.id,
|
||||||
},
|
},
|
||||||
|
|
@ -900,20 +807,18 @@ export class EvaluateRecordController extends Controller {
|
||||||
|
|
||||||
await Promise.all(
|
await Promise.all(
|
||||||
evaluate.map(async (element: any, index: number) => {
|
evaluate.map(async (element: any, index: number) => {
|
||||||
const achievementData = await this.evaluateAchievementRepository.find(
|
const achievementData = await this.evaluateAchievementRepository.find({
|
||||||
{
|
select: [
|
||||||
select: [
|
"output_desc",
|
||||||
"output_desc",
|
"evaluate_expect_level",
|
||||||
"evaluate_expect_level",
|
"output_desc",
|
||||||
"output_desc",
|
"evaluate_output_level",
|
||||||
"evaluate_output_level",
|
],
|
||||||
],
|
where: {
|
||||||
where: {
|
evaluate_id: element.id,
|
||||||
evaluate_id: element.id,
|
},
|
||||||
},
|
order: { output_id: "ASC" },
|
||||||
order: { output_id: "ASC" },
|
});
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
const achievements = await achievementData.map((achievement) => {
|
const achievements = await achievementData.map((achievement) => {
|
||||||
return {
|
return {
|
||||||
|
|
@ -964,7 +869,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
updatedAt: element.updatedAt,
|
updatedAt: element.updatedAt,
|
||||||
achievements: achievements,
|
achievements: achievements,
|
||||||
};
|
};
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -975,10 +880,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const experimenteeData = await this.personalRepository.find({
|
const experimenteeData = await this.personalRepository.find({
|
||||||
|
|
@ -1001,14 +903,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const directorData = await this.assignDirectorRepository.find({
|
const directorData = await this.assignDirectorRepository.find({
|
||||||
select: [
|
select: ["personal_id", "dated", "fullname", "position", "posType", "posLevel"],
|
||||||
"personal_id",
|
|
||||||
"dated",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
],
|
|
||||||
where: { personal_id: director_id },
|
where: { personal_id: director_id },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -1036,7 +931,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
async PostDataCommander(
|
async PostDataCommander(
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Body() requestBody: CreateEvaluateAssessor,
|
@Body() requestBody: CreateEvaluateAssessor,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
|
|
@ -1056,10 +951,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const postData: any = await {
|
const postData: any = await {
|
||||||
|
|
@ -1078,9 +970,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
: 0,
|
: 0,
|
||||||
behavior_other_desc: requestBody.behavio_orther.text,
|
behavior_other_desc: requestBody.behavio_orther.text,
|
||||||
behavior_other_level:
|
behavior_other_level:
|
||||||
requestBody.behavio_orther.text != ""
|
requestBody.behavio_orther.text != "" ? Number(requestBody.behavio_orther.level) : 0,
|
||||||
? Number(requestBody.behavio_orther.level)
|
|
||||||
: 0,
|
|
||||||
behavior_strength_desc: requestBody.behavior_strength_desc,
|
behavior_strength_desc: requestBody.behavior_strength_desc,
|
||||||
behavior_improve_desc: requestBody.behavior_improve_desc,
|
behavior_improve_desc: requestBody.behavior_improve_desc,
|
||||||
orientation: requestBody.orientation,
|
orientation: requestBody.orientation,
|
||||||
|
|
@ -1093,10 +983,9 @@ export class EvaluateRecordController extends Controller {
|
||||||
updateFullName: request.user.name,
|
updateFullName: request.user.name,
|
||||||
};
|
};
|
||||||
|
|
||||||
const evaluateAssessor = await this.evaluateAssessorRepository.save(
|
const evaluateAssessor = await this.evaluateAssessorRepository.save(postData, {
|
||||||
postData,
|
data: request,
|
||||||
{ data: request }
|
});
|
||||||
);
|
|
||||||
if (evaluateAssessor) {
|
if (evaluateAssessor) {
|
||||||
await Promise.all(
|
await Promise.all(
|
||||||
requestBody.evaluate_expenct_level.map(async (expenct, index) => {
|
requestBody.evaluate_expenct_level.map(async (expenct, index) => {
|
||||||
|
|
@ -1107,9 +996,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
assessor_id: director_id,
|
assessor_id: director_id,
|
||||||
evaluate_expect_level: Number(expenct.level),
|
evaluate_expect_level: Number(expenct.level),
|
||||||
output_desc: requestBody.evaluate_ouptut[index].text,
|
output_desc: requestBody.evaluate_ouptut[index].text,
|
||||||
evaluate_output_level: Number(
|
evaluate_output_level: Number(requestBody.evaluate_ouptut[index].level),
|
||||||
requestBody.evaluate_ouptut[index].level
|
|
||||||
),
|
|
||||||
createdUserId: request.user.sub,
|
createdUserId: request.user.sub,
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
|
|
@ -1118,7 +1005,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
||||||
data: request,
|
data: request,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1157,7 +1044,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Query() evaluate_id: string,
|
@Query() evaluate_id: string,
|
||||||
@Body() requestBody: CreateEvaluateAssessor,
|
@Body() requestBody: CreateEvaluateAssessor,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
|
|
@ -1191,9 +1078,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
? requestBody.achievement_other.text
|
? requestBody.achievement_other.text
|
||||||
: "";
|
: "";
|
||||||
evaluate.achievement_other_level =
|
evaluate.achievement_other_level =
|
||||||
requestBody.achievement_other.text != ""
|
requestBody.achievement_other.text != "" ? Number(requestBody.achievement_other.level) : 0;
|
||||||
? Number(requestBody.achievement_other.level)
|
|
||||||
: 0;
|
|
||||||
|
|
||||||
evaluate.achievement_strength_desc = requestBody.achievement_strength_desc;
|
evaluate.achievement_strength_desc = requestBody.achievement_strength_desc;
|
||||||
evaluate.achievement_improve_desc = requestBody.achievement_improve_desc;
|
evaluate.achievement_improve_desc = requestBody.achievement_improve_desc;
|
||||||
|
|
@ -1211,9 +1096,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
evaluate.discipline5_level = requestBody.discipline5_level;
|
evaluate.discipline5_level = requestBody.discipline5_level;
|
||||||
evaluate.behavior_other_desc = requestBody.behavio_orther.text;
|
evaluate.behavior_other_desc = requestBody.behavio_orther.text;
|
||||||
evaluate.behavior_other_level =
|
evaluate.behavior_other_level =
|
||||||
requestBody.behavio_orther.text != ""
|
requestBody.behavio_orther.text != "" ? Number(requestBody.behavio_orther.level) : 0;
|
||||||
? Number(requestBody.behavio_orther.level)
|
|
||||||
: 0;
|
|
||||||
evaluate.behavior_strength_desc = requestBody.behavior_strength_desc;
|
evaluate.behavior_strength_desc = requestBody.behavior_strength_desc;
|
||||||
evaluate.behavior_improve_desc = requestBody.behavior_improve_desc;
|
evaluate.behavior_improve_desc = requestBody.behavior_improve_desc;
|
||||||
evaluate.orientation = requestBody.orientation;
|
evaluate.orientation = requestBody.orientation;
|
||||||
|
|
@ -1223,10 +1106,9 @@ export class EvaluateRecordController extends Controller {
|
||||||
evaluate.updateUserId = request.user.sub;
|
evaluate.updateUserId = request.user.sub;
|
||||||
evaluate.updateFullName = request.user.name;
|
evaluate.updateFullName = request.user.name;
|
||||||
|
|
||||||
const evaluateAssessor = await this.evaluateAssessorRepository.save(
|
const evaluateAssessor = await this.evaluateAssessorRepository.save(evaluate, {
|
||||||
evaluate,
|
data: request,
|
||||||
{ data: request }
|
});
|
||||||
);
|
|
||||||
|
|
||||||
if (evaluateAssessor) {
|
if (evaluateAssessor) {
|
||||||
await this.evaluateAchievementRepository.delete({
|
await this.evaluateAchievementRepository.delete({
|
||||||
|
|
@ -1241,9 +1123,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
assessor_id: director_id,
|
assessor_id: director_id,
|
||||||
evaluate_expect_level: Number(expenct.level),
|
evaluate_expect_level: Number(expenct.level),
|
||||||
output_desc: requestBody.evaluate_ouptut[index].text,
|
output_desc: requestBody.evaluate_ouptut[index].text,
|
||||||
evaluate_output_level: Number(
|
evaluate_output_level: Number(requestBody.evaluate_ouptut[index].level),
|
||||||
requestBody.evaluate_ouptut[index].level
|
|
||||||
),
|
|
||||||
createdUserId: request.user.sub,
|
createdUserId: request.user.sub,
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
updateUserId: request.user.sub,
|
updateUserId: request.user.sub,
|
||||||
|
|
@ -1252,7 +1132,7 @@ export class EvaluateRecordController extends Controller {
|
||||||
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
await this.evaluateAchievementRepository.save(evaluateAchievement, {
|
||||||
data: request,
|
data: request,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -20,35 +20,25 @@ import { AppDataSource } from "../database/data-source";
|
||||||
import { AssignDirector } from "../entities/AssignDirector";
|
import { AssignDirector } from "../entities/AssignDirector";
|
||||||
import HttpError from "../interfaces/http-error";
|
import HttpError from "../interfaces/http-error";
|
||||||
import { Assign } from "../entities/Assign";
|
import { Assign } from "../entities/Assign";
|
||||||
import {
|
|
||||||
CreateEvaluateCommander,
|
|
||||||
EvaluateCommander,
|
|
||||||
} from "../entities/EvaluateCommander";
|
|
||||||
import { Personal } from "../entities/Personal";
|
import { Personal } from "../entities/Personal";
|
||||||
import CallAPI from "../interfaces/call-api";
|
import CallAPI from "../interfaces/call-api";
|
||||||
import { EvaluateChairman } from "../entities/EvaluateChairman";
|
import { EvaluateChairman } from "../entities/EvaluateChairman";
|
||||||
import {
|
import { CreateEvaluateResult, EvaluateResult } from "../entities/EvaluateResult";
|
||||||
CreateEvaluateResult,
|
|
||||||
EvaluateResult,
|
|
||||||
} from "../entities/EvaluateResult";
|
|
||||||
|
|
||||||
@Route("api/v1/evaluate-result")
|
@Route("api/v1/probation/evaluate-result")
|
||||||
@Tags("แบบรายงานการประเมินฯ")
|
@Tags("แบบรายงานการประเมินฯ")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class EvaluateResultController extends Controller {
|
export class EvaluateResultController extends Controller {
|
||||||
private assignDirectorRepository =
|
private assignDirectorRepository = AppDataSource.getRepository(AssignDirector);
|
||||||
AppDataSource.getRepository(AssignDirector);
|
|
||||||
private assignRepository = AppDataSource.getRepository(Assign);
|
private assignRepository = AppDataSource.getRepository(Assign);
|
||||||
private evaluateChairmanRepository =
|
private evaluateChairmanRepository = AppDataSource.getRepository(EvaluateChairman);
|
||||||
AppDataSource.getRepository(EvaluateChairman);
|
|
||||||
private personalRepository = AppDataSource.getRepository(Personal);
|
private personalRepository = AppDataSource.getRepository(Personal);
|
||||||
private evaluateResultRepository =
|
private evaluateResultRepository = AppDataSource.getRepository(EvaluateResult);
|
||||||
AppDataSource.getRepository(EvaluateResult);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* API ข้อมูลตอนกดสร้างแบบรายงานการประเมินฯ
|
* API ข้อมูลตอนกดสร้างแบบรายงานการประเมินฯ
|
||||||
|
|
@ -57,19 +47,13 @@ export class EvaluateResultController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("create")
|
@Get("create")
|
||||||
async CreateEvaluate(
|
async CreateEvaluate(@Query() assign_id: string) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const assign = await this.assignRepository.findOne({
|
const assign = await this.assignRepository.findOne({
|
||||||
relations: ["profile"],
|
relations: ["profile"],
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const profile = await (assign.profile
|
const profile = await (assign.profile
|
||||||
|
|
@ -77,10 +61,7 @@ export class EvaluateResultController extends Controller {
|
||||||
...assign.profile,
|
...assign.profile,
|
||||||
id: assign.profile.personal_id,
|
id: assign.profile.personal_id,
|
||||||
name:
|
name:
|
||||||
assign.profile.prefixName +
|
assign.profile.prefixName + assign.profile.firstName + " " + assign.profile.lastName,
|
||||||
assign.profile.firstName +
|
|
||||||
" " +
|
|
||||||
assign.profile.lastName,
|
|
||||||
Oc: assign.profile.organization,
|
Oc: assign.profile.organization,
|
||||||
}
|
}
|
||||||
: null);
|
: null);
|
||||||
|
|
@ -90,10 +71,7 @@ export class EvaluateResultController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!directorData) {
|
if (!directorData) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let mentors = "";
|
let mentors = "";
|
||||||
|
|
@ -108,14 +86,10 @@ export class EvaluateResultController extends Controller {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const commanderData = await (directorData.find(
|
const commanderData = await (directorData.find((x) => x.role == "commander") ?? null);
|
||||||
(x) => x.role == "commander"
|
|
||||||
) ?? null);
|
|
||||||
const commander = commanderData ? commanderData.fullname : null;
|
const commander = commanderData ? commanderData.fullname : null;
|
||||||
|
|
||||||
const chairmanData = await (directorData.find(
|
const chairmanData = await (directorData.find((x) => x.role == "chairman") ?? null);
|
||||||
(x) => x.role == "chairman"
|
|
||||||
) ?? null);
|
|
||||||
const chairman = chairmanData ? chairmanData.fullname : null;
|
const chairman = chairmanData ? chairmanData.fullname : null;
|
||||||
|
|
||||||
const resultData = await this.evaluateChairmanRepository.findOne({
|
const resultData = await this.evaluateChairmanRepository.findOne({
|
||||||
|
|
@ -193,10 +167,7 @@ export class EvaluateResultController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const experimenteeData = await this.personalRepository.find({
|
const experimenteeData = await this.personalRepository.find({
|
||||||
|
|
@ -223,10 +194,7 @@ export class EvaluateResultController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!directorData) {
|
if (!directorData) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลผู้ดูแล ผู้บังคับบัญชาและประธาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let mentors = "";
|
let mentors = "";
|
||||||
|
|
@ -241,14 +209,10 @@ export class EvaluateResultController extends Controller {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const commanderData = await (directorData.find(
|
const commanderData = await (directorData.find((x) => x.role == "commander") ?? null);
|
||||||
(x) => x.role == "commander"
|
|
||||||
) ?? null);
|
|
||||||
const commander = commanderData ? commanderData.fullname : null;
|
const commander = commanderData ? commanderData.fullname : null;
|
||||||
|
|
||||||
const chairmanData = await (directorData.find(
|
const chairmanData = await (directorData.find((x) => x.role == "chairman") ?? null);
|
||||||
(x) => x.role == "chairman"
|
|
||||||
) ?? null);
|
|
||||||
const chairman = chairmanData ? chairmanData.fullname : null;
|
const chairman = chairmanData ? chairmanData.fullname : null;
|
||||||
|
|
||||||
return new HttpSuccess({
|
return new HttpSuccess({
|
||||||
|
|
@ -271,7 +235,7 @@ export class EvaluateResultController extends Controller {
|
||||||
async PostData(
|
async PostData(
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Body() requestBody: CreateEvaluateResult,
|
@Body() requestBody: CreateEvaluateResult,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const director = await this.assignDirectorRepository.findOne({
|
const director = await this.assignDirectorRepository.findOne({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
|
|
@ -291,10 +255,7 @@ export class EvaluateResultController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const postData: any = await {
|
const postData: any = await {
|
||||||
|
|
@ -304,8 +265,7 @@ export class EvaluateResultController extends Controller {
|
||||||
no: 1,
|
no: 1,
|
||||||
personal_id: assign.personal_id,
|
personal_id: assign.personal_id,
|
||||||
date_start: requestBody.start_date,
|
date_start: requestBody.start_date,
|
||||||
expand_month:
|
expand_month: requestBody.pass_result == 3 ? Number(requestBody.expand_month) : 0,
|
||||||
requestBody.pass_result == 3 ? Number(requestBody.expand_month) : 0,
|
|
||||||
|
|
||||||
createdUserId: request.user.sub,
|
createdUserId: request.user.sub,
|
||||||
createdFullName: request.user.name,
|
createdFullName: request.user.name,
|
||||||
|
|
@ -366,7 +326,7 @@ export class EvaluateResultController extends Controller {
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Query() evaluate_id: string,
|
@Query() evaluate_id: string,
|
||||||
@Body() requestBody: CreateEvaluateResult,
|
@Body() requestBody: CreateEvaluateResult,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
let evaluate = await this.evaluateResultRepository.findOne({
|
let evaluate = await this.evaluateResultRepository.findOne({
|
||||||
where: { id: evaluate_id },
|
where: { id: evaluate_id },
|
||||||
|
|
@ -382,8 +342,7 @@ export class EvaluateResultController extends Controller {
|
||||||
evaluate.date_finish = requestBody.date_finish;
|
evaluate.date_finish = requestBody.date_finish;
|
||||||
evaluate.develop_complete = requestBody.develop_complete;
|
evaluate.develop_complete = requestBody.develop_complete;
|
||||||
evaluate.pass_result = requestBody.pass_result;
|
evaluate.pass_result = requestBody.pass_result;
|
||||||
evaluate.expand_month =
|
evaluate.expand_month = requestBody.pass_result == 3 ? requestBody.expand_month : 0;
|
||||||
requestBody.pass_result == 3 ? requestBody.expand_month : 0;
|
|
||||||
evaluate.reson = requestBody.reson;
|
evaluate.reson = requestBody.reson;
|
||||||
evaluate.chairman_dated = requestBody.chairman_dated;
|
evaluate.chairman_dated = requestBody.chairman_dated;
|
||||||
|
|
||||||
|
|
@ -400,10 +359,7 @@ export class EvaluateResultController extends Controller {
|
||||||
where: { id: assign_id },
|
where: { id: assign_id },
|
||||||
});
|
});
|
||||||
if (!assign) {
|
if (!assign) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลแบบมอบหมายงาน");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลแบบมอบหมายงาน"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
const personal = await this.personalRepository.findOne({
|
const personal = await this.personalRepository.findOne({
|
||||||
where: { personal_id: assign.personal_id },
|
where: { personal_id: assign.personal_id },
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { Controller, Get, Route, Security, Tags } from "tsoa";
|
import { Controller, Get, Route, Tags } from "tsoa";
|
||||||
|
|
||||||
@Route("/hello")
|
@Route("/probation/hello")
|
||||||
@Tags("Test")
|
@Tags("Test")
|
||||||
// @Security("bearerAuth")
|
// @Security("bearerAuth")
|
||||||
export class AppController extends Controller {
|
export class AppController extends Controller {
|
||||||
|
|
|
||||||
|
|
@ -21,12 +21,12 @@ import { Personal, PostPersonal } from "../entities/Personal";
|
||||||
import permission from "../interfaces/permission";
|
import permission from "../interfaces/permission";
|
||||||
import { Assign } from "../entities/Assign";
|
import { Assign } from "../entities/Assign";
|
||||||
|
|
||||||
@Route("api/v1/personal")
|
@Route("api/v1/probation/personal")
|
||||||
@Tags("Personal")
|
@Tags("Personal")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class PersonalController extends Controller {
|
export class PersonalController extends Controller {
|
||||||
|
|
@ -40,43 +40,25 @@ export class PersonalController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Post("add")
|
@Post("add")
|
||||||
async AddPersonal(
|
async AddPersonal(@Body() requestBody: PostPersonal, @Request() request: RequestWithUser) {
|
||||||
@Body() requestBody: PostPersonal,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
await new permission().PermissionCreate(request, "SYS_PROBATION");
|
await new permission().PermissionCreate(request, "SYS_PROBATION");
|
||||||
|
|
||||||
const checkPersonal: number = await this.personalRepository.count({
|
const checkPersonal: number = await this.personalRepository.count({
|
||||||
where: { personal_id: requestBody.id },
|
where: { personal_id: requestBody.id },
|
||||||
});
|
});
|
||||||
if (checkPersonal > 0) {
|
if (checkPersonal > 0) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.BAD_REQUEST, "ผู้ทดลองปฏิบัติหน้าที่ราชการนี้มีอยู่แล้ว");
|
||||||
HttpStatusCode.BAD_REQUEST,
|
|
||||||
"ผู้ทดลองปฏิบัติหน้าที่ราชการนี้มีอยู่แล้ว"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let organization = await (requestBody.orgChild4Name
|
let organization = await (requestBody.orgChild4Name ? requestBody.orgChild4Name + "/" : "");
|
||||||
? requestBody.orgChild4Name + "/"
|
organization += await (requestBody.orgChild3Name ? requestBody.orgChild3Name + "/" : "");
|
||||||
: "");
|
organization += await (requestBody.orgChild2Name ? requestBody.orgChild2Name + "/" : "");
|
||||||
organization += await (requestBody.orgChild3Name
|
organization += await (requestBody.orgChild1Name ? requestBody.orgChild1Name + "/" : "");
|
||||||
? requestBody.orgChild3Name + "/"
|
organization += await (requestBody.orgRootName ? requestBody.orgRootName : "");
|
||||||
: "");
|
|
||||||
organization += await (requestBody.orgChild2Name
|
|
||||||
? requestBody.orgChild2Name + "/"
|
|
||||||
: "");
|
|
||||||
organization += await (requestBody.orgChild1Name
|
|
||||||
? requestBody.orgChild1Name + "/"
|
|
||||||
: "");
|
|
||||||
organization += await (requestBody.orgRootName
|
|
||||||
? requestBody.orgRootName
|
|
||||||
: "");
|
|
||||||
|
|
||||||
const personalData = Object.assign(new Personal());
|
const personalData = Object.assign(new Personal());
|
||||||
personalData.personal_id = requestBody.id;
|
personalData.personal_id = requestBody.id;
|
||||||
personalData.order_number = requestBody.order_number
|
personalData.order_number = requestBody.order_number ? requestBody.order_number : "";
|
||||||
? requestBody.order_number
|
|
||||||
: "";
|
|
||||||
personalData.probation_status = 1;
|
personalData.probation_status = 1;
|
||||||
personalData.createdUserId = request.user.sub;
|
personalData.createdUserId = request.user.sub;
|
||||||
personalData.createdFullName = request.user.name;
|
personalData.createdFullName = request.user.name;
|
||||||
|
|
@ -87,12 +69,8 @@ export class PersonalController extends Controller {
|
||||||
personalData.firstName = requestBody.firstName;
|
personalData.firstName = requestBody.firstName;
|
||||||
personalData.lastName = requestBody.lastName;
|
personalData.lastName = requestBody.lastName;
|
||||||
personalData.isProbation = requestBody.isProbation ? 1 : 0;
|
personalData.isProbation = requestBody.isProbation ? 1 : 0;
|
||||||
personalData.positionLevelName = requestBody.posLevelName
|
personalData.positionLevelName = requestBody.posLevelName ? requestBody.posLevelName : "";
|
||||||
? requestBody.posLevelName
|
personalData.positionName = requestBody.position ? requestBody.position : "";
|
||||||
: "";
|
|
||||||
personalData.positionName = requestBody.position
|
|
||||||
? requestBody.position
|
|
||||||
: "";
|
|
||||||
personalData.positionLineName = requestBody.posLineName;
|
personalData.positionLineName = requestBody.posLineName;
|
||||||
personalData.positionTypeName = requestBody.posTypeName;
|
personalData.positionTypeName = requestBody.posTypeName;
|
||||||
personalData.posNo = requestBody.posNo ? requestBody.posNo : "";
|
personalData.posNo = requestBody.posNo ? requestBody.posNo : "";
|
||||||
|
|
@ -122,10 +100,7 @@ export class PersonalController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!lists) {
|
if (!lists) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.INTERNAL_SERVER_ERROR, "ไม่สามารถแสดงข้อมูลได้");
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
|
||||||
"ไม่สามารถแสดงข้อมูลได้"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let result: any = [];
|
let result: any = [];
|
||||||
|
|
@ -148,7 +123,7 @@ export class PersonalController extends Controller {
|
||||||
order_number: item.order_number,
|
order_number: item.order_number,
|
||||||
probation_status: item.probation_status,
|
probation_status: item.probation_status,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
return new HttpSuccess(result);
|
return new HttpSuccess(result);
|
||||||
|
|
@ -161,10 +136,7 @@ export class PersonalController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("")
|
@Get("")
|
||||||
async GetPersonal(
|
async GetPersonal(@Request() request: RequestWithUser, @Query() personal_id: string) {
|
||||||
@Request() request: RequestWithUser,
|
|
||||||
@Query() personal_id: string
|
|
||||||
) {
|
|
||||||
await new permission().PermissionList(request, "SYS_PROBATION");
|
await new permission().PermissionList(request, "SYS_PROBATION");
|
||||||
const person = await this.personalRepository.findOne({
|
const person = await this.personalRepository.findOne({
|
||||||
where: { personal_id: personal_id },
|
where: { personal_id: personal_id },
|
||||||
|
|
|
||||||
|
|
@ -27,28 +27,22 @@ import { EvaluateAchievement } from "../entities/EvaluateAchievement";
|
||||||
import { EvaluateCommander } from "../entities/EvaluateCommander";
|
import { EvaluateCommander } from "../entities/EvaluateCommander";
|
||||||
import CallAPI from "../interfaces/call-api";
|
import CallAPI from "../interfaces/call-api";
|
||||||
|
|
||||||
@Route("api/v1/report")
|
@Route("api/v1/probation/report")
|
||||||
@Tags("Report")
|
@Tags("Report")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class ReportController extends Controller {
|
export class ReportController extends Controller {
|
||||||
private evaluateChairmanRepository =
|
private evaluateChairmanRepository = AppDataSource.getRepository(EvaluateChairman);
|
||||||
AppDataSource.getRepository(EvaluateChairman);
|
private evaluateResultRepository = AppDataSource.getRepository(EvaluateResult);
|
||||||
private evaluateResultRepository =
|
|
||||||
AppDataSource.getRepository(EvaluateResult);
|
|
||||||
private personalRepository = AppDataSource.getRepository(Personal);
|
private personalRepository = AppDataSource.getRepository(Personal);
|
||||||
private evaluateAssessorRepository =
|
private evaluateAssessorRepository = AppDataSource.getRepository(EvaluateAssessor);
|
||||||
AppDataSource.getRepository(EvaluateAssessor);
|
private assignDirectorRepository = AppDataSource.getRepository(AssignDirector);
|
||||||
private assignDirectorRepository =
|
private evaluateAchievementRepository = AppDataSource.getRepository(EvaluateAchievement);
|
||||||
AppDataSource.getRepository(AssignDirector);
|
private evaluateCommanderRepository = AppDataSource.getRepository(EvaluateCommander);
|
||||||
private evaluateAchievementRepository =
|
|
||||||
AppDataSource.getRepository(EvaluateAchievement);
|
|
||||||
private evaluateCommanderRepository =
|
|
||||||
AppDataSource.getRepository(EvaluateCommander);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* API สำหรับออกรายงาน
|
* API สำหรับออกรายงาน
|
||||||
|
|
@ -57,10 +51,7 @@ export class ReportController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("")
|
@Get("")
|
||||||
async GetReport(
|
async GetReport(@Query() assign_id: string) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const evaluate = await this.evaluateChairmanRepository.findOne({
|
const evaluate = await this.evaluateChairmanRepository.findOne({
|
||||||
where: { assign_id },
|
where: { assign_id },
|
||||||
});
|
});
|
||||||
|
|
@ -70,21 +61,14 @@ export class ReportController extends Controller {
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!evaluate || !result) {
|
if (!evaluate || !result) {
|
||||||
return new HttpError(
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลผลการทดลองปฏิบัติราชการ");
|
||||||
HttpStatusCode.NOT_FOUND,
|
|
||||||
"ไม่พบข้อมูลผลการทดลองปฏิบัติราชการ"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const develop_total_score = await (Number(
|
const develop_total_score = await (Number(evaluate.develop_orientation_score) +
|
||||||
evaluate.develop_orientation_score
|
|
||||||
) +
|
|
||||||
Number(evaluate.develop_self_learning_score) +
|
Number(evaluate.develop_self_learning_score) +
|
||||||
Number(evaluate.develop_training_seminar_score) +
|
Number(evaluate.develop_training_seminar_score) +
|
||||||
Number(evaluate.develop_other_training_score));
|
Number(evaluate.develop_other_training_score));
|
||||||
const develop_total_percent = await (Number(
|
const develop_total_percent = await (Number(evaluate.develop_orientation_percent) +
|
||||||
evaluate.develop_orientation_percent
|
|
||||||
) +
|
|
||||||
Number(evaluate.develop_orientation_percent) +
|
Number(evaluate.develop_orientation_percent) +
|
||||||
Number(evaluate.develop_self_learning_percent) +
|
Number(evaluate.develop_self_learning_percent) +
|
||||||
Number(evaluate.develop_training_seminar_percent));
|
Number(evaluate.develop_training_seminar_percent));
|
||||||
|
|
@ -97,8 +81,7 @@ export class ReportController extends Controller {
|
||||||
develop_total_score,
|
develop_total_score,
|
||||||
develop_orientation_percent: evaluate.develop_orientation_percent,
|
develop_orientation_percent: evaluate.develop_orientation_percent,
|
||||||
develop_self_learning_percent: evaluate.develop_self_learning_percent,
|
develop_self_learning_percent: evaluate.develop_self_learning_percent,
|
||||||
develop_training_seminar_percent:
|
develop_training_seminar_percent: evaluate.develop_training_seminar_percent,
|
||||||
evaluate.develop_training_seminar_percent,
|
|
||||||
develop_other_training_percent: evaluate.develop_other_training_percent,
|
develop_other_training_percent: evaluate.develop_other_training_percent,
|
||||||
develop_total_percent,
|
develop_total_percent,
|
||||||
develop_result: evaluate.develop_result,
|
develop_result: evaluate.develop_result,
|
||||||
|
|
@ -127,7 +110,7 @@ export class ReportController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("pass")
|
@Get("pass")
|
||||||
async GetPass(@Request() request: RequestWithUser) {
|
async GetPass() {
|
||||||
const lists = await this.personalRepository.find({
|
const lists = await this.personalRepository.find({
|
||||||
where: { probation_status: 2 },
|
where: { probation_status: 2 },
|
||||||
});
|
});
|
||||||
|
|
@ -148,7 +131,7 @@ export class ReportController extends Controller {
|
||||||
},
|
},
|
||||||
assign,
|
assign,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
return new HttpSuccess(data);
|
return new HttpSuccess(data);
|
||||||
|
|
@ -161,7 +144,7 @@ export class ReportController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("not-pass")
|
@Get("not-pass")
|
||||||
async GetDataNotPass(@Request() request: RequestWithUser) {
|
async GetDataNotPass() {
|
||||||
const lists = await this.personalRepository.find({
|
const lists = await this.personalRepository.find({
|
||||||
where: { probation_status: 3 },
|
where: { probation_status: 3 },
|
||||||
});
|
});
|
||||||
|
|
@ -182,7 +165,7 @@ export class ReportController extends Controller {
|
||||||
},
|
},
|
||||||
assign,
|
assign,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
return new HttpSuccess(data);
|
return new HttpSuccess(data);
|
||||||
|
|
@ -195,7 +178,7 @@ export class ReportController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("expand")
|
@Get("expand")
|
||||||
async GetDataExpand(@Request() request: RequestWithUser) {
|
async GetDataExpand() {
|
||||||
const lists = await this.personalRepository.find({
|
const lists = await this.personalRepository.find({
|
||||||
select: ["personal_id"],
|
select: ["personal_id"],
|
||||||
where: { probation_status: 7 },
|
where: { probation_status: 7 },
|
||||||
|
|
@ -214,7 +197,7 @@ export class ReportController extends Controller {
|
||||||
async UpdateStatus(
|
async UpdateStatus(
|
||||||
@Query() personal_id: string,
|
@Query() personal_id: string,
|
||||||
@Body() requestBody: { command_no: string },
|
@Body() requestBody: { command_no: string },
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const personal = await this.personalRepository.findOne({
|
const personal = await this.personalRepository.findOne({
|
||||||
where: { personal_id },
|
where: { personal_id },
|
||||||
|
|
@ -227,6 +210,8 @@ export class ReportController extends Controller {
|
||||||
|
|
||||||
personal.order_number = requestBody.command_no;
|
personal.order_number = requestBody.command_no;
|
||||||
personal.probation_status = 8;
|
personal.probation_status = 8;
|
||||||
|
personal.updateFullName = request.user.name;
|
||||||
|
personal.updateUserId = request.user.sub;
|
||||||
|
|
||||||
this.personalRepository.save(personal, { data: request });
|
this.personalRepository.save(personal, { data: request });
|
||||||
setLogDataDiff(request, { before, after: personal });
|
setLogDataDiff(request, { before, after: personal });
|
||||||
|
|
@ -263,20 +248,23 @@ export class ReportController extends Controller {
|
||||||
async ChangeStatus(
|
async ChangeStatus(
|
||||||
@Query() personal_id: string,
|
@Query() personal_id: string,
|
||||||
@Body() reqBody: { status: number },
|
@Body() reqBody: { status: number },
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const person = await this.personalRepository.findOne({
|
const personal = await this.personalRepository.findOne({
|
||||||
where: { personal_id },
|
where: { personal_id },
|
||||||
});
|
});
|
||||||
const before = person;
|
const before = personal;
|
||||||
|
|
||||||
if (!person) {
|
if (!personal) {
|
||||||
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลบุคคล");
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลบุคคล");
|
||||||
}
|
}
|
||||||
|
|
||||||
person.probation_status = await reqBody.status;
|
personal.probation_status = await reqBody.status;
|
||||||
await this.personalRepository.save(person, { data: request });
|
personal.updateFullName = request.user.name;
|
||||||
setLogDataDiff(request, { before, after: person });
|
personal.updateUserId = request.user.sub;
|
||||||
|
|
||||||
|
await this.personalRepository.save(personal, { data: request });
|
||||||
|
setLogDataDiff(request, { before, after: personal });
|
||||||
|
|
||||||
return new HttpSuccess();
|
return new HttpSuccess();
|
||||||
}
|
}
|
||||||
|
|
@ -288,10 +276,7 @@ export class ReportController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("form-record")
|
@Get("form-record")
|
||||||
async GetDataFormRecord(
|
async GetDataFormRecord(@Query() id: string) {
|
||||||
@Query() id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const evaluate = await this.evaluateAssessorRepository.findOne({
|
const evaluate = await this.evaluateAssessorRepository.findOne({
|
||||||
where: { id },
|
where: { id },
|
||||||
});
|
});
|
||||||
|
|
@ -301,15 +286,7 @@ export class ReportController extends Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
const directorData = await this.assignDirectorRepository.findOne({
|
const directorData = await this.assignDirectorRepository.findOne({
|
||||||
select: [
|
select: ["personal_id", "fullname", "position", "posType", "posLevel", "role", "dated"],
|
||||||
"personal_id",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
"role",
|
|
||||||
"dated",
|
|
||||||
],
|
|
||||||
where: { personal_id: evaluate.director_id },
|
where: { personal_id: evaluate.director_id },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -356,7 +333,7 @@ export class ReportController extends Controller {
|
||||||
evaluate_expect_level,
|
evaluate_expect_level,
|
||||||
evaluate_output_level,
|
evaluate_output_level,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
const evaluateData = await {
|
const evaluateData = await {
|
||||||
|
|
@ -579,10 +556,7 @@ export class ReportController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("evaluate-commander")
|
@Get("evaluate-commander")
|
||||||
async GetDataEvaluateCommander(
|
async GetDataEvaluateCommander(@Query() id: string) {
|
||||||
@Query() id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const evaluate = await this.evaluateCommanderRepository.findOne({
|
const evaluate = await this.evaluateCommanderRepository.findOne({
|
||||||
where: { id },
|
where: { id },
|
||||||
});
|
});
|
||||||
|
|
@ -836,10 +810,7 @@ export class ReportController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("evaluate-chairman")
|
@Get("evaluate-chairman")
|
||||||
async GetDataEvaluateChairman(
|
async GetDataEvaluateChairman(@Query() id: string) {
|
||||||
@Query() id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const evaluate = await this.evaluateChairmanRepository.findOne({
|
const evaluate = await this.evaluateChairmanRepository.findOne({
|
||||||
where: { id },
|
where: { id },
|
||||||
});
|
});
|
||||||
|
|
@ -848,15 +819,11 @@ export class ReportController extends Controller {
|
||||||
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูล");
|
return new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูล");
|
||||||
}
|
}
|
||||||
|
|
||||||
const develop_total_score = await (Number(
|
const develop_total_score = await (Number(evaluate.develop_orientation_score) +
|
||||||
evaluate.develop_orientation_score
|
|
||||||
) +
|
|
||||||
Number(evaluate.develop_self_learning_score) +
|
Number(evaluate.develop_self_learning_score) +
|
||||||
Number(evaluate.develop_training_seminar_score) +
|
Number(evaluate.develop_training_seminar_score) +
|
||||||
Number(evaluate.develop_other_training_score));
|
Number(evaluate.develop_other_training_score));
|
||||||
const develop_total_percent = await (Number(
|
const develop_total_percent = await (Number(evaluate.develop_orientation_percent) +
|
||||||
evaluate.develop_orientation_percent
|
|
||||||
) +
|
|
||||||
Number(evaluate.develop_orientation_percent) +
|
Number(evaluate.develop_orientation_percent) +
|
||||||
Number(evaluate.develop_self_learning_percent) +
|
Number(evaluate.develop_self_learning_percent) +
|
||||||
Number(evaluate.develop_training_seminar_percent));
|
Number(evaluate.develop_training_seminar_percent));
|
||||||
|
|
@ -1029,8 +996,7 @@ export class ReportController extends Controller {
|
||||||
develop_total_score: develop_total_score,
|
develop_total_score: develop_total_score,
|
||||||
develop_orientation_percent: evaluate.develop_orientation_percent,
|
develop_orientation_percent: evaluate.develop_orientation_percent,
|
||||||
develop_self_learning_percent: evaluate.develop_self_learning_percent,
|
develop_self_learning_percent: evaluate.develop_self_learning_percent,
|
||||||
develop_training_seminar_percent:
|
develop_training_seminar_percent: evaluate.develop_training_seminar_percent,
|
||||||
evaluate.develop_training_seminar_percent,
|
|
||||||
develop_other_training_percent: evaluate.develop_other_training_percent,
|
develop_other_training_percent: evaluate.develop_other_training_percent,
|
||||||
develop_total_percent: develop_total_percent,
|
develop_total_percent: develop_total_percent,
|
||||||
develop_result: evaluate.develop_result,
|
develop_result: evaluate.develop_result,
|
||||||
|
|
@ -1070,15 +1036,7 @@ export class ReportController extends Controller {
|
||||||
};
|
};
|
||||||
|
|
||||||
const directorData = await this.assignDirectorRepository.find({
|
const directorData = await this.assignDirectorRepository.find({
|
||||||
select: [
|
select: ["personal_id", "fullname", "position", "posType", "posLevel", "role", "dated"],
|
||||||
"personal_id",
|
|
||||||
"fullname",
|
|
||||||
"position",
|
|
||||||
"posType",
|
|
||||||
"posLevel",
|
|
||||||
"role",
|
|
||||||
"dated",
|
|
||||||
],
|
|
||||||
where: { assign_id: assign.id },
|
where: { assign_id: assign.id },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -1093,18 +1051,16 @@ export class ReportController extends Controller {
|
||||||
name: element.fullname,
|
name: element.fullname,
|
||||||
Position: element.position,
|
Position: element.position,
|
||||||
};
|
};
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
const mentorData = await (director.find((x) => x.role == "mentor") ?? null);
|
const mentorData = await (director.find((x) => x.role == "mentor") ?? null);
|
||||||
const mentor = mentorData != null ? mentorData : null;
|
const mentor = mentorData != null ? mentorData : null;
|
||||||
|
|
||||||
const commanderData = await (director.find((x) => x.role == "commander") ??
|
const commanderData = await (director.find((x) => x.role == "commander") ?? null);
|
||||||
null);
|
|
||||||
const commander = commanderData != null ? commanderData : null;
|
const commander = commanderData != null ? commanderData : null;
|
||||||
|
|
||||||
const chairmanData = await (director.find((x) => x.role == "chairman") ??
|
const chairmanData = await (director.find((x) => x.role == "chairman") ?? null);
|
||||||
null);
|
|
||||||
const chairman = chairmanData != null ? chairmanData : null;
|
const chairman = chairmanData != null ? chairmanData : null;
|
||||||
|
|
||||||
return new HttpSuccess({
|
return new HttpSuccess({
|
||||||
|
|
|
||||||
|
|
@ -18,12 +18,12 @@ import { setLogDataDiff } from "../interfaces/utils";
|
||||||
import { Survey } from "../entities/Survey";
|
import { Survey } from "../entities/Survey";
|
||||||
import { AppDataSource } from "../database/data-source";
|
import { AppDataSource } from "../database/data-source";
|
||||||
|
|
||||||
@Route("api/v1/survey")
|
@Route("api/v1/probation/survey")
|
||||||
@Tags("Survey")
|
@Tags("Survey")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
@Response(
|
@Response(
|
||||||
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
HttpStatusCode.INTERNAL_SERVER_ERROR,
|
||||||
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง"
|
"เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง",
|
||||||
)
|
)
|
||||||
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
@SuccessResponse(HttpStatusCode.OK, "สำเร็จ")
|
||||||
export class SurveyController extends Controller {
|
export class SurveyController extends Controller {
|
||||||
|
|
@ -36,10 +36,7 @@ export class SurveyController extends Controller {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Get("")
|
@Get("")
|
||||||
async GetSurvey(
|
async GetSurvey(@Query() assign_id: string, @Request() request: RequestWithUser) {
|
||||||
@Query() assign_id: string,
|
|
||||||
@Request() request: RequestWithUser
|
|
||||||
) {
|
|
||||||
const result = await this.surveyRepository.findOne({
|
const result = await this.surveyRepository.findOne({
|
||||||
where: {
|
where: {
|
||||||
assign_id,
|
assign_id,
|
||||||
|
|
@ -58,7 +55,7 @@ export class SurveyController extends Controller {
|
||||||
async PostSurvey(
|
async PostSurvey(
|
||||||
@Query() assign_id: string,
|
@Query() assign_id: string,
|
||||||
@Body() requestBody: any,
|
@Body() requestBody: any,
|
||||||
@Request() request: RequestWithUser
|
@Request() request: RequestWithUser,
|
||||||
) {
|
) {
|
||||||
const before = null;
|
const before = null;
|
||||||
const data = await { ...requestBody, personal_id: request.user.sub };
|
const data = await { ...requestBody, personal_id: request.user.sub };
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue