Merge branch 'master-v32-lushangqing' into 'master'
【#1162】 变更负责人相关业务-主页更改为component,表格组件增加树结构配置 #4 See merge request !623
Showing
8 changed files
with
369 additions
and
55 deletions
1 | <div > | 1 | <div > |
2 | <!-- 表格--> | 2 | <!-- 表格--> |
3 | <el-table :border="showBorder" v-loading="loading" :size="size" ref="multipleTable" @selection-change="handleSelectionChange" :data="dataList" stripe header-row-class-name="tbl-header-class" :height="height" | 3 | <el-table :border="showBorder" v-loading="loading" :size="size" ref="multipleTable" @selection-change="handleSelectionChange" :data="dataList" stripe header-row-class-name="tbl-header-class" :height="height" |
4 | - style="width: 100%;margin: 0px 0px; font-size:13.5px;"> | 4 | + style="width: 100%;margin: 0px 0px; font-size:13.5px;" :row-key="getRowKeys" :expand-row-keys="expands"> |
5 | + | ||
6 | + <el-table-column type="expand" v-if="showExpand"> | ||
7 | + <template #default="scope"> | ||
8 | + <slot name="expand" :scope="scope" > | ||
9 | + | ||
10 | + </slot> | ||
11 | + </template> | ||
12 | + </el-table-column> | ||
5 | <el-table-column v-if="showSelection && columns.length > 0" align="center" type="selection" width="55" /> | 13 | <el-table-column v-if="showSelection && columns.length > 0" align="center" type="selection" width="55" /> |
6 | <el-table-column v-if="showIndex && columns.length > 0" type="index" :label="indexLabel" align="center" width="50"/> | 14 | <el-table-column v-if="showIndex && columns.length > 0" type="index" :label="indexLabel" align="center" width="50"/> |
7 | 15 |
@@ -87,6 +87,21 @@ export default { | @@ -87,6 +87,21 @@ export default { | ||
87 | multipleSelection:{ | 87 | multipleSelection:{ |
88 | type:Array, | 88 | type:Array, |
89 | default:[] | 89 | default:[] |
90 | + }, | ||
91 | + //展开行 | ||
92 | + showExpand:{ | ||
93 | + type: Boolean, | ||
94 | + default: false | ||
95 | + }, | ||
96 | + //行数据的key | ||
97 | + getRowKeys:{ | ||
98 | + type: String, | ||
99 | + default: 'id' | ||
100 | + }, | ||
101 | + //是否默认展开所有行 | ||
102 | + expands:{ | ||
103 | + type: Array, | ||
104 | + default: [] | ||
90 | } | 105 | } |
91 | }, | 106 | }, |
92 | data() { | 107 | data() { |
@@ -4,7 +4,8 @@ | @@ -4,7 +4,8 @@ | ||
4 | <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> | 4 | <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> |
5 | <el-tab-pane v-for="(item,index) in tabData" :key="index" :label="item.ddicName" :name="item.ddicCode"> | 5 | <el-tab-pane v-for="(item,index) in tabData" :key="index" :label="item.ddicName" :name="item.ddicCode"> |
6 | 6 | ||
7 | - <div class="table-container" v-if="item.ddicCode=='resourcePer'"> | 7 | + <!--<div class="table-container" v-if="item.ddicCode=='resourcePer'"> |
8 | + | ||
8 | <ResourcePer></ResourcePer> | 9 | <ResourcePer></ResourcePer> |
9 | </div> | 10 | </div> |
10 | <div class="table-container" v-else-if="item.ddicCode=='resourceLeader'"> | 11 | <div class="table-container" v-else-if="item.ddicCode=='resourceLeader'"> |
@@ -34,8 +35,10 @@ | @@ -34,8 +35,10 @@ | ||
34 | <div class="table-container" v-else-if="item.ddicCode=='fileManagePer'"> | 35 | <div class="table-container" v-else-if="item.ddicCode=='fileManagePer'"> |
35 | <FileManagePer></FileManagePer> | 36 | <FileManagePer></FileManagePer> |
36 | </div> | 37 | </div> |
37 | - <div class="table-container" v-else>暂无数据</div> | 38 | + <div class="table-container" v-else>暂无数据</div>--> |
38 | </el-tab-pane> | 39 | </el-tab-pane> |
40 | + <component :is="activeName" ref="roomDetail" /> | ||
41 | + | ||
39 | </el-tabs> | 42 | </el-tabs> |
40 | 43 | ||
41 | </el-col> | 44 | </el-col> |
@@ -3,34 +3,34 @@ export default { | @@ -3,34 +3,34 @@ export default { | ||
3 | template: '', | 3 | template: '', |
4 | components: { | 4 | components: { |
5 | //选项卡组件 | 5 | //选项卡组件 |
6 | - 'ResourcePer': Vue.defineAsyncComponent( | 6 | + 'resourcePer': Vue.defineAsyncComponent( |
7 | () => myImport('views/batchChangeLeaders/resourcePer/index') | 7 | () => myImport('views/batchChangeLeaders/resourcePer/index') |
8 | ), | 8 | ), |
9 | - 'ResourceLeader': Vue.defineAsyncComponent( | 9 | + 'resourceLeader': Vue.defineAsyncComponent( |
10 | () => myImport('views/batchChangeLeaders/resourceLeader/index') | 10 | () => myImport('views/batchChangeLeaders/resourceLeader/index') |
11 | ), | 11 | ), |
12 | - 'ResourceTypePer': Vue.defineAsyncComponent( | 12 | + 'resourceTypePer': Vue.defineAsyncComponent( |
13 | () => myImport('views/batchChangeLeaders/resourceTypePer/index') | 13 | () => myImport('views/batchChangeLeaders/resourceTypePer/index') |
14 | ), | 14 | ), |
15 | - 'BizPer': Vue.defineAsyncComponent( | 15 | + 'bizPer': Vue.defineAsyncComponent( |
16 | () => myImport('views/batchChangeLeaders/bizPer/index') | 16 | () => myImport('views/batchChangeLeaders/bizPer/index') |
17 | ), | 17 | ), |
18 | - 'BizLeader': Vue.defineAsyncComponent( | 18 | + 'bizLeader': Vue.defineAsyncComponent( |
19 | () => myImport('views/batchChangeLeaders/bizLeader/index') | 19 | () => myImport('views/batchChangeLeaders/bizLeader/index') |
20 | ), | 20 | ), |
21 | - 'BlarmSubPer': Vue.defineAsyncComponent( | 21 | + 'alarmSubPer': Vue.defineAsyncComponent( |
22 | () => myImport('views/batchChangeLeaders/alarmSubPer/index') | 22 | () => myImport('views/batchChangeLeaders/alarmSubPer/index') |
23 | ), | 23 | ), |
24 | - 'BolePer': Vue.defineAsyncComponent( | 24 | + 'rolePer': Vue.defineAsyncComponent( |
25 | () => myImport('views/batchChangeLeaders/rolePer/index') | 25 | () => myImport('views/batchChangeLeaders/rolePer/index') |
26 | ), | 26 | ), |
27 | - 'TopoPer': Vue.defineAsyncComponent( | 27 | + 'topoPer': Vue.defineAsyncComponent( |
28 | () => myImport('views/batchChangeLeaders/topoPer/index') | 28 | () => myImport('views/batchChangeLeaders/topoPer/index') |
29 | ), | 29 | ), |
30 | - 'AutoPatrolPortPer': Vue.defineAsyncComponent( | 30 | + 'autoPatrolPortPer': Vue.defineAsyncComponent( |
31 | () => myImport('views/batchChangeLeaders/autoPatrolPortPer/index') | 31 | () => myImport('views/batchChangeLeaders/autoPatrolPortPer/index') |
32 | ), | 32 | ), |
33 | - 'FileManagePer': Vue.defineAsyncComponent( | 33 | + 'fileManagePer': Vue.defineAsyncComponent( |
34 | () => myImport('views/batchChangeLeaders/fileManagePer/index') | 34 | () => myImport('views/batchChangeLeaders/fileManagePer/index') |
35 | ), | 35 | ), |
36 | }, | 36 | }, |
@@ -49,7 +49,7 @@ export default { | @@ -49,7 +49,7 @@ export default { | ||
49 | //获取需变更的选项卡数据 | 49 | //获取需变更的选项卡数据 |
50 | let getBatchChangeData=()=>{ | 50 | let getBatchChangeData=()=>{ |
51 | proxy.$http.post("/api-web/manage/ddic/findSucDdics/batch_change_leaders", {}, function (res) { | 51 | proxy.$http.post("/api-web/manage/ddic/findSucDdics/batch_change_leaders", {}, function (res) { |
52 | - if (res && res.data) { | 52 | + if (res && res.data && res.data.length>0) { |
53 | tabData.value = res.data.sort((a,b)=>a.ddicSort-b.ddicSort); | 53 | tabData.value = res.data.sort((a,b)=>a.ddicSort-b.ddicSort); |
54 | activeName.value=tabData.value[0].ddicCode; | 54 | activeName.value=tabData.value[0].ddicCode; |
55 | } | 55 | } |
1 | +<el-row> | ||
2 | + <el-col :span="24" class="search"> | ||
3 | + <div class="condition" > | ||
4 | + <el-form ref=“form” style="display: flex;"> | ||
5 | + <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
6 | + <el-input v-model="search.keyword" placeholder="请输入关键字"></el-input> | ||
7 | + </el-form-item> | ||
8 | + <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
9 | + <el-select filterable clearable v-model="search.resType" placeholder="请选择资源类型"> | ||
10 | + <el-option | ||
11 | + v-for="item in resTypeOptions" | ||
12 | + :key="item.resTypeCode" | ||
13 | + :label="item.resTypeName" | ||
14 | + :value="item.resTypeCode"> | ||
15 | + </el-option> | ||
16 | + </el-select> | ||
17 | + </el-form-item> | ||
18 | + <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
19 | + <el-button @click="getListData" type="primary">查询</el-button> | ||
20 | + </el-form-item> | ||
21 | + </el-form> | ||
22 | + </div> | ||
23 | + </el-col> | ||
24 | +</el-row> | ||
25 | +<el-row style="margin-bottom: 10px;"> | ||
26 | + <div class="flex-div-start"> | ||
27 | + <el-button type="primary" @click="changeCancel()" size="small">取消</el-button> | ||
28 | + <el-button type="primary" @click="changeAdmin()" size="small" style="margin-left: 6px">变更</el-button> | ||
29 | + </div> | ||
30 | +</el-row> | ||
31 | +<el-row class="margin-bottom-50" style="margin-top: 3px"> | ||
32 | + <el-col :span="24" class="table-height"> | ||
33 | + <cm-table-page :columns="columns" | ||
34 | + :dataList="resourceData" | ||
35 | + :total="count" | ||
36 | + :layout="'total, prev,pager,next,sizes, jumper'" | ||
37 | + :pageSize="pageSize" | ||
38 | + @loaddata="loadTableDataList" | ||
39 | + @selectionChange="selectionChange" | ||
40 | + :showIndex="true" | ||
41 | + :showSelection="true" | ||
42 | + :showBorder="true" | ||
43 | + :loading="loading" | ||
44 | + :showPage="true" | ||
45 | + :showTools="false" | ||
46 | + :height="(height - 200)"> | ||
47 | + <template #default="{row,prop,column}"> | ||
48 | + <div v-if="prop == 'paramDesc'"> | ||
49 | + <el-select v-if="row.resType == 'HOST_X86SERVER'" v-model="row.showType" placeholder=""> | ||
50 | + <el-option | ||
51 | + v-for="item in showTypeList" | ||
52 | + :key="item.value" | ||
53 | + :label="item.name" | ||
54 | + :value="item.value" | ||
55 | + > | ||
56 | + </el-option> | ||
57 | + </el-select> | ||
58 | + </div> | ||
59 | + </template> | ||
60 | + </cm-table-page> | ||
61 | + </el-col> | ||
62 | +</el-row> | ||
63 | + | ||
64 | +<ChangeUsersList :show="show" :isTwoGroup="true" :isMulti="isMulti" @hideDialog="hideDialog" @savebtn="savebtn"></ChangeUsersList> |
1 | export default { | 1 | export default { |
2 | - name: 'resourceTypePer', | 2 | + name: 'resourceLeader', |
3 | template: '', | 3 | template: '', |
4 | components: { | 4 | components: { |
5 | - | 5 | + 'ChangeUsersList': Vue.defineAsyncComponent( |
6 | + () => myImport('views/batchChangeLeaders/changeUsersList/index') | ||
7 | + ), | ||
6 | }, | 8 | }, |
7 | data() { | 9 | data() { |
8 | }, | 10 | }, |
@@ -10,11 +12,247 @@ export default { | @@ -10,11 +12,247 @@ export default { | ||
10 | }, | 12 | }, |
11 | setup: function (props, {attrs, slots, emit}) { | 13 | setup: function (props, {attrs, slots, emit}) { |
12 | const {proxy} = Vue.getCurrentInstance(); | 14 | const {proxy} = Vue.getCurrentInstance(); |
15 | + //变更人员弹框 | ||
16 | + let show=Vue.ref(false); | ||
17 | + //变更人员列表是否多选 | ||
18 | + let isMulti=Vue.ref(false); | ||
19 | + //变更人员列表是否是两组 | ||
20 | + let isTwoGroup=Vue.ref(false); | ||
21 | + //配置列表总数 | ||
22 | + let count = Vue.ref(0); | ||
23 | + //列表高度 | ||
24 | + let height = Vue.ref(window.innerHeight); | ||
25 | + //列表分页 | ||
26 | + let limit = Vue.ref(400); | ||
27 | + //加载 | ||
28 | + let loading = Vue.ref(true); | ||
29 | + //选中数据 | ||
30 | + let pitch = Vue.ref([]); | ||
31 | + let showTypeList=Vue.ref([]); | ||
32 | + let search = Vue.ref({ | ||
33 | + resType: '', | ||
34 | + keyword: '', | ||
35 | + page: 1, | ||
36 | + limit: 20, | ||
37 | + }); | ||
38 | + let resTypeOptions=Vue.ref([]) | ||
39 | + const columns = [ | ||
40 | + { | ||
41 | + prop: 'resName', | ||
42 | + label: '资源名称', | ||
43 | + sortable: true, | ||
44 | + align: 'center', | ||
45 | + }, | ||
46 | + { | ||
47 | + prop: 'ip', | ||
48 | + label: 'IP地址', | ||
49 | + sortable: true, | ||
50 | + align: 'center', | ||
51 | + }, | ||
52 | + { | ||
53 | + prop: 'port', | ||
54 | + label: '端口号', | ||
55 | + sortable: true, | ||
56 | + align: 'center', | ||
57 | + }, | ||
58 | + { | ||
59 | + prop: 'admin', | ||
60 | + label: '负责人', | ||
61 | + sortable: true, | ||
62 | + align: 'center', | ||
63 | + }, | ||
64 | + { | ||
65 | + prop: 'resTypeName', | ||
66 | + label: '资源类型', | ||
67 | + sortable: true, | ||
68 | + align: 'center', | ||
69 | + }, | ||
70 | + { | ||
71 | + prop: 'state', | ||
72 | + label: '资源状态', | ||
73 | + sortable: true, | ||
74 | + align: 'center', | ||
75 | + render: function (row) { | ||
76 | + switch (row.state) { | ||
77 | + case "new" : | ||
78 | + return '<span style="background-color: #eee;color:#666;border-radius: 100px;padding:0 8px;display: inline-block;height:24px;line-height: 24px;">未监控</span>' | ||
79 | + case "monitor" : | ||
80 | + return '<span style="background-color: #0BAC33;color:#fff;border-radius: 100px;padding:0 8px;display: inline-block;height:24px;line-height: 24px;">监控中</span>' | ||
81 | + case "stop" : | ||
82 | + return '<span style="background-color: #d81e06;color:#fff;border-radius: 100px;padding:0 8px;display: inline-block;height:24px;line-height: 24px;">暂停</span>' | ||
83 | + default : | ||
84 | + return '<span style="background-color: #eee;color:#666;border-radius: 100px;padding:0 8px;display: inline-block;height:24px;line-height: 24px;">未监控</span>' | ||
85 | + } | ||
86 | + } | ||
87 | + }, | ||
88 | + { | ||
89 | + prop: 'paramDesc', | ||
90 | + label: '展示类型', | ||
91 | + sortable: true, | ||
92 | + align: 'center', | ||
93 | + /* render: function (row) { | ||
94 | + | ||
95 | + }*/ | ||
96 | + } | ||
97 | + ]; | ||
13 | 98 | ||
99 | + //列表数据 | ||
100 | + let resourceData = Vue.ref([]); | ||
101 | + //获取列表数据 | ||
102 | + const getListData = () => { | ||
103 | + let username=proxy.$route.query.username; | ||
104 | + let resName=proxy.$route.query.resName; | ||
105 | + //定义列表参数 | ||
106 | + let getParams = { | ||
107 | + resType:search.value.resType, | ||
108 | + keyword:search.value.keyword, | ||
109 | + resName: resName, | ||
110 | + userId: username, | ||
111 | + page: search.value.page, | ||
112 | + limit: search.value.limit | ||
113 | + }; | ||
114 | + proxy.$http.get("/api-web/manage/resource/getAllResByUser", getParams, function (res) { | ||
115 | + if (res && res.data) { | ||
116 | + resourceData.value = res.data ? res.data : []; | ||
117 | + count.value = res.count; | ||
118 | + loading.value = false; | ||
119 | + } | ||
120 | + }) | ||
121 | + } | ||
122 | + //重新加载表格数据 | ||
123 | + let loadTableDataList = ({page, limit}) => { | ||
124 | + search.value.page=page; | ||
125 | + search.value.limit=limit; | ||
126 | + getListData(); | ||
127 | + } | ||
128 | + let resIds=Vue.ref('');//选中的ids | ||
129 | + //表格全选事件 | ||
130 | + let selectionChange = (val) => { | ||
131 | + pitch.value = val; | ||
132 | + let arr=[]; | ||
133 | + pitch.value.map(item=>{ | ||
134 | + arr.push(item.resId) | ||
135 | + }) | ||
136 | + resIds.value=arr.join(",");//选中的值 | ||
137 | + proxy.resourceData.map((v, i) => { | ||
138 | + v.checked = false; | ||
139 | + }); | ||
140 | + let selectData = val; | ||
141 | + if (selectData.length > 0) { | ||
142 | + selectData.map((item, index) => { | ||
143 | + proxy.resourceData.map((v, i) => { | ||
144 | + if (item.id == v.id) { | ||
145 | + v.checked = true; | ||
146 | + } | ||
147 | + }) | ||
148 | + }) | ||
149 | + } else { | ||
150 | + proxy.resourceData.map((v, i) => { | ||
151 | + v.checked = false; | ||
152 | + }) | ||
153 | + } | ||
154 | + } | ||
155 | + //获取资源类型数据 | ||
156 | + let getResourceTypoe=()=>{ | ||
157 | + proxy.$http.get(`/api-web/manage/restype/list`, {}, function (res) { | ||
158 | + if (res && res.data) { | ||
159 | + resTypeOptions.value=res.data | ||
160 | + } | ||
161 | + }) | ||
162 | + } | ||
163 | + //获取展示类型的字典数据 | ||
164 | + let initShowType=()=>{ | ||
165 | + proxy.$http.post("/api-web/manage/ddic/findSucDdics/DETAILS_POWER", {}, function (res) { | ||
166 | + if (res && res.data) { | ||
167 | + let arr=res.data; | ||
168 | + if(arr && arr.length>0){ | ||
169 | + arr.map(v=>{ | ||
170 | + showTypeList.value.push({ | ||
171 | + name: v.ddicName | ||
172 | + ,value: v.ddicCode.substring(v.ddicCode.lastIndexOf("_")+1,v.ddicCode.length) | ||
173 | + }); | ||
174 | + }) | ||
175 | + } | ||
176 | + | ||
177 | + } | ||
178 | + }) | ||
179 | + } | ||
180 | + //批量取消负责的相关资源 | ||
181 | + let changeCancel = () => { | ||
182 | + if(pitch.value.length<1){ | ||
183 | + proxy.$global.showMsg('请至少选择一项','warning'); | ||
184 | + }else{ | ||
185 | + proxy.$global.confirm("确定取消负责的相关资源?", function () { | ||
186 | + proxy.$global.showMsg('取消成功!'); | ||
187 | + // proxy.$http.get(`/api-web/`, {resIds:resIds.value}, function (res) { | ||
188 | + // if (res && res.data) { | ||
189 | + // proxy.$global.showMsg('取消成功!'); | ||
190 | + // getListData() | ||
191 | + // } | ||
192 | + // }) | ||
193 | + }); | ||
194 | + } | ||
195 | + } | ||
196 | + //变更负责人 | ||
197 | + let changeAdmin = () => { | ||
198 | + if(pitch.value.length<1){ | ||
199 | + proxy.$global.showMsg('请至少选择一项','warning'); | ||
200 | + | ||
201 | + }else{ | ||
202 | + show.value=true; | ||
203 | + } | ||
204 | + | ||
205 | + } | ||
206 | + //变更人员的弹框关闭后 | ||
207 | + let hideDialog =(flag)=>{ | ||
208 | + show.value=flag; | ||
209 | + // getListData(); | ||
210 | + } | ||
211 | + //变更人员的弹框保存后 | ||
212 | + let savebtn =(obj)=>{ | ||
213 | + show.value=false; | ||
214 | + //obj.selectModel 选中的用户组(一个/主负责人) obj.selectModelSecond 辅负责人,都是数组 | ||
215 | + let params={ | ||
216 | + resIds:resIds.value, | ||
217 | + selectModel:obj.selectModel, | ||
218 | + } | ||
219 | + // proxy.$http.get(`/api-web/`, {}, function (res) { | ||
220 | + // if (res && res.data) { | ||
221 | + // proxy.$global.showMsg('变更成功!'); | ||
222 | + // getListData() | ||
223 | + // } | ||
224 | + // }) | ||
225 | + } | ||
14 | // 挂载完 | 226 | // 挂载完 |
15 | Vue.onMounted(() => { | 227 | Vue.onMounted(() => { |
228 | + initShowType(); | ||
229 | + getResourceTypoe(); | ||
230 | + getListData(); | ||
16 | }) | 231 | }) |
17 | return { | 232 | return { |
233 | + isMulti, | ||
234 | + isTwoGroup, | ||
235 | + show, | ||
236 | + initShowType, | ||
237 | + showTypeList, | ||
238 | + search, | ||
239 | + resTypeOptions, | ||
240 | + changeCancel, | ||
241 | + count, | ||
242 | + hideDialog, | ||
243 | + savebtn, | ||
244 | + changeAdmin, | ||
245 | + getResourceTypoe, | ||
246 | + | ||
247 | + resourceData, | ||
248 | + columns, | ||
249 | + height, | ||
250 | + loading, | ||
251 | + | ||
252 | + selectionChange, | ||
253 | + | ||
254 | + getListData, | ||
255 | + loadTableDataList, | ||
18 | 256 | ||
19 | } | 257 | } |
20 | } | 258 | } |
1 | <el-row> | 1 | <el-row> |
2 | <el-col :span="24" class="search"> | 2 | <el-col :span="24" class="search"> |
3 | - <div class="condition" style="display: flex;"> | ||
4 | - <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
5 | - <el-input v-model="search.keyword" placeholder="请输入关键字"></el-input> | ||
6 | - </el-form-item> | ||
7 | - <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
8 | - <el-select filterable clearable v-model="search.resType" placeholder="请选择资源类型"> | ||
9 | - <el-option | ||
10 | - v-for="item in resTypeOptions" | ||
11 | - :key="item.resTypeCode" | ||
12 | - :label="item.resTypeName" | ||
13 | - :value="item.resTypeCode"> | ||
14 | - </el-option> | ||
15 | - </el-select> | ||
16 | - </el-form-item> | ||
17 | - <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
18 | - <el-button @click="getListData">查询</el-button> | ||
19 | - </el-form-item> | 3 | + <div class="condition" > |
4 | + <el-form ref=“form” style="display: flex;"> | ||
5 | + <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
6 | + <el-input v-model="search.keyword" placeholder="请输入关键字"></el-input> | ||
7 | + </el-form-item> | ||
8 | + <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
9 | + <el-select filterable clearable v-model="search.resType" placeholder="请选择资源类型"> | ||
10 | + <el-option | ||
11 | + v-for="item in resTypeOptions" | ||
12 | + :key="item.resTypeCode" | ||
13 | + :label="item.resTypeName" | ||
14 | + :value="item.resTypeCode"> | ||
15 | + </el-option> | ||
16 | + </el-select> | ||
17 | + </el-form-item> | ||
18 | + <el-form-item style="margin-right: 6px;margin-bottom: 10px;"> | ||
19 | + <el-button @click="getListData" type="primary">查询</el-button> | ||
20 | + </el-form-item> | ||
21 | + </el-form> | ||
20 | </div> | 22 | </div> |
21 | </el-col> | 23 | </el-col> |
22 | </el-row> | 24 | </el-row> |
hg-monitor-web-base/src/main/resources/static/vue3/src/views/batchChangeLeaders/resourcePer/index.js
@@ -9,10 +9,6 @@ export default { | @@ -9,10 +9,6 @@ export default { | ||
9 | data() { | 9 | data() { |
10 | }, | 10 | }, |
11 | props: { | 11 | props: { |
12 | - parameter: { | ||
13 | - type: Array, | ||
14 | - default: [] | ||
15 | - } | ||
16 | }, | 12 | }, |
17 | setup: function (props, {attrs, slots, emit}) { | 13 | setup: function (props, {attrs, slots, emit}) { |
18 | const {proxy} = Vue.getCurrentInstance(); | 14 | const {proxy} = Vue.getCurrentInstance(); |
@@ -94,21 +90,9 @@ export default { | @@ -94,21 +90,9 @@ export default { | ||
94 | label: '展示类型', | 90 | label: '展示类型', |
95 | sortable: true, | 91 | sortable: true, |
96 | align: 'center', | 92 | align: 'center', |
97 | - render: function (row) { | ||
98 | - if(row.resType == 'HOST_X86SERVER'){ | ||
99 | - let span='<span>'; | ||
100 | - showTypeList.value.map((v,i)=>{ | ||
101 | - if(row.showType == v.value){ | ||
102 | - span += v.name | ||
103 | - } | ||
104 | - }) | ||
105 | - span+='</span>'; | ||
106 | - return span; | 93 | + /* render: function (row) { |
107 | 94 | ||
108 | - }else{ | ||
109 | - return ''; | ||
110 | - } | ||
111 | - } | 95 | + }*/ |
112 | } | 96 | } |
113 | ]; | 97 | ]; |
114 | 98 | ||
@@ -128,7 +112,7 @@ export default { | @@ -128,7 +112,7 @@ export default { | ||
128 | limit: search.value.limit | 112 | limit: search.value.limit |
129 | }; | 113 | }; |
130 | proxy.$http.get("/api-web/manage/resource/getAllResByUser", getParams, function (res) { | 114 | proxy.$http.get("/api-web/manage/resource/getAllResByUser", getParams, function (res) { |
131 | - if (res && res.success) { | 115 | + if (res && res.data) { |
132 | resourceData.value = res.data ? res.data : []; | 116 | resourceData.value = res.data ? res.data : []; |
133 | count.value = res.count; | 117 | count.value = res.count; |
134 | loading.value = false; | 118 | loading.value = false; |
@@ -179,7 +163,7 @@ export default { | @@ -179,7 +163,7 @@ export default { | ||
179 | //获取展示类型的字典数据 | 163 | //获取展示类型的字典数据 |
180 | let initShowType=()=>{ | 164 | let initShowType=()=>{ |
181 | proxy.$http.post("/api-web/manage/ddic/findSucDdics/DETAILS_POWER", {}, function (res) { | 165 | proxy.$http.post("/api-web/manage/ddic/findSucDdics/DETAILS_POWER", {}, function (res) { |
182 | - if (res && res.success) { | 166 | + if (res && res.data) { |
183 | let arr=res.data; | 167 | let arr=res.data; |
184 | if(arr && arr.length>0){ | 168 | if(arr && arr.length>0){ |
185 | arr.map(v=>{ | 169 | arr.map(v=>{ |
@@ -201,7 +185,7 @@ export default { | @@ -201,7 +185,7 @@ export default { | ||
201 | proxy.$global.confirm("确定取消相关资源?", function () { | 185 | proxy.$global.confirm("确定取消相关资源?", function () { |
202 | proxy.$global.showMsg('取消成功!'); | 186 | proxy.$global.showMsg('取消成功!'); |
203 | // proxy.$http.get(`/api-web/`, {resIds:resIds.value}, function (res) { | 187 | // proxy.$http.get(`/api-web/`, {resIds:resIds.value}, function (res) { |
204 | - // if (res && res.success) { | 188 | + // if (res && res.data) { |
205 | // proxy.$global.showMsg('取消成功!'); | 189 | // proxy.$global.showMsg('取消成功!'); |
206 | // getListData() | 190 | // getListData() |
207 | // } | 191 | // } |
@@ -233,7 +217,7 @@ export default { | @@ -233,7 +217,7 @@ export default { | ||
233 | selectModel:obj.selectModel, | 217 | selectModel:obj.selectModel, |
234 | } | 218 | } |
235 | // proxy.$http.get(`/api-web/`, {}, function (res) { | 219 | // proxy.$http.get(`/api-web/`, {}, function (res) { |
236 | - // if (res && res.success) { | 220 | + // if (res && res.data) { |
237 | // proxy.$global.showMsg('变更成功!'); | 221 | // proxy.$global.showMsg('变更成功!'); |
238 | // getListData() | 222 | // getListData() |
239 | // } | 223 | // } |
-
Please register or login to post a comment