feat: 申请加入、退款政策、支付倒计时、详情页发布者信息展示

This commit is contained in:
2025-11-24 15:17:37 +08:00
parent 23fba49741
commit 6e03de0259
9 changed files with 642 additions and 145 deletions

View File

@@ -17,7 +17,11 @@ import { withAuth, RefundPopup, GeneralNavbar } from "@/components";
import { payOrder, generateOrderActions } from "@/utils";
import emptyContent from "@/static/emptyStatus/publish-empty.png";
import CustomerIcon from "@/static/order/customer.svg";
import { insertDotInTags, genNTRPRequirementText, requireLoginWithPhone } from "@/utils/helper";
import {
insertDotInTags,
genNTRPRequirementText,
requireLoginWithPhone,
} from "@/utils/helper";
import styles from "./index.module.scss";
dayjs.locale("zh-cn");
@@ -115,7 +119,7 @@ const OrderList = () => {
if (!requireLoginWithPhone()) {
return; // 未登录或未绑定手机号,已跳转到登录页
}
try {
const unPaidRes = await orderService.getUnpaidOrder(item.game_info?.id);
if (unPaidRes.code === 0 && unPaidRes.data.has_unpaid_order) {
@@ -306,6 +310,12 @@ const OrderList = () => {
court_type,
} = game_info || {};
const diffMs = dayjs(item.expire_time).diff();
const mm = String(Math.floor(diffMs / 1000 / 60)).padStart(2, "0");
const ss = String(Math.floor((diffMs / 1000) % 60)).padStart(2, "0");
const timeLeft = `${mm}:${ss}`;
return (
<View key={item.id} className={styles.orderItem}>
<View
@@ -412,6 +422,20 @@ const OrderList = () => {
))}
</View>
</View>
{unPay && diffMs > 0 && (
<View className={styles.payTipContainer}>
<View className={styles.payTip}>
{current_players > 0 ? (
<Text>{`已有${current_players}人参加, `}</Text>
) : (
""
)}
<Text></Text>
<Text className={styles.timeLeft}>{timeLeft}</Text>
<Text></Text>
</View>
</View>
)}
</View>
);
})}