fix: public note display

This commit is contained in:
hamster1963 2024-12-17 15:25:35 +08:00
parent 84974f0e78
commit 9afded7e21
3 changed files with 46 additions and 18 deletions

View File

@ -79,9 +79,9 @@ export default function ServerCard({ now, serverInfo }: { now: number; serverInf
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
) : ( ) : (
<> <>
@ -95,9 +95,9 @@ export default function ServerCard({ now, serverInfo }: { now: number; serverInf
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
))} ))}
{parsedData?.planDataMod && ( {parsedData?.planDataMod && (
@ -215,9 +215,9 @@ export default function ServerCard({ now, serverInfo }: { now: number; serverInf
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
) : ( ) : (
<> <>
@ -231,9 +231,9 @@ export default function ServerCard({ now, serverInfo }: { now: number; serverInf
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
))} ))}
{parsedData?.planDataMod && ( {parsedData?.planDataMod && (

View File

@ -93,9 +93,9 @@ export default function ServerCardInline({
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
) : ( ) : (
<> <>
@ -109,9 +109,9 @@ export default function ServerCardInline({
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
))} ))}
{parsedData?.planDataMod && ( {parsedData?.planDataMod && (
@ -254,9 +254,9 @@ export default function ServerCardInline({
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
) : ( ) : (
<> <>
@ -270,9 +270,9 @@ export default function ServerCardInline({
</p> </p>
) : parsedData.billingDataMod.amount === "0" ? ( ) : parsedData.billingDataMod.amount === "0" ? (
<p className={cn("text-[10px] text-green-600 ")}></p> <p className={cn("text-[10px] text-green-600 ")}></p>
) : ( ) : parsedData.billingDataMod.amount === "-1" ? (
<p className={cn("text-[10px] text-pink-600 ")}></p> <p className={cn("text-[10px] text-pink-600 ")}></p>
)} ) : null}
</> </>
))} ))}
{parsedData?.planDataMod && ( {parsedData?.planDataMod && (

View File

@ -138,8 +138,8 @@ interface PlanData {
} }
interface PublicNoteData { interface PublicNoteData {
billingDataMod: BillingData billingDataMod?: BillingData
planDataMod: PlanData planDataMod?: PlanData
} }
export function parsePublicNote(publicNote: string): PublicNoteData | null { export function parsePublicNote(publicNote: string): PublicNoteData | null {
@ -148,6 +148,34 @@ export function parsePublicNote(publicNote: string): PublicNoteData | null {
return null return null
} }
const data = JSON.parse(publicNote) const data = JSON.parse(publicNote)
if (!data.billingDataMod && !data.planDataMod) {
return null
}
if (data.billingDataMod && !data.planDataMod) {
return {
billingDataMod: {
startDate: data.billingDataMod.startDate || "",
endDate: data.billingDataMod.endDate,
autoRenewal: data.billingDataMod.autoRenewal || "",
cycle: data.billingDataMod.cycle || "",
amount: data.billingDataMod.amount || "",
},
}
}
if (!data.billingDataMod && data.planDataMod) {
return {
planDataMod: {
bandwidth: data.planDataMod.bandwidth || "",
trafficVol: data.planDataMod.trafficVol || "",
trafficType: data.planDataMod.trafficType || "",
IPv4: data.planDataMod.IPv4 || "",
IPv6: data.planDataMod.IPv6 || "",
networkRoute: data.planDataMod.networkRoute || "",
extra: data.planDataMod.extra || "",
},
}
}
return { return {
billingDataMod: { billingDataMod: {
startDate: data.billingDataMod.startDate || "", startDate: data.billingDataMod.startDate || "",