This commit is contained in:
kittapath 2025-03-17 15:38:02 +07:00
parent a6f1c3fea5
commit c5235e960d
2 changed files with 64 additions and 27 deletions

View file

@ -903,7 +903,17 @@ export class KeycloakController extends Controller {
}); });
for await (const _item of profiles) { for await (const _item of profiles) {
const result = await changeUserPassword(_item.keycloak, "P@ssw0rd"); let password = _item.citizenId;
if (_item.birthDate != null) {
const gregorianYear = _item.birthDate.getFullYear() + 543;
const formattedDate =
_item.birthDate.toISOString().slice(8, 10) +
_item.birthDate.toISOString().slice(5, 7) +
gregorianYear;
password = formattedDate;
}
const result = await changeUserPassword(_item.keycloak, password);
if (!result) { if (!result) {
continue; continue;
} }

View file

@ -1,4 +1,4 @@
import { Body, Controller, Get, Path, Post, Put, Request, Route, Security, Tags, } from "tsoa"; import { Body, Controller, Get, Path, Post, Put, Request, Route, Security, Tags } from "tsoa";
import { AppDataSource } from "../database/data-source"; import { AppDataSource } from "../database/data-source";
import { RequestWithUser } from "../middlewares/user"; import { RequestWithUser } from "../middlewares/user";
import HttpError from "../interfaces/http-error"; import HttpError from "../interfaces/http-error";
@ -658,7 +658,7 @@ export class WorkflowController extends Controller {
receiverUserIds: [ receiverUserIds: [
{ {
receiverUserId: body.profileId, receiverUserId: body.profileId,
notiLink: `${process.env.VITE_URL_SSO}/${assign.path}/${state.workflow.refId}`, notiLink: `${process.env.VITE_URL_MGT}/${assign.path}/${state.workflow.refId}`,
}, },
], ],
payload: "", //แนบไฟล์ payload: "", //แนบไฟล์
@ -802,6 +802,18 @@ export class WorkflowController extends Controller {
pageSize: number; pageSize: number;
}, },
) { ) {
let userId = "";
if (xxx) {
} else {
const posMasterUser = await this.posMasterRepo.findOne({
where: {
orgRevision: { orgRevisionIsCurrent: true, orgRevisionIsDraft: false },
current_holder: { keycloak: request.user.sub },
},
relations: ["current_holder", "current_holder.posType", "current_holder.posLevel"],
});
}
const posMasterUser = await this.posMasterRepo.findOne({ const posMasterUser = await this.posMasterRepo.findOne({
where: { where: {
orgRevision: { orgRevisionIsCurrent: true, orgRevisionIsDraft: false }, orgRevision: { orgRevisionIsCurrent: true, orgRevisionIsDraft: false },
@ -825,6 +837,19 @@ export class WorkflowController extends Controller {
}; };
if (type.trim().toUpperCase() == "OPERATE") { if (type.trim().toUpperCase() == "OPERATE") {
condition = {
isDirector: true,
orgRootId: posMasterUser.orgRootId,
orgRevisionId: posMasterUser.orgRevisionId,
// orgChild1Id: IsNull(),
// orgChild2Id: IsNull(),
// orgChild3Id: IsNull(),
// orgChild4Id: IsNull(),
};
condition.orgChild1Id = IsNull();
condition.orgChild2Id = IsNull();
condition.orgChild3Id = IsNull();
condition.orgChild4Id = IsNull();
} else { } else {
if ( if (
(posMasterUser.current_holder.posType.posTypeName == "ทั่วไป" && (posMasterUser.current_holder.posType.posTypeName == "ทั่วไป" &&
@ -1144,46 +1169,48 @@ export class WorkflowController extends Controller {
return new HttpSuccess(); return new HttpSuccess();
} }
/** /**
* API * API
* *
* @summary * @summary
* *
*/ */
@Post("find/director") @Post("find/director")
async getProfileDirectorByProfileId(@Request() req: RequestWithUser, async getProfileDirectorByProfileId(
@Body() @Request() req: RequestWithUser,
body: { @Body()
refId: string[]; body: {
},) { refId: string[];
},
) {
const _posMaster = await this.posMasterRepo.find({ const _posMaster = await this.posMasterRepo.find({
where: { where: {
orgRevision: { orgRevisionIsDraft: false, orgRevisionIsCurrent: true }, orgRevision: { orgRevisionIsDraft: false, orgRevisionIsCurrent: true },
current_holderId: In(body.refId), current_holderId: In(body.refId),
}, },
select:["orgRootId","orgChild1Id","orgChild2Id","orgChild3Id","orgChild4Id"] select: ["orgRootId", "orgChild1Id", "orgChild2Id", "orgChild3Id", "orgChild4Id"],
}); });
const _data:any = _posMaster.map((x) => ({ const _data: any = _posMaster.map((x) => ({
orgRootId: x.orgRootId, orgRootId: x.orgRootId,
orgChild1Id: x.orgChild1Id, orgChild1Id: x.orgChild1Id,
orgChild2Id: x.orgChild2Id, orgChild2Id: x.orgChild2Id,
orgChild3Id: x.orgChild3Id, orgChild3Id: x.orgChild3Id,
orgChild4Id: x.orgChild4Id, orgChild4Id: x.orgChild4Id,
isDirector: true, isDirector: true,
current_holder: Not(IsNull()), current_holder: Not(IsNull()),
})); }));
const posMaster = await this.posMasterRepo.find({ const posMaster = await this.posMasterRepo.find({
where: _data, where: _data,
relations:["current_holder"] relations: ["current_holder"],
}); });
const data = posMaster.map((x) => ({ const data = posMaster.map((x) => ({
id: x.current_holder.id, id: x.current_holder.id,
citizenId: x.current_holder.citizenId, citizenId: x.current_holder.citizenId,
prefix: x.current_holder.prefix, prefix: x.current_holder.prefix,
firstName: x.current_holder.firstName, firstName: x.current_holder.firstName,
lastName: x.current_holder.lastName, lastName: x.current_holder.lastName,
})); }));
return new HttpSuccess(data); return new HttpSuccess(data);
} }
} }