Merge branch 'master' of http://yun.pashanhoo.com:9090/bdc/bdcjg-web
Showing
77 changed files
with
1449 additions
and
515 deletions
1 | /* | 1 | /* |
2 | * @Description: 数据上报模块api文件 | 2 | * @Description: 数据上报模块api文件 |
3 | * @Autor: renchao | 3 | * @Autor: renchao |
4 | * @LastEditTime: 2023-03-01 16:33:08 | 4 | * @LastEditTime: 2023-03-03 14:38:57 |
5 | */ | 5 | */ |
6 | /* 引入axios请求文件 */ | 6 | /* 引入axios请求文件 */ |
7 | import request from '@/utils/request' | 7 | import request from '@/utils/request' |
... | @@ -110,3 +110,16 @@ export function restartGenerateXml (bsmReport) { | ... | @@ -110,3 +110,16 @@ export function restartGenerateXml (bsmReport) { |
110 | method: 'post' | 110 | method: 'post' |
111 | }) | 111 | }) |
112 | } | 112 | } |
113 | |||
114 | /** | ||
115 | * @description: 编辑报文头 | ||
116 | * @param {*} data | ||
117 | * @author: renchao | ||
118 | */ | ||
119 | export function edit (data) { | ||
120 | return request({ | ||
121 | url: urlHeader + 'edit', | ||
122 | method: 'post', | ||
123 | data | ||
124 | }) | ||
125 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
1 | /* | 1 | /* |
2 | * @Description: 登薄日志 | 2 | * @Description: 登薄日志 |
3 | * @Autor: renchao | 3 | * @Autor: renchao |
4 | * @LastEditTime: 2023-03-01 17:09:38 | 4 | * @LastEditTime: 2023-03-02 13:45:53 |
5 | */ | 5 | */ |
6 | /* 引入请求文件 */ | 6 | /* 引入请求文件 */ |
7 | import request from '@/utils/request' | 7 | import request from '@/utils/request' |
8 | /* 引入配置文件 */ | 8 | /* 引入配置文件 */ |
9 | import SERVER from './config' | 9 | import SERVER from './config' |
10 | const urlHeader = SERVER.SERVERAPI + '/rest/sjsb/RecordLog/' | 10 | const urlHeader = SERVER.SERVERAPI + '/rest/sjsb/RecordLog/' |
11 | |||
12 | /** | 11 | /** |
13 | * @description: 登簿日志分页 | 12 | * @description: 登簿日志分页 |
14 | * @author: renchao | 13 | * @author: renchao |
... | @@ -35,4 +34,29 @@ export function getDetail (dbBsm) { | ... | @@ -35,4 +34,29 @@ export function getDetail (dbBsm) { |
35 | } | 34 | } |
36 | }) | 35 | }) |
37 | } | 36 | } |
38 | 37 | /** | |
38 | * @description: 详情页面编辑 | ||
39 | * @param {*} data | ||
40 | * @author: renchao | ||
41 | */ | ||
42 | export function edit (data) { | ||
43 | return request({ | ||
44 | url: urlHeader + 'edit', | ||
45 | method: 'post', | ||
46 | data | ||
47 | }) | ||
48 | } | ||
49 | /** | ||
50 | * @description: 登薄日志重新生成报文 | ||
51 | * @param {*} dbBsm | ||
52 | * @author: renchao | ||
53 | */ | ||
54 | export function regenerateDbXml (dbBsm) { | ||
55 | return request({ | ||
56 | url: urlHeader + 'regenerateDbXml', | ||
57 | method: 'get', | ||
58 | params: { | ||
59 | dbBsm: dbBsm | ||
60 | } | ||
61 | }) | ||
62 | } | ... | ... |
src/api/statistics.js
0 → 100644
1 | import request from '@/utils/request' | ||
2 | import SERVER from './config' | ||
3 | |||
4 | /** | ||
5 | * dataReceiveQuality | ||
6 | * @param startDate | ||
7 | * @param endDate | ||
8 | * @returns {AxiosPromise} | ||
9 | */ | ||
10 | export function dataReceiveQuality (startDate, endDate) { | ||
11 | return request({ | ||
12 | url: SERVER.SERVERAPI + '/rest/statistics/Efficient/dataReceiveQuality?startDate='+startDate+'&endDate='+endDate, | ||
13 | method: 'post' | ||
14 | }) | ||
15 | } | ||
16 | |||
17 | /** | ||
18 | * 空项率统计 | ||
19 | * @returns {AxiosPromise} | ||
20 | * @param startDate | ||
21 | * @param endDate | ||
22 | */ | ||
23 | export function nonNullSta (startDate, endDate) { | ||
24 | return request({ | ||
25 | url: SERVER.SERVERAPI + '/rest/statistics/Efficient/nonNullSta?startDate='+startDate+'&endDate='+endDate, | ||
26 | method: 'post' | ||
27 | }) | ||
28 | } | ||
29 | |||
30 | /** | ||
31 | * 登簿质量统计 | ||
32 | * @returns {AxiosPromise} | ||
33 | * @param startDate | ||
34 | * @param endDate | ||
35 | */ | ||
36 | export function registerBookQuality (startDate, endDate) { | ||
37 | return request({ | ||
38 | url: SERVER.SERVERAPI + '/rest/statistics/Efficient/registerBookQuality?startDate='+startDate+'&endDate='+endDate, | ||
39 | method: 'post' | ||
40 | }) | ||
41 | } |
This diff is collapsed.
Click to expand it.
src/image/bdclogo.png
0 → 100644
20.9 KB
src/image/loginBoxsb.png
0 → 100644
296 KB
src/image/passlogo.png
0 → 100644
655 Bytes
src/image/userlogo.png
0 → 100644
612 Bytes
src/image/yzlogo.png
0 → 100644
621 Bytes
... | @@ -46,7 +46,7 @@ export default { | ... | @@ -46,7 +46,7 @@ export default { |
46 | sessionStorage.removeItem("token"); | 46 | sessionStorage.removeItem("token"); |
47 | this.$store.dispatch("user/resetState"); | 47 | this.$store.dispatch("user/resetState"); |
48 | this.$router.replace({ | 48 | this.$router.replace({ |
49 | path: "/login", | 49 | path: "/login/jg", |
50 | query: { | 50 | query: { |
51 | redirect: this.$route.fullPath, | 51 | redirect: this.$route.fullPath, |
52 | }, | 52 | }, | ... | ... |
1 | <template> | 1 | <template> |
2 | <el-menu router :default-active="activeMenu" mode="horizontal"> | 2 | <el-menu router :default-active="activeMenu" mode="horizontal"> |
3 | <!-- 权限菜单 --> | 3 | <!-- 权限菜单 --> |
4 | <sidebar-item v-for="route in permission_routes.slice(2, 5)" :key="route.path" :item="route" | 4 | <sidebar-item v-for="route in permission_routes.slice(3, 6)" :key="route.path" :item="route" |
5 | :base-path="route.path" /> | 5 | :base-path="route.path" /> |
6 | <!-- 菜单全部展示 --> | 6 | <!-- 菜单全部展示 --> |
7 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> | 7 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> |
... | @@ -9,16 +9,18 @@ | ... | @@ -9,16 +9,18 @@ |
9 | </template> | 9 | </template> |
10 | 10 | ||
11 | <script> | 11 | <script> |
12 | import { mapGetters } from 'vuex' | 12 | import { mapGetters } from 'vuex' |
13 | import Logo from './Logo' | 13 | import Logo from './Logo' |
14 | import SidebarItem from './SidebarItem' | 14 | import SidebarItem from './SidebarItem' |
15 | import variables from '@/styles/variables.scss' | 15 | import variables from '@/styles/variables.scss' |
16 | import { asyncRoutes } from '@/router' | 16 | import { asyncRoutes } from '@/router' |
17 | export default { | 17 | export default { |
18 | components: { SidebarItem, Logo }, | 18 | components: { SidebarItem, Logo }, |
19 | computed: { | 19 | computed: { |
20 | ...mapGetters(['permission_routes', 'sidebar']), | 20 | ...mapGetters(['permission_routes', 'sidebar']), |
21 | |||
21 | activeMenu () { | 22 | activeMenu () { |
23 | |||
22 | const route = this.$route | 24 | const route = this.$route |
23 | const { meta, path } = route | 25 | const { meta, path } = route |
24 | if (meta.activeMenu) { | 26 | if (meta.activeMenu) { |
... | @@ -32,12 +34,15 @@ export default { | ... | @@ -32,12 +34,15 @@ export default { |
32 | asyncRoutes () { | 34 | asyncRoutes () { |
33 | return asyncRoutes.slice(0, 3) | 35 | return asyncRoutes.slice(0, 3) |
34 | } | 36 | } |
37 | }, | ||
38 | mounted () { | ||
39 | console.log("permission_routes", this.permission_routes); | ||
40 | } | ||
35 | } | 41 | } |
36 | } | ||
37 | </script> | 42 | </script> |
38 | <style scoped lang="scss"> | 43 | <style scoped lang="scss"> |
39 | .el-menu--horizontal { | 44 | .el-menu--horizontal { |
40 | display: flex; | 45 | display: flex; |
41 | background: none !important; | 46 | background: none !important; |
42 | } | 47 | } |
43 | </style> | 48 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Author: xiaomiao 1158771342@qq.com | ||
3 | * @Date: 2023-01-10 09:03:06 | ||
4 | * @LastEditors: xiaomiao 1158771342@qq.com | ||
5 | * @LastEditTime: 2023-03-08 10:45:43 | ||
6 | * @FilePath: \监管系统\js-web-jianguan\src\layout\components\Sidebar\sidebarRight.vue | ||
7 | * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE | ||
8 | --> | ||
1 | <template> | 9 | <template> |
2 | <el-menu router :default-active="activeMenu" mode="horizontal"> | 10 | <el-menu router :default-active="activeMenu" mode="horizontal"> |
3 | <!-- 权限菜单 --> | 11 | <!-- 权限菜单 --> |
4 | <sidebar-item v-for="route in permission_routes.slice(5, 8)" :key="route.path" :item="route" | 12 | <sidebar-item v-for="route in permission_routes.slice(6, 9)" :key="route.path" :item="route" |
5 | :base-path="route.path" /> | 13 | :base-path="route.path" /> |
6 | <!-- 菜单全部展示 --> | 14 | <!-- 菜单全部展示 --> |
7 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> | 15 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> |
... | @@ -9,12 +17,12 @@ | ... | @@ -9,12 +17,12 @@ |
9 | </template> | 17 | </template> |
10 | 18 | ||
11 | <script> | 19 | <script> |
12 | import { mapGetters } from 'vuex' | 20 | import { mapGetters } from 'vuex' |
13 | import Logo from './Logo' | 21 | import Logo from './Logo' |
14 | import SidebarItem from './SidebarItem' | 22 | import SidebarItem from './SidebarItem' |
15 | import variables from '@/styles/variables.scss' | 23 | import variables from '@/styles/variables.scss' |
16 | import { asyncRoutes } from '@/router' | 24 | import { asyncRoutes } from '@/router' |
17 | export default { | 25 | export default { |
18 | components: { SidebarItem, Logo }, | 26 | components: { SidebarItem, Logo }, |
19 | computed: { | 27 | computed: { |
20 | ...mapGetters(['permission_routes', 'sidebar']), | 28 | ...mapGetters(['permission_routes', 'sidebar']), |
... | @@ -33,35 +41,35 @@ export default { | ... | @@ -33,35 +41,35 @@ export default { |
33 | return asyncRoutes.slice(3, 6) | 41 | return asyncRoutes.slice(3, 6) |
34 | } | 42 | } |
35 | } | 43 | } |
36 | } | 44 | } |
37 | </script> | 45 | </script> |
38 | <style scoped lang="scss"> | 46 | <style scoped lang="scss"> |
39 | .el-menu--horizontal { | 47 | .el-menu--horizontal { |
40 | display: flex; | 48 | display: flex; |
41 | background: none !important; | 49 | background: none !important; |
42 | } | 50 | } |
43 | 51 | ||
44 | /deep/.el-menu-item:hover { | 52 | /deep/.el-menu-item:hover { |
45 | background: none; | 53 | background: none; |
46 | font-weight: 700; | 54 | font-weight: 700; |
47 | color: #fff !important; | 55 | color: #fff !important; |
48 | } | 56 | } |
49 | 57 | ||
50 | /deep/.el-submenu__title { | 58 | /deep/.el-submenu__title { |
51 | color: #fff; | 59 | color: #fff; |
52 | font-size: 18px; | 60 | font-size: 18px; |
53 | } | 61 | } |
54 | 62 | ||
55 | /deep/.el-submenu__title:hover { | 63 | /deep/.el-submenu__title:hover { |
56 | background: none; | 64 | background: none; |
57 | font-weight: 700; | 65 | font-weight: 700; |
58 | font-size: 20px; | 66 | font-size: 20px; |
59 | } | 67 | } |
60 | 68 | ||
61 | /deep/.el-menu--horizontal .el-menu-item:not(.is-disabled):focus { | 69 | /deep/.el-menu--horizontal .el-menu-item:not(.is-disabled):focus { |
62 | background: none; | 70 | background: none; |
63 | color: #fff; | 71 | color: #fff; |
64 | font-size: 20px; | 72 | font-size: 20px; |
65 | font-weight: 700 !important; | 73 | font-weight: 700 !important; |
66 | } | 74 | } |
67 | </style> | 75 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-03-07 09:15:01 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="app-wrapper"> | 7 | <div class="app-wrapper jgWrapper"> |
3 | <navbar /> | 8 | <navbar /> |
4 | <div class="appMain"> | 9 | <div class="appMain"> |
5 | <app-main /> | 10 | <app-main /> |
... | @@ -28,6 +33,9 @@ export default { | ... | @@ -28,6 +33,9 @@ export default { |
28 | } | 33 | } |
29 | } | 34 | } |
30 | </script> | 35 | </script> |
36 | <style lang="scss"> | ||
37 | @import "~@/styles/jgSidebar.scss"; | ||
38 | </style> | ||
31 | <style lang="scss" scoped> | 39 | <style lang="scss" scoped> |
32 | @import "~@/styles/mixin.scss"; | 40 | @import "~@/styles/mixin.scss"; |
33 | 41 | ... | ... |
... | @@ -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> |
... | @@ -24,10 +20,10 @@ | ... | @@ -24,10 +20,10 @@ |
24 | </div> | 20 | </div> |
25 | </template> | 21 | </template> |
26 | <script> | 22 | <script> |
27 | import { mapGetters } from 'vuex' | 23 | import { mapGetters } from 'vuex' |
28 | import Breadcrumb from './Breadcrumb' | 24 | import Breadcrumb from './Breadcrumb' |
29 | import defaultSettings from '@/settings' | 25 | import defaultSettings from '@/settings' |
30 | export default { | 26 | export default { |
31 | components: { | 27 | components: { |
32 | Breadcrumb | 28 | Breadcrumb |
33 | }, | 29 | }, |
... | @@ -54,10 +50,10 @@ | ... | @@ -54,10 +50,10 @@ |
54 | } | 50 | } |
55 | } | 51 | } |
56 | } | 52 | } |
57 | } | 53 | } |
58 | </script> | 54 | </script> |
59 | <style lang="scss" scoped> | 55 | <style lang="scss" scoped> |
60 | .navbar-con { | 56 | .navbar-con { |
61 | position: relative; | 57 | position: relative; |
62 | 58 | ||
63 | .logo { | 59 | .logo { |
... | @@ -65,23 +61,14 @@ | ... | @@ -65,23 +61,14 @@ |
65 | font-size: 26px; | 61 | font-size: 26px; |
66 | font-weight: 700; | 62 | font-weight: 700; |
67 | } | 63 | } |
68 | } | 64 | } |
69 | |||
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 | 65 | ||
79 | .NoticeBar { | 66 | .NoticeBar { |
80 | position: absolute; | 67 | position: absolute; |
81 | bottom: 0; | 68 | bottom: 0; |
82 | } | 69 | } |
83 | 70 | ||
84 | .el-dropdown-menu { | 71 | .el-dropdown-menu { |
85 | padding: 0 !important; | 72 | padding: 0 !important; |
86 | border: 1px solid #ebeef5; | 73 | border: 1px solid #ebeef5; |
87 | box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12); | 74 | box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12); |
... | @@ -114,21 +101,17 @@ | ... | @@ -114,21 +101,17 @@ |
114 | background: #f6f7f9; | 101 | background: #f6f7f9; |
115 | color: #4a4a4a; | 102 | color: #4a4a4a; |
116 | } | 103 | } |
117 | } | 104 | } |
118 | 105 | ||
119 | .navbar { | 106 | .navbar { |
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 | } |
... | @@ -246,5 +229,5 @@ | ... | @@ -246,5 +229,5 @@ |
246 | } | 229 | } |
247 | } | 230 | } |
248 | } | 231 | } |
249 | } | 232 | } |
250 | </style> | 233 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-03-06 16:18:21 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div> | 7 | <div> |
3 | <el-scrollbar wrap-class="scrollbar-wrapper"> | 8 | <el-scrollbar wrap-class="scrollbar-wrapper"> |
4 | <el-menu router :default-active="activeMenu" :background-color="variables.menuBg" :text-color="variables.menuText" | 9 | <el-menu router :default-active="activeMenu" :background-color="variables.menuBg" :text-color="variables.menuText" |
5 | :unique-opened="true" :active-text-color="variables.menuActiveText" :collapse-transition="false" mode="vertical"> | 10 | :unique-opened="true" :active-text-color="variables.menuActiveText" :collapse-transition="false" mode="vertical"> |
6 | <!-- 权限菜单 --> | 11 | <!-- 权限菜单 --> |
7 | <sidebar-item v-for="route in permission_routes" :key="route.path" :item="route" :base-path="route.path" /> | 12 | <sidebar-item v-for="route in permission_routes.slice(3)" :key="route.path" :item="route" |
13 | :base-path="route.path" /> | ||
8 | <!-- 菜单全部展示 --> | 14 | <!-- 菜单全部展示 --> |
9 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> | 15 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> |
10 | </el-menu> | 16 | </el-menu> |
... | @@ -13,20 +19,22 @@ | ... | @@ -13,20 +19,22 @@ |
13 | </template> | 19 | </template> |
14 | 20 | ||
15 | <script> | 21 | <script> |
16 | import { mapGetters } from 'vuex' | 22 | import { mapGetters } from 'vuex' |
17 | import Logo from './Logo' | 23 | import Logo from './Logo' |
18 | import defaultSettings from '@/settings' | 24 | import defaultSettings from '@/settings' |
19 | import SidebarItem from './SidebarItem' | 25 | import SidebarItem from './SidebarItem' |
20 | import variables from '@/styles/variables.scss' | 26 | import variables from '@/styles/variables.scss' |
21 | import { asyncRoutes } from '@/router' | 27 | import { asyncRoutes } from '@/router' |
22 | export default { | 28 | export default { |
23 | components: { SidebarItem, Logo }, | 29 | components: { SidebarItem, Logo }, |
24 | data () { | 30 | data () { |
25 | return { | 31 | return { |
26 | title: defaultSettings.title | 32 | title: defaultSettings.title |
27 | } | 33 | } |
28 | }, | 34 | }, |
29 | 35 | created () { | |
36 | console.log(this.permission_routes); | ||
37 | }, | ||
30 | computed: { | 38 | computed: { |
31 | ...mapGetters(['permission_routes', 'sidebar']), | 39 | ...mapGetters(['permission_routes', 'sidebar']), |
32 | activeMenu () { | 40 | activeMenu () { |
... | @@ -44,5 +52,5 @@ | ... | @@ -44,5 +52,5 @@ |
44 | return asyncRoutes | 52 | return asyncRoutes |
45 | } | 53 | } |
46 | } | 54 | } |
47 | } | 55 | } |
48 | </script> | 56 | </script> |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-03-07 09:11:01 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="app-wrapper"> | 7 | <div class="app-wrapper scWrapper"> |
3 | <navbar /> | 8 | <navbar /> |
4 | <div class="main-container"> | 9 | <div class="main-container"> |
5 | <sidebar class="sidebar-container" /> | 10 | <sidebar class="sidebar-container" /> |
... | @@ -29,15 +34,17 @@ export default { | ... | @@ -29,15 +34,17 @@ export default { |
29 | } | 34 | } |
30 | } | 35 | } |
31 | </script> | 36 | </script> |
32 | <style lang="scss" scoped> | 37 | <style lang="scss"> |
33 | @import "~@/styles/mixin.scss"; | 38 | @import "~@/styles/mixin.scss"; |
39 | @import '~@/styles/sbSidebar.scss'; | ||
34 | 40 | ||
35 | .app-wrapper { | 41 | .app-wrapper { |
36 | @include clearfix; | 42 | @include clearfix; |
37 | position: relative; | 43 | position: relative; |
38 | height: 100%; | 44 | height: 100%; |
39 | width: 100%; | 45 | width: 100%; |
40 | background-color: $containerbg; | 46 | // background-color: $containerbg; |
47 | padding: 0; | ||
41 | 48 | ||
42 | &.mobile.openSidebar { | 49 | &.mobile.openSidebar { |
43 | 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"; |
... | @@ -13,16 +18,57 @@ router.beforeEach(async (to, from, next) => { | ... | @@ -13,16 +18,57 @@ router.beforeEach(async (to, from, next) => { |
13 | let hasAddDict = store.state.dict.addDict; | 18 | let hasAddDict = store.state.dict.addDict; |
14 | let hasUser = store.state.user.hasUser; | 19 | let hasUser = store.state.user.hasUser; |
15 | let hasAddRoute = store.state.permission.addRoutes; | 20 | let hasAddRoute = store.state.permission.addRoutes; |
16 | if (to.path == "/login") { | 21 | |
22 | if (to.path == "/login/sb") { | ||
17 | sessionStorage.removeItem("token"); | 23 | sessionStorage.removeItem("token"); |
18 | next(); | 24 | next(); |
25 | } else if (to.path !== "/login/jg") { | ||
26 | //判断token是否存在 | ||
27 | const hasToken = sessionStorage.getItem("token"); | ||
28 | if (hasToken) { | ||
29 | //请求用户信息 | ||
30 | if (!hasUser) { | ||
31 | store.dispatch("user/getUserInfo"); | ||
32 | } | ||
33 | if (hasAddRoute) { | ||
34 | next(); | ||
19 | } else { | 35 | } else { |
36 | //请求菜单 | ||
37 | const { result: getMenuData } = (await getMenuInfo()) || []; | ||
38 | const accessRoutes = await store.dispatch( | ||
39 | "permission/generateRoutes", | ||
40 | getMenuData | ||
41 | ); | ||
42 | router.addRoutes([ | ||
43 | ...accessRoutes, | ||
44 | { path: "*", redirect: "/404", hidden: true }, | ||
45 | ]); | ||
46 | const routeTo = Cookies.get("routerTo"); | ||
47 | if (!hasAddDict) { | ||
48 | await store.dispatch("dict/generateDic"); | ||
49 | } | ||
50 | if (routeTo && routeTo !== "/") { | ||
51 | next({ ...to, replace: true }); | ||
52 | } else { | ||
53 | alert("上报") | ||
54 | next("/home"); | ||
55 | } | ||
56 | } | ||
57 | } else { | ||
58 | next("/login/sb"); | ||
59 | } | ||
60 | } | ||
61 | if (to.path == "/login/jg") { | ||
62 | sessionStorage.removeItem("token"); | ||
63 | next(); | ||
64 | } else if (to.path !== "/login/sb") { | ||
20 | //判断token是否存在 | 65 | //判断token是否存在 |
21 | const hasToken = sessionStorage.getItem("token"); | 66 | const hasToken = sessionStorage.getItem("token"); |
22 | if (hasToken) { | 67 | if (hasToken) { |
23 | //请求用户信息 | 68 | //请求用户信息 |
24 | if (!hasUser) { | 69 | if (!hasUser) { |
25 | store.dispatch("user/getUserInfo"); | 70 | store.dispatch("user/getUserInfo"); |
71 | import("@/styles/public.scss"); | ||
26 | } | 72 | } |
27 | if (hasAddRoute) { | 73 | if (hasAddRoute) { |
28 | next(); | 74 | next(); |
... | @@ -44,11 +90,12 @@ router.beforeEach(async (to, from, next) => { | ... | @@ -44,11 +90,12 @@ router.beforeEach(async (to, from, next) => { |
44 | if (routeTo && routeTo !== "/") { | 90 | if (routeTo && routeTo !== "/") { |
45 | next({ ...to, replace: true }); | 91 | next({ ...to, replace: true }); |
46 | } else { | 92 | } else { |
93 | alert("监管") | ||
47 | next("/home"); | 94 | next("/home"); |
48 | } | 95 | } |
49 | } | 96 | } |
50 | } else { | 97 | } else { |
51 | next("/login"); | 98 | next("/login/jg"); |
52 | } | 99 | } |
53 | } | 100 | } |
54 | NProgress.done(); | 101 | NProgress.done(); | ... | ... |
... | @@ -3,6 +3,8 @@ import Router from 'vue-router' | ... | @@ -3,6 +3,8 @@ import Router from 'vue-router' |
3 | Vue.use(Router) | 3 | Vue.use(Router) |
4 | /* Layout */ | 4 | /* Layout */ |
5 | import Layout from '@/layout' | 5 | import Layout from '@/layout' |
6 | // const p = 'layout1' | ||
7 | // const Layout = require('@/layout') | ||
6 | /* Router Modules */ | 8 | /* Router Modules */ |
7 | // import componentsRouter from './modules/components' | 9 | // import componentsRouter from './modules/components' |
8 | export const constantRoutes = [ | 10 | export const constantRoutes = [ |
... | @@ -22,9 +24,14 @@ export const constantRoutes = [ | ... | @@ -22,9 +24,14 @@ export const constantRoutes = [ |
22 | }, | 24 | }, |
23 | //登录 | 25 | //登录 |
24 | { | 26 | { |
25 | path: "/login", | 27 | path: "/login/jg", |
26 | name: "login", | 28 | name: "loginjg", |
27 | component: () => import("@/views/login/index.vue"), | 29 | component: () => import("@/views/loginjg/index.vue"), |
30 | }, | ||
31 | { | ||
32 | path: "/login/sb", | ||
33 | name: "loginsb", | ||
34 | component: () => import("@/views/loginsb/index.vue"), | ||
28 | }, | 35 | }, |
29 | // 监管首页 | 36 | // 监管首页 |
30 | { | 37 | { | ... | ... |
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 | }); | ... | ... |
... | @@ -60,6 +60,13 @@ | ... | @@ -60,6 +60,13 @@ |
60 | } | 60 | } |
61 | } | 61 | } |
62 | 62 | ||
63 | .item-content-input { | ||
64 | /deep/.el-input__inner { | ||
65 | border: none !important; | ||
66 | text-align: right; | ||
67 | } | ||
68 | } | ||
69 | |||
63 | .regularHeight { | 70 | .regularHeight { |
64 | height: 80vh; | 71 | height: 80vh; |
65 | display: flex; | 72 | display: flex; | ... | ... |
1 | // cover some element-ui styles | 1 | // cover some element-ui styles |
2 | |||
3 | .el-breadcrumb__inner, | 2 | .el-breadcrumb__inner, |
4 | .el-breadcrumb__inner a { | 3 | .el-breadcrumb__inner a { |
5 | font-weight: 400 !important; | 4 | font-weight: 400 !important; |
... | @@ -531,29 +530,34 @@ tr:hover { | ... | @@ -531,29 +530,34 @@ tr:hover { |
531 | background-color: #031a46; | 530 | background-color: #031a46; |
532 | border: 1px solid #5f82c7; | 531 | border: 1px solid #5f82c7; |
533 | 532 | ||
534 | .el-message-box__title{ | 533 | .el-message-box__title { |
535 | color: white; | 534 | color: white; |
536 | } | 535 | } |
537 | .el-message-box__content{ | 536 | |
537 | .el-message-box__content { | ||
538 | color: white; | 538 | color: white; |
539 | } | 539 | } |
540 | } | 540 | } |
541 | // 上级菜单 | 541 | |
542 | // 上级菜单 | ||
542 | .el-cascader__dropdown { | 543 | .el-cascader__dropdown { |
543 | background-color: #031a46; | 544 | background-color: #031a46; |
544 | border: 1px solid #5f82c7; | 545 | border: 1px solid #5f82c7; |
545 | 546 | ||
546 | } | 547 | } |
547 | .el-cascader-menu{ | 548 | |
549 | .el-cascader-menu { | ||
548 | color: white; | 550 | color: white; |
549 | } | 551 | } |
550 | .el-radio | 552 | |
551 | { | 553 | .el-radio { |
552 | .el-cascader-menu:hover{ | 554 | .el-cascader-menu:hover { |
553 | color: white; | 555 | color: white; |
554 | } | 556 | } |
555 | } | 557 | } |
556 | .el-cascader-node:not(.is-disabled):hover, .el-cascader-node:not(.is-disabled):focus { | 558 | |
559 | .el-cascader-node:not(.is-disabled):hover, | ||
560 | .el-cascader-node:not(.is-disabled):focus { | ||
557 | background: #F5F7FA; | 561 | background: #F5F7FA; |
558 | background-image: initial; | 562 | background-image: initial; |
559 | background-position-x: initial; | 563 | background-position-x: initial; | ... | ... |
... | @@ -2,7 +2,7 @@ | ... | @@ -2,7 +2,7 @@ |
2 | @import './mixin.scss'; | 2 | @import './mixin.scss'; |
3 | @import './transition.scss'; | 3 | @import './transition.scss'; |
4 | @import './element-ui.scss'; | 4 | @import './element-ui.scss'; |
5 | @import './sidebar.scss'; | 5 | // @import './sidebar.scss'; |
6 | 6 | ||
7 | /* CSS 初始化 */ | 7 | /* CSS 初始化 */ |
8 | html, | 8 | html, | ... | ... |
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 | |||
146 | /deep/.btn-next, | ||
147 | /deep/.btn-prev { | ||
148 | @extend .bgc; | ||
149 | color: #FFFFFF; | ||
150 | } | 145 | } |
151 | 146 | ||
152 | } | 147 | |
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 | ... | ... |
src/styles/sbSidebar.scss
0 → 100644
1 | .scWrapper { | ||
2 | .main-container { | ||
3 | width: 100%; | ||
4 | height: calc(100% - 74px); | ||
5 | transition: margin-left 0.28s; | ||
6 | display: flex; | ||
7 | } | ||
8 | |||
9 | .sidebar-container { | ||
10 | transition: width 0.28s; | ||
11 | width: $sideBarWidth !important; | ||
12 | font-size: 0px; | ||
13 | margin-right: 15px; | ||
14 | background: #121F41; | ||
15 | |||
16 | .horizontal-collapse-transition { | ||
17 | transition: 0s width ease-in-out, 0s padding-left ease-in-out, | ||
18 | 0s padding-right ease-in-out; | ||
19 | } | ||
20 | |||
21 | .scrollbar-wrapper { | ||
22 | overflow-x: hidden !important; | ||
23 | margin-right: 0 !important; | ||
24 | |||
25 | &::-webkit-scrollbar { | ||
26 | display: none; | ||
27 | } | ||
28 | } | ||
29 | |||
30 | a { | ||
31 | display: inline-block; | ||
32 | width: 100%; | ||
33 | overflow: hidden; | ||
34 | } | ||
35 | |||
36 | .svg-icon { | ||
37 | margin-right: 5px; | ||
38 | } | ||
39 | |||
40 | .sub-el-icon { | ||
41 | margin-right: 12px; | ||
42 | margin-left: -2px; | ||
43 | } | ||
44 | |||
45 | .el-menu { | ||
46 | background-color: transparent !important; | ||
47 | border: none; | ||
48 | height: 100%; | ||
49 | width: 100% !important; | ||
50 | } | ||
51 | |||
52 | // menu hover | ||
53 | .el-menu--collapse .el-submenu__title, | ||
54 | .el-menu--collapse .submenu-title-noDropdown { | ||
55 | margin-left: 0px !important; | ||
56 | } | ||
57 | |||
58 | // 有子级 | ||
59 | .el-submenu__title { | ||
60 | padding-left: 10px !important; | ||
61 | color: $menuText; | ||
62 | height: 42px; | ||
63 | background: linear-gradient(90deg, #013874 0%, #081B56 100%); | ||
64 | margin-bottom: 8px; | ||
65 | |||
66 | &:hover { | ||
67 | color: $subMenuActiveText !important; | ||
68 | background: linear-gradient(90deg, #1D66DC 0%, #081B56 100%); | ||
69 | |||
70 | .svg-icon, | ||
71 | i, | ||
72 | span { | ||
73 | color: $subMenuActiveText !important; | ||
74 | } | ||
75 | } | ||
76 | } | ||
77 | |||
78 | // 没有子级 | ||
79 | .submenu-title-noDropdown { | ||
80 | color: $menuText; | ||
81 | padding-left: 20px; | ||
82 | margin-bottom: 8px; | ||
83 | background: linear-gradient(90deg, #013874 0%, #081B56 100%); | ||
84 | |||
85 | &:hover { | ||
86 | color: $menuActiveText !important; | ||
87 | background: linear-gradient(90deg, #1D66DC 0%, #081B56 100%); | ||
88 | |||
89 | .svg-icon { | ||
90 | color: #1ea6f8 !important; | ||
91 | } | ||
92 | |||
93 | i { | ||
94 | color: #1ea6f8 !important; | ||
95 | } | ||
96 | } | ||
97 | } | ||
98 | |||
99 | .submenu-title-noDropdown.is-active, | ||
100 | .el-submenu__title.is-active { | ||
101 | color: $menuActiveText; | ||
102 | background: linear-gradient(90deg, #1D66DC 0%, #081B56 100%); | ||
103 | |||
104 | .svg-icon { | ||
105 | color: #1ea6f8 !important; | ||
106 | } | ||
107 | |||
108 | i { | ||
109 | color: #1ea6f8 !important; | ||
110 | } | ||
111 | } | ||
112 | |||
113 | .submenu-title-noDropdown, | ||
114 | .el-submenu__title { | ||
115 | font-weight: 600; | ||
116 | font-size: $sideBarFontSize; | ||
117 | |||
118 | // margin: 0 10px; | ||
119 | >i { | ||
120 | color: $subMenuActiveText !important; | ||
121 | transform: rotate(90deg); | ||
122 | -webkit-transform: rotate(90deg); | ||
123 | -moz-transform: rotate(90deg); | ||
124 | -ms-transform: rotate(90deg); | ||
125 | -o-transform: rotate(90deg); | ||
126 | margin-right: 10px; | ||
127 | } | ||
128 | |||
129 | .svg-icon { | ||
130 | font-size: 18px; | ||
131 | margin-top: -5px; | ||
132 | } | ||
133 | } | ||
134 | |||
135 | .el-submenu.is-opened>.el-submenu__title .el-submenu__icon-arrow { | ||
136 | transform: rotateZ(0deg) !important; | ||
137 | -webkit-transform: rotateZ(0deg) !important; | ||
138 | -moz-transform: rotateZ(0deg) !important; | ||
139 | -ms-transform: rotateZ(0deg) !important; | ||
140 | -o-transform: rotateZ(0deg) !important; | ||
141 | } | ||
142 | |||
143 | .is-active>.el-submenu__title { | ||
144 | color: #fff !important; | ||
145 | } | ||
146 | |||
147 | & .nest-menu .el-submenu>.el-submenu__title, | ||
148 | & .el-submenu .el-menu-item { | ||
149 | &.is-active { | ||
150 | background-color: $subMenuHover !important; | ||
151 | color: $menuActiveText !important; | ||
152 | } | ||
153 | |||
154 | &:hover { | ||
155 | background-color: $subMenuHover !important; | ||
156 | color: $menuActiveText !important; | ||
157 | } | ||
158 | |||
159 | min-width: 130px !important; | ||
160 | background-color: transparent !important; | ||
161 | font-weight: 600; | ||
162 | font-size: $sideBarFontSize; | ||
163 | margin: 0 10px; | ||
164 | // border-radius: 6px; | ||
165 | } | ||
166 | } | ||
167 | |||
168 | .hideSidebar { | ||
169 | .sidebar-container { | ||
170 | width: 54px !important; | ||
171 | } | ||
172 | |||
173 | .submenu-title-noDropdown { | ||
174 | padding: 0 !important; | ||
175 | position: relative; | ||
176 | |||
177 | .el-tooltip { | ||
178 | padding: 0 !important; | ||
179 | |||
180 | .svg-icon { | ||
181 | margin-left: 16px; | ||
182 | } | ||
183 | |||
184 | .sub-el-icon { | ||
185 | margin-left: 19px; | ||
186 | } | ||
187 | } | ||
188 | } | ||
189 | |||
190 | .el-submenu { | ||
191 | overflow: hidden; | ||
192 | |||
193 | &>.el-submenu__title { | ||
194 | padding: 0 !important; | ||
195 | |||
196 | .svg-icon { | ||
197 | margin-left: 16px; | ||
198 | } | ||
199 | |||
200 | .sub-el-icon { | ||
201 | margin-left: 19px; | ||
202 | } | ||
203 | |||
204 | .el-submenu__icon-arrow { | ||
205 | display: none; | ||
206 | } | ||
207 | } | ||
208 | } | ||
209 | |||
210 | .el-menu--collapse { | ||
211 | .el-submenu { | ||
212 | &>.el-submenu__title { | ||
213 | &>span { | ||
214 | height: 0; | ||
215 | width: 0; | ||
216 | overflow: hidden; | ||
217 | visibility: hidden; | ||
218 | display: inline-block; | ||
219 | } | ||
220 | } | ||
221 | } | ||
222 | } | ||
223 | } | ||
224 | |||
225 | .el-menu--collapse .el-menu .el-submenu { | ||
226 | min-width: $sideBarWidth !important; | ||
227 | } | ||
228 | |||
229 | // mobile responsive | ||
230 | .mobile { | ||
231 | .main-container { | ||
232 | margin-left: 0px; | ||
233 | } | ||
234 | |||
235 | .sidebar-container { | ||
236 | transition: transform 0.28s; | ||
237 | width: $sideBarWidth !important; | ||
238 | } | ||
239 | |||
240 | &.hideSidebar { | ||
241 | .sidebar-container { | ||
242 | pointer-events: none; | ||
243 | transition-duration: 0.3s; | ||
244 | transform: translate3d(-$sideBarWidth, 0, 0); | ||
245 | } | ||
246 | } | ||
247 | } | ||
248 | |||
249 | .withoutAnimation { | ||
250 | |||
251 | .main-container, | ||
252 | .sidebar-container { | ||
253 | transition: none; | ||
254 | } | ||
255 | } | ||
256 | } | ||
257 | |||
258 | // when menu collapsed | ||
259 | .el-menu--vertical { | ||
260 | &>.el-menu { | ||
261 | .svg-icon { | ||
262 | margin-right: 16px; | ||
263 | } | ||
264 | |||
265 | .sub-el-icon { | ||
266 | margin-right: 12px; | ||
267 | margin-left: -2px; | ||
268 | } | ||
269 | } | ||
270 | |||
271 | .nest-menu .el-submenu>.el-submenu__title, | ||
272 | .el-menu-item { | ||
273 | width: calc(100% - 12px); | ||
274 | border-top-right-radius: 8px; | ||
275 | border-bottom-right-radius: 8px; | ||
276 | font-weight: 600 !important; | ||
277 | font-size: 15px !important; | ||
278 | background-color: $menuHover !important; | ||
279 | color: $menuText !important; | ||
280 | |||
281 | &:hover { | ||
282 | background-color: $menuHover !important; | ||
283 | opacity: .9; | ||
284 | |||
285 | .svg-icon, | ||
286 | i, | ||
287 | span { | ||
288 | color: $menuText; | ||
289 | } | ||
290 | } | ||
291 | } | ||
292 | |||
293 | // the scroll bar appears when the subMenu is too long | ||
294 | >.el-menu--popup { | ||
295 | max-height: 100vh; | ||
296 | overflow-y: auto; | ||
297 | background-color: #32ACFE !important; | ||
298 | border-top-right-radius: 8px; | ||
299 | border-bottom-right-radius: 8px; | ||
300 | min-width: 140px; | ||
301 | padding: 12px 0; | ||
302 | |||
303 | &::-webkit-scrollbar-track-piece { | ||
304 | background: #d3dce6; | ||
305 | } | ||
306 | |||
307 | &::-webkit-scrollbar { | ||
308 | width: 6px; | ||
309 | } | ||
310 | |||
311 | &::-webkit-scrollbar-thumb { | ||
312 | background: #99a9bf; | ||
313 | border-radius: 20px; | ||
314 | } | ||
315 | } | ||
316 | } | ||
317 | |||
318 | .el-submenu__title { | ||
319 | display: flex; | ||
320 | align-items: center; | ||
321 | } | ||
322 | |||
323 | .el-submenu__title span { | ||
324 | white-space: normal; | ||
325 | word-break: break-all; | ||
326 | line-height: 20px; | ||
327 | flex: 1; | ||
328 | padding-right: 20px; | ||
329 | } | ||
330 | |||
331 | .el-menu-item { | ||
332 | height: 42px; | ||
333 | display: flex; | ||
334 | align-items: center; | ||
335 | padding-right: 20px !important; | ||
336 | } | ||
337 | |||
338 | .el-menu-item span { | ||
339 | white-space: normal; | ||
340 | word-break: break-all; | ||
341 | line-height: 20px; | ||
342 | flex: 1; | ||
343 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
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 => { | ... | ... |
... | @@ -62,7 +62,7 @@ function handleErrorData(status) { | ... | @@ -62,7 +62,7 @@ function handleErrorData(status) { |
62 | case 401: | 62 | case 401: |
63 | Message.error("由于长时间未操作,请重新登录!"); | 63 | Message.error("由于长时间未操作,请重新登录!"); |
64 | router.replace({ | 64 | router.replace({ |
65 | path: "/login", | 65 | path: "/login/jg", |
66 | query: { | 66 | query: { |
67 | redirect: router.history.current.fullPath, | 67 | redirect: router.history.current.fullPath, |
68 | }, | 68 | }, | ... | ... |
... | @@ -260,3 +260,26 @@ function openDownloadDialog (url, saveName) { | ... | @@ -260,3 +260,26 @@ function openDownloadDialog (url, saveName) { |
260 | } | 260 | } |
261 | aLink.dispatchEvent(event); | 261 | aLink.dispatchEvent(event); |
262 | } | 262 | } |
263 | |||
264 | |||
265 | |||
266 | |||
267 | export function judgeListComplete (list) { | ||
268 | function judgeObjectComplete (obj) { | ||
269 | let flag = false | ||
270 | for (const key in obj) { | ||
271 | if (obj[key] == '' && key != 'index') { | ||
272 | flag = true | ||
273 | } | ||
274 | } | ||
275 | return flag | ||
276 | } | ||
277 | let isNotComplete = list.findIndex(item => { | ||
278 | return judgeObjectComplete(item) === true | ||
279 | }) | ||
280 | if (isNotComplete > -1) { | ||
281 | return false | ||
282 | } else { | ||
283 | return true | ||
284 | } | ||
285 | } | ... | ... |
... | @@ -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 | ... | ... |
... | @@ -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> | ... | ... |
... | @@ -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> | ... | ... |
... | @@ -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> | ... | ... |
... | @@ -99,17 +99,17 @@ | ... | @@ -99,17 +99,17 @@ |
99 | </template> | 99 | </template> |
100 | 100 | ||
101 | <script> | 101 | <script> |
102 | // 接收报文查询 | 102 | // 接收报文查询 |
103 | // 引入表格头部数据 | 103 | // 引入表格头部数据 |
104 | import data from "./data"; | 104 | import data from "./data"; |
105 | // 引入table混入方法 | 105 | // 引入table混入方法 |
106 | import tableMixin from "@/mixins/tableMixin.js"; | 106 | import tableMixin from "@/mixins/tableMixin.js"; |
107 | import { getReceiveDataReportPage } from "@/api/dataReport.js"; | 107 | import { getReceiveDataReportPage } from "@/api/dataReport.js"; |
108 | // 引入详情弹框 | 108 | // 引入详情弹框 |
109 | import dataDetails from "@/components/EditDialog"; | 109 | import dataDetails from "@/components/EditDialog"; |
110 | //引入日期处理方法 | 110 | //引入日期处理方法 |
111 | import { timeFormat } from "@/utils/operation"; | 111 | import { timeFormat } from "@/utils/operation"; |
112 | export default { | 112 | export default { |
113 | name: "jsbwcx", | 113 | name: "jsbwcx", |
114 | mixins: [tableMixin], | 114 | mixins: [tableMixin], |
115 | // 注册组件 | 115 | // 注册组件 |
... | @@ -189,14 +189,28 @@ | ... | @@ -189,14 +189,28 @@ |
189 | render: (h, scope) => { | 189 | render: (h, scope) => { |
190 | return ( | 190 | return ( |
191 | <div> | 191 | <div> |
192 | { | ||
193 | scope.row.receiveState == 2 ? | ||
194 | <el-button | ||
195 | type="text" | ||
196 | style="color:#67C23A" | ||
197 | onClick={() => { | ||
198 | this.handleDetails(scope.row); | ||
199 | }} | ||
200 | > | ||
201 | 修改 | ||
202 | <i class="el-icon-d-arrow-right"></i> | ||
203 | </el-button> : | ||
192 | <el-button | 204 | <el-button |
193 | type="primary" | 205 | type="text" |
194 | onClick={() => { | 206 | onClick={() => { |
195 | this.handleDetails(scope.row); | 207 | this.handleDetails(scope.row); |
196 | }} | 208 | }} |
197 | > | 209 | > |
198 | 详情 | 210 | 详情 |
211 | <i class="el-icon-d-arrow-right"></i> | ||
199 | </el-button> | 212 | </el-button> |
213 | } | ||
200 | </div> | 214 | </div> |
201 | ) | 215 | ) |
202 | } | 216 | } |
... | @@ -225,7 +239,6 @@ | ... | @@ -225,7 +239,6 @@ |
225 | getReceiveDataReportPage({ ...this.form, ...this.formData }).then( | 239 | getReceiveDataReportPage({ ...this.form, ...this.formData }).then( |
226 | (res) => { | 240 | (res) => { |
227 | if (res.code === 200) { | 241 | if (res.code === 200) { |
228 | console.log("菜单列表", res); | ||
229 | let { total, records, current } = res.result; | 242 | let { total, records, current } = res.result; |
230 | this.tableData.total = total; | 243 | this.tableData.total = total; |
231 | this.tableData.data = records ? records : []; | 244 | this.tableData.data = records ? records : []; |
... | @@ -276,12 +289,12 @@ | ... | @@ -276,12 +289,12 @@ |
276 | } | 289 | } |
277 | }, | 290 | }, |
278 | } | 291 | } |
279 | } | 292 | } |
280 | </script> | 293 | </script> |
281 | <style scoped lang="scss"> | 294 | <style scoped lang="scss"> |
282 | // 引入表单整体样式 | 295 | // 引入表单整体样式 |
283 | @import "~@/styles/public.scss"; | 296 | // // @import "~@/styles/public.scss"; |
284 | // 引入当前css | 297 | // 引入当前css |
285 | @import "./index.scss"; | 298 | @import "./index.scss"; |
286 | </style> | 299 | </style> |
287 | 300 | ... | ... |
... | @@ -9,7 +9,7 @@ | ... | @@ -9,7 +9,7 @@ |
9 | <el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input> | 9 | <el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input> |
10 | </el-form-item> | 10 | </el-form-item> |
11 | <el-form-item prop="password"> | 11 | <el-form-item prop="password"> |
12 | <el-input type="password" class="password" @keyup.native="login('user')" v-model="user.password" | 12 | <el-input type="password" class="password" @keyup.enter.native="login('user')" v-model="user.password" |
13 | placeholder="请输入密码"></el-input> | 13 | placeholder="请输入密码"></el-input> |
14 | </el-form-item> | 14 | </el-form-item> |
15 | <el-form-item class="login-btn"> | 15 | <el-form-item class="login-btn"> | ... | ... |
src/views/loginjg/index.vue
0 → 100644
1 | <template> | ||
2 | <div class="bg"> | ||
3 | <div class="login-inner-bg login"> | ||
4 | <h2>{{ productName }}</h2> | ||
5 | <div class="user_style"> | ||
6 | <h3>欢迎登录</h3> | ||
7 | <el-form :model="user" :rules="rules" ref="user" id="loginform" class="demo-ruleForm"> | ||
8 | <el-form-item prop="account"> | ||
9 | <el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input> | ||
10 | </el-form-item> | ||
11 | <el-form-item prop="password"> | ||
12 | <el-input type="password" class="password" @keyup.native="login('user')" v-model="user.password" | ||
13 | placeholder="请输入密码"></el-input> | ||
14 | </el-form-item> | ||
15 | <el-form-item class="login-btn"> | ||
16 | <el-button type="primary" style="width: 100%" @click="login('user')">登录</el-button> | ||
17 | </el-form-item> | ||
18 | </el-form> | ||
19 | </div> | ||
20 | </div> | ||
21 | </div> | ||
22 | </template> | ||
23 | |||
24 | <script> | ||
25 | import { loginIn } from "@/api/login.js"; | ||
26 | import { api, getAction } from "@/api/manageApi"; | ||
27 | export default { | ||
28 | name: "Login", | ||
29 | data () { | ||
30 | return { | ||
31 | user: { | ||
32 | account: "", | ||
33 | password: "", | ||
34 | checkStatus: false, | ||
35 | }, | ||
36 | productName: "", | ||
37 | rules: { | ||
38 | account: [{ required: true, message: "请填写帐号", trigger: "blur" }], | ||
39 | password: [{ required: true, message: "请填写密码", trigger: "blur" }], | ||
40 | }, | ||
41 | }; | ||
42 | }, | ||
43 | created () { | ||
44 | const params = {}; | ||
45 | const queryOptions = { | ||
46 | conditionGroup: { | ||
47 | conditions: [ | ||
48 | { | ||
49 | property: "code", | ||
50 | value: "BDCJGPT", | ||
51 | operator: "EQ", | ||
52 | }, | ||
53 | ], | ||
54 | queryRelation: "AND", | ||
55 | }, | ||
56 | }; | ||
57 | params.queryOptions = JSON.stringify(queryOptions); | ||
58 | //根据子系统code获取子系统详细信息 | ||
59 | getAction(api.subsystem, params).then((res) => { | ||
60 | if (res.status === 1) { | ||
61 | this.productName = res.content[0].name; | ||
62 | this.$store.dispatch("products/setData", res.content[0]); | ||
63 | } else { | ||
64 | this.$message.error({ message: res.message, showClose: true }); | ||
65 | } | ||
66 | }); | ||
67 | }, | ||
68 | mounted () { | ||
69 | // this.checkUserName(); | ||
70 | }, | ||
71 | methods: { | ||
72 | //记住用户名 | ||
73 | checkUserName: function (flag) { | ||
74 | this.user.checkStatus = flag; | ||
75 | if (this.user.checkStatus) { | ||
76 | localStorage.setItem("accountId", this.user.account); | ||
77 | let name = localStorage.getItem("accountId"); | ||
78 | if (name === "") { | ||
79 | return; | ||
80 | } else { | ||
81 | this.user.account = name; | ||
82 | } | ||
83 | } else { | ||
84 | this.user.account = localStorage.getItem("accountId"); | ||
85 | } | ||
86 | }, | ||
87 | login (user) { | ||
88 | var self = this; | ||
89 | this.$refs[user].validate((valid) => { | ||
90 | if (valid) { | ||
91 | loginIn(self.user.account, self.user.password) | ||
92 | .then((res) => { | ||
93 | if (res.status === 1) { | ||
94 | //存储token | ||
95 | sessionStorage.setItem("token", `Bearer ${res.content}`); | ||
96 | //登录成功后需判断有无重定向,没有重定向则跳转首页 | ||
97 | this.$router.replace(this.$route.query.redirect || "/"); | ||
98 | } else { | ||
99 | //错误处理 | ||
100 | } | ||
101 | }) | ||
102 | .catch((error) => { | ||
103 | // console.dir(error); | ||
104 | }); | ||
105 | } | ||
106 | }); | ||
107 | }, | ||
108 | }, | ||
109 | components: {}, | ||
110 | }; | ||
111 | </script> | ||
112 | <style scoped lang="scss"> | ||
113 | .username, | ||
114 | .password { | ||
115 | position: relative; | ||
116 | |||
117 | &:before { | ||
118 | content: ""; | ||
119 | display: block; | ||
120 | width: 16px; | ||
121 | height: 16px; | ||
122 | position: absolute; | ||
123 | left: 10px; | ||
124 | top: 7px; | ||
125 | background-size: 100% 100%; | ||
126 | } | ||
127 | |||
128 | /deep/ .el-input__inner { | ||
129 | text-indent: 24px; | ||
130 | border: 1px solid rgba(11, 161, 248, 0.4); | ||
131 | background-color: rgba(6, 135, 205, 0.3) !important; | ||
132 | } | ||
133 | } | ||
134 | |||
135 | .username::before { | ||
136 | background-image: url(../../image/username.png); | ||
137 | } | ||
138 | |||
139 | .password::before { | ||
140 | background-image: url(../../image/password.png); | ||
141 | } | ||
142 | |||
143 | .bg { | ||
144 | width: 100%; | ||
145 | height: 100%; | ||
146 | min-width: 1440px; | ||
147 | min-height: 560px; | ||
148 | background: url(../../image/loginBoxBg.png) no-repeat; | ||
149 | background-size: 100% 100%; | ||
150 | overflow: hidden; | ||
151 | position: relative; | ||
152 | } | ||
153 | |||
154 | .login-inner-bg { | ||
155 | background: url(../../image/loginBg.png) no-repeat; | ||
156 | width: 21.6%; | ||
157 | height: 43%; | ||
158 | min-width: 360px; | ||
159 | min-height: 380px; | ||
160 | top: 30%; | ||
161 | right: 20%; | ||
162 | position: absolute; | ||
163 | background-size: 100% 100%; | ||
164 | box-sizing: border-box; | ||
165 | padding: 56px; | ||
166 | |||
167 | h2 { | ||
168 | width: 100%; | ||
169 | font-size: 36px; | ||
170 | font-weight: 700; | ||
171 | color: #fff; | ||
172 | text-align: center; | ||
173 | white-space: nowrap; | ||
174 | position: absolute; | ||
175 | right: 0; | ||
176 | top: -70px; | ||
177 | background-image: linear-gradient( | ||
178 | 180deg, | ||
179 | rgba(99, 163, 255, 1) 0, | ||
180 | rgba(99, 163, 255, 1) 0, | ||
181 | rgba(182, 220, 255, 1) 49.731445%, | ||
182 | rgba(114, 190, 255, 1) 100%, | ||
183 | rgba(114, 190, 255, 1) 100% | ||
184 | ); | ||
185 | overflow-wrap: break-word; | ||
186 | color: rgba(255, 255, 255, 1); | ||
187 | font-size: 36px; | ||
188 | font-family: AlimamaShuHeiTi-Bold; | ||
189 | -webkit-background-clip: text; | ||
190 | -webkit-text-fill-color: transparent; | ||
191 | } | ||
192 | } | ||
193 | |||
194 | .login { | ||
195 | .user_style { | ||
196 | h3 { | ||
197 | color: #fff; | ||
198 | font-size: 22px; | ||
199 | font-weight: normal; | ||
200 | text-align: center; | ||
201 | margin: 16px auto 34px; | ||
202 | font-weight: 400; | ||
203 | } | ||
204 | } | ||
205 | |||
206 | .btn { | ||
207 | width: 100%; | ||
208 | height: 6vh; | ||
209 | background-color: #00c2de; | ||
210 | border-radius: 5px; | ||
211 | font-size: 1.4vw; | ||
212 | color: #ffffff; | ||
213 | } | ||
214 | |||
215 | .btn:hover { | ||
216 | cursor: pointer; | ||
217 | background-color: #2d8cf0; | ||
218 | } | ||
219 | } | ||
220 | |||
221 | .login #loginform { | ||
222 | .el-form-item { | ||
223 | margin-bottom: 24px !important; | ||
224 | } | ||
225 | |||
226 | .login-btn { | ||
227 | margin-top: 40px !important; | ||
228 | } | ||
229 | |||
230 | .el-button { | ||
231 | font-size: 18px; | ||
232 | background: #0d8cc0 !important; | ||
233 | color: #ffffff !important; | ||
234 | cursor: pointer !important; | ||
235 | } | ||
236 | |||
237 | .el-input__inner { | ||
238 | width: 100% !important; | ||
239 | } | ||
240 | |||
241 | .el-checkbox__label { | ||
242 | color: #fff; | ||
243 | } | ||
244 | } | ||
245 | |||
246 | .inputUser .ivu-input { | ||
247 | padding: 6px 24px !important; | ||
248 | border: 1px solid #9f9f9f !important; | ||
249 | } | ||
250 | </style> |
src/views/loginsb/index.vue
0 → 100644
1 | <template> | ||
2 | <div class="bg"> | ||
3 | <div class="title"> | ||
4 | <img src="../../image/bdclogo.png" alt=""> | ||
5 | <h2>{{ productName }}</h2> | ||
6 | </div> | ||
7 | <div class="login-inner-bg login"> | ||
8 | <div class="user_style"> | ||
9 | <h3>用户登录</h3> | ||
10 | <el-form :model="user" :rules="rules" ref="user" id="loginform" class="demo-ruleForm"> | ||
11 | <el-form-item prop="account"> | ||
12 | <el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input> | ||
13 | </el-form-item> | ||
14 | <el-form-item prop="password"> | ||
15 | <el-input type="password" class="password" @keyup.native="login('user')" v-model="user.password" | ||
16 | placeholder="请输入密码" show-password></el-input> | ||
17 | </el-form-item> | ||
18 | <el-form-item prop="yz"> | ||
19 | <el-input class="yz" @keyup.native="login('user')" v-model="user.yz" | ||
20 | placeholder="请输入验证码"></el-input> | ||
21 | </el-form-item> | ||
22 | <el-form-item class="login-btn"> | ||
23 | <el-button type="primary" style="width: 100%" @click="login('user')">登录</el-button> | ||
24 | </el-form-item> | ||
25 | </el-form> | ||
26 | </div> | ||
27 | </div> | ||
28 | </div> | ||
29 | </template> | ||
30 | |||
31 | <script> | ||
32 | import { loginIn } from "@/api/login.js"; | ||
33 | import { api, getAction } from "@/api/manageApi"; | ||
34 | export default { | ||
35 | name: "Login", | ||
36 | data () { | ||
37 | return { | ||
38 | user: { | ||
39 | account: "", | ||
40 | password: "", | ||
41 | yz: "", | ||
42 | checkStatus: false, | ||
43 | }, | ||
44 | productName: "", | ||
45 | rules: { | ||
46 | account: [{ required: true, message: "请填写帐号", trigger: "blur" }], | ||
47 | password: [{ required: true, message: "请填写密码", trigger: "blur" }], | ||
48 | }, | ||
49 | }; | ||
50 | }, | ||
51 | created () { | ||
52 | const params = {}; | ||
53 | const queryOptions = { | ||
54 | conditionGroup: { | ||
55 | conditions: [ | ||
56 | { | ||
57 | property: "code", | ||
58 | value: "BDCJGPT", | ||
59 | operator: "EQ", | ||
60 | }, | ||
61 | ], | ||
62 | queryRelation: "AND", | ||
63 | }, | ||
64 | }; | ||
65 | params.queryOptions = JSON.stringify(queryOptions); | ||
66 | //根据子系统code获取子系统详细信息 | ||
67 | getAction(api.subsystem, params).then((res) => { | ||
68 | if (res.status === 1) { | ||
69 | this.productName = res.content[0].name; | ||
70 | this.$store.dispatch("products/setData", res.content[0]); | ||
71 | } else { | ||
72 | this.$message.error({ message: res.message, showClose: true }); | ||
73 | } | ||
74 | }); | ||
75 | }, | ||
76 | mounted () { | ||
77 | // this.checkUserName(); | ||
78 | }, | ||
79 | methods: { | ||
80 | //记住用户名 | ||
81 | checkUserName: function (flag) { | ||
82 | this.user.checkStatus = flag; | ||
83 | if (this.user.checkStatus) { | ||
84 | localStorage.setItem("accountId", this.user.account); | ||
85 | let name = localStorage.getItem("accountId"); | ||
86 | if (name === "") { | ||
87 | return; | ||
88 | } else { | ||
89 | this.user.account = name; | ||
90 | } | ||
91 | } else { | ||
92 | this.user.account = localStorage.getItem("accountId"); | ||
93 | } | ||
94 | }, | ||
95 | login (user) { | ||
96 | var self = this; | ||
97 | this.$refs[user].validate((valid) => { | ||
98 | if (valid) { | ||
99 | loginIn(self.user.account, self.user.password) | ||
100 | .then((res) => { | ||
101 | if (res.status === 1) { | ||
102 | this.$store.dispatch('business/setInitRules', "layout1") | ||
103 | //存储token | ||
104 | sessionStorage.setItem("token", `Bearer ${res.content}`); | ||
105 | //登录成功后需判断有无重定向,没有重定向则跳转首页 | ||
106 | this.$router.replace(this.$route.query.redirect || "/"); | ||
107 | } else { | ||
108 | console.log(res); | ||
109 | this.$message.error({ message: res.message }) | ||
110 | } | ||
111 | }) | ||
112 | .catch((error) => { | ||
113 | // console.dir(error); | ||
114 | }); | ||
115 | } | ||
116 | }); | ||
117 | }, | ||
118 | }, | ||
119 | components: {}, | ||
120 | }; | ||
121 | </script> | ||
122 | <style scoped lang="scss"> | ||
123 | .username, | ||
124 | .password, | ||
125 | .yz { | ||
126 | position: relative; | ||
127 | |||
128 | &:before { | ||
129 | content: ""; | ||
130 | display: block; | ||
131 | width: 16px; | ||
132 | height: 16px; | ||
133 | position: absolute; | ||
134 | left: 10px; | ||
135 | top: 7px; | ||
136 | background-size: 100% 100%; | ||
137 | } | ||
138 | |||
139 | /deep/ .el-input__inner { | ||
140 | color: #000 !important; | ||
141 | text-indent: 24px; | ||
142 | // border: 1px solid rgba(11, 161, 248, 0.4); | ||
143 | // background-color: rgba(6, 135, 205, 0.3) !important; | ||
144 | } | ||
145 | } | ||
146 | |||
147 | .username::before { | ||
148 | background-image: url(../../image/userlogo.png); | ||
149 | } | ||
150 | |||
151 | .password::before { | ||
152 | background-image: url(../../image/passlogo.png); | ||
153 | } | ||
154 | .yz::before { | ||
155 | background-image: url(../../image/yzlogo.png); | ||
156 | } | ||
157 | |||
158 | .bg { | ||
159 | width: 100%; | ||
160 | height: 100%; | ||
161 | min-width: 1440px; | ||
162 | min-height: 560px; | ||
163 | background: url(../../image/loginBoxsb.png) no-repeat; | ||
164 | background-size: 100% 100%; | ||
165 | overflow: hidden; | ||
166 | position: relative; | ||
167 | } | ||
168 | .title { | ||
169 | width: 24%; | ||
170 | height: 6%; | ||
171 | top: 20%; | ||
172 | right: 38%; | ||
173 | position: absolute; | ||
174 | img { | ||
175 | width: 60px; | ||
176 | height: 60px; | ||
177 | top: 0%; | ||
178 | left: 2%; | ||
179 | position: absolute; | ||
180 | } | ||
181 | h2 { | ||
182 | top: 25%; | ||
183 | left: 22%; | ||
184 | position: absolute; | ||
185 | width: 383px; | ||
186 | height: 42px; | ||
187 | font-size: 28px; | ||
188 | font-weight: 600; | ||
189 | color: #ffffff; | ||
190 | text-shadow: 0px 4px 4px #002c95; | ||
191 | } | ||
192 | } | ||
193 | .login-inner-bg { | ||
194 | background: white; | ||
195 | width: 24.6%; | ||
196 | height: 47%; | ||
197 | min-width: 360px; | ||
198 | min-height: 380px; | ||
199 | top: 30%; | ||
200 | right: 38%; | ||
201 | position: absolute; | ||
202 | background-size: 100% 100%; | ||
203 | box-sizing: border-box; | ||
204 | padding: 56px; | ||
205 | } | ||
206 | |||
207 | .login { | ||
208 | .user_style { | ||
209 | h3 { | ||
210 | font-weight: normal; | ||
211 | text-align: center; | ||
212 | margin: -10px auto 28px; | ||
213 | font-weight: 400; | ||
214 | width: 125px; | ||
215 | height: 29px; | ||
216 | font-size: 20px; | ||
217 | font-family: Source Han Sans CN; | ||
218 | font-weight: 400; | ||
219 | color: #333333; | ||
220 | } | ||
221 | } | ||
222 | |||
223 | .btn { | ||
224 | width: 100%; | ||
225 | height: 6vh; | ||
226 | background-color: #00c2de; | ||
227 | border-radius: 5px; | ||
228 | font-size: 1.4vw; | ||
229 | color: #000; | ||
230 | } | ||
231 | |||
232 | .btn:hover { | ||
233 | cursor: pointer; | ||
234 | background-color: #2d8cf0; | ||
235 | } | ||
236 | } | ||
237 | |||
238 | .login #loginform { | ||
239 | .el-form-item { | ||
240 | margin-bottom: 24px !important; | ||
241 | } | ||
242 | |||
243 | .login-btn { | ||
244 | margin-top: 30px !important; | ||
245 | } | ||
246 | |||
247 | .el-button { | ||
248 | font-size: 18px; | ||
249 | border-radius: 0; | ||
250 | background: #4162d8 !important; | ||
251 | color: #ffffff !important; | ||
252 | cursor: pointer !important; | ||
253 | } | ||
254 | |||
255 | .el-input__inner { | ||
256 | width: 100% !important; | ||
257 | } | ||
258 | |||
259 | .el-checkbox__label { | ||
260 | color: #fff; | ||
261 | } | ||
262 | } | ||
263 | |||
264 | .inputUser .ivu-input { | ||
265 | padding: 6px 24px !important; | ||
266 | border: 1px solid #9f9f9f !important; | ||
267 | } | ||
268 | </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 | ... | ... |
src/views/sthj/components/Result.vue
deleted
100644 → 0
1 | <!-- | ||
2 | 功能:结果 | ||
3 | 作者:calliope | ||
4 | --> | ||
5 | <template> | ||
6 | <div class='result'> | ||
7 | <p>响应xml</p> | ||
8 | <el-input type="textarea" disabled :rows="6" class="resulttext" placeholder="响应xml" v-model="REPMSGXML"> | ||
9 | </el-input> | ||
10 | <p>错误信息</p> | ||
11 | <el-input type="textarea" disabled :rows="6" class="resulttext" placeholder="错误信息" v-model="ERRORINFO"> | ||
12 | </el-input> | ||
13 | </div> | ||
14 | </template> | ||
15 | <script> | ||
16 | import { getReceiveDataReportResult } from "@/api/dataReport.js"; | ||
17 | export default { | ||
18 | components: {}, | ||
19 | props: { | ||
20 | formData: { | ||
21 | type: Object, | ||
22 | default: {} | ||
23 | } | ||
24 | }, | ||
25 | data () { | ||
26 | return { | ||
27 | REPMSGXML: '', | ||
28 | ERRORINFO: '', | ||
29 | } | ||
30 | }, | ||
31 | created () { | ||
32 | getReceiveDataReportResult(this.formData.bsmReport).then(res => { | ||
33 | let data = res.result | ||
34 | this.REPMSGXML = data.REPMSGXML | ||
35 | this.ERRORINFO = data.ERRORINFO | ||
36 | }) | ||
37 | } | ||
38 | } | ||
39 | </script> | ||
40 | <style scoped lang='scss'> | ||
41 | @import '~@/styles/public.scss'; | ||
42 | |||
43 | .result { | ||
44 | padding: 15px; | ||
45 | |||
46 | p { | ||
47 | color: #ffffff; | ||
48 | line-height: 26px; | ||
49 | font-size: 18px; | ||
50 | } | ||
51 | |||
52 | /deep/.el-textarea__inner { | ||
53 | min-height: 27vh !important; | ||
54 | background-color: #08346F !important; | ||
55 | color: #ffffff; | ||
56 | border: none !important; | ||
57 | } | ||
58 | |||
59 | } | ||
60 | </style> |
... | @@ -32,7 +32,7 @@ class data { | ... | @@ -32,7 +32,7 @@ class data { |
32 | }, | 32 | }, |
33 | }, | 33 | }, |
34 | { | 34 | { |
35 | prop: 'ywh', | 35 | prop: 'YWH', |
36 | label: '业务号', | 36 | label: '业务号', |
37 | render: (h, scope) => { | 37 | render: (h, scope) => { |
38 | return ( | 38 | return ( |
... | @@ -41,43 +41,25 @@ class data { | ... | @@ -41,43 +41,25 @@ class data { |
41 | } | 41 | } |
42 | }, | 42 | }, |
43 | { | 43 | { |
44 | prop: 'djlx', | 44 | prop: 'DJLX', |
45 | label: '登记类型', | 45 | label: '登记类型', |
46 | render: (h, scope) => { | 46 | render: (h, scope) => { |
47 | return ( | 47 | return ( |
48 | <el-select class="width100" value={scope.row[scope.column.property]} | 48 | <el-input value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input> |
49 | onChange={(val) => { scope.row[scope.column.property] = val }}> | ||
50 | { | ||
51 | store.getters.dicData['A21'].map(option => { | ||
52 | return ( | ||
53 | <el-option label={option.DNAME} value={option.DCODE}></el-option> | ||
54 | ) | ||
55 | }) | ||
56 | } | ||
57 | </el-select> | ||
58 | ) | 49 | ) |
59 | } | 50 | } |
60 | }, | 51 | }, |
61 | { | 52 | { |
62 | prop: 'qllx', | 53 | prop: 'QLLX', |
63 | label: '权利类型', | 54 | label: '权利类型', |
64 | render: (h, scope) => { | 55 | render: (h, scope) => { |
65 | return ( | 56 | return ( |
66 | <el-select class="width100" value={scope.row[scope.column.property]} | 57 | <el-input value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input> |
67 | onChange={(val) => { scope.row[scope.column.property] = val }}> | ||
68 | { | ||
69 | store.getters.dicData['A8'].map(option => { | ||
70 | return ( | ||
71 | <el-option label={option.DNAME} value={option.DCODE}></el-option> | ||
72 | ) | ||
73 | }) | ||
74 | } | ||
75 | </el-select> | ||
76 | ) | 58 | ) |
77 | } | 59 | } |
78 | }, | 60 | }, |
79 | { | 61 | { |
80 | prop: 'bdcdyh', | 62 | prop: 'BDCDYH', |
81 | label: '不动产单元号', | 63 | label: '不动产单元号', |
82 | render: (h, scope) => { | 64 | render: (h, scope) => { |
83 | return ( | 65 | return ( |
... | @@ -86,7 +68,7 @@ class data { | ... | @@ -86,7 +68,7 @@ class data { |
86 | } | 68 | } |
87 | }, | 69 | }, |
88 | { | 70 | { |
89 | prop: 'zszmh', | 71 | prop: 'ZSZMH', |
90 | label: '证书证明号', | 72 | label: '证书证明号', |
91 | render: (h, scope) => { | 73 | render: (h, scope) => { |
92 | return ( | 74 | return ( |
... | @@ -95,7 +77,7 @@ class data { | ... | @@ -95,7 +77,7 @@ class data { |
95 | } | 77 | } |
96 | }, | 78 | }, |
97 | { | 79 | { |
98 | prop: 'sfsb', | 80 | prop: 'SFSB', |
99 | label: '是否上报', | 81 | label: '是否上报', |
100 | render: (h, scope) => { | 82 | render: (h, scope) => { |
101 | return ( | 83 | return ( |
... | @@ -113,14 +95,14 @@ class data { | ... | @@ -113,14 +95,14 @@ class data { |
113 | } | 95 | } |
114 | }, | 96 | }, |
115 | { | 97 | { |
116 | prop: 'bwid', | 98 | prop: 'BWID', |
117 | label: '报文ID', | 99 | label: '报文ID', |
118 | render: (h, scope) => { | 100 | render: (h, scope) => { |
119 | return ( | 101 | return ( |
120 | <el-input value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input> | 102 | <el-input value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input> |
121 | ) | 103 | ) |
122 | } | 104 | } |
123 | }, | 105 | } |
124 | ] | 106 | ] |
125 | } | 107 | } |
126 | } | 108 | } |
... | @@ -131,3 +113,4 @@ export { | ... | @@ -131,3 +113,4 @@ export { |
131 | } | 113 | } |
132 | 114 | ||
133 | 115 | ||
116 | ... | ... |
... | @@ -31,7 +31,7 @@ class data { | ... | @@ -31,7 +31,7 @@ class data { |
31 | }, | 31 | }, |
32 | }, | 32 | }, |
33 | { | 33 | { |
34 | prop: 'ywh', | 34 | prop: 'YWH', |
35 | label: '业务号', | 35 | label: '业务号', |
36 | render: (h, scope) => { | 36 | render: (h, scope) => { |
37 | return ( | 37 | return ( |
... | @@ -40,7 +40,7 @@ class data { | ... | @@ -40,7 +40,7 @@ class data { |
40 | } | 40 | } |
41 | }, | 41 | }, |
42 | { | 42 | { |
43 | prop: 'bdcdyh', | 43 | prop: 'BDCDYH', |
44 | label: '不动产单元号', | 44 | label: '不动产单元号', |
45 | render: (h, scope) => { | 45 | render: (h, scope) => { |
46 | return ( | 46 | return ( |
... | @@ -49,7 +49,7 @@ class data { | ... | @@ -49,7 +49,7 @@ class data { |
49 | } | 49 | } |
50 | }, | 50 | }, |
51 | { | 51 | { |
52 | prop: 'bwid', | 52 | prop: 'BWID', |
53 | label: '报文ID', | 53 | label: '报文ID', |
54 | render: (h, scope) => { | 54 | render: (h, scope) => { |
55 | return ( | 55 | return ( |
... | @@ -67,3 +67,4 @@ export { | ... | @@ -67,3 +67,4 @@ export { |
67 | } | 67 | } |
68 | 68 | ||
69 | 69 | ||
70 | ... | ... |
This diff is collapsed.
Click to expand it.
... | @@ -192,13 +192,14 @@ class data { | ... | @@ -192,13 +192,14 @@ class data { |
192 | return ( | 192 | return ( |
193 | <div> | 193 | <div> |
194 | <el-button | 194 | <el-button |
195 | size="mini" | 195 | type="text" |
196 | type="primary" | 196 | style="color:#67C23A" |
197 | onClick={() => { | 197 | onClick={() => { |
198 | vm.handleEdit(scope.row); | 198 | vm.handleEdit(scope.row); |
199 | }} | 199 | }} |
200 | > | 200 | > |
201 | 编辑 | 201 | 修改 |
202 | <i class="el-icon-d-arrow-right"></i> | ||
202 | </el-button> | 203 | </el-button> |
203 | </div> | 204 | </div> |
204 | ); | 205 | ); | ... | ... |
... | @@ -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> | ... | ... |
... | @@ -156,15 +156,31 @@ export default { | ... | @@ -156,15 +156,31 @@ export default { |
156 | render: (h, scope) => { | 156 | render: (h, scope) => { |
157 | return ( | 157 | return ( |
158 | <div> | 158 | <div> |
159 | { | ||
160 | scope.row.exchangeState == 2 ? | ||
159 | <el-button | 161 | <el-button |
160 | size="mini" | 162 | size="mini" |
161 | type="primary" | 163 | type="text" |
164 | style="color:#67C23A" | ||
165 | onClick={() => { | ||
166 | this.handleDetail(scope.row); | ||
167 | }} | ||
168 | > | ||
169 | 修改 | ||
170 | <i class="el-icon-d-arrow-right"></i> | ||
171 | </el-button> : | ||
172 | <el-button | ||
173 | size="mini" | ||
174 | type="text" | ||
162 | onClick={() => { | 175 | onClick={() => { |
163 | this.handleDetail(scope.row); | 176 | this.handleDetail(scope.row); |
164 | }} | 177 | }} |
165 | > | 178 | > |
166 | 详情 | 179 | 详情 |
180 | <i class="el-icon-d-arrow-right"></i> | ||
167 | </el-button> | 181 | </el-button> |
182 | } | ||
183 | |||
168 | </div> | 184 | </div> |
169 | ); | 185 | ); |
170 | }, | 186 | }, |
... | @@ -219,7 +235,6 @@ export default { | ... | @@ -219,7 +235,6 @@ export default { |
219 | </script> | 235 | </script> |
220 | <style scoped lang="scss"> | 236 | <style scoped lang="scss"> |
221 | // 引入页面公共样式 | 237 | // 引入页面公共样式 |
222 | @import "~@/styles/public.scss"; | ||
223 | @import "./index.scss"; | 238 | @import "./index.scss"; |
224 | </style> | 239 | </style> |
225 | 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; | ... | ... |
... | @@ -84,7 +84,7 @@ | ... | @@ -84,7 +84,7 @@ |
84 | }, | 84 | }, |
85 | mounted () { | 85 | mounted () { |
86 | if (this.userInfo) { | 86 | if (this.userInfo) { |
87 | this.getUserInfo(this.userInfo.id) | 87 | this.getUserInfo(this.userInfo) |
88 | } | 88 | } |
89 | this.sexList = [ | 89 | this.sexList = [ |
90 | { | 90 | { |
... | @@ -105,8 +105,8 @@ | ... | @@ -105,8 +105,8 @@ |
105 | ] | 105 | ] |
106 | }, | 106 | }, |
107 | methods: { | 107 | methods: { |
108 | getUserInfo (id) { | 108 | getUserInfo (p) { |
109 | getAction(`${api.users}/${id}`).then((res) => { | 109 | getAction(`${api.users}/${p.id}`).then((res) => { |
110 | if (res.status === 1) { | 110 | if (res.status === 1) { |
111 | this.form = res.content | 111 | this.form = res.content |
112 | } else { | 112 | } else { |
... | @@ -136,12 +136,10 @@ | ... | @@ -136,12 +136,10 @@ |
136 | .user-info { | 136 | .user-info { |
137 | margin: 0.1875rem 1.0417rem; | 137 | margin: 0.1875rem 1.0417rem; |
138 | background: #ffffff; | 138 | background: #ffffff; |
139 | max-height: 90%; | ||
140 | overflow-y: auto; | 139 | overflow-y: auto; |
141 | .form-wrapper { | 140 | .form-wrapper { |
142 | padding: 24px 120px 0px; | 141 | padding: 0px 120px 0px; |
143 | .el-form-item { | 142 | .el-form-item { |
144 | margin-bottom: 24px; | ||
145 | /deep/.el-form-item__label { | 143 | /deep/.el-form-item__label { |
146 | color: #ffffff; | 144 | color: #ffffff; |
147 | } | 145 | } |
... | @@ -152,9 +150,12 @@ | ... | @@ -152,9 +150,12 @@ |
152 | border: 1px solid #6bc1fc; | 150 | border: 1px solid #6bc1fc; |
153 | } | 151 | } |
154 | } | 152 | } |
153 | .el-form-item--small.el-form-item { | ||
154 | margin-bottom: 16px; | ||
155 | } | ||
155 | } | 156 | } |
156 | .bottom-wrapper { | 157 | .bottom-wrapper { |
157 | padding: 32px 120px 24px; | 158 | padding: 0px 120px 0px; |
158 | text-align: right; | 159 | text-align: right; |
159 | } | 160 | } |
160 | } | 161 | } | ... | ... |
1 | <!-- | ||
2 | * @Author: xiaomiao 1158771342@qq.com | ||
3 | * @Date: 2023-03-08 15:30:43 | ||
4 | * @LastEditors: xiaomiao 1158771342@qq.com | ||
5 | * @LastEditTime: 2023-03-08 16:33:50 | ||
6 | * @FilePath: \监管系统\js-web-jianguan\src\views\system\information copy\index.vue | ||
7 | * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE | ||
8 | --> | ||
1 | <template> | 9 | <template> |
2 | <div class="information from-clues"> | 10 | <div class="information from-clues"> |
3 | <div class="from-clues-header"> | 11 | <div class="from-clues-header"> |
... | @@ -13,7 +21,7 @@ | ... | @@ -13,7 +21,7 @@ |
13 | </el-row> | 21 | </el-row> |
14 | </el-form> | 22 | </el-form> |
15 | </div> | 23 | </div> |
16 | <div class="from-clues-content"> | 24 | <div class="from-clues-content boxin"> |
17 | <div class="contentbox"> | 25 | <div class="contentbox"> |
18 | <base-set v-if="isshow" :userInfo="userData" /> | 26 | <base-set v-if="isshow" :userInfo="userData" /> |
19 | <password-edit v-if="!isshow" :userInfo="userData" /> | 27 | <password-edit v-if="!isshow" :userInfo="userData" /> |
... | @@ -61,9 +69,6 @@ | ... | @@ -61,9 +69,6 @@ |
61 | @import "~@/styles/mixin.scss"; | 69 | @import "~@/styles/mixin.scss"; |
62 | @import "~@/styles/public.scss"; | 70 | @import "~@/styles/public.scss"; |
63 | .information { | 71 | .information { |
64 | .btnColRight { | ||
65 | margin-top: 20px; | ||
66 | } | ||
67 | /deep/.content { | 72 | /deep/.content { |
68 | .el-input__inner { | 73 | .el-input__inner { |
69 | background: none; | 74 | background: none; |
... | @@ -71,15 +76,10 @@ | ... | @@ -71,15 +76,10 @@ |
71 | .user-info { | 76 | .user-info { |
72 | background: none; | 77 | background: none; |
73 | } | 78 | } |
79 | |||
80 | .boxin { | ||
81 | height: 79%; | ||
74 | } | 82 | } |
75 | /deep/.el-tabs { | ||
76 | .el-tabs__content { | ||
77 | height: 100%; | ||
78 | width: 100%; | ||
79 | } | ||
80 | } | ||
81 | .contentbox { | ||
82 | height: 3.0854rem; | ||
83 | } | 83 | } |
84 | } | 84 | } |
85 | </style> | 85 | </style> | ... | ... |
... | @@ -69,13 +69,21 @@ | ... | @@ -69,13 +69,21 @@ |
69 | userInfo: { | 69 | userInfo: { |
70 | handler: function (val) { | 70 | handler: function (val) { |
71 | if (val) { | 71 | if (val) { |
72 | this.userId = val.id | 72 | this.getid(val) |
73 | } | ||
73 | } | 74 | } |
74 | } | 75 | } |
76 | |||
77 | }, | ||
78 | mounted () { | ||
79 | if (this.userInfo) { | ||
80 | this.getid(this.userInfo) | ||
75 | } | 81 | } |
76 | }, | 82 | }, |
77 | mounted () { }, | ||
78 | methods: { | 83 | methods: { |
84 | getid (val) { | ||
85 | this.userId = val.id | ||
86 | }, | ||
79 | validatorConfirmPassword (rule, value, callback) { | 87 | validatorConfirmPassword (rule, value, callback) { |
80 | const { newPassword } = this.form | 88 | const { newPassword } = this.form |
81 | if (value !== newPassword) { | 89 | if (value !== newPassword) { |
... | @@ -106,7 +114,6 @@ | ... | @@ -106,7 +114,6 @@ |
106 | .user-info { | 114 | .user-info { |
107 | margin: 36px 200px; | 115 | margin: 36px 200px; |
108 | background: #ffffff; | 116 | background: #ffffff; |
109 | max-height: 90%; | ||
110 | overflow-y: auto; | 117 | overflow-y: auto; |
111 | .form-wrapper { | 118 | .form-wrapper { |
112 | padding: 24px 120px 0px; | 119 | padding: 24px 120px 0px; | ... | ... |
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,13 +64,13 @@ | ... | @@ -91,13 +64,13 @@ |
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, |
... | @@ -256,8 +229,8 @@ | ... | @@ -256,8 +229,8 @@ |
256 | this.visible = false | 229 | this.visible = false |
257 | } | 230 | } |
258 | } | 231 | } |
259 | } | 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,29 +13,22 @@ | ... | @@ -13,29 +13,22 @@ |
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, |
... | @@ -230,15 +223,17 @@ | ... | @@ -230,15 +223,17 @@ |
230 | this.getTableList() | 223 | this.getTableList() |
231 | }, | 224 | }, |
232 | }, | 225 | }, |
233 | }; | 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"; |
232 | .btnColRight { | ||
239 | margin-top: 20px; | 233 | margin-top: 20px; |
240 | } | 234 | } |
241 | /deep/.el-table__expand-icon { | 235 | |
236 | /deep/.el-table__expand-icon { | ||
242 | color: #fff; | 237 | color: #fff; |
243 | } | 238 | } |
244 | </style> | 239 | </style> | ... | ... |
... | @@ -8,12 +8,12 @@ class data extends filter { | ... | @@ -8,12 +8,12 @@ class data extends filter { |
8 | { | 8 | { |
9 | prop: "name", | 9 | prop: "name", |
10 | label: "角色名称", | 10 | label: "角色名称", |
11 | width: 330 | 11 | width: 130 |
12 | }, | 12 | }, |
13 | { | 13 | { |
14 | prop: "type", | 14 | prop: "type", |
15 | label: "类别", | 15 | label: "类别", |
16 | width: 400 | 16 | width: 200 |
17 | }, | 17 | }, |
18 | { | 18 | { |
19 | prop: "description", | 19 | prop: "description", | ... | ... |
... | @@ -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,21 +22,21 @@ | ... | @@ -28,21 +22,21 @@ |
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: { |
... | @@ -111,7 +105,7 @@ | ... | @@ -111,7 +105,7 @@ |
111 | .concat([ | 105 | .concat([ |
112 | { | 106 | { |
113 | label: "排序", | 107 | label: "排序", |
114 | width: 380, | 108 | width: 100, |
115 | render: (h, scope) => { | 109 | render: (h, scope) => { |
116 | return ( | 110 | return ( |
117 | <div> | 111 | <div> |
... | @@ -141,7 +135,7 @@ | ... | @@ -141,7 +135,7 @@ |
141 | .concat([ | 135 | .concat([ |
142 | { | 136 | { |
143 | label: "操作", | 137 | label: "操作", |
144 | width: 380, | 138 | width: 280, |
145 | render: (h, scope) => { | 139 | render: (h, scope) => { |
146 | return ( | 140 | return ( |
147 | <div> | 141 | <div> |
... | @@ -212,12 +206,13 @@ | ... | @@ -212,12 +206,13 @@ |
212 | </div> | 206 | </div> |
213 | ); | 207 | ); |
214 | }, | 208 | }, |
209 | |||
210 | }]), | ||
215 | }, | 211 | }, |
216 | ]), | ||
217 | data: [], | 212 | data: [], |
213 | } | ||
218 | }, | 214 | }, |
219 | }; | 215 | |
220 | }, | ||
221 | created () { | 216 | created () { |
222 | this.getTableData(); | 217 | this.getTableData(); |
223 | this.getTableList() | 218 | this.getTableList() |
... | @@ -450,13 +445,14 @@ | ... | @@ -450,13 +445,14 @@ |
450 | this.getTableData(); | 445 | this.getTableData(); |
451 | }, | 446 | }, |
452 | }, | 447 | }, |
453 | }; | 448 | }; |
454 | </script> | 449 | </script> |
455 | <style scoped lang="scss"> | 450 | <style scoped lang="scss"> |
456 | @import "~@/styles/mixin.scss"; | 451 | @import "~@/styles/mixin.scss"; |
457 | @import "~@/styles/public.scss"; | 452 | |
458 | .btnColRight { | 453 | // @import "~@/styles/public.scss"; |
454 | .btnColRight { | ||
459 | margin-left: -30px; | 455 | margin-left: -30px; |
460 | margin-top: 20px; | 456 | margin-top: 20px; |
461 | } | 457 | } |
462 | </style> | 458 | </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> | ... | ... |
1 | /* | ||
2 | * @Author: xiaomiao 1158771342@qq.com | ||
3 | * @Date: 2023-01-30 17:59:51 | ||
4 | * @LastEditors: xiaomiao 1158771342@qq.com | ||
5 | * @LastEditTime: 2023-03-08 15:09:15 | ||
6 | * @FilePath: \监管系统\js-web-jianguan\src\views\system\users\data\index.js | ||
7 | * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE | ||
8 | */ | ||
1 | import filter from '@/utils/filter.js' | 9 | import filter from '@/utils/filter.js' |
2 | class data extends filter { | 10 | class data extends filter { |
3 | constructor() { | 11 | constructor() { |
... | @@ -13,7 +21,7 @@ class data extends filter { | ... | @@ -13,7 +21,7 @@ class data extends filter { |
13 | { | 21 | { |
14 | prop: "name", | 22 | prop: "name", |
15 | label: "姓名", | 23 | label: "姓名", |
16 | width: 300 | 24 | width: 100 |
17 | }, | 25 | }, |
18 | { | 26 | { |
19 | prop: "loginName", | 27 | prop: "loginName", | ... | ... |
... | @@ -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> | ... | ... |
-
Please register or sign in to post a comment