Compare commits

...

10 commits

Author SHA1 Message Date
0f4b9778ee update search 2025-08-18 16:36:23 +07:00
Bright
217354f653 api รายละเอียดรายการผลงาน ใช้.oรายงาน ก.พ.7/ก.ก.1 #1642 2025-08-06 10:53:06 +07:00
kittapath-Jool
d93edbf97a add noti 2025-08-01 15:54:00 +07:00
kittapath-Jool
0f5b9401ad delete dna post 2025-08-01 15:50:28 +07:00
8c51bcc920 delete log 2025-07-24 13:41:09 +07:00
9f21a4d498 #1412 2025-07-17 18:21:01 +07:00
06385990b5 #1635 2025-07-16 16:36:14 +07:00
e78811dfd6 #963 , #964 2025-07-16 15:10:37 +07:00
b95d59783b update 2025-07-16 14:26:48 +07:00
ce39e89cce update 2025-07-16 11:11:48 +07:00
5 changed files with 51 additions and 58 deletions

View file

@ -1551,7 +1551,7 @@ export class DevelopmentController extends Controller {
if (!development) {
throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลโครงการ/หลักสูตรการฝึกอบรมนี้");
}
Object.assign(development, { ...requestBody, developmentAddresss: [] });
Object.assign(development, { ...requestBody});
development.lastUpdateUserId = request.user.sub;
development.lastUpdateFullName = request.user.name;
development.lastUpdatedAt = new Date();
@ -1946,6 +1946,9 @@ export class DevelopmentController extends Controller {
developmentProjectTechniqueActuals: true,
developmentEvaluations: true,
developmentAddresss: true,
developmentRisks: true,
developmentHistorys: true,
developmentOthers: true,
},
});
if (!development) {
@ -1959,92 +1962,46 @@ export class DevelopmentController extends Controller {
const plannedGoalPosition = await this.plannedGoalPositionRepository.find({
where: { plannedGoalId: In(development.developmentPlannedGoals.map((x) => x.id)) },
});
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove PlannedGoalPosition.",
// });
await this.plannedGoalPositionRepository.remove(plannedGoalPosition, { data: request });
}
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove ActualPeople.",
// });
await this.actualPeopleRepository.remove(development.developmentActualPeoples, {
data: request,
});
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove PlannedPeople.",
// });
await this.plannedPeopleRepository.remove(development.developmentPlannedPeoples, {
data: request,
});
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove ActualGoal.",
// });
await this.actualGoalRepository.remove(development.developmentActualGoals, { data: request });
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove PlannedGoal.",
// });
await this.plannedGoalRepository.remove(development.developmentPlannedGoals, { data: request });
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove DevelopmentProjectType.",
// });
await this.developmentProjectTypeRepository.remove(development.developmentProjectTypes, {
data: request,
});
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove DevelopmentProjectTechniquePlanned.",
// });
await this.developmentProjectTechniquePlannedRepository.remove(
development.developmentProjectTechniquePlanneds,
{
data: request,
},
);
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove DevelopmentProjectTechniqueActuals.",
// });
await this.developmentProjectTechniqueActualRepository.remove(
development.developmentProjectTechniqueActuals,
{
data: request,
},
);
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove DevelopmentEvaluation.",
// });
await this.developmentEvaluationRepository.remove(development.developmentEvaluations, {
data: request,
});
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove DevelopmentAddresss.",
// });
await this.developmentAddresssRepository.remove(development.developmentAddresss, {
data: request,
});
// addLogSequence(request, {
// action: "remove",
// status: "success",
// description: "Remove Development.",
// });
await this.developmentRiskRepository.remove(development.developmentRisks, {
data: request,
});
await this.developmentHistoryRepository.remove(development.developmentHistorys, {
data: request,
});
await this.developmentOtherRepository.remove(development.developmentOthers, {
data: request,
});
await this.developmentRepository.remove(development, { data: request });
return new HttpSuccess();
}
@ -2786,7 +2743,7 @@ export class DevelopmentController extends Controller {
techniqueActuals.length > 0 && dev20Lists.some((item) => techniqueActuals.includes(item));
isDevelopment10 =
techniqueActuals.length > 0 && dev10Lists.some((item) => techniqueActuals.includes(item));
if (x.type == "OFFICER") {
await new CallAPI()
.PostData(request, "/org/profile/development", {

View file

@ -276,6 +276,14 @@ export class DevelopmentEmployeeHistoryController extends Controller {
keyword: `%${body.keyword}%`,
},
)
.orWhere(
body.keyword != null && body.keyword != ""
? "CONCAT(employeePosType.posTypeShortName,' ',employeePosLevel.posLevelName) LIKE :keyword"
: "1=1",
{
keyword: `%${body.keyword}%`,
},
)
.orWhere(
body.keyword != null && body.keyword != ""
? "developmentHistory.position LIKE :keyword"
@ -403,6 +411,7 @@ export class DevelopmentEmployeeHistoryController extends Controller {
dateStart: getDevelopment.development != null ? getDevelopment.development.dateStart : null,
dateEnd: getDevelopment.development != null ? getDevelopment.development.dateEnd : null,
totalDate: getDevelopment.development != null ? getDevelopment.development.totalDate : null,
trainingDays: getDevelopment.development != null ? getDevelopment.trainingDays : null,
// addressAcademic:
// getDevelopment.development != null ? getDevelopment.development.addressAcademic : null,
// topicAcademic:

View file

@ -390,6 +390,7 @@ export class DevelopmentOfficerHistoryController extends Controller {
dateStart: getDevelopment.development != null ? getDevelopment.development.dateStart : null,
dateEnd: getDevelopment.development != null ? getDevelopment.development.dateEnd : null,
totalDate: getDevelopment.development != null ? getDevelopment.development.totalDate : null,
trainingDays: getDevelopment.development != null ? getDevelopment.trainingDays : null,
// addressAcademic:
// getDevelopment.development != null ? getDevelopment.development.addressAcademic : null,
// topicAcademic:

View file

@ -103,6 +103,32 @@ export class PortfolioController extends Controller {
return new HttpSuccess(_portfolio);
}
/**
* API ..7/..1
*
* @summary ..7/..1
*
*/
@Get("kk1/{keycloak}")
async GetPortfolio(@Path() keycloak: string, @Request() request: RequestWithUser) {
const _portfolio = await this.portfolioRepository.find({
where: { createdUserId: keycloak },
select: [
"name",
"createdAt"
],
order: { createdAt: "DESC" },
});
const result =
_portfolio.map(x => ({
name: x.name,
year: x.createdAt.getFullYear() > 2500
? x.createdAt.getFullYear()
: x.createdAt.getFullYear()+543
}));
return new HttpSuccess(result);
}
/**
* API body
*

View file

@ -606,7 +606,7 @@ export class CreateDevelopmentScholarship {
posExecutive: string | null;
posLevelId: string | null;
posTypeId: string | null;
guarantorRootDnaId: string | null;
guarantorRootDnaId?: string | null;
guarantorRootId: string | null;
guarantorRoot: string | null;
guarantorOrg: string | null;