From 4a186717d4323cc2b3554cd7af25e241a1429c3a Mon Sep 17 00:00:00 2001 From: Huakk <1751826683@qq.com> Date: Mon, 20 May 2024 19:59:36 +0800 Subject: [PATCH] feat(custom): --- config/index.ts | 2 +- src/api/user.ts | 56 ++++++---- src/app.config.ts | 1 + src/pages/goods/pay/index.scss | 6 +- src/pages/goods/pay/index.vue | 53 ++++++--- src/pages/mer/mer_detail/index.vue | 2 +- src/pages/users/pwd/index.config.ts | 3 + src/pages/users/pwd/index.scss | 29 +++++ src/pages/users/pwd/index.vue | 146 +++++++++++++++++++++++++ src/pages/users/setting/index.vue | 14 ++- src/pages/users/user_setting/index.vue | 2 +- 11 files changed, 268 insertions(+), 46 deletions(-) create mode 100644 src/pages/users/pwd/index.config.ts create mode 100644 src/pages/users/pwd/index.scss create mode 100644 src/pages/users/pwd/index.vue diff --git a/config/index.ts b/config/index.ts index 2f6adf0..d1a5dd9 100644 --- a/config/index.ts +++ b/config/index.ts @@ -51,7 +51,7 @@ const config = { prebundle: {enable: false}, }, cache: { - enable: true, // Webpack 持久化缓存配置,建议开启。默认配置请参考:https://docs.taro.zone/docs/config-detail#cache + enable: false, // Webpack 持久化缓存配置,建议开启。默认配置请参考:https://docs.taro.zone/docs/config-detail#cache }, sass: { data: `@import "@nutui/nutui-taro/dist/styles/variables.scss";`, diff --git a/src/api/user.ts b/src/api/user.ts index 07a7bef..6ae9a96 100644 --- a/src/api/user.ts +++ b/src/api/user.ts @@ -1,81 +1,89 @@ -import request from "@/utils/request"; +import request from '@/utils/request'; // 获取用户协议 -export const getAgreement = () => request("/user/agreement", {}, "POST"); +export const getAgreement = () => request('/user/agreement', {}, 'POST'); // 登录 -export const login = (data: object) => request("/login", data, "POST"); +export const login = (data: object) => request('/login', data, 'POST'); export const phoneLogin = (data: object) => - request("/phone/login", data, "POST"); + request('/phone/login', data, 'POST'); // 获取用户信息 // export const getUserInfo = () => request("/user/detail", {}, "GET"); // 获取短信验证码 export const getVerifyCode = (data: object) => - request("/getSmsCode", data, "POST"); + request('/getSmsCode', data, 'POST'); // 商家入驻申请 export const applyMer = (data: object) => - request("/store/settle", data, "POST"); + request('/store/settle', data, 'POST'); // 获取商家类型列表 -export const getMerTypeList = () => request("/store/getOther", {}, "POST"); +export const getMerTypeList = () => request('/store/getOther', {}, 'POST'); // 获取个人信息 -export const getPersonalInfo = () => request("/user/info", {}, "POST"); +export const getPersonalInfo = () => request('/user/info', {}, 'POST'); // 获取轮播图 -export const getBanner = () => request("/rotation", {}, "POST"); +export const getBanner = () => request('/rotation', {}, 'POST'); // 获取积分订单列表 export const getIntegralOrderList = (data: object) => - request("/user/pointOrder", data, "POST"); + request('/user/pointOrder', data, 'POST'); // 修改个人信息 export const editPersonalInfo = (data: object) => - request("/user/editInfo", data, "POST"); + request('/user/editInfo', data, 'POST'); // 积分明细 export const getIntegralDetail = (data: object) => - request("/user/pulseRecord", data, "POST"); + request('/user/pulseRecord', data, 'POST'); // 豆子明细 export const getBeanDetail = (data: object) => - request("/user/pointRecord", data, "POST"); + request('/user/pointRecord', data, 'POST'); // 授权手机号 export const getPhone = (data: object) => - request("/user/getPhone", data, "POST"); + request('/user/getPhone', data, 'POST'); // 获取推广积分明细 export const getTGIntegralDetail = (data: object) => - request("/user/referee/point", data, "POST"); + request('/user/referee/point', data, 'POST'); // 获取推广用户列表 export const getTGUserList = (data: object) => - request("/user/referee/list", data, "POST"); + request('/user/referee/list', data, 'POST'); // 绑定上级 export const bindParent = (data: object) => - request("/user/bindCode", data, "POST"); + request('/user/bindCode', data, 'POST'); // 获取推广码 -export const getRefereeCode = () => request("/user/promotion", {}, "POST"); +export const getRefereeCode = () => request('/user/promotion', {}, 'POST'); // 取消订单返回积分 export const qxOrder = (data: object) => - request("/user/point/off", data, "POST"); + request('/user/point/off', data, 'POST'); // 用户签到 -export const userSign = () => request("/sign/user", {}, "POST"); +export const userSign = () => request('/sign/user', {}, 'POST'); // 获取签到记录 -export const getSignRecord = () => request("/sign/pulse/count", {}, "POST"); +export const getSignRecord = () => request('/sign/pulse/count', {}, 'POST'); // 获取赠送总记录 export const getGiftRecord = (data: object) => - request("/user/giftPulseRecord", data, "POST"); + request('/user/giftPulseRecord', data, 'POST'); + +// 修改交易密码 +export const editTradePwd = (data: object) => + request('/user/edit/payPassword', data, 'POST'); + +// 检查是否有交易密码 +export const isCheckTradePwd = () => + request('/user/find/payPassword', {}, 'POST'); /** * 用户后结订单 @@ -83,8 +91,8 @@ export const getGiftRecord = (data: object) => // 获取用户后结订单列表 export const getUserAfterOrderList = (data: object) => - request("/later/user/order", data, "POST"); + request('/later/user/order', data, 'POST'); // 获取用户后结订单详情 export const getUserAfterOrderDetail = (data: object) => - request("/later/order/details", data, "POST"); \ No newline at end of file + request('/later/order/details', data, 'POST'); diff --git a/src/app.config.ts b/src/app.config.ts index 80d70a7..df07920 100644 --- a/src/app.config.ts +++ b/src/app.config.ts @@ -27,6 +27,7 @@ export default defineAppConfig({ 'bindPhone/index', 'pending_order/index', 'pending_order/pending_order_detail/index', + 'pwd/index', ], }, { diff --git a/src/pages/goods/pay/index.scss b/src/pages/goods/pay/index.scss index 6aedbf2..beda7e5 100644 --- a/src/pages/goods/pay/index.scss +++ b/src/pages/goods/pay/index.scss @@ -27,9 +27,9 @@ } .nut-short-password { - .nut-icon-tips { - display: none; - } + // .nut-icon-tips { + // display: none; + // } @for $i from 1 through 5 { .nut-short-password__item:nth-child(#{$i}) { diff --git a/src/pages/goods/pay/index.vue b/src/pages/goods/pay/index.vue index add98c7..fa5df39 100644 --- a/src/pages/goods/pay/index.vue +++ b/src/pages/goods/pay/index.vue @@ -1,8 +1,8 @@ @@ -96,6 +106,7 @@ import {onUnmounted, ref} from 'vue'; import {getActiveOrderDetail, checkTradePwd} from '@/api/goods'; import {getUserPoint} from '@/api/admin'; import {payOrder} from '@/api/order'; +import {isCheckTradePwd} from '@/api/user'; import * as dayjs from 'dayjs'; const payVal = ref(); @@ -116,6 +127,8 @@ const showKeyboard = ref(false); const isLoading = ref(false); +const visible2 = ref(false); + const opt = ref({}); Taro.useLoad(e => { @@ -152,10 +165,16 @@ const pay = async () => { if (!payVal.value) return Taro.showToast({title: '请选择支付方式', icon: 'none'}); if (payVal.value !== 1) { - visible.value = true; - showKeyboard.value = true; + const res = await isCheckTradePwd(); + if (res.data.pay_password) { + visible.value = true; + showKeyboard.value = true; + } else { + isLoading.value = false; + visible2.value = true; + } } else { - confirmPay(); + await confirmPay(); } } catch (error) { isLoading.value = false; @@ -172,7 +191,7 @@ const shortComplete = async value => { pay_password: value, }); shortClose(false); - confirmPay(); + await confirmPay(); } catch (error) { error_msg.value = error.msg; shortVal.value = ''; @@ -208,7 +227,7 @@ const confirmPay = async () => { }); }, complete: function () { - Taro.navigateTo({ + Taro.redirectTo({ url: `/pages/users/order_list_detail/index?orderId=${opt.value.oid}`, }); }, @@ -226,7 +245,7 @@ const confirmPay = async () => { icon: 'none', }); setTimeout(() => { - Taro.navigateTo({ + Taro.redirectTo({ url: `/pages/users/order_list_detail/index?orderId=${opt.value.oid}`, }); }, 2000); @@ -273,6 +292,12 @@ const countdownTime = () => { }, 1000); }; +const onTips = () => { + Taro.redirectTo({ + url: '/pages/users/pwd/index', + }); +}; + Taro.useDidHide(() => { clearInterval(t_id.value); }); diff --git a/src/pages/mer/mer_detail/index.vue b/src/pages/mer/mer_detail/index.vue index f435301..1246c49 100644 --- a/src/pages/mer/mer_detail/index.vue +++ b/src/pages/mer/mer_detail/index.vue @@ -150,7 +150,7 @@ const userLocalNum = ref({ t: 0, }); -Taro.useLoad(async () => { +Taro.useDidShow(async () => { Taro.getLocation({ type: 'wgs84', success: res => { diff --git a/src/pages/users/pwd/index.config.ts b/src/pages/users/pwd/index.config.ts new file mode 100644 index 0000000..ec8925f --- /dev/null +++ b/src/pages/users/pwd/index.config.ts @@ -0,0 +1,3 @@ +export default definePageConfig({ + navigationBarTitleText: '交易密码', +}); diff --git a/src/pages/users/pwd/index.scss b/src/pages/users/pwd/index.scss new file mode 100644 index 0000000..e5152b5 --- /dev/null +++ b/src/pages/users/pwd/index.scss @@ -0,0 +1,29 @@ +.form { + background-color: #fff; + margin-top: 20px; + padding: 25px 0; + + .form-item { + display: flex; + padding: 20px 30px; + align-items: center; + + .form-item-label { + font-size: 28px; + width: 150px; + } + + .form-item-content { + flex: 1; + border-bottom: rgba(232, 232, 232, 1) 1px solid; + padding: 10px 0; + + display: flex; + justify-content: space-between; + align-items: center; + } + } +} +.nut-button { + border-radius: 20px; +} diff --git a/src/pages/users/pwd/index.vue b/src/pages/users/pwd/index.vue new file mode 100644 index 0000000..f9bfaaa --- /dev/null +++ b/src/pages/users/pwd/index.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/src/pages/users/setting/index.vue b/src/pages/users/setting/index.vue index 8dbc50a..a9d4822 100644 --- a/src/pages/users/setting/index.vue +++ b/src/pages/users/setting/index.vue @@ -41,12 +41,22 @@ const clickText = (type: number, text: string) => { title="个人信息" is-link @click="toPage('/pages/users/user_setting/index')"> - - + + + { placeholder="修改登录密码" /> --> - +