no message
This commit is contained in:
parent
1e1dbfd519
commit
f4aa87beb8
3 changed files with 98 additions and 43 deletions
|
|
@ -10,6 +10,7 @@ import { Position } from "../entities/Position";
|
||||||
import { PosMaster } from "../entities/PosMaster";
|
import { PosMaster } from "../entities/PosMaster";
|
||||||
import { calculateAge, calculateRetireDate } from "../interfaces/utils";
|
import { calculateAge, calculateRetireDate } from "../interfaces/utils";
|
||||||
import permission from "../interfaces/permission";
|
import permission from "../interfaces/permission";
|
||||||
|
import { OrgRevision } from "../entities/OrgRevision";
|
||||||
@Route("api/v1/org/profile/government")
|
@Route("api/v1/org/profile/government")
|
||||||
@Tags("ProfileGovernment")
|
@Tags("ProfileGovernment")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
|
|
@ -18,7 +19,7 @@ export class ProfileGovernmentHistoryController extends Controller {
|
||||||
private govRepo = AppDataSource.getRepository(ProfileGovernment);
|
private govRepo = AppDataSource.getRepository(ProfileGovernment);
|
||||||
private positionRepo = AppDataSource.getRepository(Position);
|
private positionRepo = AppDataSource.getRepository(Position);
|
||||||
private posMasterRepo = AppDataSource.getRepository(PosMaster);
|
private posMasterRepo = AppDataSource.getRepository(PosMaster);
|
||||||
|
private orgRevisionRepository = AppDataSource.getRepository(OrgRevision);
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @summary ข้อมูลราชการ
|
* @summary ข้อมูลราชการ
|
||||||
|
|
@ -26,6 +27,13 @@ export class ProfileGovernmentHistoryController extends Controller {
|
||||||
*/
|
*/
|
||||||
@Get("user")
|
@Get("user")
|
||||||
public async getGovHistoryUser(@Request() request: { user: Record<string, any> }) {
|
public async getGovHistoryUser(@Request() request: { user: Record<string, any> }) {
|
||||||
|
const orgRevision = await this.orgRevisionRepository.findOne({
|
||||||
|
select: ["id"],
|
||||||
|
where: {
|
||||||
|
orgRevisionIsDraft: false,
|
||||||
|
orgRevisionIsCurrent: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
const profile = await this.profileRepo.findOneBy({ keycloak: request.user.sub });
|
const profile = await this.profileRepo.findOneBy({ keycloak: request.user.sub });
|
||||||
if (!profile) {
|
if (!profile) {
|
||||||
throw new HttpError(HttpStatus.BAD_REQUEST, "ไม่พบ profile ดังกล่าว");
|
throw new HttpError(HttpStatus.BAD_REQUEST, "ไม่พบ profile ดังกล่าว");
|
||||||
|
|
@ -39,10 +47,11 @@ export class ProfileGovernmentHistoryController extends Controller {
|
||||||
});
|
});
|
||||||
const posMaster = await this.posMasterRepo.findOne({
|
const posMaster = await this.posMasterRepo.findOne({
|
||||||
where: {
|
where: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profile.id,
|
current_holderId: profile.id,
|
||||||
},
|
},
|
||||||
order: { createdAt: "DESC" },
|
order: { createdAt: "DESC" },
|
||||||
|
|
@ -58,10 +67,11 @@ export class ProfileGovernmentHistoryController extends Controller {
|
||||||
where: {
|
where: {
|
||||||
positionIsSelected: true,
|
positionIsSelected: true,
|
||||||
posMaster: {
|
posMaster: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profile.id,
|
current_holderId: profile.id,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
@ -129,6 +139,13 @@ export class ProfileGovernmentHistoryController extends Controller {
|
||||||
@Example({})
|
@Example({})
|
||||||
public async getGovHistory(@Path() profileId: string, @Request() req: RequestWithUser) {
|
public async getGovHistory(@Path() profileId: string, @Request() req: RequestWithUser) {
|
||||||
await new permission().PermissionOrgUserGet(req, "SYS_REGISTRY_OFFICER", profileId);
|
await new permission().PermissionOrgUserGet(req, "SYS_REGISTRY_OFFICER", profileId);
|
||||||
|
const orgRevision = await this.orgRevisionRepository.findOne({
|
||||||
|
select: ["id"],
|
||||||
|
where: {
|
||||||
|
orgRevisionIsDraft: false,
|
||||||
|
orgRevisionIsCurrent: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
const record = await this.profileRepo.findOne({
|
const record = await this.profileRepo.findOne({
|
||||||
where: { id: profileId },
|
where: { id: profileId },
|
||||||
relations: {
|
relations: {
|
||||||
|
|
@ -138,10 +155,11 @@ export class ProfileGovernmentHistoryController extends Controller {
|
||||||
});
|
});
|
||||||
const posMaster = await this.posMasterRepo.findOne({
|
const posMaster = await this.posMasterRepo.findOne({
|
||||||
where: {
|
where: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profileId,
|
current_holderId: profileId,
|
||||||
},
|
},
|
||||||
order: { createdAt: "DESC" },
|
order: { createdAt: "DESC" },
|
||||||
|
|
@ -157,10 +175,11 @@ export class ProfileGovernmentHistoryController extends Controller {
|
||||||
where: {
|
where: {
|
||||||
positionIsSelected: true,
|
positionIsSelected: true,
|
||||||
posMaster: {
|
posMaster: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profileId,
|
current_holderId: profileId,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ import { EmployeePosition } from "../entities/EmployeePosition";
|
||||||
import { EmployeePosMaster } from "../entities/EmployeePosMaster";
|
import { EmployeePosMaster } from "../entities/EmployeePosMaster";
|
||||||
import { calculateAge, calculateRetireDate } from "../interfaces/utils";
|
import { calculateAge, calculateRetireDate } from "../interfaces/utils";
|
||||||
import permission from "../interfaces/permission";
|
import permission from "../interfaces/permission";
|
||||||
|
import { OrgRevision } from "../entities/OrgRevision";
|
||||||
@Route("api/v1/org/profile-employee/government")
|
@Route("api/v1/org/profile-employee/government")
|
||||||
@Tags("ProfileEmployeeGovernment")
|
@Tags("ProfileEmployeeGovernment")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
|
|
@ -35,7 +36,7 @@ export class ProfileGovernmentEmployeeController extends Controller {
|
||||||
private govRepo = AppDataSource.getRepository(ProfileGovernment);
|
private govRepo = AppDataSource.getRepository(ProfileGovernment);
|
||||||
private positionRepo = AppDataSource.getRepository(EmployeePosition);
|
private positionRepo = AppDataSource.getRepository(EmployeePosition);
|
||||||
private posMasterRepo = AppDataSource.getRepository(EmployeePosMaster);
|
private posMasterRepo = AppDataSource.getRepository(EmployeePosMaster);
|
||||||
|
private orgRevisionRepository = AppDataSource.getRepository(OrgRevision);
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @summary ข้อมูลราชการ
|
* @summary ข้อมูลราชการ
|
||||||
|
|
@ -43,6 +44,13 @@ export class ProfileGovernmentEmployeeController extends Controller {
|
||||||
*/
|
*/
|
||||||
@Get("user")
|
@Get("user")
|
||||||
public async getGovHistoryUser(@Request() request: { user: Record<string, any> }) {
|
public async getGovHistoryUser(@Request() request: { user: Record<string, any> }) {
|
||||||
|
const orgRevision = await this.orgRevisionRepository.findOne({
|
||||||
|
select: ["id"],
|
||||||
|
where: {
|
||||||
|
orgRevisionIsDraft: false,
|
||||||
|
orgRevisionIsCurrent: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
const profile = await this.profileEmployeeRepo.findOneBy({ keycloak: request.user.sub });
|
const profile = await this.profileEmployeeRepo.findOneBy({ keycloak: request.user.sub });
|
||||||
if (!profile) {
|
if (!profile) {
|
||||||
throw new HttpError(HttpStatus.BAD_REQUEST, "ไม่พบ profile ดังกล่าว");
|
throw new HttpError(HttpStatus.BAD_REQUEST, "ไม่พบ profile ดังกล่าว");
|
||||||
|
|
@ -56,10 +64,11 @@ export class ProfileGovernmentEmployeeController extends Controller {
|
||||||
});
|
});
|
||||||
const posMaster = await this.posMasterRepo.findOne({
|
const posMaster = await this.posMasterRepo.findOne({
|
||||||
where: {
|
where: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profile.id,
|
current_holderId: profile.id,
|
||||||
},
|
},
|
||||||
order: { createdAt: "DESC" },
|
order: { createdAt: "DESC" },
|
||||||
|
|
@ -136,6 +145,13 @@ export class ProfileGovernmentEmployeeController extends Controller {
|
||||||
@Example({})
|
@Example({})
|
||||||
public async getGovHistory(@Path() profileEmployeeId: string, @Request() req: RequestWithUser) {
|
public async getGovHistory(@Path() profileEmployeeId: string, @Request() req: RequestWithUser) {
|
||||||
await new permission().PermissionOrgUserGet(req, "SYS_REGISTRY_EMP", profileEmployeeId);
|
await new permission().PermissionOrgUserGet(req, "SYS_REGISTRY_EMP", profileEmployeeId);
|
||||||
|
const orgRevision = await this.orgRevisionRepository.findOne({
|
||||||
|
select: ["id"],
|
||||||
|
where: {
|
||||||
|
orgRevisionIsDraft: false,
|
||||||
|
orgRevisionIsCurrent: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
const record = await this.profileEmployeeRepo.findOne({
|
const record = await this.profileEmployeeRepo.findOne({
|
||||||
where: { id: profileEmployeeId },
|
where: { id: profileEmployeeId },
|
||||||
relations: {
|
relations: {
|
||||||
|
|
@ -145,10 +161,11 @@ export class ProfileGovernmentEmployeeController extends Controller {
|
||||||
});
|
});
|
||||||
const posMaster = await this.posMasterRepo.findOne({
|
const posMaster = await this.posMasterRepo.findOne({
|
||||||
where: {
|
where: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profileEmployeeId,
|
current_holderId: profileEmployeeId,
|
||||||
},
|
},
|
||||||
order: { createdAt: "DESC" },
|
order: { createdAt: "DESC" },
|
||||||
|
|
@ -164,10 +181,11 @@ export class ProfileGovernmentEmployeeController extends Controller {
|
||||||
where: {
|
where: {
|
||||||
positionIsSelected: true,
|
positionIsSelected: true,
|
||||||
posMaster: {
|
posMaster: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profileEmployeeId,
|
current_holderId: profileEmployeeId,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ import { EmployeePosition } from "../entities/EmployeePosition";
|
||||||
import { EmployeePosMaster } from "../entities/EmployeePosMaster";
|
import { EmployeePosMaster } from "../entities/EmployeePosMaster";
|
||||||
import { calculateAge, calculateRetireDate } from "../interfaces/utils";
|
import { calculateAge, calculateRetireDate } from "../interfaces/utils";
|
||||||
import permission from "../interfaces/permission";
|
import permission from "../interfaces/permission";
|
||||||
|
import { OrgRevision } from "../entities/OrgRevision";
|
||||||
@Route("api/v1/org/profile-temp/government")
|
@Route("api/v1/org/profile-temp/government")
|
||||||
@Tags("ProfileEmployeeGovernment")
|
@Tags("ProfileEmployeeGovernment")
|
||||||
@Security("bearerAuth")
|
@Security("bearerAuth")
|
||||||
|
|
@ -35,7 +36,7 @@ export class ProfileGovernmentEmployeeTempController extends Controller {
|
||||||
private govRepo = AppDataSource.getRepository(ProfileGovernment);
|
private govRepo = AppDataSource.getRepository(ProfileGovernment);
|
||||||
private positionRepo = AppDataSource.getRepository(EmployeePosition);
|
private positionRepo = AppDataSource.getRepository(EmployeePosition);
|
||||||
private posMasterRepo = AppDataSource.getRepository(EmployeePosMaster);
|
private posMasterRepo = AppDataSource.getRepository(EmployeePosMaster);
|
||||||
|
private orgRevisionRepository = AppDataSource.getRepository(OrgRevision);
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @summary ข้อมูลราชการ
|
* @summary ข้อมูลราชการ
|
||||||
|
|
@ -43,6 +44,13 @@ export class ProfileGovernmentEmployeeTempController extends Controller {
|
||||||
*/
|
*/
|
||||||
@Get("user")
|
@Get("user")
|
||||||
public async getGovHistoryUser(@Request() request: { user: Record<string, any> }) {
|
public async getGovHistoryUser(@Request() request: { user: Record<string, any> }) {
|
||||||
|
const orgRevision = await this.orgRevisionRepository.findOne({
|
||||||
|
select: ["id"],
|
||||||
|
where: {
|
||||||
|
orgRevisionIsDraft: false,
|
||||||
|
orgRevisionIsCurrent: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
const profile = await this.profileEmployeeRepo.findOneBy({ keycloak: request.user.sub });
|
const profile = await this.profileEmployeeRepo.findOneBy({ keycloak: request.user.sub });
|
||||||
if (!profile) {
|
if (!profile) {
|
||||||
throw new HttpError(HttpStatus.BAD_REQUEST, "ไม่พบ profile ดังกล่าว");
|
throw new HttpError(HttpStatus.BAD_REQUEST, "ไม่พบ profile ดังกล่าว");
|
||||||
|
|
@ -56,10 +64,11 @@ export class ProfileGovernmentEmployeeTempController extends Controller {
|
||||||
});
|
});
|
||||||
const posMaster = await this.posMasterRepo.findOne({
|
const posMaster = await this.posMasterRepo.findOne({
|
||||||
where: {
|
where: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profile.id,
|
current_holderId: profile.id,
|
||||||
},
|
},
|
||||||
order: { createdAt: "DESC" },
|
order: { createdAt: "DESC" },
|
||||||
|
|
@ -136,6 +145,13 @@ export class ProfileGovernmentEmployeeTempController extends Controller {
|
||||||
@Example({})
|
@Example({})
|
||||||
public async getGovHistory(@Path() profileEmployeeId: string, @Request() req: RequestWithUser) {
|
public async getGovHistory(@Path() profileEmployeeId: string, @Request() req: RequestWithUser) {
|
||||||
await new permission().PermissionGet(req, "SYS_REGISTRY_TEMP");
|
await new permission().PermissionGet(req, "SYS_REGISTRY_TEMP");
|
||||||
|
const orgRevision = await this.orgRevisionRepository.findOne({
|
||||||
|
select: ["id"],
|
||||||
|
where: {
|
||||||
|
orgRevisionIsDraft: false,
|
||||||
|
orgRevisionIsCurrent: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
const record = await this.profileEmployeeRepo.findOne({
|
const record = await this.profileEmployeeRepo.findOne({
|
||||||
where: { id: profileEmployeeId },
|
where: { id: profileEmployeeId },
|
||||||
relations: {
|
relations: {
|
||||||
|
|
@ -145,10 +161,11 @@ export class ProfileGovernmentEmployeeTempController extends Controller {
|
||||||
});
|
});
|
||||||
const posMaster = await this.posMasterRepo.findOne({
|
const posMaster = await this.posMasterRepo.findOne({
|
||||||
where: {
|
where: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profileEmployeeId,
|
current_holderId: profileEmployeeId,
|
||||||
},
|
},
|
||||||
order: { createdAt: "DESC" },
|
order: { createdAt: "DESC" },
|
||||||
|
|
@ -164,10 +181,11 @@ export class ProfileGovernmentEmployeeTempController extends Controller {
|
||||||
where: {
|
where: {
|
||||||
positionIsSelected: true,
|
positionIsSelected: true,
|
||||||
posMaster: {
|
posMaster: {
|
||||||
orgRevision: {
|
// orgRevision: {
|
||||||
orgRevisionIsCurrent: true,
|
// orgRevisionIsCurrent: true,
|
||||||
orgRevisionIsDraft: false,
|
// orgRevisionIsDraft: false,
|
||||||
},
|
// },
|
||||||
|
orgRevisionId: orgRevision?.id,
|
||||||
current_holderId: profileEmployeeId,
|
current_holderId: profileEmployeeId,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue