Authored by XuHaoJie

Merge branch 'master' of http://113.200.75.45:82/monitor_v3/hg-monitor-web into master-V32-XuHaoJie

@@ -120,19 +120,19 @@ export default { @@ -120,19 +120,19 @@ export default {
120 let historyNode = Vue.ref([]); 120 let historyNode = Vue.ref([]);
121 let isUserFolder = Vue.ref(false); 121 let isUserFolder = Vue.ref(false);
122 122
123 - let addHistoryNode = (item) =>{ 123 + let addHistoryNode = (item) => {
124 124
125 - if(item.name == undefined && item.fileName){ 125 + if (item.name == undefined && item.fileName) {
126 item['name'] = item.fileName; 126 item['name'] = item.fileName;
127 } 127 }
128 let arr = historyNode.value; 128 let arr = historyNode.value;
129 let id = item.id; 129 let id = item.id;
130 let size = arr.filter(function (v) { 130 let size = arr.filter(function (v) {
131 - if(v.id == id){ 131 + if (v.id == id) {
132 return v; 132 return v;
133 } 133 }
134 }) 134 })
135 - if(size.length == 0){ 135 + if (size.length == 0) {
136 arr.push(item); 136 arr.push(item);
137 historyNode.value = arr; 137 historyNode.value = arr;
138 } 138 }
@@ -150,7 +150,7 @@ export default { @@ -150,7 +150,7 @@ export default {
150 150
151 getPage(id); 151 getPage(id);
152 } else { 152 } else {
153 - proxy.$global.viewer(item.localPath,proxy); 153 + proxy.$global.viewer(item.localPath, proxy);
154 } 154 }
155 } 155 }
156 156
@@ -198,25 +198,40 @@ export default { @@ -198,25 +198,40 @@ export default {
198 let getTree = () => { 198 let getTree = () => {
199 // 查询条件 199 // 查询条件
200 let params = { 200 let params = {
201 - recycle: props.isRecycle ? 1: 0 201 + recycle: props.isRecycle ? 1 : 0
202 }; 202 };
203 let url = `/inspection-report/file/document/tree`; 203 let url = `/inspection-report/file/document/tree`;
204 - if(props.isRecycle){ 204 + if (props.isRecycle) {
205 url = `/inspection-report/file/document/tree/recycle`; 205 url = `/inspection-report/file/document/tree/recycle`;
206 } 206 }
207 proxy.$http.get("/inspection-report/file/document/tree", params, function (res) { 207 proxy.$http.get("/inspection-report/file/document/tree", params, function (res) {
208 if (res && res.data && res.data.length > 0) { 208 if (res && res.data && res.data.length > 0) {
209 - treeData.value = res.data;  
210 - let first = res.data[0];  
211 -  
212 - let arr = [];  
213 - arr.push(first.id);  
214 - defaultExpandedKeys.value = arr; 209 + // treeData.value = res.data;
  210 + // let first = res.data[0];
  211 + //
  212 + // let arr = [];
  213 + // arr.push(first.id);
  214 + // defaultExpandedKeys.value = arr;
  215 + //
  216 + // addHistoryNode(first);
  217 + //
  218 + // // 加载第一个节点数据
  219 + // getPage(first.id);
  220 +
  221 + let root = {
  222 + id: '0',
  223 + name: '文档管理',
  224 + children: res.data
  225 + }
215 226
216 - addHistoryNode(first); 227 + defaultExpandedKeys.value = [root.id];
  228 + addHistoryNode(root);
217 229
218 // 加载第一个节点数据 230 // 加载第一个节点数据
219 - getPage(first.id); 231 + getPage(root.id);
  232 +
  233 + treeData.value = [root];
  234 +
220 } 235 }
221 }) 236 })
222 } 237 }
@@ -228,14 +243,14 @@ export default { @@ -228,14 +243,14 @@ export default {
228 id: id, 243 id: id,
229 name: keyWord.value, 244 name: keyWord.value,
230 types: props.types.join(','), 245 types: props.types.join(','),
231 - docIds:docIds 246 + docIds: docIds
232 } 247 }
233 let url = `/inspection-report/file/document/list`; 248 let url = `/inspection-report/file/document/list`;
234 - if(props.isRecycle){ 249 + if (props.isRecycle) {
235 url = `/inspection-report/file/document/recycle`; 250 url = `/inspection-report/file/document/recycle`;
236 } 251 }
237 // 加载列表 252 // 加载列表
238 - proxy.$http.get(url , params, function (res) { 253 + proxy.$http.get(url, params, function (res) {
239 if (res && res.data) { 254 if (res && res.data) {
240 dataList.value = res.data; 255 dataList.value = res.data;
241 256
@@ -281,7 +296,7 @@ export default { @@ -281,7 +296,7 @@ export default {
281 let id = currentNodeData.value.id; 296 let id = currentNodeData.value.id;
282 297
283 298
284 - if(loadTree && loadTree == true){ 299 + if (loadTree && loadTree == true) {
285 getTree(); 300 getTree();
286 } else { 301 } else {
287 getPage(id); 302 getPage(id);
@@ -301,7 +316,7 @@ export default { @@ -301,7 +316,7 @@ export default {
301 316
302 let url = `/inspection-report/file/change`; 317 let url = `/inspection-report/file/change`;
303 let msg = "您确认将该文件放入回收站?"; 318 let msg = "您确认将该文件放入回收站?";
304 - if(props.isRecycle){ 319 + if (props.isRecycle) {
305 msg = "您确认永久删除该文件?"; 320 msg = "您确认永久删除该文件?";
306 url = `/inspection-report/file/delete`; 321 url = `/inspection-report/file/delete`;
307 } 322 }
@@ -310,7 +325,7 @@ export default { @@ -310,7 +325,7 @@ export default {
310 325
311 if (type == 'folder') { 326 if (type == 'folder') {
312 msg = "您确认将该文件以及文件下的文件放入回收站?"; 327 msg = "您确认将该文件以及文件下的文件放入回收站?";
313 - if(props.isRecycle){ 328 + if (props.isRecycle) {
314 msg = "您确认删除该文件以及文件下的文件?"; 329 msg = "您确认删除该文件以及文件下的文件?";
315 } 330 }
316 info.push({id: id, type: type}); 331 info.push({id: id, type: type});
@@ -319,22 +334,22 @@ export default { @@ -319,22 +334,22 @@ export default {
319 let arr = getCheckedFile(); 334 let arr = getCheckedFile();
320 arr.map(function (v) { 335 arr.map(function (v) {
321 info.push({ 336 info.push({
322 - id:v.id,  
323 - type:v.type 337 + id: v.id,
  338 + type: v.type
324 }) 339 })
325 }) 340 })
326 } 341 }
327 342
328 proxy.$global.confirm(msg, function () { 343 proxy.$global.confirm(msg, function () {
329 - proxy.$http.post(url,info , function (res) { 344 + proxy.$http.post(url, info, function (res) {
330 if (res && res.code == 0) { 345 if (res && res.code == 0) {
331 - if(res.msg){  
332 - proxy.$global.showMsg(res.msg,'warning'); 346 + if (res.msg) {
  347 + proxy.$global.showMsg(res.msg, 'warning');
333 } else { 348 } else {
334 proxy.$global.showMsg('放入回收站成功!'); 349 proxy.$global.showMsg('放入回收站成功!');
335 } 350 }
336 351
337 - if(props.isRecycle){ 352 + if (props.isRecycle) {
338 // 回收栈刷新 353 // 回收栈刷新
339 reload(true); 354 reload(true);
340 } else { 355 } else {
@@ -355,29 +370,29 @@ export default { @@ -355,29 +370,29 @@ export default {
355 * 作者: Wang 370 * 作者: Wang
356 * 时间:2021/11/16 14:39 371 * 时间:2021/11/16 14:39
357 */ 372 */
358 - let restore = () =>{ 373 + let restore = () => {
359 let info = []; 374 let info = [];
360 // 获取选中的文件 375 // 获取选中的文件
361 dataList.value.filter(function (v) { 376 dataList.value.filter(function (v) {
362 if (v.checked != undefined && v.checked == true) { 377 if (v.checked != undefined && v.checked == true) {
363 info.push({ 378 info.push({
364 - id:v.id,  
365 - type:v.type 379 + id: v.id,
  380 + type: v.type
366 }) 381 })
367 } 382 }
368 }) 383 })
369 384
370 - if(info.length == 0){  
371 - proxy.$global.showMsg('请选择需要还原的文件!',"warning"); 385 + if (info.length == 0) {
  386 + proxy.$global.showMsg('请选择需要还原的文件!', "warning");
372 return; 387 return;
373 } 388 }
374 389
375 proxy.$global.confirm("是否还原选择的文件?", function () { 390 proxy.$global.confirm("是否还原选择的文件?", function () {
376 391
377 - proxy.$http.post(`/inspection-report/file/restore`,info , function (res) { 392 + proxy.$http.post(`/inspection-report/file/restore`, info, function (res) {
378 if (res && res.code == 0) { 393 if (res && res.code == 0) {
379 proxy.$global.showMsg('还原成功!'); 394 proxy.$global.showMsg('还原成功!');
380 - if(props.isRecycle){ 395 + if (props.isRecycle) {
381 // 回收栈刷新 396 // 回收栈刷新
382 reload(true); 397 reload(true);
383 } else { 398 } else {
@@ -404,7 +419,7 @@ export default { @@ -404,7 +419,7 @@ export default {
404 type: '', 419 type: '',
405 sort: 100 420 sort: 100
406 }); 421 });
407 - let showFolder = (flg,isUser) => { 422 + let showFolder = (flg, isUser) => {
408 docForm.value = { 423 docForm.value = {
409 name: '', 424 name: '',
410 docNo: '', 425 docNo: '',
@@ -413,14 +428,14 @@ export default { @@ -413,14 +428,14 @@ export default {
413 }; 428 };
414 isUserFolder.value = isUser; 429 isUserFolder.value = isUser;
415 addDialogVisible.value = flg; 430 addDialogVisible.value = flg;
416 - let title =`新建树节点“${currentNodeData.value.name}“子文件夹`;  
417 - if(isUser){  
418 - title =`新建自定义文件夹`; 431 + let title = `新建树节点“${currentNodeData.value.name}“子文件夹`;
  432 + if (isUser) {
  433 + title = `新建自定义文件夹`;
419 } 434 }
420 - addDialogTitle.value = title 435 + addDialogTitle.value = title
421 } 436 }
422 - let editType = (data) =>{  
423 - Object.assign(docForm.value,data); 437 + let editType = (data) => {
  438 + Object.assign(docForm.value, data);
424 addDialogVisible.value = true; 439 addDialogVisible.value = true;
425 isUserFolder.value = false; 440 isUserFolder.value = false;
426 } 441 }
@@ -436,16 +451,16 @@ export default { @@ -436,16 +451,16 @@ export default {
436 let params = docForm.value; 451 let params = docForm.value;
437 params.pid = currentNodeData.value.id; 452 params.pid = currentNodeData.value.id;
438 453
439 - if(isUserFolder.value){  
440 - params.id="";  
441 - params.docNo="user";  
442 - params.type="user"; 454 + if (isUserFolder.value) {
  455 + params.id = "";
  456 + params.docNo = "user";
  457 + params.type = "user";
443 } 458 }
444 // 新增 459 // 新增
445 proxy.$http.get(`/inspection-report/file/file/insertFolder`, params, function (res) { 460 proxy.$http.get(`/inspection-report/file/file/insertFolder`, params, function (res) {
446 if (res && res.code == 0) { 461 if (res && res.code == 0) {
447 let msg = res.msg; 462 let msg = res.msg;
448 - if(!msg){ 463 + if (!msg) {
449 msg = "操作成功"; 464 msg = "操作成功";
450 } 465 }
451 proxy.$global.showMsg(msg); 466 proxy.$global.showMsg(msg);
@@ -454,7 +469,7 @@ export default { @@ -454,7 +469,7 @@ export default {
454 // 属性tree 469 // 属性tree
455 let isUser = !isUserFolder.value; 470 let isUser = !isUserFolder.value;
456 reload(isUser); 471 reload(isUser);
457 - showFolder(false,isUser); 472 + showFolder(false, isUser);
458 } else { 473 } else {
459 console.log('error submit!!') 474 console.log('error submit!!')
460 return false 475 return false
@@ -467,8 +482,8 @@ export default { @@ -467,8 +482,8 @@ export default {
467 */ 482 */
468 let searchFile = () => { 483 let searchFile = () => {
469 let keyWords = keyWord.value; 484 let keyWords = keyWord.value;
470 - if(keyWords == ''){  
471 - proxy.$global.showMsg("请输入关键字!","warning") 485 + if (keyWords == '') {
  486 + proxy.$global.showMsg("请输入关键字!", "warning")
472 return; 487 return;
473 } 488 }
474 getPage(''); 489 getPage('');
@@ -532,6 +547,9 @@ export default { @@ -532,6 +547,9 @@ export default {
532 return v.id; 547 return v.id;
533 }); 548 });
534 549
  550 + let orgInfo = userObj.org.map(function (v) {
  551 + return v.orgId;
  552 + });
535 let docIds = getCheckedFile().map(function (v) { 553 let docIds = getCheckedFile().map(function (v) {
536 return v.id; 554 return v.id;
537 }); 555 });
@@ -540,7 +558,8 @@ export default { @@ -540,7 +558,8 @@ export default {
540 let params = { 558 let params = {
541 authDocIds: docIds, 559 authDocIds: docIds,
542 authRoleIds: roleCodes, 560 authRoleIds: roleCodes,
543 - authUsernames: userIds 561 + authUsernames: userIds,
  562 + authOrgIds: orgInfo
544 } 563 }
545 564
546 proxy.$http.post(`/inspection-report/file/doc/grant`, params, function (res) { 565 proxy.$http.post(`/inspection-report/file/doc/grant`, params, function (res) {
@@ -560,16 +579,16 @@ export default { @@ -560,16 +579,16 @@ export default {
560 let showUploadFile = (flg) => { 579 let showUploadFile = (flg) => {
561 showUploadDialogVisible.value = flg; 580 showUploadDialogVisible.value = flg;
562 } 581 }
563 - let uploadCallBack = ({document,fileInfo}) => { 582 + let uploadCallBack = ({document, fileInfo}) => {
564 reload(false); 583 reload(false);
565 // 执行回调 584 // 执行回调
566 - emit('callback',{document,fileInfo}); 585 + emit('callback', {document, fileInfo});
567 } 586 }
568 587
569 /** 588 /**
570 * 文件下载 589 * 文件下载
571 */ 590 */
572 - let downloadFile = () =>{ 591 + let downloadFile = () => {
573 let arr = getCheckedFile(); 592 let arr = getCheckedFile();
574 593
575 let info = []; 594 let info = [];
@@ -578,23 +597,23 @@ export default { @@ -578,23 +597,23 @@ export default {
578 }) 597 })
579 598
580 let params = { 599 let params = {
581 - info : info.join(","),  
582 - fileName:'' 600 + info: info.join(","),
  601 + fileName: ''
583 } 602 }
584 603
585 - proxy.$http.downloadFile('/inspection-report/file/download',params); 604 + proxy.$http.downloadFile('/inspection-report/file/download', params);
586 } 605 }
587 606
588 /** 607 /**
589 * 点击标签关闭 608 * 点击标签关闭
590 * @param index 609 * @param index
591 */ 610 */
592 - let tagHandleClose = (index) =>{  
593 - historyNode.value.splice(index,1); 611 + let tagHandleClose = (index) => {
  612 + historyNode.value.splice(index, 1);
594 } 613 }
595 614
596 615
597 - let isAdmin = () =>{ 616 + let isAdmin = () => {
598 return localStorage.getItem('lgn') == 'admin' && props.isRecycle == false; 617 return localStorage.getItem('lgn') == 'admin' && props.isRecycle == false;
599 } 618 }
600 619
@@ -603,41 +622,41 @@ export default { @@ -603,41 +622,41 @@ export default {
603 * @param item 622 * @param item
604 * @param index 623 * @param index
605 */ 624 */
606 - let clickTopNav = (item,index) =>{ 625 + let clickTopNav = (item, index) => {
607 addHistoryNode(item); 626 addHistoryNode(item);
608 getPage(item.id); 627 getPage(item.id);
609 } 628 }
610 629
611 // 文件更名 630 // 文件更名
612 let reNameFileFlg = Vue.ref({}); 631 let reNameFileFlg = Vue.ref({});
613 - let reNameFile = (item,flg) =>{ 632 + let reNameFile = (item, flg) => {
614 let docType = item.docType; 633 let docType = item.docType;
615 634
616 - if(!flg){  
617 - if(docType == 'user'){ 635 + if (!flg) {
  636 + if (docType == 'user') {
618 reNameFileFlg.value[item.id] = true; 637 reNameFileFlg.value[item.id] = true;
619 } else { 638 } else {
620 - proxy.$global.showMsg("节点名称不能修改!","warning"); 639 + proxy.$global.showMsg("节点名称不能修改!", "warning");
621 } 640 }
622 return; 641 return;
623 } 642 }
624 - if(docType == 'user'){ 643 + if (docType == 'user') {
625 let type = item.type; 644 let type = item.type;
626 let url = `/inspection-report/file/rename/doc`; 645 let url = `/inspection-report/file/rename/doc`;
627 - if(type == 'folder'){ 646 + if (type == 'folder') {
628 url = `/inspection-report/file/rename/user`; 647 url = `/inspection-report/file/rename/user`;
629 } 648 }
630 - if(item.fileName == null || item.fileName == '' ){  
631 - proxy.$global.showMsg("文件名称不能为空!","warning"); 649 + if (item.fileName == null || item.fileName == '') {
  650 + proxy.$global.showMsg("文件名称不能为空!", "warning");
632 return; 651 return;
633 } 652 }
634 // 执行改名 653 // 执行改名
635 - proxy.$http.get(url, {id:item.id,name:item.fileName}, function (res) { 654 + proxy.$http.get(url, {id: item.id, name: item.fileName}, function (res) {
636 if (res && res.success) { 655 if (res && res.success) {
637 proxy.$global.showMsg('修改成功!'); 656 proxy.$global.showMsg('修改成功!');
638 } else { 657 } else {
639 let msg = res.msg; 658 let msg = res.msg;
640 - if(msg){ 659 + if (msg) {
641 proxy.$global.showMsg(msg, 'warning'); 660 proxy.$global.showMsg(msg, 'warning');
642 } 661 }
643 } 662 }
@@ -661,7 +680,7 @@ export default { @@ -661,7 +680,7 @@ export default {
661 left: 0, 680 left: 0,
662 right: 24 681 right: 24
663 } 682 }
664 - let item = { 683 + let item = {
665 docType: props.viewTypeId, 684 docType: props.viewTypeId,
666 docNo: props.viewTypeId, 685 docNo: props.viewTypeId,
667 name: props.viewTypeName, 686 name: props.viewTypeName,
1 <cm-dialog :title="title" width="900px" :showDialogVisible="show" @hidedialog="hidedialog" @okfunc="getUser"> 1 <cm-dialog :title="title" width="900px" :showDialogVisible="show" @hidedialog="hidedialog" @okfunc="getUser">
2 <template v-slot> 2 <template v-slot>
3 - <el-transfer v-model="allArr" :props="props" filterable  
4 - :render-content="renderFunc"  
5 - :data="userArr" :titles="titles"  
6 - :button-texts="buttonTexts">  
7 - <!--<template #left-footer>  
8 - <el-button class="transfer-footer" size="small">Operation</el-button>  
9 - </template>-->  
10 - </el-transfer> 3 + <el-tabs tab-position="top" v-model="activeName" style="height: 400px" @tab-click="handleClick">
  4 + <el-tab-pane label="用户" name="user" v-if="showUser">
  5 + <el-transfer v-model="allArr" :props="props" filterable
  6 + :render-content="renderFunc"
  7 + :data="userArr" :titles="titles"
  8 + :button-texts="buttonTexts">
  9 + </el-transfer>
  10 + </el-tab-pane>
  11 + <el-tab-pane label="角色" name="role" v-if="showRole">
  12 + <el-transfer v-model="allArr" :props="props" filterable
  13 + :render-content="renderFunc"
  14 + :data="roleArr" :titles="titles"
  15 + :button-texts="buttonTexts">
  16 + </el-transfer>
  17 + </el-tab-pane>
  18 + <el-tab-pane label="机构" name="org" v-if="showOrg">
  19 + <el-transfer v-model="allArr" :props="props" filterable
  20 + :render-content="renderFunc"
  21 + :data="orgArr" :titles="titles"
  22 + :button-texts="buttonTexts">
  23 + </el-transfer>
  24 + </el-tab-pane>
  25 + </el-tabs>
  26 +
  27 +
11 </template> 28 </template>
12 </cm-dialog> 29 </cm-dialog>
@@ -17,7 +17,7 @@ export default { @@ -17,7 +17,7 @@ export default {
17 }, 17 },
18 18
19 // 加载用户数据 19 // 加载用户数据
20 - loadUserDta: { 20 + showUser: {
21 type: Boolean, 21 type: Boolean,
22 default: true 22 default: true
23 }, 23 },
@@ -26,13 +26,18 @@ export default { @@ -26,13 +26,18 @@ export default {
26 default: '添加授权' 26 default: '添加授权'
27 }, 27 },
28 // 加载角色数据 28 // 加载角色数据
29 - loadRoleDta: { 29 + showRole: {
  30 + type: Boolean,
  31 + default: true
  32 + },
  33 + // 加载机构
  34 + showOrg: {
30 type: Boolean, 35 type: Boolean,
31 default: true 36 default: true
32 }, 37 },
33 titles: { 38 titles: {
34 type: Array, 39 type: Array,
35 - default: ['所有用户/角色', '已授权用户/角色'] 40 + default: ['选择列表', '已授权列表']
36 }, 41 },
37 buttonTexts: { 42 buttonTexts: {
38 type: Array, 43 type: Array,
@@ -50,58 +55,98 @@ export default { @@ -50,58 +55,98 @@ export default {
50 let allArr = Vue.ref([]); 55 let allArr = Vue.ref([]);
51 56
52 let userArr = Vue.ref([]); 57 let userArr = Vue.ref([]);
  58 + let roleArr = Vue.ref([]);
  59 + let orgArr = Vue.ref([]);
  60 + let activeName = Vue.ref('user');
  61 +
  62 + const handleClick = (tab, event) => {
  63 + let name = tab.paneName;
  64 + if(name == 'user'){
  65 + getAllUser();
  66 + } else if(name == 'role'){
  67 + getAllRole();
  68 + } else if(name == 'org'){
  69 + getAllOrg();
  70 + }
  71 + }
  72 +
53 const getAllUser = () => { 73 const getAllUser = () => {
54 - if(props.loadUserDta){  
55 - // 查询全部用户  
56 - proxy.$http.get("/api-user/users?page=1&limit=10000&username=&nickname=&enabled=&orgId=&roles=", {}, function (res) {  
57 - if (res && res.data) {  
58 - res.data.map(function (v) {  
59 - let desc = [];  
60 - let orgName = v.orgName;  
61 - let nickname = v.nickname;  
62 - if (orgName) {  
63 - desc.push(orgName);  
64 - }  
65 - if (nickname) {  
66 - desc.push(nickname);  
67 - }  
68 -  
69 - userArr.value.push({  
70 - value: v.username,  
71 - type:'USER',  
72 - desc: `${desc.join(' / ')}`,  
73 - props : v  
74 - })  
75 - });  
76 - }  
77 - },function (){},false) 74 + if(userArr.value.length != 0){
  75 + return;
78 } 76 }
  77 + // 查询全部用户
  78 + proxy.$http.get("/api-user/users?page=1&limit=10000&username=&nickname=&enabled=&orgId=&roles=", {}, function (res) {
  79 + if (res && res.data) {
  80 + res.data.map(function (v) {
  81 + let desc = [];
  82 + let orgName = v.orgName;
  83 + let nickname = v.nickname;
  84 + if (orgName) {
  85 + desc.push(orgName);
  86 + }
  87 + if (nickname) {
  88 + desc.push(nickname);
  89 + }
79 90
80 - if(props.loadRoleDta){  
81 - // 查询全部角色  
82 - proxy.$http.get("/api-user/roles?page=1&limit=10000", {}, function (res) {  
83 - if (res && res.data) {  
84 - res.data.map(function (v) {  
85 - let desc = [];  
86 - let code = v.code;  
87 - let name = v.name;  
88 - if (name) {  
89 - desc.push(name);  
90 - }  
91 - if (code) {  
92 - desc.push(code);  
93 - }  
94 -  
95 - userArr.value.push({  
96 - value: v.id,  
97 - type:'ROLE',  
98 - desc: `${desc.join(' / ')}`,  
99 - props : v  
100 - })  
101 - });  
102 - }  
103 - },function (){},false) 91 + userArr.value.push({
  92 + value: v.username,
  93 + type:'USER',
  94 + desc: `${desc.join(' / ')}`,
  95 + props : v
  96 + })
  97 + });
  98 + }
  99 + },function (){},false)
  100 +
  101 + }
  102 +
  103 + const getAllRole = () => {
  104 + if(roleArr.value.length != 0){
  105 + return;
104 } 106 }
  107 + // 查询全部角色
  108 + proxy.$http.get("/api-user/roles?page=1&limit=10000", {}, function (res) {
  109 + if (res && res.data) {
  110 + res.data.map(function (v) {
  111 + let desc = [];
  112 + let code = v.code;
  113 + let name = v.name;
  114 + if (name) {
  115 + desc.push(name);
  116 + }
  117 + if (code) {
  118 + desc.push(code);
  119 + }
  120 +
  121 + roleArr.value.push({
  122 + value: v.id,
  123 + type:'ROLE',
  124 + desc: `${desc.join(' / ')}`,
  125 + props : v
  126 + })
  127 + });
  128 + }
  129 + },function (){},false)
  130 + }
  131 +
  132 +
  133 + let getAllOrg = () => {
  134 + if(orgArr.value.length != 0){
  135 + return;
  136 + }
  137 + // 查询全部机构
  138 + proxy.$http.get("/api-user/org/queryOrgs?searchQuery=", {}, function (res) {
  139 + if (res && res.data) {
  140 + res.data.map(function (v) {
  141 + orgArr.value.push({
  142 + value: v.orgId,
  143 + type:'ORG',
  144 + desc: ``,
  145 + props : v
  146 + })
  147 + });
  148 + }
  149 + },function (){},false)
105 } 150 }
106 151
107 let hidedialog = () => { 152 let hidedialog = () => {
@@ -119,10 +164,13 @@ export default { @@ -119,10 +164,13 @@ export default {
119 164
120 let user = []; 165 let user = [];
121 let role = []; 166 let role = [];
  167 + let org = [];
122 userArr.value.filter(function (v){ 168 userArr.value.filter(function (v){
123 if(arr.indexOf(v.value) != -1){ 169 if(arr.indexOf(v.value) != -1){
124 if(v.type == 'ROLE'){ 170 if(v.type == 'ROLE'){
125 role.push(v.props); 171 role.push(v.props);
  172 + } else if(v.type == 'ORG'){
  173 + org.push(v.props);
126 } else { 174 } else {
127 user.push(v.props); 175 user.push(v.props);
128 } 176 }
@@ -130,7 +178,8 @@ export default { @@ -130,7 +178,8 @@ export default {
130 }) 178 })
131 let data = { 179 let data = {
132 user:user, 180 user:user,
133 - role:role 181 + role:role,
  182 + org:org
134 } 183 }
135 184
136 emit('callback', data); 185 emit('callback', data);
@@ -146,6 +195,9 @@ export default { @@ -146,6 +195,9 @@ export default {
146 if(type == 'ROLE'){ 195 if(type == 'ROLE'){
147 isUser = false; 196 isUser = false;
148 tag = "角色"; 197 tag = "角色";
  198 + } else if(type == 'ORG'){
  199 + tag = "机构";
  200 + isUser = false;
149 } 201 }
150 202
151 return h('div',{ 203 return h('div',{
@@ -188,15 +240,32 @@ export default { @@ -188,15 +240,32 @@ export default {
188 * 挂载完 240 * 挂载完
189 */ 241 */
190 Vue.onMounted(() => { 242 Vue.onMounted(() => {
191 - getAllUser(); 243 + if(props.showUser){
  244 + getAllUser();
  245 + activeName.value = 'user';
  246 + } else if(props.showRole){
  247 + getAllRole();
  248 + activeName.value = 'role';
  249 + } else if(props.showOrg){
  250 + getAllOrg();
  251 + activeName.value = 'org';
  252 + }
192 }) 253 })
193 254
194 return { 255 return {
195 show, 256 show,
196 hidedialog, 257 hidedialog,
  258 + activeName,
  259 +
197 userArr, 260 userArr,
  261 + roleArr,
  262 + orgArr,
  263 +
198 allArr, 264 allArr,
  265 + handleClick,
199 getUser, 266 getUser,
  267 + getAllRole,
  268 + getAllOrg,
200 renderFunc, 269 renderFunc,
201 } 270 }
202 } 271 }
@@ -121,7 +121,7 @@ global.getQueryVariable = (variable) => { @@ -121,7 +121,7 @@ global.getQueryVariable = (variable) => {
121 global.openBlankWindow = (url, width, height) => { 121 global.openBlankWindow = (url, width, height) => {
122 // width = window.innerWidth; 122 // width = window.innerWidth;
123 // height = window.innerHeight; 123 // height = window.innerHeight;
124 - var features = "toolbar=no, location=no, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=no"; 124 + var features = "toolbar=no, location=no, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=no,left=-2000,top=-100";
125 if (width) { 125 if (width) {
126 features += "width=" + width; 126 features += "width=" + width;
127 } 127 }
@@ -29,6 +29,10 @@ export default { @@ -29,6 +29,10 @@ export default {
29 type: String, 29 type: String,
30 default: '' 30 default: ''
31 }, 31 },
  32 + resType: {
  33 + type: String,
  34 + default: ''
  35 + },
32 36
33 }, 37 },
34 data() { 38 data() {
@@ -122,6 +126,8 @@ export default { @@ -122,6 +126,8 @@ export default {
122 proxy.$global.showMsg("资源编号不存在,请确认!","warning") 126 proxy.$global.showMsg("资源编号不存在,请确认!","warning")
123 return; 127 return;
124 } 128 }
  129 +
  130 + proxy.$global.openDetail(props.resId,props.resType,props.title);
125 } 131 }
126 132
127 133