b16b26e4 by xiaomiao
2 parents 6494364f c961dd90
Showing 50 changed files with 1628 additions and 1661 deletions
1 { 1 {
2 "TITLE": "汉中市数据上报系统", 2 "TITLE": "汉中市数据上报系统",
3 "THEME": "sb", 3 "THEME": "sb",
4 "CODE": "BDCSBPT",
4 "SERVERAPI": "/bdcsjsb", 5 "SERVERAPI": "/bdcsjsb",
5 "MANAGEMENTAPI": "http: //192.168.2.236/management" 6 "MANAGEMENTAPI": "http://192.168.2.38:8090/management"
6 } 7 }
...\ No newline at end of file ...\ No newline at end of file
......
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-24 15:07:01
5 -->
1 <template> 6 <template>
2 <div id="app"> 7 <div id="app">
3 <router-view /> 8 <router-view />
4 </div> 9 </div>
5 </template>
...\ No newline at end of file ...\ No newline at end of file
10 </template>
......
1 /* 1 /*
2 * @Description: 这个是所有api的前缀配置文件 2 * @Description: 这个是所有api的前缀配置文件
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-03-21 16:26:55 4 * @LastEditTime: 2023-03-24 16:51:18
5 */ 5 */
6 export default { 6 export default {
7 SERVERAPI: '/bdcsjsb', //赵千 7 SERVERAPI: '/bdcsjsb', //赵千
8 MANAGEMENTAPI: 'http://192.168.2.236/management' 8 MANAGEMENTAPI: 'http://192.168.2.38:8090/management'
9 } 9 }
...\ No newline at end of file ...\ No newline at end of file
......
1 /*
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-23 17:19:52
5 */
1 import request from "@/utils/request"; 6 import request from "@/utils/request";
2 import SERVER from "./config"; 7 // import SERVER from "./config";
8 let SERVER = JSON.parse(localStorage.getItem('ApiUrl'))
9 // console.log(SERVER, 'SERVERSERVER');
3 10
4 export function loginIn(username, password) { 11 export function loginIn (username, password) {
5 return request({ 12 return request({
6 url: `${SERVER.MANAGEMENTAPI}/login?username=${username}&password=${password}`, 13 url: `${SERVER.MANAGEMENTAPI}/login?username=${username}&password=${password}`,
7 method: "post", 14 method: "post",
8 }); 15 });
9 } 16 }
10 export function logout() { 17 export function logout () {
11 return request({ 18 return request({
12 url: `${SERVER.MANAGEMENTAPI}/logout`, 19 url: `${SERVER.MANAGEMENTAPI}/logout`,
13 method: "post", 20 method: "post",
......
1 import request from '@/utils/request' 1 import request from '@/utils/request'
2 import SERVER from "./config"; 2 // import SERVER from "./config";
3 let SERVER = JSON.parse(localStorage.getItem('ApiUrl'))
3 const workflow = '/workflow' 4 const workflow = '/workflow'
4 const log = '/log' 5 const log = '/log'
5 const crud = '/crud' 6 const crud = '/crud'
......
1 /*
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-24 09:28:25
5 */
1 import request from '@/utils/request' 6 import request from '@/utils/request'
2 // let SERVER = JSON.parse(localStorage.getItem('ApiUrl')) 7 // let SERVER = JSON.parse(localStorage.getItem('ApiUrl'))
3 let SERVER = JSON.parse(localStorage.getItem('ApiUrl')) 8 let SERVER = JSON.parse(localStorage.getItem('ApiUrl'))
...@@ -9,14 +14,6 @@ export function getUserInfo () { ...@@ -9,14 +14,6 @@ export function getUserInfo () {
9 }) 14 })
10 } 15 }
11 16
12 // // 获取菜单信息
13 // export function getMenuInfo () {
14 // return request({
15 // url: SERVER.SERVERAPI + '/rest/user/getUserAuthorizationMenus',
16 // method: 'get',
17 // })
18 // }
19
20 // 获取菜单信息 17 // 获取菜单信息
21 export function getMenuInfo (data) { 18 export function getMenuInfo (data) {
22 return request({ 19 return request({
......
1 <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1673321301365" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3462" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><path d="M910.617673 211.45497c-29.726022-40.739866-65.373916-76.582189-105.953124-106.533338-31.447223-23.211654-65.346287-42.500976-101.132328-57.574277-17.797341-7.496741-38.217417 1.723248-44.400233 20.018939l0 0c-5.586229 16.531512 2.569522 34.533514 18.648732 41.309848 30.91408 13.027711 60.204174 29.700439 87.38421 49.761334 35.128055 25.927509 65.986877 56.9562 91.719958 92.223425 53.42477 73.218582 81.662905 159.989831 81.662905 250.935146 0 57.551764-11.264555 113.364931-33.480532 165.888168-21.464871 50.748824-52.199872 96.333022-91.352591 135.484717-39.152718 39.153742-84.736916 69.888743-135.484717 91.352591-52.523237 22.215978-108.336404 33.480532-165.888168 33.480532-57.552787 0-113.364931-11.264555-165.889191-33.480532-50.748824-21.464871-96.331999-52.199872-135.484717-91.352591-39.152718-39.152718-69.888743-84.736916-91.353614-135.484717-22.214954-52.523237-33.479509-108.336404-33.479509-165.888168 0-90.842984 28.180829-177.536462 81.495082-250.706949 25.681916-35.244712 56.481386-66.265216 91.545996-92.199888 27.118638-20.056801 56.344263-36.737716 87.192851-49.78794 16.072047-6.798846 24.204262-24.812105 18.594497-41.336454l0 0c-6.207375-18.285458-26.638707-27.478841-44.424792-19.958564-35.712363 15.098883-69.537749 34.399461-100.915387 57.607022-40.505529 29.958312-76.084862 65.791425-105.750509 106.506732C52.210106 296.342312 19.618826 396.581294 19.618826 501.596046c0 66.5016 13.031804 131.033335 38.734186 191.800327 24.818245 58.677401 60.340273 111.367437 105.58064 156.606781 45.240367 45.240367 97.930403 80.763418 156.607804 105.581664 60.766992 25.701358 125.297704 38.734186 191.800327 38.734186 66.502623 0 131.033335-13.031804 191.800327-38.734186 58.677401-24.818245 111.366414-60.341297 156.606781-105.581664 45.240367-45.239344 80.762395-97.92938 105.581664-156.606781 25.701358-60.766992 38.734186-125.297704 38.734186-191.800327C1005.062695 396.463614 972.403878 296.133557 910.617673 211.45497z" fill="#ffffff" p-id="3463"></path><path d="M509.270842 388.009058 509.270842 388.009058c20.261463 0 36.839023-16.57756 36.839023-36.839023L546.109866 75.454506c0-20.261463-16.57756-36.839023-36.839023-36.839023l0 0c-20.261463 0-36.839023 16.57756-36.839023 36.839023l0 275.715529C472.431819 371.431497 489.00938 388.009058 509.270842 388.009058z" fill="#ffffff" p-id="3464"></path></svg>
...\ No newline at end of file ...\ No newline at end of file
1 <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1673321301365" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3462" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><path d="M910.617673 211.45497c-29.726022-40.739866-65.373916-76.582189-105.953124-106.533338-31.447223-23.211654-65.346287-42.500976-101.132328-57.574277-17.797341-7.496741-38.217417 1.723248-44.400233 20.018939l0 0c-5.586229 16.531512 2.569522 34.533514 18.648732 41.309848 30.91408 13.027711 60.204174 29.700439 87.38421 49.761334 35.128055 25.927509 65.986877 56.9562 91.719958 92.223425 53.42477 73.218582 81.662905 159.989831 81.662905 250.935146 0 57.551764-11.264555 113.364931-33.480532 165.888168-21.464871 50.748824-52.199872 96.333022-91.352591 135.484717-39.152718 39.153742-84.736916 69.888743-135.484717 91.352591-52.523237 22.215978-108.336404 33.480532-165.888168 33.480532-57.552787 0-113.364931-11.264555-165.889191-33.480532-50.748824-21.464871-96.331999-52.199872-135.484717-91.352591-39.152718-39.152718-69.888743-84.736916-91.353614-135.484717-22.214954-52.523237-33.479509-108.336404-33.479509-165.888168 0-90.842984 28.180829-177.536462 81.495082-250.706949 25.681916-35.244712 56.481386-66.265216 91.545996-92.199888 27.118638-20.056801 56.344263-36.737716 87.192851-49.78794 16.072047-6.798846 24.204262-24.812105 18.594497-41.336454l0 0c-6.207375-18.285458-26.638707-27.478841-44.424792-19.958564-35.712363 15.098883-69.537749 34.399461-100.915387 57.607022-40.505529 29.958312-76.084862 65.791425-105.750509 106.506732C52.210106 296.342312 19.618826 396.581294 19.618826 501.596046c0 66.5016 13.031804 131.033335 38.734186 191.800327 24.818245 58.677401 60.340273 111.367437 105.58064 156.606781 45.240367 45.240367 97.930403 80.763418 156.607804 105.581664 60.766992 25.701358 125.297704 38.734186 191.800327 38.734186 66.502623 0 131.033335-13.031804 191.800327-38.734186 58.677401-24.818245 111.366414-60.341297 156.606781-105.581664 45.240367-45.239344 80.762395-97.92938 105.581664-156.606781 25.701358-60.766992 38.734186-125.297704 38.734186-191.800327C1005.062695 396.463614 972.403878 296.133557 910.617673 211.45497z" fill="#ffffff" p-id="3463"></path><path d="M509.270842 388.009058 509.270842 388.009058c20.261463 0 36.839023-16.57756 36.839023-36.839023L546.109866 75.454506c0-20.261463-16.57756-36.839023-36.839023-36.839023l0 0c-20.261463 0-36.839023 16.57756-36.839023 36.839023l0 275.715529C472.431819 371.431497 489.00938 388.009058 509.270842 388.009058z" p-id="3464"></path></svg>
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -29,7 +29,7 @@ export default { ...@@ -29,7 +29,7 @@ export default {
29 sidebarRight, 29 sidebarRight,
30 }, 30 },
31 computed: { 31 computed: {
32 ...mapGetters(["sidebar", "dicData", "userInfo"]), 32 ...mapGetters(["sidebar", "dicData", , "permission_routes", "userInfo"]),
33 logoName () { 33 logoName () {
34 return this.dicData['sysCode'] && this.dicData['sysCode'].filter(item => 34 return this.dicData['sysCode'] && this.dicData['sysCode'].filter(item =>
35 item.DCODE == "systemTitle" 35 item.DCODE == "systemTitle"
...@@ -55,9 +55,9 @@ export default { ...@@ -55,9 +55,9 @@ export default {
55 }) 55 })
56 .catch((error) => { 56 .catch((error) => {
57 // console.dir(error); 57 // console.dir(error);
58 }); 58 })
59 }, 59 }
60 }, 60 }
61 }; 61 };
62 </script> 62 </script>
63 <style lang="scss" scoped> 63 <style lang="scss" scoped>
......
1 <!--
2 * @Description: log
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-23 16:29:12
5 -->
1 <template> 6 <template>
2 <el-menu router :default-active="activeMenu" mode="horizontal"> 7 <el-menu router :default-active="activeMenu" mode="horizontal">
3 <!-- 权限菜单 --> 8 <!-- 权限菜单 -->
4 <sidebar-item v-for="route in permission_routes.slice(3, 6)" :key="route.path" :item="route" 9 <sidebar-item v-for="route in permission_routes.slice(4, 7)" :key="route.path" :item="route"
5 :base-path="route.path" /> 10 :base-path="route.path" />
6 <!-- 菜单全部展示 --> 11 <!-- 菜单全部展示 -->
7 <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> 12 <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> -->
......
...@@ -2,14 +2,14 @@ ...@@ -2,14 +2,14 @@
2 * @Author: xiaomiao 1158771342@qq.com 2 * @Author: xiaomiao 1158771342@qq.com
3 * @Date: 2023-01-10 09:03:06 3 * @Date: 2023-01-10 09:03:06
4 * @LastEditors: Please set LastEditors 4 * @LastEditors: Please set LastEditors
5 * @LastEditTime: 2023-03-22 10:43:26 5 * @LastEditTime: 2023-03-23 16:29:24
6 * @FilePath: \监管系统\js-web-jianguan\src\layout\components\Sidebar\sidebarRight.vue 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 7 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
8 --> 8 -->
9 <template> 9 <template>
10 <el-menu router :default-active="activeMenu" mode="horizontal"> 10 <el-menu router :default-active="activeMenu" mode="horizontal">
11 <!-- 权限菜单 --> 11 <!-- 权限菜单 -->
12 <sidebar-item v-for="route in permission_routes.slice(6, 9)" :key="route.path" :item="route" 12 <sidebar-item v-for="route in permission_routes.slice(7, 10)" :key="route.path" :item="route"
13 :base-path="route.path" /> 13 :base-path="route.path" />
14 <!-- 菜单全部展示 --> 14 <!-- 菜单全部展示 -->
15 <!-- <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" /> -->
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-03-20 14:22:35 4 * @LastEditTime: 2023-03-23 15:17:24
5 --> 5 -->
6 <template> 6 <template>
7 <div class="app-wrapper jgWrapper"> 7 <div class="app-wrapper jgWrapper">
...@@ -12,61 +12,60 @@ ...@@ -12,61 +12,60 @@
12 </div> 12 </div>
13 </template> 13 </template>
14 <script> 14 <script>
15 import { AppMain, Navbar, Sidebar, TagsView } from './components' 15 import { AppMain, Navbar, Sidebar, TagsView } from './components'
16 import ResizeMixin from './mixin/ResizeHandler' 16 import ResizeMixin from './mixin/ResizeHandler'
17 import { mapState } from 'vuex' 17 import { mapState } from 'vuex'
18 export default { 18 export default {
19 name: 'Layout', 19 name: 'Layout',
20 components: { 20 components: {
21 AppMain, 21 AppMain,
22 Navbar, 22 Navbar,
23 Sidebar, 23 Sidebar,
24 TagsView 24 TagsView
25 }, 25 },
26 created () { 26 created () {
27 console.log("hhh"); 27 this.$store.dispatch("products/setData", "BDCJGPT");
28 this.$store.dispatch("products/setData", "BDCJGPT"); 28 },
29 }, 29 mixins: [ResizeMixin],
30 mixins: [ResizeMixin], 30 computed: {
31 computed: { 31 ...mapState({
32 ...mapState({ 32 sidebar: state => state.app.sidebar,
33 sidebar: state => state.app.sidebar, 33 needTagsView: state => state.settings.tagsView,
34 needTagsView: state => state.settings.tagsView, 34 fixedHeader: state => state.settings.fixedHeader
35 fixedHeader: state => state.settings.fixedHeader 35 })
36 })
37 }
38 } 36 }
37 }
39 </script> 38 </script>
40 <style lang="scss"> 39 <style lang="scss">
41 @import "~@/styles/jgSidebar.scss"; 40 @import "~@/styles/jgSidebar.scss";
42 </style> 41 </style>
43 <style lang="scss" scoped> 42 <style lang="scss" scoped>
44 @import "~@/styles/mixin.scss"; 43 @import "~@/styles/mixin.scss";
45 44
46 .app-wrapper { 45 .app-wrapper {
47 @include clearfix; 46 @include clearfix;
48 position: relative; 47 position: relative;
49 height: 100%; 48 height: 100%;
50 width: 100%; 49 width: 100%;
51 min-width: 1280px; 50 min-width: 1280px;
52 background: url("~@/image/bg.png") no-repeat; 51 background: url("~@/image/bg.png") no-repeat;
53 background-size: 100% 100%; 52 background-size: 100% 100%;
54 padding: 12px; 53 padding: 12px;
55 box-sizing: border-box; 54 box-sizing: border-box;
56 55
57 &.mobile.openSidebar { 56 &.mobile.openSidebar {
58 position: fixed; 57 position: fixed;
59 top: 0; 58 top: 0;
60 }
61 } 59 }
60 }
62 61
63 .appMain { 62 .appMain {
64 // min-width: 1280px; 63 // min-width: 1280px;
65 height: calc(100vh - 101px) !important; 64 height: calc(100vh - 101px) !important;
66 box-sizing: border-box; 65 box-sizing: border-box;
67 66
68 .app-main { 67 .app-main {
69 height: 100%; 68 height: 100%;
70 }
71 } 69 }
70 }
72 </style> 71 </style>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
4 * @LastEditTime: 2023-03-22 10:23:46 4 * @LastEditTime: 2023-03-22 10:23:46
5 --> 5 -->
6 <template> 6 <template>
7 <section class="app-main"> 7 <section>
8 <transition name="fade-transform" mode="out-in"> 8 <transition name="fade-transform" mode="out-in">
9 <router-view /> 9 <router-view />
10 </transition> 10 </transition>
...@@ -20,14 +20,3 @@ export default { ...@@ -20,14 +20,3 @@ export default {
20 } 20 }
21 } 21 }
22 </script> 22 </script>
23 <style lang="scss" scoped>
24 .app-main {
25 height: calc(100vh - 74px);
26 overflow-x: hidden;
27 box-sizing: border-box;
28 flex: 1;
29 width: 100%;
30 background: #EAEBF0;
31 padding: 15px;
32 }
33 </style>
......
...@@ -6,15 +6,13 @@ ...@@ -6,15 +6,13 @@
6 <h4>不动产登记上报系统</h4> 6 <h4>不动产登记上报系统</h4>
7 </div> 7 </div>
8 <div class="right-menu"> 8 <div class="right-menu">
9 <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="hover" @command="handleCommand"> 9 <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="hover">
10 <div class="avatar-wrapper"> 10 <div class="user">
11 <span style="padding-right:10px">{{ name }}</span> 11 {{ userName }}
12 <img :src="avatar + '?imageView2/1/w/80/h/80'" class="user-avatar" /> 12 <span @click="onCancel">
13 <i class="el-icon-switch-button"></i>
14 </span>
13 </div> 15 </div>
14 <el-dropdown-menu slot="dropdown">
15 <el-dropdown-item command="a">个人中心</el-dropdown-item>
16 <el-dropdown-item command="b">退出</el-dropdown-item>
17 </el-dropdown-menu>
18 </el-dropdown> 16 </el-dropdown>
19 </div> 17 </div>
20 </div> 18 </div>
...@@ -23,17 +21,15 @@ ...@@ -23,17 +21,15 @@
23 <script> 21 <script>
24 import { mapGetters } from 'vuex' 22 import { mapGetters } from 'vuex'
25 import Breadcrumb from './Breadcrumb' 23 import Breadcrumb from './Breadcrumb'
26 import defaultSettings from '@/settings' 24 import { logout } from "@/api/login.js";
27 export default { 25 export default {
28 components: { 26 components: {
29 Breadcrumb 27 Breadcrumb
30 }, 28 },
31 computed: { 29 computed: {
32 ...mapGetters(['sidebar', 'avatar', 'name']) 30 ...mapGetters(["sidebar", "dicData", "userInfo"]),
33 }, 31 userName () {
34 data () { 32 return this.userInfo ? this.userInfo.name : ""
35 return {
36 title: defaultSettings.title
37 } 33 }
38 }, 34 },
39 methods: { 35 methods: {
...@@ -44,11 +40,22 @@ export default { ...@@ -44,11 +40,22 @@ export default {
44 themeChange (val) { 40 themeChange (val) {
45 this.$store.dispatch('app/updateTheme', val) 41 this.$store.dispatch('app/updateTheme', val)
46 }, 42 },
47 handleCommand (command) { 43 onCancel () {
48 if (command == 'a') { 44 logout()
49 } else { 45 .then((res) => {
50 46 sessionStorage.removeItem("token");
51 } 47 this.$store.dispatch("user/resetState");
48 this.$store.dispatch("permission/resetRoutes");
49 this.$router.replace({
50 path: "/sb",
51 query: {
52 redirect: this.$route.fullPath,
53 },
54 });
55 })
56 .catch((error) => {
57 // console.dir(error);
58 })
52 } 59 }
53 } 60 }
54 } 61 }
...@@ -79,45 +86,6 @@ export default { ...@@ -79,45 +86,6 @@ export default {
79 } 86 }
80 } 87 }
81 88
82 .NoticeBar {
83 position: absolute;
84 bottom: 0;
85 }
86
87 .el-dropdown-menu {
88 padding: 0 !important;
89 border: 1px solid #ebeef5;
90 box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
91 border-radius: 4px 0 0 4px 4px;
92
93 .el-dropdown-menu__item {
94 text-align: center;
95 margin-top: 0 !important;
96 font-size: 14px;
97 font-weight: 400;
98 color: #4a4a4a;
99 width: 140px;
100 height: 36px;
101 line-height: 36px;
102 }
103
104 .el-dropdown-menu__item:nth-child(6) {
105 border-top: 1px solid #ebeef5;
106 }
107
108 .popper__arrow {
109 top: -11px !important;
110 left: 110px !important;
111 transform: rotate(0deg) scale(2);
112 }
113
114 .el-dropdown-menu__item:not(.is-disabled):hover,
115 .el-dropdown-menu__item:focus {
116 background: #f6f7f9;
117 color: #4a4a4a;
118 }
119 }
120
121 .navbar { 89 .navbar {
122 height: $headerHeight; 90 height: $headerHeight;
123 overflow: hidden; 91 overflow: hidden;
...@@ -133,117 +101,12 @@ export default { ...@@ -133,117 +101,12 @@ export default {
133 width: 300px; 101 width: 300px;
134 } 102 }
135 103
136 .backdrop { 104 .right-menu-item {
137 flex: 1; 105 &.hover-effect {
138 width: 60%;
139 background-size: 100% 100%;
140 height: $headerHeight;
141 display: flex;
142 align-items: center;
143 }
144
145 .hamburger-container {
146 line-height: 43px;
147 height: 100%;
148 float: left;
149 cursor: pointer;
150 transition: background 0.3s;
151 -webkit-tap-highlight-color: transparent;
152
153 &:hover {
154 background: rgba(0, 0, 0, 0.025);
155 }
156 }
157
158 .breadcrumb-container {
159 float: left;
160 }
161
162 .right-menu {
163 float: right;
164 height: 100%;
165 line-height: 50px;
166 display: flex;
167 align-items: center;
168
169 .function {
170 margin: 0 15px;
171 cursor: pointer;
172 }
173
174 .shutdown {
175 font-size: 20px;
176 margin-left: 15px;
177 cursor: pointer;
178 }
179
180 .organization-item {
181 margin-right: 40px;
182 margin-top: -40px !important;
183 }
184
185 .item {
186 margin-right: 40px;
187 margin-top: -20px;
188 line-height: 18.4px;
189 cursor: pointer; 106 cursor: pointer;
190 position: relative; 107 transition: background 0.3s;
191
192 .item-box {
193 position: absolute;
194 top: -5px;
195 left: 3px;
196 width: 100%;
197 min-width: 25px;
198 height: 25px;
199 cursor: pointer;
200 z-index: 100;
201 }
202 }
203
204 &:focus {
205 outline: none;
206 }
207
208 .right-menu-item {
209 display: inline-block;
210 height: 100%;
211 font-size: 18px;
212 color: #fff;
213 vertical-align: text-bottom;
214
215 &.hover-effect {
216 cursor: pointer;
217 transition: background 0.3s;
218 display: flex;
219 align-items: center;
220
221 &:hover {
222 background: rgba(0, 0, 0, 0.025);
223 }
224 }
225 }
226
227 .avatar-wrapper {
228 position: relative;
229 display: flex; 108 display: flex;
230 height: 40px;
231 align-items: center; 109 align-items: center;
232
233 .user-avatar {
234 cursor: pointer;
235 width: 35px;
236 height: 35px;
237 border-radius: 50%;
238 }
239
240 .el-icon-caret-bottom {
241 cursor: pointer;
242 position: absolute;
243 right: -15px;
244 top: 17px;
245 font-size: 12px;
246 }
247 } 110 }
248 } 111 }
249 } 112 }
......
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-24 17:10:02
5 -->
1 <template> 6 <template>
2 <div v-if="!item.hidden"> 7 <div v-if="!item.hidden">
3 <template 8 <template
...@@ -65,9 +70,9 @@ export default { ...@@ -65,9 +70,9 @@ export default {
65 }) 70 })
66 71
67 // When there is only one child router, the child router is displayed by default 72 // When there is only one child router, the child router is displayed by default
68 if (showingChildren.length === 1) { 73 // if (showingChildren.length === 1) {
69 return true 74 // return true
70 } 75 // }
71 76
72 // Show parent if there are no child router to display 77 // Show parent if there are no child router to display
73 if (showingChildren.length === 0) { 78 if (showingChildren.length === 0) {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-03-06 16:18:21 4 * @LastEditTime: 2023-03-24 17:10:32
5 --> 5 -->
6 <template> 6 <template>
7 <div> 7 <div>
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
9 <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"
10 :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">
11 <!-- 权限菜单 --> 11 <!-- 权限菜单 -->
12 <sidebar-item v-for="route in permission_routes.slice(4)" :key="route.path" :item="route" 12 <sidebar-item v-for="route in permission_routes.slice(5)" :key="route.path" :item="route"
13 :base-path="route.path" /> 13 :base-path="route.path" />
14 <!-- 菜单全部展示 --> 14 <!-- 菜单全部展示 -->
15 <!-- <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" /> -->
...@@ -19,41 +19,38 @@ ...@@ -19,41 +19,38 @@
19 </template> 19 </template>
20 20
21 <script> 21 <script>
22 import { mapGetters } from 'vuex' 22 import { mapGetters } from 'vuex'
23 import Logo from './Logo' 23 import Logo from './Logo'
24 import defaultSettings from '@/settings' 24 import defaultSettings from '@/settings'
25 import SidebarItem from './SidebarItem' 25 import SidebarItem from './SidebarItem'
26 import variables from '@/styles/variables.scss' 26 import variables from '@/styles/variables.scss'
27 import { asyncRoutes } from '@/router' 27 import { asyncRoutes } from '@/router'
28 export default { 28 export default {
29 components: { SidebarItem, Logo }, 29 components: { SidebarItem, Logo },
30 data () { 30 data () {
31 return { 31 return {
32 title: defaultSettings.title 32 title: defaultSettings.title
33 }
34 },
35 computed: {
36 ...mapGetters(['permission_routes', 'sidebar']),
37 activeMenu () {
38 const route = this.$route
39 const { meta, path } = route
40 if (meta.activeMenu) {
41 return meta.activeMenu
33 } 42 }
43 return path
34 }, 44 },
35 created () { 45 variables () {
36 console.log(this.permission_routes); 46 return variables
37 },
38 computed: {
39 ...mapGetters(['permission_routes', 'sidebar']),
40 activeMenu () {
41 const route = this.$route
42 const { meta, path } = route
43 if (meta.activeMenu) {
44 return meta.activeMenu
45 }
46 return path
47 },
48 variables () {
49 return variables
50 },
51 asyncRoutes () {
52 return asyncRoutes
53 }
54 }, 47 },
55 mounted () { 48 asyncRoutes () {
56 49 return asyncRoutes
57 } 50 }
51 },
52 mounted () {
53 console.log(this.permission_routes.slice(5), 'permission_routes');
58 } 54 }
55 }
59 </script> 56 </script>
......
1 <template> 1 <template>
2 <div id="tags-view-container" class="tags-view-container"> 2 <div id="tags-view-container" class="tags-view-container">
3 <scroll-pane ref="scrollPane" class="tags-view-wrapper" @scroll="handleScroll"> 3 <scroll-pane ref="scrollPane" class="tags-view-wrapper" @scroll="handleScroll">
4 <router-link v-for="tag in visitedViews" ref="tag" :key="tag.path" :class="isActive(tag)?'active':''" 4 <router-link v-for="tag in visitedViews" ref="tag" :key="tag.path" :class="isActive(tag) ? 'active' : ''"
5 :to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }" tag="span" class="tags-view-item" 5 :to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }" tag="span" class="tags-view-item"
6 @click.middle.native="!isAffix(tag)?closeSelectedTag(tag):''" 6 @click.middle.native="!isAffix(tag) ? closeSelectedTag(tag) : ''" @contextmenu.prevent.native="openMenu(tag, $event)">
7 @contextmenu.prevent.native="openMenu(tag,$event)">
8 {{ tag.title }} 7 {{ tag.title }}
9 <span v-if="!isAffix(tag)" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" /> 8 <span v-if="!isAffix(tag)" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" />
10 </router-link> 9 </router-link>
11 </scroll-pane> 10 </scroll-pane>
12 <ul v-show="visible" :style="{left:left+'px',top:top+'px'}" class="contextmenu"> 11 <ul v-show="visible" :style="{ left: left + 'px', top: top + 'px' }" class="contextmenu">
13 <li @click="refreshSelectedTag(selectedTag)">Refresh</li> 12 <li @click="refreshSelectedTag(selectedTag)">Refresh</li>
14 <li v-if="!isAffix(selectedTag)" @click="closeSelectedTag(selectedTag)">Close</li> 13 <li v-if="!isAffix(selectedTag)" @click="closeSelectedTag(selectedTag)">Close</li>
15 <li @click="closeOthersTags">Close Others</li> 14 <li @click="closeOthersTags">Close Others</li>
...@@ -35,7 +34,7 @@ export default { ...@@ -35,7 +34,7 @@ export default {
35 }, 34 },
36 computed: { 35 computed: {
37 visitedViews () { 36 visitedViews () {
38 return this.$store.state.tagsView.visitedViews 37 return this.$store.state.tagsView.visitedViews.slice(1)
39 }, 38 },
40 routes () { 39 routes () {
41 return this.$store.state.permission.routes 40 return this.$store.state.permission.routes
...@@ -199,6 +198,7 @@ export default { ...@@ -199,6 +198,7 @@ export default {
199 box-sizing: border-box; 198 box-sizing: border-box;
200 padding-top: 3px; 199 padding-top: 3px;
201 box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 0 3px 0 rgba(0, 0, 0, .04); 200 box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 0 3px 0 rgba(0, 0, 0, .04);
201 margin-bottom: 5px;
202 202
203 .tags-view-wrapper { 203 .tags-view-wrapper {
204 .tags-view-item { 204 .tags-view-item {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-03-20 16:05:15 4 * @LastEditTime: 2023-03-23 09:21:00
5 --> 5 -->
6 <template> 6 <template>
7 <div class="app-wrapper"> 7 <div class="app-wrapper">
8 <navbar /> 8 <navbar />
9 <div class="main-container"> 9 <div class="main-container">
10 <sidebar class="sidebar-container" /> 10 <sidebar class="sidebar-container" />
11 <app-main /> 11 <div class="app-main">
12 <tags-view v-if="needTagsView" />
13 <app-main />
14 </div>
12 </div> 15 </div>
13 </div> 16 </div>
14 </template> 17 </template>
...@@ -37,6 +40,17 @@ export default { ...@@ -37,6 +40,17 @@ export default {
37 } 40 }
38 } 41 }
39 </script> 42 </script>
43 <style lang="scss" scoped>
44 .app-main {
45 height: calc(100vh - 74px);
46 overflow-x: hidden;
47 box-sizing: border-box;
48 flex: 1;
49 width: 100%;
50 background: #EAEBF0;
51 padding: 10px;
52 }
53 </style>
40 <style lang="scss"> 54 <style lang="scss">
41 @import "~@/styles/mixin.scss"; 55 @import "~@/styles/mixin.scss";
42 @import "~@/styles/sbSidebar.scss"; 56 @import "~@/styles/sbSidebar.scss";
...@@ -69,9 +83,4 @@ export default { ...@@ -69,9 +83,4 @@ export default {
69 width: 100%; 83 width: 100%;
70 transition: width 0.28s; 84 transition: width 0.28s;
71 } 85 }
72
73 .el-dropdown-menu--small {
74 padding: 0;
75 width: 5px;
76 }
77 </style> 86 </style>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 * @Author: yangwei 2 * @Author: yangwei
3 * @Date: 2023-01-16 09:10:12 3 * @Date: 2023-01-16 09:10:12
4 * @LastEditors: Please set LastEditors 4 * @LastEditors: Please set LastEditors
5 * @LastEditTime: 2023-03-21 15:00:04 5 * @LastEditTime: 2023-03-23 15:15:02
6 * @FilePath: \bdcjg-web\src\main.js 6 * @FilePath: \bdcjg-web\src\main.js
7 * @Description: 7 * @Description:
8 * 8 *
......
1 /*
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-23 14:47:38
5 */
6 let mixin = {
7
8 methods: {
9
10 }
11 }
12 export default mixin
...\ 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-21 13:52:58 4 * @LastEditTime: 2023-03-24 17:24:52
5 */ 5 */
6 import Vue from 'vue'
6 import router from "./router"; 7 import router from "./router";
7 import store from "./store"; 8 import store from "./store";
8 import { getMenuInfo } from "@/api/user"; 9 import { getMenuInfo } from "@/api/user";
...@@ -14,7 +15,6 @@ import Cookies from "js-cookie"; ...@@ -14,7 +15,6 @@ import Cookies from "js-cookie";
14 NProgress.configure({ showSpinner: false }); 15 NProgress.configure({ showSpinner: false });
15 router.beforeEach(async (to, from, next) => { 16 router.beforeEach(async (to, from, next) => {
16 getTheme() 17 getTheme()
17
18 NProgress.start(); 18 NProgress.start();
19 window.document.documentElement.setAttribute("data-theme", 'blue'); 19 window.document.documentElement.setAttribute("data-theme", 'blue');
20 document.title = getPageTitle(to.meta.title); 20 document.title = getPageTitle(to.meta.title);
...@@ -23,18 +23,17 @@ router.beforeEach(async (to, from, next) => { ...@@ -23,18 +23,17 @@ router.beforeEach(async (to, from, next) => {
23 let hasAddRoute = store.state.permission.addRoutes; 23 let hasAddRoute = store.state.permission.addRoutes;
24 if (to.path == "/sb" || to.path == "/jg") { 24 if (to.path == "/sb" || to.path == "/jg") {
25 localStorage.removeItem("token"); 25 localStorage.removeItem("token");
26 sessionStorage.setItem("psth", to.path)
27 next(); 26 next();
28 } else { 27 } else {
29 let code = sessionStorage.getItem("psth") == "/sb" ? "BDCSBPT" : "BDCJGPT" 28 let code = Vue.prototype.BASE_API.CODE
30 //判断token是否存在 29 //判断token是否存在
31 const hasToken = localStorage.getItem("token"); 30 const hasToken = localStorage.getItem("token");
32 if (hasToken) { 31 if (hasToken) {
33 //请求用户信息 32 //请求用户信息
34 if (!hasUser) { 33 if (!hasUser) {
35 store.dispatch("user/getUserInfo"); 34 store.dispatch("user/getUserInfo");
36 // import("@/styles/public.scss");
37 } 35 }
36 debugger
38 if (hasAddRoute) { 37 if (hasAddRoute) {
39 next(); 38 next();
40 } else { 39 } else {
...@@ -52,19 +51,20 @@ router.beforeEach(async (to, from, next) => { ...@@ -52,19 +51,20 @@ router.beforeEach(async (to, from, next) => {
52 if (!hasAddDict) { 51 if (!hasAddDict) {
53 await store.dispatch("dict/generateDic"); 52 await store.dispatch("dict/generateDic");
54 } 53 }
55 if (routeTo && routeTo !== "/") { 54 if (routeTo && routeTo !== "/" && routeTo !== "/sb" && routeTo !== "/jg") {
56 next({ ...to, replace: true }); 55 next({ ...to, replace: true });
57 } else { 56 } else {
58 next("/home"); 57 next();
59 } 58 }
60 } 59 }
61 } else if (sessionStorage.getItem("psth")) {
62 next(sessionStorage.getItem("psth"));
63 } else { 60 } else {
64 next("/jg"); 61 if (code == 'BDCSBPT') {
62 next('/sb');
63 } else {
64 next('/jg');
65 }
65 } 66 }
66 } 67 }
67
68 NProgress.done(); 68 NProgress.done();
69 }); 69 });
70 router.afterEach((to) => { 70 router.afterEach((to) => {
......
...@@ -29,15 +29,20 @@ export const constantRoutes = [ ...@@ -29,15 +29,20 @@ export const constantRoutes = [
29 name: "loginsb", 29 name: "loginsb",
30 component: () => import("@/views/loginsb/index.vue"), 30 component: () => import("@/views/loginsb/index.vue"),
31 }, 31 },
32 // 监管首页
33 { 32 {
34 path: '/', 33 path: '/',
34 redirect: to => {
35 return { path: `/${Vue.prototype.BASE_API.THEME}` }
36 },
37 },
38 // 监管首页
39 {
40 path: '/home',
35 component: Layout, 41 component: Layout,
36 redirect: '/home',
37 meta: { title: '首页' }, 42 meta: { title: '首页' },
38 children: [ 43 children: [
39 { 44 {
40 path: 'home', 45 path: '',
41 component: () => import('@/views/home/index'), 46 component: () => import('@/views/home/index'),
42 name: 'home', 47 name: 'home',
43 meta: { title: '工作台', icon: 'workbench', affix: true } 48 meta: { title: '工作台', icon: 'workbench', affix: true }
...@@ -59,7 +64,7 @@ export const asyncRoutes = [ ...@@ -59,7 +64,7 @@ export const asyncRoutes = [
59 path: 'index', 64 path: 'index',
60 component: () => import('@/views/jsbwcx/index'), 65 component: () => import('@/views/jsbwcx/index'),
61 name: 'jsbwcx', 66 name: 'jsbwcx',
62 meta: { title: '接收报文查询', icon: 'zsgl' } 67 meta: { title: '区县接入', icon: 'zsgl' }
63 } 68 }
64 ] 69 ]
65 }, 70 },
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 * @Author: xiaomiao 1158771342@qq.com 2 * @Author: xiaomiao 1158771342@qq.com
3 * @Date: 2023-03-09 15:24:53 3 * @Date: 2023-03-09 15:24:53
4 * @LastEditors: Please set LastEditors 4 * @LastEditors: Please set LastEditors
5 * @LastEditTime: 2023-03-21 16:05:39 5 * @LastEditTime: 2023-03-23 10:19:35
6 * @FilePath: \上报\bdcjg-web\src\store\modules\permission.js 6 * @FilePath: \上报\bdcjg-web\src\store\modules\permission.js
7 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE 7 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
8 */ 8 */
...@@ -25,7 +25,7 @@ const mutations = { ...@@ -25,7 +25,7 @@ const mutations = {
25 } 25 }
26 const actions = { 26 const actions = {
27 // 添加全部菜单 27 // 添加全部菜单
28 generateRoutes ({ commit }, getMenuInfo) { 28 generateRoutes ({ commit }, getMenuInfo) {
29 let Layout; 29 let Layout;
30 if (Vue.prototype.BASE_API.THEME == 'sb') { 30 if (Vue.prototype.BASE_API.THEME == 'sb') {
31 Layout = r => require.ensure([], () => r(require(`@/layout1`))) 31 Layout = r => require.ensure([], () => r(require(`@/layout1`)))
...@@ -40,6 +40,7 @@ const actions = { ...@@ -40,6 +40,7 @@ const actions = {
40 item.children = asyncRouter(item.children) 40 item.children = asyncRouter(item.children)
41 } 41 }
42 item.path = JSON.parse(item.metadata)?.path || '/' 42 item.path = JSON.parse(item.metadata)?.path || '/'
43 item.affix = JSON.parse(item.metadata)?.affix || false
43 if (!item.parentId) { 44 if (!item.parentId) {
44 item.component = Layout 45 item.component = Layout
45 } else { 46 } else {
...@@ -47,7 +48,8 @@ const actions = { ...@@ -47,7 +48,8 @@ const actions = {
47 } 48 }
48 item.meta = { 49 item.meta = {
49 title: item.name, 50 title: item.name,
50 icon: item.icon 51 icon: item.icon,
52 affix: item.affix
51 } 53 }
52 }) 54 })
53 return routers 55 return routers
......
1 const state = { 1 const state = {
2 visitedViews: [{ 2 visitedViews: []
3 'fullPath': "/home",
4 'meta': {
5 affix: true
6 },
7 'name': "Dashboard",
8 'path': "/home",
9 'title': "工作台"
10 }]
11 } 3 }
12
13 const mutations = { 4 const mutations = {
14 ADD_VISITED_VIEW: (state, view) => { 5 ADD_VISITED_VIEW: (state, view) => {
15 if (state.visitedViews.some(v => v.path === view.path)) return 6 if (state.visitedViews.some(v => v.path === view.path)) return
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
6 min-width: 1280px; 6 min-width: 1280px;
7 box-sizing: border-box; 7 box-sizing: border-box;
8 overflow-x: hidden; 8 overflow-x: hidden;
9 padding: 2px;
10 9
11 &-header { 10 &-header {
12 width: 100%; 11 width: 100%;
...@@ -20,7 +19,7 @@ ...@@ -20,7 +19,7 @@
20 &-content { 19 &-content {
21 width: 100%; 20 width: 100%;
22 box-sizing: border-box; 21 box-sizing: border-box;
23 margin-top: 15px; 22 margin-top: 10px;
24 background: #FFFFFF; 23 background: #FFFFFF;
25 border-radius: 4px; 24 border-radius: 4px;
26 background-size: 100% 100%; 25 background-size: 100% 100%;
...@@ -142,4 +141,4 @@ ...@@ -142,4 +141,4 @@
142 background-color: white; 141 background-color: white;
143 ; 142 ;
144 background-size: cover; 143 background-size: cover;
145 } 144 }
...\ No newline at end of file ...\ No newline at end of file
......
1 /*
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-03-23 15:26:37
5 */
1 6
2 var Layout; 7 var Layout;
3 let ApiUrl = localStorage.getItem('ApiUrl') 8 let ApiUrl = localStorage.getItem('ApiUrl')
...@@ -19,7 +24,6 @@ export default function filterAsyncRouter (routers) { ...@@ -19,7 +24,6 @@ export default function filterAsyncRouter (routers) {
19 item.component = Layout 24 item.component = Layout
20 } else { 25 } else {
21 item.component = loadView(item.uri) 26 item.component = loadView(item.uri)
22 console.log(item.component, 'item.componentitem.component');
23 } 27 }
24 item.meta = { 28 item.meta = {
25 title: item.name, 29 title: item.name,
......
1 /* 1 /*
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-03-21 13:42:13 4 * @LastEditTime: 2023-03-24 16:44:54
5 */ 5 */
6 import Vue from 'vue' 6 import Vue from 'vue'
7 export default function getTheme (theme = Vue.prototype.BASE_API.THEME) { 7 export default function getTheme (theme = Vue.prototype.BASE_API.THEME) {
8 const resultMap = { 8 const resultMap = {
9 'jg': function () { 9 'jg': function () {
10 import("@/styles/jgPublic.scss") 10 return import("@/styles/jgPublic.scss");
11 }, 11 },
12 'sb': function () { 12 'sb': function () {
13 import("@/styles/sbPublic.scss") 13 return import("@/styles/sbPublic.scss");
14 }, 14 },
15 default: function () { 15 'default': function () {
16 throw new Error(`Unsupported theme: ${theme}`);
16 }, 17 },
18 };
19 const result = resultMap[theme]();
20 if (result instanceof Promise) {
21 return result;
22 } else {
23 return resultMap.default();
17 } 24 }
18 return resultMap[theme]() || resultMap.default() 25 }
19 }
...\ No newline at end of file ...\ No newline at end of file
......
1 <template> 1 <template>
2 <div class="Cfdj from-clues"> 2 <div class="Cfdj from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="130px"> 4 <el-form ref="form" :model="form" label-width="80px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row>
9 <el-col :span="5"> 9 <el-col :span="5">
10 <el-form-item label="行政区" label-width="80px"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -23,30 +25,29 @@ ...@@ -23,30 +25,29 @@
23 </el-form-item> 25 </el-form-item>
24 </el-col> 26 </el-col>
25 <el-col :span="5"> 27 <el-col :span="5">
26 <el-form-item label="权利人" label-width="80px"> 28 <el-form-item label="权利人">
27 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input> 29 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input>
28 </el-form-item> 30 </el-form-item>
29 </el-col> 31 </el-col>
30 <el-col :span="5"> 32 <el-col :span="5">
31 <el-form-item label="不动产单元号"> 33 <el-form-item label="不动产单元号" label-width="103px">
32 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input> 34 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input>
33 </el-form-item> 35 </el-form-item>
34 </el-col> 36 </el-col>
35 37 <el-col :span="4">
36 </el-row> 38 <el-form-item label="查封机关">
37 <el-row class="mt-10">
38 <el-col :span="5">
39 <el-form-item label="查封机关" label-width="80px">
40 <el-input v-model="form.CFJG" clearable placeholder="查封机关"></el-input> 39 <el-input v-model="form.CFJG" clearable placeholder="查封机关"></el-input>
41 </el-form-item> 40 </el-form-item>
42 </el-col> 41 </el-col>
42 </el-row>
43 <el-row class="mt-10">
43 <el-col :span="5"> 44 <el-col :span="5">
44 <el-form-item label="查封文号"> 45 <el-form-item label="查封文号">
45 <el-input v-model="form.CFWH" clearable placeholder="查封文号"></el-input> 46 <el-input v-model="form.CFWH" clearable placeholder="查封文号"></el-input>
46 </el-form-item> 47 </el-form-item>
47 </el-col> 48 </el-col>
48 <el-col :span="5"> 49 <el-col :span="5">
49 <el-form-item label="解封机关" label-width="80px"> 50 <el-form-item label="解封机关">
50 <el-input v-model="form.JFJG" clearable placeholder="解封机关"></el-input> 51 <el-input v-model="form.JFJG" clearable placeholder="解封机关"></el-input>
51 </el-form-item> 52 </el-form-item>
52 </el-col> 53 </el-col>
...@@ -55,7 +56,11 @@ ...@@ -55,7 +56,11 @@
55 <el-input v-model="form.JFWH" clearable placeholder="解封文号"></el-input> 56 <el-input v-model="form.JFWH" clearable placeholder="解封文号"></el-input>
56 </el-form-item> 57 </el-form-item>
57 </el-col> 58 </el-col>
58 59 <el-col :span="5">
60 <el-form-item label="证件号" label-width="103px">
61 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
62 </el-form-item>
63 </el-col>
59 <el-col :span="4" class="btnColRight"> 64 <el-col :span="4" class="btnColRight">
60 <btn nativeType="cz" @click="resetForm">重置</btn> 65 <btn nativeType="cz" @click="resetForm">重置</btn>
61 <btn nativeType="cx" @click="handleSearch">查询</btn> 66 <btn nativeType="cx" @click="handleSearch">查询</btn>
...@@ -94,6 +99,7 @@ export default { ...@@ -94,6 +99,7 @@ export default {
94 JFWH: '', 99 JFWH: '',
95 CFJG: '', 100 CFJG: '',
96 CFWH: '', 101 CFWH: '',
102 ZJH: '',
97 currentPage: 1 103 currentPage: 1
98 }, 104 },
99 tableData: { 105 tableData: {
......
...@@ -2,13 +2,16 @@ ...@@ -2,13 +2,16 @@
2 <div class="dyaq from-clues"> 2 <div class="dyaq from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="120px"> 4 <el-form ref="form" :model="form" label-width="120px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6
6 <Breadcrumb /> 7 <Breadcrumb />
7 </el-form-item> 8 </el-form-item>
8 <el-row class="mb-5"> 9 <el-row class="mb-5">
9 <el-col :span="6"> 10 <el-col :span="6">
10 <el-form-item label="行政区" label-width="80px"> 11 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 12 <el-select
13 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
14 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 15 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 16 </el-option>
14 </el-select> 17 </el-select>
...@@ -28,7 +31,7 @@ ...@@ -28,7 +31,7 @@
28 </el-form-item> 31 </el-form-item>
29 </el-col> 32 </el-col>
30 <el-col :span="6"> 33 <el-col :span="6">
31 <el-form-item label="抵押人" label-width="80px"> 34 <el-form-item label="抵押人">
32 <el-input v-model="form.dyr" clearable placeholder="抵押人"></el-input> 35 <el-input v-model="form.dyr" clearable placeholder="抵押人"></el-input>
33 </el-form-item> 36 </el-form-item>
34 </el-col> 37 </el-col>
...@@ -55,8 +58,15 @@ ...@@ -55,8 +58,15 @@
55 </el-select> 58 </el-select>
56 </el-form-item> 59 </el-form-item>
57 </el-col> 60 </el-col>
61 <el-col :span="6">
62 <el-form-item label="证件号">
63 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
64 </el-form-item>
65 </el-col>
58 66
59 <el-col :span="6" class="btnColRight"> 67 </el-row>
68 <el-row class="mt-10">
69 <el-col :span="24" class="btnColRight">
60 <btn nativeType="cz" @click="resetForm">重置</btn> 70 <btn nativeType="cz" @click="resetForm">重置</btn>
61 <btn nativeType="cx" @click="handleSearch">查询</btn> 71 <btn nativeType="cx" @click="handleSearch">查询</btn>
62 </el-col> 72 </el-col>
...@@ -97,6 +107,7 @@ export default { ...@@ -97,6 +107,7 @@ export default {
97 BDCDYH: '', 107 BDCDYH: '',
98 dybdclx: '', 108 dybdclx: '',
99 DJLX: '', 109 DJLX: '',
110 ZJH: '',
100 currentPage: 1 111 currentPage: 1
101 }, 112 },
102 tableData: { 113 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="from-clues"> 2 <div class="from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="150px"> 4 <el-form ref="form" :model="form" label-width="150px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row>
9 <el-col :span="5"> 9 <el-col :span="5">
10 <el-form-item label="行政区" label-width="80px"> 10 <el-form-item label="行政区" label-width="100px">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -34,16 +36,16 @@ ...@@ -34,16 +36,16 @@
34 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 36 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
35 </el-form-item> 37 </el-form-item>
36 </el-col> 38 </el-col>
37 39 <el-col :span="4">
38 </el-row>
39 <el-row class="mt-10">
40 <el-col :span="5">
41 <el-form-item label="权利人" label-width="80px"> 40 <el-form-item label="权利人" label-width="80px">
42 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input> 41 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input>
43 </el-form-item> 42 </el-form-item>
44 </el-col> 43 </el-col>
44 </el-row>
45 <el-row class="mt-10">
46
45 <el-col :span="5"> 47 <el-col :span="5">
46 <el-form-item label="不动产单元号"> 48 <el-form-item label="不动产单元号" label-width="100px">
47 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input> 49 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input>
48 </el-form-item> 50 </el-form-item>
49 </el-col> 51 </el-col>
...@@ -59,7 +61,11 @@ ...@@ -59,7 +61,11 @@
59 <el-input v-model="form.XYDBDCDYH" clearable placeholder="需役地不动产单元号"></el-input> 61 <el-input v-model="form.XYDBDCDYH" clearable placeholder="需役地不动产单元号"></el-input>
60 </el-form-item> 62 </el-form-item>
61 </el-col> 63 </el-col>
62 64 <el-col :span="5">
65 <el-form-item label="证件号">
66 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
67 </el-form-item>
68 </el-col>
63 <el-col :span="4" class="btnColRight"> 69 <el-col :span="4" class="btnColRight">
64 <el-form-item> 70 <el-form-item>
65 <btn nativeType="cz" @click="resetForm">重置</btn> 71 <btn nativeType="cz" @click="resetForm">重置</btn>
...@@ -81,81 +87,82 @@ ...@@ -81,81 +87,82 @@
81 </template> 87 </template>
82 88
83 <script> 89 <script>
84 // 地役权登记 90 // 地役权登记
85 import data from "./data" 91 import data from "./data"
86 import qlfQlDyiq from '@/api/qlfQlDyiq' 92 import qlfQlDyiq from '@/api/qlfQlDyiq'
87 import tableMixin from '@/mixins/tableMixin.js' 93 import tableMixin from '@/mixins/tableMixin.js'
88 import treeSelect from '@/components/TreeSelect.vue' 94 import treeSelect from '@/components/TreeSelect.vue'
89 export default { 95 export default {
90 name: "dyiq", 96 name: "dyiq",
91 mixins: [tableMixin], 97 mixins: [tableMixin],
92 components: { 98 components: {
93 treeSelect 99 treeSelect
94 }, 100 },
95 data () { 101 data () {
96 return { 102 return {
97 form: { 103 form: {
98 XZQDM: '', 104 XZQDM: '',
99 QSZT: '', 105 QSZT: '',
100 ZL: '', 106 ZL: '',
101 BDCQZH: '', 107 BDCQZH: '',
102 QLR: '', 108 QLR: '',
103 BDCDYH: '', 109 BDCDYH: '',
104 // 供役地不动产单元号 110 // 供役地不动产单元号
105 GYDBDCDYH: '', 111 GYDBDCDYH: '',
106 // 需役地不动产单元号 112 // 需役地不动产单元号
107 XYDBDCDYH: '', 113 XYDBDCDYH: '',
108 currentPage: 1 114 ZJH: '',
109 }, 115 currentPage: 1
110 tableData: { 116 },
111 columns: [{ 117 tableData: {
112 label: '序号', 118 columns: [{
113 type: 'index', 119 label: '序号',
114 width: '50', 120 type: 'index',
115 index: this.indexMethod, 121 width: '50',
116 }].concat(data.columns()).concat([ 122 index: this.indexMethod,
117 { 123 }].concat(data.columns()).concat([
118 label: "操作", 124 {
119 width: 80, 125 label: "操作",
120 render: (h, scope) => { 126 width: 80,
121 return ( 127 render: (h, scope) => {
122 <div> 128 return (
123 <el-button 129 <div>
124 type="text" 130 <el-button
125 class='btnColor' 131 type="text"
126 onClick={() => { this.handleEdit(scope.row) }} 132 class='btnColor'
127 > 133 onClick={() => { this.handleEdit(scope.row) }}
128 详情 134 >
129 </el-button> 135 详情
130 </div> 136 </el-button>
131 ) 137 </div>
132 } 138 )
133 } 139 }
134 ]),
135 data: []
136 },
137 pageData: {
138 total: 0,
139 pageSize: 15,
140 current: 1,
141 }
142 }
143 },
144 methods: {
145 async featchData () {
146 try {
147 this.form = Object.assign(this.form, this.formData)
148 let { result: { list, total, pages: pageSize, pageNum: current }
149 } = await qlfQlDyiq.getQlfQlDyiqList(this.form)
150 this.tableData.data = list
151 this.pageData = {
152 pageSize,
153 current,
154 total
155 } 140 }
156 } catch (error) { 141 ]),
142 data: []
143 },
144 pageData: {
145 total: 0,
146 pageSize: 15,
147 current: 1,
148 }
149 }
150 },
151 methods: {
152 async featchData () {
153 try {
154 this.form = Object.assign(this.form, this.formData)
155 let { result: { list, total, pages: pageSize, pageNum: current }
156 } = await qlfQlDyiq.getQlfQlDyiqList(this.form)
157 this.tableData.data = list
158 this.pageData = {
159 pageSize,
160 current,
161 total
157 } 162 }
163 } catch (error) {
158 } 164 }
159 } 165 }
160 } 166 }
167 }
161 </script> 168 </script>
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="fdcqdz from-clues"> 2 <div class="fdcqdz from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="120px"> 4 <el-form ref="form" :model="form" label-width="120px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row class="mb-5">
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -53,7 +55,14 @@ ...@@ -53,7 +55,14 @@
53 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 55 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
54 </el-form-item> 56 </el-form-item>
55 </el-col> 57 </el-col>
56 <el-col :span="6" class="btnColRight"> 58 <el-col :span="6">
59 <el-form-item label="证件号" label-width="80px">
60 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
61 </el-form-item>
62 </el-col>
63 </el-row>
64 <el-row class="mt-10">
65 <el-col :span="24" class="btnColRight">
57 <btn nativeType="cz" @click="resetForm">重置</btn> 66 <btn nativeType="cz" @click="resetForm">重置</btn>
58 <btn nativeType="cx" @click="handleSearch">查询</btn> 67 <btn nativeType="cx" @click="handleSearch">查询</btn>
59 </el-col> 68 </el-col>
...@@ -93,6 +102,7 @@ export default { ...@@ -93,6 +102,7 @@ export default {
93 DJLX: '', 102 DJLX: '',
94 BDCQZH: '', 103 BDCQZH: '',
95 BDCDYH: '', 104 BDCDYH: '',
105 ZJH: '',
96 currentPage: 1 106 currentPage: 1
97 }, 107 },
98 tableData: { 108 tableData: {
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 <div class="fdcqqfsyq from-clues"> 2 <div class="fdcqqfsyq from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="80px"> 4 <el-form ref="form" :model="form" label-width="80px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row class="mb-5">
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
13 </el-col> 13 </el-col>
14 <el-col :span="5"> 14 <el-col :span="5">
15 <el-form-item label="权利类型"> 15 <el-form-item label="权利类型">
16 <el-select v-model="form.QLLX" ref="selectshareQL" @visible-change="isShowSelectOptions" clearable 16 <el-select v-model="form.QLLX" ref="selectshareQL" class="width100" @visible-change="isShowSelectOptions"
17 placeholder="权利类型"> 17 clearable placeholder="权利类型">
18 <el-option v-for="item in dicData['A8']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 18 <el-option v-for="item in dicData['A8']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
19 </el-option> 19 </el-option>
20 </el-select> 20 </el-select>
...@@ -25,7 +25,12 @@ ...@@ -25,7 +25,12 @@
25 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input> 25 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input>
26 </el-form-item> 26 </el-form-item>
27 </el-col> 27 </el-col>
28 <el-col :span="9" class="btnColRight"> 28 <el-col :span="5">
29 <el-form-item label="证件号" label-width="80px">
30 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
31 </el-form-item>
32 </el-col>
33 <el-col :span="4" class="btnColRight">
29 <btn nativeType="cz" @click="resetForm">重置</btn> 34 <btn nativeType="cz" @click="resetForm">重置</btn>
30 <btn nativeType="cx" @click="handleSearch">查询</btn> 35 <btn nativeType="cx" @click="handleSearch">查询</btn>
31 </el-col> 36 </el-col>
...@@ -61,6 +66,7 @@ export default { ...@@ -61,6 +66,7 @@ export default {
61 YWH: '', 66 YWH: '',
62 QLLX: '', 67 QLLX: '',
63 BDCDYH: '', 68 BDCDYH: '',
69 ZJH: '',
64 currentPage: 1 70 currentPage: 1
65 }, 71 },
66 tableData: { 72 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="fdcqyz from-clues"> 2 <div class="fdcqyz from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="120px"> 4 <el-form ref="form" :model="form" label-width="120px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row class="mb-5">
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -53,7 +55,14 @@ ...@@ -53,7 +55,14 @@
53 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 55 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
54 </el-form-item> 56 </el-form-item>
55 </el-col> 57 </el-col>
56 <el-col :span="6" class="btnColRight"> 58 <el-col :span="6">
59 <el-form-item label="证件号" label-width="80px">
60 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
61 </el-form-item>
62 </el-col>
63 </el-row>
64 <el-row class="mt-10">
65 <el-col :span="24" class="btnColRight">
57 <btn nativeType="cz" @click="resetForm">重置</btn> 66 <btn nativeType="cz" @click="resetForm">重置</btn>
58 <btn nativeType="cx" @click="handleSearch">查询</btn> 67 <btn nativeType="cx" @click="handleSearch">查询</btn>
59 </el-col> 68 </el-col>
...@@ -93,6 +102,7 @@ export default { ...@@ -93,6 +102,7 @@ export default {
93 DJLX: '', 102 DJLX: '',
94 BDCQZH: '', 103 BDCQZH: '',
95 BDCDYH: '', 104 BDCDYH: '',
105 ZJH: '',
96 currentPage: 1 106 currentPage: 1
97 }, 107 },
98 tableData: { 108 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="gzwsyq from-clues"> 2 <div class="gzwsyq from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="105px"> 4 <el-form ref="form" :model="form" label-width="105px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row>
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -50,7 +52,12 @@ ...@@ -50,7 +52,12 @@
50 <el-input v-model="form.JZWMC" clearable placeholder="建筑名称"></el-input> 52 <el-input v-model="form.JZWMC" clearable placeholder="建筑名称"></el-input>
51 </el-form-item> 53 </el-form-item>
52 </el-col> 54 </el-col>
53 <el-col :span="6" class="btnColRight mt-10"> 55 <el-col :span="6" class="mt-10">
56 <el-form-item label="证件号">
57 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
58 </el-form-item>
59 </el-col>
60 <el-col :span="24" class="btnColRight mt-10">
54 <btn nativeType="cz" @click="resetForm">重置</btn> 61 <btn nativeType="cz" @click="resetForm">重置</btn>
55 <btn nativeType="cx" @click="handleSearch">查询</btn> 62 <btn nativeType="cx" @click="handleSearch">查询</btn>
56 </el-col> 63 </el-col>
...@@ -89,6 +96,7 @@ export default { ...@@ -89,6 +96,7 @@ export default {
89 QLR: '', 96 QLR: '',
90 DJLX: '', 97 DJLX: '',
91 JZWMC: '', 98 JZWMC: '',
99 ZJH: '',
92 currentPage: 1 100 currentPage: 1
93 }, 101 },
94 tableData: { 102 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="hysyq from-clues"> 2 <div class="hysyq from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="105px"> 4 <el-form ref="form" :model="form" label-width="105px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row> 8 <el-row>
9 <el-col :span="6" class="mb-5"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -32,12 +34,14 @@ ...@@ -32,12 +34,14 @@
32 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 34 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
33 </el-form-item> 35 </el-form-item>
34 </el-col> 36 </el-col>
35 <el-col :span="6" class="mt-10"> 37 </el-row>
38 <el-row class="mt-10">
39 <el-col :span="6">
36 <el-form-item label="权利人"> 40 <el-form-item label="权利人">
37 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input> 41 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input>
38 </el-form-item> 42 </el-form-item>
39 </el-col> 43 </el-col>
40 <el-col :span="6" class="mt-10"> 44 <el-col :span="6">
41 <el-form-item label="登记类型"> 45 <el-form-item label="登记类型">
42 <el-select v-model="form.DJLX" class="width100" clearable placeholder="登记类型"> 46 <el-select v-model="form.DJLX" class="width100" clearable placeholder="登记类型">
43 <el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 47 <el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
...@@ -45,12 +49,19 @@ ...@@ -45,12 +49,19 @@
45 </el-select> 49 </el-select>
46 </el-form-item> 50 </el-form-item>
47 </el-col> 51 </el-col>
48 <el-col :span="6" class="mt-10"> 52 <el-col :span="6">
49 <el-form-item label="海岛名称"> 53 <el-form-item label="海岛名称">
50 <el-input v-model="form.HDMC" clearable placeholder="海岛名称"></el-input> 54 <el-input v-model="form.HDMC" clearable placeholder="海岛名称"></el-input>
51 </el-form-item> 55 </el-form-item>
52 </el-col> 56 </el-col>
53 <el-col :span="6" class="btnColRight mt-10"> 57 <el-col :span="6">
58 <el-form-item label="证件号">
59 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
60 </el-form-item>
61 </el-col>
62 </el-row>
63 <el-row>
64 <el-col :span="24" class="btnColRight mt-10">
54 <btn nativeType="cz" @click="resetForm">重置</btn> 65 <btn nativeType="cz" @click="resetForm">重置</btn>
55 <btn nativeType="cx" @click="handleSearch">查询</btn> 66 <btn nativeType="cx" @click="handleSearch">查询</btn>
56 </el-col> 67 </el-col>
...@@ -90,6 +101,7 @@ export default { ...@@ -90,6 +101,7 @@ export default {
90 QLR: '', 101 QLR: '',
91 DJLX: '', 102 DJLX: '',
92 HDMC: '', 103 HDMC: '',
104 ZJH: '',
93 currentPage: 1 105 currentPage: 1
94 }, 106 },
95 tableData: { 107 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="jsydzjdsyq from-clues"> 2 <div class="jsydzjdsyq from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="120px"> 4 <el-form ref="form" :model="form" label-width="120px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row class="mb-5">
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -48,7 +50,12 @@ ...@@ -48,7 +50,12 @@
48 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 50 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
49 </el-form-item> 51 </el-form-item>
50 </el-col> 52 </el-col>
51 <el-col :span="12" class="btnColRight"> 53 <el-col :span="6">
54 <el-form-item label="证件号">
55 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
56 </el-form-item>
57 </el-col>
58 <el-col :span="6" class="btnColRight">
52 <btn nativeType="cz" @click="resetForm">重置</btn> 59 <btn nativeType="cz" @click="resetForm">重置</btn>
53 <btn nativeType="cx" @click="handleSearch">查询</btn> 60 <btn nativeType="cx" @click="handleSearch">查询</btn>
54 </el-col> 61 </el-col>
...@@ -87,6 +94,7 @@ export default { ...@@ -87,6 +94,7 @@ export default {
87 QLR: '', 94 QLR: '',
88 DJLX: '', 95 DJLX: '',
89 BDCQZH: '', 96 BDCQZH: '',
97 ZJH: '',
90 currentPage: 1 98 currentPage: 1
91 }, 99 },
92 tableData: { 100 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="lq from-clues"> 2 <div class="lq from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="105px"> 4 <el-form ref="form" :model="form" label-width="105px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row> 8 <el-row>
9 <el-col :span="6" class="mb-5"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -45,12 +47,16 @@ ...@@ -45,12 +47,16 @@
45 </el-select> 47 </el-select>
46 </el-form-item> 48 </el-form-item>
47 </el-col> 49 </el-col>
48 <el-col :span="12" class="btnColRight mt-10"> 50 <el-col :span="6">
51 <el-form-item label="证件号" class="mt-10">
52 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
53 </el-form-item>
54 </el-col>
55 <el-col :span="6" class="btnColRight mt-10">
49 <btn nativeType="cz" @click="resetForm">重置</btn> 56 <btn nativeType="cz" @click="resetForm">重置</btn>
50 <btn nativeType="cx" @click="handleSearch">查询</btn> 57 <btn nativeType="cx" @click="handleSearch">查询</btn>
51 </el-col> 58 </el-col>
52 </el-row> 59 </el-row>
53
54 </el-form> 60 </el-form>
55 </div> 61 </div>
56 <div class="from-clues-content"> 62 <div class="from-clues-content">
...@@ -84,6 +90,7 @@ export default { ...@@ -84,6 +90,7 @@ export default {
84 BDCDYH: '', 90 BDCDYH: '',
85 QLR: '', 91 QLR: '',
86 DJLX: '', 92 DJLX: '',
93 ZJH: '',
87 currentPage: 1 94 currentPage: 1
88 }, 95 },
89 tableData: { 96 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="from-clues"> 2 <div class="from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="105px"> 4 <el-form ref="form" :model="form" label-width="105px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row>
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -50,7 +52,12 @@ ...@@ -50,7 +52,12 @@
50 <el-input v-model="form.xxx" clearable placeholder="地籍号"></el-input> 52 <el-input v-model="form.xxx" clearable placeholder="地籍号"></el-input>
51 </el-form-item> 53 </el-form-item>
52 </el-col> 54 </el-col>
53 <el-col :span="6" class="btnColRight mt-10"> 55 <el-col :span="6">
56 <el-form-item label="证件号" class="mt-10">
57 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
58 </el-form-item>
59 </el-col>
60 <el-col :span="24" class="btnColRight mt-10">
54 <btn nativeType="cz" @click="resetForm">重置</btn> 61 <btn nativeType="cz" @click="resetForm">重置</btn>
55 <btn nativeType="cx" @click="handleSearch">查询</btn> 62 <btn nativeType="cx" @click="handleSearch">查询</btn>
56 </el-col> 63 </el-col>
...@@ -89,6 +96,7 @@ export default { ...@@ -89,6 +96,7 @@ export default {
89 QLR: '', 96 QLR: '',
90 QLLX: '', 97 QLLX: '',
91 xxx: '', 98 xxx: '',
99 ZJH: '',
92 currentPage: 1 100 currentPage: 1
93 }, 101 },
94 tableData: { 102 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="tdsyq from-clues"> 2 <div class="tdsyq from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="120px"> 4 <el-form ref="form" :model="form" label-width="120px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row class="mb-5">
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -43,11 +45,16 @@ ...@@ -43,11 +45,16 @@
43 </el-form-item> 45 </el-form-item>
44 </el-col> 46 </el-col>
45 <el-col :span="6"> 47 <el-col :span="6">
46 <el-form-item label="不动产权证号" label-width="120px"> 48 <el-form-item label="不动产权证号">
47 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 49 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
48 </el-form-item> 50 </el-form-item>
49 </el-col> 51 </el-col>
50 <el-col :span="12" class="btnColRight"> 52 <el-col :span="6">
53 <el-form-item label="证件号">
54 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
55 </el-form-item>
56 </el-col>
57 <el-col :span="6" class="btnColRight">
51 <btn nativeType="cz" @click="resetForm">重置</btn> 58 <btn nativeType="cz" @click="resetForm">重置</btn>
52 <btn nativeType="cx" @click="handleSearch">查询</btn> 59 <btn nativeType="cx" @click="handleSearch">查询</btn>
53 </el-col> 60 </el-col>
...@@ -85,6 +92,7 @@ export default { ...@@ -85,6 +92,7 @@ export default {
85 QLR: '', 92 QLR: '',
86 DJLX: '', 93 DJLX: '',
87 BDCQZH: '', 94 BDCQZH: '',
95 ZJH: '',
88 currentPage: 1 96 currentPage: 1
89 }, 97 },
90 tableData: { 98 tableData: {
......
...@@ -2,26 +2,20 @@ ...@@ -2,26 +2,20 @@
2 <div class="from-clues"> 2 <div class="from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="110px"> 4 <el-form ref="form" :model="form" label-width="110px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row class="mb-5">
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区" label-width="106px"> 10 <el-form-item label="行政区" label-width="106px">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
15 </el-form-item> 17 </el-form-item>
16 </el-col> 18 </el-col>
17 <!-- <el-col :span="6">
18 <el-form-item label="权属状态">
19 <el-select v-model="form.QSZT" class="width100" clearable placeholder="权属状态">
20 <el-option v-for="item in dicData['A22']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
21 </el-option>
22 </el-select>
23 </el-form-item>
24 </el-col> -->
25 <el-col :span="6"> 19 <el-col :span="6">
26 <el-form-item label="不动产权证号"> 20 <el-form-item label="不动产权证号">
27 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 21 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
...@@ -32,8 +26,6 @@ ...@@ -32,8 +26,6 @@
32 <el-input v-model="form.YWH" clearable placeholder="业务号"></el-input> 26 <el-input v-model="form.YWH" clearable placeholder="业务号"></el-input>
33 </el-form-item> 27 </el-form-item>
34 </el-col> 28 </el-col>
35 </el-row>
36 <el-row class="mt-10">
37 <el-col :span="6"> 29 <el-col :span="6">
38 <el-form-item label="预告登记种类" label-width="106px"> 30 <el-form-item label="预告登记种类" label-width="106px">
39 <el-select v-model="form.YGDJZL" clearable ref="selectnoticeRegQL" class="width100" 31 <el-select v-model="form.YGDJZL" clearable ref="selectnoticeRegQL" class="width100"
...@@ -43,6 +35,8 @@ ...@@ -43,6 +35,8 @@
43 </el-select> 35 </el-select>
44 </el-form-item> 36 </el-form-item>
45 </el-col> 37 </el-col>
38 </el-row>
39 <el-row class="mt-10">
46 <el-col :span="6"> 40 <el-col :span="6">
47 <el-form-item label="登记类型"> 41 <el-form-item label="登记类型">
48 <el-select v-model="form.DJLX" clearable class="width100" placeholder="登记类型"> 42 <el-select v-model="form.DJLX" clearable class="width100" placeholder="登记类型">
...@@ -56,6 +50,11 @@ ...@@ -56,6 +50,11 @@
56 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input> 50 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input>
57 </el-form-item> 51 </el-form-item>
58 </el-col> 52 </el-col>
53 <el-col :span="6">
54 <el-form-item label="证件号">
55 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
56 </el-form-item>
57 </el-col>
59 <el-col :span="6" class="btnColRight"> 58 <el-col :span="6" class="btnColRight">
60 <btn nativeType="cz" @click="resetForm">重置</btn> 59 <btn nativeType="cz" @click="resetForm">重置</btn>
61 <btn nativeType="cx" @click="handleSearch">查询</btn> 60 <btn nativeType="cx" @click="handleSearch">查询</btn>
...@@ -97,6 +96,7 @@ export default { ...@@ -97,6 +96,7 @@ export default {
97 YGDJZL: '', 96 YGDJZL: '',
98 DJLX: '', 97 DJLX: '',
99 BDCDYH: '', 98 BDCDYH: '',
99 ZJH: '',
100 currentPage: 1 100 currentPage: 1
101 }, 101 },
102 tableData: { 102 tableData: {
......
...@@ -2,13 +2,15 @@ ...@@ -2,13 +2,15 @@
2 <div class="from-clues"> 2 <div class="from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="105px"> 4 <el-form ref="form" :model="form" label-width="105px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row> 8 <el-row>
9 <el-col :span="5" class="mb-5"> 9 <el-col :span="5">
10 <el-form-item label="行政区" label-width="80px"> 10 <el-form-item label="行政区" label-width="80px">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
...@@ -46,7 +48,12 @@ ...@@ -46,7 +48,12 @@
46 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input> 48 <el-input v-model="form.QLR" clearable placeholder="权利人"></el-input>
47 </el-form-item> 49 </el-form-item>
48 </el-col> 50 </el-col>
49 <el-col :span="19" class="btnColRight"> 51 <el-col :span="5">
52 <el-form-item label="证件号">
53 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
54 </el-form-item>
55 </el-col>
56 <el-col :span="14" class="btnColRight">
50 <btn nativeType="cz" @click="resetForm">重置</btn> 57 <btn nativeType="cz" @click="resetForm">重置</btn>
51 <btn nativeType="cx" @click="handleSearch">查询</btn> 58 <btn nativeType="cx" @click="handleSearch">查询</btn>
52 </el-col> 59 </el-col>
...@@ -85,6 +92,7 @@ export default { ...@@ -85,6 +92,7 @@ export default {
85 BDCQZH: '', 92 BDCQZH: '',
86 QLR: '', 93 QLR: '',
87 BDCDYH: '', 94 BDCDYH: '',
95 ZJH: '',
88 currentPage: 1 96 currentPage: 1
89 }, 97 },
90 tableData: { 98 tableData: {
......
...@@ -2,31 +2,20 @@ ...@@ -2,31 +2,20 @@
2 <div class="cancellationReg from-clues"> 2 <div class="cancellationReg from-clues">
3 <div class="from-clues-header"> 3 <div class="from-clues-header">
4 <el-form ref="form" :model="form" label-width="105px"> 4 <el-form ref="form" :model="form" label-width="105px">
5 <el-form-item> 5 <el-form-item v-if="BASE_API.THEME=='jg'">
6 <Breadcrumb /> 6 <Breadcrumb />
7 </el-form-item> 7 </el-form-item>
8 <el-row class="mb-5"> 8 <el-row>
9 <el-col :span="6"> 9 <el-col :span="6">
10 <el-form-item label="行政区"> 10 <el-form-item label="行政区">
11 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 11 <el-select
12 v-model="$store.state.user.userInfo.grade === 'county' ? form.XZQDM = $store.state.user.userInfo.areaCode : form.XZQDM"
13 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
12 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
13 </el-option> 15 </el-option>
14 </el-select> 16 </el-select>
15 </el-form-item> 17 </el-form-item>
16 </el-col> 18 </el-col>
17 <!-- <el-col :span="6">
18 <el-form-item label="权属状态" label-width="105px">
19 <el-select v-model="form.QSZT" class="width100" clearable placeholder="权属状态">
20 <el-option v-for="item in dicData['A22']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
21 </el-option>
22 </el-select>
23 </el-form-item>
24 </el-col> -->
25 <!-- <el-col :span="6">
26 <el-form-item label="坐落">
27 <el-input v-model="form.ZL" placeholder="坐落"></el-input>
28 </el-form-item>
29 </el-col> -->
30 <el-col :span="6"> 19 <el-col :span="6">
31 <el-form-item label="不动产权证号" label-width="105px"> 20 <el-form-item label="不动产权证号" label-width="105px">
32 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input> 21 <el-input v-model="form.BDCQZH" clearable placeholder="不动产权证号"></el-input>
...@@ -50,7 +39,12 @@ ...@@ -50,7 +39,12 @@
50 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input> 39 <el-input v-model="form.BDCDYH" clearable placeholder="不动产单元号"></el-input>
51 </el-form-item> 40 </el-form-item>
52 </el-col> 41 </el-col>
53 <el-col :span="18" class="btnColRight mt-10"> 42 <el-col :span="6" class="mt-10">
43 <el-form-item label="证件号">
44 <el-input v-model="form.ZJH" clearable placeholder="证件号"></el-input>
45 </el-form-item>
46 </el-col>
47 <el-col :span="12" class="btnColRight mt-10">
54 <btn nativeType="cz" @click="resetForm">重置</btn> 48 <btn nativeType="cz" @click="resetForm">重置</btn>
55 <btn nativeType="cx" @click="handleSearch">查询</btn> 49 <btn nativeType="cx" @click="handleSearch">查询</btn>
56 </el-col> 50 </el-col>
...@@ -86,6 +80,7 @@ export default { ...@@ -86,6 +80,7 @@ export default {
86 QLR: '', 80 QLR: '',
87 QLLX: '', 81 QLLX: '',
88 BDCDYH: '', 82 BDCDYH: '',
83 ZJH: '',
89 currentPage: 1 84 currentPage: 1
90 }, 85 },
91 tableData: { 86 tableData: {
......
...@@ -4,13 +4,15 @@ ...@@ -4,13 +4,15 @@
4 <!-- 头部搜索 --> 4 <!-- 头部搜索 -->
5 <div class="from-clues-header"> 5 <div class="from-clues-header">
6 <el-form ref="ruleForm" :model="form" label-width="100px"> 6 <el-form ref="ruleForm" :model="form" label-width="100px">
7 <el-form-item> 7 <el-form-item v-if="BASE_API.THEME=='jg'">
8 <Breadcrumb /> 8 <Breadcrumb />
9 </el-form-item> 9 </el-form-item>
10 <el-row class="mb-5"> 10 <el-row class="mb-5">
11 <el-col :span="6"> 11 <el-col :span="6">
12 <el-form-item label="行政区" prop="qxdm"> 12 <el-form-item label="行政区" prop="qxdm">
13 <el-select v-model="$store.state.user.userInfo.grade === 'county' ? form.qxdm = $store.state.user.userInfo.areaCode : form.qxdm" class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'"> 13 <el-select
14 v-model="$store.state.user.userInfo.grade === 'county' ? form.qxdm = $store.state.user.userInfo.areaCode : form.qxdm"
15 class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
14 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE"> 16 <el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
15 </el-option> 17 </el-option>
16 </el-select> 18 </el-select>
...@@ -99,6 +101,7 @@ ...@@ -99,6 +101,7 @@
99 </template> 101 </template>
100 102
101 <script> 103 <script>
104 import Vue from 'vue'
102 // 接收报文查询 105 // 接收报文查询
103 // 引入表格头部数据 106 // 引入表格头部数据
104 import data from "./data"; 107 import data from "./data";
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 <div class="bg"> 2 <div class="bg">
3 <div class="login-logo"></div> 3 <div class="login-logo"></div>
4 <div class="login-inner-bg login"> 4 <div class="login-inner-bg login">
5 <h2>{{ productName }}</h2> 5 <h2>{{ BASE_API.TITLE }}</h2>
6 <div class="user_style"> 6 <div class="user_style">
7 <h3>欢迎登录</h3> 7 <h3>欢迎登录</h3>
8 <el-form :model="user" :rules="rules" ref="user" id="loginform" class="demo-ruleForm"> 8 <el-form :model="user" :rules="rules" ref="user" id="loginform" class="demo-ruleForm">
...@@ -21,244 +21,203 @@ ...@@ -21,244 +21,203 @@
21 </div> 21 </div>
22 </div> 22 </div>
23 </template> 23 </template>
24
25 <script> 24 <script>
26 import { loginIn } from "@/api/login.js"; 25 import { loginIn } from "@/api/login.js";
27 import { api, getAction } from "@/api/manageApi"; 26 export default {
28 export default { 27 name: "jgLogin",
29 name: "Login", 28 data () {
30 data () { 29 return {
31 return { 30 user: {
32 user: { 31 account: "",
33 account: "", 32 password: "",
34 password: "", 33 checkStatus: false,
35 checkStatus: false, 34 },
36 }, 35 rules: {
37 productName: "", 36 account: [{ required: true, message: "请填写帐号", trigger: "blur" }],
38 rules: { 37 password: [{ required: true, message: "请填写密码", trigger: "blur" }],
39 account: [{ required: true, message: "请填写帐号", trigger: "blur" }], 38 }
40 password: [{ required: true, message: "请填写密码", trigger: "blur" }], 39 }
41 }, 40 },
42 }; 41 methods: {
43 }, 42 //记住用户名
44 created () { 43 checkUserName: function (flag) {
45 const params = {}; 44 this.user.checkStatus = flag;
46 const queryOptions = { 45 if (this.user.checkStatus) {
47 conditionGroup: { 46 localStorage.setItem("accountId", this.user.account);
48 conditions: [ 47 let name = localStorage.getItem("accountId");
49 { 48 if (name === "") {
50 property: "code", 49 return;
51 value: "BDCJGPT",
52 operator: "EQ",
53 },
54 ],
55 queryRelation: "AND",
56 },
57 };
58 params.queryOptions = JSON.stringify(queryOptions);
59 //根据子系统code获取子系统详细信息
60 getAction(api.subsystem, params).then((res) => {
61 if (res.status === 1) {
62 this.productName = res.content[0].name;
63 this.$store.dispatch("products/setData", res.content[0].code);
64 sessionStorage.setItem("products", res.content[0].code)
65 } else { 50 } else {
66 this.$message.error({ message: res.message, showClose: true }); 51 this.user.account = name;
67 } 52 }
68 }); 53 } else {
69 }, 54 this.user.account = localStorage.getItem("accountId");
70 mounted () { 55 }
71 // this.checkUserName();
72 }, 56 },
73 methods: { 57 login (user) {
74 //记住用户名 58 var self = this
75 checkUserName: function (flag) { 59 this.$refs[user].validate(async (valid) => {
76 this.user.checkStatus = flag; 60 if (valid) {
77 if (this.user.checkStatus) { 61 let res = await loginIn(self.user.account, self.user.password)
78 localStorage.setItem("accountId", this.user.account); 62 if (res.status == 1) {
79 let name = localStorage.getItem("accountId"); 63 localStorage.setItem("token", `Bearer ${res.content}`);
80 if (name === "") { 64 //登录成功后需判断有无重定向,没有重定向则跳转首页
81 return; 65 this.$router.replace(this.$route.query.redirect || "/home");
82 } else {
83 this.user.account = name;
84 } 66 }
85 } else {
86 this.user.account = localStorage.getItem("accountId");
87 } 67 }
88 }, 68 })
89 login (user) {
90 var self = this;
91 this.$refs[user].validate((valid) => {
92 if (valid) {
93 loginIn(self.user.account, self.user.password)
94 .then((res) => {
95 if (res.status === 1) {
96 //存储token
97 localStorage.setItem("token", `Bearer ${res.content}`);
98 //登录成功后需判断有无重定向,没有重定向则跳转首页
99 this.$router.replace(this.$route.query.redirect || "/");
100 } else {
101 //错误处理
102 }
103 })
104 .catch((error) => {
105 // console.dir(error);
106 });
107 }
108 });
109 },
110 },
111 components: {},
112 };
113 </script>
114 <style scoped lang="scss">
115 .username,
116 .password {
117 position: relative;
118
119 &:before {
120 content: "";
121 display: block;
122 width: 16px;
123 height: 16px;
124 position: absolute;
125 left: 10px;
126 top: 7px;
127 background-size: 100% 100%;
128 }
129
130 /deep/ .el-input__inner {
131 text-indent: 24px;
132 border: 1px solid rgba(11, 161, 248, 0.4);
133 background-color: rgba(6, 135, 205, 0.3) !important;
134 } 69 }
135 } 70 }
136 71 }
137 .username::before { 72 </script>
138 background-image: url(../../image/username.png); 73 <style scoped lang="scss">
74 .username,
75 .password {
76 position: relative;
77
78 &:before {
79 content: "";
80 display: block;
81 width: 16px;
82 height: 16px;
83 position: absolute;
84 left: 10px;
85 top: 7px;
86 background-size: 100% 100%;
139 } 87 }
140 88
141 .password::before { 89 /deep/ .el-input__inner {
142 background-image: url(../../image/password.png); 90 text-indent: 24px;
91 border: 1px solid rgba(11, 161, 248, 0.4);
92 background-color: rgba(6, 135, 205, 0.3) !important;
143 } 93 }
144 94 }
145 .bg { 95
146 width: 100%; 96 .username::before {
147 height: 100%; 97 background-image: url(../../image/username.png);
148 min-width: 1440px; 98 }
149 min-height: 560px; 99
150 background: url(../../image/loginBoxBg.png) no-repeat; 100 .password::before {
101 background-image: url(../../image/password.png);
102 }
103
104 .bg {
105 width: 100%;
106 height: 100%;
107 min-width: 1440px;
108 min-height: 560px;
109 background: url(../../image/loginBoxBg.png) no-repeat;
110 background-size: 100% 100%;
111 overflow: hidden;
112 position: relative;
113
114 .login-logo {
115 background: url(../../image/loginLogo.png) no-repeat;
151 background-size: 100% 100%; 116 background-size: 100% 100%;
152 overflow: hidden; 117 width: 580px;
153 position: relative; 118 height: 540px;
154 .login-logo { 119 position: absolute;
155 background: url(../../image/loginLogo.png) no-repeat; 120 top: 25%;
156 background-size: 100% 100%; 121 left: 19%;
157 width: 580px;
158 height: 540px;
159 position: absolute;
160 top: 25%;
161 left: 19%;
162 }
163 } 122 }
164 123 }
165 .login-inner-bg { 124
166 background: url(../../image/loginBg.png) no-repeat; 125 .login-inner-bg {
167 width: 20.6%; 126 background: url(../../image/loginBg.png) no-repeat;
168 height: 43%; 127 width: 20.6%;
169 min-width: 360px; 128 height: 43%;
170 min-height: 380px; 129 min-width: 360px;
171 top: 30%; 130 min-height: 380px;
172 right: 18%; 131 top: 30%;
132 right: 18%;
133 position: absolute;
134 background-size: 100% 100%;
135 box-sizing: border-box;
136 padding: 56px;
137
138 h2 {
139 width: 100%;
140 font-size: 36px;
141 font-weight: 700;
142 color: #fff;
143 text-align: center;
144 white-space: nowrap;
173 position: absolute; 145 position: absolute;
174 background-size: 100% 100%; 146 right: 0;
175 box-sizing: border-box; 147 top: -70px;
176 padding: 56px; 148 background-image: linear-gradient(180deg,
177
178 h2 {
179 width: 100%;
180 font-size: 36px;
181 font-weight: 700;
182 color: #fff;
183 text-align: center;
184 white-space: nowrap;
185 position: absolute;
186 right: 0;
187 top: -70px;
188 background-image: linear-gradient(
189 180deg,
190 rgba(99, 163, 255, 1) 0, 149 rgba(99, 163, 255, 1) 0,
191 rgba(99, 163, 255, 1) 0, 150 rgba(99, 163, 255, 1) 0,
192 rgba(182, 220, 255, 1) 49.731445%, 151 rgba(182, 220, 255, 1) 49.731445%,
193 rgba(114, 190, 255, 1) 100%, 152 rgba(114, 190, 255, 1) 100%,
194 rgba(114, 190, 255, 1) 100% 153 rgba(114, 190, 255, 1) 100%);
195 ); 154 overflow-wrap: break-word;
196 overflow-wrap: break-word; 155 color: rgba(255, 255, 255, 1);
197 color: rgba(255, 255, 255, 1); 156 font-size: 36px;
198 font-size: 36px; 157 font-family: AlimamaShuHeiTi-Bold;
199 font-family: AlimamaShuHeiTi-Bold; 158 -webkit-background-clip: text;
200 -webkit-background-clip: text; 159 -webkit-text-fill-color: transparent;
201 -webkit-text-fill-color: transparent;
202 }
203 } 160 }
161 }
204 162
205 .login { 163 .login {
206 .user_style { 164 .user_style {
207 h3 { 165 h3 {
208 color: #fff; 166 color: #fff;
209 font-size: 22px; 167 font-size: 22px;
210 font-weight: normal; 168 font-weight: normal;
211 text-align: center; 169 text-align: center;
212 margin: 16px auto 34px; 170 margin: 16px auto 34px;
213 font-weight: 400; 171 font-weight: 400;
214 }
215 }
216
217 .btn {
218 width: 100%;
219 height: 6vh;
220 background-color: #00c2de;
221 border-radius: 5px;
222 font-size: 1.4vw;
223 color: #ffffff;
224 }
225
226 .btn:hover {
227 cursor: pointer;
228 background-color: #2d8cf0;
229 } 172 }
230 } 173 }
231 174
232 .login #loginform { 175 .btn {
233 .el-form-item { 176 width: 100%;
234 margin-bottom: 24px !important; 177 height: 6vh;
235 } 178 background-color: #00c2de;
179 border-radius: 5px;
180 font-size: 1.4vw;
181 color: #ffffff;
182 }
236 183
237 .login-btn { 184 .btn:hover {
238 margin-top: 40px !important; 185 cursor: pointer;
239 } 186 background-color: #2d8cf0;
187 }
188 }
240 189
241 .el-button { 190 .login #loginform {
242 font-size: 18px; 191 .el-form-item {
243 background: #0d8cc0 !important; 192 margin-bottom: 24px !important;
244 color: #ffffff !important; 193 }
245 cursor: pointer !important;
246 }
247 194
248 .el-input__inner { 195 .login-btn {
249 width: 100% !important; 196 margin-top: 40px !important;
250 } 197 }
251 198
252 .el-checkbox__label { 199 .el-button {
253 color: #fff; 200 font-size: 18px;
254 } 201 background: #0d8cc0 !important;
202 color: #ffffff !important;
203 cursor: pointer !important;
255 } 204 }
256 205
257 .inputUser .ivu-input { 206 .el-input__inner {
258 padding: 6px 24px !important; 207 width: 100% !important;
259 border: 1px solid #9f9f9f !important;
260 } 208 }
261 tr.hover-row > td.el-table__cell { 209
262 background-color: transparent !important; 210 .el-checkbox__label {
211 color: #fff;
263 } 212 }
213 }
214
215 .inputUser .ivu-input {
216 padding: 6px 24px !important;
217 border: 1px solid #9f9f9f !important;
218 }
219
220 tr.hover-row>td.el-table__cell {
221 background-color: transparent !important;
222 }
264 </style> 223 </style>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 <div class="bg"> 2 <div class="bg">
3 <div class="title"> 3 <div class="title">
4 <img src="../../image/bdclogo.png" alt=""> 4 <img src="../../image/bdclogo.png" alt="">
5 <h2>{{ productName }}</h2> 5 <h2>{{ BASE_API.TITLE }}</h2>
6 </div> 6 </div>
7 <div class="login-inner-bg login"> 7 <div class="login-inner-bg login">
8 <div class="user_style"> 8 <div class="user_style">
...@@ -12,19 +12,21 @@ ...@@ -12,19 +12,21 @@
12 <el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input> 12 <el-input class="username" v-model="user.account" placeholder="请输入用户名"></el-input>
13 </el-form-item> 13 </el-form-item>
14 <el-form-item prop="password"> 14 <el-form-item prop="password">
15 <el-input type="password" class="password" @keyup.native="login('user')" v-model="user.password" 15 <el-input type="password" class="password" v-model="user.password" placeholder="请输入密码"
16 placeholder="请输入密码" show-password></el-input> 16 show-password></el-input>
17 </el-form-item> 17 </el-form-item>
18 <el-form-item prop="yz"> 18 <!-- <el-form-item prop="yz">
19 <div class="flex-container"> 19 <div class="flex-container">
20 <div class="flex-input"> 20 <div class="flex-input">
21 <el-input class="yz" @keyup.native="login('user')" v-model="user.yz" placeholder="请输入验证码"></el-input> 21 <el-input class="yz" @keyup.native="login('user')" v-model="user.yz" placeholder="请输入验证码"></el-input>
22 </div> 22 </div>
23 <div class="flex-line"></div> 23 <div class="flex-line"></div>
24 <div class="flex-img"><canvas id="s-canvas" ref="s-canvas"></canvas></div> 24 <div class="flex-img"><canvas id="s-canvas" ref="s-canvas"></canvas></div>
25 <div class="flex-renovate"><font id="renovate" @click="verification">换一批</font></div> 25 <div class="flex-renovate">
26 <font id="renovate" @click="verification">换一批</font>
27 </div>
26 </div> 28 </div>
27 </el-form-item> 29 </el-form-item> -->
28 <el-form-item class="login-btn"> 30 <el-form-item class="login-btn">
29 <el-button type="primary" style="width: 100%" @click="login('user')">登录</el-button> 31 <el-button type="primary" style="width: 100%" @click="login('user')">登录</el-button>
30 </el-form-item> 32 </el-form-item>
...@@ -35,308 +37,283 @@ ...@@ -35,308 +37,283 @@
35 </template> 37 </template>
36 38
37 <script> 39 <script>
38 import { loginIn } from "@/api/login.js"; 40 import { getMenuInfo } from "@/api/user";
39 import { api, getAction } from "@/api/manageApi"; 41 import { loginIn } from "@/api/login.js";
40 export default { 42 export default {
41 name: "Login", 43 name: "sbLogin",
42 data () { 44 data () {
43 return { 45 return {
44 user: { 46 user: {
45 account: "", 47 account: "",
46 password: "", 48 password: "",
47 yz: "", 49 yz: "",
48 checkStatus: false, 50 checkStatus: false,
49 }, 51 },
50 productName: "", 52 productName: "",
51 rules: { 53 rules: {
52 account: [{ required: true, message: "请填写帐号", trigger: "blur" }], 54 account: [{ required: true, message: "请填写帐号", trigger: "blur" }],
53 password: [{ required: true, message: "请填写密码", trigger: "blur" }], 55 password: [{ required: true, message: "请填写密码", trigger: "blur" }],
54 }, 56 },
55 }; 57 };
58 },
59 methods: {
60 verification () {
61 let str = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ', code = '', i = 0;
62 for (; i++ < 4;) code += str[Math.floor(Math.random() * (str.length - 0) + 0)];
63 setTimeout(() => {
64 let canvas = document.getElementById("s-canvas"), ctx = canvas.getContext("2d");
65 canvas.width = 80;
66 canvas.height = 28;
67 ctx.fillStyle = '#ffffff';
68 ctx.fillRect(0, 0, 80, 28);
69 for (i = 0; i < code.length; i++) { this.drawText(ctx, code[i], i); }
70 }, 0);
56 }, 71 },
57 created () { 72 drawText (ctx, txt, i) {
58 this.verification(); 73 ctx.fillStyle = this.randomColor(50, 160);
59 const params = {}; 74 ctx.font = "18px SimHei";
60 const queryOptions = { 75 let x = (i + 1) * (80 / (4 + 1)), y = this.randomNum(18, 28 - 5);
61 conditionGroup: { 76 ctx.translate(x, y);
62 conditions: [ 77 ctx.fillText(txt, 0, 0);
63 { 78 ctx.rotate((-0 * Math.PI) / 180);
64 property: "code", 79 ctx.translate(-x, -y);
65 value: "BDCSBPT",
66 operator: "EQ",
67 },
68 ],
69 queryRelation: "AND",
70 },
71 };
72 params.queryOptions = JSON.stringify(queryOptions);
73 //根据子系统code获取子系统详细信息
74 getAction(api.subsystem, params).then((res) => {
75 if (res.status === 1) {
76 this.productName = res.content[0].name;
77 this.$store.dispatch("products/setData", res.content[0].code);
78
79 sessionStorage.setItem("products", res.content[0].code)
80 } else {
81 this.$message.error({ message: res.message, showClose: true });
82 }
83 });
84 }, 80 },
85 mounted () { 81 randomColor (min, max) {
86 // this.checkUserName(); 82 let r = this.randomNum(min, max);
83 let g = this.randomNum(min, max);
84 let b = this.randomNum(min, max);
85 return "rgb(" + r + "," + g + "," + b + ")";
87 }, 86 },
88 methods: { 87 randomNum (min, max) {
89 verification() { 88 return Math.floor(Math.random() * (max - min) + min);
90 let str = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ', code = '', i = 0; 89 },
91 for( ; i++ < 4 ; ) code += str[ Math.floor( Math.random() * ( str.length - 0 ) + 0 ) ]; 90 //记住用户名
92 setTimeout( () => { 91 checkUserName: function (flag) {
93 let canvas = document.getElementById("s-canvas"), ctx = canvas.getContext("2d"); 92 this.user.checkStatus = flag;
94 canvas.width = 80; 93 if (this.user.checkStatus) {
95 canvas.height = 28; 94 localStorage.setItem("accountId", this.user.account);
96 ctx.fillStyle = '#ffffff'; 95 let name = localStorage.getItem("accountId");
97 ctx.fillRect( 0, 0, 80, 28 ); 96 if (name === "") {
98 for ( i = 0; i < code.length; i++ ) { this.drawText( ctx, code[i], i ); } 97 return;
99 }, 0 );
100 },
101 drawText(ctx, txt, i) {
102 ctx.fillStyle = this.randomColor(50, 160);
103 ctx.font = "18px SimHei";
104 let x = (i + 1) * (80 / (4 + 1)), y = this.randomNum( 18, 28 - 5 );
105 ctx.translate(x, y);
106 ctx.fillText(txt, 0, 0);
107 ctx.rotate((-0 * Math.PI) / 180);
108 ctx.translate(-x, -y);
109 },
110 randomColor(min, max) {
111 let r = this.randomNum(min, max);
112 let g = this.randomNum(min, max);
113 let b = this.randomNum(min, max);
114 return "rgb(" + r + "," + g + "," + b + ")";
115 },
116 randomNum(min, max) {
117 return Math.floor(Math.random() * (max - min) + min);
118 },
119 //记住用户名
120 checkUserName: function (flag) {
121 this.user.checkStatus = flag;
122 if (this.user.checkStatus) {
123 localStorage.setItem("accountId", this.user.account);
124 let name = localStorage.getItem("accountId");
125 if (name === "") {
126 return;
127 } else {
128 this.user.account = name;
129 }
130 } else { 98 } else {
131 this.user.account = localStorage.getItem("accountId"); 99 this.user.account = name;
132 } 100 }
133 }, 101 } else {
134 login (user) { 102 this.user.account = localStorage.getItem("accountId");
135 var self = this; 103 }
136 this.$refs[user].validate((valid) => {
137 if (valid) {
138 loginIn(self.user.account, self.user.password)
139 .then((res) => {
140 if (res.status === 1) {
141 this.$store.dispatch('business/setInitRules', "layout1")
142 //存储token
143 localStorage.setItem("token", `Bearer ${res.content}`);
144 this.$store.dispatch("products/setData", res.content[0].code);
145 sessionStorage.setItem("products", res.content[0].code)
146 //登录成功后需判断有无重定向,没有重定向则跳转首页
147 this.$router.replace(this.$route.query.redirect || "/");
148 } else {
149 console.log(res);
150 this.$message.error({ message: res.message })
151 }
152 })
153 .catch((error) => {
154 // console.dir(error);
155 });
156 }
157 });
158 },
159 }, 104 },
160 components: {}, 105 login (user) {
161 }; 106 var self = this
162 </script> 107 this.$refs[user].validate(async (valid) => {
163 <style scoped lang="scss"> 108 if (valid) {
164 .username, 109 let res = await loginIn(self.user.account, self.user.password)
165 .password, 110 if (res.status == 1) {
166 .yz { 111 let code = this.BASE_API.CODE;
167 position: relative; 112 localStorage.setItem("token", `Bearer ${res.content}`);
168 &:before { 113 const { result: getMenuData } = (await getMenuInfo(code)) || [];
169 content: ""; 114 let path1 = JSON.parse(getMenuData[1].metadata)?.path + '/' + JSON.parse(getMenuData[1].children[0].metadata)?.path
170 display: block; 115 //登录成功后需判断有无重定向,没有重定向则跳转首页
171 width: 16px; 116 const accessRoutes = await this.$store.dispatch(
172 height: 16px; 117 "permission/generateRoutes",
173 position: absolute; 118 getMenuData
174 left: 10px; 119 );
175 top: 7px; 120 this.$router.addRoutes([
176 background-size: 100% 100%; 121 ...accessRoutes,
177 } 122 { path: "*", redirect: "/404", hidden: true },
178 123 ]);
179 /deep/ .el-input__inner { 124 this.$router.replace(this.$route.query.redirect || path1);
180 color: #000 !important; 125 }
181 text-indent: 24px; 126 }
182 // border: 1px solid rgba(11, 161, 248, 0.4); 127 })
183 // background-color: rgba(6, 135, 205, 0.3) !important;
184 } 128 }
185 } 129 }
130 }
131 </script>
132 <style scoped lang="scss">
133 .username,
134 .password,
135 .yz {
136 position: relative;
186 137
187 .flex-container { 138 &:before {
188 position: relative; 139 content: "";
189 display: -webkit-flex; 140 display: block;
190 display: flex; 141 width: 16px;
191 } 142 height: 16px;
192
193 .flex-input {
194 width: 100%;
195 }
196 .flex-line {
197 position: absolute;
198 width: 1px;
199 height: 64%;
200 margin: 5px;
201 right: 36%;
202 background-color: #CCCCCC;
203 }
204 .flex-img {
205 position: absolute; 143 position: absolute;
206 margin: 2px; 144 left: 10px;
207 right: 16%; 145 top: 7px;
208 } 146 background-size: 100% 100%;
209 .flex-renovate {
210 position: absolute;
211 margin: 1px;
212 right: 3%;
213 }
214 #renovate {
215 color: #3F8FEA;
216 font-size: 16px;
217 font-weight: 700;
218 cursor: pointer;
219 } 147 }
220 148
221 .username::before { 149 /deep/ .el-input__inner {
222 background-image: url(../../image/userlogo.png); 150 color: #000 !important;
151 text-indent: 24px;
223 } 152 }
153 }
224 154
225 .password::before { 155 .flex-container {
226 background-image: url(../../image/passlogo.png); 156 position: relative;
227 } 157 display: -webkit-flex;
228 .yz::before { 158 display: flex;
229 background-image: url(../../image/yzlogo.png); 159 }
230 }
231 160
232 .bg { 161 .flex-input {
233 width: 100%; 162 width: 100%;
234 height: 100%; 163 }
235 min-width: 1440px; 164
236 min-height: 560px; 165 .flex-line {
237 background: url(../../image/loginBoxsb.png) no-repeat; 166 position: absolute;
238 background-size: 100% 100%; 167 width: 1px;
239 overflow: hidden; 168 height: 64%;
240 position: relative; 169 margin: 5px;
241 } 170 right: 36%;
242 .title { 171 background-color: #CCCCCC;
243 width: 24%; 172 }
244 height: 6%; 173
245 top: 20%; 174 .flex-img {
246 right: 38%; 175 position: absolute;
176 margin: 2px;
177 right: 16%;
178 }
179
180 .flex-renovate {
181 position: absolute;
182 margin: 1px;
183 right: 3%;
184 }
185
186 #renovate {
187 color: #3F8FEA;
188 font-size: 16px;
189 font-weight: 700;
190 cursor: pointer;
191 }
192
193 .username::before {
194 background-image: url(../../image/userlogo.png);
195 }
196
197 .password::before {
198 background-image: url(../../image/passlogo.png);
199 }
200
201 .yz::before {
202 background-image: url(../../image/yzlogo.png);
203 }
204
205 .bg {
206 width: 100%;
207 height: 100%;
208 min-width: 1440px;
209 min-height: 560px;
210 background: url(../../image/loginBoxsb.png) no-repeat;
211 background-size: 100% 100%;
212 overflow: hidden;
213 position: relative;
214 }
215
216 .title {
217 width: 24%;
218 height: 6%;
219 top: 20%;
220 right: 38%;
221 position: absolute;
222
223 img {
224 width: 60px;
225 height: 60px;
226 top: 0%;
227 left: 2%;
247 position: absolute; 228 position: absolute;
248 img {
249 width: 60px;
250 height: 60px;
251 top: 0%;
252 left: 2%;
253 position: absolute;
254 }
255 h2 {
256 top: 25%;
257 left: 22%;
258 position: absolute;
259 width: 383px;
260 height: 42px;
261 font-size: 28px;
262 font-weight: 600;
263 color: #ffffff;
264 text-shadow: 0px 4px 4px #002c95;
265 }
266 } 229 }
267 .login-inner-bg { 230
268 background: white; 231 h2 {
269 width: 24.6%; 232 top: 25%;
270 height: 47%; 233 left: 22%;
271 min-width: 360px;
272 min-height: 380px;
273 top: 30%;
274 right: 38%;
275 position: absolute; 234 position: absolute;
276 background-size: 100% 100%; 235 width: 383px;
277 box-sizing: border-box; 236 height: 42px;
278 padding: 56px; 237 font-size: 28px;
238 font-weight: 600;
239 color: #ffffff;
240 text-shadow: 0px 4px 4px #002c95;
279 } 241 }
242 }
280 243
281 .login { 244 .login-inner-bg {
282 .user_style { 245 background: white;
283 h3 { 246 width: 24.6%;
284 font-weight: normal; 247 height: 47%;
285 text-align: center; 248 min-width: 360px;
286 margin: -10px auto 28px; 249 min-height: 380px;
287 font-weight: 400; 250 top: 30%;
288 width: 125px; 251 right: 38%;
289 height: 29px; 252 position: absolute;
290 font-size: 20px; 253 background-size: 100% 100%;
291 font-family: Source Han Sans CN; 254 box-sizing: border-box;
292 font-weight: 400; 255 padding: 56px;
293 color: #333333; 256 }
294 }
295 }
296 257
297 .btn { 258 .login {
298 width: 100%; 259 .user_style {
299 height: 6vh; 260 h3 {
300 background-color: #00c2de; 261 font-weight: normal;
301 border-radius: 5px; 262 text-align: center;
302 font-size: 1.4vw; 263 margin: -10px auto 28px;
303 color: #000; 264 font-weight: 400;
265 width: 125px;
266 height: 29px;
267 font-size: 20px;
268 font-family: Source Han Sans CN;
269 font-weight: 400;
270 color: #333333;
304 } 271 }
272 }
305 273
306 .btn:hover { 274 .btn {
307 cursor: pointer; 275 width: 100%;
308 background-color: #2d8cf0; 276 height: 6vh;
309 } 277 background-color: #00c2de;
278 border-radius: 5px;
279 font-size: 1.4vw;
280 color: #000;
310 } 281 }
311 282
312 .login #loginform { 283 .btn:hover {
313 .el-form-item { 284 cursor: pointer;
314 margin-bottom: 24px !important; 285 background-color: #2d8cf0;
315 } 286 }
287 }
316 288
317 .login-btn { 289 .login #loginform {
318 margin-top: 30px !important; 290 .el-form-item {
319 } 291 margin-bottom: 24px !important;
292 }
320 293
321 .el-button { 294 .login-btn {
322 font-size: 18px; 295 margin-top: 30px !important;
323 border-radius: 0; 296 }
324 background: #4162d8 !important;
325 color: #ffffff !important;
326 cursor: pointer !important;
327 }
328 297
329 .el-input__inner { 298 .el-button {
330 width: 100% !important; 299 font-size: 18px;
331 } 300 border-radius: 0;
301 background: #4162d8 !important;
302 color: #ffffff !important;
303 cursor: pointer !important;
304 }
332 305
333 .el-checkbox__label { 306 .el-input__inner {
334 color: #fff; 307 width: 100% !important;
335 }
336 } 308 }
337 309
338 .inputUser .ivu-input { 310 .el-checkbox__label {
339 padding: 6px 24px !important; 311 color: #fff;
340 border: 1px solid #9f9f9f !important;
341 } 312 }
313 }
314
315 .inputUser .ivu-input {
316 padding: 6px 24px !important;
317 border: 1px solid #9f9f9f !important;
318 }
342 </style> 319 </style>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
4 <!-- 头部搜索 --> 4 <!-- 头部搜索 -->
5 <div class="from-clues-header"> 5 <div class="from-clues-header">
6 <el-form ref="ruleForm" :model="form" label-width="80px"> 6 <el-form ref="ruleForm" :model="form" label-width="80px">
7 <el-form-item> 7 <el-form-item v-if="BASE_API.THEME=='jg'">
8 <Breadcrumb /> 8 <Breadcrumb />
9 </el-form-item> 9 </el-form-item>
10 <el-row> 10 <el-row>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
4 <!-- 头部搜索 --> 4 <!-- 头部搜索 -->
5 <div class="from-clues-header"> 5 <div class="from-clues-header">
6 <el-form ref="ruleForm" :model="form" label-width="100px"> 6 <el-form ref="ruleForm" :model="form" label-width="100px">
7 <el-form-item> 7 <el-form-item v-if="BASE_API.THEME=='jg'">
8 <Breadcrumb /> 8 <Breadcrumb />
9 </el-form-item> 9 </el-form-item>
10 <el-row class="mb-5"> 10 <el-row class="mb-5">
......
...@@ -11,12 +11,7 @@ ...@@ -11,12 +11,7 @@
11 </el-col> 11 </el-col>
12 <el-col :span="12"> 12 <el-col :span="12">
13 <el-form-item label="图标:" label-width="54px"> 13 <el-form-item label="图标:" label-width="54px">
14 <el-input 14 <el-input v-model="form.icon" placeholder="请选择图标" :prefix-icon="form.icon" clearable @focus="getIconList" />
15 v-model="form.icon"
16 placeholder="请选择图标"
17 :prefix-icon="form.icon"
18 clearable
19 @focus="getIconList" />
20 </el-form-item> 15 </el-form-item>
21 </el-col> 16 </el-col>
22 </el-row> 17 </el-row>
...@@ -206,7 +201,6 @@ ...@@ -206,7 +201,6 @@
206 method = 'put' 201 method = 'put'
207 url = `${this.dataUrl}/${formData.id}` 202 url = `${this.dataUrl}/${formData.id}`
208 } 203 }
209 debugger
210 httpAction(url, formData, method) 204 httpAction(url, formData, method)
211 .then((res) => { 205 .then((res) => {
212 if (res.status === 1) { 206 if (res.status === 1) {
...@@ -242,4 +236,35 @@ ...@@ -242,4 +236,35 @@
242 } 236 }
243 </script> 237 </script>
244 <style scoped lang="scss"> 238 <style scoped lang="scss">
239 // .modifydialog {
240 // &-con {
241 // background: #031a46;
242 // }
243
244 // /deep/.el-dialog__header {
245 // .dialog_title {
246 // display: -webkit-box;
247 // display: -ms-flexbox;
248 // display: flex;
249 // position: relative;
250 // top: -8px;
251 // width: 28%;
252 // height: 40px;
253 // margin-left: 28px;
254 // -webkit-box-pack: center;
255 // -ms-flex-pack: center;
256 // justify-content: center;
257 // white-space: nowrap;
258
259 // b {
260 // font-size: 16px;
261 // }
262 // }
263
264 // .el-dialog__headerbtn {
265 // right: 20px !important;
266 // top: 23px !important;
267 // }
268 // }
269 // }
245 </style> 270 </style>
......
...@@ -29,181 +29,181 @@ ...@@ -29,181 +29,181 @@
29 </div> 29 </div>
30 </template> 30 </template>
31 <script> 31 <script>
32 // 定时任务 32 // 定时任务
33 import data from "./data"; 33 import data from "./data";
34 import { deleteAction, getAction, api } from "@/api/manageApi"; 34 import { deleteAction, getAction, api } from "@/api/manageApi";
35 import EditDialog from "./edit-dialog.vue"; 35 import EditDialog from "./edit-dialog.vue";
36 import { mapGetters } from "vuex"; 36 import { mapGetters } from "vuex";
37 import { getMenuInfo } from "@/api/user"; 37 import { getMenuInfo } from "@/api/user";
38 import { 38 import {
39 getUuid, 39 getUuid,
40 judgeSort, 40 judgeSort,
41 realMove, 41 realMove,
42 findParents, 42 findParents,
43 removeTreeListItem, 43 removeTreeListItem,
44 } from "@/utils/operation"; 44 } from "@/utils/operation";
45 export default { 45 export default {
46 name: "menus", 46 name: "menus",
47 components: { 47 components: {
48 EditDialog, 48 EditDialog,
49 }, 49 },
50 data () { 50 data () {
51 return { 51 return {
52 isDialog: false, 52 isDialog: false,
53 tablelistData: [], 53 tablelistData: [],
54 listData: [], 54 listData: [],
55 resourceCategoryId: "", 55 resourceCategoryId: "",
56 taskData: null, 56 taskData: null,
57 form: { 57 form: {
58 menuName: "", 58 menuName: "",
59 }, 59 },
60 title: "", 60 title: "",
61 queryParam: {}, 61 queryParam: {},
62 selectType: "0", 62 selectType: "0",
63 queryName: "", 63 queryName: "",
64 organizationId: "", // 组织机构ID 64 organizationId: "", // 组织机构ID
65 departmentId: "", // 部门ID 65 departmentId: "", // 部门ID
66 departmentList: [], // 部门列表 66 departmentList: [], // 部门列表
67 levelList: [], // 职务级别 67 levelList: [], // 职务级别
68 sexList: [], 68 sexList: [],
69 69
70 selectionList: [], 70 selectionList: [],
71 tableData: { 71 tableData: {
72 columns: [].concat(data.columns()).concat([ 72 columns: [].concat(data.columns()).concat([
73 { 73 {
74 label: "操作", 74 label: "操作",
75 width: 380, 75 width: 380,
76 render: (h, scope) => { 76 render: (h, scope) => {
77 return ( 77 return (
78 <div> 78 <div>
79 <el-button 79 <el-button
80 type="text" 80 type="text"
81 class='successColor' 81 class='successColor'
82 onClick={() => { 82 onClick={() => {
83 this.handleEdit(scope.row); 83 this.handleEdit(scope.row);
84 }} 84 }}
85 > 85 >
86 修改 86 修改
87 </el-button> 87 </el-button>
88 88
89 <el-button 89 <el-button
90 type="text" 90 type="text"
91 class='delColor' 91 class='delColor'
92 onClick={() => { 92 onClick={() => {
93 this.handleDelete(scope.row.id, scope.row.name); 93 this.handleDelete(scope.row.id, scope.row.name);
94 }} 94 }}
95 > 95 >
96 删除 96 删除
97 </el-button> 97 </el-button>
98 </div> 98 </div>
99 ); 99 );
100 },
101 }, 100 },
102 ]), 101 },
103 data: [], 102 ]),
104 }, 103 data: [],
105 tableUrl: api.menus, // 菜单接口地址
106 meumurlid: api.subsystem,// 项目id接口地址
107 productId: ""//项目id
108 };
109 },
110 created () {
111 this.getTableList();
112 },
113 computed: {
114 ...mapGetters(["products"])
115 },
116 methods: {
117 //查询
118 searchQuery () {
119 if (this.form.menuName) {
120 this.tablelistData = this.childrenFn(this.listData, this.form.menuName);
121 } else {
122 this.getTableList()
123 }
124 }, 104 },
125 childrenFn (arr, key) { 105 tableUrl: api.menus, // 菜单接口地址
126 const that = this; 106 meumurlid: api.subsystem,// 项目id接口地址
127 let searchTree = []; 107 productId: ""//项目id
128 arr.forEach((item, index) => { 108 };
129 if (item.children != undefined && item.children.length != 0) { 109 },
130 let leaf = that.childrenFn(item.children, key); 110 created () {
131 if (leaf != undefined) { 111 this.getTableList();
132 let { name, code, resourceCategoryId, id, iproductId, operations, metadata } = item; 112 },
133 let parentObj = { 113 computed: {
134 code, name, resourceCategoryId, id, iproductId, operations, metadata, children: leaf 114 ...mapGetters(["products"])
135 }; 115 },
136 searchTree.push(parentObj); 116 methods: {
137 } else { 117 //查询
138 if (item.name.indexOf(key) != -1) { 118 searchQuery () {
139 searchTree.push(item); 119 if (this.form.menuName) {
140 } 120 this.tablelistData = this.childrenFn(this.listData, this.form.menuName);
141 } 121 } else {
122 this.getTableList()
123 }
124 },
125 childrenFn (arr, key) {
126 const that = this;
127 let searchTree = [];
128 arr.forEach((item, index) => {
129 if (item.children != undefined && item.children.length != 0) {
130 let leaf = that.childrenFn(item.children, key);
131 if (leaf != undefined) {
132 let { name, code, resourceCategoryId, id, iproductId, operations, metadata } = item;
133 let parentObj = {
134 code, name, resourceCategoryId, id, iproductId, operations, metadata, children: leaf
135 };
136 searchTree.push(parentObj);
142 } else { 137 } else {
143 if (item.name.indexOf(key) != -1) { 138 if (item.name.indexOf(key) != -1) {
144
145 searchTree.push(item); 139 searchTree.push(item);
146 } 140 }
147 } 141 }
148 }); 142 } else {
149 if (searchTree != undefined && searchTree.length != 0) { 143 if (item.name.indexOf(key) != -1) {
150 return searchTree; 144
151 } 145 searchTree.push(item);
152 },
153 // 加载表格数据
154 getTableList () {
155 getMenuInfo(sessionStorage.getItem("products")).then((res) => {
156 if (res.code === 200) {
157 this.tablelistData = judgeSort(res.result)
158 this.listData = this.tablelistData
159 } else {
160 this.$message.error({ message: res.message, showClose: true })
161 } 146 }
162 }) 147 }
163 const queryOptionsid = { 148 });
164 conditionGroup: { 149 if (searchTree != undefined && searchTree.length != 0) {
165 queryRelation: "AND", 150 return searchTree;
166 conditions: [ 151 }
167 { 152 },
168 property: "code", 153 // 加载表格数据
169 value: sessionStorage.getItem("products"), 154 getTableList () {
170 operator: "EQ", 155 getMenuInfo(this.BASE_API.CODE).then((res) => {
171 }, 156 if (res.code === 200) {
172 ], 157 this.tablelistData = judgeSort(res.result)
173 }, 158 this.listData = this.tablelistData
174 }; 159 } else {
175 const params = { 160 this.$message.error({ message: res.message, showClose: true })
176 queryOptions: queryOptionsid, 161 }
177 }; 162 })
178 // 获取系统id 163 const queryOptionsid = {
179 getAction(this.meumurlid, params) 164 conditionGroup: {
180 .then((res) => { 165 queryRelation: "AND",
181 this.productId = res.content[0].id; 166 conditions: [
182 this.getAuthorityList(res.content[0].id, res.content[0].code) 167 {
183 this.selectedSubsystemCode = res.content[0].code 168 property: "code",
169 value: sessionStorage.getItem("products"),
170 operator: "EQ",
171 },
172 ],
173 },
174 };
175 const params = {
176 queryOptions: queryOptionsid,
177 };
178 // 获取系统id
179 getAction(this.meumurlid, params)
180 .then((res) => {
181 this.productId = res.content[0].id;
182 this.getAuthorityList(res.content[0].id, res.content[0].code)
183 this.selectedSubsystemCode = res.content[0].code
184 184
185 }) 185 })
186 .catch((error) => { 186 .catch((error) => {
187 console.log("er", error); 187 console.log("er", error);
188 }) 188 })
189 }, 189 },
190 // 新增菜单 190 // 新增菜单
191 handleAdd () { 191 handleAdd () {
192 this.isDialog = true 192 this.isDialog = true
193 this.$refs.dialogForm.add(); 193 this.$refs.dialogForm.add();
194 this.$refs.dialogForm.title = "新增"; 194 this.$refs.dialogForm.title = "新增";
195 }, 195 },
196 196
197 // 修改 197 // 修改
198 handleEdit (record) { 198 handleEdit (record) {
199 this.isDialog = true 199 this.isDialog = true
200 this.$refs.dialogForm.edit(record); 200 this.$refs.dialogForm.edit(record);
201 this.$refs.dialogForm.title = "修改"; 201 this.$refs.dialogForm.title = "修改";
202 }, 202 },
203 // 删除 203 // 删除
204 handleDelete (id, content) { 204 handleDelete (id, content) {
205 this.$confirm( 205 this.$confirm(
206 `<div class="customer-message-wrapper"> 206 `<div class="customer-message-wrapper">
207 <h5 class="title">您确认要执行该操作用于以下信息:</h5> 207 <h5 class="title">您确认要执行该操作用于以下信息:</h5>
208 <p class="content" aria-controls="${content}">${content} 208 <p class="content" aria-controls="${content}">${content}
209 </p> 209 </p>
...@@ -211,48 +211,48 @@ ...@@ -211,48 +211,48 @@
211 <span >无法恢复</span> 211 <span >无法恢复</span>
212 </p> 212 </p>
213 </div>`, 213 </div>`,
214 '执行确认', 214 '执行确认',
215 { 215 {
216 dangerouslyUseHTMLString: true, 216 dangerouslyUseHTMLString: true,
217 customClass: 'customer-delete', 217 customClass: 'customer-delete',
218 confirmButtonText: '确定', 218 confirmButtonText: '确定',
219 cancelButtonText: '取消', 219 cancelButtonText: '取消',
220 type: 'warning' 220 type: 'warning'
221 }
222 )
223 .then(() => {
224 if (!this.tableUrl) {
225 this.$message.error({
226 message: '请设置tableUrl属性为接口地址!',
227 showClose: true
228 })
229 return
221 } 230 }
222 ) 231 const url = this.tableUrl + '/' + id
223 .then(() => { 232 deleteAction(url).then(res => {
224 if (!this.tableUrl) { 233 if (res.status === 1) {
225 this.$message.error({ 234 this.$message.success({ message: res.message, showClose: true })
226 message: '请设置tableUrl属性为接口地址!', 235 this.reloadTableData()
227 showClose: true 236 } else {
228 }) 237 this.$message.error({ message: res.message, showClose: true })
229 return
230 } 238 }
231 const url = this.tableUrl + '/' + id
232 deleteAction(url).then(res => {
233 if (res.status === 1) {
234 this.$message.success({ message: res.message, showClose: true })
235 this.reloadTableData()
236 } else {
237 this.$message.error({ message: res.message, showClose: true })
238 }
239 })
240 }) 239 })
241 .catch(() => { }) 240 })
242 }, 241 .catch(() => { })
243 // 新增、编辑回显 242 },
244 reloadTableData () { 243 // 新增、编辑回显
245 this.getTableList() 244 reloadTableData () {
246 }, 245 this.getTableList()
247 }, 246 },
248 }; 247 },
248 };
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 252
253 // @import "~@/styles/public.scss"; 253 // @import "~@/styles/public.scss";
254 254
255 /deep/.el-table__expand-icon { 255 /deep/.el-table__expand-icon {
256 color: #fff; 256 color: #fff;
257 } 257 }
258 </style> 258 </style>
......
...@@ -19,8 +19,9 @@ ...@@ -19,8 +19,9 @@
19 </el-form> 19 </el-form>
20 </div> 20 </div>
21 <div class="from-clues-content"> 21 <div class="from-clues-content">
22 <lb-table :pagination="false" @size-change="handleSizeChange" :calcHeight="200" @p-current-change="handleCurrentChange" 22 <lb-table :pagination="false" @size-change="handleSizeChange" :calcHeight="200"
23 :column="tableData.columns" :data="listdata" :expand-row-keys="keyList" row-key="dictid"> 23 @p-current-change="handleCurrentChange" :column="tableData.columns" :data="listdata" :expand-row-keys="keyList"
24 row-key="dictid">
24 </lb-table> 25 </lb-table>
25 </div> 26 </div>
26 <EditDialog ref="addEditDialog" v-model="isDialog" @ok="reloadTableData" /> 27 <EditDialog ref="addEditDialog" v-model="isDialog" @ok="reloadTableData" />
...@@ -28,439 +29,439 @@ ...@@ -28,439 +29,439 @@
28 </div> 29 </div>
29 </template> 30 </template>
30 <script> 31 <script>
31 import { 32 import {
32 getUuid, 33 getUuid,
33 judgeSort, 34 judgeSort,
34 realMove, 35 realMove,
35 findParents, 36 findParents,
36 removeTreeListItem, 37 removeTreeListItem,
37 } from "@/utils/operation"; 38 } from "@/utils/operation";
38 import { getRolesById, getAuthorityListAction } from "@/api/authorityManage"; 39 import { getRolesById, getAuthorityListAction } from "@/api/authorityManage";
39 import { getUserRoles } from "@/api/personnelManage"; 40 import { getUserRoles } from "@/api/personnelManage";
40 import data from "./data"; 41 import data from "./data";
41 import { getMenuInfo } from "@/api/user"; 42 import { getMenuInfo } from "@/api/user";
42 import { api, getAction, deleteAction } from "@/api/manageApi"; 43 import { api, getAction, deleteAction } from "@/api/manageApi";
43 import tableMixin from "@/mixins/tableMixin.js"; 44 import tableMixin from "@/mixins/tableMixin.js";
44 import EditDialog from "./edit-dialog.vue"; 45 import EditDialog from "./edit-dialog.vue";
45 import Roleslistdiglog from "./roleslistdiglog.vue"; 46 import Roleslistdiglog from "./roleslistdiglog.vue";
46 import { mapGetters } from "vuex"; 47 import { mapGetters } from "vuex";
47 import { updateOrder } from "@/api/orders" 48 import { updateOrder } from "@/api/orders"
48 export default { 49 export default {
49 name: "menus", 50 name: "menus",
50 mixins: [tableMixin], 51 mixins: [tableMixin],
51 components: { 52 components: {
52 EditDialog, 53 EditDialog,
53 Roleslistdiglog, 54 Roleslistdiglog,
54 }, 55 },
55 data () { 56 data () {
56 return { 57 return {
57 isDialog: false, 58 isDialog: false,
58 personlist: null, 59 personlist: null,
59 waitMemberList: [], 60 waitMemberList: [],
60 keyList: [], 61 keyList: [],
61 listdata: [], 62 listdata: [],
62 setlistdata: [], 63 setlistdata: [],
63 tableUrlroles: api.roles, 64 tableUrlroles: api.roles,
64 form: { 65 form: {
65 rolesName: "", 66 rolesName: "",
67 },
68 // 当前所选角色id
69 roleId: "",
70 title: "",
71 queryParam: {},
72 multipleSelection: [],
73 // 菜单列表
74 menutablelistData: [],
75 tableUrl: api.menus, // 菜单接口地址
76 meumurlid: api.subsystem, // 项目id接口地址
77 selectType: "0",
78 queryName: "",
79 organizationId: "", // 组织机构ID
80 departmentId: "", // 部门ID
81 departmentList: [], // 部门列表
82 levelList: [], // 职务级别
83 sexList: [],
84 operationCodes: null, // 操作符对象
85 operationList: [], // 获取授权列表需要提交的操作符数组
86 typeOptions: [
87 {
88 value: "0",
89 label: "姓名",
66 }, 90 },
67 // 当前所选角色id 91 {
68 roleId: "", 92 value: "1",
69 title: "", 93 label: "工号",
70 queryParam: {}, 94 },
71 multipleSelection: [], 95 {
72 // 菜单列表 96 value: "2",
73 menutablelistData: [], 97 label: "部门",
74 tableUrl: api.menus, // 菜单接口地址 98 },
75 meumurlid: api.subsystem, // 项目id接口地址 99 {
76 selectType: "0", 100 value: "3",
77 queryName: "", 101 label: "机构",
78 organizationId: "", // 组织机构ID 102 },
79 departmentId: "", // 部门ID 103 ],
80 departmentList: [], // 部门列表 104
81 levelList: [], // 职务级别 105 selectionList: [],
82 sexList: [], 106 tableData: {
83 operationCodes: null, // 操作符对象 107 columns: [
84 operationList: [], // 获取授权列表需要提交的操作符数组
85 typeOptions: [
86 {
87 value: "0",
88 label: "姓名",
89 },
90 {
91 value: "1",
92 label: "工号",
93 },
94 {
95 value: "2",
96 label: "部门",
97 },
98 { 108 {
99 value: "3", 109 label: "序号",
100 label: "机构", 110 type: "index",
111 width: "50",
112 index: this.indexMethod,
101 }, 113 },
102 ], 114 ]
103 115 .concat(data.columns())
104 selectionList: [], 116 .concat([
105 tableData: {
106 columns: [
107 { 117 {
108 label: "序号", 118 label: "排序",
109 type: "index", 119 width: 300,
110 width: "50", 120 render: (h, scope) => {
111 index: this.indexMethod, 121 return (
122 <div>
123 <el-button
124 type="text"
125 class='movebtnColor'
126 disabled={scope.row.isTop}
127 onClick={() => {
128 this.updateOrder(scope.row, 'TOP');
129 }}
130 >
131 置顶
132 </el-button>
133 <el-button
134 type="text"
135 class='movebtnColor'
136 disabled={scope.row.isTop}
137 onClick={() => {
138 this.updateOrder(scope.row, 'UP');
139 }}
140 >
141 上移
142 </el-button>
143 <el-button
144 type="text"
145 class='movebtnColor'
146 disabled={scope.row.isBottom}
147 onClick={() => {
148 this.updateOrder(scope.row, 'DOWN');
149 }}
150 >
151 下移
152 </el-button>
153 <el-button
154 type="text"
155 class='movebtnColor'
156 disabled={scope.row.isBottom}
157 onClick={() => {
158 this.updateOrder(scope.row, 'BOTTOM');
159 }}
160 >
161 置底
162 </el-button>
163 </div>
164 );
165 },
112 }, 166 },
113 ] 167 ])
114 .concat(data.columns()) 168 .concat([
115 .concat([ 169 {
116 { 170 label: "操作",
117 label: "排序", 171 width: 280,
118 width: 300, 172 render: (h, scope) => {
119 render: (h, scope) => { 173 return (
120 return ( 174 <div>
121 <div> 175 <el-tooltip
122 <el-button 176 class="item"
123 type="text" 177 effect="dark"
124 class='movebtnColor' 178 disabled={scope.row.type !== "Everyone"}
125 disabled={scope.row.isTop} 179 content="没有点击的权限"
126 onClick={() => { 180 placement="top"
127 this.updateOrder(scope.row, 'TOP'); 181 >
128 }} 182 <span>
129 > 183 <el-button
130 置顶 184 disabled={scope.row.type === "Everyone"}
131 </el-button> 185 type="text"
132 <el-button 186 size="mini"
133 type="text" 187 class="configurationbtnColor"
134 class='movebtnColor' 188 onClick={() => {
135 disabled={scope.row.isTop} 189 this.getList(scope.row);
136 onClick={() => { 190 }}
137 this.updateOrder(scope.row, 'UP'); 191 >
138 }} 192 配置
139 > 193 </el-button>
140 上移 194 </span>
141 </el-button> 195 </el-tooltip>
142 <el-button 196 <el-tooltip
143 type="text" 197 class="item"
144 class='movebtnColor' 198 effect="dark"
145 disabled={scope.row.isBottom} 199 disabled={scope.row.category !== 1}
146 onClick={() => { 200 content="系统内置角色 不允许修改"
147 this.updateOrder(scope.row, 'DOWN'); 201 placement="top"
148 }} 202 >
149 > 203 <span>
150 下移 204 <el-button
151 </el-button> 205 disabled={scope.row.category === 1}
152 <el-button 206 type="text"
153 type="text" 207 size="mini"
154 class='movebtnColor' 208 class='successColor'
155 disabled={scope.row.isBottom} 209 onClick={() => {
156 onClick={() => { 210 this.handleAddEdit(scope.row);
157 this.updateOrder(scope.row, 'BOTTOM'); 211 }}
158 }} 212 >
159 > 213 修改
160 置底 214 </el-button>
161 </el-button> 215 </span>
162 </div> 216 </el-tooltip>
163 ); 217 <el-tooltip
164 }, 218 class="item"
219 effect="dark"
220 disabled={scope.row.category !== 1}
221 content="系统内置角色 不允许删除"
222 placement="top"
223 >
224 <span>
225 <el-button
226 type="text"
227 disabled={scope.row.category === 1}
228 size="mini"
229 class='delColor'
230 // style="color:#F56C6C"
231 onClick={() => {
232 this.handleDelete(scope.row.id, scope.row.name);
233 }}
234 >
235 删除
236 </el-button>
237 </span>
238 </el-tooltip>
239 </div>
240 );
165 }, 241 },
166 ])
167 .concat([
168 {
169 label: "操作",
170 width: 280,
171 render: (h, scope) => {
172 return (
173 <div>
174 <el-tooltip
175 class="item"
176 effect="dark"
177 disabled={scope.row.type !== "Everyone"}
178 content="没有点击的权限"
179 placement="top"
180 >
181 <span>
182 <el-button
183 disabled={scope.row.type === "Everyone"}
184 type="text"
185 size="mini"
186 class="configurationbtnColor"
187 onClick={() => {
188 this.getList(scope.row);
189 }}
190 >
191 配置
192 </el-button>
193 </span>
194 </el-tooltip>
195 <el-tooltip
196 class="item"
197 effect="dark"
198 disabled={scope.row.category !== 1}
199 content="系统内置角色 不允许修改"
200 placement="top"
201 >
202 <span>
203 <el-button
204 disabled={scope.row.category === 1}
205 type="text"
206 size="mini"
207 class='successColor'
208 onClick={() => {
209 this.handleAddEdit(scope.row);
210 }}
211 >
212 修改
213 </el-button>
214 </span>
215 </el-tooltip>
216 <el-tooltip
217 class="item"
218 effect="dark"
219 disabled={scope.row.category !== 1}
220 content="系统内置角色 不允许删除"
221 placement="top"
222 >
223 <span>
224 <el-button
225 type="text"
226 disabled={scope.row.category === 1}
227 size="mini"
228 class='delColor'
229 // style="color:#F56C6C"
230 onClick={() => {
231 this.handleDelete(scope.row.id, scope.row.name);
232 }}
233 >
234 删除
235 </el-button>
236 </span>
237 </el-tooltip>
238 </div>
239 );
240 },
241 242
242 }]), 243 }]),
243 }, 244 },
244 data: [], 245 data: [],
246 }
247 },
248 created () {
249 this.getTableData();
250 this.getTableList()
251 },
252 computed: {
253 ...mapGetters(["products"])
254 },
255 mounted () { },
256 methods: {
257 //查询
258 searchQuery () {
259 if (this.form.rolesName) {
260 this.listdata = this.childrenFn(this.setlistdata, this.form.rolesName);
261 } else {
262 this.getTableData()
245 } 263 }
246 }, 264 },
247 created () { 265 childrenFn (arr, key) {
248 this.getTableData(); 266 let searchTree = [];
249 this.getTableList() 267 arr.forEach((item, index) => {
268 if (item.name.indexOf(key) != -1) {
269
270 searchTree.push(item);
271 }
272 });
273 if (searchTree != undefined && searchTree.length != 0) {
274 return judgeSort(searchTree);
275 }
250 }, 276 },
251 computed: { 277 // 获取角色列表
252 ...mapGetters(["products"]) 278 getTableData () {
279 getRolesById([1, 2])
280 .then((res) => {
281 this.listdata = res.content;
282 this.listdata = judgeSort(this.listdata);
283 this.setlistdata = res.content;
284 })
285 .catch((e) => console.error(e));
253 }, 286 },
254 mounted () { },
255 methods: {
256 //查询
257 searchQuery () {
258 if (this.form.rolesName) {
259 this.listdata = this.childrenFn(this.setlistdata, this.form.rolesName);
260 } else {
261 this.getTableData()
262 }
263 },
264 childrenFn (arr, key) {
265 let searchTree = [];
266 arr.forEach((item, index) => {
267 if (item.name.indexOf(key) != -1) {
268 287
269 searchTree.push(item); 288 // 获取菜单列表
270 } 289 getTableList () {
271 }); 290 getMenuInfo(this.BASE_API.CODE).then((res) => {
272 if (searchTree != undefined && searchTree.length != 0) { 291 if (res.code === 200) {
273 return judgeSort(searchTree); 292 this.menutablelistData = judgeSort(res.result)
293 } else {
294 this.$message.error({ message: res.message, showClose: true })
274 } 295 }
275 }, 296 })
276 // 获取角色列表 297 const queryOptionsid = {
277 getTableData () { 298 conditionGroup: {
278 getRolesById([1, 2]) 299 queryRelation: "AND",
279 .then((res) => { 300 conditions: [
280 this.listdata = res.content; 301 {
281 this.listdata = judgeSort(this.listdata); 302 property: "code",
282 this.setlistdata = res.content; 303 value: this.products,
283 }) 304 operator: "EQ",
284 .catch((e) => console.error(e)); 305 },
285 }, 306 ],
286 307 },
287 // 获取菜单列表 308 };
288 getTableList () { 309 const params = {
289 getMenuInfo(sessionStorage.getItem("products")).then((res) => { 310 queryOptions: queryOptionsid,
290 if (res.code === 200) { 311 };
291 this.menutablelistData = judgeSort(res.result) 312 // 获取系统id
292 } else { 313 getAction(this.meumurlid, params)
293 this.$message.error({ message: res.message, showClose: true }) 314 .then((res) => {
294 } 315 this.productId = res.content[0].id;
316 this.getAuthorityList(res.content[0].id, res.content[0].code)
317 this.selectedSubsystemCode = res.content[0].code
318 // let queryOptions = {
319 // conditionGroup: {
320 // conditions: [
321 // {
322 // property: "productId",
323 // value: this.productId,
324 // operator: "EQ",
325 // },
326 // ],
327 // queryRelation: "AND",
328 // },
329 // orderBys: [{ property: "sort", direction: "desc" }],
330 // };
331 // if (!this.tableUrl) {
332 // console.log("请设置tableUrl属性为接口地址!");
333 // return;
334 // }
335 // if (this.queryOptions !== "") {
336 // this.queryParam.queryOptions = JSON.stringify(queryOptions);
337 // }
338 // 查询系统菜单
339 // getAction(this.tableUrl, this.queryParam)
340 // .then((res) => {
341 // if (res.status === 1) {
342 // this.loading = false;
343 // // this.menutablelistData = res.content;
344 // console.log("res.content菜单", res.content);
345 // } else {
346 // this.$message.error({ message: res.message, showClose: true });
347 // this.loading = false;
348 // }
349 // })
350 // .catch((error) => {
351 // console.log("er", error);
352 // this.loading = false;
353 // });
295 }) 354 })
296 const queryOptionsid = { 355 .catch((error) => {
297 conditionGroup: { 356 console.log("er", error);
298 queryRelation: "AND", 357 });
299 conditions: [ 358 },
300 { 359 // 获取权限列表
301 property: "code", 360 getAuthorityList (productId, code) {
302 value: this.products, 361 getAuthorityListAction(productId, code).then(
303 operator: "EQ", 362 res => {
304 }, 363 if (res.status === 1) {
305 ], 364 if (res.content.length !== 0) {
306 }, 365 this.operationCodes = res.content[0].operations
307 }; 366 this.operationList = []
308 const params = { 367 for (var k in this.operationCodes) {
309 queryOptions: queryOptionsid, 368 this.operationList.push(k)
310 };
311 // 获取系统id
312 getAction(this.meumurlid, params)
313 .then((res) => {
314 this.productId = res.content[0].id;
315 this.getAuthorityList(res.content[0].id, res.content[0].code)
316 this.selectedSubsystemCode = res.content[0].code
317 // let queryOptions = {
318 // conditionGroup: {
319 // conditions: [
320 // {
321 // property: "productId",
322 // value: this.productId,
323 // operator: "EQ",
324 // },
325 // ],
326 // queryRelation: "AND",
327 // },
328 // orderBys: [{ property: "sort", direction: "desc" }],
329 // };
330 // if (!this.tableUrl) {
331 // console.log("请设置tableUrl属性为接口地址!");
332 // return;
333 // }
334 // if (this.queryOptions !== "") {
335 // this.queryParam.queryOptions = JSON.stringify(queryOptions);
336 // }
337 // 查询系统菜单
338 // getAction(this.tableUrl, this.queryParam)
339 // .then((res) => {
340 // if (res.status === 1) {
341 // this.loading = false;
342 // // this.menutablelistData = res.content;
343 // console.log("res.content菜单", res.content);
344 // } else {
345 // this.$message.error({ message: res.message, showClose: true });
346 // this.loading = false;
347 // }
348 // })
349 // .catch((error) => {
350 // console.log("er", error);
351 // this.loading = false;
352 // });
353 })
354 .catch((error) => {
355 console.log("er", error);
356 });
357 },
358 // 获取权限列表
359 getAuthorityList (productId, code) {
360 getAuthorityListAction(productId, code).then(
361 res => {
362 if (res.status === 1) {
363 if (res.content.length !== 0) {
364 this.operationCodes = res.content[0].operations
365 this.operationList = []
366 for (var k in this.operationCodes) {
367 this.operationList.push(k)
368 }
369 } 369 }
370 } else {
371 this.$message.error({ message: res.message, showClose: true })
372 } 370 }
371 } else {
372 this.$message.error({ message: res.message, showClose: true })
373 } 373 }
374 ) 374 }
375 }, 375 )
376 },
376 377
377 // 配置 378 // 配置
378 getList (row) { 379 getList (row) {
379 this.getTableList() 380 this.getTableList()
380 const params = {}; 381 const params = {};
381 const queryOptions = { 382 const queryOptions = {
382 conditionGroup: { 383 conditionGroup: {
383 conditions: [ 384 conditions: [
384 { 385 {
385 property: "organizationId", 386 property: "organizationId",
386 value: row.organizationId, 387 value: row.organizationId,
387 operator: "EQ", 388 operator: "EQ",
388 }, 389 },
389 { 390 {
390 property: "departmentId", 391 property: "departmentId",
391 value: row.departmentId, 392 value: row.departmentId,
392 operator: "EQ", 393 operator: "EQ",
393 }, 394 },
394 ], 395 ],
395 queryRelation: "AND", 396 queryRelation: "AND",
396 }, 397 },
397 orderBys: [{ property: "sort", direction: "desc" }], 398 orderBys: [{ property: "sort", direction: "desc" }],
398 }; 399 };
399 params.queryOptions = JSON.stringify(queryOptions); 400 params.queryOptions = JSON.stringify(queryOptions);
400 401
401 getUserRoles(row.id).then((res) => { 402 getUserRoles(row.id).then((res) => {
402 if (res.status === 1) { 403 if (res.status === 1) {
403 this.personlist = res.content; 404 this.personlist = res.content;
404 getAction(api.users, params).then((res) => { 405 getAction(api.users, params).then((res) => {
405 if (res.status === 1) { 406 if (res.status === 1) {
406 this.waitMemberList = res.content; 407 this.waitMemberList = res.content;
407 if (this.personlist) { 408 if (this.personlist) {
408 this.waitMemberList.forEach((item, i) => { 409 this.waitMemberList.forEach((item, i) => {
409 this.personlist.forEach((val) => { 410 this.personlist.forEach((val) => {
410 if (item.id === val.id) { 411 if (item.id === val.id) {
411 this.waitMemberList[i].selectStatus = 0; 412 this.waitMemberList[i].selectStatus = 0;
412 } 413 }
413 });
414 }); 414 });
415 } 415 });
416
417 this.$refs.rolesForm.personlist(this.waitMemberList, row.id);
418 this.$refs.rolesForm.menulist(this.operationList, row.id, this.selectedSubsystemCode, this.menutablelistData, this.operationCodes);
419 } else {
420 this.$message.error({ message: res.message, showClose: true });
421 } 416 }
422 });
423 this.$refs.rolesForm.title = "人员配置";
424 } else this.$message.error({ message: res.message, showClose: true });
425 });
426 },
427 // 新增、修改角色
428 handleAddEdit (value) {
429 this.isDialog = true
430 this.$refs.addEditDialog.menuType = this.menuType;
431 this.$refs.addEditDialog.roleId = value.id;
432 this.roleSort = value.sort ? value.sort : 0;
433 this.$refs.addEditDialog.dialogForm.roleType = sessionStorage.getItem("products");
434 if (value.id) {
435 this.$refs.addEditDialog.dialogForm.roleName = value.name;
436 417
437 this.$refs.addEditDialog.dialogForm.roleTextArea = value.description; 418 this.$refs.rolesForm.personlist(this.waitMemberList, row.id);
438 } 419 this.$refs.rolesForm.menulist(this.operationList, row.id, this.selectedSubsystemCode, this.menutablelistData, this.operationCodes);
439 this.$refs.addEditDialog.showAddEditDialog = true; 420 } else {
440 this.$refs.addEditDialog.title = value.id ? "修改" : "新增"; 421 this.$message.error({ message: res.message, showClose: true });
441 }, 422 }
442 //排序 423 });
443 updateOrder (record, operate) { 424 this.$refs.rolesForm.title = "人员配置";
444 const findIndex = this.listdata.findIndex(item => item.id === record.id) 425 } else this.$message.error({ message: res.message, showClose: true });
445 let swapId = '' 426 });
446 if (operate === 'UP') { 427 },
447 swapId = this.listdata[findIndex - 1].id 428 // 新增、修改角色
448 } else if (operate === 'DOWN') { 429 handleAddEdit (value) {
449 swapId = this.listdata[findIndex + 1].id 430 this.isDialog = true
431 this.$refs.addEditDialog.menuType = this.menuType;
432 this.$refs.addEditDialog.roleId = value.id;
433 this.roleSort = value.sort ? value.sort : 0;
434 this.$refs.addEditDialog.dialogForm.roleType = sessionStorage.getItem("products");
435 if (value.id) {
436 this.$refs.addEditDialog.dialogForm.roleName = value.name;
437
438 this.$refs.addEditDialog.dialogForm.roleTextArea = value.description;
439 }
440 this.$refs.addEditDialog.showAddEditDialog = true;
441 this.$refs.addEditDialog.title = value.id ? "修改" : "新增";
442 },
443 //排序
444 updateOrder (record, operate) {
445 const findIndex = this.listdata.findIndex(item => item.id === record.id)
446 let swapId = ''
447 if (operate === 'UP') {
448 swapId = this.listdata[findIndex - 1].id
449 } else if (operate === 'DOWN') {
450 swapId = this.listdata[findIndex + 1].id
451 }
452 updateOrder('/rest/roles', record, operate, swapId).then(res => {
453 if (res.status === 1) {
454 this.$message.success({ message: res.message, showClose: true })
455 this.getTableData();
456 } else {
457 this.$message.error({ message: res.message, showClose: true })
450 } 458 }
451 updateOrder('/rest/roles', record, operate, swapId).then(res => { 459 })
452 if (res.status === 1) { 460 },
453 this.$message.success({ message: res.message, showClose: true }) 461 // 删除
454 this.getTableData(); 462 handleDelete: function (id, content = "") {
455 } else { 463 this.$confirm(
456 this.$message.error({ message: res.message, showClose: true }) 464 `<div class="customer-message-wrapper">
457 }
458 })
459 },
460 // 删除
461 handleDelete: function (id, content = "") {
462 this.$confirm(
463 `<div class="customer-message-wrapper">
464 <h5 class="title">您确认要执行该操作用于以下信息:</h5> 465 <h5 class="title">您确认要执行该操作用于以下信息:</h5>
465 <p class="content" aria-controls="${content}">${content} 466 <p class="content" aria-controls="${content}">${content}
466 </p> 467 </p>
...@@ -468,50 +469,50 @@ ...@@ -468,50 +469,50 @@
468 <span >无法恢复</span> 469 <span >无法恢复</span>
469 </p> 470 </p>
470 </div>`, 471 </div>`,
471 "执行确认", 472 "执行确认",
472 { 473 {
473 dangerouslyUseHTMLString: true, 474 dangerouslyUseHTMLString: true,
474 customClass: "customer-delete", 475 customClass: "customer-delete",
475 confirmButtonText: "确定", 476 confirmButtonText: "确定",
476 cancelButtonText: "取消", 477 cancelButtonText: "取消",
477 type: "warning", 478 type: "warning",
479 }
480 )
481 .then(() => {
482 if (!this.tableUrlroles) {
483 this.$message.error({
484 message: "请设置tableUrl属性为接口地址!",
485 showClose: true,
486 });
487 return;
478 } 488 }
479 ) 489 const url = this.tableUrlroles + "/" + id;
480 .then(() => { 490 deleteAction(url).then((res) => {
481 if (!this.tableUrlroles) { 491 if (res.status === 1) {
482 this.$message.error({ 492 this.$message.success({ message: res.message, showClose: true });
483 message: "请设置tableUrl属性为接口地址!", 493 this.getTableData();
484 showClose: true, 494 } else {
485 }); 495 this.$message.error({ message: res.message, showClose: true });
486 return;
487 } 496 }
488 const url = this.tableUrlroles + "/" + id; 497 });
489 deleteAction(url).then((res) => { 498 })
490 if (res.status === 1) { 499 .catch(() => { });
491 this.$message.success({ message: res.message, showClose: true }); 500 },
492 this.getTableData(); 501 // 新增回显
493 } else { 502 reloadTableData () {
494 this.$message.error({ message: res.message, showClose: true }); 503 this.getTableData();
495 }
496 });
497 })
498 .catch(() => { });
499 },
500 // 新增回显
501 reloadTableData () {
502 this.getTableData();
503 },
504 }, 504 },
505 }; 505 },
506 };
506 </script> 507 </script>
507 <style scoped lang="scss"> 508 <style scoped lang="scss">
508 @import "~@/styles/mixin.scss"; 509 @import "~@/styles/mixin.scss";
509 // @import "~@/styles/public.scss"; 510 // @import "~@/styles/public.scss";
510 511
511 /deep/.el-button.is-disabled.el-button--text { 512 /deep/.el-button.is-disabled.el-button--text {
512 width: 64px; 513 width: 64px;
513 height: 28px; 514 height: 28px;
514 background: rgba(255, 255, 255, 0.1); 515 background: rgba(255, 255, 255, 0.1);
515 border-radius: 16px; 516 border-radius: 16px;
516 } 517 }
517 </style> 518 </style>
......
1 /* 1 /*
2 * @Author: xiaomiao 1158771342@qq.com 2 * @Author: xiaomiao 1158771342@qq.com
3 * @Date: 2023-01-30 17:59:51 3 * @Date: 2023-01-30 17:59:51
4 * @LastEditors: xiaomiao 1158771342@qq.com 4 * @LastEditors: Please set LastEditors
5 * @LastEditTime: 2023-03-21 18:34:17 5 * @LastEditTime: 2023-03-23 09:34:50
6 * @FilePath: \监管系统\js-web-jianguan\src\views\system\users\data\index.js 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 7 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
8 */ 8 */
...@@ -29,7 +29,8 @@ class data extends filter { ...@@ -29,7 +29,8 @@ class data extends filter {
29 }, 29 },
30 { 30 {
31 prop: "departmentName", 31 prop: "departmentName",
32 label: "组织机构" 32 label: "组织机构",
33 minWidth: 130
33 }, 34 },
34 { 35 {
35 prop: "telephone", 36 prop: "telephone",
......