From 6e01d7c891908f091d07b18fbc4d31141d1d82d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=99=E8=BF=90=E6=A8=A1?= <1724894114@qq.com> Date: Sat, 6 Jul 2024 17:00:41 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=85=A5=E7=B3=BB=E7=BB=9F=E5=85=AC?= =?UTF-8?q?=E5=8F=B8=E3=80=81=E9=83=A8=E9=97=A8=E3=80=81=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 2 +- src/api/model/auth.js | 63 ++++++ src/api/model/oss.js | 7 + src/api/model/system.js | 218 +++++++++++++++++++- src/api/model/user.js | 28 +++ src/assets/icons/AbilityAuthorization.vue | 13 ++ src/assets/icons/DataAuthorization.vue | 13 ++ src/assets/icons/Delete.vue | 13 ++ src/assets/icons/Edit.vue | 13 ++ src/assets/icons/Review.vue | 13 ++ src/assets/icons/Revoke.vue | 15 ++ src/assets/icons/See.vue | 13 ++ src/assets/icons/UserList.vue | 13 ++ src/assets/icons/index.js | 11 + src/assets/icons/menu/System.vue | 2 +- src/components/scTable/index.vue | 22 +- src/config/table.js | 27 ++- src/layout/index.vue | 4 +- src/style/fix.scss | 29 ++- src/utils/request.js | 139 ++++++++----- src/utils/tool.js | 83 ++++++++ src/views/login/components/passwordForm.vue | 1 - src/views/login/components/phoneForm.vue | 89 +++++--- src/views/order/workOrder.vue | 16 +- src/views/setting/company/index.vue | 196 +++++++++++++++++- src/views/setting/company/save.vue | 177 ++++++++++++++++ src/views/setting/company/see.vue | 71 +++++++ src/views/setting/deptMag/index.vue | 87 ++++---- src/views/setting/deptMag/save.vue | 3 - src/views/setting/role/index.vue | 49 ++--- src/views/setting/role/save.vue | 5 +- src/views/setting/user/index.vue | 84 +++++--- src/views/setting/user/save.vue | 2 +- src/views/userCenter/index.vue | 2 +- src/views/userCenter/user/account.vue | 7 +- src/views/userCenter/user/bind.vue | 13 +- src/views/userCenter/user/password.vue | 51 ++--- 37 files changed, 1336 insertions(+), 258 deletions(-) create mode 100644 src/assets/icons/AbilityAuthorization.vue create mode 100644 src/assets/icons/DataAuthorization.vue create mode 100644 src/assets/icons/Delete.vue create mode 100644 src/assets/icons/Edit.vue create mode 100644 src/assets/icons/Review.vue create mode 100644 src/assets/icons/Revoke.vue create mode 100644 src/assets/icons/See.vue create mode 100644 src/assets/icons/UserList.vue create mode 100644 src/views/setting/company/save.vue create mode 100644 src/views/setting/company/see.vue diff --git a/.env.development b/.env.development index 72535fb..f6a8a1a 100644 --- a/.env.development +++ b/.env.development @@ -2,7 +2,7 @@ NODE_ENV = development # 标题 -VUE_APP_TITLE = 德木测试 +VUE_APP_TITLE = 隆姿集团 # 象纬云科 # 接口地址 diff --git a/src/api/model/auth.js b/src/api/model/auth.js index fee3f83..6c004ff 100644 --- a/src/api/model/auth.js +++ b/src/api/model/auth.js @@ -9,4 +9,67 @@ export default { return await http.post(this.url, data); }, }, + phoneLogin: { + url: `${config.API_URL}/mobile.login`, + name: "手机验证码登录获取TOKEN", + post: async function (data = {}) { + return await http.post(this.url, data); + }, + }, + wechatLogin:{ + url: `${config.API_URL}/open.platform.oauth.login`, + name: "微信扫码登录", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + wechatCode:{ + url: `${config.API_URL}/open.platform.scan.code`, + name: "获取微信扫码二维码", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + bindWechat:{ + url: `${config.API_URL}/official.qrcode`, + name: "微信绑定获取二维码地址", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + dingTalkLogin:{ + url: `${config.API_URL}/ding.app.login.scan.code`, + name: "钉钉扫码登录", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + dingTalkCode:{ + url: `${config.API_URL}/ding.app.login.scan.url`, + name: "钉钉登录二维码地址", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + bindDingTalk:{ + url: `${config.API_URL}/ding.app.login.scan.url.bind`, + name: "获取钉钉绑定二维码地址", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + bindDingTalkUser:{ + url: `${config.API_URL}/ding.app.bind.user`, + name: "钉钉绑定用户", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + unbindUser:{ + url: `${config.API_URL}/unbind.user`, + name: "解除绑定", + post: async function (params) { + return await http.post(this.url, params); + }, + }, }; diff --git a/src/api/model/oss.js b/src/api/model/oss.js index 25f4cc8..62127a6 100644 --- a/src/api/model/oss.js +++ b/src/api/model/oss.js @@ -8,5 +8,12 @@ export default { post: async function (params) { return await http.oss(this.url, params); }, + }, + status: { + url: `${config.API_URL}/common.active.status.list`, + name: "获取系统禁用启用下拉列表", + post: async function (params) { + return await http.post(this.url, params); + }, } }; diff --git a/src/api/model/system.js b/src/api/model/system.js index 8317b84..a060f2d 100644 --- a/src/api/model/system.js +++ b/src/api/model/system.js @@ -43,30 +43,236 @@ export default { }, role: { list: { - url: `${config.API_URL}/system/role/list2`, + url: `${config.API_URL}/roles.list`, name: "获取角色列表", get: async function (params) { - return await http.get(this.url, params); + return await http.post(this.url, params); + }, + }, + add:{ + url: `${config.API_URL}/roles.add`, + name: "角色增加", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + delete:{ + url: `${config.API_URL}/roles.delete`, + name: "角色删除", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + status:{ + url: `${config.API_URL}/roles.status`, + name: "角色状态", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + users:{ + url: `${config.API_URL}/roles.users`, + name: "角色成员", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + removeUser:{ + url: `${config.API_URL}/roles.removed.users`, + name: "移除角色成员", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + addUser:{ + url: `${config.API_URL}/roles.add.users`, + name: "添加角色成员", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + tree:{ + url: `${config.API_URL}/roles.dept.tree`, + name: "部门树", + post: async function (params) { + return await http.post(this.url, params); + }, + } + }, + company:{ + list: { + url: `${config.API_URL}/organization.list`, + name: "公司列表", + get: async function (params) { + return await http.post(this.url, params); + }, + }, + add: { + url: `${config.API_URL}/organization.add`, + name: "公司增加", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + info: { + url: `${config.API_URL}/organization.info`, + name: "公司详情", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + status: { + url: `${config.API_URL}/organization.update.status`, + name: "公司状态", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + delete: { + url: `${config.API_URL}/organization.delete`, + name: "公司删除", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + select:{ + url: `${config.API_URL}/organization.name.list`, + name: "公司下拉选择", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + typeSelect:{ + url: `${config.API_URL}/common.company.type.list`, + name: "公司类型下拉选择", + post: async function (params) { + return await http.post(this.url, params); }, }, }, dept: { list: { - url: `${config.API_URL}/system/dept/list`, + url: `${config.API_URL}/dept.list`, name: "获取部门列表", get: async function (params) { - return await http.get(this.url, params); + return await http.post(this.url, params); }, }, + add: { + url: `${config.API_URL}/dept.add`, + name: "部门增加", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + active:{ + url: `${config.API_URL}/dept.list.active`, + name: "部门列表启用", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + delete: { + url: `${config.API_URL}/dept.delete`, + name: "部门删除", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + info: { + url: `${config.API_URL}/dept.info`, + name: "部门详情", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + update:{ + url: `${config.API_URL}/dept.update`, + name: "部门更新", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + status:{ + url: `${config.API_URL}/dept.update.status`, + name: "部门状态", + post: async function (params) { + return await http.post(this.url, params); + }, + } }, user: { list: { - url: `${config.API_URL}/system/user/list`, + url: `${config.API_URL}/user.list`, name: "获取用户列表", get: async function (params) { - return await http.get(this.url, params); + return await http.post(this.url, params); }, }, + add:{ + url: `${config.API_URL}/user.add`, + name: "用户新增", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + delete:{ + url: `${config.API_URL}/user.delete`, + name: "用户删除", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + status:{ + url: `${config.API_URL}/user.status.update`, + name: "用户状态", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + generateRegistration:{ + url: `${config.API_URL}/generate.registration.challenge`, + name: "passKey 创建", + post: async function (params) { + return await http.post(this.url, params); + } + }, + verifyResponse:{ + url: `${config.API_URL}/verify.registration.response`, + name: "passKey 创建认证", + post: async function (params) { + return await http.post(this.url, params); + } + }, + + generateAuthentication:{ + url: `${config.API_URL}/generate.authentication.challenge`, + name: "passKey登录生成", + post: async function (params) { + return await http.post(this.url, params); + } + }, + verifyAuthentication:{ + url: `${config.API_URL}/verify.authentication.response`, + name: "passKey 登录认证", + post: async function (params) { + return await http.post(this.url, params); + } + }, + publishList:{ + url: `${config.API_URL}/publish.key.list`, + name: "passKey 指纹列表", + post: async function (params) { + return await http.post(this.url, params); + } + }, + renameAlias:{ + url: `${config.API_URL}/rename.alias`, + name: "passKey 指纹重命名", + post: async function (params) { + return await http.post(this.url, params); + } + }, }, app: { list: { diff --git a/src/api/model/user.js b/src/api/model/user.js index 135d720..a21f5b9 100644 --- a/src/api/model/user.js +++ b/src/api/model/user.js @@ -2,6 +2,13 @@ import config from "@/config"; import http from "@/utils/request"; export default { + verifyCode: { + url: `${config.API_URL}/sms.code.send`, + name: "获取短信验证码", + post: async function (params) { + return await http.post(this.url, params); + } + }, getInfo: { url: `${config.API_URL}/user.bind.info`, name: "获取绑定(微信、钉钉)个人中心", @@ -23,6 +30,27 @@ export default { return await http.post(this.url, params); }, }, + editUser:{ + url: `${config.API_URL}/user.update.me`, + name: "修改个人信息", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + bindMobile:{ + url: `${config.API_URL}/user.bind.mobile`, + name: "绑定手机号", + post: async function (params) { + return await http.post(this.url, params); + }, + }, + editPass:{ + url: `${config.API_URL}/user.re.pwd`, + name: "修改个人密码", + post: async function (params) { + return await http.post(this.url, params); + }, + }, timeoutConfig:{ url: `${config.API_URL}/system.login.timeout.config`, name: "登录超时退出配置", diff --git a/src/assets/icons/AbilityAuthorization.vue b/src/assets/icons/AbilityAuthorization.vue new file mode 100644 index 0000000..51ab828 --- /dev/null +++ b/src/assets/icons/AbilityAuthorization.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/assets/icons/DataAuthorization.vue b/src/assets/icons/DataAuthorization.vue new file mode 100644 index 0000000..ceeaa4e --- /dev/null +++ b/src/assets/icons/DataAuthorization.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/assets/icons/Delete.vue b/src/assets/icons/Delete.vue new file mode 100644 index 0000000..64e9ff8 --- /dev/null +++ b/src/assets/icons/Delete.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/assets/icons/Edit.vue b/src/assets/icons/Edit.vue new file mode 100644 index 0000000..3fb63d8 --- /dev/null +++ b/src/assets/icons/Edit.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/assets/icons/Review.vue b/src/assets/icons/Review.vue new file mode 100644 index 0000000..c4e5dbf --- /dev/null +++ b/src/assets/icons/Review.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/assets/icons/Revoke.vue b/src/assets/icons/Revoke.vue new file mode 100644 index 0000000..871f583 --- /dev/null +++ b/src/assets/icons/Revoke.vue @@ -0,0 +1,15 @@ + + + + + + + + + diff --git a/src/assets/icons/See.vue b/src/assets/icons/See.vue new file mode 100644 index 0000000..0717464 --- /dev/null +++ b/src/assets/icons/See.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/assets/icons/UserList.vue b/src/assets/icons/UserList.vue new file mode 100644 index 0000000..4154a4d --- /dev/null +++ b/src/assets/icons/UserList.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/assets/icons/index.js b/src/assets/icons/index.js index 8675a64..8e6505d 100644 --- a/src/assets/icons/index.js +++ b/src/assets/icons/index.js @@ -21,6 +21,17 @@ export { default as Secure } from './Secure.vue' export { default as UserLog } from './Log.vue' export { default as WechartRound } from './WechartRound.vue' +// 列表按钮 +export { default as Delete } from './Delete.vue' +export { default as Edit } from './Edit.vue' +export { default as Review } from './Review.vue' +export { default as Revoke } from './Revoke.vue' +export { default as See } from './See.vue' +export { default as AbilityAuthorization } from './AbilityAuthorization.vue' +export { default as DataAuthorization } from './DataAuthorization.vue' +export { default as UserList } from './UserList.vue' + + export { default as Home } from './menu/Home.vue' export { default as Setup } from './menu/Setup.vue' export { default as Other } from './menu/Other.vue' diff --git a/src/assets/icons/menu/System.vue b/src/assets/icons/menu/System.vue index 01ca1f9..cce6d01 100644 --- a/src/assets/icons/menu/System.vue +++ b/src/assets/icons/menu/System.vue @@ -1,5 +1,5 @@ - + - diff --git a/src/views/setting/company/save.vue b/src/views/setting/company/save.vue new file mode 100644 index 0000000..22f643b --- /dev/null +++ b/src/views/setting/company/save.vue @@ -0,0 +1,177 @@ + + + + + 企业信息 + + + + + + + + + + + + + + + + + + + + + + + + + + + 企业管理员信息 + + + + + + + + + + + + + + + + + + + + + + + + + + 取 消 + 保 存 + + + + + + + diff --git a/src/views/setting/company/see.vue b/src/views/setting/company/see.vue new file mode 100644 index 0000000..c32cef0 --- /dev/null +++ b/src/views/setting/company/see.vue @@ -0,0 +1,71 @@ + + + + + {{form.full_name}} + + + {{form.domain}} + + + {{form.activation_date}} + + + + + + {{form.address}} + + + {{form.owner}} {{form.mobile}} + + + + + + + 取 消 + + + + + + + diff --git a/src/views/setting/deptMag/index.vue b/src/views/setting/deptMag/index.vue index 5f8fa7d..24490b5 100644 --- a/src/views/setting/deptMag/index.vue +++ b/src/views/setting/deptMag/index.vue @@ -1,44 +1,39 @@ - + - - + + - - - - + - - - - - + + + + - 启用 - 停用 + - - - + - - 查看 - 编辑 - - - 删除 - - - + + + + + + + + 修改 + 删除 + + + - @@ -57,10 +52,14 @@ }, data() { return { + size:'small', dialog: { save: false }, - apiObj: this.$API.system.dept.list, + list: { + apiObj: this.$API.system.dept.list, + column: [], + }, selection: [], search: { keyword: null @@ -89,15 +88,32 @@ this.$refs.saveDialog.open('show').setData(row) }) }, + // 状态 + changeSwitch(val, row) { + row.$switch_yx = true; + setTimeout(async () => { + let params = { + id: row.id, + status: row.active_status, + }; + const res = await this.$API.system.dept.status.post(params); + if(res.code ==200){ + console.log(res.data) + }else{ + row.active_status = !row.active_status; + } + delete row.$switch_yx; + }, 500); + }, //删除 async table_del(row){ - var reqData = {id: row.id} - var res = await this.$API.demo.post.post(reqData); + const reqData = {id: row.id}; + const res = await this.$API.demo.post.post(reqData); if(res.code == 200){ this.$refs.table.refresh() this.$message.success("删除成功") }else{ - this.$alert(res.message, "提示", {type: 'error'}) + await this.$alert(res.message, "提示", {type: 'error'}) } }, //批量删除 @@ -116,14 +132,10 @@ //表格选择后回调事件 selectionChange(selection){ this.selection = selection; - }, - //搜索 - upsearch(){ - }, //根据ID获取树结构 filterTree(id){ - var target = null; + let target = null; function filter(tree){ tree.forEach(item => { if(item.id == id){ @@ -149,5 +161,6 @@ } - diff --git a/src/views/setting/deptMag/save.vue b/src/views/setting/deptMag/save.vue index ef9e29d..aee7f42 100644 --- a/src/views/setting/deptMag/save.vue +++ b/src/views/setting/deptMag/save.vue @@ -7,9 +7,6 @@ - - - diff --git a/src/views/setting/role/index.vue b/src/views/setting/role/index.vue index ebe4e94..40a1e9a 100644 --- a/src/views/setting/role/index.vue +++ b/src/views/setting/role/index.vue @@ -1,43 +1,41 @@ - + - - - 权限设置 + + + 权限设置 - - + + - - - + + + - - - + - + - - 查看 - 编辑 - - - 删除 - - - + + + + + 修改 + 删除 + + + @@ -63,11 +61,16 @@ }, data() { return { + size:'small', + dialog: { save: false, permission: false }, - apiObj: this.$API.system.role.list, + list:{ + apiObj: this.$API.system.role.list, + column:[] + }, selection: [], search: { keyword: null diff --git a/src/views/setting/role/save.vue b/src/views/setting/role/save.vue index 387d6d9..6472841 100644 --- a/src/views/setting/role/save.vue +++ b/src/views/setting/role/save.vue @@ -1,15 +1,12 @@ - + - - - diff --git a/src/views/setting/user/index.vue b/src/views/setting/user/index.vue index c4972b2..6a8d591 100644 --- a/src/views/setting/user/index.vue +++ b/src/views/setting/user/index.vue @@ -1,9 +1,9 @@ - + - + @@ -13,42 +13,42 @@ - - - 分配角色 - 密码重置 + + + 分配角色 + 密码重置 - - + + - - - - - + + + + + - - - - - - - + + + + + + - - 查看 - 编辑 - - - 删除 - - - + + + + + 用户详情 + 编辑用户 + 删除用户 + + + @@ -71,6 +71,7 @@ }, data() { return { + size:'small', dialog: { save: false }, @@ -152,9 +153,9 @@ //加载树数据 async getGroup(){ this.showGrouploading = true; - var res = await this.$API.system.dept.list.get(); + const res = await this.$API.system.dept.active.post(); this.showGrouploading = false; - var allNode ={id: '', label: '所有'} + const allNode = {id: '', label: '所有'}; res.data.unshift(allNode); this.group = res.data; }, @@ -165,13 +166,28 @@ }, //树点击事件 groupClick(data){ - var params = { + const params = { groupId: data.id - } + }; this.$refs.table.reload(params) }, + // 状态 + changeSwitch(val, row) { + row.$switch_yx = true; + setTimeout(async () => { + let params = { + id: row.id, + status: row.active_status, + }; + const res = await this.$API.system.user.status.post(params); + if(res.code !=200){ + row.active_status = !row.active_status; + } + delete row.$switch_yx; + }, 500); + }, //搜索 - upsearch(){ + upSearch(){ this.$refs.table.upData(this.search) }, //本地更新数据 diff --git a/src/views/setting/user/save.vue b/src/views/setting/user/save.vue index f3ed225..531d961 100644 --- a/src/views/setting/user/save.vue +++ b/src/views/setting/user/save.vue @@ -1,6 +1,6 @@ - + diff --git a/src/views/userCenter/index.vue b/src/views/userCenter/index.vue index 931e1c5..b123d0f 100644 --- a/src/views/userCenter/index.vue +++ b/src/views/userCenter/index.vue @@ -11,7 +11,7 @@ - + diff --git a/src/views/userCenter/user/account.vue b/src/views/userCenter/user/account.vue index 31bc1ac..27cc8a3 100644 --- a/src/views/userCenter/user/account.vue +++ b/src/views/userCenter/user/account.vue @@ -27,7 +27,7 @@ - 保存 + 保存 @@ -101,7 +101,7 @@ export default { if (!validate) { return false } - const res = await this.$API.system.user.verifyCode.post({mobile: this.form.mobile}); + const res = await this.$API.user.verifyCode.post({mobile: this.form.mobile}); if (res.code === 200) { this.$message.success('短信已发送至手机号码'); this.disabled = true @@ -119,9 +119,8 @@ export default { save() { this.$refs.form.validate(async (valid) => { if (valid) { - const res = await this.$API.system.user.updateProfile.post(this.form) + const res = await this.$API.user.editUser.post(this.form) if (res.code === 200) { - // this.$TOOL.data.set("USER_INFO", res.data) this.$message.success("操作成功"); await this.getInfo(); } diff --git a/src/views/userCenter/user/bind.vue b/src/views/userCenter/user/bind.vue index acd568a..6c6732b 100644 --- a/src/views/userCenter/user/bind.vue +++ b/src/views/userCenter/user/bind.vue @@ -15,8 +15,8 @@ - 绑定 - 解除 + 绑 定 + 解 除 @@ -32,8 +32,8 @@ - 绑定 - 解除 + 绑 定 + 解 除 安全登录 @@ -59,7 +59,7 @@ 使用Passkey - 添加指纹 + 添加指纹 借助 Passkey,你可以使用自己的指纹、面孔、屏锁设置或实体安全密钥登录你的账号。请仅在你自有的设备上设置 Passkey。 @@ -123,7 +123,7 @@ export default { const userInfo = this.$TOOL.data.get("USER_INFO"); this.userInfo = userInfo; - // this.getUserInfo(); + this.getUserInfo(); // this.getSso(); // 获取新消息 // this.$socketApi.getSock(this.getWsResult); @@ -245,7 +245,6 @@ export default { async createPasskey() { try { const res = await this.$API.system.user.generateRegistration.post(); - const publicKey= { challenge:Uint8Array.from(res.data.challenge), rp:{ diff --git a/src/views/userCenter/user/password.vue b/src/views/userCenter/user/password.vue index 0790313..f5b5aac 100644 --- a/src/views/userCenter/user/password.vue +++ b/src/views/userCenter/user/password.vue @@ -2,10 +2,10 @@ - - + + - + - + 安全程度等级: - + 6-20位字符 只能包含大小写字母、数字和标点符号(除空格) @@ -29,8 +29,8 @@ - - + + 保存密码 @@ -49,21 +49,21 @@ data() { return { form: { - userPassword: "", - newPassword: "", - confirmNewPassword: "" + old_pwd: "", + new_pwd: "", + conf_pwd: "" }, rules: { - userPassword: [ + old_pwd: [ { required: true, message: '请输入当前密码'} ], - newPassword: [ + new_pwd: [ { required: true, message: '请输入新密码'} ], - confirmNewPassword: [ + conf_pwd: [ { required: true, message: '请再次输入新密码'}, {validator: (rule, value, callback) => { - if (value !== this.form.newPassword) { + if (value !== this.form.new_pwd) { callback(new Error('两次输入密码不一致')); }else{ callback(); @@ -75,17 +75,20 @@ }, methods: { save(){ - this.$refs.form.validate(valid => { + this.$refs.form.validate(async valid => { if (valid) { - this.$alert("密码修改成功,是否跳转至登录页使用新密码登录", "修改成功", { - type: 'success', - center: true - }).then(() => { - this.$router.replace({ - path: '/login' - }) - }).catch(() => {}) - }else{ + const res = await this.$API.user.editPass.post(this.form); + if(res.code == 200){ + this.$alert("密码修改成功,是否跳转至登录页使用新密码登录", "修改成功", { + type: 'success', + center: true + }).then(() => { + this.$router.replace({ + path: '/login' + }) + }).catch(() => {}) + } + } else { return false } })