style:打包文件配置
Showing
62 changed files
with
1172 additions
and
867 deletions
src/api/Rolemanagement.js
0 → 100644
1 | import request from "@/utils/request"; | ||
2 | import SERVER from "./config"; | ||
3 | import { getParams } from './util' | ||
4 | import { | ||
5 | api, | ||
6 | getAction, | ||
7 | postAction, | ||
8 | deleteAction, | ||
9 | putAction | ||
10 | } from './manageApi' | ||
11 | |||
12 | /** 角色管理开始 */ | ||
13 | // 获取角色列表 categoryId | ||
14 | export const getRolesById = categoryId => { | ||
15 | const conditionGroup = { | ||
16 | conditions: [ | ||
17 | { | ||
18 | property: 'category', | ||
19 | value:categoryId, | ||
20 | operator: 'EQ' | ||
21 | } | ||
22 | ], | ||
23 | queryRelation: 'AND' | ||
24 | } | ||
25 | const params = getParams(conditionGroup); | ||
26 | console.log(api.roles,params); | ||
27 | return getAction(api.roles, params) | ||
28 | } | ||
29 | // 人员列表 | ||
30 | export const getUserRoles = (id) => { | ||
31 | return getAction(`${api.userRoles}/${id}/users`) | ||
32 | } | ||
33 | // 更新人员 | ||
34 | export const updateUser = (id, data) => { | ||
35 | return putAction(`${api.userRoles}/${id}/users`, data) | ||
36 | } |
src/api/login.js
0 → 100644
1 | import request from "@/utils/request"; | ||
2 | import SERVER from "./config"; | ||
3 | |||
4 | export function loginIn(username, password) { | ||
5 | return request({ | ||
6 | url: `${SERVER.MANAGEMENTAPI}/login?username=${username}&password=${password}`, | ||
7 | method: "post", | ||
8 | }); | ||
9 | } | ||
10 | export function logout() { | ||
11 | return request({ | ||
12 | url: `${SERVER.MANAGEMENTAPI}/logout`, | ||
13 | method: "post", | ||
14 | }); | ||
15 | } | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/api/manageApi.js
0 → 100644
1 | import request from '@/utils/request' | ||
2 | import SERVER from "./config"; | ||
3 | const workflow = '/workflow' | ||
4 | const log = '/log' | ||
5 | const crud = '/crud' | ||
6 | export const api = { | ||
7 | userInfo: SERVER.MANAGEMENTAPI + '/rest/user-info', // 登录用户信息 | ||
8 | permissionsUser: SERVER.MANAGEMENTAPI + '/rest/user-permissions', // 用户权限 | ||
9 | baseDataCategory: SERVER.MANAGEMENTAPI + '/rest/base-data-category', // 数据字典类别 | ||
10 | baseData: SERVER.MANAGEMENTAPI + '/rest/base-data', // 数据字典 | ||
11 | districts: SERVER.MANAGEMENTAPI + '/rest/districts', // 行政区划 | ||
12 | districtsAll: SERVER.MANAGEMENTAPI + '/rest/districts/parent-tree', // 条件查询所有行政区划 | ||
13 | organizations: SERVER.MANAGEMENTAPI + '/rest/organizations', // 组织机构 | ||
14 | departments: SERVER.MANAGEMENTAPI + '/rest/departments', // 部门 | ||
15 | users: SERVER.MANAGEMENTAPI + '/rest/users', // 人员用户 | ||
16 | roles: SERVER.MANAGEMENTAPI + '/rest/roles', // 角色 | ||
17 | userRoles: SERVER.MANAGEMENTAPI + '/rest/user-roles', // 角色对应人员关系 | ||
18 | productCategory: SERVER.MANAGEMENTAPI + '/rest/product-category', // 业务分类 | ||
19 | resourceCategory: SERVER.MANAGEMENTAPI + '/rest/resource-category', // 资源分类 | ||
20 | resources: SERVER.MANAGEMENTAPI + '/rest/resources', // 资源详情列表 | ||
21 | subsystem: SERVER.MANAGEMENTAPI + '/rest/products', // 子系统管理 | ||
22 | operations: SERVER.MANAGEMENTAPI + '/rest/operations', // 操作 | ||
23 | menus: SERVER.MANAGEMENTAPI + '/rest/menus', // 菜单 | ||
24 | organizationPermissions: SERVER.MANAGEMENTAPI + '/rest/organization-permissions', // 机构授权 | ||
25 | departmentPermissions: SERVER.MANAGEMENTAPI + '/rest/department-permissions', // 部门授权 | ||
26 | rolePermissions: SERVER.MANAGEMENTAPI + '/rest/role-permissions', // 角色授权 | ||
27 | peoPermissions: SERVER.MANAGEMENTAPI + '/rest/user-permissions', // 用户授权 | ||
28 | resourcePermissions: SERVER.MANAGEMENTAPI + '/rest/resource-permissions', // 资源授权查询 | ||
29 | menuPermissions: SERVER.MANAGEMENTAPI + '/rest/menu-permissions', // 菜单授权查询 | ||
30 | serviceCategory: SERVER.MANAGEMENTAPI + '/rest/service-category', // 服务分类 | ||
31 | service: SERVER.MANAGEMENTAPI + '/rest/service', // 服务详情列表 | ||
32 | databaseServer: workflow + '/rest/database-server', // 数据库服务器 | ||
33 | materialCategory: workflow + '/rest/material-category', // 材料分类 | ||
34 | material: workflow + '/rest/material', // 材料 | ||
35 | function: workflow + '/rest/function', // 功能属性 | ||
36 | eventCategory: workflow + '/rest/event-category', // 服务事件分类 | ||
37 | event: workflow + '/rest/event', // 服务事件 | ||
38 | formCategorys: workflow + '/rest/forms-category', // 表单分类 | ||
39 | forms: workflow + '/rest/forms', // 表单 | ||
40 | metadata: workflow + '/rest/metadata', // 元数据 | ||
41 | dataObjectCategory: workflow + '/rest/data-object-category', // 对象管理类别 | ||
42 | dataObject: workflow + '/rest/data-object', // 对象管理 | ||
43 | workflowBusiness: workflow + '/rest/businesses', // 业务流程 | ||
44 | // workflowModel: workflow+'/rest/workflow/model',//流程模型 | ||
45 | modelcategorys: workflow + '/rest/model-categories', // 模型分类 | ||
46 | models: workflow + '/rest/models', // 工作流模型表 | ||
47 | businessesModels: workflow + '/rest/businesses-models', // 业务流程关系 | ||
48 | pluginCategory: workflow + '/rest/plugin-category', // 流程插件分类管理 | ||
49 | plugin: workflow + '/rest/plugins', // 流程插件分类管理 | ||
50 | groups: workflow + '/rest/groups', // 用户组分类 | ||
51 | groupUsers: workflow + '/rest/group-users', // 用户组人员 | ||
52 | saveWorkflowGroupUser: workflow + '/rest/groups/sug', // 工作流设计器增加用户组 | ||
53 | validate: workflow + '/rest/models/validate', // 流程验证 | ||
54 | tokens: SERVER.MANAGEMENTAPI + '/rest/tokens', // token | ||
55 | session: '/rest/session', // session | ||
56 | pwdSetting: SERVER.MANAGEMENTAPI + '/rest/password-setting', // | ||
57 | singleSign: '/cas/rest/services', // 单点登录管理 | ||
58 | attachments: SERVER.MANAGEMENTAPI + '/rest/attachments', // 文件上传服务 | ||
59 | instances: workflow + '/rest/workflow/instances', // 实例 | ||
60 | workflowTask: workflow + '/rest/workflow-task', // 任务 | ||
61 | definitions: workflow + '/rest/workflow/definitions', // 流程实例 | ||
62 | systemAccessLogs: log + '/rest/system-access-logs', // 系统访问日志 | ||
63 | errorLogs: log + '/rest/common-log-statistics', // 错误日志 | ||
64 | appAccess: log + '/rest/system-access-logs/count-app-access', // 系统访问数 | ||
65 | userAccess: log + '/rest/system-access-logs/count-user-access', // 用户访问数 | ||
66 | statisticMenus: log + '/rest/system-access-logs/statistic-menus', // 统计菜单访问数 | ||
67 | statisticUsers: log + '/rest/system-access-logs/statistic-users', // 统计用户访问数 | ||
68 | abnormal: log + '/rest/abnormal', // 统计平台报警 | ||
69 | monitorConfig: log + '/rest/monitor-alert-config', // 监控预警配置 | ||
70 | statisticTimes: log + '/rest/system-access-logs/statistic-times', // 监控预警配置 | ||
71 | server: log + '/rest/server', // 服务器监控 | ||
72 | serverStatistics: log + '/rest/server-statistics', // 服务器监控信息统计 | ||
73 | avgTimes: log + '/rest/services-statistics/avg-times', // 根据时间查响应时间和访问次数 | ||
74 | statisticDepts: log + '/rest/system-access-logs/statistic-depts', // 访问部门统计 | ||
75 | crudHead: crud + '/rest/head', // crudhead | ||
76 | crudGet: crud + '/rest/get', // crudget | ||
77 | crudPost: crud + '/rest/post', // crudPost | ||
78 | crudPut: crud + '/rest/put', // crudPut | ||
79 | crudDel: crud + '/rest/delete', // crudDel | ||
80 | crudMetadata: crud + '/rest/metadata', //crudMetadata | ||
81 | crudBusiness : crud + '/rest/business', // crudBusiness | ||
82 | crudDatasources : crud + '/rest/datasources', // crudDatasources | ||
83 | } | ||
84 | // get公共方法 | ||
85 | export function getAction(url, params = {}) { | ||
86 | return request({ | ||
87 | url, | ||
88 | method: 'get', | ||
89 | params | ||
90 | }) | ||
91 | } | ||
92 | // post公共方法 | ||
93 | export function postAction(url, data = null) { | ||
94 | return request({ | ||
95 | url, | ||
96 | method: 'post', | ||
97 | data | ||
98 | }) | ||
99 | } | ||
100 | // method= {post | put} | ||
101 | export function httpAction(url, data, method) { | ||
102 | return request({ | ||
103 | url, | ||
104 | method, | ||
105 | data | ||
106 | }) | ||
107 | } | ||
108 | // put公共方法 | ||
109 | export function putAction(url, data = null) { | ||
110 | return request({ | ||
111 | url, | ||
112 | method: 'put', | ||
113 | data | ||
114 | }) | ||
115 | } | ||
116 | // delete | ||
117 | export function deleteAction(url, data = null) { | ||
118 | return request({ | ||
119 | url, | ||
120 | method: 'delete', | ||
121 | data | ||
122 | }) | ||
123 | } | ||
124 | |||
125 | // 批量删除 | ||
126 | export function deleteBranch(url, data) { | ||
127 | return request({ | ||
128 | url, | ||
129 | method: 'delete', | ||
130 | data | ||
131 | }) | ||
132 | } | ||
133 | |||
134 | |||
135 | |||
136 | |||
137 | |||
138 | |||
139 | |||
140 |
... | @@ -6,15 +6,19 @@ class sjsbTask { | ... | @@ -6,15 +6,19 @@ class sjsbTask { |
6 | // 定时任务查询接口 | 6 | // 定时任务查询接口 |
7 | async getTaskListByName (data) { | 7 | async getTaskListByName (data) { |
8 | return request({ | 8 | return request({ |
9 | url: SERVER.SERVERAPI + '/sjsbTask/getTaskListByName', | 9 | url: SERVER.SERVERAPI + '/rest/schedule/getScheduleList', |
10 | method: 'post', | 10 | method: 'get', |
11 | data | 11 | params: { |
12 | jobName: data.jobName, | ||
13 | pageNo: data.currentPage, | ||
14 | pageSize: data.pageSize | ||
15 | } | ||
12 | }) | 16 | }) |
13 | } | 17 | } |
14 | // 定时任务新增接口 | 18 | // 定时任务新增接口 |
15 | async sjsbTaskSave (data) { | 19 | async sjsbTaskSave (data) { |
16 | return request({ | 20 | return request({ |
17 | url: SERVER.SERVERAPI + '/sjsbTask/save', | 21 | url: SERVER.SERVERAPI + '/rest/schedule/add', |
18 | method: 'post', | 22 | method: 'post', |
19 | data | 23 | data |
20 | }) | 24 | }) |
... | @@ -22,7 +26,7 @@ class sjsbTask { | ... | @@ -22,7 +26,7 @@ class sjsbTask { |
22 | // 修改定时任务执行时间接口 | 26 | // 修改定时任务执行时间接口 |
23 | async updateCron (data) { | 27 | async updateCron (data) { |
24 | return request({ | 28 | return request({ |
25 | url: SERVER.SERVERAPI + '/sjsbTask/updateCron', | 29 | url: SERVER.SERVERAPI + '/rest/schedule/update', |
26 | method: 'post', | 30 | method: 'post', |
27 | data | 31 | data |
28 | }) | 32 | }) |
... | @@ -30,50 +34,30 @@ class sjsbTask { | ... | @@ -30,50 +34,30 @@ class sjsbTask { |
30 | // 定时任务删除接口 | 34 | // 定时任务删除接口 |
31 | async sjsbTaskRemove (id) { | 35 | async sjsbTaskRemove (id) { |
32 | return request({ | 36 | return request({ |
33 | url: SERVER.SERVERAPI + '/sjsbTask/remove', | 37 | url: SERVER.SERVERAPI + '/rest/schedule/delete', |
34 | method: 'get', | 38 | method: 'get', |
35 | params: { | 39 | params: { |
36 | id: id | 40 | jobId: id |
37 | } | ||
38 | }) | ||
39 | } | ||
40 | // 暂停任务接口 | ||
41 | async pauseJob (id) { | ||
42 | return request({ | ||
43 | url: SERVER.SERVERAPI + '/sjsbTask/pauseJob', | ||
44 | method: 'get', | ||
45 | params: { | ||
46 | id: id | ||
47 | } | 41 | } |
48 | }) | 42 | }) |
49 | } | 43 | } |
50 | // 恢复任务接口 | 44 | // 恢复任务接口 |
51 | async resumeJob (id) { | 45 | async recover (id) { |
52 | return request({ | 46 | return request({ |
53 | url: SERVER.SERVERAPI + '/sjsbTask/resumeJob', | 47 | url: SERVER.SERVERAPI + '/rest/schedule/recover', |
54 | method: 'get', | 48 | method: 'get', |
55 | params: { | 49 | params: { |
56 | id: id | 50 | jobId: id |
57 | } | 51 | } |
58 | }) | 52 | }) |
59 | } | 53 | } |
60 | // 激活任务接口 | 54 | // 激活任务接口 |
61 | async activateJob (id) { | 55 | async active (id) { |
62 | return request({ | ||
63 | url: SERVER.SERVERAPI + '/sjsbTask/activateJob', | ||
64 | method: 'get', | ||
65 | params: { | ||
66 | id: id | ||
67 | } | ||
68 | }) | ||
69 | } | ||
70 | // 手动测试 | ||
71 | async sjsbTaskRun (id) { | ||
72 | return request({ | 56 | return request({ |
73 | url: SERVER.SERVERAPI + '/sjsbTask/run', | 57 | url: SERVER.SERVERAPI + '/rest/schedule/active', |
74 | method: 'get', | 58 | method: 'get', |
75 | params: { | 59 | params: { |
76 | id: id | 60 | jobId: id |
77 | } | 61 | } |
78 | }) | 62 | }) |
79 | } | 63 | } | ... | ... |
src/api/util.js
0 → 100644
... | @@ -36,6 +36,16 @@ class work { | ... | @@ -36,6 +36,16 @@ class work { |
36 | } | 36 | } |
37 | }) | 37 | }) |
38 | } | 38 | } |
39 | // 数据趋势 | ||
40 | async dataTrend (code) { | ||
41 | return request({ | ||
42 | url: SERVER.SERVERAPI + '/rest/reg/work/dataTrend', | ||
43 | method: 'get', | ||
44 | params: { | ||
45 | code: code | ||
46 | } | ||
47 | }) | ||
48 | } | ||
39 | // 新建国有房屋信息 | 49 | // 新建国有房屋信息 |
40 | async addhousetotal (code) { | 50 | async addhousetotal (code) { |
41 | return request({ | 51 | return request({ | ... | ... |
... | @@ -3,69 +3,69 @@ | ... | @@ -3,69 +3,69 @@ |
3 | </template> | 3 | </template> |
4 | 4 | ||
5 | <script> | 5 | <script> |
6 | import tdTheme from './theme.json' // 引入默认主题 | 6 | import tdTheme from "./theme.json"; // 引入默认主题 |
7 | import '../map/hanzhong.js' | 7 | import "../map/hanzhong.js"; |
8 | 8 | ||
9 | export default { | 9 | export default { |
10 | name: 'echart', | 10 | name: "echart", |
11 | props: { | 11 | props: { |
12 | className: { | 12 | className: { |
13 | type: String, | 13 | type: String, |
14 | default: 'chart' | 14 | default: "chart", |
15 | }, | 15 | }, |
16 | id: { | 16 | id: { |
17 | type: String, | 17 | type: String, |
18 | default: 'chart' | 18 | default: "chart", |
19 | }, | 19 | }, |
20 | width: { | 20 | width: { |
21 | type: String, | 21 | type: String, |
22 | default: '100%' | 22 | default: "100%", |
23 | }, | 23 | }, |
24 | height: { | 24 | height: { |
25 | type: String, | 25 | type: String, |
26 | default: '2.5rem' | 26 | default: "2.5rem", |
27 | }, | 27 | }, |
28 | options: { | 28 | options: { |
29 | type: Object, | 29 | type: Object, |
30 | default: () => ({}) | 30 | default: () => ({}), |
31 | } | 31 | }, |
32 | }, | 32 | }, |
33 | data () { | 33 | data() { |
34 | return { | 34 | return { |
35 | chart: null | 35 | chart: null, |
36 | } | 36 | }; |
37 | }, | 37 | }, |
38 | watch: { | 38 | watch: { |
39 | options: { | 39 | options: { |
40 | handler (options) { | 40 | handler(options) { |
41 | // 设置true清空echart缓存 | 41 | // 设置true清空echart缓存 |
42 | this.chart.setOption(options, true) | 42 | this.chart.setOption(options, true); |
43 | window.addEventListener('resize',()=>{ | 43 | window.addEventListener("resize", () => { |
44 | this.chart.resize() | 44 | if (this.chart) { |
45 | }) | 45 | this.chart.resize(); |
46 | }, | ||
47 | deep: true | ||
48 | } | 46 | } |
47 | }); | ||
48 | }, | ||
49 | deep: true, | ||
50 | }, | ||
49 | }, | 51 | }, |
50 | mounted () { | 52 | mounted() { |
51 | this.$echarts.registerTheme('tdTheme', tdTheme); // 覆盖默认主题 | 53 | this.$echarts.registerTheme("tdTheme", tdTheme); // 覆盖默认主题 |
52 | this.initChart(); | 54 | this.initChart(); |
53 | }, | 55 | }, |
54 | beforeDestroy () { | 56 | beforeDestroy() { |
55 | this.chart.dispose() | 57 | this.chart.dispose(); |
56 | this.chart = null | 58 | this.chart = null; |
57 | }, | 59 | }, |
58 | methods: { | 60 | methods: { |
59 | initChart () { | 61 | initChart() { |
60 | // 初始化echart | 62 | // 初始化echart |
61 | this.chart = this.$echarts.init(this.$el, 'tdTheme') | 63 | this.chart = this.$echarts.init(this.$el, "tdTheme"); |
62 | function nowSize(val,initWidth=1920){ | 64 | function nowSize(val, initWidth = 1920) { |
63 | return val * (nowClientWidth/initWidth); | 65 | return val * (nowClientWidth / initWidth); |
64 | } | ||
65 | this.chart.setOption(this.options, true) | ||
66 | |||
67 | |||
68 | } | ||
69 | } | 66 | } |
70 | } | 67 | this.chart.setOption(this.options, true); |
68 | }, | ||
69 | }, | ||
70 | }; | ||
71 | </script> | 71 | </script> | ... | ... |
... | @@ -56,14 +56,15 @@ export default { | ... | @@ -56,14 +56,15 @@ export default { |
56 | 56 | ||
57 | <style lang="scss" scoped> | 57 | <style lang="scss" scoped> |
58 | .breadcrumb { | 58 | .breadcrumb { |
59 | width: 80%; | ||
59 | text-indent: 10px; | 60 | text-indent: 10px; |
60 | background: url("~@/image/breadcrumb.png") no-repeat; | 61 | background: url("~@/image/breadcrumb.png") no-repeat; |
61 | background-size: 100% 100%; | 62 | background-size: 100% 100%; |
62 | line-height: 32px; | 63 | line-height: 32px; |
63 | height: 32px; | 64 | height: 32px; |
64 | padding-left: 35px; | 65 | padding-left: 35px; |
65 | margin: 8px 0 8px 6px; | 66 | margin: 8px 0 10px 6px; |
66 | color: #02D9FD; | 67 | color: #CEF8FF; |
67 | } | 68 | } |
68 | 69 | ||
69 | /deep/.el-icon-arrow-right { | 70 | /deep/.el-icon-arrow-right { |
... | @@ -75,7 +76,7 @@ export default { | ... | @@ -75,7 +76,7 @@ export default { |
75 | } | 76 | } |
76 | 77 | ||
77 | /deep/.el-breadcrumb__inner { | 78 | /deep/.el-breadcrumb__inner { |
78 | color: #02D9FD !important; | 79 | color: #CEF8FF !important; |
79 | } | 80 | } |
80 | 81 | ||
81 | .breadcrumb1366 { | 82 | .breadcrumb1366 { | ... | ... |
... | @@ -49,10 +49,10 @@ export default { | ... | @@ -49,10 +49,10 @@ export default { |
49 | watch: { | 49 | watch: { |
50 | cdata: { | 50 | cdata: { |
51 | handler (newData) { | 51 | handler (newData) { |
52 | this.xAxisData = newData.echartData.map((v) => v.name); | 52 | this.xAxisData = newData.echartData.map((v) => v.yearMonth); |
53 | this.yAxisData1 = newData.echartData.map((v) => v.value1); | 53 | this.yAxisData1 = newData.echartData.map((v) => v.receive); |
54 | this.yAxisData2 = newData.echartData.map((v) => v.value2); | 54 | this.yAxisData2 = newData.echartData.map((v) => v.record); |
55 | this.yAxisData3 = newData.echartData.map((v) => v.value3); | 55 | this.yAxisData3 = newData.echartData.map((v) => v.report); |
56 | this.options = { | 56 | this.options = { |
57 | color: newData.color, | 57 | color: newData.color, |
58 | legend: { | 58 | legend: { | ... | ... |
... | @@ -4,83 +4,18 @@ | ... | @@ -4,83 +4,18 @@ |
4 | 4 | ||
5 | <script> | 5 | <script> |
6 | import Chart from './Chart' | 6 | import Chart from './Chart' |
7 | import work from "@/api/work"; | ||
7 | export default { | 8 | export default { |
8 | data () { | 9 | data () { |
9 | return { | 10 | return { |
10 | cdata: { | 11 | cdata: { |
11 | legendItem: ['接入', '上报', '登簿'], | 12 | legendItem: ['接入', '上报', '登簿'], |
12 | color: [ | 13 | color: [ |
13 | "#5324DA", | 14 | "#02D9FD", |
14 | "#E873B2", | 15 | "#FF7962", |
15 | "#F4AF6F " | 16 | "#F5C03D " |
16 | ], | 17 | ], |
17 | echartData: [{ | 18 | echartData: [] |
18 | name: "2017-11", | ||
19 | value1: 1351, | ||
20 | value2: 600, | ||
21 | value3: 568, | ||
22 | }, | ||
23 | { | ||
24 | name: "2017-11", | ||
25 | value1: 980, | ||
26 | value2: 1245, | ||
27 | value3: 1100, | ||
28 | }, | ||
29 | { | ||
30 | name: "2017-11", | ||
31 | value1: 1127, | ||
32 | value2: 398, | ||
33 | value3: 568, | ||
34 | }, | ||
35 | { | ||
36 | name: "2017-11", | ||
37 | value1: 1046, | ||
38 | value2: 689, | ||
39 | value3: 479 | ||
40 | }, | ||
41 | { | ||
42 | name: "2018-02", | ||
43 | value1: 780, | ||
44 | value2: 396, | ||
45 | value3: 655 | ||
46 | }, | ||
47 | { | ||
48 | name: "2018-08", | ||
49 | value1: 359, | ||
50 | value2: 1220, | ||
51 | value3: 540, | ||
52 | }, | ||
53 | { | ||
54 | name: "2018-07", | ||
55 | value1: 229, | ||
56 | value2: 836, | ||
57 | value3: 1234, | ||
58 | }, | ||
59 | { | ||
60 | name: "2018-09", | ||
61 | value1: 1176, | ||
62 | value2: 478, | ||
63 | value3: 755, | ||
64 | }, | ||
65 | { | ||
66 | name: "2018-11", | ||
67 | value1: 515, | ||
68 | value2: 911, | ||
69 | value3: 806, | ||
70 | }, | ||
71 | { | ||
72 | name: "2019-01", | ||
73 | value1: 658, | ||
74 | value2: 979, | ||
75 | value3: 813, | ||
76 | }, | ||
77 | { | ||
78 | name: "2019-03", | ||
79 | value1: 364, | ||
80 | value2: 839, | ||
81 | value3: 886, | ||
82 | }, | ||
83 | ] | ||
84 | } | 19 | } |
85 | } | 20 | } |
86 | }, | 21 | }, |
... | @@ -88,84 +23,23 @@ export default { | ... | @@ -88,84 +23,23 @@ export default { |
88 | Chart | 23 | Chart |
89 | }, | 24 | }, |
90 | mounted() { | 25 | mounted() { |
26 | |||
91 | window.addEventListener("resize", () => { | 27 | window.addEventListener("resize", () => { |
92 | this.cdata=[], | 28 | this.dataTrend() |
93 | this.cdata= { | ||
94 | legendItem: ['接入', '上报', '登簿'], | ||
95 | color: [ | ||
96 | "#5324DA", | ||
97 | "#E873B2", | ||
98 | "#F4AF6F " | ||
99 | ], | ||
100 | echartData: [{ | ||
101 | name: "2017-11", | ||
102 | value1: 1351, | ||
103 | value2: 600, | ||
104 | value3: 568, | ||
105 | }, | ||
106 | { | ||
107 | name: "2017-11", | ||
108 | value1: 980, | ||
109 | value2: 1245, | ||
110 | value3: 1100, | ||
111 | }, | ||
112 | { | ||
113 | name: "2017-11", | ||
114 | value1: 1127, | ||
115 | value2: 398, | ||
116 | value3: 568, | ||
117 | }, | ||
118 | { | ||
119 | name: "2017-11", | ||
120 | value1: 1046, | ||
121 | value2: 689, | ||
122 | value3: 479 | ||
123 | }, | ||
124 | { | ||
125 | name: "2018-02", | ||
126 | value1: 780, | ||
127 | value2: 396, | ||
128 | value3: 655 | ||
129 | }, | ||
130 | { | ||
131 | name: "2018-08", | ||
132 | value1: 359, | ||
133 | value2: 1220, | ||
134 | value3: 540, | ||
135 | }, | ||
136 | { | ||
137 | name: "2018-07", | ||
138 | value1: 229, | ||
139 | value2: 836, | ||
140 | value3: 1234, | ||
141 | }, | ||
142 | { | ||
143 | name: "2018-09", | ||
144 | value1: 1176, | ||
145 | value2: 478, | ||
146 | value3: 755, | ||
147 | }, | ||
148 | { | ||
149 | name: "2018-11", | ||
150 | value1: 515, | ||
151 | value2: 911, | ||
152 | value3: 806, | ||
153 | }, | ||
154 | { | ||
155 | name: "2019-01", | ||
156 | value1: 658, | ||
157 | value2: 979, | ||
158 | value3: 813, | ||
159 | }, | ||
160 | { | ||
161 | name: "2019-03", | ||
162 | value1: 364, | ||
163 | value2: 839, | ||
164 | value3: 886, | ||
165 | }, | ||
166 | ] | ||
167 | } | ||
168 | }); | 29 | }); |
30 | this.dataTrend() | ||
31 | }, | ||
32 | methods: { | ||
33 | async dataTrend() { | ||
34 | try { | ||
35 | let { result: res } = await work.dataTrend(); | ||
36 | this.cdata.echartData = []; | ||
37 | this.cdata.echartData=res, | ||
38 | this.cdata.echartData.reverse() | ||
39 | } catch (error) { | ||
40 | console.log(error); | ||
41 | } | ||
42 | }, | ||
169 | }, | 43 | }, |
170 | } | 44 | } |
171 | </script> | 45 | </script> | ... | ... |
1 | <template> | 1 | <template> |
2 | <!-- 柱状图 --> | 2 | <!--上报统计柱状图 --> |
3 | <Echart :options="options" id="bottomLeftChart" height="100%" width="100%"></Echart> | 3 | <Echart |
4 | :options="options" | ||
5 | id="bottomLeftChart" | ||
6 | height="100%" | ||
7 | width="100%" | ||
8 | ></Echart> | ||
4 | </template> | 9 | </template> |
5 | 10 | ||
6 | <script> | 11 | <script> |
7 | import Echart from "@/common/echart"; | 12 | import Echart from "@/common/echart"; |
8 | export default { | 13 | export default { |
9 | data () { | 14 | data() { |
10 | return { | 15 | return { |
11 | options: {}, | 16 | options: {}, |
12 | }; | 17 | }; |
... | @@ -22,16 +27,13 @@ export default { | ... | @@ -22,16 +27,13 @@ export default { |
22 | }, | 27 | }, |
23 | watch: { | 28 | watch: { |
24 | cdata: { | 29 | cdata: { |
25 | handler (newData) { | 30 | handler(newData) { |
26 | this.options = { | 31 | this.options = { |
27 | legend: { | 32 | tooltip: { |
28 | data: ["成功", "失败"], | 33 | trigger: "axis", |
29 | icon: "circle", | 34 | axisPointer: { |
30 | textStyle: { | 35 | type: "shadow", |
31 | color: "#B4B4B4", | ||
32 | }, | 36 | }, |
33 | top: "10%", | ||
34 | right: "5%", | ||
35 | }, | 37 | }, |
36 | grid: { | 38 | grid: { |
37 | left: "5%", | 39 | left: "5%", |
... | @@ -72,23 +74,45 @@ export default { | ... | @@ -72,23 +74,45 @@ export default { |
72 | name: "成功", | 74 | name: "成功", |
73 | type: "bar", | 75 | type: "bar", |
74 | stack: "总量", | 76 | stack: "总量", |
75 | barWidth: 10, | 77 | barWidth: 18, |
78 | label: { | ||
79 | show: true, | ||
80 | formatter: function (params) { | ||
81 | if (params.value > 0) { | ||
82 | return params.value; | ||
83 | } else { | ||
84 | return ''; | ||
85 | } | ||
86 | } | ||
87 | }, | ||
76 | itemStyle: { | 88 | itemStyle: { |
77 | normal: { | 89 | normal: { |
78 | // 这里设置圆角 | 90 | color: "#5fba7d", |
79 | color: "#16F4D2", | 91 | }, |
80 | } | ||
81 | }, | 92 | }, |
82 | data: newData.barData, | 93 | data: newData.barData, |
94 | |||
83 | }, | 95 | }, |
84 | { | 96 | { |
85 | name: "失败", | 97 | name: "失败", |
86 | type: "bar", | 98 | type: "bar", |
87 | stack: "总量", | 99 | stack: "总量", |
100 | label: { | ||
101 | show: true, | ||
102 | formatter: function (params) { | ||
103 | if (params.value > 0) { | ||
104 | return params.value; | ||
105 | } else { | ||
106 | return ''; | ||
107 | } | ||
108 | } | ||
109 | |||
110 | |||
111 | }, | ||
88 | itemStyle: { | 112 | itemStyle: { |
89 | normal: { | 113 | normal: { |
90 | // 这里设置圆角 | 114 | // 这里设置圆角 |
91 | color: "#C99E68" | 115 | color: "#c97168", |
92 | }, | 116 | }, |
93 | }, | 117 | }, |
94 | data: newData.lineData, | 118 | data: newData.lineData, | ... | ... |
1 | <template> | 1 | <template> |
2 | <!-- 柱状图 --> | 2 | <!--登记类型总量柱状图 --> |
3 | <Echart :options="options" id="bottomLeftChart" height="100%" width="100%" class="" ></Echart> | 3 | <Echart :options="options" id="bottomLeftChart" height="100%" width="100%" class="" ></Echart> |
4 | </template> | 4 | </template> |
5 | 5 | ||
... | @@ -27,7 +27,7 @@ export default { | ... | @@ -27,7 +27,7 @@ export default { |
27 | grid: { | 27 | grid: { |
28 | // 让图表占满容器 | 28 | // 让图表占满容器 |
29 | top: "20%", | 29 | top: "20%", |
30 | left: "12%", | 30 | left: "10%", |
31 | right: "5%", | 31 | right: "5%", |
32 | bottom: "16%", | 32 | bottom: "16%", |
33 | }, | 33 | }, | ... | ... |
... | @@ -175,7 +175,7 @@ export default { | ... | @@ -175,7 +175,7 @@ export default { |
175 | clearInterval(this.intervalId); | 175 | clearInterval(this.intervalId); |
176 | } | 176 | } |
177 | this.intervalId = setInterval(() => { | 177 | this.intervalId = setInterval(() => { |
178 | _self.reSelectMapRandomArea(); | 178 | this.$refs.centreLeft2ChartRef && _self.reSelectMapRandomArea(); |
179 | }, time); | 179 | }, time); |
180 | }, | 180 | }, |
181 | // 重新随机选中地图区域 | 181 | // 重新随机选中地图区域 | ... | ... |
1 | <template> | 1 | <template> |
2 | <Echart :options="options" id="centreLeft1Chart" :key="key" height="1.0417rem" width="80%"></Echart> | 2 | <Echart |
3 | :options="options" | ||
4 | id="centreLeft1Chart" | ||
5 | :key="key" | ||
6 | height="1.0417rem" | ||
7 | width="80%" | ||
8 | ></Echart> | ||
3 | </template> | 9 | </template> |
4 | <script> | 10 | <script> |
5 | import Echart from '@/common/echart' | 11 | import Echart from "@/common/echart"; |
6 | export default { | 12 | export default { |
7 | components: { | 13 | components: { |
8 | Echart, | 14 | Echart, |
9 | }, | 15 | }, |
10 | data() { | 16 | data() { |
11 | return { | 17 | return { |
12 | key:0 | 18 | key: 0, |
13 | } | 19 | }; |
14 | }, | 20 | }, |
15 | props: { | 21 | props: { |
16 | cdata: { | 22 | cdata: { |
17 | type: Object, | 23 | type: Object, |
18 | default: () => ({}) | 24 | default: () => ({}), |
19 | }, | 25 | }, |
20 | }, | 26 | }, |
21 | watch: { | 27 | watch: { |
22 | cdata: { | 28 | cdata: { |
23 | handler (newData) { | 29 | handler(newData) { |
24 | console.log("newData",newData); | 30 | |
25 | this.options = { | 31 | this.options = { |
26 | grid: { | ||
27 | right:"1%", | ||
28 | bottom:"4%" | ||
29 | }, | ||
30 | color: [ | 32 | color: [ |
31 | "#37a2da", | 33 | "#37a2da", |
32 | "#32c5e9", | 34 | "#32c5e9", |
33 | "#9fe6b8", | 35 | "#9fe6b8", |
34 | "#ffdb5c", | 36 | "#ffdb5c", |
35 | "#ff9f7f", | 37 | "#ff9f7f", |
38 | "#8378ea", | ||
36 | "#fb7293", | 39 | "#fb7293", |
37 | "#e7bcf3", | 40 | "#e7bcf3", |
38 | "#8378ea" | 41 | |
39 | ], | 42 | ], |
40 | tooltip: { | ||
41 | trigger: "item", | ||
42 | formatter: "{a} <br/>{b} : {c} ({d}%)" | ||
43 | }, | ||
44 | toolbox: { | ||
45 | show: true | ||
46 | }, | ||
47 | calculable: true, | ||
48 | series: [ | 43 | series: [ |
49 | { | 44 | { |
50 | name: "业务量", | 45 | name: "Access From", |
51 | type: "pie", | 46 | type: "pie", |
52 | radius: [20,100], | 47 | radius: ["54%", "70%"], |
53 | roseType: "area", | 48 | avoidLabelOverlap: true, |
54 | data: newData.seriesData | 49 | label: { |
50 | formatter: (params) => { | ||
51 | // console.log(params) | ||
52 | return `${params.name}(${params.value}`; | ||
53 | }, | ||
54 | }, | ||
55 | labelLine: { | ||
56 | lineStyle: { | ||
57 | width: 3, | ||
58 | }, | ||
59 | }, | ||
60 | data: newData.seriesData, | ||
55 | } | 61 | } |
56 | ], | 62 | ], |
57 | 63 | }; | |
58 | } | 64 | this.key++; |
59 | this.key++ | ||
60 | }, | 65 | }, |
61 | immediate: true, | 66 | immediate: true, |
62 | deep: true | 67 | deep: true, |
63 | } | 68 | }, |
64 | } | 69 | }, |
65 | }; | 70 | }; |
66 | </script> | 71 | </script> |
67 | 72 | ||
68 | <style lang="scss" scoped> | 73 | <style lang="scss" scoped> |
69 | #centreLeft1Chart { | 74 | #centreLeft1Chart { |
70 | margin-bottom: .0521rem; | 75 | margin-bottom: 0.0521rem; |
71 | margin-left:60px; | 76 | margin-left: .3125rem; |
72 | } | 77 | } |
73 | </style> | 78 | </style> | ... | ... |
... | @@ -8,7 +8,7 @@ | ... | @@ -8,7 +8,7 @@ |
8 | import Chart from "./Chart"; | 8 | import Chart from "./Chart"; |
9 | import work from "@/api/work"; | 9 | import work from "@/api/work"; |
10 | export default { | 10 | export default { |
11 | data () { | 11 | data() { |
12 | return { | 12 | return { |
13 | cdata: { | 13 | cdata: { |
14 | seriesData: [], | 14 | seriesData: [], |
... | @@ -18,40 +18,44 @@ export default { | ... | @@ -18,40 +18,44 @@ export default { |
18 | components: { | 18 | components: { |
19 | Chart, | 19 | Chart, |
20 | }, | 20 | }, |
21 | mounted () { | 21 | mounted() { |
22 | this.getdjywltotal(); | 22 | this.getdjywltotal(); |
23 | window.addEventListener("resize", () => { | 23 | window.addEventListener("resize", () => { |
24 | this.cdata.seriesData = []; | ||
24 | this.getdjywltotal(); | 25 | this.getdjywltotal(); |
25 | }); | 26 | }); |
26 | }, | 27 | }, |
27 | methods: { | 28 | methods: { |
28 | // 获取登记业务量玫瑰图数据 | 29 | // 获取登记业务量玫瑰图数据 |
29 | async getdjywltotal () { | 30 | async getdjywltotal() { |
30 | this.cdata.seriesData=[] | 31 | if (this.cdata.seriesData.length == 0) { |
31 | try { | 32 | try { |
32 | let p = { | 33 | let p = { |
33 | DJLX: "", | 34 | DJLX: "", |
34 | QLLX: "", | 35 | QLLX: "", |
35 | XZQDM: "", | 36 | XZQDM: "", |
36 | }; | 37 | }; |
38 | this.cdata.seriesData = []; | ||
37 | let res = await work.getdjywltotal(p); | 39 | let res = await work.getdjywltotal(p); |
38 | // 遍历修改数组键,作为echars图表的参数 | 40 | if(this.cdata.seriesData.length == 0){ |
39 | res.result.map((item) => { | 41 | res.result.map((item) => { |
40 | return ( | 42 | return this.cdata.seriesData.push({ |
41 | this.cdata.seriesData.push({ "name": item.AREACODE, "value": item.ywtotal }) | 43 | name: item.AREACODE, |
44 | value: item.ywtotal, | ||
45 | }); | ||
42 | 46 | ||
43 | ) | ||
44 | }); | 47 | }); |
45 | } catch (error) { | ||
46 | console.log(error); | ||
47 | } | 48 | } |
49 | // 遍历修改数组键,作为echars图表的参数 | ||
48 | 50 | ||
49 | 51 | ||
52 | } catch (error) { | ||
53 | console.log(error); | ||
54 | } | ||
55 | } | ||
50 | }, | 56 | }, |
51 | }, | 57 | }, |
52 | }; | 58 | }; |
53 | </script> | 59 | </script> |
54 | 60 | ||
55 | <style lang="scss" scoped> | 61 | <style lang="scss" scoped></style> |
56 | |||
57 | </style> | ... | ... |
... | @@ -64,7 +64,6 @@ export default { | ... | @@ -64,7 +64,6 @@ export default { |
64 | this.visible = show | 64 | this.visible = show |
65 | }, | 65 | }, |
66 | handleClick(tab, event) { | 66 | handleClick(tab, event) { |
67 | console.log(tab, event) | ||
68 | }, | 67 | }, |
69 | changeData(iconName) { | 68 | changeData(iconName) { |
70 | this.visible = false | 69 | this.visible = false | ... | ... |
... | @@ -18,10 +18,8 @@ export default { | ... | @@ -18,10 +18,8 @@ export default { |
18 | }, | 18 | }, |
19 | methods: { | 19 | methods: { |
20 | onJsonChange (value) { | 20 | onJsonChange (value) { |
21 | console.log('value:', value); | ||
22 | }, | 21 | }, |
23 | onJsonSave (value) { | 22 | onJsonSave (value) { |
24 | console.log('value:', value); | ||
25 | } | 23 | } |
26 | } | 24 | } |
27 | } | 25 | } | ... | ... |
... | @@ -69,7 +69,6 @@ export default { | ... | @@ -69,7 +69,6 @@ export default { |
69 | }, | 69 | }, |
70 | onJsonSave () { | 70 | onJsonSave () { |
71 | const value = this.resultInfo | 71 | const value = this.resultInfo |
72 | console.log(this.resultInfo, 'resultInfo') | ||
73 | if (this.hasJsonFlag === false) { | 72 | if (this.hasJsonFlag === false) { |
74 | this.$message.error({ message: 'json格式验证失败', showClose: true }) | 73 | this.$message.error({ message: 'json格式验证失败', showClose: true }) |
75 | // alert("json验证失败") | 74 | // alert("json验证失败") |
... | @@ -87,7 +86,6 @@ export default { | ... | @@ -87,7 +86,6 @@ export default { |
87 | this.dialogVisible = true | 86 | this.dialogVisible = true |
88 | }, | 87 | }, |
89 | cancel () { | 88 | cancel () { |
90 | console.log(this.tmpResultInfo, 'tmpResultInfo') | ||
91 | this.resultInfo = this.tmpResultInfo | 89 | this.resultInfo = this.tmpResultInfo |
92 | this.dialogVisible = false | 90 | this.dialogVisible = false |
93 | }, | 91 | }, | ... | ... |
... | @@ -129,7 +129,6 @@ export default { | ... | @@ -129,7 +129,6 @@ export default { |
129 | if (!this.heightNumSetting) { | 129 | if (!this.heightNumSetting) { |
130 | let _this = this | 130 | let _this = this |
131 | if (this.heightNum) { | 131 | if (this.heightNum) { |
132 | console.log("this.heightNum``",this.heightNum); | ||
133 | _this.$nextTick(() => { | 132 | _this.$nextTick(() => { |
134 | 133 | ||
135 | window.addEventListener('resize', () => { | 134 | window.addEventListener('resize', () => { | ... | ... |
... | @@ -32,8 +32,6 @@ export default { | ... | @@ -32,8 +32,6 @@ export default { |
32 | if (typeof val !== 'string') return | 32 | if (typeof val !== 'string') return |
33 | const themeCluster = this.getThemeCluster(val.replace('#', '')) | 33 | const themeCluster = this.getThemeCluster(val.replace('#', '')) |
34 | const originalCluster = this.getThemeCluster(oldVal.replace('#', '')) | 34 | const originalCluster = this.getThemeCluster(oldVal.replace('#', '')) |
35 | console.log(themeCluster, originalCluster) | ||
36 | |||
37 | const $message = this.$message({ | 35 | const $message = this.$message({ |
38 | message: ' Compiling the theme', | 36 | message: ' Compiling the theme', |
39 | customClass: 'theme-message', | 37 | customClass: 'theme-message', | ... | ... |
src/image/loginBg.jpg
0 → 100644
78.8 KB
src/image/loginBoxBg.png
0 → 100644
6.84 KB
1 | <template> | 1 | <template> |
2 | <div class="navbar-con"> | 2 | <div class="navbar-con"> |
3 | <div class="navbar"> | 3 | <div class="navbar"> |
4 | <div class="title">{{ dicData['sysCode'] && dicData['sysCode'][0].DNAME }}</div> | 4 | <div class="title"> |
5 | <div class="user">欢迎进入系统 {{ name }} <svg-icon icon-class='close' class="closeStyle" @click="onCancel" />退出系统</div> | 5 | {{ dicData["sysCode"] && dicData["sysCode"][0].DNAME }} |
6 | </div> | ||
7 | <div class="user"> | ||
8 | 欢迎进入系统 {{ userInfo.name }} | ||
9 | <span @click="onCancel"> | ||
10 | <svg-icon icon-class="close" class="closeStyle" />退出系统</span | ||
11 | > | ||
12 | </div> | ||
6 | <div class="sidebarLeft"> | 13 | <div class="sidebarLeft"> |
7 | <sidebarLeft /> | 14 | <sidebarLeft /> |
8 | </div> | 15 | </div> |
... | @@ -13,22 +20,37 @@ | ... | @@ -13,22 +20,37 @@ |
13 | </div> | 20 | </div> |
14 | </template> | 21 | </template> |
15 | <script> | 22 | <script> |
16 | import sidebarLeft from './Sidebar/sidebarLeft' | 23 | import sidebarLeft from "./Sidebar/sidebarLeft"; |
17 | import sidebarRight from './Sidebar/sidebarRight' | 24 | import sidebarRight from "./Sidebar/sidebarRight"; |
18 | import { mapGetters } from 'vuex' | 25 | import { logout } from "@/api/login.js"; |
26 | import { mapGetters } from "vuex"; | ||
19 | export default { | 27 | export default { |
20 | components: { | 28 | components: { |
21 | sidebarLeft, | 29 | sidebarLeft, |
22 | sidebarRight | 30 | sidebarRight, |
23 | }, | 31 | }, |
24 | computed: { | 32 | computed: { |
25 | ...mapGetters(['sidebar', 'dicData', 'name']) | 33 | ...mapGetters(["sidebar", "dicData", "userInfo"]), |
26 | }, | 34 | }, |
27 | methods: { | 35 | methods: { |
28 | onCancel () { | 36 | onCancel() { |
29 | } | 37 | logout() |
30 | } | 38 | .then((res) => { |
31 | } | 39 | sessionStorage.removeItem("token"); |
40 | this.$store.dispatch("user/resetState"); | ||
41 | this.$router.replace({ | ||
42 | path: "/login", | ||
43 | query: { | ||
44 | redirect: this.$route.fullPath, | ||
45 | }, | ||
46 | }); | ||
47 | }) | ||
48 | .catch((error) => { | ||
49 | // console.dir(error); | ||
50 | }); | ||
51 | }, | ||
52 | }, | ||
53 | }; | ||
32 | </script> | 54 | </script> |
33 | <style lang="scss" scoped> | 55 | <style lang="scss" scoped> |
34 | /deep/.el-menu--horizontal { | 56 | /deep/.el-menu--horizontal { |
... | @@ -40,9 +62,9 @@ export default { | ... | @@ -40,9 +62,9 @@ export default { |
40 | height: 34px; | 62 | height: 34px; |
41 | width: 130px; | 63 | width: 130px; |
42 | text-align: center; | 64 | text-align: center; |
43 | color: #FFFFFF; | 65 | color: #ffffff; |
44 | margin-right: 20px; | 66 | margin-right: 20px; |
45 | background: url('~@/image/navbar.png') no-repeat; | 67 | background: url("~@/image/navbar.png") no-repeat; |
46 | background-size: 100% 100%; | 68 | background-size: 100% 100%; |
47 | } | 69 | } |
48 | 70 | ||
... | @@ -56,7 +78,7 @@ export default { | ... | @@ -56,7 +78,7 @@ export default { |
56 | 78 | ||
57 | /deep/.el-submenu__title { | 79 | /deep/.el-submenu__title { |
58 | height: 34px; | 80 | height: 34px; |
59 | color: #FFFFFF; | 81 | color: #ffffff; |
60 | } | 82 | } |
61 | 83 | ||
62 | /deep/.el-submenu__title span { | 84 | /deep/.el-submenu__title span { |
... | @@ -88,9 +110,9 @@ export default { | ... | @@ -88,9 +110,9 @@ export default { |
88 | 110 | ||
89 | // 导航选中背景色 | 111 | // 导航选中背景色 |
90 | .xuanzhong { | 112 | .xuanzhong { |
91 | background: url('~@/image/selNavbar.png') no-repeat; | 113 | background: url("~@/image/selNavbar.png") no-repeat; |
92 | background-size: 100% 100%; | 114 | background-size: 100% 100%; |
93 | color: #FFFFFF !important; | 115 | color: #ffffff !important; |
94 | font-weight: 700; | 116 | font-weight: 700; |
95 | } | 117 | } |
96 | 118 | ||
... | @@ -110,7 +132,6 @@ export default { | ... | @@ -110,7 +132,6 @@ export default { |
110 | @extend .xuanzhong; | 132 | @extend .xuanzhong; |
111 | } | 133 | } |
112 | 134 | ||
113 | |||
114 | .navbar { | 135 | .navbar { |
115 | height: $headerHeight; | 136 | height: $headerHeight; |
116 | overflow: hidden; | 137 | overflow: hidden; |
... | @@ -119,12 +140,12 @@ export default { | ... | @@ -119,12 +140,12 @@ export default { |
119 | align-items: center; | 140 | align-items: center; |
120 | padding: 0 20px; | 141 | padding: 0 20px; |
121 | justify-content: space-between; | 142 | justify-content: space-between; |
122 | background: url('~@/image/header.png') no-repeat; | 143 | background: url("~@/image/header.png") no-repeat; |
123 | background-size: 100% 100%; | 144 | background-size: 100% 100%; |
124 | 145 | ||
125 | .user { | 146 | .user { |
126 | font-size: 12px; | 147 | font-size: 12px; |
127 | color: #FFFFFF; | 148 | color: #ffffff; |
128 | position: absolute; | 149 | position: absolute; |
129 | right: 20px; | 150 | right: 20px; |
130 | top: 0; | 151 | top: 0; |
... | @@ -143,10 +164,9 @@ export default { | ... | @@ -143,10 +164,9 @@ export default { |
143 | right: 0; | 164 | right: 0; |
144 | margin: 0 auto; | 165 | margin: 0 auto; |
145 | font-size: 32px; | 166 | font-size: 32px; |
146 | color: #FFFFFF; | 167 | color: #ffffff; |
147 | font-weight: 700; | 168 | font-weight: 700; |
148 | text-align: center; | 169 | text-align: center; |
149 | |||
150 | } | 170 | } |
151 | 171 | ||
152 | .right-menu { | 172 | .right-menu { | ... | ... |
1 | <template> | 1 | <template> |
2 | <el-menu router :default-active="activeMenu" mode="horizontal"> | 2 | <el-menu router :default-active="activeMenu" mode="horizontal"> |
3 | <!-- 权限菜单 --> | 3 | <!-- 权限菜单 --> |
4 | <sidebar-item v-for="route in permission_routes.slice(1, 4)" :key="route.path" :item="route" | 4 | <sidebar-item v-for="route in permission_routes.slice(2, 5)" :key="route.path" :item="route" |
5 | :base-path="route.path" /> | 5 | :base-path="route.path" /> |
6 | <!-- 菜单全部展示 --> | 6 | <!-- 菜单全部展示 --> |
7 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> | 7 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> | ... | ... |
1 | <template> | 1 | <template> |
2 | <el-menu router :default-active="activeMenu" mode="horizontal"> | 2 | <el-menu router :default-active="activeMenu" mode="horizontal"> |
3 | <!-- 权限菜单 --> | 3 | <!-- 权限菜单 --> |
4 | <sidebar-item v-for="route in permission_routes.slice(4, 7)" :key="route.path" :item="route" | 4 | <sidebar-item v-for="route in permission_routes.slice(5, 8)" :key="route.path" :item="route" |
5 | :base-path="route.path" /> | 5 | :base-path="route.path" /> |
6 | <!-- 菜单全部展示 --> | 6 | <!-- 菜单全部展示 --> |
7 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> | 7 | <!-- <sidebar-item v-for="route in asyncRoutes" :key="route.path" :item="route" :base-path="route.path" /> --> | ... | ... |
... | @@ -46,7 +46,6 @@ export default { | ... | @@ -46,7 +46,6 @@ export default { |
46 | } | 46 | } |
47 | 47 | ||
48 | this.levelList = matched.filter(item => item.meta && item.meta.title && item.meta.breadcrumb !== false) | 48 | this.levelList = matched.filter(item => item.meta && item.meta.title && item.meta.breadcrumb !== false) |
49 | console.log(this.levelList) | ||
50 | }, | 49 | }, |
51 | isDashboard (route) { | 50 | isDashboard (route) { |
52 | const name = route && route.name | 51 | const name = route && route.name | ... | ... |
1 | import router from './router' | 1 | import router from "./router"; |
2 | import store from './store' | 2 | import store from "./store"; |
3 | import { getMenuInfo } from '@/api/user' | 3 | import { getMenuInfo } from "@/api/user"; |
4 | import NProgress from 'nprogress' // progress bar | 4 | import NProgress from "nprogress"; // progress bar |
5 | import 'nprogress/nprogress.css' // progress bar style | 5 | import "nprogress/nprogress.css"; // progress bar style |
6 | import getPageTitle from '@/utils/get-page-title' | 6 | import getPageTitle from "@/utils/get-page-title"; |
7 | import Cookies from 'js-cookie' | 7 | import Cookies from "js-cookie"; |
8 | NProgress.configure({ showSpinner: false }) // NProgress Configuration | 8 | NProgress.configure({ showSpinner: false }); // NProgress Configuration |
9 | 9 | ||
10 | router.beforeEach(async (to, from, next) => { | 10 | router.beforeEach(async (to, from, next) => { |
11 | NProgress.start() | 11 | NProgress.start(); |
12 | document.title = getPageTitle(to.meta.title) | 12 | document.title = getPageTitle(to.meta.title); |
13 | let hasAddDict = store.state.dict.addDict | 13 | let hasAddDict = store.state.dict.addDict; |
14 | let hasAddRoute = store.state.permission.addRoutes | 14 | let hasUser = store.state.user.hasUser; |
15 | let hasAddRoute = store.state.permission.addRoutes; | ||
16 | if (to.path == "/login") { | ||
17 | sessionStorage.removeItem("token"); | ||
18 | next(); | ||
19 | } else { | ||
20 | //判断token是否存在 | ||
21 | const hasToken = sessionStorage.getItem("token"); | ||
22 | if (hasToken) { | ||
23 | //请求用户信息 | ||
24 | if (!hasUser) { | ||
25 | store.dispatch("user/getUserInfo"); | ||
26 | } | ||
27 | //加载字典 | ||
15 | if (!hasAddDict) { | 28 | if (!hasAddDict) { |
16 | store.dispatch('dict/generateDic') | 29 | store.dispatch("dict/generateDic"); |
17 | } | 30 | } |
18 | if (hasAddRoute) { | 31 | if (hasAddRoute) { |
19 | next() | 32 | next(); |
33 | } else { | ||
34 | //请求菜单 | ||
35 | const { result: getMenuData } = (await getMenuInfo()) || []; | ||
36 | const accessRoutes = await store.dispatch( | ||
37 | "permission/generateRoutes", | ||
38 | getMenuData | ||
39 | ); | ||
40 | router.addRoutes([ | ||
41 | ...accessRoutes, | ||
42 | { path: "*", redirect: "/404", hidden: true }, | ||
43 | ]); | ||
44 | const routeTo = Cookies.get("routerTo"); | ||
45 | if (routeTo && routeTo !== "/") { | ||
46 | next({ ...to, replace: true }); | ||
20 | } else { | 47 | } else { |
21 | const { result: getMenuData } = await getMenuInfo() | 48 | next("/home"); |
22 | const accessRoutes = await store.dispatch('permission/generateRoutes', getMenuData) | 49 | } |
23 | // 获取用户信息 | 50 | } |
24 | await store.dispatch('user/getUserInfo') | ||
25 | router.addRoutes([...accessRoutes, { path: '*', redirect: '/404', hidden: true }]) | ||
26 | const routeTo = Cookies.get('routerTo') | ||
27 | if (routeTo && routeTo !== '/') { | ||
28 | next({ ...to, replace: true }) | ||
29 | } else { | 51 | } else { |
30 | next('/home') | 52 | next("/login"); |
31 | } | 53 | } |
32 | } | 54 | } |
33 | NProgress.done() | 55 | NProgress.done(); |
34 | }) | 56 | }); |
35 | router.afterEach(to => { | 57 | router.afterEach((to) => { |
36 | // 解决刷新页面报404问题 | 58 | // 解决刷新页面报404问题 |
37 | Cookies.set("routerTo", to.fullPath) | 59 | Cookies.set("routerTo", to.fullPath); |
38 | NProgress.done() | 60 | NProgress.done(); |
39 | }) | 61 | }); | ... | ... |
... | @@ -20,6 +20,12 @@ export const constantRoutes = [ | ... | @@ -20,6 +20,12 @@ export const constantRoutes = [ |
20 | } | 20 | } |
21 | ] | 21 | ] |
22 | }, | 22 | }, |
23 | //登录 | ||
24 | { | ||
25 | path: "/login", | ||
26 | name: "login", | ||
27 | component: () => import("@/views/login/index.vue"), | ||
28 | }, | ||
23 | // 监管首页 | 29 | // 监管首页 |
24 | { | 30 | { |
25 | path: '/', | 31 | path: '/', |
... | @@ -240,7 +246,7 @@ export const asyncRoutes = [ | ... | @@ -240,7 +246,7 @@ export const asyncRoutes = [ |
240 | meta: { title: '角色管理' } | 246 | meta: { title: '角色管理' } |
241 | } | 247 | } |
242 | ] | 248 | ] |
243 | } | 249 | }, |
244 | ] | 250 | ] |
245 | 251 | ||
246 | const createRouter = () => | 252 | const createRouter = () => | ... | ... |
... | @@ -5,13 +5,13 @@ const getters = { | ... | @@ -5,13 +5,13 @@ const getters = { |
5 | visitedViews: state => state.tagsView.visitedViews, | 5 | visitedViews: state => state.tagsView.visitedViews, |
6 | cachedViews: state => state.tagsView.cachedViews, | 6 | cachedViews: state => state.tagsView.cachedViews, |
7 | avatar: state => state.user.avatar, | 7 | avatar: state => state.user.avatar, |
8 | name: state => state.user.name, | 8 | userInfo: state => state.user.userInfo, |
9 | permission_routes: state => state.permission.routes, | 9 | permission_routes: state => state.permission.routes, |
10 | addRoutes: state => state.permission.addRoutes, | 10 | addRoutes: state => state.permission.addRoutes, |
11 | // business | ||
12 | rules: state => state.business.rules, | 11 | rules: state => state.business.rules, |
13 | dicData: state => state.dict.dicData, | 12 | dicData: state => state.dict.dicData, |
14 | Edit: state => state.business.Edit, | 13 | Edit: state => state.business.Edit, |
15 | businessInfo: state => state.dictionaries.businessInfo | 14 | businessInfo: state => state.dictionaries.businessInfo, |
15 | products: state => state.products.products | ||
16 | } | 16 | } |
17 | export default getters | 17 | export default getters | ... | ... |
src/store/modules/products.js
0 → 100644
1 | |||
2 | const state = { | ||
3 | products: null, | ||
4 | }; | ||
5 | const mutations = { | ||
6 | SET_PRODUCTS: (state,data) => { | ||
7 | state.products = data; | ||
8 | }, | ||
9 | }; | ||
10 | |||
11 | const actions = { | ||
12 | setData({ commit },data) { | ||
13 | commit("SET_PRODUCTS",data); | ||
14 | }, | ||
15 | }; | ||
16 | export default { | ||
17 | namespaced: true, | ||
18 | state, | ||
19 | mutations, | ||
20 | actions, | ||
21 | }; |
1 | import { getUserInfo } from '@/api/user' | 1 | import { getUserInfo } from "@/api/user"; |
2 | const state = { | 2 | const state = { |
3 | name: '', | 3 | hasUser: false, |
4 | avatar: 'https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png', | 4 | userInfo: null, |
5 | } | 5 | }; |
6 | const mutations = { | 6 | const mutations = { |
7 | SET_NAME: (state, data) => { | 7 | SET_USERINFO: (state, data) => { |
8 | state.name = data.loginName | 8 | state.hasUser = true; |
9 | } | 9 | state.userInfo = data; |
10 | } | 10 | }, |
11 | RESET_USER: (state) => { | ||
12 | state.hasUser = false; | ||
13 | state.userInfo = null; | ||
14 | }, | ||
15 | }; | ||
11 | 16 | ||
12 | const actions = { | 17 | const actions = { |
13 | getUserInfo ({ commit }) { | 18 | getUserInfo({ commit }) { |
14 | return new Promise(async (resolve) => { | 19 | return new Promise(async (resolve) => { |
15 | let { result: res } = await getUserInfo() | 20 | let { result: res } = await getUserInfo(); |
16 | commit('SET_NAME', res) | 21 | commit("SET_USERINFO", res); |
17 | resolve(true) | 22 | resolve(true); |
18 | }) | 23 | }); |
24 | }, | ||
25 | resetState({ commit }) { | ||
26 | commit("RESET_USER"); | ||
19 | }, | 27 | }, |
20 | } | 28 | }; |
21 | export default { | 29 | export default { |
22 | namespaced: true, | 30 | namespaced: true, |
23 | state, | 31 | state, |
24 | mutations, | 32 | mutations, |
25 | actions | 33 | actions, |
26 | } | 34 | }; | ... | ... |
... | @@ -50,7 +50,7 @@ | ... | @@ -50,7 +50,7 @@ |
50 | 50 | ||
51 | &-header { | 51 | &-header { |
52 | width: 100%; | 52 | width: 100%; |
53 | padding: 5px 30px 20px 20px; | 53 | padding: 5px 30px 20px 24px; |
54 | box-sizing: border-box; | 54 | box-sizing: border-box; |
55 | background: url("~@/image/formHeader.png") no-repeat; | 55 | background: url("~@/image/formHeader.png") no-repeat; |
56 | background-size: 100% 100%; | 56 | background-size: 100% 100%; | ... | ... |
... | @@ -25,4 +25,10 @@ export default class filter { | ... | @@ -25,4 +25,10 @@ export default class filter { |
25 | return name | 25 | return name |
26 | } | 26 | } |
27 | } | 27 | } |
28 | stateStatus(val) { | ||
29 | let index = val + 1; | ||
30 | // -1 : 不存在 ,0 : 待激活,1:正常,2:暂停,3 : 出错, 4:阻塞 | ||
31 | let status = { 0: '不存在', 1: '待激活', 2: '正常', 3: '暂停', 4: '出错', 5: '阻塞' } | ||
32 | return status[index] | ||
33 | } | ||
28 | } | 34 | } | ... | ... |
1 | /** | 1 | /** |
2 | * 此文件主要创建 axios 实例,然后添加请求拦截器和响应拦截器 | 2 | * 此文件主要创建 axios 实例,然后添加请求拦截器和响应拦截器 |
3 | */ | 3 | */ |
4 | import axios from 'axios' | 4 | import axios from "axios"; |
5 | import { Message } from 'element-ui' | 5 | import { Message } from "element-ui"; |
6 | import { endLoadingSubCount } from './requestLoading' | 6 | import { endLoadingSubCount } from "./requestLoading"; |
7 | import router from "../router"; | ||
7 | 8 | ||
8 | // create an axios instance | 9 | // create an axios instance |
9 | const service = axios.create({ | 10 | const service = axios.create({ |
10 | baseURL: process.env.VUE_APP_BASE_API, | 11 | baseURL: process.env.VUE_APP_BASE_API, |
11 | withCredentials: true, //是否允许跨域 | 12 | withCredentials: true, //是否允许跨域 |
12 | headers: { | 13 | headers: { |
13 | 'Content-Type': 'application/json; charset=utf-8', | 14 | "Content-Type": "application/json; charset=utf-8", |
14 | 'Authorization': 'bearer AT-6-KSOqiWx3hbGL2fsRjyQQUDzPXR8rat-U' | ||
15 | }, | 15 | }, |
16 | timeout: 15000 | 16 | timeout: 15000, |
17 | }) | 17 | }); |
18 | 18 | ||
19 | // request interceptor | 19 | // request interceptor |
20 | service.interceptors.request.use( | 20 | service.interceptors.request.use( |
21 | config => { | 21 | (config) => { |
22 | config.headers.Authorization = | 22 | //调用登录接口时无token,也不需要传token,其他接口都传入token |
23 | 'bearer AT-6-KSOqiWx3hbGL2fsRjyQQUDzPXR8rat-U' | 23 | config.headers.Authorization = sessionStorage.getItem("token") || ""; |
24 | config.headers.Accept = 'application/json' | 24 | config.headers.Accept = "application/json"; |
25 | return config | 25 | return config; |
26 | }, | 26 | }, |
27 | error => { | 27 | (error) => { |
28 | Message.error('请求超时!'); | 28 | Message.error("请求超时!"); |
29 | return Promise.reject(error) | 29 | return Promise.reject(error); |
30 | } | 30 | } |
31 | ) | 31 | ); |
32 | 32 | ||
33 | // response interceptor | 33 | // response interceptor |
34 | service.interceptors.response.use( | 34 | service.interceptors.response.use( |
35 | response => { | 35 | (response) => { |
36 | /** | 36 | /** |
37 | * 对响应数据判断: | 37 | * 对响应数据判断: |
38 | * 如果成功返回数据,就通过return把数据返出去 | 38 | * 如果成功返回数据,就通过return把数据返出去 |
39 | * 如果请求不成功,就在拦截器这里统一处理(组件的代码就不用关注错误的情况了) | 39 | * 如果请求不成功,就在拦截器这里统一处理(组件的代码就不用关注错误的情况了) |
40 | */ | 40 | */ |
41 | if (response.status == 200) { | 41 | if (response.status == 200) { |
42 | // if (response.data.code == 500) { | ||
43 | // Message({ | ||
44 | // message: response.data.message, | ||
45 | // type: 'error', | ||
46 | // duration: 5 * 1000 | ||
47 | // }) | ||
48 | // } | ||
49 | return response.data; | 42 | return response.data; |
50 | } else { | 43 | } else { |
51 | handleErrorData(response.data); | 44 | // 对响应错误做点什么 |
45 | Message({ | ||
46 | message: "请求失败", | ||
47 | type: "error", | ||
48 | duration: 5 * 1000, | ||
49 | }); | ||
52 | } | 50 | } |
53 | return response; | 51 | return response; |
54 | }, | 52 | }, |
55 | error => { | 53 | (error) => { |
56 | endLoadingSubCount() | 54 | handleErrorData(error.response.status); |
57 | // 对响应错误做点什么 | 55 | endLoadingSubCount(); |
58 | Message({ | ||
59 | message: '服务器异常,请联系管理员', | ||
60 | type: 'error', | ||
61 | duration: 5 * 1000 | ||
62 | }) | ||
63 | return Promise.reject(error); | 56 | return Promise.reject(error); |
64 | } | 57 | } |
65 | ) | 58 | ); |
66 | //对错误信息的处理函数 | 59 | //对错误信息的处理函数 |
67 | function handleErrorData (errMes) { | 60 | function handleErrorData(status) { |
68 | if (errMes.message) { | 61 | switch (status) { |
69 | Message.error(errMes.message); | ||
70 | } else { | ||
71 | switch (errMes.code) { | ||
72 | case 401: | 62 | case 401: |
73 | Message.error("未授权,请重新登录!"); | 63 | Message.error("由于长时间未操作,请重新登录!"); |
64 | router.replace({ | ||
65 | path: "/login", | ||
66 | query: { | ||
67 | redirect: router.history.current.fullPath, | ||
68 | }, | ||
69 | }); | ||
74 | break; | 70 | break; |
75 | case 403: | 71 | case 403: |
76 | Message.error("拒绝访问"); | 72 | Message.error("拒绝访问"); |
... | @@ -85,8 +81,5 @@ function handleErrorData (errMes) { | ... | @@ -85,8 +81,5 @@ function handleErrorData (errMes) { |
85 | Message.error("服务正在联调中,请稍后!"); | 81 | Message.error("服务正在联调中,请稍后!"); |
86 | break; | 82 | break; |
87 | } | 83 | } |
88 | } | ||
89 | } | 84 | } |
90 | export default service | 85 | export default service; |
91 | |||
92 | ... | ... |
src/views/home/dataView/2wd.vue
deleted
100644 → 0
File mode changed
... | @@ -32,7 +32,6 @@ export default { | ... | @@ -32,7 +32,6 @@ export default { |
32 | const { width, height } = this; | 32 | const { width, height } = this; |
33 | const wh = window.innerHeight / height; | 33 | const wh = window.innerHeight / height; |
34 | const ww = window.innerWidth / width; | 34 | const ww = window.innerWidth / width; |
35 | console.log(ww < wh ? ww : wh); | ||
36 | return ww < wh ? ww : wh; | 35 | return ww < wh ? ww : wh; |
37 | }, | 36 | }, |
38 | setScale() { | 37 | setScale() { | ... | ... |
... | @@ -9,7 +9,7 @@ | ... | @@ -9,7 +9,7 @@ |
9 | <div class="d-flex"> | 9 | <div class="d-flex"> |
10 | <dv-decoration-8 class="dv-dec-8" :color="decorationColor" /> | 10 | <dv-decoration-8 class="dv-dec-8" :color="decorationColor" /> |
11 | <div class="title"> | 11 | <div class="title"> |
12 | <span class="title-text">汉中市不动产监管大屏</span> | 12 | <span class="title-text">{{ products.name }}}</span> |
13 | <dv-decoration-5 | 13 | <dv-decoration-5 |
14 | :dur="1" | 14 | :dur="1" |
15 | class="dv-dec-5" | 15 | class="dv-dec-5" |
... | @@ -60,6 +60,9 @@ export default { | ... | @@ -60,6 +60,9 @@ export default { |
60 | }, 500); | 60 | }, 500); |
61 | }, | 61 | }, |
62 | }, | 62 | }, |
63 | computed: { | ||
64 | ...mapGetters(["products"]), | ||
65 | }, | ||
63 | }; | 66 | }; |
64 | </script> | 67 | </script> |
65 | 68 | ... | ... |
... | @@ -119,7 +119,7 @@ export default { | ... | @@ -119,7 +119,7 @@ export default { |
119 | <style lang="scss" scoped> | 119 | <style lang="scss" scoped> |
120 | .leftcard { | 120 | .leftcard { |
121 | width: 32%; | 121 | width: 32%; |
122 | height: calc(100% -110px); | 122 | height: calc(100vh -114px); |
123 | display: flex; | 123 | display: flex; |
124 | flex-direction: column; | 124 | flex-direction: column; |
125 | 125 | ||
... | @@ -129,7 +129,7 @@ export default { | ... | @@ -129,7 +129,7 @@ export default { |
129 | position: relative; | 129 | position: relative; |
130 | text-align: center; | 130 | text-align: center; |
131 | width: 100%; | 131 | width: 100%; |
132 | height: 25%; | 132 | height: 22%; |
133 | } | 133 | } |
134 | .carda { | 134 | .carda { |
135 | background: url("~@/image/sthj.png") no-repeat; | 135 | background: url("~@/image/sthj.png") no-repeat; |
... | @@ -137,7 +137,7 @@ export default { | ... | @@ -137,7 +137,7 @@ export default { |
137 | position: relative; | 137 | position: relative; |
138 | text-align: center; | 138 | text-align: center; |
139 | width: 100%; | 139 | width: 100%; |
140 | height: 25%; | 140 | height: 22%; |
141 | } | 141 | } |
142 | 142 | ||
143 | // .card1 { | 143 | // .card1 { |
... | @@ -192,8 +192,8 @@ export default { | ... | @@ -192,8 +192,8 @@ export default { |
192 | font-weight: 700; | 192 | font-weight: 700; |
193 | width: .195rem; | 193 | width: .195rem; |
194 | height: .2475rem; | 194 | height: .2475rem; |
195 | font-size: .1863rem; | 195 | font-size: .2863rem; |
196 | font-size: .1867rem; | 196 | font-size: .2867rem; |
197 | } | 197 | } |
198 | } | 198 | } |
199 | 199 | ... | ... |
... | @@ -45,12 +45,9 @@ export default { | ... | @@ -45,12 +45,9 @@ export default { |
45 | try { | 45 | try { |
46 | let { result: res } = await work.addhousetotal(); | 46 | let { result: res } = await work.addhousetotal(); |
47 | res.map((item, index) => { | 47 | res.map((item, index) => { |
48 | console.log("item", item); | ||
49 | console.log("index", index); | ||
50 | return ( | 48 | return ( |
51 | this.config.data.push([index, item.fwyt, item.fwxz, item.mj]) | 49 | this.config.data.push([index, item.fwyt, item.fwxz, item.mj]) |
52 | ) | 50 | ) |
53 | |||
54 | }); | 51 | }); |
55 | } catch (error) { | 52 | } catch (error) { |
56 | console.log("error", error); | 53 | console.log("error", error); |
... | @@ -114,6 +111,15 @@ export default { | ... | @@ -114,6 +111,15 @@ export default { |
114 | margin: 0 auto; | 111 | margin: 0 auto; |
115 | height: 1.1031rem; | 112 | height: 1.1031rem; |
116 | margin-top: .0521rem; | 113 | margin-top: .0521rem; |
114 | /deep/.header{ | ||
115 | font-size: .0738rem; | ||
116 | } | ||
117 | /deep/.rows{ | ||
118 | .ceil{ | ||
119 | font-size: .0738rem; | ||
120 | color: #6BC1FC | ||
121 | } | ||
122 | } | ||
117 | } | 123 | } |
118 | } | 124 | } |
119 | 125 | ... | ... |
... | @@ -7,7 +7,6 @@ | ... | @@ -7,7 +7,6 @@ |
7 | </template> | 7 | </template> |
8 | <script> | 8 | <script> |
9 | import "@/utils/flexible.js"; | 9 | import "@/utils/flexible.js"; |
10 | import ScaleBox from "./box.vue"; | ||
11 | import drawMixin from "@/utils/drawMixin"; | 10 | import drawMixin from "@/utils/drawMixin"; |
12 | import leftcard from "./leftcard"; | 11 | import leftcard from "./leftcard"; |
13 | import centercard from "./centercard"; | 12 | import centercard from "./centercard"; |
... | @@ -22,8 +21,7 @@ export default { | ... | @@ -22,8 +21,7 @@ export default { |
22 | components: { | 21 | components: { |
23 | leftcard, | 22 | leftcard, |
24 | centercard, | 23 | centercard, |
25 | rightcard, | 24 | rightcard |
26 | ScaleBox, | ||
27 | }, | 25 | }, |
28 | mounted () { | 26 | mounted () { |
29 | // this.timeFn(); | 27 | // this.timeFn(); | ... | ... |
src/views/login/index.vue
0 → 100644
1 | <template> | ||
2 | <div class="bg"> | ||
3 | <div class="login-inner-bg login"> | ||
4 | <div class="user_style"> | ||
5 | <h3>欢迎登录</h3> | ||
6 | <el-form | ||
7 | :model="user" | ||
8 | :rules="rules" | ||
9 | ref="user" | ||
10 | id="loginform" | ||
11 | class="demo-ruleForm" | ||
12 | > | ||
13 | <el-form-item prop="account"> | ||
14 | <el-input v-model="user.account" placeholder="用户名"></el-input> | ||
15 | </el-form-item> | ||
16 | <el-form-item prop="password"> | ||
17 | <el-input | ||
18 | type="password" | ||
19 | v-model="user.password" | ||
20 | placeholder="登录密码" | ||
21 | ></el-input> | ||
22 | </el-form-item> | ||
23 | <el-form-item> | ||
24 | <el-checkbox | ||
25 | label="记住用户名" | ||
26 | @change="checkUserName" | ||
27 | ></el-checkbox> | ||
28 | </el-form-item> | ||
29 | <el-form-item id="login"> | ||
30 | <el-button type="primary" style="width: 100%" @click="login('user')" | ||
31 | >登录</el-button | ||
32 | > | ||
33 | </el-form-item> | ||
34 | </el-form> | ||
35 | </div> | ||
36 | </div> | ||
37 | </div> | ||
38 | </template> | ||
39 | |||
40 | <script> | ||
41 | import { loginIn } from "@/api/login.js"; | ||
42 | import { api, getAction } from "@/api/manageApi"; | ||
43 | export default { | ||
44 | name: "Login", | ||
45 | data() { | ||
46 | return { | ||
47 | user: { | ||
48 | account: "", | ||
49 | password: "", | ||
50 | checkStatus: false, | ||
51 | }, | ||
52 | rules: { | ||
53 | account: [{ required: true, message: "请填写帐号", trigger: "blur" }], | ||
54 | password: [{ required: true, message: "请填写密码", trigger: "blur" }], | ||
55 | }, | ||
56 | }; | ||
57 | }, | ||
58 | created() { | ||
59 | const params = {}; | ||
60 | const queryOptions = { | ||
61 | conditionGroup: { | ||
62 | conditions: [ | ||
63 | { | ||
64 | property: "code", | ||
65 | value: "BDCJGPT", | ||
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.$store.dispatch("products/setData", res.content[0]); | ||
77 | } else { | ||
78 | this.$message.error({ message: res.message, showClose: true }); | ||
79 | } | ||
80 | }); | ||
81 | }, | ||
82 | mounted() { | ||
83 | // this.checkUserName(); | ||
84 | }, | ||
85 | methods: { | ||
86 | //记住用户名 | ||
87 | checkUserName: function (flag) { | ||
88 | this.user.checkStatus = flag; | ||
89 | if (this.user.checkStatus) { | ||
90 | localStorage.setItem("accountId", this.user.account); | ||
91 | let name = localStorage.getItem("accountId"); | ||
92 | if (name === "") { | ||
93 | return; | ||
94 | } else { | ||
95 | this.user.account = name; | ||
96 | } | ||
97 | } else { | ||
98 | this.user.account = localStorage.getItem("accountId"); | ||
99 | } | ||
100 | }, | ||
101 | login(user) { | ||
102 | var self = this; | ||
103 | this.$refs[user].validate((valid) => { | ||
104 | if (valid) { | ||
105 | loginIn(self.user.account, self.user.password) | ||
106 | .then((res) => { | ||
107 | if (res.status === 1) { | ||
108 | //存储token | ||
109 | sessionStorage.setItem("token", `Bearer ${res.content}`); | ||
110 | //登录成功后需判断有无重定向,没有重定向则跳转首页 | ||
111 | this.$router.replace(this.$route.query.redirect || "/"); | ||
112 | } else { | ||
113 | //错误处理 | ||
114 | } | ||
115 | }) | ||
116 | .catch((error) => { | ||
117 | // console.dir(error); | ||
118 | }); | ||
119 | } | ||
120 | }); | ||
121 | }, | ||
122 | }, | ||
123 | computed: { | ||
124 | productName() { | ||
125 | return this.$store.state.products.products.name; | ||
126 | }, | ||
127 | }, | ||
128 | components: {}, | ||
129 | }; | ||
130 | </script> | ||
131 | <style scoped lang="scss"> | ||
132 | .bg { | ||
133 | width: 100%; | ||
134 | height: 100%; | ||
135 | background: url(../../image/loginBg.jpg) no-repeat; | ||
136 | background-size: 100% 100%; | ||
137 | overflow: hidden; | ||
138 | } | ||
139 | |||
140 | .login-inner-bg { | ||
141 | background: url(../../image/loginBoxBg.png) no-repeat; | ||
142 | width: 400px; | ||
143 | height: 350px; | ||
144 | margin: 35vh auto; | ||
145 | overflow: hidden; | ||
146 | background-size: 100% 100%; | ||
147 | box-sizing: border-box; | ||
148 | padding: 20px; | ||
149 | } | ||
150 | |||
151 | .login .user_style { | ||
152 | margin: 40px 20px 0; | ||
153 | h3 { | ||
154 | color: #fff; | ||
155 | font-weight: normal; | ||
156 | text-align: center; | ||
157 | margin-bottom: 20px; | ||
158 | } | ||
159 | } | ||
160 | |||
161 | .login .btn { | ||
162 | width: 100%; | ||
163 | height: 6vh; | ||
164 | background-color: #00c2de; | ||
165 | border-radius: 5px; | ||
166 | font-size: 1.4vw; | ||
167 | color: #ffffff; | ||
168 | } | ||
169 | |||
170 | .login .btn:hover { | ||
171 | cursor: pointer; | ||
172 | background-color: #2d8cf0; | ||
173 | } | ||
174 | |||
175 | #loginform .el-button { | ||
176 | background: #409eff !important; | ||
177 | color: #ffffff !important; | ||
178 | } | ||
179 | |||
180 | #loginform .el-button:hover { | ||
181 | cursor: pointer !important; | ||
182 | background-color: #2d8cf0 !important; | ||
183 | } | ||
184 | .inputUser .ivu-input { | ||
185 | padding: 6px 24px !important; | ||
186 | border: 1px solid #9f9f9f !important; | ||
187 | } | ||
188 | |||
189 | #loginform .el-input__inner { | ||
190 | width: 100% !important; | ||
191 | caret-color: #000 !important; | ||
192 | color: #606266 !important; | ||
193 | border-radius: 4px !important; | ||
194 | border: 1px solid #67c23a !important; | ||
195 | background: #fff !important; | ||
196 | opacity: 1 !important; | ||
197 | } | ||
198 | |||
199 | #loginform .el-input__inner::-webkit-input-placeholder { | ||
200 | /* WebKit browsers */ | ||
201 | color: #80807f !important; | ||
202 | } | ||
203 | .el-checkbox__label { | ||
204 | color: #fff; | ||
205 | } | ||
206 | </style> | ||
207 | <style></style> |
... | @@ -6,11 +6,30 @@ class data { | ... | @@ -6,11 +6,30 @@ class data { |
6 | columns () { | 6 | columns () { |
7 | return [ | 7 | return [ |
8 | { | 8 | { |
9 | prop: "state", | ||
10 | label: "状态", | ||
11 | width: '120', | ||
12 | render: (h, scope) => { | ||
13 | return ( | ||
14 | <div> | ||
15 | <span class='adopt' v-show={scope.row.state == 3}>上报失败</span> | ||
16 | <span class='adopt' v-show={scope.row.state == 2}>上报成功</span> | ||
17 | <span class='warehousing' v-show={scope.row.state == 1}>接入上报异常</span> | ||
18 | </div> | ||
19 | ) | ||
20 | } | ||
21 | }, | ||
22 | { | ||
23 | prop: "UPLOADTIME", | ||
24 | label: "汇交日期", | ||
25 | width: '150', | ||
26 | }, | ||
27 | { | ||
9 | prop: "AREANAME", | 28 | prop: "AREANAME", |
10 | label: "区域名称", | 29 | label: "区域名称", |
11 | }, | 30 | }, |
12 | { | 31 | { |
13 | prop: "UPLOADTIME", | 32 | prop: "ACCESSDATE", |
14 | label: "日期", | 33 | label: "日期", |
15 | width: '150', | 34 | width: '150', |
16 | }, | 35 | }, |
... | @@ -42,9 +61,9 @@ class data { | ... | @@ -42,9 +61,9 @@ class data { |
42 | width: '120', | 61 | width: '120', |
43 | render: (h, scope) => { | 62 | render: (h, scope) => { |
44 | return ( | 63 | return ( |
45 | <div class={'difference'}> | 64 | <div > |
46 | <p>{scope.row.BUSINESSTYPECOUNT}</p> | 65 | <p>{scope.row.registerBusinesstypecount}</p> |
47 | <p>{''}</p> | 66 | <p>{scope.row.accessBusinesstypecount}</p> |
48 | </div> | 67 | </div> |
49 | ) | 68 | ) |
50 | }, | 69 | }, | ... | ... |
... | @@ -120,8 +120,8 @@ export default { | ... | @@ -120,8 +120,8 @@ export default { |
120 | endTimeChange (val) { | 120 | endTimeChange (val) { |
121 | this.form.endTime = timeFormat(new Date(val), true) | 121 | this.form.endTime = timeFormat(new Date(val), true) |
122 | }, | 122 | }, |
123 | queryClick () { | 123 | featchData () { |
124 | getRecordLogPage({ ...this.form, ...this.pageData }).then(res => { | 124 | getRecordLogPage({ ...this.form }).then(res => { |
125 | if (res.code === 200) { | 125 | if (res.code === 200) { |
126 | let { records, total, current } = res.result | 126 | let { records, total, current } = res.result |
127 | this.tableData.data = records ? records : [] | 127 | this.tableData.data = records ? records : [] |
... | @@ -134,11 +134,8 @@ export default { | ... | @@ -134,11 +134,8 @@ export default { |
134 | resetForm () { | 134 | resetForm () { |
135 | this.$refs.ruleForm.resetFields(); | 135 | this.$refs.ruleForm.resetFields(); |
136 | this.form.currentPage = 1 | 136 | this.form.currentPage = 1 |
137 | this.queryClick(); | 137 | this.featchData(); |
138 | }, | 138 | } |
139 | featchData () { | ||
140 | this.queryClick(); | ||
141 | }, | ||
142 | } | 139 | } |
143 | } | 140 | } |
144 | </script> | 141 | </script> | ... | ... |
... | @@ -185,8 +185,8 @@ export default { | ... | @@ -185,8 +185,8 @@ export default { |
185 | this.form.exchangeEndTime = timeFormat(new Date(val), true) | 185 | this.form.exchangeEndTime = timeFormat(new Date(val), true) |
186 | }, | 186 | }, |
187 | // 初始化数据 | 187 | // 初始化数据 |
188 | queryClick () { | 188 | featchData () { |
189 | getDataReportPage({ ...this.form, ...this.pageData }).then((res) => { | 189 | getDataReportPage({ ...this.form }).then((res) => { |
190 | if (res.code === 200) { | 190 | if (res.code === 200) { |
191 | let { total, records, current } = res.result; | 191 | let { total, records, current } = res.result; |
192 | this.tableData.total = total; | 192 | this.tableData.total = total; |
... | @@ -195,11 +195,6 @@ export default { | ... | @@ -195,11 +195,6 @@ export default { |
195 | } | 195 | } |
196 | }); | 196 | }); |
197 | }, | 197 | }, |
198 | featchData () { | ||
199 | this.queryClick(); | ||
200 | }, | ||
201 | // 多选 | ||
202 | handleSelectionChange (val) { }, | ||
203 | // 上报 | 198 | // 上报 |
204 | handleEscalation () { }, | 199 | handleEscalation () { }, |
205 | // 详情 | 200 | // 详情 |
... | @@ -212,7 +207,7 @@ export default { | ... | @@ -212,7 +207,7 @@ export default { |
212 | this.$refs.ruleForm.resetFields(); | 207 | this.$refs.ruleForm.resetFields(); |
213 | this.form.exchangeEndTime = "" | 208 | this.form.exchangeEndTime = "" |
214 | this.form.currentPage = 1 | 209 | this.form.currentPage = 1 |
215 | this.queryClick(); | 210 | this.featchData(); |
216 | }, | 211 | }, |
217 | }, | 212 | }, |
218 | }; | 213 | }; | ... | ... |
1 | <template> | 1 | <template> |
2 | <!-- 编辑 --> | 2 | <!-- 编辑 --> |
3 | <dialogBox ref="addTask" width="60%" @submitForm="handleSubmit" :closed="true" @closeDialog="handleClose" | 3 | <dialogBox ref="addTask" width="60%" @submitForm="handleSubmit" @closeDialog="handleClose" v-model="myValue" |
4 | customClass="editValidRule" multiple title="新增定时任务"> | 4 | customClass="editValidRule" title="新增定时任务"> |
5 | <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px"> | 5 | <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px"> |
6 | <el-row :gutter="20"> | 6 | <el-row :gutter="20"> |
7 | <el-col :span="12"> | 7 | <el-col :span="12"> |
8 | <el-form-item label="任务名" prop="job_name"> | 8 | <el-form-item label="任务名" prop="jobName"> |
9 | <el-input v-model="ruleForm.job_name" placeholder="任务名"></el-input> | 9 | <el-input v-model="ruleForm.jobName" placeholder="任务名"></el-input> |
10 | </el-form-item> | 10 | </el-form-item> |
11 | </el-col> | 11 | </el-col> |
12 | <el-col :span="12"> | 12 | <el-col :span="12"> |
13 | <el-form-item label="任务分组" prop="job_group"> | 13 | <el-form-item label="类名" prop="beanName"> |
14 | <el-input v-model="ruleForm.job_group" placeholder="任务分组"></el-input> | 14 | <el-input v-model="ruleForm.beanName" placeholder="类名"></el-input> |
15 | </el-form-item> | 15 | </el-form-item> |
16 | </el-col> | 16 | </el-col> |
17 | </el-row> | 17 | </el-row> |
18 | <el-row :gutter="20"> | 18 | <el-row :gutter="20"> |
19 | <el-col :span="12"> | 19 | <el-col :span="12"> |
20 | <el-form-item label="cron表达式" prop="cron_expression"> | 20 | <el-form-item label="cron表达式" prop="cronExpression"> |
21 | <el-input v-model="ruleForm.cron_expression" placeholder="cron表达式"></el-input> | 21 | <el-input v-model="ruleForm.cronExpression" placeholder="cron表达式"></el-input> |
22 | </el-form-item> | 22 | </el-form-item> |
23 | </el-col> | 23 | </el-col> |
24 | <el-col :span="12"> | 24 | <el-col :span="12"> |
25 | <el-form-item label="任务类名" prop="bean_class"> | 25 | <el-form-item label="方法名" prop="methodName"> |
26 | <el-input v-model="ruleForm.bean_class" placeholder="任务执行时调用哪个类的方法 包名+类名"></el-input> | 26 | <el-input v-model="ruleForm.methodName" placeholder="方法名"></el-input> |
27 | </el-form-item> | 27 | </el-form-item> |
28 | </el-col> | 28 | </el-col> |
29 | </el-row> | 29 | </el-row> |
30 | <el-row :gutter="20"> | 30 | <el-row :gutter="20"> |
31 | <el-col :span="24"> | 31 | <el-col :span="24"> |
32 | <el-form-item label="任务描述" prop="description"> | 32 | <el-form-item label="任务描述" prop="remark"> |
33 | <el-input v-model="ruleForm.description" placeholder="任务描述"></el-input> | 33 | <el-input v-model="ruleForm.remark" placeholder="任务描述"></el-input> |
34 | </el-form-item> | 34 | </el-form-item> |
35 | </el-col> | 35 | </el-col> |
36 | </el-row> | 36 | </el-row> |
... | @@ -43,6 +43,7 @@ | ... | @@ -43,6 +43,7 @@ |
43 | import sjsbTask from '@/api/sjsbTask.js' | 43 | import sjsbTask from '@/api/sjsbTask.js' |
44 | export default { | 44 | export default { |
45 | props: { | 45 | props: { |
46 | value: { type: Boolean, default: false }, | ||
46 | taskData: { | 47 | taskData: { |
47 | type: Object, | 48 | type: Object, |
48 | default: null | 49 | default: null |
... | @@ -50,42 +51,33 @@ export default { | ... | @@ -50,42 +51,33 @@ export default { |
50 | }, | 51 | }, |
51 | data () { | 52 | data () { |
52 | return { | 53 | return { |
54 | myValue: this.value, | ||
53 | ruleForm: { | 55 | ruleForm: { |
54 | job_name: '', | 56 | jobName: '', |
55 | job_group: '', | 57 | cronExpression: '', |
56 | cron_expression: '', | 58 | beanName: '', |
57 | bean_class: '', | 59 | methodName: '', |
58 | description: '' | 60 | methodParams: '', |
61 | remark: '' | ||
59 | }, | 62 | }, |
60 | rules: { | 63 | rules: { |
61 | job_name: [ | 64 | jobName: [ |
62 | { required: true, message: '任务名', trigger: 'blur' } | 65 | { required: true, message: '任务名', trigger: 'blur' } |
63 | ], | 66 | ], |
64 | job_group: [ | 67 | cronExpression: [ |
65 | { required: true, message: '分组', trigger: 'blur' } | ||
66 | ], | ||
67 | cron_expression: [ | ||
68 | { required: true, message: 'cron表达式', trigger: 'blur' } | 68 | { required: true, message: 'cron表达式', trigger: 'blur' } |
69 | ], | 69 | ], |
70 | bean_class: [ | 70 | beanName: [ |
71 | { required: true, message: '任务类名', trigger: 'blur' } | 71 | { required: true, message: '任务类名', trigger: 'blur' } |
72 | ], | 72 | ], |
73 | description: [ | 73 | methodName: [ |
74 | { required: true, message: '任务描述', trigger: 'blur' } | 74 | { required: true, message: '任务方法名', trigger: 'blur' } |
75 | ], | 75 | ] |
76 | }, | 76 | }, |
77 | message: '' | 77 | message: '' |
78 | } | 78 | } |
79 | }, | 79 | }, |
80 | methods: { | 80 | methods: { |
81 | isShow () { | ||
82 | this.$refs.addTask.isShow() | ||
83 | setTimeout(() => { | ||
84 | if (this.taskData) { | ||
85 | this.ruleForm = _.cloneDeep(this.taskData) | ||
86 | } | ||
87 | }, 0) | ||
88 | }, | ||
89 | handleSubmit () { | 81 | handleSubmit () { |
90 | let _this = this | 82 | let _this = this |
91 | this.$refs['ruleForm'].validate(async (valid) => { | 83 | this.$refs['ruleForm'].validate(async (valid) => { |
... | @@ -129,13 +121,49 @@ export default { | ... | @@ -129,13 +121,49 @@ export default { |
129 | }) | 121 | }) |
130 | }, | 122 | }, |
131 | handleClose () { | 123 | handleClose () { |
132 | this.$refs.addTask.isHide() | 124 | this.$emit("input", false); |
133 | this.$refs['ruleForm'].resetFields() | 125 | } |
126 | }, | ||
127 | watch: { | ||
128 | value(val) { | ||
129 | this.myValue = val | ||
130 | }, | ||
131 | taskData(val) { | ||
132 | if (val != null) { | ||
133 | this.ruleForm = val | ||
134 | } else { | ||
135 | this.ruleForm = { | ||
136 | jobName: '', | ||
137 | cronExpression: '', | ||
138 | beanName: '', | ||
139 | methodName: '', | ||
140 | methodParams: '', | ||
141 | remark: '' | ||
142 | } | ||
143 | } | ||
134 | } | 144 | } |
135 | } | 145 | } |
136 | } | 146 | } |
137 | </script> | 147 | </script> |
138 | <style rel="stylesheet/less" lang="less" scoped> | 148 | <style rel="stylesheet/scss" lang="scss" scoped> |
149 | @import "~@/styles/public.scss"; | ||
150 | |||
151 | .editDialogBox-box { | ||
152 | margin: 14px 18px 30px 18px !important | ||
153 | } | ||
154 | |||
155 | /deep/.el-form-item__label { | ||
156 | color: #fff; | ||
157 | } | ||
158 | |||
159 | /deep/.el-form-item { | ||
160 | color: #fff; | ||
161 | margin-bottom: 10px; | ||
162 | } | ||
139 | 163 | ||
164 | /deep/ .el-input__inner { | ||
165 | background-color: transparent; | ||
166 | border: 1px solid #458ACF; | ||
167 | } | ||
140 | </style> | 168 | </style> |
141 | 169 | ... | ... |
... | @@ -286,6 +286,7 @@ export default { | ... | @@ -286,6 +286,7 @@ export default { |
286 | handleMinus (index, row) { | 286 | handleMinus (index, row) { |
287 | removeTreeListItem(this.tableData, row.dictid, 'dictid'); | 287 | removeTreeListItem(this.tableData, row.dictid, 'dictid'); |
288 | this.tableData = judgeSort(this.tableData) | 288 | this.tableData = judgeSort(this.tableData) |
289 | this.key++; | ||
289 | }, | 290 | }, |
290 | handleSubmit () { | 291 | handleSubmit () { |
291 | editDictNode({ | 292 | editDictNode({ |
... | @@ -343,15 +344,12 @@ export default { | ... | @@ -343,15 +344,12 @@ export default { |
343 | }, | 344 | }, |
344 | // 上移下移 | 345 | // 上移下移 |
345 | moveUpward (index, row) { | 346 | moveUpward (index, row) { |
346 | console.log("row上移", row); | ||
347 | |||
348 | realMove(row.dictid, "UP", this.tableData); | 347 | realMove(row.dictid, "UP", this.tableData); |
349 | let id = findParents(this.tableData, row.dictid); | 348 | let id = findParents(this.tableData, row.dictid); |
350 | this.keyList = id; | 349 | this.keyList = id; |
351 | this.key++; | 350 | this.key++; |
352 | }, | 351 | }, |
353 | moveDown (index, row) { | 352 | moveDown (index, row) { |
354 | console.log("row下移", row); | ||
355 | realMove(row.dictid, "DOWN", this.tableData); | 353 | realMove(row.dictid, "DOWN", this.tableData); |
356 | let id = findParents(this.tableData, row.dictid); | 354 | let id = findParents(this.tableData, row.dictid); |
357 | this.keyList = id; | 355 | this.keyList = id; | ... | ... |
... | @@ -20,16 +20,17 @@ | ... | @@ -20,16 +20,17 @@ |
20 | v-for="(item, index) in sexList" | 20 | v-for="(item, index) in sexList" |
21 | :key="index" | 21 | :key="index" |
22 | :label="item.value" | 22 | :label="item.value" |
23 | >{{ item.name }}</el-radio> | 23 | >{{ item.name }}</el-radio |
24 | > | ||
24 | </el-radio-group> | 25 | </el-radio-group> |
25 | </el-form-item> | 26 | </el-form-item> |
26 | <el-form-item label="身份证号:" prop="idCard"> | 27 | <el-form-item label="身份证号:" prop="idCard"> |
27 | <el-input v-model="form.idCard" clearable /> | 28 | <el-input v-model="form.idCard" clearable /> |
28 | </el-form-item> | 29 | </el-form-item> |
29 | <el-form-item label="手机号码:" prop="mobilePhone"> | 30 | <el-form-item label="手机号码:" prop="mobilePhone"> |
30 | <el-input v-model="form.mobilePhone" clearable type="number" /> | 31 | <el-input v-model="form.mobilePhone" clearable /> |
31 | </el-form-item> | 32 | </el-form-item> |
32 | <el-form-item label="办公电话:"> | 33 | <el-form-item label="办公电话:" prop="telephone"> |
33 | <el-input v-model="form.telephone" clearable /> | 34 | <el-input v-model="form.telephone" clearable /> |
34 | </el-form-item> | 35 | </el-form-item> |
35 | <el-form-item label="办公地址:"> | 36 | <el-form-item label="办公地址:"> |
... | @@ -55,46 +56,53 @@ export default { | ... | @@ -55,46 +56,53 @@ export default { |
55 | data() { | 56 | data() { |
56 | return { | 57 | return { |
57 | form: { | 58 | form: { |
58 | "id": "3127e455-43ba-45ff-9326-0e02ef89485e", | 59 | id: "3127e455-43ba-45ff-9326-0e02ef89485e", |
59 | "name": "超级管理员", | 60 | name: "超级管理员", |
60 | "sort": 1, | 61 | sort: 1, |
61 | "loginName": "admin", | 62 | loginName: "admin", |
62 | "email": null, | 63 | email: null, |
63 | "lastLoginTime": null, | 64 | lastLoginTime: null, |
64 | "mobilePhone": "18291003568", | 65 | mobilePhone: "18291003568", |
65 | "isLocked": false, | 66 | isLocked: false, |
66 | "status": "ACTIVE", | 67 | status: "ACTIVE", |
67 | "passwordChangeTime": "2021-12-10T08:01:01.569+0000", | 68 | passwordChangeTime: "2021-12-10T08:01:01.569+0000", |
68 | "idCard": "612725202111021521", | 69 | idCard: "612725202111021521", |
69 | "departmentId": "2eae5304-544f-4f5b-b354-8f5d47433c9b", | 70 | departmentId: "2eae5304-544f-4f5b-b354-8f5d47433c9b", |
70 | "departmentName": null, | 71 | departmentName: null, |
71 | "organizationId": "0bca67ae-1d9e-4b41-b057-f165586d24aa", | 72 | organizationId: "0bca67ae-1d9e-4b41-b057-f165586d24aa", |
72 | "sex": "0", | 73 | sex: "0", |
73 | "isDuty": true, | 74 | isDuty: true, |
74 | "code": "123324", | 75 | code: "123324", |
75 | "jobLevel": null, | 76 | jobLevel: null, |
76 | "telephone": "028-87720898", | 77 | telephone: "028-87720898", |
77 | "address": "办公地点修改测试" | 78 | address: "办公地点修改测试", |
78 | }, | 79 | }, |
79 | sexList: [], | 80 | sexList: [], |
80 | rules: { | 81 | rules: { |
81 | mobilePhone: [ | 82 | mobilePhone: [ |
82 | { | 83 | { |
83 | pattern: | 84 | pattern: |
84 | /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/, | 85 | /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/, |
85 | message: '手机号码格式有误', | 86 | message: "手机号码格式有误", |
86 | trigger: 'blur' | 87 | trigger: "blur", |
87 | } | 88 | }, |
88 | ], | 89 | ], |
89 | idCard: [ | 90 | idCard: [ |
90 | { | 91 | { |
91 | pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, | 92 | pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, |
92 | message: '身份证号格式有误', | 93 | message: "身份证号格式有误", |
93 | trigger: 'blur' | 94 | trigger: "blur", |
94 | } | 95 | }, |
95 | ] | 96 | ], |
96 | } | 97 | telephone: [ |
97 | } | 98 | { |
99 | pattern: /\d{3}-\d{8}|\d{4}-\d{7}/, | ||
100 | message: "办公电话格式有误", | ||
101 | trigger: "blur", | ||
102 | }, | ||
103 | ], | ||
104 | }, | ||
105 | }; | ||
98 | }, | 106 | }, |
99 | watch: { | 107 | watch: { |
100 | // userInfo: { | 108 | // userInfo: { |
... | @@ -110,69 +118,69 @@ export default { | ... | @@ -110,69 +118,69 @@ export default { |
110 | // if (res.status === 1) { | 118 | // if (res.status === 1) { |
111 | this.sexList = [ | 119 | this.sexList = [ |
112 | { | 120 | { |
113 | "id": "079c72b2-f3de-4a4f-b2a1-e5c8f085cc5f", | 121 | id: "079c72b2-f3de-4a4f-b2a1-e5c8f085cc5f", |
114 | "createdAt": "2021-06-11T02:42:02.000+0000", | 122 | createdAt: "2021-06-11T02:42:02.000+0000", |
115 | "updatedAt": "2021-09-03T09:21:46.000+0000", | 123 | updatedAt: "2021-09-03T09:21:46.000+0000", |
116 | "createdBy": "3127e455-43ba-45ff-9326-0e02ef89485e", | 124 | createdBy: "3127e455-43ba-45ff-9326-0e02ef89485e", |
117 | "updatedBy": "3127e455-43ba-45ff-9326-0e02ef89485e", | 125 | updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e", |
118 | "sort": 2, | 126 | sort: 2, |
119 | "name": "男", | 127 | name: "男", |
120 | "description": "", | 128 | description: "", |
121 | "code": "N362", | 129 | code: "N362", |
122 | "value": "0", | 130 | value: "0", |
123 | "parentId": null, | 131 | parentId: null, |
124 | "baseDataCategoryId": "11441374-5e2a-4635-bfa5-d1a430222019", | 132 | baseDataCategoryId: "11441374-5e2a-4635-bfa5-d1a430222019", |
125 | "version": 1, | 133 | version: 1, |
126 | "valid": true, | 134 | valid: true, |
127 | "standard": false, | 135 | standard: false, |
128 | "standardName": null, | 136 | standardName: null, |
129 | "standardValue": null, | 137 | standardValue: null, |
130 | "children": [], | 138 | children: [], |
131 | "commonName": "男(N362)" | 139 | commonName: "男(N362)", |
132 | }, | 140 | }, |
133 | { | 141 | { |
134 | "id": "4d6f845d-6f6a-4848-8fc2-a3760764c196", | 142 | id: "4d6f845d-6f6a-4848-8fc2-a3760764c196", |
135 | "createdAt": "2021-06-11T02:42:12.000+0000", | 143 | createdAt: "2021-06-11T02:42:12.000+0000", |
136 | "updatedAt": "2021-09-03T09:21:46.000+0000", | 144 | updatedAt: "2021-09-03T09:21:46.000+0000", |
137 | "createdBy": "3127e455-43ba-45ff-9326-0e02ef89485e", | 145 | createdBy: "3127e455-43ba-45ff-9326-0e02ef89485e", |
138 | "updatedBy": "3127e455-43ba-45ff-9326-0e02ef89485e", | 146 | updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e", |
139 | "sort": 1, | 147 | sort: 1, |
140 | "name": "女", | 148 | name: "女", |
141 | "description": "", | 149 | description: "", |
142 | "code": "N922", | 150 | code: "N922", |
143 | "value": "1", | 151 | value: "1", |
144 | "parentId": null, | 152 | parentId: null, |
145 | "baseDataCategoryId": "11441374-5e2a-4635-bfa5-d1a430222019", | 153 | baseDataCategoryId: "11441374-5e2a-4635-bfa5-d1a430222019", |
146 | "version": 1, | 154 | version: 1, |
147 | "valid": true, | 155 | valid: true, |
148 | "standard": false, | 156 | standard: false, |
149 | "standardName": null, | 157 | standardName: null, |
150 | "standardValue": null, | 158 | standardValue: null, |
151 | "children": [], | 159 | children: [], |
152 | "commonName": "女(N922)" | 160 | commonName: "女(N922)", |
153 | }, | 161 | }, |
154 | { | 162 | { |
155 | "id": "637c360b-d4e2-4afb-aa18-33624cf3abcb", | 163 | id: "637c360b-d4e2-4afb-aa18-33624cf3abcb", |
156 | "createdAt": "2021-06-11T02:42:29.000+0000", | 164 | createdAt: "2021-06-11T02:42:29.000+0000", |
157 | "updatedAt": "2021-09-03T09:21:43.000+0000", | 165 | updatedAt: "2021-09-03T09:21:43.000+0000", |
158 | "createdBy": "3127e455-43ba-45ff-9326-0e02ef89485e", | 166 | createdBy: "3127e455-43ba-45ff-9326-0e02ef89485e", |
159 | "updatedBy": "3127e455-43ba-45ff-9326-0e02ef89485e", | 167 | updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e", |
160 | "sort": 0, | 168 | sort: 0, |
161 | "name": "保密", | 169 | name: "保密", |
162 | "description": "", | 170 | description: "", |
163 | "code": "BM816", | 171 | code: "BM816", |
164 | "value": "2", | 172 | value: "2", |
165 | "parentId": null, | 173 | parentId: null, |
166 | "baseDataCategoryId": "11441374-5e2a-4635-bfa5-d1a430222019", | 174 | baseDataCategoryId: "11441374-5e2a-4635-bfa5-d1a430222019", |
167 | "version": 1, | 175 | version: 1, |
168 | "valid": true, | 176 | valid: true, |
169 | "standard": false, | 177 | standard: false, |
170 | "standardName": null, | 178 | standardName: null, |
171 | "standardValue": null, | 179 | standardValue: null, |
172 | "children": [], | 180 | children: [], |
173 | "commonName": "保密(BM816)" | 181 | commonName: "保密(BM816)", |
174 | } | 182 | }, |
175 | ] | 183 | ]; |
176 | // } else { | 184 | // } else { |
177 | // this.$message.error({ message: res.message, showClose: true }) | 185 | // this.$message.error({ message: res.message, showClose: true }) |
178 | // } | 186 | // } |
... | @@ -188,7 +196,8 @@ export default { | ... | @@ -188,7 +196,8 @@ export default { |
188 | // } | 196 | // } |
189 | // }) | 197 | // }) |
190 | // }, | 198 | // }, |
191 | // updateInfo() { | 199 | // 更新信息 |
200 | updateInfo() { | ||
192 | // this.$refs.form.validate((valid) => { | 201 | // this.$refs.form.validate((valid) => { |
193 | // if (valid) { | 202 | // if (valid) { |
194 | // putAction(`${api.users}/${this.form.id}`, this.form).then((res) => { | 203 | // putAction(`${api.users}/${this.form.id}`, this.form).then((res) => { |
... | @@ -201,14 +210,14 @@ export default { | ... | @@ -201,14 +210,14 @@ export default { |
201 | // }) | 210 | // }) |
202 | // } | 211 | // } |
203 | // }) | 212 | // }) |
204 | // } | 213 | }, |
205 | } | 214 | }, |
206 | } | 215 | }; |
207 | </script> | 216 | </script> |
208 | 217 | ||
209 | <style scoped lang="scss"> | 218 | <style scoped lang="scss"> |
210 | .user-info { | 219 | .user-info { |
211 | margin: 36px 200px; | 220 | margin: 0.1875rem 1.0417rem; |
212 | background: #ffffff; | 221 | background: #ffffff; |
213 | max-height: 90%; | 222 | max-height: 90%; |
214 | overflow-y: auto; | 223 | overflow-y: auto; |
... | @@ -223,7 +232,7 @@ export default { | ... | @@ -223,7 +232,7 @@ export default { |
223 | padding: 0 8px; | 232 | padding: 0 8px; |
224 | height: 40px; | 233 | height: 40px; |
225 | line-height: 40px; | 234 | line-height: 40px; |
226 | border: 1px solid #dfe7f3; | 235 | border: 1px solid #6BC1FC; |
227 | } | 236 | } |
228 | } | 237 | } |
229 | } | 238 | } | ... | ... |
1 | <template> | 1 | <template> |
2 | <div class="information from-clues"> | 2 | <div class="information from-clues"> |
3 | <div class="from-clues-header"> | 3 | <div class="from-clues-header"> |
4 | <el-form ref="ruleForm" :model="form" label-width="100px"> | 4 | <el-form ref="ruleForm" label-width="100px"> |
5 | <el-form-item> | 5 | <el-form-item> |
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="3" class="btnColRight"> | 9 | <el-col :span="3" class="btnColRight"> |
10 | <btn nativeType="cx" @click="information()">基本信息</btn> | 10 | <btn nativeType="cx" @click="information">基本信息</btn> |
11 | <btn nativeType="cx" @click="password()">修改秘密</btn> | 11 | <btn nativeType="cx" @click="password">修改密码</btn> |
12 | </el-col> | 12 | </el-col> |
13 | </el-row> | 13 | </el-row> |
14 | </el-form> | 14 | </el-form> |
15 | </div> | 15 | </div> |
16 | <div class="from-clues-content"> | 16 | <div class="from-clues-content"> |
17 | <div class="contentbox"> | 17 | <div class="contentbox"> |
18 | <base-set :user-info="userData" v-show="isshow" /> | 18 | <base-set v-show="isshow" /> |
19 | <password-edit :user-info="userData" v-show="!isshow" /> | 19 | <password-edit v-show="!isshow" /> |
20 | </div> | 20 | </div> |
21 | </div> | 21 | </div> |
22 | <edit-dialog ref="dialogForm" /> | ||
23 | <authorizationdiglog ref="rolesForm" /> | ||
24 | </div> | 22 | </div> |
25 | </template> | 23 | </template> |
26 | <script> | 24 | <script> |
25 | import "@/utils/flexible.js"; | ||
27 | import BaseSet from "./base-set.vue"; | 26 | import BaseSet from "./base-set.vue"; |
28 | import PasswordEdit from "./password-edit.vue"; | 27 | import PasswordEdit from "./password-edit.vue"; |
29 | export default { | 28 | export default { |
... | @@ -53,6 +52,7 @@ export default { | ... | @@ -53,6 +52,7 @@ export default { |
53 | </script> | 52 | </script> |
54 | 53 | ||
55 | <style scoped lang="scss"> | 54 | <style scoped lang="scss"> |
55 | @import "~@/styles/mixin.scss"; | ||
56 | @import "~@/styles/public.scss"; | 56 | @import "~@/styles/public.scss"; |
57 | .information{ | 57 | .information{ |
58 | .btnColRight{ | 58 | .btnColRight{ |
... | @@ -76,7 +76,7 @@ export default { | ... | @@ -76,7 +76,7 @@ export default { |
76 | } | 76 | } |
77 | } | 77 | } |
78 | .contentbox{ | 78 | .contentbox{ |
79 | height: 650px; | 79 | height: 3.0854rem; |
80 | } | 80 | } |
81 | } | 81 | } |
82 | 82 | ... | ... |
... | @@ -79,16 +79,17 @@ export default { | ... | @@ -79,16 +79,17 @@ export default { |
79 | // } | 79 | // } |
80 | }, | 80 | }, |
81 | mounted() {}, | 81 | mounted() {}, |
82 | // methods: { | 82 | methods: { |
83 | // validatorConfirmPassword(rule, value, callback) { | 83 | validatorConfirmPassword(rule, value, callback) { |
84 | // const { newPassword } = this.form | 84 | const { newPassword } = this.form |
85 | // if (value !== newPassword) { | 85 | if (value !== newPassword) { |
86 | // callback('两次输入密码不一致') | 86 | callback('两次输入密码不一致') |
87 | // } else { | 87 | } else { |
88 | // callback() | 88 | callback() |
89 | // } | 89 | } |
90 | // }, | 90 | }, |
91 | // updatePassword() { | 91 | // 确认修改 |
92 | updatePassword() { | ||
92 | // this.$refs.form.validate((valid) => { | 93 | // this.$refs.form.validate((valid) => { |
93 | // if (valid) { | 94 | // if (valid) { |
94 | // const params = Object.assign({}, this.form, { id: this.userId }) | 95 | // const params = Object.assign({}, this.form, { id: this.userId }) |
... | @@ -101,8 +102,8 @@ export default { | ... | @@ -101,8 +102,8 @@ export default { |
101 | // }) | 102 | // }) |
102 | // } | 103 | // } |
103 | // }) | 104 | // }) |
104 | // } | 105 | } |
105 | // } | 106 | } |
106 | } | 107 | } |
107 | </script> | 108 | </script> |
108 | 109 | ||
... | @@ -123,7 +124,7 @@ export default { | ... | @@ -123,7 +124,7 @@ export default { |
123 | padding: 0 8px; | 124 | padding: 0 8px; |
124 | height: 40px; | 125 | height: 40px; |
125 | line-height: 40px; | 126 | line-height: 40px; |
126 | border: 1px solid #dfe7f3; | 127 | border: 1px solid #6BC1FC; |
127 | } | 128 | } |
128 | } | 129 | } |
129 | } | 130 | } | ... | ... |
... | @@ -119,7 +119,6 @@ export default { | ... | @@ -119,7 +119,6 @@ export default { |
119 | // }) | 119 | // }) |
120 | }, | 120 | }, |
121 | handleSelectionChange (val) { | 121 | handleSelectionChange (val) { |
122 | console.log("vadddl",val); | ||
123 | this.multipleSelection = val | 122 | this.multipleSelection = val |
124 | } | 123 | } |
125 | } | 124 | } | ... | ... |
... | @@ -232,13 +232,6 @@ export default { | ... | @@ -232,13 +232,6 @@ export default { |
232 | tableData: { | 232 | tableData: { |
233 | columns: [].concat(data.columns()).concat([ | 233 | columns: [].concat(data.columns()).concat([ |
234 | { | 234 | { |
235 | label: "排序", | ||
236 | width: 380, | ||
237 | render: (h, scope) => { | ||
238 | return <div></div>; | ||
239 | }, | ||
240 | }, | ||
241 | { | ||
242 | label: "操作", | 235 | label: "操作", |
243 | width: 380, | 236 | width: 380, |
244 | render: (h, scope) => { | 237 | render: (h, scope) => { | ... | ... |
... | @@ -20,14 +20,6 @@ | ... | @@ -20,14 +20,6 @@ |
20 | </el-col> | 20 | </el-col> |
21 | <el-col :span="12"> | 21 | <el-col :span="12"> |
22 | <el-form-item label="角色类型:" prop="roleType"> | 22 | <el-form-item label="角色类型:" prop="roleType"> |
23 | <!-- <el-select v-model="dialogForm.roleType.value" placeholder="角色类型"> | ||
24 | <el-option | ||
25 | v-for="item in roleTypeOptions" | ||
26 | :key="item.value" | ||
27 | :label="item.name" | ||
28 | :value="item.value"> | ||
29 | </el-option> | ||
30 | </el-select> --> | ||
31 | <el-input | 23 | <el-input |
32 | v-model="dialogForm.roleType" | 24 | v-model="dialogForm.roleType" |
33 | clearable | 25 | clearable |
... | @@ -66,7 +58,7 @@ | ... | @@ -66,7 +58,7 @@ |
66 | 58 | ||
67 | <script> | 59 | <script> |
68 | import Dialog from "@/components/Dialog/"; | 60 | import Dialog from "@/components/Dialog/"; |
69 | 61 | import { api, httpAction } from '@/api/manageApi' | |
70 | export default { | 62 | export default { |
71 | components: { | 63 | components: { |
72 | Dialog | 64 | Dialog |
... | @@ -104,55 +96,57 @@ export default { | ... | @@ -104,55 +96,57 @@ export default { |
104 | if (valid) { | 96 | if (valid) { |
105 | try { | 97 | try { |
106 | const params = { | 98 | const params = { |
107 | category: this.menuType, | 99 | category: 2, |
108 | description: this.dialogForm.roleTextArea, | 100 | description: this.dialogForm.roleTextArea, |
109 | name: this.dialogForm.roleName, | 101 | name: this.dialogForm.roleName, |
110 | sort: this.sort, | 102 | sort: this.sort, |
111 | type: this.dialogForm.roleType | 103 | type: this.dialogForm.roleType |
112 | } | 104 | } |
105 | console.log("this.roleId",this.roleId); | ||
113 | if (this.roleId) { | 106 | if (this.roleId) { |
114 | // params.id = this.roleId | 107 | params.id = this.roleId |
115 | // httpAction(`${api.roles}/${params.id}`, params, 'post').then( | 108 | console.log("修改",params.id,params); |
116 | // (res) => { | 109 | httpAction(`${api.roles}/${params.id}`, params, 'post').then( |
117 | // if (res.status === 1) { | 110 | (res) => { |
118 | // this.$message.success({ | 111 | if (res.status === 1) { |
119 | // message: '修改成功', | 112 | this.$message.success({ |
120 | // showClose: true | 113 | message: '修改成功', |
121 | // }) | 114 | showClose: true |
122 | // this.dialogForm = { | 115 | }) |
123 | // roleName: '', | 116 | this.dialogForm = { |
124 | // roleType: '' | 117 | roleName: '', |
125 | // } | 118 | roleType: '' |
126 | // this.showAddEditDialog = val | 119 | } |
127 | // this.$emit('ok', this.menuType) | 120 | this.showAddEditDialog = val |
128 | // } else { | 121 | this.$emit('ok', this.menuType) |
129 | // this.$message.error({ | 122 | } else { |
130 | // message: res.message, | 123 | this.$message.error({ |
131 | // showClose: true | 124 | message: res.message, |
132 | // }) | 125 | showClose: true |
133 | // } | 126 | }) |
134 | // } | 127 | } |
135 | // ) | 128 | } |
129 | ) | ||
136 | } else { | 130 | } else { |
137 | // httpAction(api.roles, params, 'post').then((res) => { | 131 | httpAction(api.roles, params, 'post').then((res) => { |
138 | // if (res.status === 1) { | 132 | if (res.status === 1) { |
139 | // this.$message.success({ | 133 | this.$message.success({ |
140 | // message: '新增成功', | 134 | message: '新增成功', |
141 | // showClose: true | 135 | showClose: true |
142 | // }) | 136 | }) |
143 | // this.dialogForm = { | 137 | this.dialogForm = { |
144 | // roleName: '', | 138 | roleName: '', |
145 | // roleType: '' | 139 | roleType: '' |
146 | // } | 140 | } |
147 | // this.showAddEditDialog = val | 141 | this.showAddEditDialog = val |
148 | // this.$emit('ok', this.menuType) | 142 | this.$emit('ok', this.menuType) |
149 | // } else { | 143 | } else { |
150 | // this.$message.error({ | 144 | this.$message.error({ |
151 | // message: res.message, | 145 | message: res.message, |
152 | // showClose: true | 146 | showClose: true |
153 | // }) | 147 | }) |
154 | // } | 148 | } |
155 | // }) | 149 | }) |
156 | } | 150 | } |
157 | } catch (e) { | 151 | } catch (e) { |
158 | console.error(e) | 152 | console.error(e) |
... | @@ -162,6 +156,7 @@ export default { | ... | @@ -162,6 +156,7 @@ export default { |
162 | }, | 156 | }, |
163 | // 取消事件 | 157 | // 取消事件 |
164 | handleCloseDialog() { | 158 | handleCloseDialog() { |
159 | this.$refs.form.resetFields() | ||
165 | this.dialogForm = { | 160 | this.dialogForm = { |
166 | roleName: '', | 161 | roleName: '', |
167 | roleType: '' | 162 | roleType: '' | ... | ... |
This diff is collapsed.
Click to expand it.
... | @@ -27,28 +27,27 @@ | ... | @@ -27,28 +27,27 @@ |
27 | 27 | ||
28 | <script> | 28 | <script> |
29 | import Dialog from "@/components/Dialog/"; | 29 | import Dialog from "@/components/Dialog/"; |
30 | import { updateUser } from "@/api/Rolemanagement"; | ||
30 | export default { | 31 | export default { |
31 | name: "", | 32 | name: "", |
32 | components: { Dialog }, | 33 | components: { Dialog }, |
33 | props: {}, | ||
34 | data() { | 34 | data() { |
35 | return { | 35 | return { |
36 | title: "人员配置", | 36 | title: "人员配置", |
37 | visible: false, | 37 | visible: false, |
38 | |||
39 | hasSelectList: [ | 38 | hasSelectList: [ |
40 | { | 39 | // { |
41 | name: "管理员", | 40 | // name: "管理员", |
42 | loginName: "admin1", | 41 | // loginName: "admin1", |
43 | departmentName: "研发部", | 42 | // departmentName: "研发部", |
44 | jobLevel: null, | 43 | // jobLevel: null, |
45 | }, | 44 | // }, |
46 | { | 45 | // { |
47 | name: "测试账号", | 46 | // name: "测试账号", |
48 | loginName: "admin2", | 47 | // loginName: "admin2", |
49 | departmentName: "研发部", | 48 | // departmentName: "研发部", |
50 | jobLevel: null, | 49 | // jobLevel: null, |
51 | }, | 50 | // }, |
52 | ], //已经选择的id组成的数组 | 51 | ], //已经选择的id组成的数组 |
53 | tableData: { | 52 | tableData: { |
54 | column: [ | 53 | column: [ |
... | @@ -72,62 +71,24 @@ export default { | ... | @@ -72,62 +71,24 @@ export default { |
72 | label: "职务", | 71 | label: "职务", |
73 | }, | 72 | }, |
74 | ], | 73 | ], |
75 | data: [ | 74 | data: [], |
76 | { | 75 | // 角色id |
77 | id: "3127e455-43ba-45ff-9326-0e02ef89485e", | 76 | roleId: "", |
78 | createdAt: null, | ||
79 | updatedAt: "2022-08-04T03:38:27.626+0000", | ||
80 | createdBy: null, | ||
81 | updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e", | ||
82 | sort: 1, | ||
83 | name: "超级管理员", | ||
84 | loginName: "admin", | ||
85 | password: "05eb15777e8fd1d61c840472e7267f61d432f63340d86b59", | ||
86 | passwordSalt: "5178114777136485", | ||
87 | email: null, | ||
88 | lastLoginTime: null, | ||
89 | mobilePhone: "18291003568", | ||
90 | status: "ACTIVE", | ||
91 | passwordChangeTime: "2021-12-10T08:01:01.569+0000", | ||
92 | idCard: "612725202111021521", | ||
93 | departmentId: "2eae5304-544f-4f5b-b354-8f5d47433c9b", | ||
94 | organizationId: "0bca67ae-1d9e-4b41-b057-f165586d24aa", | ||
95 | sex: "0", | ||
96 | isDuty: true, | ||
97 | code: "123324", | ||
98 | jobLevel: null, | ||
99 | telephone: "028-87720898", | ||
100 | address: "办公地点修改测试", | ||
101 | isLocked: false, | ||
102 | departmentName: "研发部", | ||
103 | _X_ROW_KEY: "row_276", | ||
104 | }, | ||
105 | { | ||
106 | name: "管理员", | ||
107 | loginName: "admin1", | ||
108 | departmentName: "研发部", | ||
109 | jobLevel: null, | ||
110 | selectStatus: 0, | ||
111 | }, | ||
112 | { | ||
113 | name: "测试账号", | ||
114 | loginName: "admin2", | ||
115 | departmentName: "研发部", | ||
116 | jobLevel: null, | ||
117 | selectStatus: 0, | ||
118 | }, | ||
119 | ], | ||
120 | }, | 77 | }, |
121 | multipleSelection: [], | 78 | multipleSelection: [], |
122 | }; | 79 | }; |
123 | }, | 80 | }, |
124 | computed: {}, | 81 | computed: {}, |
125 | watch: {}, | 82 | |
126 | created() {}, | 83 | created() {}, |
127 | mounted() {}, | 84 | mounted() {}, |
128 | methods: { | 85 | methods: { |
129 | adds() { | 86 | // 人员配置根据selectStatus字段确定已选人员 |
87 | adds(a, rid) { | ||
88 | this.roleId = rid; | ||
130 | this.visible = true; | 89 | this.visible = true; |
90 | console.log("a", a); | ||
91 | this.tableData.data = a; | ||
131 | this.tableData.data.forEach((item, index) => { | 92 | this.tableData.data.forEach((item, index) => { |
132 | if (item.selectStatus === 0) { | 93 | if (item.selectStatus === 0) { |
133 | this.$nextTick(() => { | 94 | this.$nextTick(() => { |
... | @@ -142,35 +103,35 @@ export default { | ... | @@ -142,35 +103,35 @@ export default { |
142 | close() { | 103 | close() { |
143 | this.visible = false; | 104 | this.visible = false; |
144 | }, | 105 | }, |
145 | // 保存事件 | 106 | // 保存 |
146 | handleSaveMember() { | 107 | handleSaveMember() { |
147 | // if (this.memberList.length === 0) { | 108 | const idList = this.multipleSelection.map((item) => { |
148 | // this.$message.warning("请添加待选人员"); | 109 | return item.id; |
149 | // return false; | 110 | }); |
150 | // } | 111 | console.log("this.roleId",this.roleId,idList); |
151 | // const idList = this.memberList.map(item => item.id) | 112 | updateUser(this.roleId, idList).then((res) => { |
152 | // updateUser(this.roleId, idList).then(res => { | 113 | console.log("res",res); |
153 | // if (res.status === 1) { | 114 | if (res.status === 1) { |
154 | // this.$message.success({ message: '保存成功', showClose: true }) | 115 | this.$message.success({ message: "保存成功", showClose: true }); |
155 | // this.showMemberConfigDialog = false | 116 | this.visible = false; |
156 | // this.$emit('setUsers', this.roleId) | 117 | // this.$emit("setUsers", this.roleId); |
157 | // this.resetMemberConfig() | 118 | // this.resetMemberConfig(); |
158 | // } else this.$message.error({ message: res.message, showClose: true }) | 119 | } else this.$message.error({ message: res.message, showClose: true }); |
159 | // }) | 120 | }); |
160 | }, | 121 | }, |
161 | handleSelectionChange(val) { | 122 | handleSelectionChange(val) { |
123 | console.log("val", val); | ||
162 | this.multipleSelection = val; | 124 | this.multipleSelection = val; |
163 | }, | 125 | }, |
164 | }, | 126 | }, |
165 | }; | 127 | }; |
166 | </script> | 128 | </script> |
167 | <style scoped lang="scss"> | 129 | <style scoped lang="scss"> |
168 | /deep/.el-dialog__header{ | 130 | /deep/.el-dialog__header { |
169 | text-align: center; | 131 | text-align: center; |
170 | margin-bottom: 10px; | 132 | margin-bottom: 10px; |
171 | .el-dialog__title{ | 133 | .el-dialog__title { |
172 | color: white; | 134 | color: white; |
135 | } | ||
173 | } | 136 | } |
174 | } | ||
175 | |||
176 | </style> | 137 | </style> | ... | ... |
... | @@ -6,34 +6,35 @@ class data extends filter { | ... | @@ -6,34 +6,35 @@ class data extends filter { |
6 | columns () { | 6 | columns () { |
7 | return [ | 7 | return [ |
8 | { | 8 | { |
9 | prop: "job_name", | 9 | prop: "jobName", |
10 | label: "任务名称", | 10 | label: "任务名称", |
11 | width: 130 | 11 | width: 130 |
12 | }, | 12 | }, |
13 | { | 13 | { |
14 | prop: "description", | 14 | prop: "remark", |
15 | label: "任务描述", | 15 | label: "任务描述", |
16 | width: 300 | 16 | width: 300 |
17 | }, | 17 | }, |
18 | { | 18 | { |
19 | prop: "cron_expression", | 19 | prop: "cronExpression", |
20 | label: "cron表达式" | 20 | label: "cron表达式" |
21 | }, | 21 | }, |
22 | { | 22 | { |
23 | prop: "bean_class", | 23 | prop: "beanName", |
24 | width: 260, | 24 | width: 260, |
25 | label: "任务类" | 25 | label: "任务类" |
26 | }, | 26 | }, |
27 | { | 27 | { |
28 | prop: "job_group", | 28 | prop: "methodName", |
29 | label: "任务分组" | 29 | label: "方法名称" |
30 | }, | 30 | }, |
31 | { | 31 | { |
32 | label: "状态", | 32 | label: "状态", |
33 | prop: "jobStatus", | ||
33 | render: (h, scope) => { | 34 | render: (h, scope) => { |
34 | return ( | 35 | return ( |
35 | <div> | 36 | <div> |
36 | { this.stateStatus(scope.row.job_status) } | 37 | { this.stateStatus(scope.row.jobStatus) } |
37 | </div> | 38 | </div> |
38 | ) | 39 | ) |
39 | }, | 40 | }, | ... | ... |
... | @@ -8,11 +8,12 @@ | ... | @@ -8,11 +8,12 @@ |
8 | <el-row> | 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-input v-model="form.job_name" placeholder="标题"></el-input> | 11 | <el-input v-model="form.jobName" placeholder="标题"></el-input> |
12 | </el-form-item> | 12 | </el-form-item> |
13 | </el-col> | 13 | </el-col> |
14 | <el-col :span="18" class="btnColRight"> | 14 | <el-col :span="18" class="btnColRight"> |
15 | <btn nativeType="cx" @click="handleSearch">查询</btn> | 15 | <btn nativeType="cx" @click="handleSubmit">搜索</btn> |
16 | <btn nativeType="cx" @click="resetSe">重置</btn> | ||
16 | <btn nativeType="cx" @click="handleAdd">新增</btn> | 17 | <btn nativeType="cx" @click="handleAdd">新增</btn> |
17 | </el-col> | 18 | </el-col> |
18 | </el-row> | 19 | </el-row> |
... | @@ -23,7 +24,7 @@ | ... | @@ -23,7 +24,7 @@ |
23 | @size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns" | 24 | @size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns" |
24 | :data="tableData.data"> | 25 | :data="tableData.data"> |
25 | </lb-table> | 26 | </lb-table> |
26 | <add-task ref="task" :taskData="taskData" /> | 27 | <add-task ref="task" :taskData="taskData" v-model="isDialog"/> |
27 | </div> | 28 | </div> |
28 | </div> | 29 | </div> |
29 | </template> | 30 | </template> |
... | @@ -42,8 +43,9 @@ export default { | ... | @@ -42,8 +43,9 @@ export default { |
42 | data () { | 43 | data () { |
43 | return { | 44 | return { |
44 | taskData: null, | 45 | taskData: null, |
46 | isDialog: false, | ||
45 | form: { | 47 | form: { |
46 | job_name: '', | 48 | jobName: '', |
47 | currentPage: 1 | 49 | currentPage: 1 |
48 | }, | 50 | }, |
49 | selectionList: [], | 51 | selectionList: [], |
... | @@ -60,37 +62,23 @@ export default { | ... | @@ -60,37 +62,23 @@ export default { |
60 | render: (h, scope) => { | 62 | render: (h, scope) => { |
61 | return ( | 63 | return ( |
62 | <div> | 64 | <div> |
63 | <el-button type="text" size="mini" style="color: #67C23A" | ||
64 | v-show={scope.row.job_status !== '1' && scope.row.job_status !== '2'} | ||
65 | icon="el-icon-magic-stick" | ||
66 | onClick={() => { this.handleRecovery(scope.row) }}>激活 | ||
67 | </el-button> | ||
68 | |||
69 | <el-button type="text" size="mini" | ||
70 | style="color: #67C23A;margin-left:0" | ||
71 | icon="el-icon-refresh-right" | ||
72 | v-show={scope.row.job_status === '2'} | ||
73 | onClick={() => { this.handleActivation(scope.row) }}>恢复 | ||
74 | </el-button> | ||
75 | |||
76 | <el-button type="text" size="mini" | 65 | <el-button type="text" size="mini" |
77 | v-show={scope.row.job_status !== '1'} | 66 | v-show={scope.row.jobStatus === 0} |
78 | icon="el-icon-stopwatch" | 67 | icon="el-icon-video-pause" |
79 | onClick={() => { this.handletest(scope.row) }}>手动测试 | 68 | onClick={() => { this.handleActive(scope.row) }}>激活 |
80 | </el-button> | 69 | </el-button> |
81 | <el-button type="text" size="mini" | 70 | <el-button type="text" size="mini" |
82 | v-show={scope.row.job_status === '1'} | 71 | v-show={scope.row.jobStatus === -1} |
83 | icon="el-icon-video-pause" | 72 | icon="el-icon-video-pause" |
84 | onClick={() => { this.handleSuspend(scope.row) }}>暂停 | 73 | onClick={() => { this.recover(scope.row) }}>恢复 |
85 | </el-button> | 74 | </el-button> |
86 | <el-button type="text" size="mini" | 75 | <el-button type="text" size="mini" |
87 | icon="el-icon-edit" | 76 | icon="el-icon-edit" |
88 | v-show={scope.row.job_status === '2' || scope.row.job_status === '-1' || scope.row.job_status === '0'} | ||
89 | onClick={() => { this.handleEdit(scope.row) }}>编辑 | 77 | onClick={() => { this.handleEdit(scope.row) }}>编辑 |
90 | </el-button> | 78 | </el-button> |
91 | <el-button type="text" size="mini" | 79 | <el-button type="text" size="mini" |
92 | icon="el-icon-delete" style="color:#F56C6C" | 80 | icon="el-icon-delete" style="color:#F56C6C" |
93 | v-show={scope.row.job_status !== '1'} | 81 | v-show={scope.row.jobStatus !== -1} |
94 | onClick={() => { this.handleDel(scope.row) }}>删除 | 82 | onClick={() => { this.handleDel(scope.row) }}>删除 |
95 | </el-button> | 83 | </el-button> |
96 | </div> | 84 | </div> |
... | @@ -110,37 +98,30 @@ export default { | ... | @@ -110,37 +98,30 @@ export default { |
110 | methods: { | 98 | methods: { |
111 | handleAdd () { | 99 | handleAdd () { |
112 | this.taskData = null | 100 | this.taskData = null |
113 | this.$refs.task.isShow() | 101 | this.isDialog = true |
114 | }, | 102 | }, |
115 | handleSearch () { | 103 | resetSe() { |
116 | this.form.currentPage = 1 | 104 | this.form.jobName = '' |
117 | this.tableData.data = [] | 105 | this.featchData() |
118 | this.queryClick() | ||
119 | }, | 106 | }, |
120 | async featchData () { | 107 | async featchData () { |
121 | try { | 108 | try { |
122 | this.form = Object.assign(this.form, this.formData) | 109 | this.form = Object.assign(this.form, this.formData) |
123 | let { result: { list, total, pages: pageSize, pageNum: current } | 110 | let { result } = await sjsbTask.getTaskListByName(this.form) |
124 | } = await sjsbTask.getTaskListByName(this.form) | 111 | this.tableData.data = result.list |
125 | this.tableData.data = list | 112 | console.log(this.tableData.data, 'fffffffffffffffffff') |
126 | this.pageData = { | ||
127 | pageSize, | ||
128 | current, | ||
129 | total | ||
130 | } | ||
131 | } catch (error) { | 113 | } catch (error) { |
132 | this.message = error | 114 | this.message = error |
133 | } | 115 | } |
134 | }, | 116 | }, |
135 | // 暂停 | 117 | recover(row) { |
136 | handleSuspend (row) { | 118 | this.$confirm('此操将进行恢复操作, 是否继续?', '提示', { |
137 | this.$confirm('此操将进行暂停操作, 是否继续?', '提示', { | ||
138 | confirmButtonText: '确定', | 119 | confirmButtonText: '确定', |
139 | cancelButtonText: '取消', | 120 | cancelButtonText: '取消', |
140 | type: 'warning', | 121 | type: 'warning', |
141 | }) | 122 | }) |
142 | .then(() => { | 123 | .then(() => { |
143 | sjsbTask.pauseJob(row.id) | 124 | sjsbTask.recover(row.jobId) |
144 | .then((res) => { | 125 | .then((res) => { |
145 | if ((res.code = 200)) { | 126 | if ((res.code = 200)) { |
146 | this.$message({ | 127 | this.$message({ |
... | @@ -164,15 +145,15 @@ export default { | ... | @@ -164,15 +145,15 @@ export default { |
164 | }) | 145 | }) |
165 | }) | 146 | }) |
166 | }, | 147 | }, |
167 | // 激活 | 148 | |
168 | handleRecovery (row) { | 149 | handleActive(row) { |
169 | this.$confirm('此操将进行激活操作, 是否继续?', '提示', { | 150 | this.$confirm('此操将进行激活操作, 是否继续?', '提示', { |
170 | confirmButtonText: '确定', | 151 | confirmButtonText: '确定', |
171 | cancelButtonText: '取消', | 152 | cancelButtonText: '取消', |
172 | type: 'warning', | 153 | type: 'warning', |
173 | }) | 154 | }) |
174 | .then(() => { | 155 | .then(() => { |
175 | sjsbTask.activateJob(row.id) | 156 | sjsbTask.active(row.jobId) |
176 | .then((res) => { | 157 | .then((res) => { |
177 | if ((res.code = 200)) { | 158 | if ((res.code = 200)) { |
178 | this.$message({ | 159 | this.$message({ |
... | @@ -196,15 +177,15 @@ export default { | ... | @@ -196,15 +177,15 @@ export default { |
196 | }) | 177 | }) |
197 | }) | 178 | }) |
198 | }, | 179 | }, |
199 | // 恢复 | 180 | // 暂停 |
200 | handleActivation (row) { | 181 | handleSuspend (row) { |
201 | this.$confirm('此操将进行恢复操作, 是否继续?', '提示', { | 182 | this.$confirm('此操将进行暂停操作, 是否继续?', '提示', { |
202 | confirmButtonText: '确定', | 183 | confirmButtonText: '确定', |
203 | cancelButtonText: '取消', | 184 | cancelButtonText: '取消', |
204 | type: 'warning', | 185 | type: 'warning', |
205 | }) | 186 | }) |
206 | .then(() => { | 187 | .then(() => { |
207 | sjsbTask.resumeJob(row.id) | 188 | sjsbTask.pauseJob(row.id) |
208 | .then((res) => { | 189 | .then((res) => { |
209 | if ((res.code = 200)) { | 190 | if ((res.code = 200)) { |
210 | this.$message({ | 191 | this.$message({ |
... | @@ -228,41 +209,9 @@ export default { | ... | @@ -228,41 +209,9 @@ export default { |
228 | }) | 209 | }) |
229 | }) | 210 | }) |
230 | }, | 211 | }, |
231 | // 手动测试 | ||
232 | handletest (row) { | ||
233 | this.$confirm('此操将进行手动测试, 是否继续?', '提示', { | ||
234 | confirmButtonText: '确定', | ||
235 | cancelButtonText: '取消', | ||
236 | type: 'warning', | ||
237 | }) | ||
238 | .then(() => { | ||
239 | sjsbTask.sjsbTaskRun(row.id) | ||
240 | .then((res) => { | ||
241 | if ((res.code = 200)) { | ||
242 | this.$alert(res.message, '提示', { | ||
243 | confirmButtonText: '确定', | ||
244 | type: 'success' | ||
245 | }); | ||
246 | this.featchData() | ||
247 | } | ||
248 | }) | ||
249 | .catch((error) => { | ||
250 | this.$alert(error, '提示', { | ||
251 | confirmButtonText: '确定', | ||
252 | type: 'error' | ||
253 | }) | ||
254 | }) | ||
255 | }) | ||
256 | .catch(() => { | ||
257 | this.$message({ | ||
258 | type: 'info', | ||
259 | message: '已取消', | ||
260 | }) | ||
261 | }) | ||
262 | }, | ||
263 | handleEdit (row) { | 212 | handleEdit (row) { |
264 | this.taskData = row | 213 | this.taskData = row |
265 | this.$refs.task.isShow() | 214 | this.isDialog = true |
266 | }, | 215 | }, |
267 | handleDel (row) { | 216 | handleDel (row) { |
268 | this.$confirm('此操将进行删除操作, 是否继续?', '提示', { | 217 | this.$confirm('此操将进行删除操作, 是否继续?', '提示', { |
... | @@ -271,7 +220,7 @@ export default { | ... | @@ -271,7 +220,7 @@ export default { |
271 | type: 'warning', | 220 | type: 'warning', |
272 | }) | 221 | }) |
273 | .then(() => { | 222 | .then(() => { |
274 | sjsbTask.sjsbTaskRemove(row.id) | 223 | sjsbTask.sjsbTaskRemove(row.jobId) |
275 | .then((res) => { | 224 | .then((res) => { |
276 | if ((res.code = 200)) { | 225 | if ((res.code = 200)) { |
277 | this.$message({ | 226 | this.$message({ | ... | ... |
... | @@ -24,8 +24,8 @@ | ... | @@ -24,8 +24,8 @@ |
24 | @p-current-change="handleCurrentChange" | 24 | @p-current-change="handleCurrentChange" |
25 | :column="tableData.columns" | 25 | :column="tableData.columns" |
26 | :data="tableData.data" | 26 | :data="tableData.data" |
27 | :key="key" | 27 | :expand-row-keys="keyList" |
28 | :expand-row-keys="keyList" row-key="dictid" | 28 | row-key="dictid" |
29 | > | 29 | > |
30 | </lb-table> | 30 | </lb-table> |
31 | </div> | 31 | </div> |
... | @@ -33,7 +33,6 @@ | ... | @@ -33,7 +33,6 @@ |
33 | </div> | 33 | </div> |
34 | </template> | 34 | </template> |
35 | <script> | 35 | <script> |
36 | // 定时任务 | ||
37 | import { | 36 | import { |
38 | getUuid, | 37 | getUuid, |
39 | judgeSort, | 38 | judgeSort, |
... | @@ -187,35 +186,18 @@ export default { | ... | @@ -187,35 +186,18 @@ export default { |
187 | }, | 186 | }, |
188 | }; | 187 | }; |
189 | }, | 188 | }, |
189 | created() { | ||
190 | this.featchData(); | ||
191 | }, | ||
190 | methods: { | 192 | methods: { |
191 | // 添加索引 | 193 | |
192 | // addIndexes (data = this.tableData.data, isAdd = true) { | ||
193 | // data.forEach((item, index) => { | ||
194 | // if (index == 0) { | ||
195 | // item.codeShow = true; | ||
196 | // item.nameShow = false; | ||
197 | // item.normcodeShow = false; | ||
198 | // item.normnameShow = false; | ||
199 | // } else { | ||
200 | // item.codeShow = false; | ||
201 | // item.nameShow = false; | ||
202 | // item.normcodeShow = false; | ||
203 | // item.normnameShow = false; | ||
204 | // } | ||
205 | // if (isAdd) { | ||
206 | // item.index = index + 1; | ||
207 | // } | ||
208 | // if (item.children) { | ||
209 | // this.addIndexes(item.children, false); | ||
210 | // } | ||
211 | // }); | ||
212 | // }, | ||
213 | handleAdd() { | 194 | handleAdd() { |
214 | this.taskData = null; | 195 | this.taskData = null; |
215 | this.$refs.dialogForm.add(); | 196 | this.$refs.dialogForm.add(); |
216 | this.$refs.dialogForm.title = "添加"; | 197 | this.$refs.dialogForm.title = "添加"; |
217 | }, | 198 | }, |
218 | featchData() { | 199 | featchData() { |
200 | |||
219 | this.tableData.data = [ | 201 | this.tableData.data = [ |
220 | { | 202 | { |
221 | "dictid": "51b9f487861671f77782c5a23b5fe52e", | 203 | "dictid": "51b9f487861671f77782c5a23b5fe52e", |
... | @@ -226,8 +208,6 @@ export default { | ... | @@ -226,8 +208,6 @@ export default { |
226 | "DNAME": "小红", | 208 | "DNAME": "小红", |
227 | "SORT": null, | 209 | "SORT": null, |
228 | "index": 1, | 210 | "index": 1, |
229 | "isTop": true, | ||
230 | "isBottom": false | ||
231 | }, | 211 | }, |
232 | { | 212 | { |
233 | "dictid": "2291d9e298274c1ea1f40df63fbcff47", | 213 | "dictid": "2291d9e298274c1ea1f40df63fbcff47", |
... | @@ -238,8 +218,6 @@ export default { | ... | @@ -238,8 +218,6 @@ export default { |
238 | "DNAME": "小李", | 218 | "DNAME": "小李", |
239 | "SORT": null, | 219 | "SORT": null, |
240 | "index": 2, | 220 | "index": 2, |
241 | "isTop": false, | ||
242 | "isBottom": false | ||
243 | }, | 221 | }, |
244 | { | 222 | { |
245 | "dictid": "e6a5aeb8957b8029fa31586fb30dd5b8", | 223 | "dictid": "e6a5aeb8957b8029fa31586fb30dd5b8", |
... | @@ -250,11 +228,10 @@ export default { | ... | @@ -250,11 +228,10 @@ export default { |
250 | "DNAME": "小田", | 228 | "DNAME": "小田", |
251 | "SORT": null, | 229 | "SORT": null, |
252 | "index": 13, | 230 | "index": 13, |
253 | "isTop": false, | ||
254 | "isBottom": true | ||
255 | } | 231 | } |
256 | ]; | 232 | ] |
257 | }, | 233 | this.tableData.data=judgeSort(this.tableData.data) |
234 | }, | ||
258 | 235 | ||
259 | // 更新用户解锁状态 | 236 | // 更新用户解锁状态 |
260 | updateLock(id, name) { | 237 | updateLock(id, name) { | ... | ... |
-
Please register or sign in to post a comment