From 69a1b3bf45738f048361ee4ccb6bdc64fce35720 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 12 三月 2025 11:31:46 +0800
Subject: [PATCH] 更新

---
 h5/pages/driver/forgetPsd.vue |  240 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 240 insertions(+), 0 deletions(-)

diff --git a/h5/pages/driver/forgetPsd.vue b/h5/pages/driver/forgetPsd.vue
new file mode 100644
index 0000000..acb83b1
--- /dev/null
+++ b/h5/pages/driver/forgetPsd.vue
@@ -0,0 +1,240 @@
+<template>
+  <view class="login">
+    <image class="login_bg" src="@/static/login_bg@2x.png" />
+    <image class="login_logo" src="@/static/logo@2x.png" mode="widthFix" />
+    <view class="login_title">瀹夋嘲鐗╂祦鏅烘収鍥尯</view>
+    <view class="login_title">鐗╂祦杞﹀徃鏈�</view>
+    <view class="login_list">
+      <view class="login_list_item">
+        <image src="@/static/login_ic_phone@2x.png" mode="widthFix" />
+        <input v-model="form.phone"  type="tel" :maxlength="11" placeholder="璇疯緭鍏ユ墜鏈哄彿" />
+      </view>
+      <view class="login_list_item">
+        <image src="@/static/ic_captcha.png" mode="widthFix"></image>
+        <input
+          v-model="form.validCode"
+          placeholder="璇疯緭鍏ラ獙璇佺爜"
+           type="number"
+        />
+        <text class="captcha" v-if="countDown == 0" @click="initCaptcha"
+          >鑾峰彇楠岃瘉鐮�</text
+        >
+        <text class="placeholder9" v-else>{{ countDown }}</text>
+      </view>
+      <view class="login_list_item">
+        <image src="@/static/login_ic_password@2x.png" mode="widthFix" />
+        <input
+          v-model="form.password"
+          type="password"
+          placeholder="璇疯緭鍏ユ柊瀵嗙爜"
+        />
+      </view>
+      <view class="login_list_item">
+        <image src="@/static/login_ic_password@2x.png" mode="widthFix" />
+        <input
+          v-model="form.newPassword"
+          type="password"
+          placeholder="璇峰啀娆¤緭鍏ユ柊瀵嗙爜"
+        />
+      </view>
+    </view>
+    <view class="login_btn">
+      <view class="login_btn_n" @click="onLogin">纭淇敼</view>
+    </view>
+  </view>
+</template>
+
+<script>
+import { resetPassword, sendSms } from '@/api'
+export default {
+  data() {
+    return {
+      form: {
+      },
+      countDown: 0
+    }
+  },
+
+  onLoad(option) {
+		if(option.phone){
+			this.$set(this.form, 'phone', option.phone || '')
+		}
+  },
+
+  methods: {
+    dealChange(e) {
+      console.log(e)
+    },
+    initCaptcha() {
+      if (!this.form.phone) return uni.showToast({
+        title: '鎵嬫満鍙蜂笉鑳戒负绌�',
+        icon: 'none'
+      })
+      sendSms({ phone: this.form.phone }).then(res => {
+        this.countDown = 60
+        setInterval(() => {
+          if (this.countDown == 0) return
+          this.countDown--
+        }, 1000)
+      })
+    },
+
+    onLogin() {
+      const { form } = this
+      if (!form.phone) return uni.showToast({
+        title: '鎵嬫満鍙蜂笉鑳戒负绌�',
+        icon: 'none'
+      })
+      if (!form.validCode) return uni.showToast({
+        title: '楠岃瘉鐮佷笉鑳戒负绌�',
+        icon: 'none'
+      })
+      if (!form.password) return uni.showToast({
+        title: '鏂板瘑鐮佷笉鑳戒负绌�',
+        icon: 'none'
+      })
+      if (!form.newPassword) return uni.showToast({
+        title: '纭瀵嗙爜涓嶈兘涓虹┖',
+        icon: 'none'
+      })
+      if (form.password != form.newPassword) return uni.showToast({
+        title: '涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�',
+        icon: 'none'
+      })
+      resetPassword({
+        ...form
+      }).then(res => {
+        if (res && res.code == 200) {
+					this.showToast('瀵嗙爜淇敼鎴愬姛,璇烽噸鏂扮櫥褰�')
+          setTimeout(() => {
+						uni.redirectTo({
+						  url: "/pages/driver/login"
+						})
+					}, 500)
+        }
+      })
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.login {
+  width: 100%;
+  display: flex;
+  padding-top: 100rpx;
+  box-sizing: border-box;
+  align-items: center;
+  flex-direction: column;
+  background: linear-gradient(
+    180deg,
+    rgba(39, 155, 170, 0.2) 0%,
+    rgba(39, 155, 170, 0) 100%
+  );
+  .login_logo {
+    width: 180rpx;
+    height: 180rpx;
+		margin-bottom: 40rpx;
+  }
+  .login_bg {
+    position: absolute;
+    top: 0;
+    width: 750rpx;
+  }
+  .login_title {
+    font-size: 44rpx;
+    font-weight: 600;
+    color: #333333;
+  }
+  .login_list {
+		margin-top: 60rpx;
+    width: 100%;
+    padding: 0 60rpx;
+    box-sizing: border-box;
+    .login_list_item {
+      width: 100%;
+      border-radius: 50rpx;
+      height: 98rpx;
+      padding: 0 40rpx;
+      box-sizing: border-box;
+      background: #ffffff;
+      margin-bottom: 40rpx;
+      display: flex;
+      align-items: center;
+      justify-content: space-between;
+      &:last-child {
+        margin-bottom: 0 !important;
+      }
+      image {
+        flex-shrink: 0;
+        width: 40rpx;
+        height: 40rpx;
+      }
+      .captcha {
+        color: $uni-color-primary;
+      }
+      input {
+        flex: 1;
+        height: 100%;
+        color: #666666;
+        margin-left: 24rpx;
+        border: none;
+      }
+    }
+  }
+  .login_btn {
+    width: 100%;
+    padding: 0 60rpx;
+    box-sizing: border-box;
+    margin-top: 80rpx;
+    .for_psd {
+      color: $uni-color-primary;
+      margin-top: 40rpx;
+      width: 140rpx;
+      text-align: center;
+      margin: 40rpx auto;
+    }
+    .login_btn_n {
+      width: 100%;
+      height: 98rpx;
+      background: $uni-color-primary;
+      box-shadow: 0rpx 12rpx 24rpx 0rpx rgba(39, 155, 170, 0.2);
+      display: flex;
+      align-items: center;
+      justify-content: center;
+      font-weight: 600;
+      font-size: 32rpx;
+      color: #ffffff;
+      border-radius: 50rpx;
+    }
+  }
+  .deal_wrap {
+    position: absolute;
+    width: 100%;
+    left: 0;
+    text-align: center;
+    bottom: 108rpx;
+    .deal {
+      color: $uni-color-primary;
+    }
+  }
+	.btns{
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		position: fixed;
+		bottom: 60rpx;
+		left: 0;
+		width: 100%;
+		.btn{
+			font-size: 30rpx;
+			color: $uni-color-primary;
+		}
+		.separate{ margin: 0 8rpx; }
+	}
+}
+.modal {
+  padding: 32rpx;
+}
+</style>
+

--
Gitblit v1.9.3