Skip to content

Commit

Permalink
Merge pull request #164 from Sourav-Tekdi/create_user_fix
Browse files Browse the repository at this point in the history
Create user fixes
  • Loading branch information
Shubham4026 authored Feb 25, 2025
2 parents 1510ed6 + 039b365 commit 4c8d00a
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 27 deletions.
23 changes: 13 additions & 10 deletions src/adapters/postgres/fields-adapter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1641,26 +1641,29 @@ export class PostgresFieldsService implements IServicelocatorfields {
}

async updateCustomFields(itemId, data, fieldAttributesAndParams) {
if (Array.isArray(data.value)) {
data.value = data.value.join(",");
// Ensure value is stored as an array
if (!Array.isArray(data.value)) {
data.value = [data.value]; // Convert single value to array
}

const result: any = await this.fieldsValuesRepository.update(
{ itemId, fieldId: data.fieldId },
{ value: data.value }
{ itemId, fieldId: data.fieldId },
{ value: data.value }
);

let newResult;
if (result.affected === 0) {
newResult = await this.fieldsValuesRepository.save({
itemId,
fieldId: data.fieldId,
value: data.value,
});
newResult = await this.fieldsValuesRepository.save({
itemId,
fieldId: data.fieldId,
value: data.value,
});
}

Object.assign(result, newResult);
result["correctValue"] = true;
return result;
}
}

validateFieldValue(field: any, value: any) {
try {
Expand Down
44 changes: 27 additions & 17 deletions src/adapters/postgres/user-adapter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1179,7 +1179,7 @@ export class PostgresUserService implements IServicelocator {
HttpStatus.CREATED,
API_RESPONSES.USER_CREATE_SUCCESSFULLY
);
} catch (e) {
} catch (e) {
LoggerUtil.error(
`${API_RESPONSES.SERVER_ERROR}: ${request.url}`,
`Error: ${e.message}`,
Expand Down Expand Up @@ -1279,11 +1279,11 @@ export class PostgresUserService implements IServicelocator {
if (duplicateTenet.includes(tenantId)) {
errorCollector.addError(API_RESPONSES.DUPLICAT_TENANTID);
}

if ((tenantId && !roleId) || (!tenantId && roleId)) {
errorCollector.addError(API_RESPONSES.INVALID_PARAMETERS);
}

// if ((tenantId && !roleId) || (!tenantId && roleId)) {
// errorCollector.addError(API_RESPONSES.INVALID_PARAMETERS);
// }
const [tenantExists, notExistCohort, roleExists] = await Promise.all([
tenantId
? this.tenantsRepository.find({ where: { tenantId } })
Expand All @@ -1292,9 +1292,9 @@ export class PostgresUserService implements IServicelocator {
? this.checkCohortExistsInAcademicYear(academicYearId, cohortIds)
: Promise.resolve([]),
roleId
? this.roleRepository.find({ where: { roleId, tenantId } })
? this.roleRepository.find({ where: { roleId } })
: Promise.resolve([]),
]);
]);

if (tenantExists.length === 0) {
errorCollector.addError(`Tenant Id '${tenantId}' does not exist.`);
Expand All @@ -1306,12 +1306,20 @@ export class PostgresUserService implements IServicelocator {
);
}

if (roleExists && roleExists?.length === 0) {


if (roleExists && roleExists?.length === 0) {
errorCollector.addError(
`Role Id '${roleId}' does not exist for this tenant '${tenantId}'.`
`Role Id '${roleId}' does not exist.`
);
} else if (roleExists) {
roleData = [...roleData, ...roleExists];
if((roleExists[0].tenantId || roleExists[0].tenantId !== null) && roleExists[0].tenantId !== tenantId){
errorCollector.addError(
`Role Id '${roleId}' does not exist for this tenant '${tenantId}'.`
);
}else{
roleData = [...roleData, ...roleExists];
}
}
}
} else {
Expand Down Expand Up @@ -1438,12 +1446,14 @@ export class PostgresUserService implements IServicelocator {
});
}

const data = await this.userTenantMappingRepository.save({
userId: userId,
tenantId: tenantId,
createdBy: request["user"]?.userId || userId,
updatedBy: request["user"]?.userId || userId,
});
if(tenantId){
const data = await this.userTenantMappingRepository.save({
userId: userId,
tenantId: tenantId,
createdBy: request["user"]?.userId || userId,
updatedBy: request["user"]?.userId || userId,
});
}

LoggerUtil.log(API_RESPONSES.USER_TENANT);
} catch (error) {
Expand Down

0 comments on commit 4c8d00a

Please sign in to comment.