fix bug
This commit is contained in:
@@ -297,7 +297,7 @@ import {
|
||||
} from '@/utils/productOrderLimit'
|
||||
import { useWalletAssets } from '@/composables/useWalletAssets'
|
||||
import { formatProductWalletBalanceText, getCashWalletBalance, getProductInventoryQuantity } from '@/utils/productAssets'
|
||||
import { isStoreClosed, STORE_CLOSED_MESSAGE } from '@/utils/storeHours'
|
||||
import { isStoreClosed, getStoreClosedMessage } from '@/utils/storeHours'
|
||||
|
||||
const typeDeal = computed(() => getProductDealMethodOptions(props?.ProductItem?.group_type, isBuy.value))
|
||||
|
||||
@@ -798,7 +798,7 @@ async function initPrice() {
|
||||
|
||||
function okConfirm() {
|
||||
if (isStoreClosed()) {
|
||||
message.warning(STORE_CLOSED_MESSAGE)
|
||||
message.warning(getStoreClosedMessage())
|
||||
return
|
||||
}
|
||||
confirmAction.value = true
|
||||
@@ -807,7 +807,7 @@ function okConfirm() {
|
||||
|
||||
async function ok() {
|
||||
if (isStoreClosed()) {
|
||||
message.warning(STORE_CLOSED_MESSAGE)
|
||||
message.warning(getStoreClosedMessage())
|
||||
return
|
||||
}
|
||||
try {
|
||||
|
||||
@@ -13,6 +13,15 @@
|
||||
</ARadioGroup>
|
||||
</div>
|
||||
|
||||
<div
|
||||
v-if="storeIsClosed"
|
||||
class="mx-5 mb-3 rounded-lg bg-red-50 px-3 py-4 text-center text-red-600"
|
||||
>
|
||||
<div class="font-bold">مشتریان گرامی</div>
|
||||
<p class="mt-2 leading-relaxed">{{ storeClosedMessage }}</p>
|
||||
<p class="mt-2">از همراهی و اعتماد شما سپاسگزاریم.🤍</p>
|
||||
</div>
|
||||
|
||||
<div class="mx-5 pb-30 pt-2" style="color: #1b2b07">
|
||||
<div class="mt-3" v-for="item in items" :key="item.id">
|
||||
<ProductItem
|
||||
@@ -70,8 +79,7 @@
|
||||
<div class="text-center">
|
||||
<div class="font-bold text-red-600">مشتریان گرامی</div>
|
||||
<div class="mt-2 leading-relaxed">
|
||||
<p>فروشگاه در حال حاضر بسته است.</p>
|
||||
<p>ساعت کاری فروشگاه از {{ openTime }} تا {{ closeTime }} میباشد.</p>
|
||||
<p>{{ storeClosedMessage }}</p>
|
||||
<p>از همراهی و اعتماد شما سپاسگزاریم.🤍</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -106,10 +114,12 @@ import { loadProductCategoryTabNames } from '@/utils/categoryTabs'
|
||||
import { getLastPrices, lastPrice, startLastPricePolling, stopLastPricePolling } from '@/utils/price'
|
||||
import {
|
||||
formatTradingTimeDisplay,
|
||||
getStoreTradingHours,
|
||||
getEffectiveTradingHours,
|
||||
getStoreClosedMessage,
|
||||
isStoreClosed,
|
||||
STORE_CLOSED_MESSAGE
|
||||
setProductTradingHours
|
||||
} from '@/utils/storeHours'
|
||||
import { useSettingsStore } from '@/store/settingsStore'
|
||||
|
||||
const activekey = ref('طلا' ||'آبشده')
|
||||
const showFilter = ref(false)
|
||||
@@ -119,6 +129,8 @@ const closeTime = ref<string>('')
|
||||
const openTime = ref<string>('')
|
||||
const isAfterCloseTime = ref<boolean>(false)
|
||||
const isProductInactive = ref<boolean>(false)
|
||||
const storeIsClosed = computed(() => isStoreClosed())
|
||||
const storeClosedMessage = computed(() => getStoreClosedMessage())
|
||||
|
||||
watch([openTime, closeTime], () => {
|
||||
syncStoreClosedState()
|
||||
@@ -178,6 +190,7 @@ const firstItems = ref<Product[]>()
|
||||
const items = ref<Product[]>()
|
||||
const typeItems = ref<string[]>([])
|
||||
let productListInterval: ReturnType<typeof setInterval> | undefined
|
||||
let storeHoursInterval: ReturnType<typeof setInterval> | undefined
|
||||
|
||||
async function loadCategoryTabs() {
|
||||
try {
|
||||
@@ -234,11 +247,16 @@ watch(() => lastPrice.value?.closed, syncStoreClosedState)
|
||||
onMounted(async () => {
|
||||
try {
|
||||
loading.value = true
|
||||
await useSettingsStore().fetchSettings()
|
||||
await getLastPrices()
|
||||
startLastPricePolling()
|
||||
items.value = await getProducts()
|
||||
|
||||
const hours = getStoreTradingHours()
|
||||
if (items.value?.length) {
|
||||
setProductTradingHours(items.value[0].auto_open_at, items.value[0].auto_close_at)
|
||||
}
|
||||
|
||||
const hours = getEffectiveTradingHours()
|
||||
openTime.value = formatTradingTimeDisplay(hours.start)
|
||||
closeTime.value = formatTradingTimeDisplay(hours.end)
|
||||
syncStoreClosedState()
|
||||
@@ -247,6 +265,7 @@ onMounted(async () => {
|
||||
firstItems.value = items.value
|
||||
await loadServiceFeeFromSettings()
|
||||
productListInterval = setInterval(refreshProducts, 10000)
|
||||
storeHoursInterval = setInterval(syncStoreClosedState, 30000)
|
||||
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
@@ -274,6 +293,10 @@ onUnmounted(() => {
|
||||
clearInterval(productListInterval)
|
||||
productListInterval = undefined
|
||||
}
|
||||
if (storeHoursInterval) {
|
||||
clearInterval(storeHoursInterval)
|
||||
storeHoursInterval = undefined
|
||||
}
|
||||
})
|
||||
// watch(lastPrice, async () => {
|
||||
// // console.log(items);
|
||||
|
||||
Reference in New Issue
Block a user