| 1 |
- {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\notify\\smsConfig\\components\\forgetPassword.vue?vue&type=style&index=0&id=32f2a6eb&scoped=true&lang=scss","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\notify\\smsConfig\\components\\forgetPassword.vue","mtime":1761614939042},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\css-loader\\index.js","mtime":1761614929364},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":1761614937403},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\postcss-loader\\src\\index.js","mtime":1761614935133},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\sass-loader\\dist\\cjs.js","mtime":1761614936391},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1761614937402}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQoubWF4SW5wdCB7DQogIG1heC13aWR0aDogNDAwcHg7DQogIG1hcmdpbi1sZWZ0OiBhdXRvOw0KICBtYXJnaW4tcmlnaHQ6IGF1dG87DQp9DQouY29kZSB7DQogIGRpc3BsYXk6IGZsZXg7DQogIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KfQ0KLml2dS1zdGVwcy1pdGVtOmxhc3QtY2hpbGQgew0KICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDsNCn0NCg=="},{"version":3,"sources":["forgetPassword.vue"],"names":[],"mappings":";AAqQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"forgetPassword.vue","sourceRoot":"src/pages/notify/smsConfig/components","sourcesContent":["<template>\r\n <el-row justify=\"center\" align=\"middle\">\r\n <el-col :span=\"20\" style=\"margin-top: 70px\" class=\"mb50\">\r\n <steps :stepList=\"stepList\" :isActive=\"current\"></steps>\r\n </el-col>\r\n <el-col :span=\"24\">\r\n <div class=\"index_from page-account-container\">\r\n <el-form ref=\"formInline\" :model=\"formInline\" :rules=\"ruleInline\" @submit.native.prevent>\r\n <template v-if=\"current === 0\">\r\n <el-form-item prop=\"phone\" class=\"maxInpt\">\r\n <el-input\r\n type=\"text\"\r\n v-model=\"formInline.phone\"\r\n prefix=\"ios-contact-outline\"\r\n placeholder=\"请输入手机号\"\r\n size=\"large\"\r\n />\r\n </el-form-item>\r\n <el-form-item prop=\"verify_code\" class=\"maxInpt\">\r\n <div class=\"code\">\r\n <el-input\r\n type=\"text\"\r\n v-model=\"formInline.verify_code\"\r\n prefix=\"ios-keypad-outline\"\r\n placeholder=\"请输入验证码\"\r\n size=\"large\"\r\n />\r\n <el-button :disabled=\"!this.canClick\" v-db-click @click=\"cutDown\" size=\"large\">{{ cutNUm }}</el-button>\r\n </div>\r\n </el-form-item>\r\n </template>\r\n <template v-if=\"current === 1\">\r\n <el-form-item prop=\"password\" class=\"maxInpt\">\r\n <el-input\r\n type=\"password\"\r\n v-model=\"formInline.password\"\r\n prefix=\"ios-lock-outline\"\r\n placeholder=\"请输入新密码\"\r\n size=\"large\"\r\n />\r\n </el-form-item>\r\n <el-form-item prop=\"checkPass\" class=\"maxInpt\">\r\n <el-input\r\n type=\"password\"\r\n v-model=\"formInline.checkPass\"\r\n prefix=\"ios-lock-outline\"\r\n placeholder=\"请验证新密码\"\r\n size=\"large\"\r\n />\r\n </el-form-item>\r\n </template>\r\n <template v-if=\"current === 2\">\r\n <el-form-item prop=\"phone\" class=\"maxInpt\">\r\n <el-input\r\n type=\"text\"\r\n v-model=\"formInline.phone\"\r\n prefix=\"ios-contact-outline\"\r\n placeholder=\"请输入手机号\"\r\n />\r\n </el-form-item>\r\n <el-form-item prop=\"password\" class=\"maxInpt\">\r\n <el-input\r\n type=\"password\"\r\n v-model=\"formInline.password\"\r\n prefix=\"ios-lock-outline\"\r\n placeholder=\"请输入密码\"\r\n />\r\n </el-form-item>\r\n </template>\r\n <el-form-item class=\"maxInpt\">\r\n <el-button\r\n v-if=\"current === 0\"\r\n type=\"primary\"\r\n long\r\n size=\"large\"\r\n v-db-click\r\n @click=\"handleSubmit1('formInline', current)\"\r\n class=\"mb20\"\r\n >下一步</el-button\r\n >\r\n <el-button\r\n v-if=\"current === 1\"\r\n type=\"primary\"\r\n long\r\n size=\"large\"\r\n v-db-click\r\n @click=\"handleSubmit2('formInline', current)\"\r\n class=\"mb20\"\r\n >提交</el-button\r\n >\r\n <el-button\r\n v-if=\"current === 2\"\r\n type=\"primary\"\r\n long\r\n size=\"large\"\r\n v-db-click\r\n @click=\"handleSubmit('formInline', current)\"\r\n class=\"mb20\"\r\n >登录</el-button\r\n >\r\n <el-button long size=\"large\" v-db-click @click=\"returns('formInline')\" class=\"btn\">返回 </el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n </el-col>\r\n </el-row>\r\n</template>\r\n\r\n<script>\r\nimport { captchaApi, configApi, serveModifyApi, checkCaptchaApi } from '@/api/setting';\r\n\r\nimport steps from '@/components/steps/index';\r\n\r\nexport default {\r\n name: 'forgetPassword',\r\n components: { steps },\r\n data() {\r\n const validatePhone = (rule, value, callback) => {\r\n if (!value) {\r\n return callback(new Error('请填写手机号'));\r\n } else if (!/^1[3456789]\\d{9}$/.test(value)) {\r\n callback(new Error('手机号格式不正确!'));\r\n } else {\r\n callback();\r\n }\r\n };\r\n var validatePass = (rule, value, callback) => {\r\n if (value === '') {\r\n callback(new Error('请输入密码'));\r\n } else {\r\n if (this.current === 1) {\r\n if (this.formInline.checkPass !== '') {\r\n this.$refs.formInline.validateField('checkPass');\r\n }\r\n callback();\r\n } else {\r\n if (value !== this.formInline.checkPass) {\r\n callback(new Error('请输入正确密码!'));\r\n }\r\n callback();\r\n }\r\n }\r\n };\r\n var validatePass2 = (rule, value, callback) => {\r\n if (value === '') {\r\n callback(new Error('请再次输入密码'));\r\n } else if (value !== this.formInline.password) {\r\n callback(new Error('两次输入密码不一致!'));\r\n } else {\r\n callback();\r\n }\r\n };\r\n return {\r\n cutNUm: '获取验证码',\r\n canClick: true,\r\n current: 0,\r\n formInline: {\r\n account: '',\r\n phone: '',\r\n verify_code: '',\r\n password: '',\r\n checkPass: '',\r\n },\r\n ruleInline: {\r\n phone: [{ required: true, validator: validatePhone, trigger: 'blur' }],\r\n verify_code: [{ required: true, message: '请输入验证码', trigger: 'blur' }],\r\n password: [{ validator: validatePass, trigger: 'blur' }],\r\n checkPass: [{ validator: validatePass2, trigger: 'blur' }],\r\n },\r\n stepList: ['验证账号信息', '修改账户密码', '登录'],\r\n };\r\n },\r\n methods: {\r\n // 短信验证码\r\n cutDown() {\r\n if (this.formInline.phone) {\r\n if (!this.canClick) return;\r\n this.canClick = false;\r\n this.cutNUm = 60;\r\n let data = {\r\n phone: this.formInline.phone,\r\n };\r\n captchaApi(data)\r\n .then(async (res) => {\r\n this.$message.success(res.msg);\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n let time = setInterval(() => {\r\n this.cutNUm--;\r\n if (this.cutNUm === 0) {\r\n this.cutNUm = '获取验证码';\r\n this.canClick = true;\r\n clearInterval(time);\r\n }\r\n }, 1000);\r\n } else {\r\n this.$message.warning('请填写手机号!');\r\n }\r\n },\r\n handleSubmit1(name, current) {\r\n this.$refs[name].validate((valid) => {\r\n if (valid) {\r\n checkCaptchaApi(this.formInline)\r\n .then(async (res) => {\r\n this.current = 1;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n } else {\r\n return false;\r\n }\r\n });\r\n },\r\n handleSubmit2(name) {\r\n this.formInline.account = this.formInline.phone;\r\n this.$refs[name].validate((valid) => {\r\n if (valid) {\r\n serveModifyApi(this.formInline)\r\n .then(async (res) => {\r\n this.$message.success(res.msg);\r\n this.current = 2;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n } else {\r\n return false;\r\n }\r\n });\r\n },\r\n //登录\r\n handleSubmit(name) {\r\n this.$refs[name].validate((valid) => {\r\n if (valid) {\r\n configApi({\r\n account: this.formInline.account,\r\n password: this.formInline.password,\r\n })\r\n .then(async (res) => {\r\n this.$message.success('登录成功!');\r\n this.$emit('on-Login');\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n } else {\r\n return false;\r\n }\r\n });\r\n },\r\n returns() {\r\n this.current === 0 ? this.$emit('goback') : (this.current = 0);\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n.maxInpt {\r\n max-width: 400px;\r\n margin-left: auto;\r\n margin-right: auto;\r\n}\r\n.code {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.ivu-steps-item:last-child {\r\n width: unset !important;\r\n}\r\n</style>\r\n"]}]}
|