Make boursecu branch boursecu-only and simplify app loading.
Remove multi-tenant branches and default views, show logo-only boot and splash screens, and polish boursecu transactions tab styling. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -13,10 +13,7 @@ import type { Card } from '@/models/wallet'
|
||||
import { useUserStore } from '@/store/userStore'
|
||||
import { useConfigStore } from '@/store/configStore'
|
||||
import {
|
||||
getProjectBaleContactLink,
|
||||
getWalletDepositQuickAmountsRial,
|
||||
isBazretalaProject,
|
||||
isBoursecuProject,
|
||||
} from '@/utils/config'
|
||||
import { useDesktopBreakpoint } from '@/layouts/composables/useAppLayout'
|
||||
import {
|
||||
@@ -60,7 +57,6 @@ export interface WalletPageContext {
|
||||
depositGuideSupportLink: ReturnType<typeof computed<string>>
|
||||
depositSmsSupportLink: ReturnType<typeof computed<string>>
|
||||
depositQuickAmounts: ReturnType<typeof computed<readonly number[]>>
|
||||
isBazretalaProject: typeof isBazretalaProject
|
||||
usePriceWithoutType: typeof usePriceWithoutType
|
||||
formatCashWalletBalanceText: typeof formatCashWalletBalanceText
|
||||
setIsDeposit: (val: boolean) => void
|
||||
@@ -100,16 +96,12 @@ export function useWalletPage() {
|
||||
|
||||
const depositQuickAmounts = computed(() => getWalletDepositQuickAmountsRial())
|
||||
|
||||
const depositGuideSupportLink = computed(() => {
|
||||
if (config.config?.name === 'garoosi' || isBazretalaProject()) {
|
||||
return getProjectBaleContactLink()
|
||||
}
|
||||
|
||||
return buildSupportMessengerUrl(
|
||||
const depositGuideSupportLink = computed(() =>
|
||||
buildSupportMessengerUrl(
|
||||
supportMessengerSettings.value.messenger,
|
||||
supportMessengerSettings.value.messengerId,
|
||||
)
|
||||
})
|
||||
),
|
||||
)
|
||||
|
||||
const depositSmsSupportLink = computed(() =>
|
||||
buildDepositSmsUrl(supportMessengerSettings.value.depositSmsSupportNumber),
|
||||
@@ -132,7 +124,7 @@ export function useWalletPage() {
|
||||
})
|
||||
|
||||
const disableButton = computed(() => {
|
||||
const minWithdrawAmount = isBoursecuProject() ? 200_000 : 1_000_000
|
||||
const minWithdrawAmount = 200_000
|
||||
const minDepositAmount = 1_000_000
|
||||
|
||||
if (!loading.value) {
|
||||
@@ -297,7 +289,6 @@ export function useWalletPage() {
|
||||
depositGuideSupportLink,
|
||||
depositSmsSupportLink,
|
||||
depositQuickAmounts,
|
||||
isBazretalaProject,
|
||||
usePriceWithoutType,
|
||||
formatCashWalletBalanceText,
|
||||
setIsDeposit,
|
||||
|
||||
@@ -55,9 +55,6 @@
|
||||
|
||||
<Transition mode="out-in" name="fade">
|
||||
<div v-if="!isDeposit" key="withdraw" class="dwallet-form__extras">
|
||||
<p v-if="!isBoursecu" class="dwallet-form__hint dwallet-form__hint--warn">
|
||||
حداقل مبلغ برداشتی 100 هزار تومان می باشد.
|
||||
</p>
|
||||
<p class="dwallet-form__balance-text">
|
||||
{{ formatCashWalletBalanceText(usePriceWithoutType(walletStore?.walletInfo?.cash ?? 0)) }}
|
||||
</p>
|
||||
@@ -81,7 +78,7 @@
|
||||
</a-form-item>
|
||||
</div>
|
||||
<div v-else key="deposit" class="dwallet-form__extras">
|
||||
<p v-if="!isBazretalaProject()" class="dwallet-form__hint dwallet-form__hint--warn">
|
||||
<p class="dwallet-form__hint dwallet-form__hint--warn">
|
||||
حداقل مبلغ واریزی 100 هزار تومان می باشد.
|
||||
</p>
|
||||
<div class="dwallet-quick-amounts">
|
||||
@@ -108,7 +105,7 @@
|
||||
<span v-else>{{ isDeposit ? 'واریز' : 'برداشت' }}</span>
|
||||
</BasicButton>
|
||||
|
||||
<BoursecuWithdrawGuide v-if="!isDeposit && isBoursecu" />
|
||||
<BoursecuWithdrawGuide v-if="!isDeposit" />
|
||||
</a-form>
|
||||
</section>
|
||||
|
||||
@@ -136,53 +133,34 @@
|
||||
|
||||
<template v-else>
|
||||
<div class="dwallet-side__header">
|
||||
<h3 class="dwallet-side__title">{{ isBoursecu ? 'حسابهای بانکی' : 'کارتهای بانکی' }}</h3>
|
||||
<h3 class="dwallet-side__title">حسابهای بانکی</h3>
|
||||
<button
|
||||
v-if="isBoursecu"
|
||||
type="button"
|
||||
class="dwallet-side__add-link"
|
||||
@click="showAddCard = true"
|
||||
>
|
||||
+ افزودن شبا
|
||||
</button>
|
||||
<button
|
||||
v-else
|
||||
type="button"
|
||||
class="dwallet-side__add-btn"
|
||||
@click="showAddCard = true"
|
||||
>
|
||||
<BasicIcon icon="vuesax-linear:add" size="16" />
|
||||
<span>افزودن کارت</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<p v-if="isBoursecu && cardItems.length > 0" class="dwallet-side__subtitle">واریز به</p>
|
||||
<p v-if="cardItems.length > 0" class="dwallet-side__subtitle">واریز به</p>
|
||||
|
||||
<div v-if="!loading && cardItems.length === 0" class="dwallet-side__empty dwallet-side__empty--cards">
|
||||
<BasicIcon icon="vuesax-linear:card" size="32" />
|
||||
<p>هیچ کارتی یافت نشد</p>
|
||||
<button type="button" class="dwallet-side__add-btn dwallet-side__add-btn--primary" @click="showAddCard = true">
|
||||
{{ isBoursecu ? 'افزودن شبا' : 'افزودن کارت جدید' }}
|
||||
افزودن شبا
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<BoursecuBankAccountPicker
|
||||
v-else-if="isBoursecu"
|
||||
v-else
|
||||
v-model:id="form.card_id"
|
||||
variant="desktop"
|
||||
:items="cardItems"
|
||||
@add-account="showAddCard = true"
|
||||
@card-deleted="getCards"
|
||||
/>
|
||||
|
||||
<div v-else-if="cardItems.length > 0" class="dwallet-cards">
|
||||
<CardSlider
|
||||
v-model:id="form.card_id"
|
||||
:items="cardItems"
|
||||
class="dwallet-cards__slider"
|
||||
@cardDeleted="getCards"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
</section>
|
||||
</div>
|
||||
@@ -199,15 +177,11 @@ import ListAnim from '@/components/ListAnim.vue'
|
||||
import TransactionSkeleton from '@/components/TransactionSkeleton.vue'
|
||||
import { useConfigStore } from '@/store/configStore'
|
||||
import { required } from '@/utils/inputRules'
|
||||
import CardSlider from '../components/UISlider/index.vue'
|
||||
import BoursecuBankAccountPicker from '../components/BoursecuBankAccountPicker.vue'
|
||||
import BoursecuWithdrawGuide from '../components/BoursecuWithdrawGuide.vue'
|
||||
import Item from '../components/Item.vue'
|
||||
import { isBoursecuProject } from '@/utils/config'
|
||||
import { useWalletPageContext } from '../composables/useWalletPage'
|
||||
|
||||
const isBoursecu = isBoursecuProject()
|
||||
|
||||
const {
|
||||
isDeposit,
|
||||
walletStore,
|
||||
@@ -220,7 +194,6 @@ const {
|
||||
loadingMore,
|
||||
desktopDepositScrollEl,
|
||||
depositQuickAmounts,
|
||||
isBazretalaProject,
|
||||
usePriceWithoutType,
|
||||
formatCashWalletBalanceText,
|
||||
setIsDeposit,
|
||||
|
||||
@@ -83,22 +83,7 @@
|
||||
:support-link="depositGuideSupportLink"
|
||||
:sms-link="depositSmsSupportLink"
|
||||
>
|
||||
<template v-if="config.config.name === 'garoosi'">
|
||||
<p>جهت شارژ حساب کاربری خود، مبلغ موردنظر را به شماره کارت زیر واریز نموده و از طریق لینک زیر به پشتیبان اطلاع دهید.</p>
|
||||
<p class="deposit-guide-note deposit-guide-note--warn">در صورت عدم همخوانی کارت ملی و فیش واریزی کیف پول شارژ نمیشود!</p>
|
||||
<p class="deposit-guide-note">(سیده زهرا موسوی)</p>
|
||||
<p class="deposit-guide-note">شماره کارت: 6037701900311389</p>
|
||||
<p class="deposit-guide-note">شماره شبا: IR 080160000000001143804581</p>
|
||||
</template>
|
||||
|
||||
<template v-else-if="isBazretalaProject()">
|
||||
<p>جهت شارژ حساب کاربری خود، مبلغ موردنظر را به شماره کارت زیر واریز نموده و به شماره پشتیبانی 09121784258 در برنامه بله اطلاع دهید.</p>
|
||||
<p class="deposit-guide-note">(گنجينه طلاي حاجي ابوالفتح - بانک ملی)</p>
|
||||
<p class="deposit-guide-note">شماره کارت: 6037998800496928</p>
|
||||
<p class="deposit-guide-note">شماره شبا: IR 110170000000372468150002</p>
|
||||
</template>
|
||||
|
||||
<template v-else>
|
||||
<template>
|
||||
<p>{{ supportMessengerText }}</p>
|
||||
</template>
|
||||
</WalletDepositGuideModal>
|
||||
@@ -138,7 +123,6 @@ import WalletDepositGuideModal from './components/WalletDepositGuideModal.vue'
|
||||
const isDesktop = useDesktopBreakpoint()
|
||||
|
||||
const {
|
||||
config,
|
||||
showAddCard,
|
||||
chargeAccountModal,
|
||||
showConfirmCode,
|
||||
@@ -149,7 +133,6 @@ const {
|
||||
supportMessengerText,
|
||||
depositGuideSupportLink,
|
||||
depositSmsSupportLink,
|
||||
isBazretalaProject,
|
||||
handleOnComplete,
|
||||
loading,
|
||||
addCard,
|
||||
|
||||
@@ -30,11 +30,11 @@
|
||||
</div>
|
||||
<div
|
||||
class="px-5 mpage-content mpage-content--with-subheader"
|
||||
:class="isDeposit ? 'pb-2' : isBoursecu ? 'pb-[calc(var(--app-bottom-chrome-height)+1rem)]' : 'pb-[calc(var(--app-bottom-chrome-height)+var(--app-add-card-height)+1rem)]'"
|
||||
:class="isDeposit ? 'pb-2' : 'pb-[calc(var(--app-bottom-chrome-height)+1rem)]'"
|
||||
>
|
||||
<a-form :model="form" class="!mt-5" name="basic" @finish="ok()">
|
||||
<BoursecuBankAccountPicker
|
||||
v-if="!isDeposit && isBoursecu"
|
||||
v-if="!isDeposit"
|
||||
v-model:id="form.card_id"
|
||||
variant="mobile"
|
||||
:items="cardItems"
|
||||
@@ -59,9 +59,6 @@
|
||||
</a-form-item>
|
||||
<Transition mode="out-in" name="fade">
|
||||
<div v-if="!isDeposit">
|
||||
<div v-if="!isBoursecu" class="text-red text-xs font-bold mb-2">
|
||||
حداقل مبلغ برداشتی 100 هزار تومان می باشد.
|
||||
</div>
|
||||
<div class="font-bold text-xs">
|
||||
{{ formatCashWalletBalanceText(usePriceWithoutType(walletStore?.walletInfo?.cash ?? 0)) }}
|
||||
</div>
|
||||
@@ -85,7 +82,7 @@
|
||||
</a-form-item>
|
||||
</div>
|
||||
<div v-else class="mt-3">
|
||||
<div v-if="!isBazretalaProject()" class="text-red text-xs font-bold mb-2">
|
||||
<div class="text-red text-xs font-bold mb-2">
|
||||
حداقل مبلغ واریزی 100 هزار تومان می باشد.
|
||||
</div>
|
||||
<div class="flex gap-2">
|
||||
@@ -118,7 +115,7 @@
|
||||
</a-form>
|
||||
|
||||
<div
|
||||
v-if="!isDeposit && isBoursecu"
|
||||
v-if="!isDeposit"
|
||||
class="wallet-withdraw-guide-panel relative z-10"
|
||||
>
|
||||
<BoursecuWithdrawGuide />
|
||||
@@ -137,44 +134,12 @@
|
||||
</list-anim>
|
||||
<TransactionSkeleton v-for="i in 13" v-else :key="i" class="mt-1" />
|
||||
</div>
|
||||
<Transition mode="out-in" name="fade">
|
||||
<template v-if="!isDeposit">
|
||||
<div
|
||||
v-if="!loading && cardItems.length === 0 && !isBoursecu"
|
||||
class="h-30 flex items-center justify-center"
|
||||
>
|
||||
هیچ کارتی یافت نشد
|
||||
</div>
|
||||
</template>
|
||||
</Transition>
|
||||
</div>
|
||||
|
||||
<Teleport to="body">
|
||||
<CardSlider
|
||||
v-if="!isDeposit && !isBoursecu && cardItems.length > 0 && !showAddCard"
|
||||
v-model:id="form.card_id"
|
||||
:items="cardItems"
|
||||
class="card-slider-wrap wallet-card-slider"
|
||||
@cardDeleted="getCards"
|
||||
/>
|
||||
</Teleport>
|
||||
|
||||
<Teleport to="body">
|
||||
<div
|
||||
v-if="!isDeposit && !isBoursecu && !showAddCard"
|
||||
class="add-card app-dock-add-bar"
|
||||
@click="showAddCard = true"
|
||||
>
|
||||
<div>افزودن کارت جدید</div>
|
||||
<BasicIcon icon="vuesax-linear:add" />
|
||||
</div>
|
||||
</Teleport>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import BasicButton from '@/components/BasicPacks/BasicButton.vue'
|
||||
import BasicIcon from '@/components/BasicPacks/BasicIcon.vue'
|
||||
import MobilePageHeader from '@/layouts/components/MobilePageHeader.vue'
|
||||
import BasicInput from '@/components/BasicPacks/BasicInput.vue'
|
||||
import Bg_main from '@/components/bg_main.vue'
|
||||
@@ -183,15 +148,11 @@ import TransactionSkeleton from '@/components/TransactionSkeleton.vue'
|
||||
import { useConfigStore } from '@/store/configStore'
|
||||
import { required } from '@/utils/inputRules'
|
||||
import img from '@/assets/img/user_ly1.svg'
|
||||
import CardSlider from '../components/UISlider/index.vue'
|
||||
import BoursecuBankAccountPicker from '../components/BoursecuBankAccountPicker.vue'
|
||||
import BoursecuWithdrawGuide from '../components/BoursecuWithdrawGuide.vue'
|
||||
import Item from '../components/Item.vue'
|
||||
import { isBoursecuProject } from '@/utils/config'
|
||||
import { useWalletPageContext } from '../composables/useWalletPage'
|
||||
|
||||
const isBoursecu = isBoursecuProject()
|
||||
|
||||
const {
|
||||
isDeposit,
|
||||
walletStore,
|
||||
@@ -204,7 +165,6 @@ const {
|
||||
loadingMore,
|
||||
mobileDepositScrollEl,
|
||||
depositQuickAmounts,
|
||||
isBazretalaProject,
|
||||
usePriceWithoutType,
|
||||
formatCashWalletBalanceText,
|
||||
setIsDeposit,
|
||||
|
||||
Reference in New Issue
Block a user