fix report & comment reset pass
This commit is contained in:
parent
0be55a03a9
commit
db9875a84b
3 changed files with 128 additions and 138 deletions
|
|
@ -174,13 +174,13 @@ export class ReportController extends Controller {
|
||||||
async registryOfficer(
|
async registryOfficer(
|
||||||
@Query() node?: number,
|
@Query() node?: number,
|
||||||
@Query() nodeId?: string,
|
@Query() nodeId?: string,
|
||||||
@Query() posTypeName?: string,
|
@Query() posType?: string,
|
||||||
@Query() posLevelName?: string,
|
@Query() posLevel?: string,
|
||||||
@Query() position?: string,
|
@Query() position?: string,
|
||||||
@Query() posExecutiveName?: string,
|
@Query() posExecutiveName?: string,
|
||||||
@Query() gender?: string,
|
@Query() gender?: string,
|
||||||
@Query() relationship?: string,
|
@Query() status?: string,
|
||||||
@Query() degree?: string,
|
@Query() education?: string,
|
||||||
@Query() startDateAppoint?: Date,
|
@Query() startDateAppoint?: Date,
|
||||||
@Query() endDateAppoint?: Date,
|
@Query() endDateAppoint?: Date,
|
||||||
@Query() ageMin?: number,
|
@Query() ageMin?: number,
|
||||||
|
|
@ -251,58 +251,60 @@ export class ReportController extends Controller {
|
||||||
})
|
})
|
||||||
.andWhere(IsLeavecondition.join(" AND "), parameters)
|
.andWhere(IsLeavecondition.join(" AND "), parameters)
|
||||||
.andWhere(
|
.andWhere(
|
||||||
new Brackets((qb) => {
|
posType != null && posType != ""
|
||||||
qb.orWhere(
|
? "registryOfficer.posTypeName LIKE :posTypeName"
|
||||||
posTypeName != null && posTypeName != ""
|
: "1=1",
|
||||||
? "registryOfficer.posTypeName LIKE :posTypeName"
|
{
|
||||||
: "1=1",
|
posTypeName: `%${posType}%`,
|
||||||
{
|
}
|
||||||
posTypeName: `%${posTypeName}%`,
|
)
|
||||||
},
|
.andWhere(
|
||||||
);
|
posLevel != null && posLevel != ""
|
||||||
qb.orWhere(
|
? "registryOfficer.posLevelName LIKE :posLevelName"
|
||||||
posLevelName != null && posLevelName != ""
|
: "1=1",
|
||||||
? "registryOfficer.posLevelName LIKE :posLevelName"
|
{
|
||||||
: "1=1",
|
posLevelName: `%${posLevel}%`,
|
||||||
{
|
}
|
||||||
posLevelName: `%${posLevelName}%`,
|
)
|
||||||
},
|
.andWhere(
|
||||||
);
|
position != null && position != ""
|
||||||
qb.orWhere(
|
? "registryOfficer.position LIKE :position"
|
||||||
position != null && position != "" ? "registryOfficer.position LIKE :position" : "1=1",
|
: "1=1",
|
||||||
{
|
{
|
||||||
position: `%${position}%`,
|
position: `%${position}%`,
|
||||||
},
|
}
|
||||||
);
|
)
|
||||||
qb.orWhere(
|
.andWhere(
|
||||||
posExecutiveName != null && posExecutiveName != ""
|
posExecutiveName != null && posExecutiveName != ""
|
||||||
? "registryOfficer.posExecutiveName LIKE :posExecutiveName"
|
? "registryOfficer.posExecutiveName LIKE :posExecutiveName"
|
||||||
: "1=1",
|
: "1=1",
|
||||||
{
|
{
|
||||||
posExecutiveName: `%${posExecutiveName}%`,
|
posExecutiveName: `%${posExecutiveName}%`,
|
||||||
},
|
}
|
||||||
);
|
)
|
||||||
qb.orWhere(
|
.andWhere(
|
||||||
gender != null && gender != "" ? "registryOfficer.gender LIKE :gender" : "1=1",
|
gender != null && gender != ""
|
||||||
{
|
? "registryOfficer.gender LIKE :gender"
|
||||||
gender: `%${gender}%`,
|
: "1=1",
|
||||||
},
|
{
|
||||||
);
|
gender: `%${gender}%`,
|
||||||
qb.orWhere(
|
}
|
||||||
relationship != null && relationship != ""
|
)
|
||||||
? "registryOfficer.relationship LIKE :relationship"
|
.andWhere(
|
||||||
: "1=1",
|
status != null && status != ""
|
||||||
{
|
? "registryOfficer.relationship LIKE :relationship"
|
||||||
relationship: `%${relationship}%`,
|
: "1=1",
|
||||||
},
|
{
|
||||||
);
|
relationship: `%${status}%`,
|
||||||
qb.orWhere(
|
}
|
||||||
degree != null && degree != "" ? "registryOfficer.degree LIKE :degree" : "1=1",
|
)
|
||||||
{
|
.andWhere(
|
||||||
degree: `%${degree}%`,
|
education != null && education != ""
|
||||||
},
|
? "registryOfficer.degree LIKE :degree"
|
||||||
);
|
: "1=1",
|
||||||
}),
|
{
|
||||||
|
degree: `%${education}%`,
|
||||||
|
}
|
||||||
)
|
)
|
||||||
.orderBy(`registryOfficer.${sortBy}`, sort)
|
.orderBy(`registryOfficer.${sortBy}`, sort)
|
||||||
.getManyAndCount();
|
.getManyAndCount();
|
||||||
|
|
@ -469,12 +471,12 @@ export class ReportController extends Controller {
|
||||||
async registryEmployee(
|
async registryEmployee(
|
||||||
@Query() node?: number,
|
@Query() node?: number,
|
||||||
@Query() nodeId?: string,
|
@Query() nodeId?: string,
|
||||||
@Query() posTypeName?: string,
|
@Query() posType?: string,
|
||||||
@Query() posLevelName?: string,
|
@Query() posLevel?: string,
|
||||||
@Query() position?: string,
|
@Query() position?: string,
|
||||||
@Query() gender?: string,
|
@Query() gender?: string,
|
||||||
@Query() relationship?: string,
|
@Query() status?: string,
|
||||||
@Query() degree?: string,
|
@Query() education?: string,
|
||||||
@Query() startDateAppoint?: Date,
|
@Query() startDateAppoint?: Date,
|
||||||
@Query() endDateAppoint?: Date,
|
@Query() endDateAppoint?: Date,
|
||||||
@Query() isProbation?: boolean,
|
@Query() isProbation?: boolean,
|
||||||
|
|
@ -545,50 +547,52 @@ export class ReportController extends Controller {
|
||||||
.andWhere(IsLeavecondition.join(" AND "), parameters)
|
.andWhere(IsLeavecondition.join(" AND "), parameters)
|
||||||
.andWhere("registryEmployee.employeeClass = 'PERM'")
|
.andWhere("registryEmployee.employeeClass = 'PERM'")
|
||||||
.andWhere(
|
.andWhere(
|
||||||
new Brackets((qb) => {
|
posType != null && posType != ""
|
||||||
qb.orWhere(
|
? "registryOfficer.posTypeName LIKE :posTypeName"
|
||||||
posTypeName != null && posTypeName != ""
|
: "1=1",
|
||||||
? "registryEmployee.posTypeName LIKE :posTypeName"
|
{
|
||||||
: "1=1",
|
posTypeName: `%${posType}%`,
|
||||||
{
|
}
|
||||||
posTypeName: `%${posTypeName}%`,
|
)
|
||||||
},
|
.andWhere(
|
||||||
);
|
posLevel != null && posLevel != ""
|
||||||
qb.orWhere(
|
? "registryOfficer.posLevelName LIKE :posLevelName"
|
||||||
posLevelName != null && posLevelName != ""
|
: "1=1",
|
||||||
? "registryEmployee.posLevelName LIKE :posLevelName"
|
{
|
||||||
: "1=1",
|
posLevelName: `%${posLevel}%`,
|
||||||
{
|
}
|
||||||
posLevelName: `%${posLevelName}%`,
|
)
|
||||||
},
|
.andWhere(
|
||||||
);
|
position != null && position != ""
|
||||||
qb.orWhere(
|
? "registryOfficer.position LIKE :position"
|
||||||
position != null && position != "" ? "registryEmployee.position LIKE :position" : "1=1",
|
: "1=1",
|
||||||
{
|
{
|
||||||
position: `%${position}%`,
|
position: `%${position}%`,
|
||||||
},
|
}
|
||||||
);
|
)
|
||||||
qb.orWhere(
|
.andWhere(
|
||||||
gender != null && gender != "" ? "registryEmployee.gender LIKE :gender" : "1=1",
|
gender != null && gender != ""
|
||||||
{
|
? "registryOfficer.gender LIKE :gender"
|
||||||
gender: `%${gender}%`,
|
: "1=1",
|
||||||
},
|
{
|
||||||
);
|
gender: `%${gender}%`,
|
||||||
qb.orWhere(
|
}
|
||||||
relationship != null && relationship != ""
|
)
|
||||||
? "registryEmployee.relationship LIKE :relationship"
|
.andWhere(
|
||||||
: "1=1",
|
status != null && status != ""
|
||||||
{
|
? "registryOfficer.relationship LIKE :relationship"
|
||||||
relationship: `%${relationship}%`,
|
: "1=1",
|
||||||
},
|
{
|
||||||
);
|
relationship: `%${status}%`,
|
||||||
qb.orWhere(
|
}
|
||||||
degree != null && degree != "" ? "registryEmployee.degree LIKE :degree" : "1=1",
|
)
|
||||||
{
|
.andWhere(
|
||||||
degree: `%${degree}%`,
|
education != null && education != ""
|
||||||
},
|
? "registryOfficer.degree LIKE :degree"
|
||||||
);
|
: "1=1",
|
||||||
}),
|
{
|
||||||
|
degree: `%${education}%`,
|
||||||
|
}
|
||||||
)
|
)
|
||||||
.orderBy(`registryEmployee.${sortBy}`, sort)
|
.orderBy(`registryEmployee.${sortBy}`, sort)
|
||||||
.getManyAndCount();
|
.getManyAndCount();
|
||||||
|
|
|
||||||
|
|
@ -830,18 +830,4 @@ export class KeycloakController extends Controller {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Post("user/reset-password")
|
|
||||||
async forgetPassword(
|
|
||||||
@Request() request: { user: { sub: string; preferred_username: string } },
|
|
||||||
@Body()
|
|
||||||
body: {
|
|
||||||
username: string;
|
|
||||||
},
|
|
||||||
) {
|
|
||||||
const result = await resetPassword(body.username);
|
|
||||||
if (!result) {
|
|
||||||
throw new Error("Failed. Cannot change password.");
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -767,26 +767,26 @@ export async function changeUserPassword(userId: string, newPassword: string) {
|
||||||
// Function to reset password
|
// Function to reset password
|
||||||
export async function resetPassword(username: string) {
|
export async function resetPassword(username: string) {
|
||||||
try {
|
try {
|
||||||
if (!API_KEY || !AUTH_ACCOUNT_SECRET) {
|
// if (!API_KEY || !AUTH_ACCOUNT_SECRET) {
|
||||||
throw new Error("KC_CLIENT_ID and KC_SECRET are required to used this feature.");
|
// throw new Error("KC_CLIENT_ID and KC_SECRET are required to used this feature.");
|
||||||
}
|
// }
|
||||||
const body = new URLSearchParams();
|
// const body = new URLSearchParams();
|
||||||
body.append("client_id", "gettoken");
|
// body.append("client_id", "gettoken");
|
||||||
body.append("client_secret", AUTH_ACCOUNT_SECRET?.toString());
|
// body.append("client_secret", AUTH_ACCOUNT_SECRET?.toString());
|
||||||
body.append("grant_type", "client_credentials");
|
// body.append("grant_type", "client_credentials");
|
||||||
const tokenResponse = await fetch(`${process.env.KC_URL}/realms/${process.env.KC_REALMS}/protocol/openid-connect/token`, {
|
// const tokenResponse = await fetch(`${process.env.KC_URL}/realms/${process.env.KC_REALMS}/protocol/openid-connect/token`, {
|
||||||
method: "POST",
|
// method: "POST",
|
||||||
headers: {
|
// headers: {
|
||||||
"Content-Type": "application/x-www-form-urlencoded",
|
// "Content-Type": "application/x-www-form-urlencoded",
|
||||||
api_key: API_KEY,
|
// api_key: API_KEY,
|
||||||
},
|
// },
|
||||||
body: body
|
// body: body
|
||||||
});
|
// });
|
||||||
if (!tokenResponse.ok) {
|
// if (!tokenResponse.ok) {
|
||||||
throw new Error("Failed to get admin token");
|
// throw new Error("Failed to get admin token");
|
||||||
}
|
// }
|
||||||
const tokenData = await tokenResponse.json();
|
// const tokenData = await tokenResponse.json();
|
||||||
const adminToken = tokenData.access_token;
|
// const adminToken = tokenData.access_token;
|
||||||
|
|
||||||
const users = await fetch(`${KC_URL}/admin/realms/${KC_REALMS}/users?email=${encodeURIComponent(username)}`, {
|
const users = await fetch(`${KC_URL}/admin/realms/${KC_REALMS}/users?email=${encodeURIComponent(username)}`, {
|
||||||
headers: {
|
headers: {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue