rez_core 2.1.10 → 2.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dtos/response.d.ts +5 -0
- package/dist/dtos/response.js +3 -0
- package/dist/dtos/response.js.map +1 -0
- package/dist/module/filter/controller/filter.controller.js +1 -0
- package/dist/module/filter/controller/filter.controller.js.map +1 -1
- package/dist/module/filter/dto/filter-request.dto.d.ts +1 -0
- package/dist/module/filter/service/filter.service.js +8 -2
- package/dist/module/filter/service/filter.service.js.map +1 -1
- package/dist/module/listmaster/controller/list-master.controller.d.ts +1 -1
- package/dist/module/listmaster/controller/list-master.controller.js +12 -4
- package/dist/module/listmaster/controller/list-master.controller.js.map +1 -1
- package/dist/module/listmaster/service/list-master.service.d.ts +2 -1
- package/dist/module/listmaster/service/list-master.service.js +53 -13
- package/dist/module/listmaster/service/list-master.service.js.map +1 -1
- package/dist/module/meta/controller/entity.controller.d.ts +2 -2
- package/dist/module/meta/controller/entity.controller.js +71 -20
- package/dist/module/meta/controller/entity.controller.js.map +1 -1
- package/dist/module/module/controller/module-access.controller.d.ts +1 -0
- package/dist/module/module/controller/module-access.controller.js +26 -4
- package/dist/module/module/controller/module-access.controller.js.map +1 -1
- package/dist/module/module/repository/module-access.repository.d.ts +7 -5
- package/dist/module/module/repository/module-access.repository.js +45 -18
- package/dist/module/module/repository/module-access.repository.js.map +1 -1
- package/dist/module/module/service/module-access.service.d.ts +14 -8
- package/dist/module/module/service/module-access.service.js +15 -7
- package/dist/module/module/service/module-access.service.js.map +1 -1
- package/dist/module/user/service/role.service.d.ts +3 -2
- package/dist/module/user/service/role.service.js +22 -10
- package/dist/module/user/service/role.service.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/dtos/response.ts +5 -0
- package/src/module/filter/controller/filter.controller.ts +1 -0
- package/src/module/filter/dto/filter-request.dto.ts +1 -0
- package/src/module/filter/service/filter.service.ts +9 -1
- package/src/module/listmaster/controller/list-master.controller.ts +32 -3
- package/src/module/listmaster/service/list-master.service.ts +93 -13
- package/src/module/meta/controller/entity.controller.ts +101 -47
- package/src/module/module/controller/module-access.controller.ts +26 -5
- package/src/module/module/repository/module-access.repository.ts +55 -16
- package/src/module/module/service/module-access.service.ts +37 -9
- package/src/module/user/service/role.service.ts +25 -14
|
@@ -8,6 +8,7 @@ import { RoleRepository } from '../repository/role.repository';
|
|
|
8
8
|
import { EntityManager, Repository } from 'typeorm';
|
|
9
9
|
import { InjectRepository } from '@nestjs/typeorm';
|
|
10
10
|
import { ModuleAccess } from '../../module/entity/module-access.entity';
|
|
11
|
+
import { ServiceResult } from 'src/dtos/response';
|
|
11
12
|
|
|
12
13
|
@Injectable()
|
|
13
14
|
export class RoleService extends EntityServiceImpl {
|
|
@@ -23,7 +24,7 @@ export class RoleService extends EntityServiceImpl {
|
|
|
23
24
|
async createEntity(
|
|
24
25
|
entityData: BaseEntity,
|
|
25
26
|
loggedInUser: UserData,
|
|
26
|
-
): Promise<BaseEntity
|
|
27
|
+
): Promise<ServiceResult<BaseEntity>> {
|
|
27
28
|
let role = entityData as Role;
|
|
28
29
|
|
|
29
30
|
// if level_type and level_id are not provided, use loggedInUser's values
|
|
@@ -40,7 +41,7 @@ export class RoleService extends EntityServiceImpl {
|
|
|
40
41
|
parseInt(loggedInUser?.level_id || '', 10),
|
|
41
42
|
})
|
|
42
43
|
) {
|
|
43
|
-
|
|
44
|
+
return { success: false, error: 'Role code already exists.' };
|
|
44
45
|
}
|
|
45
46
|
|
|
46
47
|
const sourceRole = role.copy_from_role_id
|
|
@@ -48,7 +49,7 @@ export class RoleService extends EntityServiceImpl {
|
|
|
48
49
|
: null;
|
|
49
50
|
|
|
50
51
|
if (role.copy_from_role_id && !sourceRole) {
|
|
51
|
-
|
|
52
|
+
return { success: false, error: 'Source role not found.' };
|
|
52
53
|
}
|
|
53
54
|
|
|
54
55
|
const savedRole = await super.createEntity(role, loggedInUser);
|
|
@@ -70,15 +71,15 @@ export class RoleService extends EntityServiceImpl {
|
|
|
70
71
|
|
|
71
72
|
await this.moduleAccessRepo.save(clonedPermissions);
|
|
72
73
|
}
|
|
73
|
-
return savedRole;
|
|
74
|
+
return { success: true, data: savedRole };
|
|
74
75
|
}
|
|
75
76
|
|
|
76
77
|
async updateEntity(
|
|
77
78
|
entityData: BaseEntity,
|
|
78
79
|
loggedInUser: UserData | null,
|
|
79
|
-
): Promise<BaseEntity
|
|
80
|
+
): Promise<ServiceResult<BaseEntity>> {
|
|
80
81
|
if (!entityData.name) {
|
|
81
|
-
|
|
82
|
+
return { success: false, error: 'Role name is required' };
|
|
82
83
|
}
|
|
83
84
|
const role = entityData as Role;
|
|
84
85
|
|
|
@@ -90,7 +91,7 @@ export class RoleService extends EntityServiceImpl {
|
|
|
90
91
|
);
|
|
91
92
|
|
|
92
93
|
if (!existingRole) {
|
|
93
|
-
|
|
94
|
+
return { success: false, error: 'Role not found' };
|
|
94
95
|
}
|
|
95
96
|
|
|
96
97
|
const associatedUsers = await this.entityManager.query(`SELECT map.*
|
|
@@ -100,13 +101,17 @@ export class RoleService extends EntityServiceImpl {
|
|
|
100
101
|
and map.role_id = ${existingRole?.id}`);
|
|
101
102
|
|
|
102
103
|
if (associatedUsers.length > 0) {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
104
|
+
return {
|
|
105
|
+
success: false,
|
|
106
|
+
error: 'Cannot deactivate role as it is associated with active users',
|
|
107
|
+
};
|
|
106
108
|
}
|
|
107
109
|
|
|
108
110
|
if (role.is_system === 1) {
|
|
109
|
-
|
|
111
|
+
return {
|
|
112
|
+
success: false,
|
|
113
|
+
error: 'Cannot deactivate system role',
|
|
114
|
+
};
|
|
110
115
|
}
|
|
111
116
|
}
|
|
112
117
|
|
|
@@ -116,7 +121,10 @@ export class RoleService extends EntityServiceImpl {
|
|
|
116
121
|
organization_id: loggedInUser?.organization_id,
|
|
117
122
|
})
|
|
118
123
|
) {
|
|
119
|
-
|
|
124
|
+
return {
|
|
125
|
+
success: false,
|
|
126
|
+
error: 'Role name already exists.',
|
|
127
|
+
};
|
|
120
128
|
}
|
|
121
129
|
|
|
122
130
|
const { copy_from_role_id, ...persistableData } = role;
|
|
@@ -129,7 +137,10 @@ export class RoleService extends EntityServiceImpl {
|
|
|
129
137
|
);
|
|
130
138
|
|
|
131
139
|
if (!sourceRole) {
|
|
132
|
-
|
|
140
|
+
return {
|
|
141
|
+
success: false,
|
|
142
|
+
error: 'Source role not found',
|
|
143
|
+
};
|
|
133
144
|
}
|
|
134
145
|
|
|
135
146
|
await this.moduleAccessRepo.delete({ role_code: role.code });
|
|
@@ -151,7 +162,7 @@ export class RoleService extends EntityServiceImpl {
|
|
|
151
162
|
|
|
152
163
|
await this.moduleAccessRepo.save(clonedPermissions);
|
|
153
164
|
}
|
|
154
|
-
return updatedRole;
|
|
165
|
+
return { success: true, data: updatedRole };
|
|
155
166
|
}
|
|
156
167
|
|
|
157
168
|
async getDefaultRole(data: {
|