diff --git a/src/pages/trade/order/detail/component/info/basic-info.tsx b/src/pages/trade/order/detail/component/info/basic-info.tsx
index 735d5bd..0526171 100644
--- a/src/pages/trade/order/detail/component/info/basic-info.tsx
+++ b/src/pages/trade/order/detail/component/info/basic-info.tsx
@@ -1,87 +1,192 @@
import { ProCard } from '@ant-design/pro-components';
-import { Button, Card, Steps, Typography } from 'antd';
+import { Avatar, Button, Card, Empty, Space, Steps, Typography } from 'antd';
+import dayjs from 'dayjs';
import RcResizeObserver from 'rc-resize-observer';
-import React, { useCallback, useState } from 'react';
+import React, { useCallback, useEffect, useMemo, useState } from 'react';
+import { OrderStatus, OrderStatusLabels } from '@/constants/trade';
+import type { TradeOrderBaseInfo } from '@/services/trade/order';
+import { type BtnType, renderBaseInfoOrder } from './config';
import styles from './index.module.less';
const { Title, Text } = Typography;
-const BasicInfo: React.FC = () => {
+const BasicInfo: React.FC<{ data?: TradeOrderBaseInfo; id: number }> = (
+ props,
+) => {
+ const { data } = props;
+ const [orderStatus, setOrderStatus] = useState
(0);
+
+ useEffect(() => {
+ if (data) {
+ setOrderStatus(Number(data.orderStatus));
+ }
+ }, [data]);
+
const [responsive, setResponsive] = useState(false);
const renderTitle = useCallback(() => {
- return 标题
;
- }, []);
+ return (
+
+
+ 订单编号:
+ {data?.orderNo}
+
+
+ 订单类目:
+ {data?.orderCategoryId}
+ ID:
+ {data?.id}
+
+
+ 订单来源:
+ {data?.orderCategoryName}
+
+
+
+ );
+ }, [data]);
+
+ const handleClick = useCallback(
+ (type: BtnType) => {
+ if (type === 'confirm') {
+ //还未完成的按钮事件
+ console.log(data?.orderStatus);
+ } else if (type === 'sales') {
+ //新建售后事件
+ }
+ console.log(type);
+ },
+ [data],
+ );
+ const renderOrderStatus = useMemo(() => {
+ if (data) return renderBaseInfoOrder(data, handleClick);
+ }, [data]);
+
return (
-
-
-
-
- 等待付款
-
-
- 剩余
- 4分30秒
-
-
-
-
-
+ {data ? (
+
+
+
+ {renderOrderStatus}
+
+
+
+ {
+ setResponsive(offset.width < 460);
+ }}
+ >
+
+ {dayjs(data.createTime).format('YYYY-MM-DD')}
+ {dayjs(data.createTime).format('HH:mm:ss')}
+
+ ),
+ },
+ {
+ title: `${
+ OrderStatusLabels[OrderStatus.PendingPayment].label
+ } ${
+ orderStatus > OrderStatus.PendingPayment
+ ? '(已付款)'
+ : ''
+ }`,
+ description: (
+
+ {dayjs(data.createTime).format('YYYY-MM-DD')}
+ {dayjs(data.createTime).format('HH:mm:ss')}
+
+ ),
+ },
+ {
+ title: `${
+ OrderStatusLabels[OrderStatus.PendingConfirmation].label
+ } ${
+ orderStatus > OrderStatus.PendingConfirmation
+ ? '(已确定)'
+ : ''
+ }`,
+ description: (
+
+ {/* {dayjs(data.finishTime).format("YYYY-MM-DD")}
+ {dayjs(data.finishTime).format("HH:mm:ss")} */}
+
+ ),
+ },
+ {
+ title: `${
+ OrderStatusLabels[OrderStatus.PendingService].label
+ } ${
+ orderStatus > OrderStatus.PendingService
+ ? '(已开始)'
+ : ''
+ }`,
+ description: (
+
+ {/* {dayjs(data.finishTime).format("YYYY-MM-DD")}
+ {dayjs(data.finishTime).format("HH:mm:ss")} */}
+
+ ),
+ },
+ {
+ title: `${
+ OrderStatusLabels[OrderStatus.PendingAcceptance].label
+ } ${
+ orderStatus > OrderStatus.PendingAcceptance
+ ? '(已验收)'
+ : ''
+ }`,
+ description: (
+
+ {/* {dayjs(data.finishTime).format("YYYY-MM-DD")}
+ {dayjs(data.finishTime).format("HH:mm:ss")} */}
+
+ ),
+ },
+ {
+ title: '完成',
+ description: (
+
+ {dayjs(data.finishTime).format('YYYY-MM-DD')}
+ {dayjs(data.finishTime).format('HH:mm:ss')}
+
+ ),
+ },
+ ]}
+ />
+
+
-
- {
- setResponsive(offset.width < 460);
- }}
- >
-
-
-
-
+ ) : (
+
+ )}
);
diff --git a/src/pages/trade/order/detail/component/info/config.tsx b/src/pages/trade/order/detail/component/info/config.tsx
index 8346504..f492534 100644
--- a/src/pages/trade/order/detail/component/info/config.tsx
+++ b/src/pages/trade/order/detail/component/info/config.tsx
@@ -1,6 +1,17 @@
import type { ProColumns } from '@ant-design/pro-components';
-import { Tag } from 'antd';
+import { Button, Tag, Typography } from 'antd';
+import type { BaseType } from 'antd/es/typography/Base';
+import dayjs from 'dayjs';
+import { dateFormat } from '@/constants';
+import {
+ OrderBtnLableMap,
+ OrderStatus,
+ OrderStatusLabels,
+} from '@/constants/trade';
import type { DeptVO } from '@/services/system/dept';
+import type { TradeOrderBaseInfo } from '@/services/trade/order';
+
+const { Title, Text, Paragraph } = Typography;
export const baseOrderColumns: ProColumns[] = [
{
@@ -62,3 +73,100 @@ export const surchargeInfoColumns: ProColumns[] = [
onCell: sharedOnCell,
},
];
+
+export type BtnType = 'sales' | 'confirm';
+
+export const renderBaseInfoOrder = (
+ data: TradeOrderBaseInfo,
+ handleClick: (type: BtnType) => void,
+): React.ReactNode => {
+ const orderStatusObj =
+ OrderStatusLabels[data.orderStatus as unknown as OrderStatus];
+
+ console.log(orderStatusObj, data);
+ return (
+ <>
+
+ {data?.orderStatus && orderStatusObj.label}
+
+
+ 剩余
+ 4分30秒
+
+ {data.orderStatus &&
+ Number(data.orderStatus) === OrderStatus.Refunded && (
+
+ 退款时间:
+ 退款时间
+
+ )}
+ {data.orderStatus &&
+ (Number(data.orderStatus) === OrderStatus.Completed ||
+ Number(data.orderStatus) === OrderStatus.Refunded) && (
+
+ 服务完成时间:
+ {dayjs(data.finishTime).format(dateFormat)}
+
+ )}
+ {data.orderStatus &&
+ Number(data.orderStatus) === OrderStatus.Completed && (
+
+ 售后保障期:
+
+ 未过期
+
+
+ 已过期
+
+ {data.propertyTime}
+
+ )}
+ {/* 取消 */}
+ {data.orderStatus &&
+ Number(data.orderStatus) === OrderStatus.Cancelled && (
+ <>
+
+ 取消时间:
+ 取消时间
+
+
+ 取消原因:
+ {data.cancelReason}
+
+
+ 备注:
+ {data?.merchantRemark}
+
+ >
+ )}
+ {data.orderStatus &&
+ Number(data.orderStatus) <= OrderStatus.PendingAcceptance && (
+
+ )}
+ {data.orderStatus &&
+ Number(data.orderStatus) <= OrderStatus.Completed && (
+
+ )}
+ >
+ );
+};
diff --git a/src/pages/trade/order/detail/component/info/index.module.less b/src/pages/trade/order/detail/component/info/index.module.less
index 59e936a..593e576 100644
--- a/src/pages/trade/order/detail/component/info/index.module.less
+++ b/src/pages/trade/order/detail/component/info/index.module.less
@@ -21,5 +21,14 @@
.ant-pro-card-body {
padding: 0px;
}
+ .ant-steps-item-icon {
+ height: 8px !important;
+ line-height: 8px !important;
+ }
+ .ant-steps-item-active {
+ .ant-steps-icon-dot {
+ height: 10px !important;
+ }
+ }
}
}
diff --git a/src/pages/trade/order/detail/component/info/prod-info.tsx b/src/pages/trade/order/detail/component/info/prod-info.tsx
index e2fa080..a4cb876 100644
--- a/src/pages/trade/order/detail/component/info/prod-info.tsx
+++ b/src/pages/trade/order/detail/component/info/prod-info.tsx
@@ -1,10 +1,13 @@
import { ProCard } from '@ant-design/pro-components';
import { Button, Card, Image, Space, Tag, Typography } from 'antd';
import React, { useCallback } from 'react';
+import type { TradeProductInfo } from '@/services/trade/order';
+
import styles from './index.module.less';
const { Text, Paragraph } = Typography;
-const ProdInfo: React.FC = () => {
+const ProdInfo: React.FC<{ data?: TradeProductInfo; id: number }> = (props) => {
+ const { data = {}, id } = props;
const renderTitle = useCallback(() => {
return (
diff --git a/src/pages/trade/order/detail/component/info/select-info.tsx b/src/pages/trade/order/detail/component/info/select-info.tsx
index 2041349..350381d 100644
--- a/src/pages/trade/order/detail/component/info/select-info.tsx
+++ b/src/pages/trade/order/detail/component/info/select-info.tsx
@@ -7,10 +7,14 @@ import {
type DeptVO,
getDeptPage,
} from '@/services/system/dept';
+import type { TradeExtendCostInfo } from '@/services/trade/order';
import { baseOrderColumns } from '../../../config';
import styles from './index.module.less';
-const SelectInfo: React.FC = () => {
+const SelectInfo: React.FC<{ data?: TradeExtendCostInfo; id: number }> = (
+ props,
+) => {
+ const { data = {}, id } = props;
const onFetch = async (
params: DeptReqVO & {
pageSize?: number;
diff --git a/src/pages/trade/order/detail/component/info/service-info.tsx b/src/pages/trade/order/detail/component/info/service-info.tsx
index 93b2280..e68d9a7 100644
--- a/src/pages/trade/order/detail/component/info/service-info.tsx
+++ b/src/pages/trade/order/detail/component/info/service-info.tsx
@@ -1,10 +1,14 @@
import { ProCard } from '@ant-design/pro-components';
import { Button, Card, Image, Space, Typography } from 'antd';
import React from 'react';
+import type { TradeServeInfo } from '@/services/trade/order';
import styles from './index.module.less';
const { Text, Paragraph } = Typography;
-const ServiceInfo: React.FC = () => {
+const ServiceInfo: React.FC<{ data?: TradeServeInfo; id: number }> = (
+ props,
+) => {
+ const { data = {}, id } = props;
return (
diff --git a/src/pages/trade/order/detail/component/info/surcharge-info.tsx b/src/pages/trade/order/detail/component/info/surcharge-info.tsx
index ca2c478..9e9a341 100644
--- a/src/pages/trade/order/detail/component/info/surcharge-info.tsx
+++ b/src/pages/trade/order/detail/component/info/surcharge-info.tsx
@@ -6,10 +6,14 @@ import {
type DeptVO,
getDeptPage,
} from '@/services/system/dept';
+import type { TradeExtendServeInfo } from '@/services/trade/order';
import { surchargeInfoColumns } from './config';
import styles from './index.module.less';
-const SurchargeInfo: React.FC = () => {
+const SurchargeInfo: React.FC<{ data?: TradeExtendServeInfo; id: number }> = (
+ props,
+) => {
+ const { data, id } = props;
const onFetch = async (
params: DeptReqVO & {
pageSize?: number;
diff --git a/src/pages/trade/order/detail/index.tsx b/src/pages/trade/order/detail/index.tsx
index c593dad..56b2b2b 100644
--- a/src/pages/trade/order/detail/index.tsx
+++ b/src/pages/trade/order/detail/index.tsx
@@ -1,13 +1,14 @@
import { Tabs, type TabsProps } from 'antd';
import React from 'react';
+import type { TradeOrderPageRespVO } from '@/services/trade/order';
import OrderInfo from './order-info';
-const DetailCom: React.FC = () => {
+const DetailCom: React.FC<{ data?: TradeOrderPageRespVO }> = (props) => {
const items: TabsProps['items'] = [
{
key: '1',
label: '订单信息 ',
- children: ,
+ children: ,
},
{
key: '2',
diff --git a/src/pages/trade/order/detail/order-info.tsx b/src/pages/trade/order/detail/order-info.tsx
index 6018640..2333b1f 100644
--- a/src/pages/trade/order/detail/order-info.tsx
+++ b/src/pages/trade/order/detail/order-info.tsx
@@ -1,19 +1,36 @@
import { Space } from 'antd';
-import React from 'react';
+import React, { useCallback, useEffect, useState } from 'react';
+import {
+ getTradeOrderDetail,
+ type TradeOrderDetailRespVO,
+} from '@/services/trade/order';
import BasicInfo from './component/info/basic-info'; //基本信息(通版)
import ProdInfo from './component/info/prod-info'; //商品信息(通版)
import SelectInfo from './component/info/select-info'; //可选服务(殡葬专属字段)
import ServiceInfo from './component/info/service-info';
import SurchargeInfo from './component/info/surcharge-info'; //服务附加费(殡葬专属字段)
-const OrderDetail: React.FC = () => {
+const OrderDetail: React.FC<{ data?: TradeOrderDetailRespVO }> = (props) => {
+ const { data } = props;
+ const [detais, setDetails] = useState();
+
+ const fetch = useCallback(async () => {
+ if (data?.id) {
+ const res = await getTradeOrderDetail(data.id);
+ setDetails(res);
+ }
+ }, [data]);
+ useEffect(() => {
+ fetch();
+ }, [data]);
+
return (
-
-
-
-
-
+
+
+
+
+
);
};
diff --git a/src/pages/trade/order/index.tsx b/src/pages/trade/order/index.tsx
index 5b8a41a..a259190 100644
--- a/src/pages/trade/order/index.tsx
+++ b/src/pages/trade/order/index.tsx
@@ -1,35 +1,26 @@
import type { TabsProps } from 'antd';
import { Tabs } from 'antd';
import React from 'react';
+import { OrderStatusLabels } from '@/constants/trade';
import styles from './index.module.less';
import OrderListItem from './list';
-const onChange = (key: string) => {
- console.log(key);
-};
-
-const status: string[] = [
- '所有订单',
- '等待付款',
- '等待确定',
- '等待服务',
- '等待验收',
- '等待评价',
- '已完成',
- '已取消',
- '已退款',
-];
+// const onChange = (key: string) => {
+// console.log(key);
+// };
const OrderList: React.FC = () => {
- const items: TabsProps['items'] = status.map((item, index) => ({
- key: `${index + 1}`,
- label: item,
- children: ,
- }));
+ const items: TabsProps['items'] = Object.entries(OrderStatusLabels).map(
+ ([value, list]) => ({
+ key: value,
+ label: list.label,
+ children: ,
+ }),
+ );
return (
-
+
);
};
diff --git a/src/pages/trade/order/list.tsx b/src/pages/trade/order/list.tsx
index 12418cb..b310482 100644
--- a/src/pages/trade/order/list.tsx
+++ b/src/pages/trade/order/list.tsx
@@ -12,6 +12,7 @@ import {
message,
Space,
Statistic,
+ Typography,
} from 'antd';
import React, { useCallback, useRef, useState } from 'react';
import ConfigurableDrawerForm, {
@@ -22,10 +23,17 @@ import { baseOrderColumns } from './config';
const { Search } = Input;
+const { Text } = Typography;
+
import { DownOutlined, UpOutlined, UserOutlined } from '@ant-design/icons';
import PopconfirmForm, {
type PopconfirmFormRef,
} from '@/components/PopconfirmForm';
+import {
+ mapOrderStatusToBadgeStatus,
+ type OrderStatus,
+ OrderStatusLabels,
+} from '@/constants/trade';
import {
getTradeOrderPage,
type TradeOrderPageRespVO,
@@ -33,10 +41,11 @@ import {
} from '@/services/trade/order';
import DetailCom from './detail';
-const OrderListItem: React.FC = () => {
+const OrderListItem: React.FC<{ orderStatus: number }> = (props) => {
+ const { orderStatus } = props;
const tableRef = useRef(null);
const configurableDrawerRef = useRef(null);
- const [modalTitle, setModalTitle] = useState('订单:BZ000548787');
+ const [modalData, setModalData] = useState();
const [isShowTotal, setIsShowTotal] = useState(false);
const popconfirmFormRef = useRef(null);
const onFetch = async (
@@ -47,6 +56,7 @@ const OrderListItem: React.FC = () => {
) => {
const data = await getTradeOrderPage({
...params,
+ orderStatus,
pageNo: params.current,
pageSize: params.pageSize,
});
@@ -59,7 +69,7 @@ const OrderListItem: React.FC = () => {
};
const handleDetail = useCallback((record: TradeOrderPageRespVO) => {
- setModalTitle(`订单:${record.orderNum}`);
+ setModalData(record);
configurableDrawerRef.current?.open();
}, []);
@@ -97,6 +107,12 @@ const OrderListItem: React.FC = () => {
handleOrder(record.id)}>
取消订单
+ handleOrder(record.id)}>
+ 开始服务
+
+ handleOrder(record.id)}>
+ 新建售后
+
handleDetail(record)}>
订单详情
@@ -138,7 +154,7 @@ const OrderListItem: React.FC = () => {
const { children, ...restProps } = props;
const record = props['data-record']
? JSON.parse(props['data-record'])
- : {};
+ : undefined;
return (
<>
{record && (
@@ -148,18 +164,22 @@ const OrderListItem: React.FC = () => {
style={{
padding: '0px 8px',
borderBottom: '1px solid #f0f0f0',
- fontSize: '12px',
color: '#666',
}}
>
-
-
-
+
+
{record.orderCategoryName}
{record.createTime}
@@ -188,6 +208,13 @@ const OrderListItem: React.FC = () => {
);
},
},
+ header: {
+ cell: (props: any) => {
+ const { children, ...restProps } = props;
+ console.log(restProps, children);
+ return {children} | ;
+ },
+ },
};
const columns = [...baseOrderColumns, actionColumns];
@@ -201,7 +228,14 @@ const OrderListItem: React.FC = () => {
}, []);
return (
<>
-
+
{
{isShowTotal && (
-
+
@@ -243,14 +277,14 @@ const OrderListItem: React.FC = () => {
关闭}
>
-
+
>
);
diff --git a/src/services/trade/order/index.ts b/src/services/trade/order/index.ts
index 515d9e4..d5a3bc2 100644
--- a/src/services/trade/order/index.ts
+++ b/src/services/trade/order/index.ts
@@ -158,86 +158,14 @@ export interface TradeOrderPageRespVO {
* TradeOrderDetailRespVO
*/
export interface TradeOrderDetailRespVO {
- /**
- * 购买的商品数量
- */
- count?: number;
- /**
- * 下单时间 - 必填
- */
- createTime?: string;
- /**
- * 财务状态
- */
- financeStatus?: string;
- /**
- * 到手价
- */
- handedPrice?: number;
- /**
- * 订单编号 - 必填,示例:1024
- */
- id?: number;
- /**
- * 订单类目
- */
- orderCategoryName?: string;
- /**
- * 订单流水号 - 必填,示例:1146347329394184195
- */
- orderNum?: string;
- /**
- * 订单状态
- */
- orderStatus?: number;
- /**
- * 订单来源
- */
- orderTerminal?: number;
- /**
- * 预约时间
- */
- orderTime?: string;
- /**
- * 应付金额(总) - 必填,示例:1000
- */
- payPrice?: number;
- /**
- * 支付方式
- */
- payType?: string;
- /**
- * 商品图片
- */
- picUrl?: string;
- /**
- * 单价
- */
- price?: number;
- /**
- * 服务地址
- */
- serveAddress?: string;
- /**
- * 商品规格
- */
- skuName?: string;
- /**
- * 商品名称
- */
- spuName?: string;
- /**
- * 配送信息
- */
- tradeDeliveryInfo?: TradeDeliveryInfo;
/**
* 附加费信息
*/
- tradeExtendCostInfo?: string;
+ tradeExtendCostInfo?: TradeExtendCostInfo;
/**
* 扩展服务信息
*/
- tradeExtendServeInfo?: string;
+ tradeExtendServeInfo?: TradeExtendServeInfo;
/**
* 基本信息
*/
@@ -245,71 +173,48 @@ export interface TradeOrderDetailRespVO {
/**
* 商品信息
*/
- tradeProductInfo?: string;
+ tradeProductInfo?: TradeProductInfo;
/**
- * 单位
+ * 服务信息
*/
- unit?: string;
- /**
- * 用户头像
- */
- userAvatar?: string;
- /**
- * 用户编号 - 必填,示例:2048
- */
- userId?: number;
- /**
- * 用户手机号
- */
- userMobile?: string;
- /**
- * 用户姓名
- */
- userName?: string;
- /**
- * 用户昵称
- */
- userNickName?: string;
- /**
- * 用户备注 - 必填,示例:你猜
- */
- userRemark?: string;
+ tradeServeInfo?: TradeServeInfo;
+ [property: string]: any;
}
/**
- * 配送信息
+ * 附加费信息
*
- * TradeDeliveryInfo
+ * TradeExtendCostInfo
*/
-export interface TradeDeliveryInfo {
+export interface TradeExtendCostInfo {
/**
- * 快递详情
+ * 内部存储动态属性的 Map,键为属性名称,值为属性值
*/
- deliveryDetail?: string;
+ properties?: MapObject;
+ [property: string]: any;
+}
+
+/**
+ * 内部存储动态属性的 Map,键为属性名称,值为属性值
+ *
+ * MapObject
+ */
+export interface MapObject {
+ key?: { [key: string]: any };
+ [property: string]: any;
+}
+
+/**
+ * 扩展服务信息
+ *
+ * TradeExtendServeInfo
+ */
+export interface TradeExtendServeInfo {
/**
- * 承运方
+ * 内部存储动态属性的 Map,键为属性名称,值为属性值
*/
- logisticsName?: string;
- /**
- * 送货上门
- */
- logisticsNum?: string;
- /**
- * 送货方式
- */
- logisticsType?: string;
- /**
- * 收货地址
- */
- receiverDetailAddress?: string;
- /**
- * 收货手机
- */
- receiverMobile?: string;
- /**
- * 收货人
- */
- receiverName?: string;
+ properties?: MapObject;
+ [property: string]: any;
}
/**
@@ -319,37 +224,13 @@ export interface TradeDeliveryInfo {
*/
export interface TradeOrderBaseInfo {
/**
- * 实收金额
+ * 取消原因
*/
- actualPrice?: string;
- /**
- * 售后编号 - 必填,示例:450878
- */
- afterSaleCode?: string;
- /**
- * 售后类型 - 必填,示例:仅退款/退货退款/可扩展增加使用
- */
- afterSaleType?: string;
- /**
- * 申请人 - 必填,示例:用户/商家/平台+ID
- */
- applicant?: string;
- /**
- * 审核人 - 必填,示例:姓名+ID
- */
- auditor?: string;
- /**
- * 审核时间 - 必填,示例:2025-07-01 12:00:00
- */
- auditTime?: string;
+ cancelReason?: string;
/**
* 取消时间
*/
cancelTime?: string;
- /**
- * 关闭时间 - 必填,示例:2025-07-01 12:00:00
- */
- closeTime?: string;
/**
* 创建时间
*/
@@ -366,6 +247,19 @@ export interface TradeOrderBaseInfo {
* 订单id
*/
id?: string;
+ /**
+ * 实收金额
+ */
+ livePrice?: string;
+ /**
+ * 商家备注
+ */
+ merchantRemark?: string;
+ /**
+ * 订单类目
+ */
+ orderCategoryId?: string;
+ orderCategoryName?: string;
/**
* 订单编号
*/
@@ -383,9 +277,9 @@ export interface TradeOrderBaseInfo {
*/
orderType?: string;
/**
- * 支付方式
+ * 支付渠道 (线上线下)
*/
- payChannel?: string;
+ payChannelCode?: string;
/**
* 交易流水号
*/
@@ -393,70 +287,139 @@ export interface TradeOrderBaseInfo {
/**
* 订单金额
*/
- payPrice?: string;
+ payPrice?: number;
/**
* 支付时间
*/
payTime?: string;
/**
- * 退款金额 - 必填
+ * 支付方式(支付宝微信)
*/
- refundAmount?: number;
+ payType?: string;
/**
- * 退款方式 - 必填,示例:系统自动退款
+ * 订单总价
*/
- refundMethod?: string;
+ price?: string;
+ /**
+ * 保障状态
+ */
+ propertyStatus?: string;
+ /**
+ * 保障时间
+ */
+ propertyTime?: string;
/**
* 退款金额
*/
refundPrice?: string;
/**
- * 退款原因 - 必填,示例:不想要了
+ * 退款时间
*/
- refundReason?: string;
+ refundTime?: string;
/**
- * 退款说明 - 必填,示例:这里是用户填写的退款描述
+ * 用户信息
*/
- refundRemark?: string;
- /**
- * 退款状态 - 必填,示例:待审核/待退款/已退款/已拒绝
- */
- refundStatus?: string;
- /**
- * 退款至 - 必填,示例:原支付方式返还
- */
- refundTo?: string;
- /**
- * 退款类型 - 必填,示例:订单退款/差价退款/运费退款/可扩展增加
- */
- refundType?: string;
- /**
- * 用户ID 示例:666
- */
- userId?: number;
- /**
- * 用户昵称 示例:钱多多
- */
- userNickname?: string;
+ userInfo?: string;
+ userAvatar?: string;
}
-// /**
-// * CommonResultTradeOrderDetailRespVO
-// */
-// export interface ApifoxModel {
-// /**
-// * 错误码
-// */
-// code?: number;
-// /**
-// * 返回数据
-// */
-// data?: TradeOrderDetailRespVO;
-// /**
-// * 错误提示,用户可阅读
-// */
-// msg?: string;
-// }
+/**
+ * 商品信息
+ *
+ * TradeProductInfo
+ */
+export interface TradeProductInfo {
+ /**
+ * 购买数量
+ */
+ count?: number;
+ /**
+ * 优惠金额
+ */
+ discountPrice?: number;
+ /**
+ * 成本价
+ */
+ expensePrice?: number;
+ /**
+ * 到手价(单价 - 优惠)
+ */
+ handedPrice?: number;
+ /**
+ * 实付金额
+ */
+ payPrice?: number;
+ /**
+ * 商品单价
+ */
+ price?: number;
+ /**
+ * 保障
+ */
+ properties?: string[];
+ /**
+ * 累计退款数量
+ */
+ refundCount?: number;
+ /**
+ * 累计退款金额
+ */
+ refundPrice?: number;
+ /**
+ * 服务内容
+ */
+ serveContent?: string;
+ /**
+ * 店铺log
+ */
+ shopLogoUrl?: string;
+ /**
+ * 店铺名称
+ */
+ shopName?: string;
+ /**
+ * skuid
+ */
+ skuId?: number;
+ /**
+ * 商品规格
+ */
+ skuName?: string;
+ /**
+ * 商品规格图
+ */
+ skuPicUrl?: string;
+ /**
+ * 商品id
+ */
+ spuId?: number;
+ /**
+ * 商品名称
+ */
+ spuName?: string;
+ /**
+ * 商品总价
+ */
+ totalPrice?: number;
+ /**
+ * 商品单位
+ */
+ unit?: string;
+ [property: string]: any;
+}
+
+/**
+ * 服务信息
+ *
+ * TradeServeInfo
+ */
+export interface TradeServeInfo {
+ /**
+ * 内部存储动态属性的 Map,键为属性名称,值为属性值
+ */
+ properties?: MapObject;
+ [property: string]: any;
+}
export const getTradeOrderPage = async (params: TradeReq) => {
return request>("/trade/order/page", {