diff --git a/apps/user/app/(main)/(content)/(user)/dashboard/components/SubscribeCard/index.tsx b/apps/user/app/(main)/(content)/(user)/dashboard/components/SubscribeCard/index.tsx
index baea550..ace62d7 100644
--- a/apps/user/app/(main)/(content)/(user)/dashboard/components/SubscribeCard/index.tsx
+++ b/apps/user/app/(main)/(content)/(user)/dashboard/components/SubscribeCard/index.tsx
@@ -71,7 +71,7 @@ const SubscribeCard = (props: SubscribeCardProps) => {
{t('totalTraffic')}
- {userSubscribeData?.token ? (
+ {userSubscribeData?.status === 1 ? (
{
{t('nextResetDays')}
- {userSubscribeData?.token ? (
+ {userSubscribeData?.status === 1 ? (
<>
{userSubscribeData.reset_time
? differenceInDays(new Date(userSubscribeData.reset_time), new Date())
@@ -103,7 +103,7 @@ const SubscribeCard = (props: SubscribeCardProps) => {
{t('expirationDays')}
- {userSubscribeData?.token ? (
+ {userSubscribeData?.status === 1 ? (
<>
{userSubscribeData.expire_time
? differenceInDays(new Date(userSubscribeData.expire_time), new Date()) ||
@@ -120,11 +120,13 @@ const SubscribeCard = (props: SubscribeCardProps) => {
{/* 订阅链接 */}
-
-
- {t('buySubscriptionNow')}
-
-
+ {userSubscribeData?.status !== 1 && (
+
+
+ {t('buySubscriptionNow')}
+
+
+ )}
{props.protocol.length > 1 && (
{
const { data } = await queryUserSubscribe();
- return data.data?.list || [];
+ const activeList = data.data?.list?.filter((v) => v.status === 1);
+
+ return activeList[0] ?? {};
},
});
@@ -204,7 +206,7 @@ export default function Content() {
@@ -223,7 +225,7 @@ export default function Content() {
- {userSubscribe?.length > 0 && userSubscribe[0]?.status === 1 && orderData
+ {userSubscribe?.status === 1 && orderData
? orderData?.quantity === 1
? t('annualMonthPlanUser')
: t('annualYearPlanUser')
@@ -252,7 +254,7 @@ export default function Content() {
{t('planStatus')}
- {userSubscribe?.length > 0 && userSubscribe?.[0]?.status === 1 ? (
+ {userSubscribe?.status === 1 ? (
{t('inEffect')}
@@ -266,20 +268,20 @@ export default function Content() {
className={
'border-0 bg-transparent p-0 text-sm font-normal text-[#225BA9] shadow-none outline-0 hover:bg-transparent'
}
- id={userSubscribe?.[0]?.id || 0}
- replacement={userSubscribe?.[0]?.subscribe.replacement}
+ id={userSubscribe?.id || 0}
+ replacement={userSubscribe?.subscribe?.replacement}
/>
{t('planExpirationTime')}
- {formatDate(userSubscribe?.[0]?.expire_time, false) || t('None')}
+ {formatDate(userSubscribe?.expire_time, false) || t('None')}
- {userSubscribe?.[0]?.subscribe.name ? (
- userSubscribe?.[0]?.subscribe.name
+ {userSubscribe?.subscribe?.name ? (
+ userSubscribe?.subscribe?.name
) : (
{t('noPlanAvailable')}
)}
@@ -289,12 +291,12 @@ export default function Content() {
{t('availableDevices')}
- {Array.from({ length: userSubscribe?.[0]?.subscribe.device_limit || 6 }).map(
+ {Array.from({ length: userSubscribe?.subscribe?.device_limit || 6 }).map(
(_, index) => {
return (
1 ? 'bg-[#225BA9]' : 'bg-[#D9D9D9]'}`}
+ className={`h-2.5 w-2.5 rounded-full sm:h-4 sm:w-4 ${index < (userSubscribe?.subscribe?.device_limit || 0) > 1 ? 'bg-[#225BA9]' : 'bg-[#D9D9D9]'}`}
>
);
},
@@ -303,25 +305,25 @@ export default function Content() {
{t('online')}
- {data?.online_device || 0}/{userSubscribe?.[0]?.subscribe.device_limit || 0}
+ {data?.online_device || 0}/{userSubscribe?.subscribe?.device_limit || 0}
{t('usedTrafficTotalTraffic')}
- {userSubscribe?.[0]?.subscribe.device_limit ? (
+ {userSubscribe?.subscribe?.device_limit ? (
<>
/
>
) : (
@@ -330,12 +332,18 @@ export default function Content() {
{t('remaining')}
- {100 -
- Math.round(
- (((userSubscribe?.[0]?.upload || 0) + (userSubscribe?.[0]?.download || 0)) /
- (userSubscribe?.[0]?.traffic || 1)) *
- 100,
- )}
+ {userSubscribe?.status === 1 ? (
+ <>
+ {100 -
+ Math.round(
+ (((userSubscribe?.upload || 0) + (userSubscribe?.download || 0)) /
+ (userSubscribe?.traffic || 1)) *
+ 100,
+ )}
+ >
+ ) : (
+ 0
+ )}
%
@@ -343,7 +351,7 @@ export default function Content() {