Compare commits

..

3 Commits

Author SHA1 Message Date
zhouyanli
fd6ffe0c35 修改实收统计默认显示当天 2026-09-29 14:04:06 +08:00
zhouyanli
1f0d3014fe Merge branch 'master' of http://gitea.bugtc.com/zhouyanli/property-manager-side 2026-09-04 16:32:42 +08:00
zhouyanli
574f97331c 校验短信验证码 2026-09-04 16:32:35 +08:00
3 changed files with 52 additions and 22 deletions

View File

@@ -20,6 +20,10 @@ export const getLoginBySms = data => {
export const getResetPassword = data => { export const getResetPassword = data => {
return post('/api/butler/auth/forgetPassword', data) return post('/api/butler/auth/forgetPassword', data)
} }
// 忘记密码 校验短信验证码
export const verifySmsCode = (data) =>{
return post('/api/butler/auth/verifySmsCode',data)
}
// ======首页===== // ======首页=====
// 获取小区列表 // 获取小区列表

View File

@@ -102,6 +102,7 @@
<script setup> <script setup>
import { ref, reactive } from 'vue' import { ref, reactive } from 'vue'
import { onShow } from '@dcloudio/uni-app' import { onShow } from '@dcloudio/uni-app'
import dayjs from 'dayjs'
import { getVillageList,getFeeTypes,getTableList} from '../../api/api.js' import { getVillageList,getFeeTypes,getTableList} from '../../api/api.js'
// ============ 筛选数据 ============ // ============ 筛选数据 ============
@@ -115,8 +116,12 @@
const selectedFeeType = ref('') const selectedFeeType = ref('')
const selectedFeeTypeLabel = ref('全部收费类型') const selectedFeeTypeLabel = ref('全部收费类型')
// 日期范围 // 日期范围(默认查询当天数据)
const datetimerange = ref([]) const getTodayRange = () => {
const today = dayjs().format('YYYY-MM-DD')
return [today, today]
}
const datetimerange = ref(getTodayRange())
// 下拉刷新触发状态 // 下拉刷新触发状态
const refresherTriggered = ref(false) const refresherTriggered = ref(false)
@@ -298,7 +303,7 @@
selectedProjectLabel.value = '全部项目' selectedProjectLabel.value = '全部项目'
selectedFeeType.value = '' selectedFeeType.value = ''
selectedFeeTypeLabel.value = '全部收费类型' selectedFeeTypeLabel.value = '全部收费类型'
datetimerange.value = [] datetimerange.value = getTodayRange()
fetchTableList() fetchTableList()
} }
</script> </script>

View File

@@ -3,7 +3,7 @@
<!-- 手机号输入框 --> <!-- 手机号输入框 -->
<view class="input-item"> <view class="input-item">
<view class="input-icon"> <view class="input-icon">
<image src="http://wuye.ckdzkj.com/images/login/phone.png" mode="" style="height: 100%;width: 100%;"></image> <image src="https://wuye.ckdzkj.com/images/login/phone.png" mode="" style="height: 100%;width: 100%;"></image>
</view> </view>
<uni-easyinput class="input-content" type="number" v-model="phoneNumber" trim="all" <uni-easyinput class="input-content" type="number" v-model="phoneNumber" trim="all"
placeholder="请输入手机号" :inputBorder="false" maxlength="11" :placeholderStyle="placeholderStyle"> placeholder="请输入手机号" :inputBorder="false" maxlength="11" :placeholderStyle="placeholderStyle">
@@ -12,7 +12,7 @@
<!-- 验证码输入 + 获取验证码按钮 --> <!-- 验证码输入 + 获取验证码按钮 -->
<view class="input-item verify-item"> <view class="input-item verify-item">
<view class="input-icon"> <view class="input-icon">
<image src="http://wuye.ckdzkj.com/images/login/code.png" mode="" style="height: 100%;width: 100%;"></image> <image src="https://wuye.ckdzkj.com/images/login/code.png" mode="" style="height: 100%;width: 100%;"></image>
<!-- <uni-icons type="locked" size="24" color="#999"></uni-icons> --> <!-- <uni-icons type="locked" size="24" color="#999"></uni-icons> -->
</view> </view>
<uni-easyinput class="input-content verify-input" type="number" v-model="verifyCode" trim="all" <uni-easyinput class="input-content verify-input" type="number" v-model="verifyCode" trim="all"
@@ -29,21 +29,21 @@
<!-- 下一步 --> <!-- 下一步 -->
<button <button
class="forget-btn" class="forget-btn"
:disabled="!canRegister" :disabled="!canRegister || submitting"
@click="handleNext" @click="handleNext">
> {{ submitting ? '校验中...' : '下一步' }}
下一步
</button> </button>
</view> </view>
</template> </template>
<script setup> <script setup>
import { ref, computed, onUnmounted } from 'vue'; import { ref, computed, onUnmounted } from 'vue';
import {getSendCode} from '../../api/api.js' import {getSendCode,verifySmsCode} from '../../api/api.js'
// ====响应式数据====== // ====响应式数据======
const phoneNumber = ref('') const phoneNumber = ref('')
const verifyCode = ref('') const verifyCode = ref('')
const submitting = ref(false)
const countDown = ref(0) const countDown = ref(0)
let timer = null; let timer = null;
@@ -85,6 +85,11 @@ const getVerifyCode = () => {
icon: 'none' icon: 'none'
}); });
} }
}).catch((err)=>{
uni.showToast({
title: err.msg,
icon: 'none'
});
}) })
@@ -99,18 +104,34 @@ const canRegister = computed(() => {
}); });
// 下一步 // 下一步
const handleNext = () =>{ const handleNext = () =>{
if(!canRegister.value){
uni.showToast({ title: '请输入正确的手机号和验证码',icon: 'error'});
return
}
if(submitting.value) return
submitting.value = true
// 后端验证短信
verifySmsCode({
phone: phoneNumber.value,
smsCode: verifyCode.value,
scene: 'reset'
}).then(res =>{
// 把参数存到本地缓存 // 把参数存到本地缓存
uni.setStorageSync('tempChangePwdParams', { uni.setStorageSync('tempChangePwdParams', {
phoneNumber:phoneNumber.value, phoneNumber:phoneNumber.value,
verifyCode: verifyCode.value verifyCode: verifyCode.value
}); });
if(!canRegister.value){
uni.showToast({ title: '请输入',icon: 'error'});
return
}
uni.navigateTo({ uni.navigateTo({
url: '/pageSubPack/loginSub/change-pwd' url: '/pageSubPack/loginSub/change-pwd'
}); });
}).catch(err =>{
uni.showToast({
title: err.msg || '验证码错误',
icon: 'none'
});
}).finally(() =>{
submitting.value = false
})
} }
</script> </script>
<style scoped> <style scoped>