no message

This commit is contained in:
kittapath 2024-10-01 01:14:08 +07:00
parent 465723e440
commit a23ccd9bd7
2 changed files with 114 additions and 0 deletions

View file

@ -24,6 +24,7 @@ import {
UpdateProfileDevelopment,
} from "../entities/ProfileDevelopment";
import permission from "../interfaces/permission";
import { DevelopmentProject } from "../entities/DevelopmentProject";
@Route("api/v1/org/profile-temp/development")
@Tags("ProfileDevelopment")
@Security("bearerAuth")
@ -31,6 +32,7 @@ export class ProfileDevelopmentEmployeeTempController extends Controller {
private profileRepository = AppDataSource.getRepository(ProfileEmployee);
private developmentRepository = AppDataSource.getRepository(ProfileDevelopment);
private developmentHistoryRepository = AppDataSource.getRepository(ProfileDevelopmentHistory);
private developmentProjectRepository = AppDataSource.getRepository(DevelopmentProject);
@Get("user")
public async getDevelopmentUser(@Request() request: { user: Record<string, any> }) {
@ -100,6 +102,29 @@ export class ProfileDevelopmentEmployeeTempController extends Controller {
history.profileDevelopmentId = data.id;
await this.developmentHistoryRepository.save(history);
if (body.developmentProjects != null) {
await Promise.all(
body.developmentProjects.map(async (x) => {
let developmentProject = new DevelopmentProject();
let developmentProjectHistory = new DevelopmentProject();
Object.assign(developmentProject, {
...meta,
name: x,
profileDevelopmentId: data.id,
});
Object.assign(developmentProject, {
...meta,
name: x,
profileDevelopmentHistoryId: history.id,
});
await Promise.all([
this.developmentProjectRepository.save(developmentProject),
this.developmentProjectRepository.save(developmentProjectHistory),
]);
}),
);
}
return new HttpSuccess();
}
@ -137,6 +162,38 @@ export class ProfileDevelopmentEmployeeTempController extends Controller {
this.developmentHistoryRepository.save(history),
]);
await this.developmentProjectRepository.delete({ profileDevelopmentId: record.id });
if (body.developmentProjects != null) {
const meta = {
createdUserId: req.user.sub,
createdFullName: req.user.name,
lastUpdateUserId: req.user.sub,
lastUpdateFullName: req.user.name,
createdAt: new Date(),
lastUpdatedAt: new Date(),
};
await Promise.all(
body.developmentProjects.map(async (x) => {
let developmentProject = new DevelopmentProject();
let developmentProjectHistory = new DevelopmentProject();
Object.assign(developmentProject, {
...meta,
name: x,
profileDevelopmentId: record.id,
});
Object.assign(developmentProject, {
...meta,
name: x,
profileDevelopmentHistoryId: history.id,
});
await Promise.all([
this.developmentProjectRepository.save(developmentProject),
this.developmentProjectRepository.save(developmentProjectHistory),
]);
}),
);
}
return new HttpSuccess();
}