Authored by ‘superliu’

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

Showing 22 changed files with 288 additions and 56 deletions
@@ -142,7 +142,6 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm @@ -142,7 +142,6 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm
142 , done: function (res) { 142 , done: function (res) {
143 soulTable.render(this); 143 soulTable.render(this);
144 getResCount(bizId, newResType) 144 getResCount(bizId, newResType)
145 -  
146 commonCols.colsClickEvent(); 145 commonCols.colsClickEvent();
147 146
148 table.on('sort(bizResListTable)', function (obj) { 147 table.on('sort(bizResListTable)', function (obj) {
@@ -173,7 +172,6 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm @@ -173,7 +172,6 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm
173 172
174 //树表格 173 //树表格
175 function renderTreeTable(bizId, resType, reloadFlag) { 174 function renderTreeTable(bizId, resType, reloadFlag) {
176 -  
177 $(".biz_reslist_search").hide(); 175 $(".biz_reslist_search").hide();
178 $(".biz_reslist_treetable_search").show(); 176 $(".biz_reslist_treetable_search").show();
179 $("#bizResListTableContent").hide(); 177 $("#bizResListTableContent").hide();
@@ -518,6 +516,7 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm @@ -518,6 +516,7 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm
518 } 516 }
519 517
520 if (resType == 'MIDDLEWARE_WEBLOGIC') { 518 if (resType == 'MIDDLEWARE_WEBLOGIC') {
  519 + $("#biz_reslist_res_colony_id").hide();
521 $("#biz_reslist_link_state_id").hide(); 520 $("#biz_reslist_link_state_id").hide();
522 $('#biz_reslist_server_state_id').show(); 521 $('#biz_reslist_server_state_id').show();
523 } else { 522 } else {
@@ -527,7 +526,8 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm @@ -527,7 +526,8 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'soulTable', 'sessions', 'comm
527 if (targetId && searchType) { 526 if (targetId && searchType) {
528 var url = "/api-web/home/res-list/" + searchType + "?page=1&limit=50&busId=" + bizId; 527 var url = "/api-web/home/res-list/" + searchType + "?page=1&limit=50&busId=" + bizId;
529 if (searchType == 'MIDDLEWARE_WEBLOGIC') { 528 if (searchType == 'MIDDLEWARE_WEBLOGIC') {
530 - url += '&parentId=null' 529 + //增加parentType=parent,解决sql查询中问题 joke add 20211130
  530 + url += '&parentId=null&parentType=parent';
531 } 531 }
532 admin.req({ 532 admin.req({
533 url: common.domainName + url 533 url: common.domainName + url
@@ -24,6 +24,7 @@ layui.define(['xmSelect', 'md5'], function (exports) { @@ -24,6 +24,7 @@ layui.define(['xmSelect', 'md5'], function (exports) {
24 domainAssetsManage: sessionStorage.getItem('domainAssetsManage'), // 资产系统地址 24 domainAssetsManage: sessionStorage.getItem('domainAssetsManage'), // 资产系统地址
25 graphEditorOrigin: sessionStorage.getItem('graphEditorOrigin'), // 拓扑系统地址 25 graphEditorOrigin: sessionStorage.getItem('graphEditorOrigin'), // 拓扑系统地址
26 workflowName: sessionStorage.getItem('workflow'),//流程系统地址 26 workflowName: sessionStorage.getItem('workflow'),//流程系统地址
  27 + domainCMDBName: "http://120.236.178.177:7180/HGKJCMDB", //杭州咨源老cmdb系统地址
27 lineTimer: null,//性能曲线图全局定时器 28 lineTimer: null,//性能曲线图全局定时器
28 detailTimer: [],//详细页的全局定时器 29 detailTimer: [],//详细页的全局定时器
29 alarmTimer: null,//首页告警刷新定时器 30 alarmTimer: null,//首页告警刷新定时器
@@ -334,6 +334,10 @@ layui.define(['common', 'swiper', 'admin','commonDetail','mxClient','sessions',' @@ -334,6 +334,10 @@ layui.define(['common', 'swiper', 'admin','commonDetail','mxClient','sessions','
334 //点击告警数字,跳转至告警页面 334 //点击告警数字,跳转至告警页面
335 $("#indexbizhealth [data-index-banner-item='resType'] .index-banner-item-tips ").unbind('click').on("click", function () { 335 $("#indexbizhealth [data-index-banner-item='resType'] .index-banner-item-tips ").unbind('click').on("click", function () {
336 var restype = $(this).data('restype'); 336 var restype = $(this).data('restype');
  337 + //不以资源类型不包括父节点的资源类型 包括阿里云、华为云
  338 + if("ALI_CLOUD_PLAT"== restype || "HUAWEI_CLOUD_PLAT" == restype){
  339 + restype =restype.substring(0,restype.lastIndexOf("_"));
  340 + }
337 var alink = document.createElement('a'); 341 var alink = document.createElement('a');
338 alink.setAttribute("lay-href", "/alarm/activewarning/restype=" + restype); 342 alink.setAttribute("lay-href", "/alarm/activewarning/restype=" + restype);
339 document.body.appendChild(alink); 343 document.body.appendChild(alink);
@@ -61,10 +61,11 @@ @@ -61,10 +61,11 @@
61 <button type="button" id="searchBtn" class="layui-btn layui-btn-sm layuiadmin-btn-comm">筛选 61 <button type="button" id="searchBtn" class="layui-btn layui-btn-sm layuiadmin-btn-comm">筛选
62 </button> 62 </button>
63 </div> 63 </div>
64 - <div class="work-tab-right">  
65 - <button type="button" id="workIndexFlowBtn" class="layui-btn layui-btn-sm layui-btn-primary">发起流程  
66 - </button>  
67 - </div> 64 + <!--去除发起流程 joke add 20211130-->
  65 +<!-- <div class="work-tab-right">-->
  66 +<!-- <button type="button" id="workIndexFlowBtn" class="layui-btn layui-btn-sm layui-btn-primary">发起流程-->
  67 +<!-- </button>-->
  68 +<!-- </div>-->
68 <div class="layui-tab-content"> 69 <div class="layui-tab-content">
69 <div class="layui-tab-item layui-show"> 70 <div class="layui-tab-item layui-show">
70 <div class="mt15" id="workIndexFlowByMe"></div> 71 <div class="mt15" id="workIndexFlowByMe"></div>
@@ -4,7 +4,9 @@ @@ -4,7 +4,9 @@
4 <div style="border-radius: 3px;background-color: white" 4 <div style="border-radius: 3px;background-color: white"
5 :style="{'height':height+'px','max-height':height + 'px','overflow':'auto'}"> 5 :style="{'height':height+'px','max-height':height + 'px','overflow':'auto'}">
6 <div style="text-align: left;padding-left: 10px;padding-top: 3px;font-weight: bold"> 6 <div style="text-align: left;padding-left: 10px;padding-top: 3px;font-weight: bold">
7 - <el-link type="info" :underline="false"><i class="iconfont icon-ziliaoku"></i> 文档管理</el-link> 7 + <slot name="title">
  8 + <el-link type="info" :underline="false"><i class="iconfont icon-ziliaoku"></i> 文档管理</el-link>
  9 + </slot>
8 </div> 10 </div>
9 <!----> 11 <!---->
10 <el-tree ref="tree" style="padding:6px;" :props="props" :data="treeData" node-key="id" 12 <el-tree ref="tree" style="padding:6px;" :props="props" :data="treeData" node-key="id"
@@ -164,7 +166,7 @@ @@ -164,7 +166,7 @@
164 </template> 166 </template>
165 </cm-dialog> 167 </cm-dialog>
166 168
167 - <cm-userright :showDialogVisible="showUserDialogVisible" :selectedArr="userFileRight" @callback="selectUser" 169 + <cm-userright :showDialogVisible="showUserDialogVisible" :selectedArr="userFileRight" :userArr="userList" :isUser="false" :showOrg="false" @callback="selectUser"
168 @hideDialog="showUserDialog"></cm-userright> 170 @hideDialog="showUserDialog"></cm-userright>
169 171
170 <cm-upload :showDialogVisible="showUploadDialogVisible" @callback="uploadCallBack" @hideDialog="showUploadFile" 172 <cm-upload :showDialogVisible="showUploadDialogVisible" @callback="uploadCallBack" @hideDialog="showUploadFile"
@@ -525,6 +525,9 @@ export default { @@ -525,6 +525,9 @@ export default {
525 // 用户授权 525 // 用户授权
526 let showUserDialogVisible = Vue.ref(false); 526 let showUserDialogVisible = Vue.ref(false);
527 let userFileRight = Vue.ref([]); 527 let userFileRight = Vue.ref([]);
  528 + //获取用户
  529 + let userList = Vue.ref([]);
  530 + let isUser = Vue.ref("false");
528 let getCheckedFile = () => { 531 let getCheckedFile = () => {
529 let arr = dataList.value.filter(function (v) { 532 let arr = dataList.value.filter(function (v) {
530 if (v.checked != undefined && v.checked == true) { 533 if (v.checked != undefined && v.checked == true) {
@@ -705,6 +708,7 @@ export default { @@ -705,6 +708,7 @@ export default {
705 * 挂载完 708 * 挂载完
706 */ 709 */
707 Vue.onMounted(() => { 710 Vue.onMounted(() => {
  711 + getUserList();
708 // 预览模式 不展示左侧树 712 // 预览模式 不展示左侧树
709 if (!props.isView) { 713 if (!props.isView) {
710 getTree(); 714 getTree();
@@ -743,6 +747,35 @@ export default { @@ -743,6 +747,35 @@ export default {
743 } 747 }
744 748
745 } 749 }
  750 + //获取用户数据
  751 + let getUserList=()=>{
  752 + proxy.userList = [];
  753 +
  754 + // 查询信息中心的用户
  755 + proxy.$http.get("/api-user/org/getOrgUserList?orgCode=xxzx", {}, function (res) {
  756 + if (res && res.data) {
  757 + res.data.map(function (v) {
  758 + let desc = [];
  759 + let orgName = v.orgName;
  760 + let nickname = v.nickname;
  761 + if (orgName) {
  762 + desc.push(orgName);
  763 + }
  764 + if (nickname) {
  765 + desc.push(nickname);
  766 + }
  767 +
  768 + proxy.userList.push({
  769 + value: v.username,
  770 + type:'USER',
  771 + desc: `${desc.join(' / ')}`,
  772 + props : v
  773 + })
  774 + });
  775 +
  776 + }
  777 + },function (){},false)
  778 + }
746 779
747 return { 780 return {
748 /* viewEdit,*/ 781 /* viewEdit,*/
@@ -780,6 +813,8 @@ export default { @@ -780,6 +813,8 @@ export default {
780 userFileRight, 813 userFileRight,
781 selectUser, 814 selectUser,
782 showUserDialog, 815 showUserDialog,
  816 + userList,
  817 + isUser,
783 818
784 showUploadDialogVisible, 819 showUploadDialogVisible,
785 historyNode, 820 historyNode,
@@ -43,6 +43,16 @@ export default { @@ -43,6 +43,16 @@ export default {
43 type: Array, 43 type: Array,
44 default: ['取消', '授权'] 44 default: ['取消', '授权']
45 }, 45 },
  46 + //用户数据
  47 + userArr:{
  48 + type: Array,
  49 + default:[],
  50 + },
  51 + //是否获取所有用户数据
  52 + isUser:{
  53 + type: Boolean,
  54 + default: true
  55 + }
46 }, 56 },
47 data() { 57 data() {
48 return { 58 return {
@@ -53,8 +63,11 @@ export default { @@ -53,8 +63,11 @@ export default {
53 const {proxy} = Vue.getCurrentInstance(); 63 const {proxy} = Vue.getCurrentInstance();
54 64
55 let allArr = Vue.ref([]); 65 let allArr = Vue.ref([]);
56 -  
57 let userArr = Vue.ref([]); 66 let userArr = Vue.ref([]);
  67 + let isUser = props.isUser;
  68 + if(!isUser){
  69 + userArr = props.userArr;
  70 + }
58 let roleArr = Vue.ref([]); 71 let roleArr = Vue.ref([]);
59 let orgArr = Vue.ref([]); 72 let orgArr = Vue.ref([]);
60 let activeName = Vue.ref('user'); 73 let activeName = Vue.ref('user');
@@ -71,33 +84,30 @@ export default { @@ -71,33 +84,30 @@ export default {
71 } 84 }
72 85
73 const getAllUser = () => { 86 const getAllUser = () => {
74 - if(userArr.value.length != 0){  
75 - return; 87 + if(isUser){
  88 + // 查询全部用户
  89 + proxy.$http.get("/api-user/users?page=1&limit=10000&username=&nickname=&enabled=&orgId=&roles=", {}, function (res) {
  90 + if (res && res.data) {
  91 + res.data.map(function (v) {
  92 + let desc = [];
  93 + let orgName = v.orgName;
  94 + let nickname = v.nickname;
  95 + if (orgName) {
  96 + desc.push(orgName);
  97 + }
  98 + if (nickname) {
  99 + desc.push(nickname);
  100 + }
  101 + userArr.value.push({
  102 + value: v.username,
  103 + type:'USER',
  104 + desc: `${desc.join(' / ')}`,
  105 + props : v
  106 + })
  107 + });
  108 + }
  109 + },function (){},false)
76 } 110 }
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 - }  
90 -  
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 } 111 }
102 112
103 const getAllRole = () => { 113 const getAllRole = () => {
@@ -266,7 +276,7 @@ export default { @@ -266,7 +276,7 @@ export default {
266 hidedialog, 276 hidedialog,
267 activeName, 277 activeName,
268 278
269 - userArr, 279 + //userArr,
270 roleArr, 280 roleArr,
271 orgArr, 281 orgArr,
272 282
@@ -43,6 +43,9 @@ @@ -43,6 +43,9 @@
43 <i class="layui-icon layui-icon-shrink-right" id="LAY_app_flexible"></i> 43 <i class="layui-icon layui-icon-shrink-right" id="LAY_app_flexible"></i>
44 </a> 44 </a>
45 </li> 45 </li>
  46 + <li class="layui-nav-item" lay-tips="大屏">
  47 + <a href="javascript:;" layadmin-event="toBigScreen" ><img src="/src/style/img/icon-daping.png" style="width: 16px;height: 16px"></a>
  48 + </li>
46 <script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-web/sxview/getbizListByUser?access_token={{localStorage.getItem('access_token')}}"> 49 <script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-web/sxview/getbizListByUser?access_token={{localStorage.getItem('access_token')}}">
47 50
48 {{# if(d.data.length>0){ }} 51 {{# if(d.data.length>0){ }}
@@ -55,9 +58,7 @@ @@ -55,9 +58,7 @@
55 58
56 {{# } }} 59 {{# } }}
57 </script> 60 </script>
58 - <li class="layui-nav-item" lay-tips="大屏">  
59 - <a href="javascript:;" layadmin-event="toBigScreen" ><img src="/src/style/img/icon-daping.png" style="width: 16px;height: 16px"></a>  
60 - </li> 61 +
61 62
62 <li class="layui-nav-item" lay-unselect> 63 <li class="layui-nav-item" lay-unselect>
63 <a href="javascript:;" layadmin-event="refresh" title="刷新"> 64 <a href="javascript:;" layadmin-event="refresh" title="刷新">
@@ -64,7 +64,7 @@ @@ -64,7 +64,7 @@
64 } 64 }
65 65
66 .yfyw-user .zc-view .zc-img i { 66 .yfyw-user .zc-view .zc-img i {
67 - font-size: 100px 67 + font-size: 60px
68 } 68 }
69 69
70 .yfyw-user .zc-view .zc-info { 70 .yfyw-user .zc-view .zc-info {
  1 +<div>
  2 + <span class="el-dropdown-link" @click="showMachineRoomDialog(true)" >
  3 + {{textString}}
  4 + </span>
  5 +
  6 + <cm-dialog title="收藏" width="500px" :showDialogVisible="dialogFlg" @hidedialog="showMachineRoomDialog">
  7 + <template v-slot>
  8 + <GetMachineRoom v-if="commandNameData" :commandNameData="commandNameData"></GetMachineRoom>
  9 + </template>
  10 + </cm-dialog>
  11 +
  12 +</div>
  1 +export default {
  2 + name: 'machineRoomComponents',
  3 + template: '',
  4 + components: {
  5 + 'GetMachineRoom': Vue.defineAsyncComponent(
  6 + () => myImport('views/commonComponents/getMachineRoom/index')
  7 + ),
  8 + },
  9 + props: {
  10 + // 资源名称
  11 + textString: {
  12 + type: String,
  13 + default: 0
  14 + },
  15 + resId: {
  16 + type: String,
  17 + default: ''
  18 + },
  19 + resTypeId: {
  20 + type: String,
  21 + default: ''
  22 + },
  23 + resType: {
  24 + type: String,
  25 + default: ''
  26 + },
  27 + optionData: {
  28 + type: Array,
  29 + default: []
  30 + }
  31 +
  32 + },
  33 + data() {
  34 + return {}
  35 + },
  36 + setup(props, {attrs, slots, emit}) {
  37 +
  38 + const {proxy} = Vue.getCurrentInstance();
  39 +
  40 + let dialogFlg = Vue.ref(false);
  41 + let commandNameData = Vue.ref([
  42 + {
  43 + name: '萧山IDC二号机房',
  44 + htmlName: 'xiaoshansecond',//html页面的名称
  45 + val: 'one'
  46 + },
  47 + {
  48 + name: '萧山IDC三号机房',
  49 + htmlName: 'xiaoshanthird',
  50 + val: 'two'
  51 + },
  52 + {
  53 + name: '萧山IDC七号机房',
  54 + htmlName: 'xiaoshanseven',
  55 + val: 'three'
  56 + }
  57 + ]);
  58 +
  59 + let showMachineRoomDialog = (flg) => {
  60 + dialogFlg.value = flg;
  61 +debugger
  62 +console.log(props.optionData);
  63 + }
  64 +
  65 + return {
  66 + dialogFlg,
  67 + commandNameData,
  68 + showMachineRoomDialog,
  69 + }
  70 + }
  71 +}
  1 +<div>
  2 + <span class="el-dropdown-link" @click="showMachineRoomDialog(true)" >
  3 + {{textString}}
  4 + </span>
  5 +
  6 + <cm-dialog title="收藏" width="500px" :showDialogVisible="dialogFlg" @hidedialog="showMachineRoomDialog">
  7 + <template v-slot>
  8 + <GetMachineRoom v-if="commandNameData" :commandNameData="commandNameData"></GetMachineRoom>
  9 + </template>
  10 + </cm-dialog>
  11 +
  12 +</div>
  1 +export default {
  2 + name: 'machineRoomDetailComponents',
  3 + template: '',
  4 + components: {
  5 + 'GetMachineRoom': Vue.defineAsyncComponent(
  6 + () => myImport('views/commonComponents/getMachineRoom/index')
  7 + ),
  8 + },
  9 + props: {
  10 + // 资源名称
  11 + textString: {
  12 + type: String,
  13 + default: 0
  14 + },
  15 + resId: {
  16 + type: String,
  17 + default: ''
  18 + },
  19 + resTypeId: {
  20 + type: String,
  21 + default: ''
  22 + },
  23 + resType: {
  24 + type: String,
  25 + default: ''
  26 + },
  27 + optionData: {
  28 + type: Array,
  29 + default: []
  30 + }
  31 +
  32 + },
  33 + data() {
  34 + return {}
  35 + },
  36 + setup(props, {attrs, slots, emit}) {
  37 +
  38 + const {proxy} = Vue.getCurrentInstance();
  39 +
  40 + let dialogFlg = Vue.ref(false);
  41 + let commandNameData = Vue.ref([
  42 + {
  43 + name: '萧山IDC二号机房',
  44 + htmlName: 'xiaoshansecond',//html页面的名称
  45 + val: 'one'
  46 + },
  47 + {
  48 + name: '萧山IDC三号机房',
  49 + htmlName: 'xiaoshanthird',
  50 + val: 'two'
  51 + },
  52 + {
  53 + name: '萧山IDC七号机房',
  54 + htmlName: 'xiaoshanseven',
  55 + val: 'three'
  56 + }
  57 + ]);
  58 +
  59 + let showMachineRoomDialog = (flg) => {
  60 + dialogFlg.value = flg;
  61 + }
  62 +
  63 + return {
  64 + dialogFlg,
  65 + commandNameData,
  66 + showMachineRoomDialog,
  67 + }
  68 + }
  69 +}
@@ -23,6 +23,10 @@ export default { @@ -23,6 +23,10 @@ export default {
23 type: String, 23 type: String,
24 default: 0 24 default: 0
25 }, 25 },
  26 + optionData: {
  27 + type: Array,
  28 + default: []
  29 + }
26 }, 30 },
27 data() { 31 data() {
28 return { 32 return {
@@ -33,6 +33,10 @@ export default { @@ -33,6 +33,10 @@ export default {
33 type: String, 33 type: String,
34 default: '' 34 default: ''
35 }, 35 },
  36 + optionData: {
  37 + type: Array,
  38 + default: []
  39 + }
36 40
37 }, 41 },
38 data() { 42 data() {
@@ -110,25 +114,14 @@ export default { @@ -110,25 +114,14 @@ export default {
110 return; 114 return;
111 } 115 }
112 116
113 - // 查询topoId  
114 - // proxy.$http.get(`/api-web/mxgraph/generateByResId`, {resId: props.resId}, function (res) {  
115 - // if (res && res.success) {  
116 - // let topoId = res.str;  
117 - // proxy.$global.openGraphEditor(topoId)  
118 - // } else {  
119 - // proxy.$global.showMsg('生成资源拓扑失败!', "error");  
120 - // }  
121 - // });  
122 proxy.$global.viewResTopo(props.resId) 117 proxy.$global.viewResTopo(props.resId)
123 } 118 }
124 119
125 let openDetail = () => { 120 let openDetail = () => {
126 -debugger  
127 if (props.resId == '') { 121 if (props.resId == '') {
128 proxy.$global.showMsg("资源编号不存在,请确认!","warning") 122 proxy.$global.showMsg("资源编号不存在,请确认!","warning")
129 return; 123 return;
130 } 124 }
131 -  
132 proxy.$global.openDetail(props.resId,props.resType,props.title); 125 proxy.$global.openDetail(props.resId,props.resType,props.title);
133 } 126 }
134 127
@@ -18,6 +18,10 @@ export default { @@ -18,6 +18,10 @@ export default {
18 type: String, 18 type: String,
19 default: '' 19 default: ''
20 }, 20 },
  21 + optionData: {
  22 + type: Array,
  23 + default: []
  24 + }
21 25
22 }, 26 },
23 data() { 27 data() {
@@ -77,6 +77,8 @@ @@ -77,6 +77,8 @@
77 <el-option label="资源名称" :value="'resNameComponents'"></el-option> 77 <el-option label="资源名称" :value="'resNameComponents'"></el-option>
78 <el-option label="状态组件" :value="'statusComponents'"></el-option> 78 <el-option label="状态组件" :value="'statusComponents'"></el-option>
79 <el-option label="使用率组件" :value="'rateComponents'"></el-option> 79 <el-option label="使用率组件" :value="'rateComponents'"></el-option>
  80 + <el-option label="机房组件" :value="'machineRoomComponents'"></el-option>
  81 + <el-option label="机柜组件" :value="'machineRoomDetailComponents'"></el-option>
80 </el-select> 82 </el-select>
81 </div> 83 </div>
82 84
@@ -203,6 +203,12 @@ export default { @@ -203,6 +203,12 @@ export default {
203 'statusComponents': Vue.defineAsyncComponent( 203 'statusComponents': Vue.defineAsyncComponent(
204 () => myImport('components/page/res/statusComponents/index') 204 () => myImport('components/page/res/statusComponents/index')
205 ), 205 ),
  206 + 'machineRoomComponents': Vue.defineAsyncComponent(
  207 + () => myImport('components/page/res/machineRoomComponents/index')
  208 + ),
  209 + 'machineRoomDetailComponents': Vue.defineAsyncComponent(
  210 + () => myImport('components/page/res/machineRoomDetailComponents/index')
  211 + ),
206 }, 212 },
207 data() { 213 data() {
208 return { 214 return {
1 <div class="container"> 1 <div class="container">
2 - <cm-document :isRecycle="true"></cm-document> 2 + <cm-document :isRecycle="true">
  3 + <template #title>
  4 + <el-link type="info" :underline="false"><i class="iconfont icon-ziliaoku"></i> 文档回收站</el-link>
  5 + </template>
  6 + </cm-document>
3 </div> 7 </div>
@@ -59,7 +59,7 @@ export default { @@ -59,7 +59,7 @@ export default {
59 var params = { 59 var params = {
60 // page: pageInfo.page, 60 // page: pageInfo.page,
61 // limit: pageInfo.limit, 61 // limit: pageInfo.limit,
62 - username: '1', 62 + username: localStorage.getItem("lgn"),
63 }; 63 };
64 proxy.$http.get("/api-web/bOpsProject/getTree", params, function (res) { 64 proxy.$http.get("/api-web/bOpsProject/getTree", params, function (res) {
65 if (res && res.data) { 65 if (res && res.data) {
@@ -35,7 +35,8 @@ @@ -35,7 +35,8 @@
35 <component v-if="row[prop] && row[prop].props && row[prop].props.colComponents != null && row[prop].props.colComponents != ''" v-bind:is="row[prop].props.colComponents" 35 <component v-if="row[prop] && row[prop].props && row[prop].props.colComponents != null && row[prop].props.colComponents != ''" v-bind:is="row[prop].props.colComponents"
36 :resId="row.resId" 36 :resId="row.resId"
37 :resTypeId="currentNode.id" 37 :resTypeId="currentNode.id"
38 - :textString="row[prop] == undefined ? '' : row[prop].value"></component> 38 + :textString="row[prop] == undefined ? '' : row[prop].value"
  39 + :optionData="row"></component>
39 <el-link v-else :underline="false" @click="item.click(scope.row)">{{row[prop] == undefined ? '' : row[prop].value }}</el-link> 40 <el-link v-else :underline="false" @click="item.click(scope.row)">{{row[prop] == undefined ? '' : row[prop].value }}</el-link>
40 </template> 41 </template>
41 </cm-table-page> 42 </cm-table-page>
@@ -182,7 +182,7 @@ export default { @@ -182,7 +182,7 @@ export default {
182 } 182 }
183 const goJump=()=>{ 183 const goJump=()=>{
184 // proxy.$router.push({path:'/zj/dp',query: {access_token:localStorage.getItem('access_token')}}) 184 // proxy.$router.push({path:'/zj/dp',query: {access_token:localStorage.getItem('access_token')}})
185 - window.open(sessionStorage.getItem("ythView") + '?access_token=' + localStorage.getItem("access_token")); 185 + window.open(window.location.origin + '/vue3/index.html#/zj/dp?access_token=' + localStorage.getItem("access_token"));
186 } 186 }
187 187
188 return{ 188 return{