From 80dc90be027ee26869c63860b7d6a0759a03546b Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期二, 20 五月 2025 17:33:53 +0800 Subject: [PATCH] fix: 修改首页ui --- packages/components/src/views/PhoneBillRecharge/PhoneBillRechargeStep2.vue | 93 +++++++++++++++++++++++++++------------------- 1 files changed, 55 insertions(+), 38 deletions(-) diff --git a/packages/components/src/views/PhoneBillRecharge/PhoneBillRechargeStep2.vue b/packages/components/src/views/PhoneBillRecharge/PhoneBillRechargeStep2.vue index 1319215..57e0e54 100644 --- a/packages/components/src/views/PhoneBillRecharge/PhoneBillRechargeStep2.vue +++ b/packages/components/src/views/PhoneBillRecharge/PhoneBillRechargeStep2.vue @@ -6,8 +6,8 @@ label-position="top" class="order-bill-recharge phone" > - <Chunk borderRadiusSmall> - <NutFormItem class="bole-form-item" prop="currentUserAccountId"> + <Chunk borderRadiusSmall :hasPaddingBottom="false"> + <NutFormItem class="bole-form-item user-account-form-item" prop="currentUserAccountId"> <NutRadioGroup v-model="form.currentUserAccountId" direction="horizontal" @@ -20,55 +20,68 @@ shape="button" v-for="item in userAccountAllList" :key="item.id" - >{{ item.content }}</NutRadio + >{{ addStarForPhone(item.content) }}</NutRadio > </NutRadioGroup> - <AccountCard + <AccountCardV2 v-if="userAccountAllList.length > 0" - title="鍏呭�兼墜鏈哄彿" - :content="form.phone" + :content="StringUtils.phoneNumberAddSpace(form.phone)" :remark="form.remark" + :showEditBtn="!!form.currentUserAccountId" + @add="handleAddUserAccount" + @edit="emit('editUserAccount', form.currentUserAccountId)" > - <template #action> - <div class="account-card-action" @click="handleAddUserAccount">鏂板</div> - </template> - </AccountCard> - <AccountAddCard v-else @click="handleAddUserAccount" /> + </AccountCardV2> + <AccountAddCardV2 + content="鍘绘坊鍔犲厖鍊煎彿鐮�" + remark="娣诲姞鍙风爜灏嗕繚瀛樺湪鐢熸椿缂磋垂杩涜绠$悊" + tip="娣诲姞姝g‘鍙风爜" + v-else + @add="handleAddUserAccount" + /> </NutFormItem> </Chunk> - <NutFormItem label="閫夋嫨鍏呭�奸噾棰�" class="bole-form-item" prop="parValue" required> - <NutRadioGroup v-model="form.parValue" direction="horizontal" class="parValue-radio-group"> - <NutRadio - :label="Number(item)" - :key="item" - shape="button" - v-for="item in parValueList" - class="parValue-item" - > - <div class="parValue-item-inner"> - <div class="amount-wrapper"> - <div class="amount">{{ item }}</div> - <div class="unit">鍏�</div> - </div> - <div class="price-wrapper"> - <div class="price-text">鎶樺悗</div> - <div class="price"> - {{ blLifeRecharge.getRechargeParValue(item, lifePayPhoneRate) }}鍏� + <Chunk borderRadiusSmall :hasPaddingBottom="false" title="閫夋嫨鍏呭�奸噾棰�"> + <NutFormItem class="bole-form-item" prop="parValue" required> + <NutRadioGroup v-model="form.parValue" direction="horizontal" class="parValue-radio-group"> + <NutRadio + :label="Number(item)" + :key="item" + shape="button" + v-for="item in parValueList" + class="parValue-item" + > + <div class="parValue-item-inner"> + <div class="amount-wrapper"> + <div class="amount">{{ item }}</div> + <div class="unit">鍏�</div> </div> + <div class="price-wrapper"> + <div class="price-text">鎶樺悗</div> + <div class="price"> + {{ blLifeRecharge.getRechargeParValue(item, lifePayPhoneRate) }}鍏� + </div> + </div> + <div class="discountTag" v-if="lifePayPhoneRate > 0">{{ lifePayPhoneRate }}鎶�</div> + <img :src="IconSelect" class="discount-icon" /> </div> - <div class="discountTag" v-if="lifePayPhoneRate > 0">{{ lifePayPhoneRate }}鎶�</div> - </div> - </NutRadio> - </NutRadioGroup> - </NutFormItem> + </NutRadio> + </NutRadioGroup> + </NutFormItem> + </Chunk> + <SelectPayTypeFormItem v-model="form.lifePayType" :showWeixinPay="showWeixinPay" :showAliPay="showAliPay" ></SelectPayTypeFormItem> <div class="common-content"> - <nut-button class="recharge-button" type="primary" @click="handleSubmit"> + <nut-button + class="recharge-button recharge-button-linear" + type="primary" + @click="handleSubmit" + > <div class="recharge-button-inner"> <div>锟{ realParValue }}</div> <div class="recharge-button-text">绔嬪嵆鍏呭��</div> @@ -100,7 +113,7 @@ } from '@nutui/nutui-taro'; import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types'; import { reactive, ref, computed, toRef } from 'vue'; -import { FormValidator, initLifePayType } from '../../utils'; +import { FormValidator, initLifePayType, addStarForPhone, StringUtils } from '../../utils'; import { useLifeRechargeContext, BlLifeRecharge, @@ -111,13 +124,14 @@ import ConfirmDialog from '../../components/Dialog/ConfirmDialog.vue'; import ConfirmDialogInfoItem from '../../components/Dialog/ConfirmDialogInfoItem.vue'; import { useGetRate, useGetPhoneParValue, useSetUserAccountBySelect } from '../../hooks'; -import AccountAddCard from '../../components/Card/AccountAddCard.vue'; -import AccountCard from '../../components/Card/AccountCard.vue'; +import AccountAddCardV2 from '../../components/Card/AccountAddCardV2.vue'; +import AccountCardV2 from '../../components/Card/AccountCardV2.vue'; import { usePhoneBillRechargeContext, PhoneUserAccountExtraProperties } from './context'; import SelectPayTypeFormItem from '../../components/SelectPayTypeFormItem/SelectPayTypeFormItem.vue'; import { useSelectPayType, useGetPayStatusByOrderNo } from '../../hooks/selectPayType'; import { RechargeProps } from './types'; import Chunk from '../../components/Layout/Chunk.vue'; +import IconSelect from '../../assets/recharge/icon-select.png'; defineOptions({ name: 'PhoneBillRechargeStep2', @@ -164,6 +178,7 @@ (e: 'goPay', orderNo: string): void; (e: 'paySuccess', orderNo: string): void; (e: 'missName', userAccountId: string): void; + (e: 'editUserAccount', userAccountId: string): void; }>(); const { lifePayPhoneRate } = useGetRate(); @@ -201,7 +216,9 @@ function handleSubmit() { if (!formRef.value) return; + console.log('form: ', form, formRef.value); formRef.value.validate().then(({ valid, errors }: any) => { + console.log('errors: ', errors); if (valid) { if (!form.name) { emit('missName', form.currentUserAccountId); -- Gitblit v1.9.1