api ทุน ของ user

This commit is contained in:
Kittapath 2024-04-11 16:32:44 +07:00
parent 37bf71aca5
commit a4eed4f690
8 changed files with 496 additions and 124 deletions

View file

@ -7,9 +7,10 @@ import { ActualGoal, CreateActualGoal } from "./ActualGoal";
import { CreatePlannedGoal, PlannedGoal } from "./PlannedGoal";
import { DevelopmentHistory } from "./DevelopmentHistory";
import { DevelopmentProjectType } from "./DevelopmentProjectType";
import { DevelopmentProjectTechnique } from "./DevelopmentProjectTechnique";
import { DevelopmentProjectTechniquePlanned } from "./DevelopmentProjectTechniquePlanned";
import { CreateDevelopmentEvaluation, DevelopmentEvaluation } from "./DevelopmentEvaluation";
import { CreateDevelopmentAddress, DevelopmentAddress } from "./DevelopmentAddress";
import { DevelopmentProjectTechniqueActual } from "./DevelopmentProjectTechniqueActual";
@Entity("development")
export class Development extends EntityBase {
@ -141,11 +142,18 @@ export class Development extends EntityBase {
projectNigthHoldActual: number;
@OneToMany(
() => DevelopmentProjectTechnique,
(developmentProjectTechnique: DevelopmentProjectTechnique) =>
developmentProjectTechnique.development,
() => DevelopmentProjectTechniquePlanned,
(developmentProjectTechniquePlanned: DevelopmentProjectTechniquePlanned) =>
developmentProjectTechniquePlanned.development,
)
developmentProjectTechniques: DevelopmentProjectTechnique[];
developmentProjectTechniquePlanneds: DevelopmentProjectTechniquePlanned[];
@OneToMany(
() => DevelopmentProjectTechniqueActual,
(developmentProjectTechniqueActual: DevelopmentProjectTechniqueActual) =>
developmentProjectTechniqueActual.development,
)
developmentProjectTechniqueActuals: DevelopmentProjectTechniqueActual[];
@Column({
nullable: true,
@ -400,6 +408,8 @@ export class UpdateDevelopment3 {
@Column()
developmentProjectTypes?: string[];
@Column()
projectModal?: number | null;
@Column()
isBackPlanned?: boolean | null;
@Column()
isHoldPlanned?: boolean | null;
@ -410,6 +420,8 @@ export class UpdateDevelopment3 {
@Column()
projectNigthHoldPlanned?: number | null;
@Column()
developmentProjectTechniquePlanneds?: string[];
@Column()
isBackActual?: boolean | null;
@Column()
isHoldActual?: boolean | null;
@ -420,13 +432,11 @@ export class UpdateDevelopment3 {
@Column()
projectNigthHoldActual?: number | null;
@Column()
developmentProjectTechniques?: string[];
@Column()
projectModal?: number | null;
developmentProjectTechniqueActuals?: string[];
}
export class UpdateDevelopment4 {
@Column()
developmentEvaluations: CreateDevelopmentEvaluation[];
// @Column()
// developmentEvaluations: CreateDevelopmentEvaluation[];
@Column()
project: string | null;
@Column()
@ -479,8 +489,4 @@ export class UpdateDevelopment5 {
addressAcademic: string | null;
@Column()
provinceActualId: string | null;
@Column()
dateStudyStart: Date | null;
@Column()
dateStudyEnd: Date | null;
}

View file

@ -2,8 +2,8 @@ import { Entity, Column, ManyToOne, JoinColumn } from "typeorm";
import { EntityBase } from "./base/Base";
import { Development } from "./Development";
@Entity("developmentProjectTechnique")
export class DevelopmentProjectTechnique extends EntityBase {
@Entity("developmentProjectTechniqueActual")
export class DevelopmentProjectTechniqueActual extends EntityBase {
@Column({
// TRAINING = การอบรม
// MEETING = การประชุม
@ -28,12 +28,12 @@ export class DevelopmentProjectTechnique extends EntityBase {
@ManyToOne(
() => Development,
(development: Development) => development.developmentProjectTechniques,
(development: Development) => development.developmentProjectTechniqueActuals,
)
@JoinColumn({ name: "developmentId" })
development: Development;
}
export class CreateDevelopmentProjectTechnique {
export class CreateDevelopmentProjectTechniqueActual {
@Column()
name: number;
}

View file

@ -0,0 +1,39 @@
import { Entity, Column, ManyToOne, JoinColumn } from "typeorm";
import { EntityBase } from "./base/Base";
import { Development } from "./Development";
@Entity("developmentProjectTechniquePlanned")
export class DevelopmentProjectTechniquePlanned extends EntityBase {
@Column({
// TRAINING = การอบรม
// MEETING = การประชุม
// SEMINAR = การสัมมนา
// STUDY_TOUR = การศึกษาดูงาน
// ACADEMIC_SEMINAR = การสัมมนาทางวิชาการ
// WORKSHOP = การสัมมนาเชิงปฏิบัติการ
// SPECIAL_LECTURE = การบรรยายพิเศษ
// STUDY_TRAINING = การฝึกศึกษา
nullable: true,
comment: "เทคนิควิธีการที่ใช้ในการพัฒนา",
default: null,
})
name: string;
@Column({
nullable: true,
comment: "โครงการ/หลักสูตรการฝึกอบรม",
default: null,
})
developmentId: string;
@ManyToOne(
() => Development,
(development: Development) => development.developmentProjectTechniquePlanneds,
)
@JoinColumn({ name: "developmentId" })
development: Development;
}
export class CreateDevelopmentProjectTechniquePlanned {
@Column()
name: number;
}

View file

@ -429,6 +429,57 @@ export class DevelopmentScholarship extends EntityBase {
default: null,
})
totalPeriod: string;
@Column({
// ในแผนฯ (INPLAN)
// นอกแผนฯ (OUTPLAN)
nullable: true,
comment: "ในแผนฯ",
length: 40,
default: null,
})
planType: string;
@Column({
comment: "ไม่ใช้งบประมาณ",
default: false,
})
isNoUseBudget: boolean;
@Column({
nullable: true,
type: "datetime",
comment: "กลับเข้ารับราชการตั้งแต่",
default: null,
})
governmentDate: Date;
@Column({
comment: "สำเร็จการศึกษาตามที่หลักสูตรกำหนด",
default: false,
})
isGraduated: boolean;
@Column({
nullable: true,
type: "datetime",
comment: "ตั้งแต่",
default: null,
})
graduatedDate: Date;
@Column({
comment: "เสร็จสิ้นการศึกษาตามที่หลักสูตรกำหนดแล้วแต่ยังไม่สำเร็จการศึกษา",
default: false,
})
isNoGraduated: boolean;
@Column({
nullable: true,
comment: "เนื่องจาก",
default: null,
})
graduatedReason: string;
}
export class CreateDevelopmentScholarship {
profileId: string | null;
@ -481,6 +532,8 @@ export class CreateDevelopmentScholarship {
studyAbroadStartDate: Date | null;
studyAbroadEndDate: Date | null;
totalPeriod: string | null;
planType: string | null;
isNoUseBudget: boolean | null;
}
export class UpdateDevelopmentScholarship {
@ -534,4 +587,14 @@ export class UpdateDevelopmentScholarship {
studyAbroadStartDate: Date | null;
studyAbroadEndDate: Date | null;
totalPeriod: string | null;
planType: string | null;
isNoUseBudget: boolean | null;
}
export class UpdateDevelopmentScholarshipUser {
governmentDate: Date | null;
isGraduated: boolean | null;
graduatedDate: Date | null;
isNoGraduated: boolean | null;
graduatedReason: string | null;
}