优化
This commit is contained in:
@@ -1,9 +1,8 @@
|
||||
import type { Amount, ProcurementCreate, ProcurementFee } from './api/procurement'
|
||||
|
||||
export const procurementStatuses: Record<string, string> = {
|
||||
PENDING_REVIEW: '待审核', WAIT_PURCHASE: '待购买', WAIT_OVERSEAS_RECEIPT: '待海外到仓', OVERSEAS_RECEIVING: '海外收货中',
|
||||
WAIT_PACKING: '待装箱', WAIT_LABELS: '待面单及预估处理', WAIT_OVERSEAS_SHIPMENT: '待海外交寄', INTERNATIONAL_TRANSIT: '国际运输中',
|
||||
DOMESTIC_RECEIVING: '国内收货中', WAIT_CHARGES: '待国内核费', WAIT_CUSTOMER_SHIPMENT: '待寄客户', SHIPPED_TO_CUSTOMER: '已寄客户',
|
||||
PENDING_REVIEW: '待审核', RECEIVING: '收货中', WAIT_CUSTOMER_CONFIRM: '待客户确认', CONFIRMED: '已确认',
|
||||
IN_TRANSIT: '运输中', DELIVERING: '派送中', COMPLETED: '签收完成',
|
||||
REJECTED: '已拒绝', CANCELLED: '已取消', EXCEPTION_CLOSED: '异常关闭',
|
||||
}
|
||||
export const feePurposes: Record<string, string> = {
|
||||
@@ -12,10 +11,10 @@ export const feePurposes: Record<string, string> = {
|
||||
}
|
||||
export function statusLabel(status: string | null | undefined, direction?: string | null) { return regionText(status ? procurementStatuses[status] || '待核对进度' : '—', direction) }
|
||||
export function statusTone(status: string | null | undefined): 'success' | 'warning' | 'danger' | 'info' | 'primary' {
|
||||
if (status === 'SHIPPED_TO_CUSTOMER') return 'success'
|
||||
if (status === 'COMPLETED' || status === 'CONFIRMED') return 'success'
|
||||
if (status === 'REJECTED' || status === 'EXCEPTION_CLOSED') return 'danger'
|
||||
if (status === 'CANCELLED') return 'info'
|
||||
if (status === 'INTERNATIONAL_TRANSIT') return 'primary'
|
||||
if (status === 'IN_TRANSIT' || status === 'DELIVERING') return 'primary'
|
||||
return 'warning'
|
||||
}
|
||||
function cents(value: Amount | null | undefined): bigint | null {
|
||||
@@ -46,6 +45,12 @@ export function productHref(value: string | null | undefined) {
|
||||
try { const url = new URL(value); return ['http:', 'https:'].includes(url.protocol) ? url.href : undefined } catch { return undefined }
|
||||
}
|
||||
export function feeStatus(fee: ProcurementFee) {
|
||||
if (fee.walletStatus === 'NOT_REQUIRED') {
|
||||
if (fee.determination === 'PENDING') return '账单结算 · 待审核'
|
||||
if (fee.determination === 'APPROVED') return '账单结算 · 已确认'
|
||||
if (fee.determination === 'REJECTED') return '账单结算 · 已拒绝'
|
||||
return '账单结算'
|
||||
}
|
||||
if (fee.purpose === 'INTERNATIONAL_ESTIMATE') {
|
||||
const label: Record<string, string> = { FROZEN: '已冻结,未扣款', ZERO: '零预估已确认', SETTLED: '原预估已结清', RELEASED: '预估已释放' }
|
||||
if (fee.walletStatus && label[fee.walletStatus]) return label[fee.walletStatus]
|
||||
@@ -58,6 +63,8 @@ export function feeStatus(fee: ProcurementFee) {
|
||||
return fee.walletStatus ? labels[fee.walletStatus] || '待核定' : '待核定'
|
||||
}
|
||||
export function feeTone(fee: ProcurementFee): 'success' | 'warning' | 'danger' | 'info' {
|
||||
if (fee.determination === 'REJECTED') return 'danger'
|
||||
if (fee.walletStatus === 'NOT_REQUIRED' && fee.determination === 'APPROVED') return 'info'
|
||||
if (fee.walletStatus?.endsWith('_FAILED')) return 'danger'
|
||||
if (['SETTLED', 'REFUNDED', 'ZERO', 'NOT_APPLICABLE', 'RELEASED'].includes(fee.walletStatus || '')) return 'success'
|
||||
if (fee.walletStatus === 'TERMINATED') return 'info'
|
||||
|
||||
Reference in New Issue
Block a user