diff --git a/api/index.js b/api/index.js index 1fe58f6..c77b59c 100644 --- a/api/index.js +++ b/api/index.js @@ -25,6 +25,7 @@ export const setFeedbackUpload = (params) => upload('/app/feedback/upload', para export const setFeedbackAdd = (params) => post('/app/feedback/add', params) //反馈问题提交 export const getVersion = (params) => post('/app/versionmanager/getVersion', params) // 版本更新 export const setUpdatePassword = (params) => post('/app/user/editUserPasswordByUserId', params) //修改密码 +export const changePasswordFirstLogin = (params) => post("/sys/changePasswordFirstLogin", params) // 首次登录修改密码 export const getUserInfo = (params) => post('/app/user/getDetailByUserIdAndCorpInfoId', params) //用户信息 export const setUserInfo = (params) => post('/app/user/edit', params) //修改用户信息 export const setEntry = (params) => post('/app/user/entry', params) //用户入职 diff --git a/package-lock.json b/package-lock.json index 36ed9ae..2743e2d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { + "crypto-js": "^4.2.0", "uview-ui": "^2.0.36", "vue": "^2.7.14", "vuex-persistedstate": "^3.2.1" @@ -55,6 +56,12 @@ "source-map": "^0.6.1" } }, + "node_modules/crypto-js": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==", + "license": "MIT" + }, "node_modules/csstype": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", @@ -218,6 +225,11 @@ "source-map": "^0.6.1" } }, + "crypto-js": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" + }, "csstype": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", diff --git a/pages.json b/pages.json index f5fe904..4ee5683 100644 --- a/pages.json +++ b/pages.json @@ -20,6 +20,12 @@ "navigationStyle": "custom" } }, + { + "path": "pages/login/change-password/change-password", + "style": { + "navigationBarTitleText": "首次登录修改密码" + } + }, { "path": "pages/login/register", "style": { diff --git a/pages/login/change-password/change-password.vue b/pages/login/change-password/change-password.vue new file mode 100644 index 0000000..77bb4b7 --- /dev/null +++ b/pages/login/change-password/change-password.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/pages/login/login.vue b/pages/login/login.vue index 4ddc6f4..f219b58 100644 --- a/pages/login/login.vue +++ b/pages/login/login.vue @@ -76,6 +76,14 @@ export default { const keydataVal = jsencrypt.encrypt('qdkjchina' + this.form.userName + ',qd,' + this.form.userPwd) let resData = await submitLogin({'KEYDATA': keydataVal}); // console.log(resData) + if (resData.firstLogin === 1) { + await this.$store.dispatch('setUserInfo', resData); + uni.$u.route({ + url: '/pages/login/change-password/change-password', + type: 'reLaunch' + }); + return; + } if (resData.PHOTO != '') { resData.PHOTO = this.$filePath + resData.PHOTO } diff --git a/utils/aes_secret.js b/utils/aes_secret.js index 3579191..ffe9186 100644 --- a/utils/aes_secret.js +++ b/utils/aes_secret.js @@ -35,7 +35,7 @@ function decryptAes(params) { const key = CryptoJS.enc.Utf8.parse("fa4e0fae59534676"); // 16 bytes key for AES - const bytes = CryptoJS.AES.decrypt(params.info, key, { + const bytes = CryptoJS.AES.decrypt(params.encryptData, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7, });