4465b888 by 任超

style:样式修改

1 parent c960c494
Showing 46 changed files with 1222 additions and 1320 deletions
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-03-06 16:24:39 4 * @LastEditTime: 2023-03-07 09:15:01
5 --> 5 -->
6 <template> 6 <template>
7 <div class="app-wrapper"> 7 <div class="app-wrapper jgWrapper">
8 <navbar /> 8 <navbar />
9 <div class="appMain"> 9 <div class="appMain">
10 <app-main /> 10 <app-main />
...@@ -34,8 +34,10 @@ export default { ...@@ -34,8 +34,10 @@ export default {
34 } 34 }
35 </script> 35 </script>
36 <style lang="scss"> 36 <style lang="scss">
37 @import "~@/styles/jgSidebar.scss";
38 </style>
39 <style lang="scss" scoped>
37 @import "~@/styles/mixin.scss"; 40 @import "~@/styles/mixin.scss";
38 @import "~@/styles/sidebar.scss";
39 41
40 .app-wrapper { 42 .app-wrapper {
41 @include clearfix; 43 @include clearfix;
......
...@@ -22,6 +22,6 @@ export default { ...@@ -22,6 +22,6 @@ export default {
22 box-sizing: border-box; 22 box-sizing: border-box;
23 flex: 1; 23 flex: 1;
24 width: 100%; 24 width: 100%;
25 margin-right: 15px; 25 // background-color: #ffffff;
26 } 26 }
27 </style> 27 </style>
......
...@@ -4,11 +4,7 @@ ...@@ -4,11 +4,7 @@
4 <div class="logo"> 4 <div class="logo">
5 <img :src="require('@/image/logo.png')" alt="" /> 5 <img :src="require('@/image/logo.png')" alt="" />
6 </div> 6 </div>
7 <!-- <div class="backdrop">
8 <Breadcrumb />
9 </div> -->
10 <div class="right-menu"> 7 <div class="right-menu">
11 <!-- <div class="dataView d-center pointer" @click="handleDataView">大屏展示</div> -->
12 <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="hover" @command="handleCommand"> 8 <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="hover" @command="handleCommand">
13 <div class="avatar-wrapper"> 9 <div class="avatar-wrapper">
14 <span style="padding-right:10px">{{ name }}</span> 10 <span style="padding-right:10px">{{ name }}</span>
...@@ -67,15 +63,6 @@ export default { ...@@ -67,15 +63,6 @@ export default {
67 } 63 }
68 } 64 }
69 65
70 .dataView {
71 color: #fff;
72 width: 120px;
73 height: 32px;
74 background: url("../../image/dp.png");
75 background-size: cover;
76 margin-right: 20px;
77 }
78
79 .NoticeBar { 66 .NoticeBar {
80 position: absolute; 67 position: absolute;
81 bottom: 0; 68 bottom: 0;
...@@ -120,15 +107,11 @@ export default { ...@@ -120,15 +107,11 @@ export default {
120 height: $headerHeight; 107 height: $headerHeight;
121 overflow: hidden; 108 overflow: hidden;
122 position: relative; 109 position: relative;
123 // background: linear-gradient(270deg, #148CEE 0%, #1870E3 100%); //默认颜色 110 background: #3D59C4;
124 // box-shadow: 0 1px 0px rgba(0, 21, 41, 0.08);
125 background: #0d1230;
126 display: flex; 111 display: flex;
127 align-items: center; 112 align-items: center;
128 padding-right: 20px; 113 padding-right: 20px;
129 justify-content: space-between; 114 justify-content: space-between;
130 margin-bottom: 10px;
131
132 .header-logo { 115 .header-logo {
133 width: 300px; 116 width: 300px;
134 } 117 }
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-03-06 16:23:31 4 * @LastEditTime: 2023-03-07 09:11:01
5 --> 5 -->
6 <template> 6 <template>
7 <div class="app-wrapper scWrapper"> 7 <div class="app-wrapper scWrapper">
...@@ -43,7 +43,8 @@ export default { ...@@ -43,7 +43,8 @@ export default {
43 position: relative; 43 position: relative;
44 height: 100%; 44 height: 100%;
45 width: 100%; 45 width: 100%;
46 background-color: $containerbg; 46 // background-color: $containerbg;
47 padding: 0;
47 48
48 &.mobile.openSidebar { 49 &.mobile.openSidebar {
49 position: fixed; 50 position: fixed;
......
1 /*
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-07 09:43:25
5 */
1 import router from "./router"; 6 import router from "./router";
2 import store from "./store"; 7 import store from "./store";
3 import { getMenuInfo } from "@/api/user"; 8 import { getMenuInfo } from "@/api/user";
...@@ -23,6 +28,7 @@ router.beforeEach(async (to, from, next) => { ...@@ -23,6 +28,7 @@ router.beforeEach(async (to, from, next) => {
23 //请求用户信息 28 //请求用户信息
24 if (!hasUser) { 29 if (!hasUser) {
25 store.dispatch("user/getUserInfo"); 30 store.dispatch("user/getUserInfo");
31 import("@/styles/public.scss");
26 } 32 }
27 if (hasAddRoute) { 33 if (hasAddRoute) {
28 next(); 34 next();
......
1 /*
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-07 09:38:47
5 */
1 import { getUserInfo } from "@/api/user"; 6 import { getUserInfo } from "@/api/user";
2 const state = { 7 const state = {
3 hasUser: false, 8 hasUser: false,
...@@ -18,9 +23,6 @@ const actions = { ...@@ -18,9 +23,6 @@ const actions = {
18 getUserInfo ({ commit }) { 23 getUserInfo ({ commit }) {
19 return new Promise(async (resolve) => { 24 return new Promise(async (resolve) => {
20 let { result: res } = await getUserInfo(); 25 let { result: res } = await getUserInfo();
21 // require.ensure([], function (require) {
22 // require("@/assets/sass/smart-lift/index.scss");
23 // });
24 commit("SET_USERINFO", res); 26 commit("SET_USERINFO", res);
25 resolve(true); 27 resolve(true);
26 }); 28 });
......
1 #app { 1 .jgWrapper {
2 .main-container { 2 .main-container {
3 width: 100%; 3 width: 100%;
4 height: calc(100% - 74px); 4 height: calc(100% - 74px);
......
1 .tableClass { 1 .tableClass {
2 /deep/.el-table { 2 .el-table {
3 border: none !important; 3 border: none !important;
4 border-radius: 0 !important; 4 border-radius: 0 !important;
5 background-color: rgba(0, 0, 0, 0); 5 background-color: rgba(0, 0, 0, 0);
...@@ -40,6 +40,11 @@ ...@@ -40,6 +40,11 @@
40 } 40 }
41 41
42 //*****start*通用表单查询条件,列表样式******// 42 //*****start*通用表单查询条件,列表样式******//
43 .bgc {
44 box-shadow: inset 0px 0px 8px 0px rgba(255, 255, 255, 0.5);
45 background-color: rgba(0, 0, 0, 0);
46 }
47
43 .from-clues { 48 .from-clues {
44 height: 100%; 49 height: 100%;
45 width: 100%; 50 width: 100%;
...@@ -56,11 +61,11 @@ ...@@ -56,11 +61,11 @@
56 background-size: 100% 100%; 61 background-size: 100% 100%;
57 margin-top: 15px; 62 margin-top: 15px;
58 63
59 /deep/.el-form-item__label { 64 .el-form-item__label {
60 color: #E3F1FF; 65 color: #E3F1FF;
61 } 66 }
62 67
63 /deep/.el-input__inner { 68 .el-input__inner {
64 background: #07388B; 69 background: #07388B;
65 border-radius: 2px; 70 border-radius: 2px;
66 color: #CEF8FF; 71 color: #CEF8FF;
...@@ -114,16 +119,11 @@ ...@@ -114,16 +119,11 @@
114 //修改表头的背景颜色横向渐变色 119 //修改表头的背景颜色横向渐变色
115 @extend .tableClass; 120 @extend .tableClass;
116 121
117 /deep/.el-pagination__total { 122 .el-pagination__total {
118 color: #FFFFFF; 123 color: #FFFFFF;
119 } 124 }
120 125
121 .bgc { 126 .el-pagination {
122 box-shadow: inset 0px 0px 8px 0px rgba(255, 255, 255, 0.5);
123 background-color: rgba(0, 0, 0, 0);
124 }
125
126 /deep/ .el-pagination {
127 .el-input__inner { 127 .el-input__inner {
128 color: #FFFFFF; 128 color: #FFFFFF;
129 border: none; 129 border: none;
...@@ -142,14 +142,9 @@ ...@@ -142,14 +142,9 @@
142 color: #FFFFFF; 142 color: #FFFFFF;
143 } 143 }
144 } 144 }
145 }
145 146
146 /deep/.btn-next,
147 /deep/.btn-prev {
148 @extend .bgc;
149 color: #FFFFFF;
150 }
151 147
152 }
153 148
154 .el-form--inline .el-form-item { 149 .el-form--inline .el-form-item {
155 width: auto; 150 width: auto;
...@@ -167,10 +162,15 @@ ...@@ -167,10 +162,15 @@
167 } 162 }
168 } 163 }
169 164
165 .el-pagination.is-background .btn-prev,
166 .el-pagination.is-background .btn-next {
167 @extend .bgc;
168 color: #FFFFFF;
169 }
170 170
171 171
172 //*****end*通用表单查询条件,列表样式******// 172 //*****end*通用表单查询条件,列表样式******//
173 /deep/.el-range-separator { 173 .el-range-separator {
174 line-height: 28px !important; 174 line-height: 28px !important;
175 } 175 }
176 176
...@@ -202,7 +202,7 @@ ...@@ -202,7 +202,7 @@
202 202
203 // 修改弹框样式 203 // 修改弹框样式
204 .modifydialog { 204 .modifydialog {
205 /deep/.el-dialog__header { 205 .el-dialog__header {
206 text-align: center; 206 text-align: center;
207 margin-bottom: 10px; 207 margin-bottom: 10px;
208 208
...@@ -211,36 +211,36 @@ ...@@ -211,36 +211,36 @@
211 } 211 }
212 } 212 }
213 213
214 /deep/.el-form-item__label { 214 .el-form-item__label {
215 color: white; 215 color: white;
216 } 216 }
217 217
218 /deep/.el-input__inner { 218 .el-input__inner {
219 background-color: #07388b; 219 background-color: #07388b;
220 } 220 }
221 221
222 /deep/.el-input__inner { 222 .el-input__inner {
223 background: #07388b; 223 background: #07388b;
224 border-radius: 2px; 224 border-radius: 2px;
225 border: 1px solid #6bc1fc; 225 border: 1px solid #6bc1fc;
226 } 226 }
227 227
228 /deep/.el-textarea__inner { 228 .el-textarea__inner {
229 background: #07388b; 229 background: #07388b;
230 color: #fff; 230 color: #fff;
231 } 231 }
232 232
233 /deep/.el-form-item__label { 233 .el-form-item__label {
234 color: #fff; 234 color: #fff;
235 } 235 }
236 236
237 /deep/.el-dialog__headerbtn { 237 .el-dialog__headerbtn {
238 position: absolute; 238 position: absolute;
239 top: 22px; 239 top: 22px;
240 right: 30px; 240 right: 30px;
241 } 241 }
242 242
243 /deep/.el-dialog__header { 243 .el-dialog__header {
244 text-align: center; 244 text-align: center;
245 margin-bottom: 10px; 245 margin-bottom: 10px;
246 246
...@@ -252,23 +252,23 @@ ...@@ -252,23 +252,23 @@
252 252
253 // 角色配置 253 // 角色配置
254 .roleconfiguration { 254 .roleconfiguration {
255 /deep/.el-dialog__body { 255 .el-dialog__body {
256 display: flex; 256 display: flex;
257 flex-direction: column; 257 flex-direction: column;
258 } 258 }
259 259
260 /deep/ .el-tabs { 260 .el-tabs {
261 color: #cef8ff; 261 color: #cef8ff;
262 } 262 }
263 263
264 .sjmx { 264 .sjmx {
265 /deep/.el-tabs__item { 265 .el-tabs__item {
266 height: 50px; 266 height: 50px;
267 padding-top: 6px; 267 padding-top: 6px;
268 } 268 }
269 } 269 }
270 270
271 /deep/.el-tabs__item { 271 .el-tabs__item {
272 color: #cef8ff !important; 272 color: #cef8ff !important;
273 273
274 display: flex; 274 display: flex;
...@@ -286,35 +286,35 @@ ...@@ -286,35 +286,35 @@
286 background-size: 100% 100%; 286 background-size: 100% 100%;
287 } 287 }
288 288
289 /deep/.el-tabs__nav-scroll { 289 .el-tabs__nav-scroll {
290 background: none; 290 background: none;
291 } 291 }
292 292
293 /deep/.el-tabs__nav { 293 .el-tabs__nav {
294 display: flex; 294 display: flex;
295 border: none !important; 295 border: none !important;
296 } 296 }
297 297
298 /deep/.el-tabs__item.is-top { 298 .el-tabs__item.is-top {
299 border: 1px solid #dfe4ed; 299 border: 1px solid #dfe4ed;
300 border-top: 1px solid #dfe4ed; 300 border-top: 1px solid #dfe4ed;
301 border-bottom: 1px solid transparent; 301 border-bottom: 1px solid transparent;
302 } 302 }
303 303
304 /deep/.el-tabs__header { 304 .el-tabs__header {
305 border: none; 305 border: none;
306 margin-bottom: 0; 306 margin-bottom: 0;
307 } 307 }
308 308
309 /deep/.el-tabs__item.is-top:not(:last-child) { 309 .el-tabs__item.is-top:not(:last-child) {
310 margin-right: 5px; 310 margin-right: 5px;
311 } 311 }
312 312
313 /deep/.el-tabs__item.is-top { 313 .el-tabs__item.is-top {
314 background-color: none !important; 314 background-color: none !important;
315 } 315 }
316 316
317 /deep/.el-tabs__item.is-active { 317 .el-tabs__item.is-active {
318 background: url("~@/image/tabitemse.png") no-repeat; 318 background: url("~@/image/tabitemse.png") no-repeat;
319 background-size: 100% 100%; 319 background-size: 100% 100%;
320 } 320 }
...@@ -344,7 +344,7 @@ ...@@ -344,7 +344,7 @@
344 border-top: none; 344 border-top: none;
345 } 345 }
346 346
347 /deep/.editDialogBox { 347 .editDialogBox {
348 border-radius: 8px; 348 border-radius: 8px;
349 overflow: hidden; 349 overflow: hidden;
350 min-width: 1228px; 350 min-width: 1228px;
...@@ -424,7 +424,7 @@ ...@@ -424,7 +424,7 @@
424 overflow: hidden; 424 overflow: hidden;
425 } 425 }
426 426
427 /deep/.el-table { 427 .el-table {
428 background: none; 428 background: none;
429 429
430 th.el-table__cell { 430 th.el-table__cell {
...@@ -440,5 +440,4 @@ ...@@ -440,5 +440,4 @@
440 } 440 }
441 } 441 }
442 } 442 }
443
444 } 443 }
...\ No newline at end of file ...\ No newline at end of file
......
1 .scWrapper { 1 .scWrapper {
2 .main-container { 2 .main-container {
3 width: 100%; 3 width: 100%;
4 height: calc(100% - 84px); 4 height: calc(100% - 74px);
5 transition: margin-left 0.28s; 5 transition: margin-left 0.28s;
6 display: flex; 6 display: flex;
7 background-color: $containerbg;
8 } 7 }
9 8
10 .sidebar-container { 9 .sidebar-container {
...@@ -12,6 +11,7 @@ ...@@ -12,6 +11,7 @@
12 width: $sideBarWidth !important; 11 width: $sideBarWidth !important;
13 font-size: 0px; 12 font-size: 0px;
14 margin-right: 15px; 13 margin-right: 15px;
14 background: #121F41;
15 15
16 .horizontal-collapse-transition { 16 .horizontal-collapse-transition {
17 transition: 0s width ease-in-out, 0s padding-left ease-in-out, 17 transition: 0s width ease-in-out, 0s padding-left ease-in-out,
...@@ -164,7 +164,7 @@ ...@@ -164,7 +164,7 @@
164 // border-radius: 6px; 164 // border-radius: 6px;
165 } 165 }
166 } 166 }
167 167
168 .hideSidebar { 168 .hideSidebar {
169 .sidebar-container { 169 .sidebar-container {
170 width: 54px !important; 170 width: 54px !important;
......
1 /*
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-07 09:35:10
5 */
1 import Layout from '@/layout' 6 import Layout from '@/layout'
2 export default function filterAsyncRouter (routers) { 7 export default function filterAsyncRouter (routers) {
3 routers.forEach(item => { 8 routers.forEach(item => {
......
...@@ -161,5 +161,5 @@ export default { ...@@ -161,5 +161,5 @@ export default {
161 } 161 }
162 </script> 162 </script>
163 <style scoped lang="scss"> 163 <style scoped lang="scss">
164 @import "~@/styles/public.scss"; 164 // @import "~@/styles/public.scss";
165 </style> 165 </style>
......
...@@ -152,6 +152,6 @@ export default { ...@@ -152,6 +152,6 @@ export default {
152 </script> 152 </script>
153 <style scoped lang="scss"> 153 <style scoped lang="scss">
154 // 引入表单整体样式 154 // 引入表单整体样式
155 @import "~@/styles/public.scss"; 155 // @import "~@/styles/public.scss";
156 </style> 156 </style>
157 157
......
...@@ -160,5 +160,5 @@ export default { ...@@ -160,5 +160,5 @@ export default {
160 } 160 }
161 </script> 161 </script>
162 <style scoped lang="scss"> 162 <style scoped lang="scss">
163 @import "~@/styles/public.scss"; 163 // @import "~@/styles/public.scss";
164 </style> 164 </style>
......
...@@ -169,5 +169,5 @@ export default { ...@@ -169,5 +169,5 @@ export default {
169 } 169 }
170 </script> 170 </script>
171 <style scoped lang="scss"> 171 <style scoped lang="scss">
172 @import "~@/styles/public.scss"; 172 // @import "~@/styles/public.scss";
173 </style> 173 </style>
......
...@@ -135,5 +135,5 @@ export default { ...@@ -135,5 +135,5 @@ export default {
135 } 135 }
136 </script> 136 </script>
137 <style scoped lang="scss"> 137 <style scoped lang="scss">
138 @import "~@/styles/public.scss"; 138 // @import "~@/styles/public.scss";
139 </style> 139 </style>
......
...@@ -201,5 +201,5 @@ export default { ...@@ -201,5 +201,5 @@ export default {
201 } 201 }
202 </script> 202 </script>
203 <style scoped lang="scss"> 203 <style scoped lang="scss">
204 @import "~@/styles/public.scss"; 204 // @import "~@/styles/public.scss";
205 </style> 205 </style>
......
...@@ -151,5 +151,5 @@ export default { ...@@ -151,5 +151,5 @@ export default {
151 } 151 }
152 </script> 152 </script>
153 <style scoped lang="scss"> 153 <style scoped lang="scss">
154 @import "~@/styles/public.scss"; 154 // @import "~@/styles/public.scss";
155 </style> 155 </style>
......
...@@ -157,6 +157,6 @@ export default { ...@@ -157,6 +157,6 @@ export default {
157 } 157 }
158 </script> 158 </script>
159 <style scoped lang="scss"> 159 <style scoped lang="scss">
160 @import "~@/styles/public.scss"; 160 // @import "~@/styles/public.scss";
161 </style> 161 </style>
162 162
......
...@@ -163,6 +163,6 @@ export default { ...@@ -163,6 +163,6 @@ export default {
163 } 163 }
164 </script> 164 </script>
165 <style scoped lang="scss"> 165 <style scoped lang="scss">
166 @import "~@/styles/public.scss"; 166 // @import "~@/styles/public.scss";
167 @import "./index.scss"; 167 @import "./index.scss";
168 </style> 168 </style>
......
...@@ -143,5 +143,5 @@ export default { ...@@ -143,5 +143,5 @@ export default {
143 } 143 }
144 </script> 144 </script>
145 <style scoped lang="scss"> 145 <style scoped lang="scss">
146 @import "~@/styles/public.scss"; 146 // @import "~@/styles/public.scss";
147 </style> 147 </style>
......
...@@ -148,5 +148,5 @@ export default { ...@@ -148,5 +148,5 @@ export default {
148 } 148 }
149 </script> 149 </script>
150 <style scoped lang="scss"> 150 <style scoped lang="scss">
151 @import "~@/styles/public.scss"; 151 // @import "~@/styles/public.scss";
152 </style> 152 </style>
......
...@@ -145,5 +145,5 @@ export default { ...@@ -145,5 +145,5 @@ export default {
145 } 145 }
146 </script> 146 </script>
147 <style scoped lang="scss"> 147 <style scoped lang="scss">
148 @import "~@/styles/public.scss"; 148 // @import "~@/styles/public.scss";
149 </style> 149 </style>
......
...@@ -160,5 +160,5 @@ export default { ...@@ -160,5 +160,5 @@ export default {
160 </script> 160 </script>
161 <style scoped lang="scss"> 161 <style scoped lang="scss">
162 // 引入表单整体样式 162 // 引入表单整体样式
163 @import "~@/styles/public.scss"; 163 // @import "~@/styles/public.scss";
164 </style> 164 </style>
......
...@@ -151,5 +151,5 @@ export default { ...@@ -151,5 +151,5 @@ export default {
151 } 151 }
152 </script> 152 </script>
153 <style scoped lang="scss"> 153 <style scoped lang="scss">
154 @import "~@/styles/public.scss"; 154 // @import "~@/styles/public.scss";
155 </style> 155 </style>
......
...@@ -143,5 +143,5 @@ export default { ...@@ -143,5 +143,5 @@ export default {
143 } 143 }
144 </script> 144 </script>
145 <style scoped lang="scss"> 145 <style scoped lang="scss">
146 @import "~@/styles/public.scss"; 146 // @import "~@/styles/public.scss";
147 </style> 147 </style>
......
...@@ -10,29 +10,16 @@ ...@@ -10,29 +10,16 @@
10 <el-row> 10 <el-row>
11 <el-col :span="4"> 11 <el-col :span="4">
12 <el-form-item label="开始日期" prop="startTime"> 12 <el-form-item label="开始日期" prop="startTime">
13 <el-date-picker 13 <el-date-picker type="date" :clearable="false" class="width100" placeholder="开始日期"
14 type="date" 14 :picker-options="pickerOptionsStart" v-model="form.startTime"
15 :clearable="false" 15 value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
16 class="width100"
17 placeholder="开始日期"
18 :picker-options="pickerOptionsStart"
19 v-model="form.startTime"
20 value-format="yyyy-MM-dd HH:mm:ss"
21 ></el-date-picker>
22 </el-form-item> 16 </el-form-item>
23 </el-col> 17 </el-col>
24 <el-col :span="4"> 18 <el-col :span="4">
25 <el-form-item label="结束日期" prop="endTime"> 19 <el-form-item label="结束日期" prop="endTime">
26 <el-date-picker 20 <el-date-picker class="width100" :clearable="false" type="date" placeholder="结束日期"
27 class="width100" 21 :picker-options="pickerOptionsEnd" v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"
28 :clearable="false" 22 @change="endTimeChange"></el-date-picker>
29 type="date"
30 placeholder="结束日期"
31 :picker-options="pickerOptionsEnd"
32 v-model="form.endTime"
33 value-format="yyyy-MM-dd HH:mm:ss"
34 @change="endTimeChange"
35 ></el-date-picker>
36 </el-form-item> 23 </el-form-item>
37 </el-col> 24 </el-col>
38 <!-- 操作按钮 --> 25 <!-- 操作按钮 -->
...@@ -57,7 +44,7 @@ import efficient from "@/api/efficient"; ...@@ -57,7 +44,7 @@ import efficient from "@/api/efficient";
57 import { getFirstDayOfSeason, timeFormat } from "@/utils/operation"; 44 import { getFirstDayOfSeason, timeFormat } from "@/utils/operation";
58 export default { 45 export default {
59 name: "jktj", 46 name: "jktj",
60 data() { 47 data () {
61 return { 48 return {
62 // 开始日期限制 49 // 开始日期限制
63 pickerOptionsStart: { 50 pickerOptionsStart: {
...@@ -83,19 +70,19 @@ export default { ...@@ -83,19 +70,19 @@ export default {
83 pieChartsData: [], 70 pieChartsData: [],
84 }; 71 };
85 }, 72 },
86 created() {}, 73 created () { },
87 mounted() { 74 mounted () {
88 this.getProcessCounts(); 75 this.getProcessCounts();
89 }, 76 },
90 computed: { 77 computed: {
91 ...mapGetters(["dicData"]), 78 ...mapGetters(["dicData"]),
92 }, 79 },
93 methods: { 80 methods: {
94 endTimeChange(val) { 81 endTimeChange (val) {
95 this.form.endTime = timeFormat(new Date(val), true); 82 this.form.endTime = timeFormat(new Date(val), true);
96 }, 83 },
97 //查询各区县办件数量 84 //查询各区县办件数量
98 async getProcessCounts() { 85 async getProcessCounts () {
99 this.pieChartsData = []; 86 this.pieChartsData = [];
100 let { result: res } = await efficient.getProcessCounts( 87 let { result: res } = await efficient.getProcessCounts(
101 this.form.startTime, 88 this.form.startTime,
...@@ -121,7 +108,7 @@ export default { ...@@ -121,7 +108,7 @@ export default {
121 }); 108 });
122 }, 109 },
123 // 重置 110 // 重置
124 resetForm() { 111 resetForm () {
125 this.form = { 112 this.form = {
126 startTime: getFirstDayOfSeason(), 113 startTime: getFirstDayOfSeason(),
127 endTime: timeFormat(new Date(), true), 114 endTime: timeFormat(new Date(), true),
...@@ -129,7 +116,7 @@ export default { ...@@ -129,7 +116,7 @@ export default {
129 this.getProcessCounts(); 116 this.getProcessCounts();
130 }, 117 },
131 //玫瑰图初始化 118 //玫瑰图初始化
132 echartInit() { 119 echartInit () {
133 let _this = this; 120 let _this = this;
134 // 基于准备好的dom,初始化echarts实例 121 // 基于准备好的dom,初始化echarts实例
135 let myChart = this.$echarts.init(document.getElementById("myChart")); 122 let myChart = this.$echarts.init(document.getElementById("myChart"));
...@@ -190,7 +177,7 @@ export default { ...@@ -190,7 +177,7 @@ export default {
190 }); 177 });
191 }, 178 },
192 //柱图初始化 179 //柱图初始化
193 async barChartInit(recType) { 180 async barChartInit (recType) {
194 //请求recType对应业务的各区县数据 181 //请求recType对应业务的各区县数据
195 let { result: res } = await efficient.getProcessDays( 182 let { result: res } = await efficient.getProcessDays(
196 recType, 183 recType,
...@@ -325,7 +312,7 @@ export default { ...@@ -325,7 +312,7 @@ export default {
325 }; 312 };
326 </script> 313 </script>
327 <style scoped lang="scss"> 314 <style scoped lang="scss">
328 @import "~@/styles/public.scss"; 315 // @import "~@/styles/public.scss";
329 316
330 .jktjDetail { 317 .jktjDetail {
331 height: 100%; 318 height: 100%;
...@@ -364,5 +351,5 @@ export default { ...@@ -364,5 +351,5 @@ export default {
364 } 351 }
365 </style> 352 </style>
366 <style scoped lang="scss"> 353 <style scoped lang="scss">
367 @import "~@/styles/public.scss"; 354 // @import "~@/styles/public.scss";
368 </style> 355 </style>
......
...@@ -10,47 +10,24 @@ ...@@ -10,47 +10,24 @@
10 <el-row> 10 <el-row>
11 <el-col :span="4"> 11 <el-col :span="4">
12 <el-form-item label="行政区"> 12 <el-form-item label="行政区">
13 <el-select 13 <el-select v-model="form.qxdm" class="width100" clearable placeholder="行政区">
14 v-model="form.qxdm" 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
15 class="width100"
16 clearable
17 placeholder="行政区"
18 >
19 <el-option
20 v-for="item in dicData['A20']"
21 :key="item.DCODE"
22 :label="item.DNAME"
23 :value="item.DCODE"
24 >
25 </el-option> 15 </el-option>
26 </el-select> 16 </el-select>
27 </el-form-item> 17 </el-form-item>
28 </el-col> 18 </el-col>
29 <el-col :span="4"> 19 <el-col :span="4">
30 <el-form-item label="开始日期" prop="startTime"> 20 <el-form-item label="开始日期" prop="startTime">
31 <el-date-picker 21 <el-date-picker type="date" :clearable="false" class="width100" placeholder="开始日期"
32 type="date" 22 :picker-options="pickerOptionsStart" v-model="form.startTime"
33 :clearable="false" 23 value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
34 class="width100"
35 placeholder="开始日期"
36 :picker-options="pickerOptionsStart"
37 v-model="form.startTime"
38 value-format="yyyy-MM-dd HH:mm:ss"
39 ></el-date-picker>
40 </el-form-item> 24 </el-form-item>
41 </el-col> 25 </el-col>
42 <el-col :span="4"> 26 <el-col :span="4">
43 <el-form-item label="结束日期" prop="endTime"> 27 <el-form-item label="结束日期" prop="endTime">
44 <el-date-picker 28 <el-date-picker type="date" :clearable="false" class="width100" placeholder="结束日期"
45 type="date" 29 :picker-options="pickerOptionsEnd" v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"
46 :clearable="false" 30 @change="endTimeChange"></el-date-picker>
47 class="width100"
48 placeholder="结束日期"
49 :picker-options="pickerOptionsEnd"
50 v-model="form.endTime"
51 value-format="yyyy-MM-dd HH:mm:ss"
52 @change="endTimeChange"
53 ></el-date-picker>
54 </el-form-item> 31 </el-form-item>
55 </el-col> 32 </el-col>
56 <!-- 操作按钮 --> 33 <!-- 操作按钮 -->
...@@ -98,7 +75,7 @@ export default { ...@@ -98,7 +75,7 @@ export default {
98 // 搜索表单 75 // 搜索表单
99 form: { 76 form: {
100 startTime: getFirstDayOfSeason(), 77 startTime: getFirstDayOfSeason(),
101 endTime: timeFormat(new Date(),true), 78 endTime: timeFormat(new Date(), true),
102 qxdm: "", 79 qxdm: "",
103 }, 80 },
104 }; 81 };
...@@ -111,8 +88,8 @@ export default { ...@@ -111,8 +88,8 @@ export default {
111 ...mapGetters(["dicData"]), 88 ...mapGetters(["dicData"]),
112 }, 89 },
113 methods: { 90 methods: {
114 endTimeChange(val){ 91 endTimeChange (val) {
115 this.form.endTime = timeFormat(new Date(val),true) 92 this.form.endTime = timeFormat(new Date(val), true)
116 }, 93 },
117 async getSuucessRate () { 94 async getSuucessRate () {
118 this.recTypeArr = []; 95 this.recTypeArr = [];
...@@ -137,7 +114,7 @@ export default { ...@@ -137,7 +114,7 @@ export default {
137 resetForm () { 114 resetForm () {
138 this.form = { 115 this.form = {
139 startTime: getFirstDayOfSeason(), 116 startTime: getFirstDayOfSeason(),
140 endTime: timeFormat(new Date(),true), 117 endTime: timeFormat(new Date(), true),
141 qxdm: "", 118 qxdm: "",
142 }; 119 };
143 this.getSuucessRate(); 120 this.getSuucessRate();
...@@ -231,7 +208,7 @@ export default { ...@@ -231,7 +208,7 @@ export default {
231 color: "#fff", 208 color: "#fff",
232 fontSize: "16", 209 fontSize: "16",
233 }, 210 },
234 splitNumber:2, 211 splitNumber: 2,
235 axisLabel: { 212 axisLabel: {
236 formatter: "{value} %", 213 formatter: "{value} %",
237 textStyle: { 214 textStyle: {
...@@ -302,7 +279,7 @@ export default { ...@@ -302,7 +279,7 @@ export default {
302 }; 279 };
303 </script> 280 </script>
304 <style scoped lang="scss"> 281 <style scoped lang="scss">
305 @import "~@/styles/public.scss"; 282 // @import "~@/styles/public.scss";
306 283
307 .jktjDetail { 284 .jktjDetail {
308 height: 100%; 285 height: 100%;
...@@ -337,5 +314,5 @@ export default { ...@@ -337,5 +314,5 @@ export default {
337 } 314 }
338 </style> 315 </style>
339 <style scoped lang="scss"> 316 <style scoped lang="scss">
340 @import "~@/styles/public.scss"; 317 // @import "~@/styles/public.scss";
341 </style> 318 </style>
......
...@@ -10,47 +10,24 @@ ...@@ -10,47 +10,24 @@
10 <el-row> 10 <el-row>
11 <el-col :span="4"> 11 <el-col :span="4">
12 <el-form-item label="行政区"> 12 <el-form-item label="行政区">
13 <el-select 13 <el-select v-model="form.qxdm" class="width100" clearable placeholder="行政区">
14 v-model="form.qxdm" 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
15 class="width100"
16 clearable
17 placeholder="行政区"
18 >
19 <el-option
20 v-for="item in dicData['A20']"
21 :key="item.DCODE"
22 :label="item.DNAME"
23 :value="item.DCODE"
24 >
25 </el-option> 15 </el-option>
26 </el-select> 16 </el-select>
27 </el-form-item> 17 </el-form-item>
28 </el-col> 18 </el-col>
29 <el-col :span="4"> 19 <el-col :span="4">
30 <el-form-item label="开始日期"> 20 <el-form-item label="开始日期">
31 <el-date-picker 21 <el-date-picker class="width100" :clearable="false" type="date" placeholder="开始日期"
32 class="width100" 22 :picker-options="pickerOptionsStart" v-model="form.startTime"
33 :clearable="false" 23 value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
34 type="date"
35 placeholder="开始日期"
36 :picker-options="pickerOptionsStart"
37 v-model="form.startTime"
38 value-format="yyyy-MM-dd HH:mm:ss"
39 ></el-date-picker>
40 </el-form-item> 24 </el-form-item>
41 </el-col> 25 </el-col>
42 <el-col :span="4"> 26 <el-col :span="4">
43 <el-form-item label="结束日期"> 27 <el-form-item label="结束日期">
44 <el-date-picker 28 <el-date-picker class="width100" :clearable="false" type="date" placeholder="结束日期"
45 class="width100" 29 :picker-options="pickerOptionsEnd" v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"
46 :clearable="false" 30 @change="endTimeChange"></el-date-picker>
47 type="date"
48 placeholder="结束日期"
49 :picker-options="pickerOptionsEnd"
50 v-model="form.endTime"
51 value-format="yyyy-MM-dd HH:mm:ss"
52 @change="endTimeChange"
53 ></el-date-picker>
54 </el-form-item> 31 </el-form-item>
55 </el-col> 32 </el-col>
56 <!-- 操作按钮 --> 33 <!-- 操作按钮 -->
...@@ -98,13 +75,13 @@ export default { ...@@ -98,13 +75,13 @@ export default {
98 // 搜索表单 75 // 搜索表单
99 form: { 76 form: {
100 startTime: getFirstDayOfSeason(), 77 startTime: getFirstDayOfSeason(),
101 endTime: timeFormat(new Date(),true), 78 endTime: timeFormat(new Date(), true),
102 qxdm: "", 79 qxdm: "",
103 }, 80 },
104 chartData:[] 81 chartData: []
105 }; 82 };
106 }, 83 },
107 mounted() { 84 mounted () {
108 // 查询业务量 85 // 查询业务量
109 this.getProcessCounts(); 86 this.getProcessCounts();
110 }, 87 },
...@@ -112,10 +89,10 @@ export default { ...@@ -112,10 +89,10 @@ export default {
112 ...mapGetters(["dicData"]), 89 ...mapGetters(["dicData"]),
113 }, 90 },
114 methods: { 91 methods: {
115 endTimeChange(val){ 92 endTimeChange (val) {
116 this.form.endTime = timeFormat(new Date(val),true) 93 this.form.endTime = timeFormat(new Date(val), true)
117 }, 94 },
118 async getProcessCounts(){ 95 async getProcessCounts () {
119 this.chartData = []; 96 this.chartData = [];
120 let { result: res } = await efficient.getProcessCounts( 97 let { result: res } = await efficient.getProcessCounts(
121 this.form.startTime, 98 this.form.startTime,
...@@ -133,13 +110,13 @@ export default { ...@@ -133,13 +110,13 @@ export default {
133 resetForm () { 110 resetForm () {
134 this.form = { 111 this.form = {
135 startTime: getFirstDayOfSeason(), 112 startTime: getFirstDayOfSeason(),
136 endTime: timeFormat(new Date(),true), 113 endTime: timeFormat(new Date(), true),
137 qxdm: "" 114 qxdm: ""
138 }; 115 };
139 this.getProcessCounts(); 116 this.getProcessCounts();
140 }, 117 },
141 //图表渲染 118 //图表渲染
142 echartInit(chartArr) { 119 echartInit (chartArr) {
143 // 基于准备好的dom,初始化echarts实例 120 // 基于准备好的dom,初始化echarts实例
144 let myChart = this.$echarts.init(document.getElementById("myChart")); 121 let myChart = this.$echarts.init(document.getElementById("myChart"));
145 // 绘制图表 122 // 绘制图表
...@@ -158,7 +135,7 @@ export default { ...@@ -158,7 +135,7 @@ export default {
158 xAxis: [ 135 xAxis: [
159 { 136 {
160 type: "category", 137 type: "category",
161 data: chartArr.map(item=>item.recTypeName), 138 data: chartArr.map(item => item.recTypeName),
162 axisLabel: { 139 axisLabel: {
163 interval: 0, 140 interval: 0,
164 formatter: function (val) { 141 formatter: function (val) {
...@@ -221,7 +198,7 @@ export default { ...@@ -221,7 +198,7 @@ export default {
221 }, 198 },
222 }, 199 },
223 barMaxWidth: '60', 200 barMaxWidth: '60',
224 data: chartArr.map(item=>item.counts), 201 data: chartArr.map(item => item.counts),
225 }, 202 },
226 ], 203 ],
227 }); 204 });
...@@ -230,7 +207,7 @@ export default { ...@@ -230,7 +207,7 @@ export default {
230 }; 207 };
231 </script> 208 </script>
232 <style scoped lang="scss"> 209 <style scoped lang="scss">
233 @import "~@/styles/public.scss"; 210 // @import "~@/styles/public.scss";
234 211
235 .jktjDetail { 212 .jktjDetail {
236 height: 100%; 213 height: 100%;
...@@ -240,11 +217,13 @@ export default { ...@@ -240,11 +217,13 @@ export default {
240 .rows { 217 .rows {
241 margin-left: 100px; 218 margin-left: 100px;
242 } 219 }
220
243 .center { 221 .center {
244 line-height: 50vh; 222 line-height: 50vh;
245 text-align: center; 223 text-align: center;
246 color:#b6b5b5 224 color: #b6b5b5
247 } 225 }
226
248 .echarts-box { 227 .echarts-box {
249 display: flex; 228 display: flex;
250 justify-content: center; 229 justify-content: center;
...@@ -263,5 +242,5 @@ export default { ...@@ -263,5 +242,5 @@ export default {
263 } 242 }
264 </style> 243 </style>
265 <style scoped lang="scss"> 244 <style scoped lang="scss">
266 @import "~@/styles/public.scss"; 245 // @import "~@/styles/public.scss";
267 </style> 246 </style>
......
...@@ -293,7 +293,7 @@ export default { ...@@ -293,7 +293,7 @@ export default {
293 </script> 293 </script>
294 <style scoped lang="scss"> 294 <style scoped lang="scss">
295 // 引入表单整体样式 295 // 引入表单整体样式
296 @import "~@/styles/public.scss"; 296 // // @import "~@/styles/public.scss";
297 // 引入当前css 297 // 引入当前css
298 @import "./index.scss"; 298 @import "./index.scss";
299 </style> 299 </style>
......
...@@ -6,6 +6,10 @@ ...@@ -6,6 +6,10 @@
6 border-right: 1px solid #458ACF !important; 6 border-right: 1px solid #458ACF !important;
7 } 7 }
8 8
9 /deep/.el-table thead.is-group th.el-table__cell {
10 background-color: transparent !important;
11 }
12
9 /deep/.el-table--group::after, 13 /deep/.el-table--group::after,
10 .el-table--border::after { 14 .el-table--border::after {
11 width: 0 !important; 15 width: 0 !important;
......
...@@ -164,7 +164,7 @@ export default { ...@@ -164,7 +164,7 @@ export default {
164 </script> 164 </script>
165 <style scoped lang="scss"> 165 <style scoped lang="scss">
166 // 引入表单整体样式 166 // 引入表单整体样式
167 @import "~@/styles/public.scss"; 167 // @import "~@/styles/public.scss";
168 @import "../css/index.scss"; 168 @import "../css/index.scss";
169 </style> 169 </style>
170 170
......
...@@ -155,7 +155,7 @@ export default { ...@@ -155,7 +155,7 @@ export default {
155 </script> 155 </script>
156 <style scoped lang="scss"> 156 <style scoped lang="scss">
157 // 引入表单整体样式 157 // 引入表单整体样式
158 @import "~@/styles/public.scss"; 158 // @import "~@/styles/public.scss";
159 @import "../css/index.scss"; 159 @import "../css/index.scss";
160 </style> 160 </style>
161 161
......
...@@ -148,7 +148,7 @@ export default { ...@@ -148,7 +148,7 @@ export default {
148 </script> 148 </script>
149 <style scoped lang="scss"> 149 <style scoped lang="scss">
150 // 引入表单整体样式 150 // 引入表单整体样式
151 @import "~@/styles/public.scss"; 151 // @import "~@/styles/public.scss";
152 @import "../css/index.scss"; 152 @import "../css/index.scss";
153 </style> 153 </style>
154 154
......
...@@ -459,7 +459,7 @@ export default { ...@@ -459,7 +459,7 @@ export default {
459 </script> 459 </script>
460 <style scoped lang="scss"> 460 <style scoped lang="scss">
461 @import "~@/styles/mixin.scss"; 461 @import "~@/styles/mixin.scss";
462 @import "~@/styles/public.scss"; 462 // @import "~@/styles/public.scss";
463 @import "~@/styles/dialogBox.scss"; 463 @import "~@/styles/dialogBox.scss";
464 464
465 465
......
...@@ -154,6 +154,5 @@ export default { ...@@ -154,6 +154,5 @@ export default {
154 } 154 }
155 </script> 155 </script>
156 <style scoped lang="scss"> 156 <style scoped lang="scss">
157 @import "~@/styles/public.scss";
158 @import "./index.scss"; 157 @import "./index.scss";
159 </style> 158 </style>
......
...@@ -235,7 +235,6 @@ export default { ...@@ -235,7 +235,6 @@ export default {
235 </script> 235 </script>
236 <style scoped lang="scss"> 236 <style scoped lang="scss">
237 // 引入页面公共样式 237 // 引入页面公共样式
238 @import "~@/styles/public.scss";
239 @import "./index.scss"; 238 @import "./index.scss";
240 </style> 239 </style>
241 240
......
...@@ -146,8 +146,7 @@ export default { ...@@ -146,8 +146,7 @@ export default {
146 } 146 }
147 </script> 147 </script>
148 <style rel="stylesheet/scss" lang="scss" scoped> 148 <style rel="stylesheet/scss" lang="scss" scoped>
149 @import "~@/styles/public.scss"; 149 // @import "~@/styles/public.scss";
150
151 .editDialogBox-box { 150 .editDialogBox-box {
152 margin: 14px 18px 30px 18px !important 151 margin: 14px 18px 30px 18px !important
153 } 152 }
......
1 <template> 1 <template>
2 <!-- 编辑 --> 2 <!-- 编辑 -->
3 <dialogBox submitForm="submitForm" class="tableClass" @closeDialog="closeDialog" @submitForm="handleSubmit" 3 <dialogBox submitForm="submitForm" class="tableClass" @closeDialog="closeDialog" @submitForm="handleSubmit" width="60%"
4 width="60%" v-model="myValue" :isMain="true" title="字典信息"> 4 v-model="myValue" :isMain="true" title="字典信息">
5 <div class="editDialogBox-box "> 5 <div class="editDialogBox-box ">
6 <el-form :model="ruleForm" ref="ruleForm" label-width="100px"> 6 <el-form :model="ruleForm" ref="ruleForm" label-width="100px">
7 <el-row :gutter="20"> 7 <el-row :gutter="20">
...@@ -17,9 +17,8 @@ ...@@ -17,9 +17,8 @@
17 </el-col> 17 </el-col>
18 </el-row> 18 </el-row>
19 </el-form> 19 </el-form>
20 <lb-table :column="column" class="loadingtext opacity-input" :heightNum="600" :key="key" 20 <lb-table :column="column" class="loadingtext opacity-input" :heightNum="600" :key="key" :expand-row-keys="keyList"
21 :expand-row-keys="keyList" row-key="dictid" :tree-props="{ children: 'children' }" :pagination="false" 21 row-key="dictid" :tree-props="{ children: 'children' }" :pagination="false" :data="tableData">
22 :data="tableData">
23 </lb-table> 22 </lb-table>
24 </div> 23 </div>
25 </dialogBox> 24 </dialogBox>
...@@ -359,7 +358,7 @@ export default { ...@@ -359,7 +358,7 @@ export default {
359 }; 358 };
360 </script> 359 </script>
361 <style rel="stylesheet/scss" lang="scss" scoped> 360 <style rel="stylesheet/scss" lang="scss" scoped>
362 @import "~@/styles/public.scss"; 361 // @import "~@/styles/public.scss";
363 362
364 /deep/.el-radio { 363 /deep/.el-radio {
365 margin-right: 5px !important; 364 margin-right: 5px !important;
......
...@@ -127,5 +127,5 @@ export default { ...@@ -127,5 +127,5 @@ export default {
127 }; 127 };
128 </script> 128 </script>
129 <style scoped lang="scss"> 129 <style scoped lang="scss">
130 @import "~@/styles/public.scss"; 130 // @import "~@/styles/public.scss";
131 </style> 131 </style>
......
...@@ -22,64 +22,68 @@ ...@@ -22,64 +22,68 @@
22 </div> 22 </div>
23 </template> 23 </template>
24 <script> 24 <script>
25 import "@/utils/flexible.js"; 25 import "@/utils/flexible.js";
26 import BaseSet from "./base-set.vue"; 26 import BaseSet from "./base-set.vue";
27 import PasswordEdit from "./password-edit.vue"; 27 import PasswordEdit from "./password-edit.vue";
28 export default { 28 export default {
29 components: { 29 components: {
30 BaseSet, 30 BaseSet,
31 PasswordEdit, 31 PasswordEdit,
32 },
33 data () {
34 return {
35 isshow: true,
36 };
37 },
38 computed: {
39 userData () {
40 return this.$store.state.user.userInfo;
32 }, 41 },
33 data () { 42 },
34 return { 43 watch: {},
35 isshow: true, 44 created () { },
36 }; 45 mounted () {
37 },
38 computed: {
39 userData () {
40 return this.$store.state.user.userInfo;
41 },
42 },
43 watch: {},
44 created () { },
45 mounted () {
46 46
47 47
48 },
49 methods: {
50 information () {
51 this.isshow = true;
48 }, 52 },
49 methods: { 53 password () {
50 information () { 54 this.isshow = false;
51 this.isshow = true;
52 },
53 password () {
54 this.isshow = false;
55 },
56 }, 55 },
57 }; 56 },
57 };
58 </script> 58 </script>
59 59
60 <style scoped lang="scss"> 60 <style scoped lang="scss">
61 @import "~@/styles/mixin.scss"; 61 @import "~@/styles/mixin.scss";
62 @import "~@/styles/public.scss"; 62
63 .information { 63 // @import "~@/styles/public.scss";
64 .btnColRight { 64 .information {
65 margin-top: 20px; 65 .btnColRight {
66 } 66 margin-top: 20px;
67 /deep/.content { 67 }
68 .el-input__inner { 68
69 background: none; 69 /deep/.content {
70 } 70 .el-input__inner {
71 .user-info { 71 background: none;
72 background: none;
73 }
74 } 72 }
75 /deep/.el-tabs { 73
76 .el-tabs__content { 74 .user-info {
77 height: 100%; 75 background: none;
78 width: 100%;
79 }
80 } 76 }
81 .contentbox { 77 }
82 height: 3.0854rem; 78
79 /deep/.el-tabs {
80 .el-tabs__content {
81 height: 100%;
82 width: 100%;
83 } 83 }
84 } 84 }
85 </style> 85
86 .contentbox {
87 height: 3.0854rem;
88 }
89 }</style>
......
1 <template> 1 <template>
2 <div> 2 <div>
3 <Dialog 3 <Dialog class="modifydialog" :title="title" :show.sync="visible" :width="'767px'" @close="close()">
4 class="modifydialog"
5 :title="title"
6 :show.sync="visible"
7 :width="'767px'"
8 @close="close()">
9 <template slot="content"> 4 <template slot="content">
10 <el-form ref="form" :model="form" :rules="rules"> 5 <el-form ref="form" :model="form" :rules="rules">
11 <el-row :gutter="24"> 6 <el-row :gutter="24">
...@@ -18,14 +13,8 @@ ...@@ -18,14 +13,8 @@
18 <el-row :gutter="24"> 13 <el-row :gutter="24">
19 <el-col :span="12"> 14 <el-col :span="12">
20 <el-form-item label="上级菜单:" label-width="124px"> 15 <el-form-item label="上级菜单:" label-width="124px">
21 <el-cascader 16 <el-cascader :key="menuKey" v-model="form.parentId" :options="parentMenuList" :props="setProps"
22 :key="menuKey" 17 placeholder="请选择上级菜单" clearable @change="handleChange" />
23 v-model="form.parentId"
24 :options="parentMenuList"
25 :props="setProps"
26 placeholder="请选择上级菜单"
27 clearable
28 @change="handleChange" />
29 </el-form-item> 18 </el-form-item>
30 </el-col> 19 </el-col>
31 20
...@@ -33,10 +22,7 @@ ...@@ -33,10 +22,7 @@
33 <el-row :gutter="24"> 22 <el-row :gutter="24">
34 <el-col :span="24"> 23 <el-col :span="24">
35 <el-form-item label="代码:" prop="code" label-width="124px"> 24 <el-form-item label="代码:" prop="code" label-width="124px">
36 <el-input 25 <el-input v-model="codeComputed" placeholder="请输入菜单代码" :disabled="type === 1" />
37 v-model="codeComputed"
38 placeholder="请输入菜单代码"
39 :disabled="type === 1" />
40 </el-form-item> 26 </el-form-item>
41 </el-col> 27 </el-col>
42 </el-row> 28 </el-row>
...@@ -50,28 +36,17 @@ ...@@ -50,28 +36,17 @@
50 <el-row :gutter="24"> 36 <el-row :gutter="24">
51 <el-col :span="24"> 37 <el-col :span="24">
52 <el-form-item label="浏览器跳转模式:" label-width="124px"> 38 <el-form-item label="浏览器跳转模式:" label-width="124px">
53 <el-select 39 <el-select v-model="form.jumpMode" placeholder="请选择浏览器跳转模式">
54 v-model="form.jumpMode" 40 <el-option v-for="item in jumpModeList" :key="item.value" :label="item.name" :value="item.value" />
55 placeholder="请选择浏览器跳转模式">
56 <el-option
57 v-for="item in jumpModeList"
58 :key="item.value"
59 :label="item.name"
60 :value="item.value" />
61 </el-select> 41 </el-select>
62 </el-form-item> 42 </el-form-item>
63 </el-col> 43 </el-col>
64 </el-row> 44 </el-row>
65 <el-row :gutter="24"> 45 <el-row :gutter="24">
66 <el-col :span="24"> 46 <el-col :span="24">
67 <el-form-item 47 <el-form-item label="配置参数:" label-width="124px" class="form-item-mb0">
68 label="配置参数:"
69 label-width="124px"
70 class="form-item-mb0">
71 <!-- 配置参数 --> 48 <!-- 配置参数 -->
72 <JsonEditor 49 <JsonEditor :result-infos="form.metadata" @getJsonString="getJsonString" />
73 :result-infos="form.metadata"
74 @getJsonString="getJsonString" />
75 </el-form-item> 50 </el-form-item>
76 </el-col> 51 </el-col>
77 </el-row> 52 </el-row>
...@@ -80,9 +55,7 @@ ...@@ -80,9 +55,7 @@
80 <template slot="footer"> 55 <template slot="footer">
81 <el-button class="cancel-button" @click="close()">取消</el-button> 56 <el-button class="cancel-button" @click="close()">取消</el-button>
82 57
83 <el-button 58 <el-button type="primary" @click="submitForm()">保存</el-button>
84 type="primary"
85 @click="submitForm()">保存</el-button>
86 </template> 59 </template>
87 </Dialog> 60 </Dialog>
88 <!-- 图标列表 --> 61 <!-- 图标列表 -->
...@@ -91,173 +64,173 @@ ...@@ -91,173 +64,173 @@
91 </template> 64 </template>
92 65
93 <script> 66 <script>
94 import Dialog from "@/components/Dialog/"; 67 import Dialog from "@/components/Dialog/";
95 import { getParentMenuListAction } from '@/api/authorityManage' 68 import { getParentMenuListAction } from '@/api/authorityManage'
96 import JsonEditor from '@/components/JsonEditors' 69 import JsonEditor from '@/components/JsonEditors'
97 import IconList from '@/components/IconList' 70 import IconList from '@/components/IconList'
98 import { validateCode } from '@/utils/validate'; 71 import { validateCode } from '@/utils/validate';
99 import { api, httpAction } from '@/api/manageApi' 72 import { api, httpAction } from '@/api/manageApi'
100 export default { 73 export default {
101 name: 'MenuModal', 74 name: 'MenuModal',
102 components: { 75 components: {
103 IconList, 76 IconList,
104 JsonEditor, 77 JsonEditor,
105 Dialog 78 Dialog
106 }, 79 },
107 props: { 80 props: {
108 productId: { 81 productId: {
109 type: String, 82 type: String,
110 default: '' 83 default: ''
84 }
85 },
86 data () {
87 return {
88 form: {
89 icon: '',
90 code: ''
91 },
92 rules: {
93 name: [{ required: true, message: '请输入菜单名称', trigger: 'blur' }],
94 code: [
95 { required: true, message: '必填', trigger: 'blur' },
96 { validator: validateCode, trigger: 'blur' }
97 ]
98 },
99 title: '',
100 type: '',
101 visible: false,
102 parentMenuList: [],
103 menuKey: 0,
104 jumpModeList: [
105 { name: '在当前页面显示', value: 1 },
106 { name: '跳转到新页面', value: 2 }
107 ],
108 setProps: {
109 value: 'id',
110 label: 'name',
111 children: 'children',
112 expandTrigger: 'hover',
113 checkStrictly: true, // 可取消关联,选择任意一级选项
114 emitPath: false
115 },
116 dataUrl: api.menus
117 }
118 },
119 computed: {
120 codeComputed: {
121 get: function () {
122 return this.form.code
123 },
124 set: function (val) {
125 this.form.code = val.toUpperCase()
111 } 126 }
127 }
128 },
129 created () { },
130 mounted () { },
131 methods: {
132 // 获取父级菜单
133 getParentMenuList (id) {
134
135 getParentMenuListAction(id).then((res) => {
136 if (res.status === 1) {
137 const list = this.$dealArrChildren(res.content)
138 if (id) {
139 this.parentMenuList = this.$dealArrDisabled(
140 this.$deepCopy(list),
141 id
142 )
143 this.menuKey++
144 } else {
145 this.parentMenuList = list
146 }
147 } else {
148 this.$message.error({ message: res.message, showClose: true })
149 }
150 })
112 }, 151 },
113 data () { 152 getIconList () {
114 return { 153 this.$refs.iconList.show(true)
115 form: {
116 icon: '',
117 code: ''
118 },
119 rules: {
120 name: [{ required: true, message: '请输入菜单名称', trigger: 'blur' }],
121 code: [
122 { required: true, message: '必填', trigger: 'blur' },
123 { validator: validateCode, trigger: 'blur' }
124 ]
125 },
126 title: '',
127 type: '',
128 visible: false,
129 parentMenuList: [],
130 menuKey: 0,
131 jumpModeList: [
132 { name: '在当前页面显示', value: 1 },
133 { name: '跳转到新页面', value: 2 }
134 ],
135 setProps: {
136 value: 'id',
137 label: 'name',
138 children: 'children',
139 expandTrigger: 'hover',
140 checkStrictly: true, // 可取消关联,选择任意一级选项
141 emitPath: false
142 },
143 dataUrl: api.menus
144 }
145 }, 154 },
146 computed: { 155 getIconName (data) {
147 codeComputed: { 156 this.form.icon = data
148 get: function () { 157 },
149 return this.form.code 158 // 配置参数
150 }, 159 getJsonString (data) {
151 set: function (val) { 160 this.form.metadata = data
152 this.form.code = val.toUpperCase() 161 },
153 } 162 // 新增菜单
163 add () {
164 this.getParentMenuList(this.productId)
165 this.visible = true
166 this.type = 0
167 this.form.jumpMode = 1
168 },
169 // 编辑菜单
170 edit (record) {
171 this.type = 1
172 // 若有id为编辑
173 if (record.id) {
174 this.$nextTick(() => {
175 this.form = Object.assign({}, record)
176 this.getParentMenuList(this.productId)
177 })
154 } 178 }
179 this.visible = true
155 }, 180 },
156 created () { }, 181 // 选择上级菜单
157 mounted () { }, 182 handleChange (value) {
158 methods: { 183 this.form.parentId = value
159 // 获取父级菜单 184 },
160 getParentMenuList (id) { 185 // 保存
161 186 submitForm (submitType) {
162 getParentMenuListAction(id).then((res) => { 187 this.$refs.form.validate((valid) => {
163 if (res.status === 1) { 188 if (valid) {
164 const list = this.$dealArrChildren(res.content) 189 let method = ''
165 if (id) { 190 let url = ''
166 this.parentMenuList = this.$dealArrDisabled( 191 const formData = this.form
167 this.$deepCopy(list), 192 formData.productId = this.productId
168 id 193 if (!formData.id) {
169 ) 194 method = 'post'
170 this.menuKey++ 195 url = this.dataUrl
171 } else {
172 this.parentMenuList = list
173 }
174 } else { 196 } else {
175 this.$message.error({ message: res.message, showClose: true }) 197 method = 'put'
198 url = `${this.dataUrl}/${formData.id}`
176 } 199 }
177 }) 200 httpAction(url, formData, method)
178 }, 201 .then((res) => {
179 getIconList () { 202 if (res.status === 1) {
180 this.$refs.iconList.show(true) 203 this.$message.success({
181 }, 204 message: res.message,
182 getIconName (data) { 205 showClose: true
183 this.form.icon = data 206 })
184 },
185 // 配置参数
186 getJsonString (data) {
187 this.form.metadata = data
188 },
189 // 新增菜单
190 add () {
191 this.getParentMenuList(this.productId)
192 this.visible = true
193 this.type = 0
194 this.form.jumpMode = 1
195 },
196 // 编辑菜单
197 edit (record) {
198 this.type = 1
199 // 若有id为编辑
200 if (record.id) {
201 this.$nextTick(() => {
202 this.form = Object.assign({}, record)
203 this.getParentMenuList(this.productId)
204 })
205 }
206 this.visible = true
207 },
208 // 选择上级菜单
209 handleChange (value) {
210 this.form.parentId = value
211 },
212 // 保存
213 submitForm (submitType) {
214 this.$refs.form.validate((valid) => {
215 if (valid) {
216 let method = ''
217 let url = ''
218 const formData = this.form
219 formData.productId = this.productId
220 if (!formData.id) {
221 method = 'post'
222 url = this.dataUrl
223 } else {
224 method = 'put'
225 url = `${this.dataUrl}/${formData.id}`
226 }
227 httpAction(url, formData, method)
228 .then((res) => {
229 if (res.status === 1) {
230 this.$message.success({
231 message: res.message,
232 showClose: true
233 })
234 207
235 this.resetForm() 208 this.resetForm()
236 this.$emit('ok') 209 this.$emit('ok')
237 } else { 210 } else {
238 this.$message.error({ message: res.message, showClose: true }) 211 this.$message.error({ message: res.message, showClose: true })
239 } 212 }
240 }) 213 })
241 .catch((err) => { 214 .catch((err) => {
242 console.log(err) 215 console.log(err)
243 }) 216 })
244 }
245 })
246 },
247 resetForm () {
248 this.$refs.form.resetFields()
249 this.form = {
250 icon: '',
251 code: ''
252 } 217 }
253 }, 218 })
254 close () { 219 },
255 this.resetForm() 220 resetForm () {
256 this.visible = false 221 this.$refs.form.resetFields()
222 this.form = {
223 icon: '',
224 code: ''
257 } 225 }
226 },
227 close () {
228 this.resetForm()
229 this.visible = false
258 } 230 }
259 } 231 }
232 }
260 </script> 233 </script>
261 <style scoped lang="scss"> 234 <style scoped lang="scss">
262 @import "~@/styles/public.scss"; 235 // @import "~@/styles/public.scss";
263 </style> 236 </style>
......
...@@ -13,182 +13,175 @@ ...@@ -13,182 +13,175 @@
13 </el-form> 13 </el-form>
14 </div> 14 </div>
15 <div class="from-clues-content"> 15 <div class="from-clues-content">
16 <lb-table 16 <lb-table :pagination="false" :column="tableData.columns" :data="tablelistData" row-key="id" default-expand-all
17 :pagination="false"
18 :column="tableData.columns"
19 :data="tablelistData"
20 row-key="id"
21 default-expand-all
22 :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"> 17 :tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
23 </lb-table> 18 </lb-table>
24 </div> 19 </div>
25 <edit-dialog ref="dialogForm" 20 <edit-dialog ref="dialogForm" :product-id="productId" :resource-category-id="resourceCategoryId"
26 :product-id="productId"
27 :resource-category-id="resourceCategoryId"
28 @ok="reloadTableData" /> 21 @ok="reloadTableData" />
29 <!-- <authorizationdiglog ref="rolesForm" /> --> 22 <!-- <authorizationdiglog ref="rolesForm" /> -->
30 </div> 23 </div>
31 </template> 24 </template>
32 <script> 25 <script>
33 // 定时任务 26 // 定时任务
34 import data from "./data"; 27 import data from "./data";
35 import { deleteAction, getAction, api } from "@/api/manageApi"; 28 import { deleteAction, getAction, api } from "@/api/manageApi";
36 import EditDialog from "./edit-dialog.vue"; 29 import EditDialog from "./edit-dialog.vue";
37 // import authorizationdiglog from "./authorizationdiglog.vue"; 30 // import authorizationdiglog from "./authorizationdiglog.vue";
38 export default { 31 export default {
39 name: "menus", 32 name: "menus",
40 components: { 33 components: {
41 EditDialog, 34 EditDialog,
42 // authorizationdiglog, 35 // authorizationdiglog,
43 }, 36 },
44 data () { 37 data () {
45 return { 38 return {
46 tablelistData: [], 39 tablelistData: [],
47 resourceCategoryId: "", 40 resourceCategoryId: "",
48 taskData: null, 41 taskData: null,
49 form: { 42 form: {
50 job_name: "", 43 job_name: "",
51 currentPage: 1, 44 currentPage: 1,
52 }, 45 },
53 title: "", 46 title: "",
54 queryParam: {}, 47 queryParam: {},
55 selectType: "0", 48 selectType: "0",
56 queryName: "", 49 queryName: "",
57 organizationId: "", // 组织机构ID 50 organizationId: "", // 组织机构ID
58 departmentId: "", // 部门ID 51 departmentId: "", // 部门ID
59 departmentList: [], // 部门列表 52 departmentList: [], // 部门列表
60 levelList: [], // 职务级别 53 levelList: [], // 职务级别
61 sexList: [], 54 sexList: [],
62 55
63 selectionList: [], 56 selectionList: [],
64 tableData: { 57 tableData: {
65 columns: [].concat(data.columns()).concat([ 58 columns: [].concat(data.columns()).concat([
66 { 59 {
67 label: "操作", 60 label: "操作",
68 width: 380, 61 width: 380,
69 render: (h, scope) => { 62 render: (h, scope) => {
70 return ( 63 return (
71 <div> 64 <div>
72 <el-button 65 <el-button
73 type="text" 66 type="text"
74 size="mini" 67 size="mini"
75 icon="el-icon-edit" 68 icon="el-icon-edit"
76 onClick={() => { 69 onClick={() => {
77 this.handleEdit(scope.row); 70 this.handleEdit(scope.row);
78 }} 71 }}
79 > 72 >
80 修改 73 修改
81 </el-button> 74 </el-button>
82 75
83 <el-button 76 <el-button
84 type="text" 77 type="text"
85 size="mini" 78 size="mini"
86 icon="el-icon-delete" 79 icon="el-icon-delete"
87 style="color:#F56C6C" 80 style="color:#F56C6C"
88 onClick={() => { 81 onClick={() => {
89 this.handleDelete(scope.row.id, scope.row.name); 82 this.handleDelete(scope.row.id, scope.row.name);
90 }} 83 }}
91 > 84 >
92 删除 85 删除
93 </el-button> 86 </el-button>
94 </div> 87 </div>
95 ); 88 );
96 },
97 }, 89 },
98 ]), 90 },
99 data: [], 91 ]),
100 }, 92 data: [],
101 pageData: { 93 },
102 total: 5, 94 pageData: {
103 pageSize: 15, 95 total: 5,
104 current: 1, 96 pageSize: 15,
97 current: 1,
98 },
99 tableUrl: api.menus, // 菜单接口地址
100 meumurlid: api.subsystem,// 项目id接口地址
101 productId: ""//项目id
102 };
103 },
104 created () {
105 this.getTableList();
106 },
107 methods: {
108 // 加载表格数据
109 getTableList () {
110
111 const queryOptionsid = {
112 conditionGroup: {
113 queryRelation: "AND",
114 conditions: [
115 {
116 property: "code",
117 value: "BDCJGPT",
118 operator: "EQ",
119 },
120 ],
105 }, 121 },
106 tableUrl: api.menus, // 菜单接口地址
107 meumurlid: api.subsystem,// 项目id接口地址
108 productId: ""//项目id
109 }; 122 };
123 const params = {
124 queryOptions: queryOptionsid,
125 };
126 // 获取系统id
127 getAction(this.meumurlid, params)
128 .then((res) => {
129 this.productId = res.content[0].id;
130 let queryOptions = {
131 conditionGroup: {
132 conditions: [
133 {
134 property: "productId",
135 value: this.productId,
136 operator: "EQ",
137 },
138 ],
139 queryRelation: "AND",
140 },
141 orderBys: [{ property: "sort", direction: "desc" }],
142 };
143 if (!this.tableUrl) {
144 console.log("请设置tableUrl属性为接口地址!");
145 return;
146 }
147 if (this.queryOptions !== "") {
148 this.queryParam.queryOptions = JSON.stringify(queryOptions);
149 }
150 // 查询系统菜单
151 getAction(this.tableUrl, this.queryParam)
152 .then((res) => {
153 if (res.status === 1) {
154 this.loading = false;
155 this.tablelistData = res.content;
156 } else {
157 this.$message.error({ message: res.message, showClose: true });
158 this.loading = false;
159 }
160 })
161 .catch((error) => {
162 console.log("er", error);
163 this.loading = false;
164 });
165 })
166 .catch((error) => {
167 console.log("er", error);
168 });
110 }, 169 },
111 created () { 170 // 新增菜单
112 this.getTableList(); 171 handleAdd () {
172 this.$refs.dialogForm.add();
173 this.$refs.dialogForm.title = "添加";
113 }, 174 },
114 methods: {
115 // 加载表格数据
116 getTableList () {
117 175
118 const queryOptionsid = { 176 // 修改
119 conditionGroup: { 177 handleEdit (record) {
120 queryRelation: "AND", 178 this.$refs.dialogForm.edit(record);
121 conditions: [ 179 this.$refs.dialogForm.title = "修改";
122 { 180 },
123 property: "code", 181 // 删除
124 value: "BDCJGPT", 182 handleDelete (id, content) {
125 operator: "EQ", 183 this.$confirm(
126 }, 184 `<div class="customer-message-wrapper">
127 ],
128 },
129 };
130 const params = {
131 queryOptions: queryOptionsid,
132 };
133 // 获取系统id
134 getAction(this.meumurlid, params)
135 .then((res) => {
136 this.productId = res.content[0].id;
137 let queryOptions = {
138 conditionGroup: {
139 conditions: [
140 {
141 property: "productId",
142 value: this.productId,
143 operator: "EQ",
144 },
145 ],
146 queryRelation: "AND",
147 },
148 orderBys: [{ property: "sort", direction: "desc" }],
149 };
150 if (!this.tableUrl) {
151 console.log("请设置tableUrl属性为接口地址!");
152 return;
153 }
154 if (this.queryOptions !== "") {
155 this.queryParam.queryOptions = JSON.stringify(queryOptions);
156 }
157 // 查询系统菜单
158 getAction(this.tableUrl, this.queryParam)
159 .then((res) => {
160 if (res.status === 1) {
161 this.loading = false;
162 this.tablelistData = res.content;
163 } else {
164 this.$message.error({ message: res.message, showClose: true });
165 this.loading = false;
166 }
167 })
168 .catch((error) => {
169 console.log("er", error);
170 this.loading = false;
171 });
172 })
173 .catch((error) => {
174 console.log("er", error);
175 });
176 },
177 // 新增菜单
178 handleAdd () {
179 this.$refs.dialogForm.add();
180 this.$refs.dialogForm.title = "添加";
181 },
182
183 // 修改
184 handleEdit (record) {
185 this.$refs.dialogForm.edit(record);
186 this.$refs.dialogForm.title = "修改";
187 },
188 // 删除
189 handleDelete (id, content) {
190 this.$confirm(
191 `<div class="customer-message-wrapper">
192 <h5 class="title">您确认要执行该操作用于以下信息:</h5> 185 <h5 class="title">您确认要执行该操作用于以下信息:</h5>
193 <p class="content" aria-controls="${content}">${content} 186 <p class="content" aria-controls="${content}">${content}
194 </p> 187 </p>
...@@ -196,49 +189,51 @@ ...@@ -196,49 +189,51 @@
196 <span >无法恢复</span> 189 <span >无法恢复</span>
197 </p> 190 </p>
198 </div>`, 191 </div>`,
199 '执行确认', 192 '执行确认',
200 { 193 {
201 dangerouslyUseHTMLString: true, 194 dangerouslyUseHTMLString: true,
202 customClass: 'customer-delete', 195 customClass: 'customer-delete',
203 confirmButtonText: '确定', 196 confirmButtonText: '确定',
204 cancelButtonText: '取消', 197 cancelButtonText: '取消',
205 type: 'warning' 198 type: 'warning'
199 }
200 )
201 .then(() => {
202 if (!this.tableUrl) {
203 this.$message.error({
204 message: '请设置tableUrl属性为接口地址!',
205 showClose: true
206 })
207 return
206 } 208 }
207 ) 209 const url = this.tableUrl + '/' + id
208 .then(() => { 210 deleteAction(url).then(res => {
209 if (!this.tableUrl) { 211 if (res.status === 1) {
210 this.$message.error({ 212 this.$message.success({ message: res.message, showClose: true })
211 message: '请设置tableUrl属性为接口地址!', 213 this.reloadTableData()
212 showClose: true 214 } else {
213 }) 215 this.$message.error({ message: res.message, showClose: true })
214 return
215 } 216 }
216 const url = this.tableUrl + '/' + id
217 deleteAction(url).then(res => {
218 if (res.status === 1) {
219 this.$message.success({ message: res.message, showClose: true })
220 this.reloadTableData()
221 } else {
222 this.$message.error({ message: res.message, showClose: true })
223 }
224 })
225 }) 217 })
226 .catch(() => { }) 218 })
227 }, 219 .catch(() => { })
228 // 新增、编辑回显 220 },
229 reloadTableData () { 221 // 新增、编辑回显
230 this.getTableList() 222 reloadTableData () {
231 }, 223 this.getTableList()
232 }, 224 },
233 }; 225 },
226 };
234 </script> 227 </script>
235 <style scoped lang="scss"> 228 <style scoped lang="scss">
236 @import "~@/styles/mixin.scss"; 229 @import "~@/styles/mixin.scss";
237 @import "~@/styles/public.scss"; 230
238 .btnColRight { 231 // @import "~@/styles/public.scss";
239 margin-top: 20px; 232 .btnColRight {
240 } 233 margin-top: 20px;
241 /deep/.el-table__expand-icon { 234 }
242 color: #fff; 235
243 } 236 /deep/.el-table__expand-icon {
237 color: #fff;
238 }
244 </style> 239 </style>
......
...@@ -13,14 +13,8 @@ ...@@ -13,14 +13,8 @@
13 </el-form> 13 </el-form>
14 </div> 14 </div>
15 <div class="from-clues-content"> 15 <div class="from-clues-content">
16 <lb-table 16 <lb-table :pagination="false" @size-change="handleSizeChange" @p-current-change="handleCurrentChange"
17 :pagination="false" 17 :column="tableData.columns" :data="listdata" :expand-row-keys="keyList" row-key="dictid">
18 @size-change="handleSizeChange"
19 @p-current-change="handleCurrentChange"
20 :column="tableData.columns"
21 :data="listdata"
22 :expand-row-keys="keyList"
23 row-key="dictid">
24 </lb-table> 18 </lb-table>
25 </div> 19 </div>
26 <EditDialog ref="addEditDialog" @ok="reloadTableData" /> 20 <EditDialog ref="addEditDialog" @ok="reloadTableData" />
...@@ -28,387 +22,387 @@ ...@@ -28,387 +22,387 @@
28 </div> 22 </div>
29 </template> 23 </template>
30 <script> 24 <script>
31 import { 25 import {
32 getUuid, 26 getUuid,
33 judgeSort, 27 judgeSort,
34 realMove, 28 realMove,
35 findParents, 29 findParents,
36 removeTreeListItem, 30 removeTreeListItem,
37 } from "@/utils/operation"; 31 } from "@/utils/operation";
38 import { getRolesById, getAuthorityListAction } from "@/api/authorityManage"; 32 import { getRolesById, getAuthorityListAction } from "@/api/authorityManage";
39 import { getUserRoles } from "@/api/personnelManage"; 33 import { getUserRoles } from "@/api/personnelManage";
40 import data from "./data"; 34 import data from "./data";
41 import { api, getAction, deleteAction } from "@/api/manageApi"; 35 import { api, getAction, deleteAction } from "@/api/manageApi";
42 import tableMixin from "@/mixins/tableMixin.js"; 36 import tableMixin from "@/mixins/tableMixin.js";
43 import EditDialog from "./edit-dialog.vue"; 37 import EditDialog from "./edit-dialog.vue";
44 import Roleslistdiglog from "./roleslistdiglog.vue"; 38 import Roleslistdiglog from "./roleslistdiglog.vue";
45 export default { 39 export default {
46 name: "menus", 40 name: "menus",
47 mixins: [tableMixin], 41 mixins: [tableMixin],
48 components: { 42 components: {
49 EditDialog, 43 EditDialog,
50 Roleslistdiglog, 44 Roleslistdiglog,
51 }, 45 },
52 data () { 46 data () {
53 return { 47 return {
54 personlist: null, 48 personlist: null,
55 waitMemberList: [], 49 waitMemberList: [],
56 keyList: [], 50 keyList: [],
57 listdata: [], 51 listdata: [],
58 tableUrl: api.roles, 52 tableUrl: api.roles,
59 form: { 53 form: {
60 job_name: "", 54 job_name: "",
61 currentPage: 1, 55 currentPage: 1,
56 },
57 // 当前所选角色id
58 roleId: "",
59 title: "",
60 queryParam: {},
61 multipleSelection: [],
62 // 菜单列表
63 menutablelistData: [],
64 tableUrl: api.menus, // 菜单接口地址
65 meumurlid: api.subsystem, // 项目id接口地址
66 selectType: "0",
67 queryName: "",
68 organizationId: "", // 组织机构ID
69 departmentId: "", // 部门ID
70 departmentList: [], // 部门列表
71 levelList: [], // 职务级别
72 sexList: [],
73 operationCodes: null, // 操作符对象
74 operationList: [], // 获取授权列表需要提交的操作符数组
75 typeOptions: [
76 {
77 value: "0",
78 label: "姓名",
62 }, 79 },
63 // 当前所选角色id 80 {
64 roleId: "", 81 value: "1",
65 title: "", 82 label: "工号",
66 queryParam: {}, 83 },
67 multipleSelection: [], 84 {
68 // 菜单列表 85 value: "2",
69 menutablelistData: [], 86 label: "部门",
70 tableUrl: api.menus, // 菜单接口地址 87 },
71 meumurlid: api.subsystem, // 项目id接口地址 88 {
72 selectType: "0", 89 value: "3",
73 queryName: "", 90 label: "机构",
74 organizationId: "", // 组织机构ID 91 },
75 departmentId: "", // 部门ID 92 ],
76 departmentList: [], // 部门列表 93
77 levelList: [], // 职务级别 94 selectionList: [],
78 sexList: [], 95 tableData: {
79 operationCodes: null, // 操作符对象 96 columns: [
80 operationList: [], // 获取授权列表需要提交的操作符数组
81 typeOptions: [
82 {
83 value: "0",
84 label: "姓名",
85 },
86 {
87 value: "1",
88 label: "工号",
89 },
90 {
91 value: "2",
92 label: "部门",
93 },
94 { 97 {
95 value: "3", 98 label: "序号",
96 label: "机构", 99 type: "index",
100 width: "50",
101 index: this.indexMethod,
97 }, 102 },
98 ], 103 ]
99 104 .concat(data.columns())
100 selectionList: [], 105 .concat([
101 tableData: {
102 columns: [
103 { 106 {
104 label: "序号", 107 label: "排序",
105 type: "index", 108 width: 380,
106 width: "50", 109 render: (h, scope) => {
107 index: this.indexMethod, 110 return (
108 }, 111 <div>
109 ] 112 <el-button
110 .concat(data.columns()) 113 type="text"
111 .concat([ 114 disabled={scope.row.isTop}
112 { 115 onClick={() => {
113 label: "排序", 116 this.moveUpward(scope.$index, scope.row);
114 width: 380, 117 }}
115 render: (h, scope) => { 118 >
116 return ( 119 上移
117 <div> 120 </el-button>
118 <el-button 121 <el-button
119 type="text" 122 type="text"
120 disabled={scope.row.isTop} 123 disabled={scope.row.isBottom}
121 onClick={() => { 124 onClick={() => {
122 this.moveUpward(scope.$index, scope.row); 125 this.moveDown(scope.$index, scope.row);
123 }} 126 }}
124 > 127 >
125 上移 128 下移
126 </el-button> 129 </el-button>
127 <el-button 130 </div>
128 type="text" 131 );
129 disabled={scope.row.isBottom}
130 onClick={() => {
131 this.moveDown(scope.$index, scope.row);
132 }}
133 >
134 下移
135 </el-button>
136 </div>
137 );
138 },
139 }, 132 },
140 ]) 133 },
141 .concat([ 134 ])
142 { 135 .concat([
143 label: "操作", 136 {
144 width: 380, 137 label: "操作",
145 render: (h, scope) => { 138 width: 380,
146 return ( 139 render: (h, scope) => {
147 <div> 140 return (
148 <el-tooltip 141 <div>
149 class="item" 142 <el-tooltip
150 effect="dark" 143 class="item"
151 disabled={scope.row.type !== "Everyone"} 144 effect="dark"
152 content="没有点击的权限" 145 disabled={scope.row.type !== "Everyone"}
153 placement="top" 146 content="没有点击的权限"
154 > 147 placement="top"
155 <span> 148 >
156 <el-button 149 <span>
157 disabled={scope.row.type === "Everyone"} 150 <el-button
158 type="text" 151 disabled={scope.row.type === "Everyone"}
159 size="mini" 152 type="text"
160 icon="el-icon-video-pause" 153 size="mini"
161 onClick={() => { 154 icon="el-icon-video-pause"
162 this.getUserList(scope.row); 155 onClick={() => {
163 }} 156 this.getUserList(scope.row);
164 > 157 }}
165 配置 158 >
166 </el-button> 159 配置
167 </span> 160 </el-button>
168 </el-tooltip> 161 </span>
169 <el-tooltip 162 </el-tooltip>
170 class="item" 163 <el-tooltip
171 effect="dark" 164 class="item"
172 disabled={scope.row.category !== 1} 165 effect="dark"
173 content="系统内置角色 不允许修改" 166 disabled={scope.row.category !== 1}
174 placement="top" 167 content="系统内置角色 不允许修改"
175 > 168 placement="top"
176 <span> 169 >
177 <el-button 170 <span>
178 disabled={scope.row.category === 1} 171 <el-button
179 type="text" 172 disabled={scope.row.category === 1}
180 size="mini" 173 type="text"
181 icon="el-icon-edit" 174 size="mini"
182 onClick={() => { 175 icon="el-icon-edit"
183 this.handleAddEdit(scope.row); 176 onClick={() => {
184 }} 177 this.handleAddEdit(scope.row);
185 > 178 }}
186 修改 179 >
187 </el-button> 180 修改
188 </span> 181 </el-button>
189 </el-tooltip> 182 </span>
190 <el-tooltip 183 </el-tooltip>
191 class="item" 184 <el-tooltip
192 effect="dark" 185 class="item"
193 disabled={scope.row.category !== 1} 186 effect="dark"
194 content="系统内置角色 不允许删除" 187 disabled={scope.row.category !== 1}
195 placement="top" 188 content="系统内置角色 不允许删除"
196 > 189 placement="top"
197 <span> 190 >
198 <el-button 191 <span>
199 type="text" 192 <el-button
200 disabled={scope.row.category === 1} 193 type="text"
201 size="mini" 194 disabled={scope.row.category === 1}
202 icon="el-icon-delete" 195 size="mini"
203 // style="color:#F56C6C" 196 icon="el-icon-delete"
204 onClick={() => { 197 // style="color:#F56C6C"
205 this.handleDelete(scope.row.id, scope.row.name); 198 onClick={() => {
206 }} 199 this.handleDelete(scope.row.id, scope.row.name);
207 > 200 }}
208 删除 201 >
209 </el-button> 202 删除
210 </span> 203 </el-button>
211 </el-tooltip> 204 </span>
212 </div> 205 </el-tooltip>
213 ); 206 </div>
214 }, 207 );
215 }, 208 },
216 ]), 209 },
217 data: [], 210 ]),
218 }, 211 data: [],
219 }; 212 },
220 }, 213 };
221 created () { 214 },
222 this.getTableData(); 215 created () {
223 this.getTableList() 216 this.getTableData();
224 }, 217 this.getTableList()
225 mounted () { }, 218 },
226 methods: { 219 mounted () { },
227 // 获取角色列表 220 methods: {
228 getTableData () { 221 // 获取角色列表
229 let Builtinrole = []; 222 getTableData () {
230 let Publicrole = []; 223 let Builtinrole = [];
224 let Publicrole = [];
231 225
232 getRolesById(1) 226 getRolesById(1)
233 .then((res) => { 227 .then((res) => {
234 Builtinrole = res.content; 228 Builtinrole = res.content;
235 getRolesById(2) 229 getRolesById(2)
236 .then((res) => { 230 .then((res) => {
237 console.log("角色列表", res); 231 console.log("角色列表", res);
238 Publicrole = res.content; 232 Publicrole = res.content;
239 233
240 this.listdata = Builtinrole.concat(Publicrole); 234 this.listdata = Builtinrole.concat(Publicrole);
241 235
242 this.listdata = judgeSort(this.listdata); 236 this.listdata = judgeSort(this.listdata);
243 }) 237 })
244 .catch((e) => console.error(e)); 238 .catch((e) => console.error(e));
245 }) 239 })
246 .catch((e) => console.error(e)); 240 .catch((e) => console.error(e));
247 }, 241 },
248 242
249 // 获取菜单列表 243 // 获取菜单列表
250 getTableList () { 244 getTableList () {
251 const queryOptionsid = { 245 const queryOptionsid = {
252 conditionGroup: { 246 conditionGroup: {
253 queryRelation: "AND", 247 queryRelation: "AND",
254 conditions: [ 248 conditions: [
255 { 249 {
256 property: "code", 250 property: "code",
257 value: "BDCJGPT", 251 value: "BDCJGPT",
258 operator: "EQ", 252 operator: "EQ",
259 }, 253 },
260 ], 254 ],
261 }, 255 },
262 }; 256 };
263 const params = { 257 const params = {
264 queryOptions: queryOptionsid, 258 queryOptions: queryOptionsid,
265 }; 259 };
266 // 获取系统id 260 // 获取系统id
267 getAction(this.meumurlid, params) 261 getAction(this.meumurlid, params)
268 .then((res) => { 262 .then((res) => {
269 this.productId = res.content[0].id; 263 this.productId = res.content[0].id;
270 this.getAuthorityList(res.content[0].id, res.content[0].code) 264 this.getAuthorityList(res.content[0].id, res.content[0].code)
271 this.selectedSubsystemCode = res.content[0].code 265 this.selectedSubsystemCode = res.content[0].code
272 let queryOptions = { 266 let queryOptions = {
273 conditionGroup: { 267 conditionGroup: {
274 conditions: [ 268 conditions: [
275 { 269 {
276 property: "productId", 270 property: "productId",
277 value: this.productId, 271 value: this.productId,
278 operator: "EQ", 272 operator: "EQ",
279 }, 273 },
280 ], 274 ],
281 queryRelation: "AND", 275 queryRelation: "AND",
282 }, 276 },
283 orderBys: [{ property: "sort", direction: "desc" }], 277 orderBys: [{ property: "sort", direction: "desc" }],
284 }; 278 };
285 if (!this.tableUrl) { 279 if (!this.tableUrl) {
286 console.log("请设置tableUrl属性为接口地址!"); 280 console.log("请设置tableUrl属性为接口地址!");
287 return; 281 return;
288 }
289 if (this.queryOptions !== "") {
290 this.queryParam.queryOptions = JSON.stringify(queryOptions);
291 }
292 // 查询系统菜单
293 getAction(this.tableUrl, this.queryParam)
294 .then((res) => {
295 if (res.status === 1) {
296 this.loading = false;
297 this.menutablelistData = res.content;
298 } else {
299 this.$message.error({ message: res.message, showClose: true });
300 this.loading = false;
301 }
302 })
303 .catch((error) => {
304 console.log("er", error);
305 this.loading = false;
306 });
307 })
308 .catch((error) => {
309 console.log("er", error);
310 });
311 },
312 // 获取权限列表
313 getAuthorityList (productId, code) {
314 getAuthorityListAction(productId, code).then(
315 res => {
316 if (res.status === 1) {
317 if (res.content.length !== 0) {
318 this.operationCodes = res.content[0].operations
319 this.operationList = []
320 for (var k in this.operationCodes) {
321 this.operationList.push(k)
322 }
323 }
324 } else {
325 this.$message.error({ message: res.message, showClose: true })
326 }
327 } 282 }
328 ) 283 if (this.queryOptions !== "") {
329 }, 284 this.queryParam.queryOptions = JSON.stringify(queryOptions);
330 285 }
331 // 配置 286 // 查询系统菜单
332 getUserList (row) { 287 getAction(this.tableUrl, this.queryParam)
333 this.getTableList() 288 .then((res) => {
334 const params = {};
335 const queryOptions = {
336 conditionGroup: {
337 conditions: [
338 {
339 property: "organizationId",
340 value: row.organizationId,
341 operator: "EQ",
342 },
343 {
344 property: "departmentId",
345 value: row.departmentId,
346 operator: "EQ",
347 },
348 ],
349 queryRelation: "AND",
350 },
351 orderBys: [{ property: "sort", direction: "desc" }],
352 };
353 params.queryOptions = JSON.stringify(queryOptions);
354
355 getUserRoles(row.id).then((res) => {
356 if (res.status === 1) {
357 this.personlist = res.content;
358 getAction(api.users, params).then((res) => {
359 if (res.status === 1) { 289 if (res.status === 1) {
360 this.waitMemberList = res.content; 290 this.loading = false;
361 if (this.personlist) { 291 this.menutablelistData = res.content;
362 this.waitMemberList.forEach((item, i) => {
363 this.personlist.forEach((val) => {
364 if (item.id === val.id) {
365 this.waitMemberList[i].selectStatus = 0;
366 }
367 });
368 });
369 }
370
371 this.$refs.rolesForm.personlist(this.waitMemberList, row.id);
372 this.$refs.rolesForm.menulist(this.operationList, row.id, this.selectedSubsystemCode, this.menutablelistData, this.operationCodes);
373 } else { 292 } else {
374 this.$message.error({ message: res.message, showClose: true }); 293 this.$message.error({ message: res.message, showClose: true });
294 this.loading = false;
375 } 295 }
296 })
297 .catch((error) => {
298 console.log("er", error);
299 this.loading = false;
376 }); 300 });
377 this.$refs.rolesForm.title = "人员配置"; 301 })
378 } else this.$message.error({ message: res.message, showClose: true }); 302 .catch((error) => {
303 console.log("er", error);
379 }); 304 });
380 }, 305 },
381 // 新增、修改角色 306 // 获取权限列表
382 handleAddEdit (value) { 307 getAuthorityList (productId, code) {
383 this.$refs.addEditDialog.menuType = this.menuType; 308 getAuthorityListAction(productId, code).then(
384 this.$refs.addEditDialog.roleId = value.id; 309 res => {
385 this.roleSort = value.sort ? value.sort : 0; 310 if (res.status === 1) {
386 if (value.id) { 311 if (res.content.length !== 0) {
387 this.$refs.addEditDialog.dialogForm.roleName = value.name; 312 this.operationCodes = res.content[0].operations
388 this.$refs.addEditDialog.dialogForm.roleType = value.type; 313 this.operationList = []
389 this.$refs.addEditDialog.dialogForm.roleTextArea = value.description; 314 for (var k in this.operationCodes) {
315 this.operationList.push(k)
316 }
317 }
318 } else {
319 this.$message.error({ message: res.message, showClose: true })
320 }
390 } 321 }
391 this.$refs.addEditDialog.showAddEditDialog = true; 322 )
392 this.$refs.addEditDialog.dialogTitle = value.id ? "修改" : "新增"; 323 },
393 }, 324
394 // 上移下移 325 // 配置
395 moveUpward (index, row) { 326 getUserList (row) {
396 realMove(row.dictid, "UP", this.listdata); 327 this.getTableList()
397 this.key++; 328 const params = {};
398 let id = findParents(this.listdata, row.dictid); 329 const queryOptions = {
399 this.keyList = id; 330 conditionGroup: {
400 }, 331 conditions: [
401 moveDown (index, row) { 332 {
402 realMove(row.dictid, "DOWN", this.listdata); 333 property: "organizationId",
403 this.key++; 334 value: row.organizationId,
404 let id = findParents(this.listdata, row.dictid); 335 operator: "EQ",
405 this.keyList = id; 336 },
406 }, 337 {
338 property: "departmentId",
339 value: row.departmentId,
340 operator: "EQ",
341 },
342 ],
343 queryRelation: "AND",
344 },
345 orderBys: [{ property: "sort", direction: "desc" }],
346 };
347 params.queryOptions = JSON.stringify(queryOptions);
348
349 getUserRoles(row.id).then((res) => {
350 if (res.status === 1) {
351 this.personlist = res.content;
352 getAction(api.users, params).then((res) => {
353 if (res.status === 1) {
354 this.waitMemberList = res.content;
355 if (this.personlist) {
356 this.waitMemberList.forEach((item, i) => {
357 this.personlist.forEach((val) => {
358 if (item.id === val.id) {
359 this.waitMemberList[i].selectStatus = 0;
360 }
361 });
362 });
363 }
407 364
408 // 删除 365 this.$refs.rolesForm.personlist(this.waitMemberList, row.id);
409 handleDelete: function (id, content = "") { 366 this.$refs.rolesForm.menulist(this.operationList, row.id, this.selectedSubsystemCode, this.menutablelistData, this.operationCodes);
410 this.$confirm( 367 } else {
411 `<div class="customer-message-wrapper"> 368 this.$message.error({ message: res.message, showClose: true });
369 }
370 });
371 this.$refs.rolesForm.title = "人员配置";
372 } else this.$message.error({ message: res.message, showClose: true });
373 });
374 },
375 // 新增、修改角色
376 handleAddEdit (value) {
377 this.$refs.addEditDialog.menuType = this.menuType;
378 this.$refs.addEditDialog.roleId = value.id;
379 this.roleSort = value.sort ? value.sort : 0;
380 if (value.id) {
381 this.$refs.addEditDialog.dialogForm.roleName = value.name;
382 this.$refs.addEditDialog.dialogForm.roleType = value.type;
383 this.$refs.addEditDialog.dialogForm.roleTextArea = value.description;
384 }
385 this.$refs.addEditDialog.showAddEditDialog = true;
386 this.$refs.addEditDialog.dialogTitle = value.id ? "修改" : "新增";
387 },
388 // 上移下移
389 moveUpward (index, row) {
390 realMove(row.dictid, "UP", this.listdata);
391 this.key++;
392 let id = findParents(this.listdata, row.dictid);
393 this.keyList = id;
394 },
395 moveDown (index, row) {
396 realMove(row.dictid, "DOWN", this.listdata);
397 this.key++;
398 let id = findParents(this.listdata, row.dictid);
399 this.keyList = id;
400 },
401
402 // 删除
403 handleDelete: function (id, content = "") {
404 this.$confirm(
405 `<div class="customer-message-wrapper">
412 <h5 class="title">您确认要执行该操作用于以下信息:</h5> 406 <h5 class="title">您确认要执行该操作用于以下信息:</h5>
413 <p class="content" aria-controls="${content}">${content} 407 <p class="content" aria-controls="${content}">${content}
414 </p> 408 </p>
...@@ -416,47 +410,48 @@ ...@@ -416,47 +410,48 @@
416 <span >无法恢复</span> 410 <span >无法恢复</span>
417 </p> 411 </p>
418 </div>`, 412 </div>`,
419 "执行确认", 413 "执行确认",
420 { 414 {
421 dangerouslyUseHTMLString: true, 415 dangerouslyUseHTMLString: true,
422 customClass: "customer-delete", 416 customClass: "customer-delete",
423 confirmButtonText: "确定", 417 confirmButtonText: "确定",
424 cancelButtonText: "取消", 418 cancelButtonText: "取消",
425 type: "warning", 419 type: "warning",
420 }
421 )
422 .then(() => {
423 if (!this.tableUrl) {
424 this.$message.error({
425 message: "请设置tableUrl属性为接口地址!",
426 showClose: true,
427 });
428 return;
426 } 429 }
427 ) 430 const url = this.tableUrl + "/" + id;
428 .then(() => { 431 deleteAction(url).then((res) => {
429 if (!this.tableUrl) { 432 if (res.status === 1) {
430 this.$message.error({ 433 this.$message.success({ message: res.message, showClose: true });
431 message: "请设置tableUrl属性为接口地址!", 434 this.getTableData();
432 showClose: true, 435 } else {
433 }); 436 this.$message.error({ message: res.message, showClose: true });
434 return;
435 } 437 }
436 const url = this.tableUrl + "/" + id; 438 });
437 deleteAction(url).then((res) => { 439 })
438 if (res.status === 1) { 440 .catch(() => { });
439 this.$message.success({ message: res.message, showClose: true });
440 this.getTableData();
441 } else {
442 this.$message.error({ message: res.message, showClose: true });
443 }
444 });
445 })
446 .catch(() => { });
447 },
448 // 新增回显
449 reloadTableData () {
450 this.getTableData();
451 },
452 }, 441 },
453 }; 442 // 新增回显
443 reloadTableData () {
444 this.getTableData();
445 },
446 },
447 };
454 </script> 448 </script>
455 <style scoped lang="scss"> 449 <style scoped lang="scss">
456 @import "~@/styles/mixin.scss"; 450 @import "~@/styles/mixin.scss";
457 @import "~@/styles/public.scss"; 451
458 .btnColRight { 452 // @import "~@/styles/public.scss";
459 margin-left: -30px; 453 .btnColRight {
460 margin-top: 20px; 454 margin-left: -30px;
461 } 455 margin-top: 20px;
456 }
462 </style> 457 </style>
......
...@@ -249,5 +249,5 @@ export default { ...@@ -249,5 +249,5 @@ export default {
249 </script> 249 </script>
250 <style scoped lang="scss"> 250 <style scoped lang="scss">
251 @import "~@/styles/mixin.scss"; 251 @import "~@/styles/mixin.scss";
252 @import "~@/styles/public.scss"; 252 // @import "~@/styles/public.scss";
253 </style> 253 </style>
......
...@@ -16,295 +16,289 @@ ...@@ -16,295 +16,289 @@
16 </el-form> 16 </el-form>
17 </div> 17 </div>
18 <div class="from-clues-content"> 18 <div class="from-clues-content">
19 <lb-table 19 <lb-table :pagination="false" @size-change="handleSizeChange" @p-current-change="handleCurrentChange"
20 :pagination="false" 20 :column="tableData.columns" :data="tableData.data" :expand-row-keys="keyList" row-key="dictid">
21 @size-change="handleSizeChange"
22 @p-current-change="handleCurrentChange"
23 :column="tableData.columns"
24 :data="tableData.data"
25 :expand-row-keys="keyList"
26 row-key="dictid">
27 </lb-table> 21 </lb-table>
28 </div> 22 </div>
29 <EditDialog ref="dialogForm" @ok="reloadTableData" /> 23 <EditDialog ref="dialogForm" @ok="reloadTableData" />
30 </div> 24 </div>
31 </template> 25 </template>
32 <script> 26 <script>
33 import { 27 import {
34 getUuid, 28 getUuid,
35 judgeSort, 29 judgeSort,
36 realMove, 30 realMove,
37 findParents, 31 findParents,
38 removeTreeListItem, 32 removeTreeListItem,
39 } from "@/utils/operation"; 33 } from "@/utils/operation";
40 import { 34 import {
41 resetPassword, 35 resetPassword,
42 getUserList, 36 getUserList,
43 } from "@/api/personnelManage"; 37 } from "@/api/personnelManage";
44 import { api, deleteAction } from '@/api/manageApi' 38 import { api, deleteAction } from '@/api/manageApi'
45 import data from "./data"; 39 import data from "./data";
46 import { deleteDomStr } from '@/utils/proDomStr' 40 import { deleteDomStr } from '@/utils/proDomStr'
47 import tableMixin from "@/mixins/tableMixin.js"; 41 import tableMixin from "@/mixins/tableMixin.js";
48 import EditDialog from "./edit-dialog.vue"; 42 import EditDialog from "./edit-dialog.vue";
49 export default { 43 export default {
50 name: "menus", 44 name: "menus",
51 mixins: [tableMixin], 45 mixins: [tableMixin],
52 components: { 46 components: {
53 EditDialog, 47 EditDialog,
54 }, 48 },
55 data () { 49 data () {
56 return { 50 return {
57 taskData: null, 51 taskData: null,
58 keyList: [], 52 keyList: [],
59 form: { 53 form: {
60 job_name: "", 54 job_name: "",
61 currentPage: 1, 55 currentPage: 1,
56 },
57 queryParam: {},
58 selectType: "0",
59 queryName: "",
60 organizationId: "", // 组织机构ID
61 departmentId: "", // 部门ID
62 departmentList: [], // 部门列表
63 levelList: [], // 职务级别
64 sexList: [],
65 typeOptions: [
66 {
67 value: "0",
68 label: "姓名",
62 }, 69 },
63 queryParam: {}, 70 {
64 selectType: "0", 71 value: "1",
65 queryName: "", 72 label: "工号",
66 organizationId: "", // 组织机构ID 73 },
67 departmentId: "", // 部门ID 74 {
68 departmentList: [], // 部门列表 75 value: "2",
69 levelList: [], // 职务级别 76 label: "部门",
70 sexList: [], 77 },
71 typeOptions: [ 78 {
72 { 79 value: "3",
73 value: "0", 80 label: "机构",
74 label: "姓名", 81 },
75 }, 82 ],
76 { 83
77 value: "1", 84 selectionList: [],
78 label: "工号", 85 tableData: {
79 }, 86 columns: [
80 {
81 value: "2",
82 label: "部门",
83 },
84 { 87 {
85 value: "3", 88 label: "序号",
86 label: "机构", 89 type: "index",
90 width: "50",
91 index: this.indexMethod,
87 }, 92 },
88 ], 93 ]
89 94 .concat(data.columns())
90 selectionList: [], 95 .concat([
91 tableData: {
92 columns: [
93 { 96 {
94 label: "序号", 97 label: "负责人",
95 type: "index", 98 render: (h, scope) => {
96 width: "50", 99 return (
97 index: this.indexMethod, 100 <i v-show={scope.row.isDuty !== null} class="el-icon-check" />
101 )
102 }
98 }, 103 },
99 ] 104 {
100 .concat(data.columns()) 105 label: "排序",
101 .concat([ 106 width: 280,
102 { 107 render: (h, scope) => {
103 label: "负责人", 108 return (
104 render: (h, scope) => { 109 <div>
105 return ( 110 <el-button
106 <i v-show={scope.row.isDuty !== null} class="el-icon-check" /> 111 type="text"
107 ) 112 disabled={scope.row.isTop}
108 } 113 onClick={() => {
109 }, 114 this.moveUpward(scope.$index, scope.row);
110 { 115 }}
111 label: "排序", 116 >
112 width: 280, 117 上移
113 render: (h, scope) => { 118 </el-button>
114 return ( 119 <el-button
115 <div> 120 type="text"
116 <el-button 121 disabled={scope.row.isBottom}
117 type="text" 122 onClick={() => {
118 disabled={scope.row.isTop} 123 this.moveDown(scope.$index, scope.row);
119 onClick={() => { 124 }}
120 this.moveUpward(scope.$index, scope.row); 125 >
121 }} 126 下移
122 > 127 </el-button>
123 上移 128 </div>
124 </el-button> 129 );
125 <el-button
126 type="text"
127 disabled={scope.row.isBottom}
128 onClick={() => {
129 this.moveDown(scope.$index, scope.row);
130 }}
131 >
132 下移
133 </el-button>
134 </div>
135 );
136 },
137 }, 130 },
138 { 131 },
139 label: "操作", 132 {
140 width: 380, 133 label: "操作",
141 render: (h, scope) => { 134 width: 380,
142 return ( 135 render: (h, scope) => {
143 <div> 136 return (
144 <el-button 137 <div>
145 type="text" 138 <el-button
146 size="mini" 139 type="text"
147 icon="el-icon-video-pause" 140 size="mini"
148 onClick={() => { 141 icon="el-icon-video-pause"
149 this.resetPassword(scope.row.id); 142 onClick={() => {
150 }} 143 this.resetPassword(scope.row.id);
151 > 144 }}
152 重置 145 >
153 </el-button> 146 重置
154 <el-button 147 </el-button>
155 type="text" 148 <el-button
156 size="mini" 149 type="text"
157 icon="el-icon-edit" 150 size="mini"
158 onClick={() => { 151 icon="el-icon-edit"
159 this.handleEdit(scope.row); 152 onClick={() => {
160 }} 153 this.handleEdit(scope.row);
161 > 154 }}
162 修改 155 >
163 </el-button> 156 修改
164 <el-button 157 </el-button>
165 type="text" 158 <el-button
166 size="mini" 159 type="text"
167 icon="el-icon-delete" 160 size="mini"
168 style="color:#F56C6C" 161 icon="el-icon-delete"
169 onClick={() => { 162 style="color:#F56C6C"
170 this.handleDelete(scope.row.id, scope.row.name); 163 onClick={() => {
171 }} 164 this.handleDelete(scope.row.id, scope.row.name);
172 > 165 }}
173 删除 166 >
174 </el-button> 167 删除
175 </div> 168 </el-button>
176 ); 169 </div>
177 }, 170 );
178 }, 171 },
179 ]), 172 },
180 data: [], 173 ]),
181 }, 174 data: [],
182 };
183 },
184 created () {
185 this.getTableList();
186 },
187 computed: {
188 departmentid () {
189 return this.$store.state.user.userInfo;
190 }, 175 },
176 };
177 },
178 created () {
179 this.getTableList();
180 },
181 computed: {
182 departmentid () {
183 return this.$store.state.user.userInfo;
191 }, 184 },
192 methods: { 185 },
193 handleAdd () { 186 methods: {
194 this.$refs.dialogForm.adds(); 187 handleAdd () {
195 this.$refs.dialogForm.title = "添加"; 188 this.$refs.dialogForm.adds();
196 }, 189 this.$refs.dialogForm.title = "添加";
197 getTableList () { 190 },
198 this.loading = true; 191 getTableList () {
199 this.queryParam = { 192 this.loading = true;
200 organizationId: this.departmentid.organizationId, 193 this.queryParam = {
201 departmentId: this.departmentid.departmentId, 194 organizationId: this.departmentid.organizationId,
202 }; 195 departmentId: this.departmentid.departmentId,
203 getUserList(this.queryParam).then((res) => { 196 };
204 console.log("人员列表", res); 197 getUserList(this.queryParam).then((res) => {
205 if (res.status === 1) { 198 console.log("人员列表", res);
206 this.loading = false; 199 if (res.status === 1) {
207 this.tableData.data = res.content; 200 this.loading = false;
208 this.tableData.data = judgeSort(this.tableData.data); 201 this.tableData.data = res.content;
209 } else { 202 this.tableData.data = judgeSort(this.tableData.data);
210 this.$message.error({ message: res.message, showClose: true });
211 }
212 });
213 },
214
215 // 重置用户密码
216 resetPassword (data) {
217 const ids = []
218 if (data instanceof Array) {
219 data.forEach((item) => {
220 ids.push(item.id)
221 })
222 } else { 203 } else {
223 ids.push(data) 204 this.$message.error({ message: res.message, showClose: true });
224 }
225 if (ids.length === 0) {
226 this.$message({
227 message: '请选择需要重置密码的用户!',
228 showClose: true
229 })
230 return
231 } 205 }
232 this.$confirm( 206 });
233 `<div class="customer-message-wrapper"> 207 },
208
209 // 重置用户密码
210 resetPassword (data) {
211 const ids = []
212 if (data instanceof Array) {
213 data.forEach((item) => {
214 ids.push(item.id)
215 })
216 } else {
217 ids.push(data)
218 }
219 if (ids.length === 0) {
220 this.$message({
221 message: '请选择需要重置密码的用户!',
222 showClose: true
223 })
224 return
225 }
226 this.$confirm(
227 `<div class="customer-message-wrapper">
234 <h5 class="title">确定要重置密码吗</h5> 228 <h5 class="title">确定要重置密码吗</h5>
235 <p class="result">执行后,数据将 229 <p class="result">执行后,数据将
236 <span >无法恢复</span> 230 <span >无法恢复</span>
237 </p> 231 </p>
238 </div>`, 232 </div>`,
239 '执行确认', 233 '执行确认',
240 { 234 {
241 dangerouslyUseHTMLString: true,
242 customClass: 'customer-delete',
243 confirmButtonText: '确定',
244 cancelButtonText: '取消',
245 type: 'warning'
246 }
247 )
248 .then(() => {
249 resetPassword(ids).then((res) => {
250 if (res.status === 1) {
251 this.$message.success({ message: res.message, showClose: true })
252 this.getTableList()
253 } else {
254 this.$message.error({ message: res.message, showClose: true })
255 }
256 })
257 })
258 .catch(() => { })
259 },
260 // 上移下移
261 moveUpward (index, row) {
262 realMove(row.dictid, "UP", this.tableData.data);
263 this.key++;
264 let id = findParents(this.tableData.data, row.dictid);
265 this.keyList = id;
266 },
267 moveDown (index, row) {
268 realMove(row.dictid, "DOWN", this.tableData.data);
269 this.key++;
270 let id = findParents(this.tableData.data, row.dictid);
271 this.keyList = id;
272 },
273 // 修改人员信息
274 handleEdit (row) {
275 this.$refs.dialogForm.edit(row);
276 this.$refs.dialogForm.title = "修改";
277 },
278 // 删除
279 handleDelete (id, content) {
280 this.$confirm(deleteDomStr(content), '执行确认', {
281 dangerouslyUseHTMLString: true, 235 dangerouslyUseHTMLString: true,
282 customClass: 'customer-delete', 236 customClass: 'customer-delete',
283 confirmButtonText: '确定', 237 confirmButtonText: '确定',
284 cancelButtonText: '取消', 238 cancelButtonText: '取消',
285 type: 'warning' 239 type: 'warning'
286 }) 240 }
287 .then(() => { 241 )
288 deleteAction(`${api.users}/${id}`).then((res) => { 242 .then(() => {
289 if (res.status === 1) { 243 resetPassword(ids).then((res) => {
290 this.$message.success({ message: res.message, showClose: true }) 244 if (res.status === 1) {
291 } else { 245 this.$message.success({ message: res.message, showClose: true })
292 this.$message.error({ message: res.message, showClose: true })
293 }
294 this.getTableList() 246 this.getTableList()
295 }) 247 } else {
248 this.$message.error({ message: res.message, showClose: true })
249 }
296 }) 250 })
297 .catch(() => { }) 251 })
298 }, 252 .catch(() => { })
299 // 新增回显 253 },
300 reloadTableData () { 254 // 上移下移
301 this.getTableList() 255 moveUpward (index, row) {
302 }, 256 realMove(row.dictid, "UP", this.tableData.data);
257 this.key++;
258 let id = findParents(this.tableData.data, row.dictid);
259 this.keyList = id;
260 },
261 moveDown (index, row) {
262 realMove(row.dictid, "DOWN", this.tableData.data);
263 this.key++;
264 let id = findParents(this.tableData.data, row.dictid);
265 this.keyList = id;
266 },
267 // 修改人员信息
268 handleEdit (row) {
269 this.$refs.dialogForm.edit(row);
270 this.$refs.dialogForm.title = "修改";
271 },
272 // 删除
273 handleDelete (id, content) {
274 this.$confirm(deleteDomStr(content), '执行确认', {
275 dangerouslyUseHTMLString: true,
276 customClass: 'customer-delete',
277 confirmButtonText: '确定',
278 cancelButtonText: '取消',
279 type: 'warning'
280 })
281 .then(() => {
282 deleteAction(`${api.users}/${id}`).then((res) => {
283 if (res.status === 1) {
284 this.$message.success({ message: res.message, showClose: true })
285 } else {
286 this.$message.error({ message: res.message, showClose: true })
287 }
288 this.getTableList()
289 })
290 })
291 .catch(() => { })
292 },
293 // 新增回显
294 reloadTableData () {
295 this.getTableList()
303 }, 296 },
304 }; 297 },
298 };
305 </script> 299 </script>
306 <style scoped lang="scss"> 300 <style scoped lang="scss">
307 @import "~@/styles/mixin.scss"; 301 @import "~@/styles/mixin.scss";
308 @import "~@/styles/public.scss"; 302 // @import "~@/styles/public.scss";
309 @import "./index.scss"; 303 @import "./index.scss";
310 </style> 304 </style>
......
...@@ -199,6 +199,6 @@ export default { ...@@ -199,6 +199,6 @@ export default {
199 }; 199 };
200 </script> 200 </script>
201 <style scoped lang="scss"> 201 <style scoped lang="scss">
202 @import "~@/styles/public.scss"; 202 // @import "~@/styles/public.scss";
203 @import "./index.scss"; 203 @import "./index.scss";
204 </style> 204 </style>
......