diff --git a/src/components/layout/CommonLayout.vue b/src/components/layout/CommonLayout.vue index 396a8e3..d02e4a5 100644 --- a/src/components/layout/CommonLayout.vue +++ b/src/components/layout/CommonLayout.vue @@ -1,6 +1,6 @@ diff --git a/src/components/popup/ConDepositPop.vue b/src/components/popup/ConDepositPop.vue index 14180e1..5c6e702 100644 --- a/src/components/popup/ConDepositPop.vue +++ b/src/components/popup/ConDepositPop.vue @@ -52,7 +52,7 @@ import { usePromoStore } from '@/store/usePromoStore'; import { formatNum } from '@/module/utils/util'; import toast from '@/module/toast/toast'; import { createRechargeApi } from '@/api/promo'; -import { openWeb } from '@/module/utils/openUrl'; +import { openUrl } from '@/module/utils/openUrl'; const popup = ref(null) const themeStore = useThemeStore() @@ -70,7 +70,7 @@ const handleDeposit = async () => { const amount = content.value[activeIndex.value].rechargeAmount const { data } = await createRechargeApi({ amount }) uni.setStorageSync('rechargeAmount', amount) - openWeb(data.url) + openUrl(data.url) toast.hideLoading() } catch (error) { console.log("deposit error: ", error); diff --git a/src/components/popup/GreatRebet.vue b/src/components/popup/GreatRebet.vue index 78a4476..2a422ce 100644 --- a/src/components/popup/GreatRebet.vue +++ b/src/components/popup/GreatRebet.vue @@ -2,7 +2,7 @@ import { ref, computed } from 'vue' import { useThemeStore } from '@/store/useThemeStore.js' import { createBankruptRechargeApi } from '@/api/home' -import { openWeb } from '@/module/utils/openUrl' +import { openUrl } from '@/module/utils/openUrl' const props = defineProps({ detail: { @@ -29,7 +29,7 @@ const createOrder = async (recharge) => { const { data } = await createBankruptRechargeApi(recharge); console.log('createOrder', data); if (data?.isSuccess) { - openWeb(data?.url); + openUrl(data?.url); } } catch (error) { console.log('createOrder error', error); diff --git a/src/pages/account/Account.vue b/src/pages/account/Account.vue index e0632f7..d77a68a 100644 --- a/src/pages/account/Account.vue +++ b/src/pages/account/Account.vue @@ -124,7 +124,7 @@ {{ $t("account.button.switchAccount") }} - + @@ -202,7 +202,11 @@ const menuNavigator = (router) => { */ const helpMenuNavigator = (item) => { if (item.routerType === 'FAQ') { - openUrl(appStore.FAQ) + // openUrl(appStore.FAQ) + uni.navigateTo({ + url: '/pages/account/CustomService' + }) + return } if (item.name == "Phone Binding") { if (!userStore.userInfo.mobile) { diff --git a/src/pages/account/CustomService.vue b/src/pages/account/CustomService.vue index a9bf8c4..f574c4e 100644 --- a/src/pages/account/CustomService.vue +++ b/src/pages/account/CustomService.vue @@ -3,7 +3,7 @@ import { ref, computed } from 'vue' import { onLoad } from '@dcloudio/uni-app' import { useThemeStore } from "@/store/useThemeStore"; import { useAppStore } from '@/store/useAppStore' -import { getQuestionsApi, questionIndexApi } from '@/api/account' +import { questionIndexApi, questionSuccessApi, questionFailApi } from '@/api/account' import { openUrl } from '@/module/utils/openUrl' const themeStore = useThemeStore() @@ -67,7 +67,27 @@ const getQustionList = async () => { const _data = JSON.parse(data?.data) questions.value = _data } - +const onNoZan = (id) => { + questionFailApi({questionId: id}) + newMsg('I\'m sorry that I can\'t help you.', 1,'msg') +} +const onZan = (id) => { + questionSuccessApi({questionId: id}) + newMsg('I\'m glad that I could help you.!', 1,'msg') +} +const onSend = () => { + if (!inputVal.value) { + return + } + newMsg(inputVal.value, 1, 'msg') + inputVal.value = '' + setTimeout(() => { + newMsg('Sorry, I\'m unable to answer your question. Please click the online customer service at the top right corner.', 2, 'msg') + }, 1000); +} +const toOnlineService = () => { + openUrl(appStore.FAQ) +} onLoad(() => { getQustionList() }) @@ -76,7 +96,7 @@ onLoad(() => { @@ -94,7 +114,7 @@ onLoad(() => { {{ item.display }} - + {{ $t('account.contact') }} @@ -106,13 +126,14 @@ onLoad(() => { style="margin-left: 10rpx;"> - + + @@ -132,7 +161,7 @@ onLoad(() => { - Send + Send @@ -148,6 +177,7 @@ onLoad(() => { .question-list { padding: 20rpx 100rpx; + margin-bottom: 40rpx; .question-content { padding: 18rpx 24rpx; @@ -196,13 +226,26 @@ onLoad(() => { .msg-item { align-items: start; - margin-top: 60rpx; + margin-bottom: 80rpx; justify-content: flex-start; .icon-avatar { width: 54rpx; height: 54rpx; } + + .is-usefull { + bottom: -60rpx; + right: 10rpx; + } + + .icon-use { + width: 40rpx; + height: 40rpx; + } + .zan-reverse{ + margin-left: 30rpx; + } } .req-right { diff --git a/src/pages/earn/Earn.vue b/src/pages/earn/Earn.vue index 57085c7..6730501 100644 --- a/src/pages/earn/Earn.vue +++ b/src/pages/earn/Earn.vue @@ -11,6 +11,7 @@ import { onMounted } from 'vue' import EarnOld from './components/EarnOld.vue' import EarnV2 from './components/EarnV2.vue' +import EarnV3 from './components/EarnV3.vue' import { useAppStore } from '@/store/useAppStore' import { useThemeStore } from '@/store/useThemeStore' diff --git a/src/pages/earn/components/EarnV3.vue b/src/pages/earn/components/EarnV3.vue new file mode 100644 index 0000000..401088a --- /dev/null +++ b/src/pages/earn/components/EarnV3.vue @@ -0,0 +1,15 @@ + + + \ No newline at end of file diff --git a/src/pages/vip/Vip.vue b/src/pages/vip/Vip.vue index f3c393c..3edc858 100644 --- a/src/pages/vip/Vip.vue +++ b/src/pages/vip/Vip.vue @@ -254,7 +254,7 @@ import { requestAppEventUpload } from "@/api/app.js"; import { useAppStore } from "@/store/useAppStore"; import { useThemeStore } from "@/store/useThemeStore"; import { useUserStore } from "@/store/useUserStore"; -import { openWeb } from '@/module/utils/openUrl.js' +import { openUrl } from '@/module/utils/openUrl.js' import HomeUserInfo from "@/pages/home/components/HomeUserInfo.vue"; import VipItem from "../account/components/VipItem/VipItem.vue"; @@ -333,7 +333,7 @@ const deposit = () => { } const openCustomer = () => { - openWeb(userStore.serviceUrl) + openUrl(userStore.serviceUrl) } diff --git a/src/pages/wallet/DepositHistory.vue b/src/pages/wallet/DepositHistory.vue index fd182fc..28f17a3 100644 --- a/src/pages/wallet/DepositHistory.vue +++ b/src/pages/wallet/DepositHistory.vue @@ -46,7 +46,7 @@ - + Self diff --git a/src/pages/wallet/components/OnlineDeposit.vue b/src/pages/wallet/components/OnlineDeposit.vue index f958bd2..a5604c6 100644 --- a/src/pages/wallet/components/OnlineDeposit.vue +++ b/src/pages/wallet/components/OnlineDeposit.vue @@ -10,9 +10,9 @@ {{ $t('deposit.depositAmount') }}: Min: {{ - $formatThousandDot(depositStore.onlineDepositMin) }} + $formatThousandDot(depositStore.onlineDepositMin) }} Max: {{ - $formatThousandDot(depositStore.onlineDepositMax) }} + $formatThousandDot(depositStore.onlineDepositMax) }} @@ -31,31 +31,41 @@ {{ depositStore.onlineDepositType.gift > 0 ? - `+${depositStore.onlineDepositType.giftList[index]}` : '' }} + `+${depositStore.onlineDepositType.giftList[index]}` : '' }} {{ appStore.currencySign }} {{ - $formatThousandDot(item) }} + $formatThousandDot(item) }} - + {{ $t('deposit.depositEvent') }}: - - - + + + {{ item.name }} + + + @@ -183,18 +193,42 @@ const tabStyle = computed(() => { color: depositType.value === 'bank' ? themeStore.theme.wallet.light : themeStore.theme.wallet.textColor } }) -const payMethod = computed(() => { - return depositStore.onlinePaymentData.depositMethodList.filter(item => item.type == depositStore.activeType) -}) +// const payMethod = computed(() => { +// return depositStore.onlinePaymentData.depositMethodList.filter(item => item.type == depositStore.activeType) +// }) +const activeMethod = ref(0) +const payMethod = ref([ + { + name: 'PayTM', + icon: 'wallet/pay_PayTM.png' + }, + { + name: 'PhonePe', + icon: 'wallet/pay_PhonePe.png' + }, + { + name: 'GooglePay', + icon: 'wallet/pay_GooglePay.png' + }, + { + name: 'UPI', + icon: 'wallet/pay_UPI.png' + }, + { + name: 'QRcode', + icon: 'wallet/pay_QRcode.png' + }, +]) +depositStore.onlinePaymentData.payMethod = payMethod.value[0].name const handleHistoryClick = () => { - uni.navigateTo({ - url: '/pages/wallet/DepositHistory' - }) + uni.navigateTo({ + url: '/pages/wallet/DepositHistory' + }) } const toPoster = () => { - uni.navigateTo({ - url: '/pages/activity/Poster', - }) + uni.navigateTo({ + url: '/pages/activity/Poster', + }) } const handleSelect = (type) => { depositType.value = type @@ -203,16 +237,17 @@ const handleChannelChange = (channel) => { depositStore.onlinePaymentData.payType = channel } -const handlePayMethodSelect = (item) => { +const handlePayMethodSelect = (item, idx) => { console.log(item); - - if (item.disable) { return } - depositStore.onlinePaymentData.depositMethod = item.type - depositStore.onlinePaymentData.depositMethodName = item.name - depositStore.onlinePaymentData.depositMethodSelectItem = item - depositStore.onlinePaymentData.rechargeName = item.name - depositStore.onlinePaymentData.payType = item.payType?.split(',')[0] - depositStore.payType = item.payType + activeMethod.value = idx + // if (item.disable) { return } + depositStore.onlinePaymentData.payMethod = item.name + // depositStore.onlinePaymentData.depositMethod = item.type + // depositStore.onlinePaymentData.depositMethodName = item.name + // depositStore.onlinePaymentData.depositMethodSelectItem = item + // depositStore.onlinePaymentData.rechargeName = item.name + // depositStore.onlinePaymentData.payType = item.payType?.split(',')[0] + // depositStore.payType = item.payType } const handleAmountSelect = (item) => { @@ -254,8 +289,9 @@ const handleConfirmClick = async () => { channelId: depositStore.onlinePaymentData.depositChannel, rechargeType: depositStore.onlinePaymentData.depositMethod === 5 ? 'H' : depositStore.onlineDepositType.rechargeType, accountType: depositStore.onlinePaymentData.depositMethod, - rechargeName: depositStore.onlinePaymentData.rechargeName, + // rechargeName: depositStore.onlinePaymentData.rechargeName, payType: depositStore.onlinePaymentData.payType, + payMethod: depositStore.onlinePaymentData.payMethod, } } else { params = { @@ -263,8 +299,9 @@ const handleConfirmClick = async () => { channelId: depositStore.onlinePaymentData.depositChannel, rechargeType: depositStore.onlinePaymentData.depositMethod === 5 ? 'H' : depositStore.onlineDepositType.rechargeType, accountType: depositStore.onlinePaymentData.depositMethodName, - rechargeName: depositStore.onlinePaymentData.rechargeName, + // rechargeName: depositStore.onlinePaymentData.rechargeName, payType: depositStore.onlinePaymentData.payType, + payMethod: depositStore.onlinePaymentData.payMethod, } } console.log(params); @@ -283,14 +320,17 @@ const handleConfirmClick = async () => { diff --git a/src/store/useDepositStore.js b/src/store/useDepositStore.js index 1511f0b..8a62c02 100644 --- a/src/store/useDepositStore.js +++ b/src/store/useDepositStore.js @@ -35,7 +35,8 @@ export const useDepositStore = defineStore({ depositMethodSelectItem: {}, depositMethodList: [], rechargeName: '', - payType: '' + payType: '', + payMethod: '' }, // 渠道列表 payType: '', diff --git a/src/theme/red.js b/src/theme/red.js index ab46edd..ede2d89 100644 --- a/src/theme/red.js +++ b/src/theme/red.js @@ -91,6 +91,8 @@ export default { selectLinearBgColor: 'linear-gradient( 360deg, #79130D 0%, #94150C 44%, #BC0B00 99%)', linearBgColor: 'linear-gradient( 360deg, #490F0E 0%, #660F0A 74%, #70130D 99%), rgba(106,22,27,0.79)', }, + payBg: `left / cover no-repeat url('${imgSrc}/wallet/icon-btn-bg-select.png')`, + payBg1: `left / cover no-repeat url('${imgSrc}/wallet/icon-btn-bg.png')`, }, text: { normal: '#ffffff', @@ -330,6 +332,18 @@ export default { }, earn: { gradientBtn: 'linear-gradient(0deg, #32b12f, #10740b)', + light: '#ffffff', + text: '#F59094', + yellow: '#D4C534', + amount: '#FFCF4C', + tab: '#FFCE64', + dark: '#000000', + blockBg: '#2B0607', + headLinear: 'linear-gradient(180deg, #C8933E, #EFD388);', + recordBg: '#610700', + tabHeadColor: '#36070F', + success: '#1ED01E', + dismiss: '#FF0000' }, // 个人中心相关色值 account: {