This commit is contained in:
AdisakKanthawilang 2024-12-19 12:41:48 +07:00
parent a648fb3f24
commit 964e938bb2
5 changed files with 49 additions and 24 deletions

View file

@ -360,10 +360,18 @@ export class DevelopmentEmployeeHistoryController extends Controller {
relations: [
"development",
"development.developmentOthers",
"development.developmentOthers.province",
"employeePosLevel",
"employeePosType",
],
where: { id: id, type: type },
order: {
development:{
developmentOthers: {
createdAt: "ASC"
}
}
}
});
if (!getDevelopment) {
throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลประวัติการฝึกอบรม/ดูงานนี้");
@ -408,6 +416,7 @@ export class DevelopmentEmployeeHistoryController extends Controller {
? getDevelopment.development.developmentOthers.map((dev) => ({
topicAcademic: dev.topicAcademic,
addressAcademic: dev.addressAcademic,
Province: dev.province.name
}))
: [],
};

View file

@ -27,6 +27,7 @@ import { PosLevel } from "../entities/PosLevel";
import { RequestWithUser } from "../middlewares/user";
import { setLogDataDiff } from "../interfaces/utils";
import permission from "../interfaces/permission";
import { Province } from "../entities/Province";
@Route("api/v1/development/history/officer")
@Tags("DevelopmentOfficerHistory")
@ -321,9 +322,10 @@ export class DevelopmentOfficerHistoryController extends Controller {
const formattedData = development.map((item) => ({
id: item.id,
citizenId: item.citizenId,
fullName: item.prefix == null && item.firstName == null && item.lastName == null
? ""
: `${item?.prefix}${item?.firstName} ${item?.lastName}`,
fullName:
item.prefix == null && item.firstName == null && item.lastName == null
? ""
: `${item?.prefix}${item?.firstName} ${item?.lastName}`,
position: item.position,
year: item.development.year,
root: item.development.root, //test
@ -350,8 +352,21 @@ export class DevelopmentOfficerHistoryController extends Controller {
await new permission().PermissionGet(request, "SYS_DEV_HISTORY_OFFICER");
const type = "OFFICER";
const getDevelopment = await this.developmentHistoryRepository.findOne({
relations: ["development", "development.developmentOthers","posLevel", "posType"],
relations: [
"development",
"development.developmentOthers",
"development.developmentOthers.province",
"posLevel",
"posType",
],
where: { id: id, type: type },
order: {
development: {
developmentOthers: {
createdAt: "ASC",
},
},
},
});
if (!getDevelopment) {
throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลประวัติการฝึกอบรม/ดูงานนี้");
@ -389,12 +404,13 @@ export class DevelopmentOfficerHistoryController extends Controller {
getDevelopment.development != null ? getDevelopment.development.dateStudyStart : null,
dateStudyEnd:
getDevelopment.development != null ? getDevelopment.development.dateStudyEnd : null,
academic: getDevelopment.development?.developmentOthers
? getDevelopment.development.developmentOthers.map(dev => ({
academic: getDevelopment.development?.developmentOthers
? getDevelopment.development.developmentOthers.map((dev) => ({
topicAcademic: dev.topicAcademic,
addressAcademic: dev.addressAcademic
}))
: []
addressAcademic: dev.addressAcademic,
Province: dev.province.name,
}))
: [],
};
return new HttpSuccess(formattedData);

View file

@ -38,7 +38,7 @@ export class DevelopmentOther extends EntityBase {
development: Development;
@ManyToOne(() => Province, (province: Province) => province.developmentOthers)
@JoinColumn({ name: "developmentId" })
@JoinColumn({ name: "provinceActualId" })
province: Province;
}

View file

@ -1,14 +0,0 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class UpdateDevorderAddRelationProvince1734583427091 implements MigrationInterface {
name = 'UpdateDevorderAddRelationProvince1734583427091'
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE \`developmentOther\` ADD CONSTRAINT \`FK_d5dfdb7ca0d11c0cdf3b3a55e6f\` FOREIGN KEY (\`developmentId\`) REFERENCES \`province\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE \`developmentOther\` DROP FOREIGN KEY \`FK_d5dfdb7ca0d11c0cdf3b3a55e6f\``);
}
}

View file

@ -0,0 +1,14 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class UpdateDevelopmentAddRelationProvince1734586571465 implements MigrationInterface {
name = 'UpdateDevelopmentAddRelationProvince1734586571465'
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE \`developmentOther\` ADD CONSTRAINT \`FK_47bbbecaea9b7b31d2536054656\` FOREIGN KEY (\`provinceActualId\`) REFERENCES \`province\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE \`developmentOther\` DROP FOREIGN KEY \`FK_47bbbecaea9b7b31d2536054656\``);
}
}