Fix some issues
This commit is contained in:
parent
bbb5b5ae36
commit
ed7edef021
@ -143,7 +143,7 @@ app.get('/api/v1/db/:tableName', async (req, res) => {
|
|||||||
|
|
||||||
if (tableName === 'rules_groups') {
|
if (tableName === 'rules_groups') {
|
||||||
const rulesGroups = await Promise.all((await Database.query(`SELECT * FROM ${tableName} ORDER BY 1 LIMIT $1 OFFSET $2`, [limit, offset])).rows.map(async (ruleGroup) => {
|
const rulesGroups = await Promise.all((await Database.query(`SELECT * FROM ${tableName} ORDER BY 1 LIMIT $1 OFFSET $2`, [limit, offset])).rows.map(async (ruleGroup) => {
|
||||||
const result = await Database.query(`SELECT a.* FROM rules AS a JOIN "_RulesGroupsHasRules" as b ON a.uid = b."A" AND b."B" = '${ruleGroup.uid}';`);
|
const result = await Database.query(`SELECT a.* FROM rules AS a JOIN "_RulesGroupsHasRules" as b ON b."A" = a.uid AND b."B" = '${ruleGroup.uid}';`);
|
||||||
return {
|
return {
|
||||||
uid: ruleGroup.uid,
|
uid: ruleGroup.uid,
|
||||||
name: ruleGroup.name,
|
name: ruleGroup.name,
|
||||||
@ -171,6 +171,39 @@ app.get('/api/v1/db/:tableName', async (req, res) => {
|
|||||||
table: tableName,
|
table: tableName,
|
||||||
timestamp: new Date().toISOString()
|
timestamp: new Date().toISOString()
|
||||||
});
|
});
|
||||||
|
} else if (tableName === 'office_roles') {
|
||||||
|
const officeRoles = await Promise.all((await Database.query(`SELECT * FROM ${tableName} ORDER BY 1 LIMIT $1 OFFSET $2`, [limit, offset])).rows.map(async (officeRole) => {
|
||||||
|
const result = await Database.query(`SELECT a.* FROM rules AS a JOIN "_OfficeRolesHasRules" as b ON b."B" = a.uid AND b."A" = '${officeRole.uid}';`);
|
||||||
|
return {
|
||||||
|
uid: officeRole.uid,
|
||||||
|
name: officeRole.name,
|
||||||
|
office: {
|
||||||
|
uid: officeRole.office_uid
|
||||||
|
},
|
||||||
|
rules: result.rows.map((rule) => {
|
||||||
|
return {
|
||||||
|
uid: rule.uid
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
created_at: officeRole.created_at,
|
||||||
|
updated_at: officeRole.updated_at
|
||||||
|
};
|
||||||
|
}));
|
||||||
|
|
||||||
|
res.json({
|
||||||
|
success: true,
|
||||||
|
data: officeRoles,
|
||||||
|
pagination: {
|
||||||
|
page,
|
||||||
|
limit,
|
||||||
|
total,
|
||||||
|
totalPages: Math.ceil(total / limit),
|
||||||
|
hasNextPage: page < Math.ceil(total / limit),
|
||||||
|
hasPrevPage: page > 1
|
||||||
|
},
|
||||||
|
table: tableName,
|
||||||
|
timestamp: new Date().toISOString()
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
const result = await Database.query(`SELECT * FROM ${tableName} ORDER BY 1 LIMIT $1 OFFSET $2`, [limit, offset]);
|
const result = await Database.query(`SELECT * FROM ${tableName} ORDER BY 1 LIMIT $1 OFFSET $2`, [limit, offset]);
|
||||||
|
|
||||||
@ -198,6 +231,54 @@ app.get('/api/v1/db/:tableName', async (req, res) => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
app.get('/api/notaries', async (req, res) => {
|
||||||
|
const page = req.query.page || 1;
|
||||||
|
const size = req.query.size || 10;
|
||||||
|
const firstName = req.query.firstName || null;
|
||||||
|
const lastName = req.query.lastName || null;
|
||||||
|
|
||||||
|
const searchParams = new URLSearchParams({
|
||||||
|
key: 'ba557f84-0bf6-4dbf-844f-df2767555e3e'
|
||||||
|
});
|
||||||
|
|
||||||
|
try {
|
||||||
|
let url = `https://qual-api.notaires.fr/annuaire/api/pp/v2/personnes?page=${page}&size=${size}`;
|
||||||
|
if (firstName) {
|
||||||
|
url += `&ctmPrenom=${firstName}`;
|
||||||
|
}
|
||||||
|
if (lastName) {
|
||||||
|
url += `&ctmNomUsuel=${lastName}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
const result = await (
|
||||||
|
await fetch(`${url}&` + searchParams, {
|
||||||
|
method: 'GET'
|
||||||
|
})
|
||||||
|
).json();
|
||||||
|
|
||||||
|
result.result = result.result.map(r => {
|
||||||
|
return {
|
||||||
|
id: r.uid,
|
||||||
|
activity: r.activite,
|
||||||
|
civility: getCivility(r.civility),
|
||||||
|
lastName: r.nomUsuel,
|
||||||
|
firstName: r.prenom,
|
||||||
|
crpcen: r.numeroAdherentCrpcen,
|
||||||
|
lastModified: r.lastModified,
|
||||||
|
delete: r.delete
|
||||||
|
}
|
||||||
|
});
|
||||||
|
result.totalPages = Math.ceil(result.totalResultCount / result.size);
|
||||||
|
|
||||||
|
res.json(result);
|
||||||
|
} catch (error) {
|
||||||
|
res.status(500).json({
|
||||||
|
error: 'Internal Server Error',
|
||||||
|
message: error.message
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
app.post('/api/v1/idnot/user/:code', async (req, res) => {
|
app.post('/api/v1/idnot/user/:code', async (req, res) => {
|
||||||
const code = req.params.code;
|
const code = req.params.code;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user