whx 1 mēnesi atpakaļ
vecāks
revīzija
ea6e88c264
19 mainītis faili ar 225 papildinājumiem un 102 dzēšanām
  1. 1 1
      virgo.wzfrontend/src/main/resources/static/workark/index.html
  2. 0 0
      virgo.wzfrontend/src/main/resources/static/workark/static/css/1031.aee49f26.css
  3. 0 1
      virgo.wzfrontend/src/main/resources/static/workark/static/css/115.6edf3502.css
  4. 1 0
      virgo.wzfrontend/src/main/resources/static/workark/static/css/1588.6cccd549.css
  5. 0 1
      virgo.wzfrontend/src/main/resources/static/workark/static/css/6414.3cc2ebe2.css
  6. 1 0
      virgo.wzfrontend/src/main/resources/static/workark/static/css/8727.3e6c8fd7.css
  7. 1 1
      virgo.wzfrontend/src/main/resources/static/workark/static/js/3317.e3bffd25.js
  8. 0 1
      virgo.wzfrontend/src/main/resources/static/workark/static/js/115.de76c75a.js
  9. 1 0
      virgo.wzfrontend/src/main/resources/static/workark/static/js/1588.8dcdb1e2.js
  10. 1 1
      virgo.wzfrontend/src/main/resources/static/workark/static/js/2734.87069d4e.js
  11. 1 0
      virgo.wzfrontend/src/main/resources/static/workark/static/js/437.a8089cbb.js
  12. 0 1
      virgo.wzfrontend/src/main/resources/static/workark/static/js/6414.85bf5ada.js
  13. 1 0
      virgo.wzfrontend/src/main/resources/static/workark/static/js/8727.07eed077.js
  14. 1 1
      virgo.wzfrontend/src/main/resources/static/workark/static/js/app.0d333752.js
  15. 4 1
      virgo.wzfrontend/workark/src/axios/index.js
  16. 102 0
      virgo.wzfrontend/workark/src/layout/components/changePassword.vue
  17. 90 86
      virgo.wzfrontend/workark/src/layout/components/login.vue
  18. 18 2
      virgo.wzfrontend/workark/src/layout/components/topNav.vue
  19. 2 5
      virgo.wzfrontend/workark/src/layout/components/userDetail.vue

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/workark/index.html


virgo.wzfrontend/src/main/resources/static/workark/static/css/3317.aee49f26.css → virgo.wzfrontend/src/main/resources/static/workark/static/css/1031.aee49f26.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/workark/static/css/115.6edf3502.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/workark/static/css/1588.6cccd549.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/workark/static/css/6414.3cc2ebe2.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/workark/static/css/8727.3e6c8fd7.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/workark/static/js/3317.e3bffd25.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/workark/static/js/115.de76c75a.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/workark/static/js/1588.8dcdb1e2.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/workark/static/js/2734.87069d4e.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/workark/static/js/437.a8089cbb.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/workark/static/js/6414.85bf5ada.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/workark/static/js/8727.07eed077.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/workark/static/js/app.0d333752.js


+ 4 - 1
virgo.wzfrontend/workark/src/axios/index.js

@@ -14,7 +14,10 @@ const service = axios.create({
 const tip = (msg, type) => {
 	let types = type || 'warning';
 	if (msg == 'RET_INVALID_PASSWORD') {
-		msg = '账号验证码有误'
+		msg = '账号密码有误'
+	}
+	if (msg == 'RET_INVALID_CODE') {
+		msg = '短信验证码有误'
 	}
 	Message({
 		message: msg,

+ 102 - 0
virgo.wzfrontend/workark/src/layout/components/changePassword.vue

@@ -0,0 +1,102 @@
+<template>
+	<div class="hui-flex hui-dialog">
+		<div class="hui-flex-box hui-dialog-content">
+			<el-form :model="form" :rules="changePasswordRulers" ref="form" label-position="top">
+				<el-form-item label="密码" prop="pass" class="hui-textarea">
+					<el-input type="password" v-model="form.pass" autocomplete="off"></el-input>
+				</el-form-item>
+				<el-form-item label="确认密码" prop="checkPass" class="hui-textarea">
+					<el-input type="password" v-model="form.checkPass" autocomplete="off"></el-input>
+				</el-form-item>
+			</el-form>
+		</div>
+		<div class="hui-dialog-submit">
+			<el-button size="small" @click="$emit('callback')">取 消</el-button>
+			<el-button size="small" type="primary" @click="submit" :loading="loading">保 存</el-button>
+		</div>
+	</div>
+</template>
+
+<script>
+	import {
+		updateUserDetails
+	} from '@/api/loginRegister'
+	import {
+		removeToken
+	} from '@/uitls/auth';
+	export default {
+		data() {
+			return {
+				form: { //修改密码表单
+					oldPass: '',
+					pass: '',
+					checkPass: ''
+				},
+				loading: false,
+				changePasswordRulers: {
+					oldPass: [{
+						required: true,
+						message: '请输入原密码',
+						trigger: 'blur'
+					}],
+					pass: [{
+						required: true,
+						message: '请输入密码',
+						trigger: 'blur'
+					}, {
+						min: 6,
+						max: 18,
+						message: '密码长度在6-18位之间',
+					}]
+				}, //表单验证
+				checkPassFn: (rule, value, callback) => { //再次输入密码验证规则
+					if (value !== this.form.pass) {
+						callback(new Error('两次输入密码不一致!'));
+					} else {
+						callback();
+					}
+				}
+			}
+		},
+		mounted() {
+			this.changePasswordRulers['checkPass'] = [{
+				required: true,
+				message: '请输入确认密码',
+				trigger: 'blur'
+			}, {
+				validator: this.checkPassFn,
+				trigger: 'blur'
+			}, {
+				validator: this.checkPassFn,
+				trigger: 'change'
+			}]
+		},
+		methods: {
+			submit(fn) {
+				this.$refs.form.validate((valid) => {
+					if (valid) {
+						this.loading = true;
+						let data = {
+							id: this.$store.getters.user.userId,
+							pwd: this.form.pass
+						}
+						updateUserDetails(data).then(res => {
+							this.loading = false;
+							if (res.state) {
+								this.$message.success('修改成功,请重新登录');
+								removeToken();
+								this.$chat.disConnect();
+								this.$store.dispatch('app/resetState');
+								window.location.replace(window.location.origin);
+							}
+						})
+					} else {
+						return false;
+					}
+				});
+			},
+		}
+	}
+</script>
+
+<style lang="scss"></style>

+ 90 - 86
virgo.wzfrontend/workark/src/layout/components/login.vue

@@ -4,16 +4,16 @@
 			<div class="close-icon-box">
 				<i class="el-icon-circle-close close-icon" @click="$emit('callback')"></i>
 			</div>
-			<div class="login-form">
-				<div class="login-tab" :class="{
-						active1:nowTab.id === 1,
-						active2:nowTab.id === 2
-					}">
-					<div class="tab-item" :class="{
-						active:nowTab.id === tab.id
-					}" v-for="(tab, index) in tabs" :key="index" @click="nowTab = tab">
-						{{ tab.name }}
-					</div>
+			<div class="login-form">
+				<div class="login-tab" :class="{
+						active1:nowTab.id === 1,
+						active2:nowTab.id === 2
+					}">
+					<div class="tab-item" :class="{
+						active:nowTab.id === tab.id
+					}" v-for="(tab, index) in tabs" :key="index" @click="nowTab = tab">
+						{{ tab.name }}
+					</div>
 				</div>
 				<el-form :model="loginForm" :rules="loginRules" status-icon ref="loginForm" label-position="left">
 					<el-form-item prop="phone">
@@ -21,26 +21,27 @@
 							placeholder="手机号" maxlength="11">
 						</el-input>
 					</el-form-item>
-					<el-form-item prop="code" class="image-item" v-if="nowTab.id === 1">
-						<el-input type="text" prefix-icon="iconfont huifont-tuxingyanzhengma" v-model="loginForm.code"
-							placeholder="图片验证码" maxlength="4"></el-input>
-						<img v-if="codeImg" :src="codeImg" alt="图片验证码" class="code-image" @click="imgCodeFunc">
-					</el-form-item>
-					<el-form-item prop="phoneCode" class="phone-code" v-if="nowTab.id === 1">
-						<el-input type="number" prefix-icon="iconfont huifont-duanxinyanzhengma"
-							v-model="loginForm.phoneCode" placeholder="短信验证码"
-							oninput="if(value.length > 6) value=value.slice(0, 6)">
-						</el-input>
-						<div class="get-code-btn">
-							<el-button type="primary" size="samll" @click="getPhoneCode" :disabled="codeName !== '获取验证码'">
-								{{codeName}}
-							</el-button>
-						</div>
-					</el-form-item>
-					<el-form-item prop="password" v-if="nowTab.id === 2">
-						<el-input type="password" prefix-icon="iconfont huifont-mima" v-model="loginForm.password"
-							:show-password="true" placeholder="请输入密码">
-						</el-input>
+					<el-form-item prop="code" class="image-item" v-if="nowTab.id === 1">
+						<el-input type="text" prefix-icon="iconfont huifont-tuxingyanzhengma" v-model="loginForm.code"
+							placeholder="图片验证码" maxlength="4"></el-input>
+						<img v-if="codeImg" :src="codeImg" alt="图片验证码" class="code-image" @click="imgCodeFunc">
+					</el-form-item>
+					<el-form-item prop="phoneCode" class="phone-code" v-if="nowTab.id === 1">
+						<el-input type="number" prefix-icon="iconfont huifont-duanxinyanzhengma"
+							v-model="loginForm.phoneCode" placeholder="短信验证码"
+							oninput="if(value.length > 6) value=value.slice(0, 6)">
+						</el-input>
+						<div class="get-code-btn">
+							<el-button type="primary" size="samll" @click="getPhoneCode"
+								:disabled="codeName !== '获取验证码'">
+								{{codeName}}
+							</el-button>
+						</div>
+					</el-form-item>
+					<el-form-item prop="password" v-if="nowTab.id === 2">
+						<el-input type="password" prefix-icon="iconfont huifont-mima" v-model="loginForm.password"
+							:show-password="true" placeholder="请输入密码">
+						</el-input>
 					</el-form-item>
 				</el-form>
 				<el-button class="submit" type="primary" @click="loginSubmit" :loading="loginLoading">登录</el-button>
@@ -99,17 +100,17 @@
 						message: '请输入短信验证码',
 						trigger: 'blur'
 					}]
-				},
-				tabs: [{
-					id: 1,
-					name: '验证码登录'
-				}, {
-					id: 2,
-					name: '账号密码登录'
-				}],
-				nowTab: {
-					id: 1,
-					name: '验证码登录'
+				},
+				tabs: [{
+					id: 1,
+					name: '验证码登录'
+				}, {
+					id: 2,
+					name: '账号密码登录'
+				}],
+				nowTab: {
+					id: 1,
+					name: '验证码登录'
 				}
 			};
 		},
@@ -168,10 +169,13 @@
 				})
 			},
 			loginFunc() {
-				let postData = {
+				let postData = this.nowTab.id === 1 ? {
 					phone: this.loginForm.phone,
 					phoneCode: this.loginForm.phoneCode
-				}
+				} : {
+					phone: this.loginForm.phone,
+					password: this.loginForm.password
+				};
 				login(postData).then(res => {
 					if (res.state) {
 						setToken(res.data.token);
@@ -198,7 +202,7 @@
 					}
 				})
 			},
-			successLogin(url) {
+			successLogin(url) {
 				this.$chat.connect();
 				this.loginLoading = false;
 				this.$emit('callback', 'init')
@@ -208,48 +212,48 @@
 	};
 </script>
 
-<style lang="scss" scoped>
-	.login-tab {
-		display: flex;
-		border: 1px solid #bebebe;
-		margin-bottom: 28px;
-		height: 36px;
-		border-radius: 4px;
-		align-items: center;
-		position: relative;
-	
-		&:before {
-			content: '';
-			position: absolute;
-			background: #bebebe;
-			width: 159px;
-			height: 28px;
-			border-radius: 4px;
-			z-index: 8;
-			transition: left 0.3s;
-		}
-	
-		&.active1:before {
-			left: 4px;
-		}
-	
-		&.active2:before {
-			left: 167px;
-		}
-	}
-	
-	.tab-item {
-		flex: 1;
-		text-align: center;
-		z-index: 9;
-		cursor: pointer;
-		transition: color 0.3s;
-	
-		&.active {
-			color: #fff;
-		}
-	}
-	
+<style lang="scss" scoped>
+	.login-tab {
+		display: flex;
+		border: 1px solid #bebebe;
+		margin-bottom: 28px;
+		height: 36px;
+		border-radius: 4px;
+		align-items: center;
+		position: relative;
+
+		&:before {
+			content: '';
+			position: absolute;
+			background: #bebebe;
+			width: 159px;
+			height: 28px;
+			border-radius: 4px;
+			z-index: 8;
+			transition: left 0.3s;
+		}
+
+		&.active1:before {
+			left: 4px;
+		}
+
+		&.active2:before {
+			left: 167px;
+		}
+	}
+
+	.tab-item {
+		flex: 1;
+		text-align: center;
+		z-index: 9;
+		cursor: pointer;
+		transition: color 0.3s;
+
+		&.active {
+			color: #fff;
+		}
+	}
+
 	.website-login-box {
 		width: 100%;
 		height: 100%;

+ 18 - 2
virgo.wzfrontend/workark/src/layout/components/topNav.vue

@@ -31,6 +31,10 @@
 						<i class="iconfont huifont-tubiaozhizuomoban-1"></i>
 						<span>个人信息</span>
 					</el-dropdown-item>
+					<el-dropdown-item command="changePassword">
+						<i class="iconfont huifont-tubiaozhizuomoban-4"></i>
+						<span>修改密码</span>
+					</el-dropdown-item>
 					<el-dropdown-item command="conpon">
 						<i class="iconfont huifont-tubiaozhizuomoban-2"></i>
 						<span>优惠券</span>
@@ -46,6 +50,11 @@
 			:append-to-body="true">
 			<user-detail v-if="drawer"></user-detail>
 		</el-drawer>
+		<el-dialog :close-on-click-modal="false" title="修改密码" :visible.sync="visible" width="900px"
+			:append-to-body="true">
+			<change-password v-if="visible"></change-password>
+		</el-dialog>
+
 	</div>
 </template>
 
@@ -60,13 +69,15 @@
 		mapGetters
 	} from 'vuex';
 	const userDetail = () => import('./userDetail');
+	const changePassword = () => import('./changePassword');
 	export default {
 		data() {
 			return {
 				users: {},
 				userDropdown: false,
 				systemCountStatus: false,
-				drawer: false
+				drawer: false,
+				visible: false
 			}
 		},
 		mounted() {
@@ -78,6 +89,7 @@
 				this.users = this.$store.getters.user;
 			},
 			initMessage() {
+				if (!this.$store.getters.user.userId) return;
 				getMessageTest(this.$store.getters.user.userId).then(res => {
 					if (res.state) {
 						let num = 0;
@@ -93,6 +105,9 @@
 					case 'detail':
 						this.drawer = true;
 						break;
+					case 'changePassword':
+						this.visible = true;
+						break;
 					case 'logout':
 						this.logout();
 						break;
@@ -128,7 +143,8 @@
 			...mapGetters(['user', 'chatList', 'reloadMessage'])
 		},
 		components: {
-			userDetail
+			userDetail,
+			changePassword
 		}
 	}
 </script>

+ 2 - 5
virgo.wzfrontend/workark/src/layout/components/userDetail.vue

@@ -33,13 +33,10 @@
 						<div class="hui-detail-item">
 							<div class="hui-detail-label">签字</div>
 							<div class="hui-detail-value">
-								<div class="sign-image">
-									<img v-if="user.rsonalSignature" :src="user.rsonalSignature" alt="sign.png"
-										@click="update('rsonalSignature')" />
+								<div class="sign-image"	@click="update('rsonalSignature')">
+									<img v-if="user.rsonalSignature" :src="user.rsonalSignature" alt="sign.png"/>
 									<i class="el-icon-camera-solid"></i>
 								</div>
-
-
 							</div>
 						</div>
 					</div>