|
@@ -46,6 +46,7 @@
|
|
<span class="user-right">账户设置</span>
|
|
<span class="user-right">账户设置</span>
|
|
</div>
|
|
</div>
|
|
<el-divider></el-divider>
|
|
<el-divider></el-divider>
|
|
|
|
+ <el-button type="text" @click="dialogVisible = true">修改密码</el-button>
|
|
<!-- <ul>-->
|
|
<!-- <ul>-->
|
|
<!-- <li>职位: <span class="user-color">厂长</span></li>-->
|
|
<!-- <li>职位: <span class="user-color">厂长</span></li>-->
|
|
<!-- <li>本次登录: <span class="user-color">厂长</span></li>-->
|
|
<!-- <li>本次登录: <span class="user-color">厂长</span></li>-->
|
|
@@ -91,12 +92,37 @@
|
|
</div>
|
|
</div>
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
|
|
+ <el-dialog
|
|
|
|
+ title="修改密码"
|
|
|
|
+ ref="passForms"
|
|
|
|
+ width="30%"
|
|
|
|
+ :visible.sync="dialogVisible"
|
|
|
|
+ @close="passReset"
|
|
|
|
+ >
|
|
|
|
+ <div>
|
|
|
|
+ <el-form :model="passWordForm" :rules="passWordRules" label-width="80px" ref="passForms">
|
|
|
|
+ <el-form-item label="原密码" prop="password">
|
|
|
|
+ <el-input type="password" v-model="passWordForm.password"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="新密码" prop="onePassWord">
|
|
|
|
+ <el-input type="password" v-model="passWordForm.onePassWord"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="确认密码" prop="checkPass">
|
|
|
|
+ <el-input type="password" v-model="passWordForm.checkPass" autocomplete="off"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
+ </div>
|
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
|
+ <el-button @click="passReset">取 消</el-button>
|
|
|
|
+ <el-button type="primary" @click="onPassSubmit('passForms')">保 存</el-button>
|
|
|
|
+ </span>
|
|
|
|
+ </el-dialog>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import { mapState, mapActions } from 'vuex'
|
|
import { mapState, mapActions } from 'vuex'
|
|
-import { findUpdate, getFarmId } from '../utils/api';
|
|
|
|
|
|
+import {findUpdate, getFarmId, findOne, editPassWord} from '../utils/api';
|
|
import { Chrome } from 'vue-color';
|
|
import { Chrome } from 'vue-color';
|
|
import { Debounce } from "../utils";
|
|
import { Debounce } from "../utils";
|
|
|
|
|
|
@@ -125,8 +151,54 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
|
|
+ let validPassword=(rule,value,callback)=>{
|
|
|
|
+ let reg= /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,16}$/
|
|
|
|
+ if(!reg.test(value)){callback(new Error('密码必须是字母+数字组合6-16位密码'))
|
|
|
|
+ }else{
|
|
|
|
+ callback()
|
|
|
|
+ }
|
|
|
|
+ };
|
|
|
|
+ let validatePass2 = (rule, value, callback) => {
|
|
|
|
+ if (value === '') {
|
|
|
|
+ callback(new Error('请再次输入密码'));
|
|
|
|
+ } else if (value !== this.passWordForm.onePassWord) {
|
|
|
|
+ callback(new Error('两次输入密码不一致!'));
|
|
|
|
+ } else {
|
|
|
|
+ callback();
|
|
|
|
+ }
|
|
|
|
+ };
|
|
|
|
+ let validatePass3 = (rule, value, callback) => {
|
|
|
|
+ let password = localStorage.getItem('password')
|
|
|
|
+ if(value === '') {
|
|
|
|
+ callback(new Error('请输入原密码'));
|
|
|
|
+ } else if (value !== password) {
|
|
|
|
+ callback(new Error('原密码错误!'));
|
|
|
|
+ } else {
|
|
|
|
+ callback();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
return {
|
|
return {
|
|
getFarmList: [],
|
|
getFarmList: [],
|
|
|
|
+ dialogVisible: false,
|
|
|
|
+ passWordForm: {
|
|
|
|
+ account: '',
|
|
|
|
+ password: '',
|
|
|
|
+ onePassWord: '',
|
|
|
|
+ checkPass: ''
|
|
|
|
+ },
|
|
|
|
+ passWordRules: {
|
|
|
|
+ password: [
|
|
|
|
+ { validator: validatePass3, trigger: 'blur' }
|
|
|
|
+ ],
|
|
|
|
+ onePassWord: [
|
|
|
|
+ { validator: validPassword, trigger: 'blur' }
|
|
|
|
+ ],
|
|
|
|
+ checkPass: [
|
|
|
|
+ { validator: validatePass2, trigger: 'blur' }
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ account: '',
|
|
|
|
+ password: '',
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
@@ -138,7 +210,9 @@ export default {
|
|
color: data.hex
|
|
color: data.hex
|
|
}
|
|
}
|
|
findUpdate(params).then(res => {
|
|
findUpdate(params).then(res => {
|
|
- console.log(res)
|
|
|
|
|
|
+ if(res.code === 10000) {
|
|
|
|
+ console.log(res)
|
|
|
|
+ }
|
|
})
|
|
})
|
|
}),
|
|
}),
|
|
changeMode(val) {
|
|
changeMode(val) {
|
|
@@ -156,16 +230,26 @@ export default {
|
|
localStorage.removeItem('accessToken');
|
|
localStorage.removeItem('accessToken');
|
|
localStorage.removeItem('UserId');
|
|
localStorage.removeItem('UserId');
|
|
localStorage.removeItem('lastFarmId')
|
|
localStorage.removeItem('lastFarmId')
|
|
|
|
+ localStorage.removeItem('password')
|
|
this.$router.replace('/login');
|
|
this.$router.replace('/login');
|
|
},
|
|
},
|
|
// 拿到farmid
|
|
// 拿到farmid
|
|
init() {
|
|
init() {
|
|
- getFarmId().then(res => {
|
|
|
|
- if(res.code === 10000) {
|
|
|
|
|
|
+ getFarmId({}).then(res => {
|
|
|
|
+ console.log(res)
|
|
|
|
+ if(res.code == 10000) {
|
|
this.setFarmIdAsync(res.data);
|
|
this.setFarmIdAsync(res.data);
|
|
localStorage.setItem('lastFarmId', res.data);
|
|
localStorage.setItem('lastFarmId', res.data);
|
|
}
|
|
}
|
|
})
|
|
})
|
|
|
|
+ let params = {
|
|
|
|
+ id: localStorage.getItem('UserId'),
|
|
|
|
+ }
|
|
|
|
+ findOne(params).then(res => {
|
|
|
|
+ if(res.code == 10000) {
|
|
|
|
+ localStorage.setItem('password', res.data.password);
|
|
|
|
+ }
|
|
|
|
+ })
|
|
},
|
|
},
|
|
// 选择牧场
|
|
// 选择牧场
|
|
onChange(val) {
|
|
onChange(val) {
|
|
@@ -175,18 +259,51 @@ export default {
|
|
}
|
|
}
|
|
localStorage.setItem('lastFarmId', val)
|
|
localStorage.setItem('lastFarmId', val)
|
|
findUpdate(params).then(res => {
|
|
findUpdate(params).then(res => {
|
|
- console.log(res)
|
|
|
|
|
|
+ console.log(res.data)
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ location.reload();
|
|
|
|
+ }, 1000)
|
|
})
|
|
})
|
|
this.setFarmIdAsync(val);
|
|
this.setFarmIdAsync(val);
|
|
- setTimeout(() => {
|
|
|
|
- location.reload();
|
|
|
|
- }, 100)
|
|
|
|
},
|
|
},
|
|
|
|
+ passReset() {
|
|
|
|
+ this.dialogVisible = false;
|
|
|
|
+ this.passWordForm = {
|
|
|
|
+ account: '',
|
|
|
|
+ password: '',
|
|
|
|
+ onePassWord: '',
|
|
|
|
+ checkPass: '',
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ onPassSubmit(ElForm) {
|
|
|
|
+ this.$refs[ElForm].validate((valid) => {
|
|
|
|
+ if(valid) {
|
|
|
|
+ let params = {
|
|
|
|
+ account: localStorage.getItem('UserName'),
|
|
|
|
+ password: this.passWordForm.password,
|
|
|
|
+ newPassword: this.passWordForm.onePassWord
|
|
|
|
+ }
|
|
|
|
+ editPassWord(params).then(res => {
|
|
|
|
+ if(res.code === 10000) {
|
|
|
|
+ this.$message.success('修改密码成功!将重新登录')
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ this.logout()
|
|
|
|
+ }, 1000);
|
|
|
|
+ } else {
|
|
|
|
+ this.$message.error('修改密码失败!')
|
|
|
|
+ }
|
|
|
|
+ }).finally(() => {
|
|
|
|
+ this.passReset()
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ created() {
|
|
|
|
+ this.GetFarm()
|
|
},
|
|
},
|
|
mounted() {
|
|
mounted() {
|
|
this.init();
|
|
this.init();
|
|
- this.GetFarm()
|
|
|
|
- console.log(this.farmId)
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|