แก้กรรมการ
This commit is contained in:
parent
309f295391
commit
3a4eb56629
6 changed files with 128 additions and 44 deletions
|
|
@ -36,6 +36,7 @@ import Extension from "../interfaces/extension";
|
|||
import { Portfolio } from "../entities/Portfolio";
|
||||
import { Performance } from "../entities/Performance";
|
||||
import { AnnounceTemplate } from "../entities/AnnounceTemplate";
|
||||
import { evaluation_directors_director } from "../entities/evaluation_directors_director";
|
||||
|
||||
@Route("api/v1/evaluation")
|
||||
@Tags("evaluation")
|
||||
|
|
@ -58,6 +59,9 @@ export class EvaluationController {
|
|||
private directorRepository = AppDataSource.getRepository(Director);
|
||||
private meetingRepository = AppDataSource.getRepository(Meeting);
|
||||
private announceTemplateRepository = AppDataSource.getRepository(AnnounceTemplate);
|
||||
private evaluation_directors_directorRepository = AppDataSource.getRepository(
|
||||
evaluation_directors_director,
|
||||
);
|
||||
|
||||
/**
|
||||
* API ล้างข้อมูล
|
||||
|
|
@ -2221,7 +2225,7 @@ export class EvaluationController {
|
|||
evaluation.step = "PREPARE_DOC_V2";
|
||||
evaluation.subjectDoc2 = evaluation.subject;
|
||||
evaluation.authorDoc2 = evaluation.author;
|
||||
evaluation.assignedPosition = evaluation.position;
|
||||
evaluation.assignedPosition = evaluation.position; //xxxxxxxxxx
|
||||
evaluation.commanderFullnameDoc2 = evaluation.commanderFullname;
|
||||
evaluation.commanderPositionDoc2 = evaluation.commanderPosition;
|
||||
evaluation.commanderAboveFullnameDoc2 = evaluation.commanderAboveFullname;
|
||||
|
|
@ -2478,12 +2482,23 @@ export class EvaluationController {
|
|||
if (!evaluation) {
|
||||
throw new HttpError(HttpStatusCode.NOT_FOUND, "not found.");
|
||||
}
|
||||
if (!evaluation.directors) {
|
||||
evaluation.directors = [];
|
||||
if (!evaluation.evaluation_directors_director) {
|
||||
evaluation.evaluation_directors_director = [];
|
||||
}
|
||||
body.directors.forEach(async (directorId) => {
|
||||
const director = await this.directorRepository.findOne({ where: { id: directorId } });
|
||||
if (director != null) evaluation.directors.push(director);
|
||||
if (director != null) {
|
||||
await this.evaluation_directors_directorRepository.save({
|
||||
directorId: director.id,
|
||||
evaluationId: evaluation.id,
|
||||
createdUserId: request.user.sub,
|
||||
createdFullName: request.user.name,
|
||||
lastUpdateUserId: request.user.sub,
|
||||
lastUpdateFullName: request.user.name,
|
||||
createdAt: new Date(),
|
||||
lastUpdatedAt: new Date(),
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
evaluation.lastUpdateUserId = request.user.sub;
|
||||
|
|
@ -2580,20 +2595,24 @@ export class EvaluationController {
|
|||
|
||||
const evaluation = await this.evaluationRepository.findOne({
|
||||
where: { id },
|
||||
relations: ["directors", "meetings"],
|
||||
relations: [
|
||||
"evaluation_directors_director",
|
||||
"evaluation_directors_director.director",
|
||||
"meetings",
|
||||
],
|
||||
});
|
||||
if (!evaluation) {
|
||||
throw new HttpError(HttpStatusCode.NOT_FOUND, "not found.");
|
||||
}
|
||||
const directors = evaluation.directors.map((director) => ({
|
||||
const directors = evaluation.evaluation_directors_director.map((director) => ({
|
||||
id: director.id,
|
||||
prefix: director.prefix,
|
||||
firstName: director.firstName,
|
||||
lastName: director.lastName,
|
||||
position: director.position,
|
||||
prefix: director.director.prefix,
|
||||
firstName: director.director.firstName,
|
||||
lastName: director.director.lastName,
|
||||
position: director.director.position,
|
||||
positionName: null,
|
||||
email: director.email,
|
||||
phone: director.phone,
|
||||
email: director.director.email,
|
||||
phone: director.director.phone,
|
||||
duty: director.duty,
|
||||
}));
|
||||
|
||||
|
|
@ -3104,7 +3123,7 @@ export class EvaluationController {
|
|||
// await new permission().PermissionDelete(request, "SYS_EVA_REQ");
|
||||
const evaluation = await this.evaluationRepository.findOne({
|
||||
where: { id },
|
||||
relations: ["meetings", "directors"],
|
||||
relations: ["meetings", "evaluation_directors_director"],
|
||||
});
|
||||
|
||||
if (!evaluation) {
|
||||
|
|
@ -3125,11 +3144,7 @@ export class EvaluationController {
|
|||
this.meetingRepository.remove(meeting, { data: request }),
|
||||
),
|
||||
);
|
||||
await Promise.all(
|
||||
evaluation.directors.map((director) =>
|
||||
this.directorRepository.remove(director, { data: request }),
|
||||
),
|
||||
);
|
||||
await this.evaluation_directors_directorRepository.delete({ evaluationId: id });
|
||||
await this.evaluationRepository.delete({ id });
|
||||
|
||||
return new HttpSuccess();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue