mirror of
https://github.com/perfect-panel/ppanel-web.git
synced 2026-02-14 04:11:11 -05:00
✨ feat(subscribe): Add reset_time to API typings and update unsubscribe logic
This commit is contained in:
parent
25ce37ea05
commit
eeea165f7e
@ -1,5 +1,5 @@
|
|||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
|
|
||||||
// API 更新时间:
|
// API 更新时间:
|
||||||
// API 唯一标识:
|
// API 唯一标识:
|
||||||
import * as announcement from './announcement';
|
import * as announcement from './announcement';
|
||||||
|
|||||||
1
apps/admin/services/admin/typings.d.ts
vendored
1
apps/admin/services/admin/typings.d.ts
vendored
@ -1067,6 +1067,7 @@ declare namespace API {
|
|||||||
subscribe: Subscribe;
|
subscribe: Subscribe;
|
||||||
start_time: number;
|
start_time: number;
|
||||||
expire_time: number;
|
expire_time: number;
|
||||||
|
reset_time: number;
|
||||||
traffic: number;
|
traffic: number;
|
||||||
download: number;
|
download: number;
|
||||||
upload: number;
|
upload: number;
|
||||||
|
|||||||
1
apps/admin/services/common/typings.d.ts
vendored
1
apps/admin/services/common/typings.d.ts
vendored
@ -473,6 +473,7 @@ declare namespace API {
|
|||||||
subscribe: Subscribe;
|
subscribe: Subscribe;
|
||||||
start_time: number;
|
start_time: number;
|
||||||
expire_time: number;
|
expire_time: number;
|
||||||
|
reset_time: number;
|
||||||
traffic: number;
|
traffic: number;
|
||||||
download: number;
|
download: number;
|
||||||
upload: number;
|
upload: number;
|
||||||
|
|||||||
@ -171,7 +171,11 @@ export default function Content() {
|
|||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<span className='text-muted-foreground'>{t('nextResetDays')}</span>
|
<span className='text-muted-foreground'>{t('nextResetDays')}</span>
|
||||||
<span className='text-2xl font-semibold'>{t('unknown')}</span>
|
<span className='text-2xl font-semibold'>
|
||||||
|
{item.reset_time
|
||||||
|
? differenceInDays(new Date(item.reset_time), new Date())
|
||||||
|
: t('unknown')}
|
||||||
|
</span>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<span className='text-muted-foreground'>{t('expirationDays')}</span>
|
<span className='text-muted-foreground'>{t('expirationDays')}</span>
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
|
import useGlobalStore from '@/config/use-global';
|
||||||
import { preUnsubscribe, unsubscribe } from '@/services/user/user';
|
import { preUnsubscribe, unsubscribe } from '@/services/user/user';
|
||||||
import { useQuery } from '@tanstack/react-query';
|
import { useQuery } from '@tanstack/react-query';
|
||||||
import { Button } from '@workspace/ui/components/button';
|
import { Button } from '@workspace/ui/components/button';
|
||||||
@ -24,9 +25,12 @@ interface UnsubscribeProps {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function Unsubscribe({ id, allowDeduction }: Readonly<UnsubscribeProps>) {
|
export default function Unsubscribe({ id, allowDeduction }: Readonly<UnsubscribeProps>) {
|
||||||
const [open, setOpen] = useState(false);
|
|
||||||
const router = useRouter();
|
|
||||||
const t = useTranslations('subscribe.unsubscribe');
|
const t = useTranslations('subscribe.unsubscribe');
|
||||||
|
const router = useRouter();
|
||||||
|
const { common } = useGlobalStore();
|
||||||
|
const single_model = common.subscribe.single_model;
|
||||||
|
|
||||||
|
const [open, setOpen] = useState(false);
|
||||||
|
|
||||||
const { data } = useQuery({
|
const { data } = useQuery({
|
||||||
enabled: Boolean(open && id && allowDeduction),
|
enabled: Boolean(open && id && allowDeduction),
|
||||||
@ -53,7 +57,7 @@ export default function Unsubscribe({ id, allowDeduction }: Readonly<Unsubscribe
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!allowDeduction) return null;
|
if (!single_model && !allowDeduction) return null;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Dialog open={open} onOpenChange={setOpen}>
|
<Dialog open={open} onOpenChange={setOpen}>
|
||||||
|
|||||||
1
apps/user/services/common/typings.d.ts
vendored
1
apps/user/services/common/typings.d.ts
vendored
@ -473,6 +473,7 @@ declare namespace API {
|
|||||||
subscribe: Subscribe;
|
subscribe: Subscribe;
|
||||||
start_time: number;
|
start_time: number;
|
||||||
expire_time: number;
|
expire_time: number;
|
||||||
|
reset_time: number;
|
||||||
traffic: number;
|
traffic: number;
|
||||||
download: number;
|
download: number;
|
||||||
upload: number;
|
upload: number;
|
||||||
|
|||||||
1
apps/user/services/user/typings.d.ts
vendored
1
apps/user/services/user/typings.d.ts
vendored
@ -654,6 +654,7 @@ declare namespace API {
|
|||||||
subscribe: Subscribe;
|
subscribe: Subscribe;
|
||||||
start_time: number;
|
start_time: number;
|
||||||
expire_time: number;
|
expire_time: number;
|
||||||
|
reset_time: number;
|
||||||
traffic: number;
|
traffic: number;
|
||||||
download: number;
|
download: number;
|
||||||
upload: number;
|
upload: number;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user