doomiwork 3.2.0 → 3.3.2
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/core/database/daoBase.js +191 -84
- package/package.json +1 -1
package/core/database/daoBase.js
CHANGED
|
@@ -132,60 +132,112 @@ class mysqlDao extends dao{
|
|
|
132
132
|
if (!this.hasPermissionControl){
|
|
133
133
|
return null;
|
|
134
134
|
}
|
|
135
|
+
// const sqlCommand = `select
|
|
136
|
+
// data_type as datatype,
|
|
137
|
+
// data_id as id,
|
|
138
|
+
// permission_type as permissiontype,
|
|
139
|
+
// data_department as department,
|
|
140
|
+
// data_department_text as departmenttext,
|
|
141
|
+
// data_role as role,
|
|
142
|
+
// data_role_text as roletext,
|
|
143
|
+
// data_level as level,
|
|
144
|
+
// data_level_text as leveltext,
|
|
145
|
+
// data_user as user,
|
|
146
|
+
// data_user_text as usertext
|
|
147
|
+
// from vmv3_data_permission
|
|
148
|
+
// where data_type=?
|
|
149
|
+
// and data_id=?
|
|
150
|
+
// `
|
|
151
|
+
// return this.executeSql(sqlCommand, [this.tableoption.permissiondatatype,id])
|
|
152
|
+
// .then(result=>{
|
|
153
|
+
// let retValue = {
|
|
154
|
+
// successed:true,
|
|
155
|
+
// managepermission: {
|
|
156
|
+
// datatype:this.tableoption.permissiondatatype,
|
|
157
|
+
// id,
|
|
158
|
+
// permissiontype:1,
|
|
159
|
+
// department:'',
|
|
160
|
+
// departmenttext:'',
|
|
161
|
+
// role:'',
|
|
162
|
+
// roletext:'',
|
|
163
|
+
// level:'',
|
|
164
|
+
// leveltext:'',
|
|
165
|
+
// user:'',
|
|
166
|
+
// usertext:''
|
|
167
|
+
// },
|
|
168
|
+
// consumepermission: {
|
|
169
|
+
// datatype: this.tableoption.permissiondatatype,
|
|
170
|
+
// id,
|
|
171
|
+
// permissiontype: 2,
|
|
172
|
+
// department: '',
|
|
173
|
+
// departmenttext: '',
|
|
174
|
+
// role: '',
|
|
175
|
+
// roletext: '',
|
|
176
|
+
// level: '',
|
|
177
|
+
// leveltext: '',
|
|
178
|
+
// user: '',
|
|
179
|
+
// usertext: ''
|
|
180
|
+
// }
|
|
181
|
+
// };
|
|
182
|
+
// result.rows.forEach(element => {
|
|
183
|
+
// if (element.permissiontype === 1) {////管理权限
|
|
184
|
+
// retValue.managepermission = element;
|
|
185
|
+
// } else if (element.permissiontype === 2) {////消费权限
|
|
186
|
+
// retValue.consumepermission = element;
|
|
187
|
+
// }
|
|
188
|
+
// });
|
|
189
|
+
// return retValue;
|
|
190
|
+
// })
|
|
135
191
|
const sqlCommand = `select
|
|
136
|
-
data_type as datatype,
|
|
137
192
|
data_id as id,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
from vmv3_data_permission
|
|
148
|
-
where data_type=?
|
|
149
|
-
and data_id=?
|
|
193
|
+
data_type as datatype,
|
|
194
|
+
allow_type as allowtype,
|
|
195
|
+
allow_id as allowid,
|
|
196
|
+
allow_name as allowname
|
|
197
|
+
from framework_permission
|
|
198
|
+
where
|
|
199
|
+
data_id=?
|
|
200
|
+
and data_type=?
|
|
201
|
+
order by allow_type,allow_id
|
|
150
202
|
`
|
|
151
|
-
return this.executeSql(sqlCommand, [this.tableoption.permissiondatatype
|
|
203
|
+
return this.executeSql(sqlCommand, [id,this.tableoption.permissiondatatype])
|
|
152
204
|
.then(result=>{
|
|
153
205
|
let retValue = {
|
|
154
206
|
successed:true,
|
|
155
|
-
managepermission: {
|
|
156
|
-
datatype:this.tableoption.permissiondatatype,
|
|
157
|
-
id,
|
|
158
|
-
permissiontype:1,
|
|
159
|
-
department:'',
|
|
160
|
-
departmenttext:'',
|
|
161
|
-
role:'',
|
|
162
|
-
roletext:'',
|
|
163
|
-
level:'',
|
|
164
|
-
leveltext:'',
|
|
165
|
-
user:'',
|
|
166
|
-
usertext:''
|
|
167
|
-
},
|
|
207
|
+
managepermission: {},
|
|
168
208
|
consumepermission: {
|
|
169
209
|
datatype: this.tableoption.permissiondatatype,
|
|
170
210
|
id,
|
|
171
211
|
permissiontype: 2,
|
|
172
|
-
department: '',
|
|
173
|
-
departmenttext: '',
|
|
174
|
-
role: '',
|
|
175
|
-
roletext: '',
|
|
176
|
-
level: '',
|
|
177
|
-
leveltext: '',
|
|
178
|
-
user: '',
|
|
179
|
-
usertext: ''
|
|
180
212
|
}
|
|
181
213
|
};
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
214
|
+
let pObject = {deptid:[],depttext:[],roleid:[],roletext:[],userid:[],usernames:[]}
|
|
215
|
+
for (const element of result.rows){
|
|
216
|
+
switch (element.allowtype){
|
|
217
|
+
case 1: ///部门
|
|
218
|
+
pObject.deptid.push(element.allowid)
|
|
219
|
+
pObject.depttext.push(element.allowname)
|
|
220
|
+
break;
|
|
221
|
+
case 2: ///角色
|
|
222
|
+
pObject.roleid.push(element.allowid)
|
|
223
|
+
pObject.roletext.push(element.allowname)
|
|
224
|
+
break;
|
|
225
|
+
case 4: ///用户
|
|
226
|
+
pObject.userid.push(element.allowid)
|
|
227
|
+
pObject.usernames.push(element.allowname)
|
|
228
|
+
break;
|
|
187
229
|
}
|
|
188
|
-
}
|
|
230
|
+
}
|
|
231
|
+
retValue.consumepermission.department = pObject.deptid.join(',')
|
|
232
|
+
retValue.consumepermission.departmenttext = pObject.depttext.join(',') ;//+ ((pObject.deptid.length > pObject.depttext.length) ? `等${pObject.deptid.length}个部门`:'');
|
|
233
|
+
|
|
234
|
+
retValue.consumepermission.role = pObject.roleid.join(',')
|
|
235
|
+
retValue.consumepermission.roletext = pObject.roletext.join(',');// + ((pObject.roleid.length > pObject.roletext.length) ? `等${pObject.roleid.length}个角色` : '');
|
|
236
|
+
|
|
237
|
+
retValue.consumepermission.user = pObject.userid.join(',')
|
|
238
|
+
retValue.consumepermission.usertext = pObject.usernames.join(',');// + ((pObject.userid.length > pObject.usernames.length) ? `等${pObject.userid.length}个用户` : '');
|
|
239
|
+
|
|
240
|
+
// console.log('retValue==>', retValue)
|
|
189
241
|
return retValue;
|
|
190
242
|
})
|
|
191
243
|
}
|
|
@@ -194,57 +246,112 @@ class mysqlDao extends dao{
|
|
|
194
246
|
if (!this.hasPermissionControl || !permissionParam) {
|
|
195
247
|
return Promise.resolve({successed:true})
|
|
196
248
|
};
|
|
249
|
+
// const sqlCommand = `
|
|
250
|
+
// replace into vmv3_data_permission(
|
|
251
|
+
// data_type,
|
|
252
|
+
// data_id,
|
|
253
|
+
// permission_type,
|
|
254
|
+
// data_department,
|
|
255
|
+
// data_department_text,
|
|
256
|
+
// data_role,
|
|
257
|
+
// data_role_text,
|
|
258
|
+
// data_level,
|
|
259
|
+
// data_level_text,
|
|
260
|
+
// data_user,
|
|
261
|
+
// data_user_text
|
|
262
|
+
// ) values
|
|
263
|
+
// `
|
|
264
|
+
// let subItem = [];
|
|
265
|
+
// if (permissionParam.managepermission){
|
|
266
|
+
// const mItem = permissionParam.managepermission;
|
|
267
|
+
// subItem.push(`(
|
|
268
|
+
// ${this.tableoption.permissiondatatype},
|
|
269
|
+
// '${id}',
|
|
270
|
+
// 1,
|
|
271
|
+
// '${mItem.department || ''}',
|
|
272
|
+
// '${mItem.departmenttext || ''}',
|
|
273
|
+
// '${mItem.role || ''}',
|
|
274
|
+
// '${mItem.roletext || ''}',
|
|
275
|
+
// '${mItem.level || ''}',
|
|
276
|
+
// '${mItem.leveltext || ''}',
|
|
277
|
+
// '${mItem.user || ''}',
|
|
278
|
+
// '${mItem.usertext || ''}'
|
|
279
|
+
// )`)
|
|
280
|
+
|
|
281
|
+
// }
|
|
282
|
+
|
|
283
|
+
// if (permissionParam.consumepermission) {
|
|
284
|
+
// const mItem = permissionParam.consumepermission;
|
|
285
|
+
// subItem.push(`(
|
|
286
|
+
// ${this.tableoption.permissiondatatype},
|
|
287
|
+
// '${id}',
|
|
288
|
+
// 2,
|
|
289
|
+
// '${mItem.department || ''}',
|
|
290
|
+
// '${mItem.departmenttext || ''}',
|
|
291
|
+
// '${mItem.role || ''}',
|
|
292
|
+
// '${mItem.roletext || ''}',
|
|
293
|
+
// '${mItem.level || ''}',
|
|
294
|
+
// '${mItem.leveltext || ''}',
|
|
295
|
+
// '${mItem.user || ''}',
|
|
296
|
+
// '${mItem.usertext || ''}'
|
|
297
|
+
// )`)
|
|
298
|
+
// }
|
|
299
|
+
//return this.executeSql(sqlCommand+subItem.join(','));
|
|
300
|
+
|
|
197
301
|
const sqlCommand = `
|
|
198
|
-
|
|
199
|
-
|
|
302
|
+
delete from framework_permission where data_id=? and data_type=?;
|
|
303
|
+
insert into framework_permission(
|
|
200
304
|
data_id,
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
305
|
+
data_type,
|
|
306
|
+
allow_type,
|
|
307
|
+
allow_id
|
|
308
|
+
) values ?;
|
|
309
|
+
|
|
310
|
+
update framework_permission op
|
|
311
|
+
inner join vm_org_department od on op.allow_id=od.department_id
|
|
312
|
+
set op.allow_name = od.department_name,
|
|
313
|
+
op.allow_path = od.parent_path
|
|
314
|
+
where data_id=? and data_type=? and allow_type=1;
|
|
315
|
+
|
|
316
|
+
update framework_permission op
|
|
317
|
+
inner join vm_org_role od on op.allow_id=od.role_id
|
|
318
|
+
set op.allow_name = od.role_name
|
|
319
|
+
where data_id=? and data_type=? and allow_type=2;
|
|
320
|
+
|
|
321
|
+
update framework_permission op
|
|
322
|
+
inner join vm_org_user od on op.allow_id=od.user_id
|
|
323
|
+
set op.allow_name = od.user_name
|
|
324
|
+
where data_id=? and data_type=? and allow_type=4;
|
|
325
|
+
|
|
211
326
|
`
|
|
212
327
|
let subItem = [];
|
|
213
|
-
|
|
214
|
-
const mItem = permissionParam.managepermission;
|
|
215
|
-
subItem.push(`(
|
|
216
|
-
${this.tableoption.permissiondatatype},
|
|
217
|
-
'${id}',
|
|
218
|
-
1,
|
|
219
|
-
'${mItem.department || ''}',
|
|
220
|
-
'${mItem.departmenttext || ''}',
|
|
221
|
-
'${mItem.role || ''}',
|
|
222
|
-
'${mItem.roletext || ''}',
|
|
223
|
-
'${mItem.level || ''}',
|
|
224
|
-
'${mItem.leveltext || ''}',
|
|
225
|
-
'${mItem.user || ''}',
|
|
226
|
-
'${mItem.usertext || ''}'
|
|
227
|
-
)`)
|
|
228
|
-
|
|
229
|
-
}
|
|
328
|
+
|
|
230
329
|
|
|
231
330
|
if (permissionParam.consumepermission) {
|
|
232
331
|
const mItem = permissionParam.consumepermission;
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
)`)
|
|
332
|
+
const deptids = mItem.department?mItem.department.split(','):[]
|
|
333
|
+
for (const deptid of deptids){
|
|
334
|
+
subItem.push([id, this.tableoption.permissiondatatype, 1, deptid])
|
|
335
|
+
}
|
|
336
|
+
const roleids = mItem.role ? mItem.role.split(',') : []
|
|
337
|
+
for (const rid of roleids) {
|
|
338
|
+
subItem.push([id, this.tableoption.permissiondatatype, 2, rid])
|
|
339
|
+
}
|
|
340
|
+
const userids = mItem.user ? mItem.user.split(',') : []
|
|
341
|
+
for (const uid of userids) {
|
|
342
|
+
subItem.push([id, this.tableoption.permissiondatatype, 4, uid])
|
|
343
|
+
}
|
|
246
344
|
}
|
|
247
|
-
return this.executeSql(sqlCommand
|
|
345
|
+
return this.executeSql(sqlCommand, [
|
|
346
|
+
id,
|
|
347
|
+
this.tableoption.permissiondatatype,
|
|
348
|
+
subItem,
|
|
349
|
+
id,
|
|
350
|
+
this.tableoption.permissiondatatype,
|
|
351
|
+
id,
|
|
352
|
+
this.tableoption.permissiondatatype,
|
|
353
|
+
id,
|
|
354
|
+
this.tableoption.permissiondatatype]);
|
|
248
355
|
}
|
|
249
356
|
/**
|
|
250
357
|
*
|