Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
admin
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
admin
Commits
0fa78a51
提交
0fa78a51
authored
9月 09, 2023
作者:
龚洪江
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
功能:商城订单列表联调
上级
6e8c5d9f
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
17 个修改的文件
包含
810 行增加
和
250 行删除
+810
-250
orderManageType.ts
src/api/interface/orderManageType.ts
+328
-1
orderManage.ts
src/api/modules/orderManage.ts
+22
-0
index.tsx
src/pages/depleteManage/withDrawList/index.tsx
+4
-0
index.tsx
...ge/productOrder/orderDetail/comp/detailDelivery/index.tsx
+75
-40
index.scss
...roductOrder/orderDetail/comp/detailInformation/index.scss
+25
-0
index.tsx
...productOrder/orderDetail/comp/detailInformation/index.tsx
+56
-48
index.tsx
...e/productOrder/orderDetail/comp/detailPurchaser/index.tsx
+47
-50
index.tsx
...roductOrder/orderDetail/comp/logisticsStepModal/index.tsx
+26
-0
index.scss
src/pages/orderManage/productOrder/orderDetail/index.scss
+1
-18
index.tsx
src/pages/orderManage/productOrder/orderDetail/index.tsx
+11
-36
index.tsx
...uctOrder/orderList/components/distributionOrder/index.tsx
+0
-27
index.tsx
...e/productOrder/orderList/components/remarkModal/index.tsx
+49
-0
index.tsx
...roductOrder/orderList/components/shipmentsOrder/index.tsx
+85
-23
index.scss
src/pages/orderManage/productOrder/orderList/index.scss
+48
-0
index.tsx
src/pages/orderManage/productOrder/orderList/index.tsx
+0
-0
router.tsx
src/router/router.tsx
+31
-5
router.ts
src/utils/router.ts
+2
-2
没有找到文件。
src/api/interface/orderManageType.ts
浏览文件 @
0fa78a51
...
...
@@ -192,7 +192,7 @@ export type orderDetailType = InterFunction<
actualRefund
:
number
;
createTime
:
string
;
id
:
number
;
orderInfo
:
{}
;
orderInfo
:
any
;
orderInfoId
:
number
;
orderVcu
:
{
id
:
number
;
...
...
@@ -339,6 +339,20 @@ export type listExpressInfoType = InterFunction<
exCode
:
string
;
}[]
>
;
// 物流动态信息
export
type
logisticsDynamicsType
=
InterFunction
<
{
/**
* exCode
*/
exCode
:
string
;
/**
* exNo
*/
exNo
:
string
;
},
any
>
;
// web/小程序 确认收货-订单
export
type
renterTakeOrderType
=
InterFunction
<
{
...
...
@@ -862,3 +876,316 @@ export type flowDictionaryAndTimeType = InterFunction<
};
}
>
;
// 商城订单-列表(新)
type
mallOrderType
=
{
/**
* 卖家企业名称
*/
companyName
?:
string
;
/**
* 确认收货时间
*/
confirmReceiptTime
?:
Date
;
/**
* 下单时间
*/
createTime
:
string
;
/**
* 订单交期
*/
deliveryTime
?:
Date
;
/**
* id
*/
id
:
number
;
kdnExpDTO
?:
{
logisticCode
?:
string
;
shipperCode
?:
string
;
stateEx
?:
string
;
traces
?:
{
acceptStation
?:
string
;
acceptTime
?:
string
;
action
?:
string
;
location
?:
string
;
}[];
};
/**
* 订单编号
*/
orderNo
?:
string
;
/**
* 订单实付总额
*/
orderTotalAmount
?:
number
;
/**
* 订单类型,0正常订单、1意向订单
*/
orderType
?:
number
;
/**
* 其他方式支付额度
*/
otherAmount
?:
number
;
/**
* 用户支付凭证
*/
payDTOList
?:
{
/**
* 审核状态,0待审批,1通过,2未通过
*/
checkStatus
?:
number
;
/**
* 提交时间
*/
createTime
?:
Date
;
/**
* id
*/
id
?:
number
;
/**
* 支付凭证
*/
payImgList
?:
string
;
/**
* 备注信息
*/
payRemark
?:
string
;
/**
* 未通过原因
*/
refuseReason
?:
string
;
/**
* 订单id
*/
uavOrderId
?:
number
;
}[];
/**
* 支付时间
*/
payTime
?:
Date
;
/**
* 支付方式,wechatpay微信,alipay支付宝
*/
payType
?:
string
;
/**
* 评价状态
*/
remarkStatus
?:
number
;
/**
* 卖家备注
*/
sellerRemark
?:
string
;
/**
* 抵扣云享金余额
*/
shareAmount
?:
number
;
/**
* 订单规格列表
*/
skuDTOList
:
{
/**
* 下单时间
*/
createTime
?:
Date
;
/**
* 订单规格id
*/
id
?:
number
;
/**
* 商品id
*/
mallGoodsId
?:
number
;
/**
* 购买数量
*/
orderNum
:
number
;
/**
* 商品规格id
*/
priceStockId
?:
number
;
/**
* 商品规格
*/
productSpec
:
string
;
/**
* 商品规格图片
*/
skuImage
?:
string
;
/**
* 商品规格编号
*/
skuNo
?:
string
;
/**
* 商品名称
*/
tradeName
?:
string
;
/**
* 订单id
*/
uavOrderId
?:
number
;
/**
* 单价
*/
unitPrice
?:
number
;
}[];
/**
* 订单状态
*/
statusCode
:
number
;
/**
* 卖家id
*/
thirdBackUserAccountId
?:
number
;
uavOrderExpressDTO
:
{
/**
* id
*/
id
:
number
;
/**
* 是否已取件,0未取,1已取
*/
receive
?:
number
;
/**
* 取件时间
*/
receiveTime
?:
Date
;
/**
* 快递编码
*/
sendExpCode
?:
string
;
/**
* 快递编号
*/
sendExpNo
?:
string
;
/**
* 发货-收货详细地址
*/
takeAddress
:
string
;
/**
* 取货人
*/
takeName
:
string
;
/**
* 取货人号码
*/
takePhone
:
string
;
/**
* 地区信息
*/
takeRegion
:
string
;
/**
* 订单id
*/
uavOrderId
:
number
;
};
/**
* 最近修改时间
*/
updateTime
?:
Date
;
/**
* 买家id
*/
userAccountId
?:
number
;
/**
* 收货地址id
*/
userAddressId
?:
number
;
/**
* 买家备注
*/
userRemark
?:
string
;
/**
* 修改版本
*/
version
?:
number
;
/**
* 抵扣钱包余额
*/
walletAmount
?:
number
;
};
export
type
mallOrderListType
=
InterListFunction
<
{
/**
* 结束时间
*/
endTime
?:
string
;
/**
* 关键字-订单编号
*/
keyword
?:
string
;
/**
* 开始时间
*/
startTime
?:
string
;
/**
* 订单状态码
*/
statusCode
?:
number
;
/**
* 用户uid
*/
uid
?:
string
;
},
mallOrderType
>
;
// 商城订单-详情(新)
export
type
mallOrderDetailType
=
InterFunction
<
{
id
:
number
},
mallOrderType
>
;
// 商城订单-状态字典(新)
export
type
mallOrderStatusType
=
InterFunction
<
any
,
{
code
:
number
;
nextCode
:
number
;
status
:
string
;
id
:
number
;
}[]
>
;
// 商城订单-发货
export
type
mallOrderSendType
=
InterFunction
<
{
/**
* 快递编码
*/
sendExpCode
?:
string
;
/**
* 快递编号
*/
sendExpNo
?:
string
;
/**
* 发货-收货详细地址
*/
takeAddress
?:
string
;
/**
* 取货人
*/
takeName
?:
string
;
/**
* 取货人号码
*/
takePhone
?:
string
;
/**
* 地区信息
*/
takeRegion
?:
string
;
/**
* 订单id
*/
uavOrderId
?:
number
;
},
any
>
;
// 商城订单-卖家备注
export
type
sellerRemarkType
=
InterFunction
<
{
/**
* content
*/
content
:
string
;
/**
* id
*/
id
:
number
;
},
any
>
;
src/api/modules/orderManage.ts
浏览文件 @
0fa78a51
...
...
@@ -8,6 +8,11 @@ import {
listPageManagerVerOne
,
listPcWechatOrderType
,
listTranStatusType
,
logisticsDynamicsType
,
mallOrderDetailType
,
mallOrderListType
,
mallOrderSendType
,
mallOrderStatusType
,
orderDetailType
,
orderImageDetailType
,
orderListStatus
,
...
...
@@ -15,6 +20,7 @@ import {
platFormCloseOrderType
,
refundOrderType
,
renterTakeOrderType
,
sellerRemarkType
,
sendOrderWareType
,
serviceOrderFormDetailsType
,
serviceOrderFormListType
,
...
...
@@ -54,6 +60,9 @@ export class OrderManageAPI {
// v1.0.1 物流公司列表-字典
static
listExpressInfo
:
listExpressInfoType
=
(
params
)
=>
axios
.
get
(
'/oms/express/listExpressInfo'
,
{
params
});
// 物流动态信息
static
getLogisticsDynamics
:
logisticsDynamicsType
=
(
params
)
=>
axios
.
get
(
'/oms/express/logisticsDynamics'
,
{
params
});
// web-小程序——订单详情相关图片信息
static
orderImageDetail
:
orderImageDetailType
=
(
params
)
=>
...
...
@@ -96,4 +105,17 @@ export class OrderManageAPI {
// 需求订单-进度条
static
getFlowDictionary
:
flowDictionaryType
=
()
=>
axios
.
get
(
'/release/requirements/flowDictionary'
);
// 商城订单-列表(新)
static
getMallOrderList
:
mallOrderListType
=
(
data
)
=>
axios
.
post
(
'/oms/uav-order/list'
,
data
);
// 商城订单-状态字典(新)
static
getMallOrderStatusList
:
mallOrderStatusType
=
()
=>
axios
.
get
(
'/oms/uav-order/statusList'
);
// 商城订单-详情(新)
static
getMallOrderDetail
:
mallOrderDetailType
=
(
params
)
=>
axios
.
get
(
'/oms/uav-order/detail'
,
{
params
});
// 商城订单-发货(新)
static
mallOrderSend
:
mallOrderSendType
=
(
data
)
=>
axios
.
post
(
'/oms/uav-order/send'
,
data
);
// 商城订单-卖家备注
static
sellerRemark
:
sellerRemarkType
=
(
params
)
=>
axios
.
get
(
'/oms/uav-order/sellerRemark'
,
{
params
});
}
src/pages/depleteManage/withDrawList/index.tsx
浏览文件 @
0fa78a51
...
...
@@ -128,6 +128,7 @@ const WithDrawManage = () => {
},
];
const
[
tableData
,
setTableData
]
=
useState
<
withdrawalApplyType
>
([]);
const
[
loading
,
setLoading
]
=
useState
<
boolean
>
(
false
);
const
[
pagination
,
setPagination
]
=
useState
<
PaginationProps
&
{
totalCount
:
number
}
>
({
pageNo
:
1
,
pageSize
:
10
,
...
...
@@ -141,11 +142,13 @@ const WithDrawManage = () => {
// 获取提现列表
const
getListPageWithdrawalApply
=
(
query
?:
withdrawalApplyParameterType
)
=>
{
setLoading
(
true
);
DepleteManageTypeAPI
.
getListPageWithdrawalApply
({
pageNo
:
pagination
.
pageNo
,
pageSize
:
pagination
.
pageSize
,
...
query
,
}).
then
(({
result
})
=>
{
setLoading
(
false
);
pagination
.
totalCount
=
result
.
totalCount
;
setPagination
({
...
pagination
});
setTableData
(
result
.
list
||
[]);
...
...
@@ -189,6 +192,7 @@ const WithDrawManage = () => {
columns=
{
tableColumns
}
rowKey=
'id'
dataSource=
{
tableData
}
loading=
{
loading
}
pagination=
{
{
total
:
pagination
.
totalCount
,
pageSize
:
pagination
.
pageSize
,
...
...
src/pages/orderManage/productOrder/orderDetail/comp/detailDelivery/index.tsx
浏览文件 @
0fa78a51
import
React
,
{
useEffect
}
from
'react'
;
import
{
Button
}
from
'antd'
;
import
{
getMallOrderDetailById
}
from
'~/api/interface/orderManageType'
;
import
React
,
{
useEffect
,
useState
}
from
'react'
;
import
{
Button
,
Steps
}
from
'antd'
;
import
{
mallOrderDetailType
}
from
'~/api/interface/orderManageType'
;
import
{
InterDataType
}
from
'~/api/interface'
;
import
{
OrderManageAPI
}
from
'~/api'
;
import
LogisticsStepModal
from
'../logisticsStepModal'
;
// 接口返回的类型
type
DataType
=
InterDataType
<
getMallOrderDetailById
>
;
type
DataType
=
InterDataType
<
mallOrderDetailType
>
;
// 参数类型
type
PropsType
=
{
detail
:
DataType
;
detail
:
DataType
|
undefined
;
};
const
DetailDelivery
:
React
.
FC
<
PropsType
>
=
(
props
)
=>
{
const
{
detail
}
=
props
;
// 物流列表
const
[
expressList
,
setExpressList
]
=
React
.
useState
<
{
label
:
string
;
value
:
string
}[]
>
([]);
// 获取物流信息
const
getListExpressInfo
=
async
()
=>
{
const
res
=
await
OrderManageAPI
.
listExpressInfo
({});
if
(
res
&&
res
.
code
===
'200'
)
{
setExpressList
(
res
.
result
.
map
((
item
)
=>
({
label
:
item
.
exName
,
value
:
item
.
exCode
})));
// console.log(res);
}
const
DetailDelivery
:
React
.
FC
<
PropsType
>
=
({
detail
})
=>
{
const
[
logisticsStepModalShow
,
setLogisticsStepModalShow
]
=
useState
<
boolean
>
(
false
);
const
[
listExpressInfo
,
setListExpressInfo
]
=
useState
<
{
label
:
string
;
value
:
string
}[]
>
([]);
//获取物流公司列表
const
getExpressList
=
()
=>
{
OrderManageAPI
.
listExpressInfo
().
then
(({
result
})
=>
{
setListExpressInfo
(
result
?.
map
((
v
)
=>
({
label
:
v
.
exName
,
value
:
v
.
exCode
}))
||
[]);
});
};
// 转换物流信息
const
getExpressInfo
=
(
code
:
string
|
undefined
|
null
)
=>
{
return
expressList
.
find
((
item
)
=>
item
.
value
===
code
)?.
label
||
code
;
const
showStepModal
=
()
=>
{
setLogisticsStepModalShow
(
true
);
};
const
logisticsStepModalCancel
=
()
=>
{
setLogisticsStepModalShow
(
false
);
};
// componentDidMount
useEffect
(()
=>
{
get
ListExpressInfo
().
then
();
get
ExpressList
();
},
[]);
return
(
<
div
className=
{
'detail-delivery detail-half'
}
>
<
div
className=
{
'detail-title'
}
>
发货信息
</
div
>
<
div
className=
{
'detail-text'
}
>
收货人:
{
detail
?.
receipt
?.
takeName
}
</
div
>
<
div
className=
{
'detail-text'
}
>
手机号:
{
detail
?.
receipt
?.
takePhone
}
</
div
>
<
div
className=
{
'detail-text'
}
>
收货地址:
{
detail
?.
receipt
?.
detailAddress
}
</
div
>
<
div
className=
{
'detail-text'
}
>
物流单号:
{
detail
?.
receipt
?.
sendExNo
}
</
div
>
<
div
className=
{
'detail-text'
}
>
物流公司:
{
getExpressInfo
(
detail
?.
receipt
?.
sendExCode
)
}
</
div
>
<
div
className=
{
'detail-text'
}
>
物流进度:--
<
Button
type=
{
'link'
}
>
查看详情
</
Button
>
</
div
>
<
div
className=
{
'detail-title'
}
>
归还信息
</
div
>
<
div
className=
{
'detail-text'
}
>
收货人:
{
detail
?.
receipt
?.
renName
}
</
div
>
<
div
className=
{
'detail-text'
}
>
手机号:
{
detail
?.
receipt
?.
renPhone
}
</
div
>
<
div
className=
{
'detail-text'
}
>
收货地址:
{
detail
?.
receipt
?.
renAddress
}
</
div
>
<
div
className=
{
'detail-text'
}
>
物流单号:
{
detail
?.
receipt
?.
renExNo
}
</
div
>
<
div
className=
{
'detail-text'
}
>
物流公司:
{
getExpressInfo
(
detail
?.
receipt
?.
renExCode
)
}
</
div
>
<
div
className=
{
'detail-text'
}
>
物流进度:--
<
Button
type=
{
'link'
}
>
查看详情
</
Button
>
return
(
<
div
className=
'detail-delivery detail-half'
>
<
div
className=
'detail-title'
>
发货信息
</
div
>
<
div
className=
'detail-text'
>
收货人:
{
detail
?.
uavOrderExpressDTO
?.
takeName
}
</
div
>
<
div
className=
'detail-text'
>
手机号:
{
detail
?.
uavOrderExpressDTO
?.
takePhone
}
</
div
>
<
div
className=
'detail-text'
>
收货地址:
{
(
detail
?.
uavOrderExpressDTO
.
takeRegion
.
split
(
'/'
).
join
(
''
)
||
''
)
+
detail
?.
uavOrderExpressDTO
.
takeAddress
}
</
div
>
{
detail
?.
uavOrderExpressDTO
?.
sendExpCode
&&
(
<>
<
div
className=
'detail-text'
>
物流单号:
{
detail
?.
uavOrderExpressDTO
?.
sendExpNo
}
</
div
>
<
div
className=
'detail-text'
>
物流公司:
{
listExpressInfo
.
find
((
v
)
=>
v
.
value
===
detail
?.
uavOrderExpressDTO
?.
sendExpCode
)
?.
label
}
</
div
>
<
div
className=
'detail-text'
style=
{
{
display
:
'flex'
}
}
>
<
span
>
物流进度:
</
span
>
<
div
>
<
Steps
direction=
'vertical'
current=
{
0
}
progressDot
items=
{
[
{
title
:
detail
?.
kdnExpDTO
?.
traces
?.[
0
].
acceptStation
,
description
:
detail
?.
kdnExpDTO
?.
traces
?.[
0
].
acceptTime
,
},
{
title
:
`送至${
detail?.uavOrderExpressDTO?.takeRegion.split('/').join('') +
detail?.uavOrderExpressDTO?.takeAddress
}`
,
},
]
}
/>
</
div
>
<
div
>
<
Button
type=
'link'
onClick=
{
showStepModal
}
>
查看详情
</
Button
>
</
div
>
</
div
>
</>
)
}
<
LogisticsStepModal
open=
{
logisticsStepModalShow
}
onCancel=
{
logisticsStepModalCancel
}
logisticsStep=
{
detail
?.
kdnExpDTO
}
/>
</
div
>
);
};
...
...
src/pages/orderManage/productOrder/orderDetail/comp/detailInformation/index.scss
0 → 100644
浏览文件 @
0fa78a51
.mall-sku-item
{
display
:
flex
;
align-items
:
center
;
margin-bottom
:
10px
;
.sku-img
{
width
:
48px
;
height
:
48px
;
}
.sku-info
{
margin-left
:
10px
;
line-height
:
16px
;
text-align
:
left
;
.info-name
{
color
:
#1677ff
}
.info-spec
{
margin-top
:
10px
;
span
:not
(
:last-child
)
{
&
:after
{
content
:
';'
;
}
}
}
}
}
src/pages/orderManage/productOrder/orderDetail/comp/detailInformation/index.tsx
浏览文件 @
0fa78a51
import
React
,
{
useEffect
,
useState
}
from
'react'
;
import
{
Table
}
from
'antd'
;
import
{
Image
,
Table
}
from
'antd'
;
import
{
ColumnsType
}
from
'antd/es/table'
;
import
{
InterDataType
}
from
'~/api/interface'
;
import
{
orderDetailType
}
from
'~/api/interface/orderManageType'
;
import
dayjs
from
'dayjs'
;
import
{
mallOrderDetailType
}
from
'~/api/interface/orderManageType'
;
import
'./index.scss'
;
import
{
OrderManageAPI
}
from
'~/api'
;
// 表格数据类型
type
TableType
=
any
;
// 接口返回的类型
type
DataType
=
InterDataType
<
o
rderDetailType
>
;
type
DataType
=
InterDataType
<
mallO
rderDetailType
>
;
// 参数类型
type
PropsType
=
{
detail
:
DataType
;
detail
:
DataType
|
undefined
;
};
const
DetailInformation
:
React
.
FC
<
PropsType
>
=
(
props
)
=>
{
const
{
detail
}
=
props
;
// 表格数据
const
[
tableData
,
setTableData
]
=
useState
<
TableType
>
([]);
// 表格结构
const
columns
:
ColumnsType
<
TableType
[
0
]
>
=
[
const
columns
:
ColumnsType
<
DataType
[
'skuDTOList'
]
[
0
]
>
=
[
{
title
:
'商品'
,
dataIndex
:
'wareTitle'
,
align
:
'center'
,
width
:
'20%'
,
render
:
(
_text
,
record
)
=>
(
<
div
className=
'mall-sku-item'
>
<
Image
src=
{
record
.
skuImage
}
className=
'sku-img'
/>
<
div
className=
'sku-info'
>
<
div
className=
'info-name'
>
{
record
.
tradeName
}
</
div
>
<
div
className=
'info-spec'
>
{
Object
.
entries
(
JSON
.
parse
(
record
.
productSpec
)).
map
((
v
,
index
)
=>
(
<
span
key=
{
index
}
>
{
v
.
join
(
':'
)
}
</
span
>
))
}
</
div
>
</
div
>
</
div
>
),
},
{
title
:
'单价
(元)
'
,
title
:
'单价
(元)
'
,
dataIndex
:
'unitPrice'
,
align
:
'center'
,
render
:
(
text
)
=>
`¥
${
text
?.
toLocaleString
()}
`,
},
{
title: '数量',
dataIndex: '
ware
Num',
dataIndex: '
order
Num',
align: 'center',
},
{
title: '订单状态',
dataIndex: 'waiting',
align: 'center',
render: () => orderStatusList.find((v) => v.value === detail?.statusCode)?.label,
},
{
title: '应收款',
dataIndex: 'shouldPay',
title: '订单金额(元)',
align: 'center',
render: (
text) => `
¥
$
{
text
?.
toLocaleString
()
}
`,
render: (
) => `
¥
$
{
detail
?.
orderTotalAmount
}
`,
},
];
// 订单状态
const [orderStatusList, setOrderStatusList] = useState<{ value: number; label: string }[]>([]);
// 获取订单状态
const getOrderStatus = () => {
OrderManageAPI.getMallOrderStatusList().then(({ result }) => {
if (result) {
const list = result.map((item) => ({ value: item.code, label: item.status }));
setOrderStatusList(list);
}
});
};
useEffect(() => {
if (!detail) return;
setTableData([
{
id: 1,
wareTitle: detail?.wareTitle,
unitPrice: detail?.unitPrice,
wareNum: detail?.wareNum,
waiting: detail?.waiting,
shouldPay: detail?.shouldPay,
},
]);
}, [detail]);
getOrderStatus();
}, []);
return (
<div className=
{'detail-information'}
>
<div className=
{'detail-title'}
>订单明细</div>
<div className=
{'detail-text'}
>
<span className=
{'item'}
>订单编号:{detail?.orderNo}</span>
<span className=
{'item'} style={{ display: 'none' }}
>
合同编号:UAV202334741131
</span>
<span className={'item'}>
订单租期:
{dayjs(detail?.startDate).format('YYYY-MM-DD')
}
{' ~ '
}
{dayjs(detail?.endDate).format('YYYY-MM-DD')
}
</span>
<span className={'item'}>创建时间:{detail?.createTime}</span>
<div className=
'detail-information'
>
<div className=
'detail-title'
>订单明细</div>
<div className=
'detail-text'
>
<span className=
'item'
>订单编号:{detail?.orderNo}</span>
<span className=
'item'>创建时间:{detail?.createTime}</span
>
{/*<span className={'item'} style={{ display: 'none' }}>*/}
{/* 合同编号:UAV202334741131*/}
{/*</span>*/}
{/*<span className={'item'}>*/}
{/* 订单租期:*/
}
{/* {dayjs(detail?.startDate).format('YYYY-MM-DD')}*/
}
{/* {' ~ '}*/
}
{/* {dayjs(detail?.endDate).format('YYYY-MM-DD')}*/}
{/*</span>*/}
</div>
<Table
style={{ margin: '20px auto', width: '90%' }}
size='small'
dataSource={
tableData
}
dataSource={
detail?.skuDTOList || []
}
columns={columns}
rowKey='id'
bordered
pagination={false}
// rowSelection={{ selectedRowKeys, onChange: onSelectChange }}
/>
<div className='detail-price'>
实收款<span className={'num'}>¥ {detail?.actualPay}</span>元
</div>
</div>
);
};
...
...
src/pages/orderManage/productOrder/orderDetail/comp/detailPurchaser/index.tsx
浏览文件 @
0fa78a51
import
React
from
'react'
;
import
{
Button
,
Image
}
from
'antd'
;
import
{
getMallOrderDetailById
}
from
'~/api/interface/orderManageType'
;
import
{
getMallOrderDetailById
,
mallOrderDetailType
}
from
'~/api/interface/orderManageType'
;
import
{
InterDataType
}
from
'~/api/interface'
;
// 接口返回的类型
type
DataType
=
InterDataType
<
getMallOrderDetailById
>
;
type
DataType
=
InterDataType
<
mallOrderDetailType
>
;
// 参数类型
type
PropsType
=
{
detail
:
DataType
;
detail
:
DataType
|
undefined
;
};
const
DetailPurchaser
:
React
.
FC
<
PropsType
>
=
(
props
)
=>
{
const
{
detail
}
=
props
;
const
DetailPurchaser
:
React
.
FC
<
PropsType
>
=
({
detail
})
=>
{
return
(
<
div
className=
{
'detail-purchaser detail-half'
}
>
<
div
className=
{
'detail-title'
}
>
买家信息
</
div
>
<
div
className=
{
'detail-text'
}
>
UID:
{
detail
?.
uid
}
</
div
>
<
div
className=
{
'detail-text'
}
>
姓名:
{
detail
?.
userName
}
</
div
>
<
div
className=
{
'detail-text'
}
>
手机号:
{
detail
?.
phoneNum
}
</
div
>
{
/*<div className={'detail-text'}>企业: 浙江科比特创新科技有限公司</div>*/
}
<
div
className=
{
'detail-text'
}
>
备注:
{
detail
?.
remark
}
</
div
>
<
div
className=
{
'detail-text'
}
>
UID:
</
div
>
<
div
className=
{
'detail-text'
}
>
姓名:
</
div
>
<
div
className=
{
'detail-text'
}
>
手机号:
</
div
>
<
div
className=
{
'detail-text'
}
>
备注:
</
div
>
<
div
style=
{
{
display
:
'none'
}
}
>
<
div
className=
{
'detail-title'
}
>
合同信息
</
div
>
<
div
className=
{
'detail-text'
}
>
合同编号: UAV202334741131
</
div
>
<
div
className=
{
'detail-text'
}
>
合同状态: 已归档
</
div
>
<
div
className=
{
'detail-text'
}
>
合同操作:
<
Button
type=
{
'link'
}
>
平台签署
</
Button
>
<
Button
type=
{
'link'
}
>
查看
</
Button
>
<
Button
type=
{
'link'
}
>
下载
</
Button
>
</
div
>
</
div
>
{
/*<div style={{ display: 'none' }}>*/
}
{
/* <div className={'detail-title'}>合同信息</div>*/
}
{
/* <div className={'detail-text'}>合同编号: UAV202334741131</div>*/
}
{
/* <div className={'detail-text'}>合同状态: 已归档</div>*/
}
{
/* <div className={'detail-text'}>*/
}
{
/* 合同操作:*/
}
{
/* <Button type={'link'}>平台签署</Button>*/
}
{
/* <Button type={'link'}>查看</Button>*/
}
{
/* <Button type={'link'}>下载</Button>*/
}
{
/* </div>*/
}
{
/*</div>*/
}
<
div
className=
{
'detail-title'
}
>
付款凭证
</
div
>
<
div
className=
{
'detail-text'
}
>
预付款:
</
div
>
<
div
className=
{
'detail-image'
}
>
{
[
'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png'
,
'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png'
,
].
map
((
i
,
j
)
=>
(
<
Image
key=
{
j
}
className=
{
'image'
}
src=
{
i
}
alt=
'付款凭证'
/>
))
}
</
div
>
<
div
className=
{
'detail-text'
}
>
尾款:
</
div
>
<
div
className=
{
'detail-image'
}
>
{
[
'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png'
,
'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png'
,
].
map
((
i
,
j
)
=>
(
<
Image
key=
{
j
}
className=
{
'image'
}
src=
{
i
}
alt=
'付款凭证'
/>
))
}
</
div
>
<
div
className=
{
'detail-text'
}
>
全款:
</
div
>
<
div
className=
{
'detail-image'
}
>
{
[
'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png'
,
'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png'
,
].
map
((
i
,
j
)
=>
(
<
Image
key=
{
j
}
className=
{
'image'
}
src=
{
i
}
alt=
'付款凭证'
/>
))
}
</
div
>
{
/*<div className={'detail-title'}>付款凭证</div>*/
}
{
/*<div className={'detail-text'}>预付款:</div>*/
}
{
/*<div className={'detail-image'}>*/
}
{
/* {[*/
}
{
/* 'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png',*/
}
{
/* 'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png',*/
}
{
/* ].map((i, j) => (*/
}
{
/* <Image key={j} className={'image'} src={i} alt='付款凭证' />*/
}
{
/* ))}*/
}
{
/*</div>*/
}
{
/*<div className={'detail-text'}>尾款:</div>*/
}
{
/*<div className={'detail-image'}>*/
}
{
/* {[*/
}
{
/* 'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png',*/
}
{
/* 'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png',*/
}
{
/* ].map((i, j) => (*/
}
{
/* <Image key={j} className={'image'} src={i} alt='付款凭证' />*/
}
{
/* ))}*/
}
{
/*</div>*/
}
{
/*<div className={'detail-text'}>全款:</div>*/
}
{
/*<div className={'detail-image'}>*/
}
{
/* {[*/
}
{
/* 'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png',*/
}
{
/* 'https://pad-video-x.oss-cn-shenzhen.aliyuncs.com/file/infrastructure-05-05.png',*/
}
{
/* ].map((i, j) => (*/
}
{
/* <Image key={j} className={'image'} src={i} alt='付款凭证' />*/
}
{
/* ))}*/
}
{
/*</div>*/
}
</
div
>
);
};
...
...
src/pages/orderManage/productOrder/orderDetail/comp/logisticsStepModal/index.tsx
0 → 100644
浏览文件 @
0fa78a51
import
{
Modal
,
ModalProps
,
Steps
}
from
'antd'
;
import
React
,
{
FC
}
from
'react'
;
import
{
InterDataType
}
from
'~/api/interface'
;
import
{
mallOrderDetailType
}
from
'~/api/interface/orderManageType'
;
// 商品订单详情返回类型
type
DataType
=
InterDataType
<
mallOrderDetailType
>
;
interface
selfProps
{
logisticsStep
:
DataType
[
'kdnExpDTO'
];
}
const
LogisticsStepModal
:
FC
<
ModalProps
&
selfProps
>
=
({
open
,
onCancel
,
logisticsStep
})
=>
{
return
(
<
Modal
open=
{
open
}
title=
'物流进度'
onCancel=
{
onCancel
}
footer=
{
false
}
>
<
Steps
direction=
'vertical'
current=
{
(
logisticsStep
?.
traces
?.
length
||
1
)
-
1
}
progressDot
items=
{
logisticsStep
?.
traces
?.
map
((
v
)
=>
({
title
:
v
.
acceptStation
,
description
:
v
.
acceptTime
,
}))
}
/>
</
Modal
>
);
};
export
default
LogisticsStepModal
;
src/pages/orderManage/productOrder/orderDetail/index.scss
浏览文件 @
0fa78a51
...
...
@@ -3,24 +3,7 @@
box-sizing
:
border-box
;
.order-head
{
width
:
100%
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
.head-text
{
font-size
:
13px
;
font-weight
:
600
;
color
:
#000000
;
div
{
margin-bottom
:
10px
;
span
{
margin-right
:
20px
;
}
}
}
text-align
:
right
;
}
.detail-wrap
{
...
...
src/pages/orderManage/productOrder/orderDetail/index.tsx
浏览文件 @
0fa78a51
...
...
@@ -5,12 +5,12 @@ import './index.scss';
import
DetailDelivery
from
'./comp/detailDelivery'
;
import
DetailPurchaser
from
'./comp/detailPurchaser'
;
import
DetailInformation
from
'./comp/detailInformation'
;
import
{
getMallOrderDetailById
}
from
'~/api/interface/orderManageType'
;
import
{
mallOrderDetailType
}
from
'~/api/interface/orderManageType'
;
import
{
InterDataType
}
from
'~/api/interface'
;
import
{
OrderManageAPI
}
from
'~/api'
;
// 接口返回的类型
type
DataType
=
InterDataType
<
getMallOrderDetailById
>
;
type
DataType
=
InterDataType
<
mallOrderDetailType
>
;
function
ProductOrderDetail
()
{
// 路由钩子
...
...
@@ -19,59 +19,34 @@ function ProductOrderDetail() {
const
[
searchParams
]
=
useSearchParams
();
// 接收到的参数
const
id
=
searchParams
.
get
(
'id'
);
// 订单状态
const
[
orderStatusList
,
setOrderStatusList
]
=
useState
<
{
value
:
number
;
label
:
string
}[]
>
([]);
// 返回上一页
const
handleBack
=
()
=>
{
navigate
(
-
1
);
};
// 订单详情
const
[
orderDetail
,
setOrderDetail
]
=
useState
<
DataType
>
(
null
!
);
const
[
orderDetail
,
setOrderDetail
]
=
useState
<
DataType
>
();
// 获取订单详情
const
getOrderDetail
=
async
()
=>
{
const
res
=
await
OrderManageAPI
.
getMallOrderDetail
ById
({
orderI
d
:
Number
(
id
),
const
res
=
await
OrderManageAPI
.
getMallOrderDetail
({
i
d
:
Number
(
id
),
});
if
(
res
&&
res
.
code
===
'200'
)
{
setOrderDetail
(
res
.
result
);
}
};
// 获取订单状态
const
getOrderStatus
=
async
()
=>
{
const
res
=
await
OrderManageAPI
.
orderListStatus
({});
if
(
res
&&
res
.
code
===
'200'
)
{
const
list
=
res
.
result
.
map
((
item
)
=>
({
value
:
item
.
code
,
label
:
item
.
status
}));
setOrderStatusList
(
list
);
}
};
// componentDidMount
useEffect
(()
=>
{
getOrderStatus
().
then
();
getOrderDetail
().
then
();
// console.log('拿到的id是 --->', id);
},
[
id
]);
},
[]);
return
(
<
div
className=
{
'order-detail'
}
>
<
div
className=
{
'order-head'
}
>
<
div
className=
'head-text'
>
<
div
>
<
span
>
订单编号:
{
orderDetail
?.
orderNo
}
</
span
>
{
/*<span>合同编号:UAV202334741131</span>*/
}
</
div
>
<
div
>
<
span
>
当前状态:
{
orderStatusList
?.
find
((
i
)
=>
i
.
value
===
orderDetail
?.
statusCode
)?.
label
||
orderDetail
?.
statusCode
}
</
span
>
<
span
>
创建时间:
{
orderDetail
?.
createTime
}
</
span
>
</
div
>
</
div
>
<
Button
type=
{
'primary'
}
onClick=
{
()
=>
handleBack
()
}
>
<
div
className=
'order-detail'
>
<
div
className=
'order-head'
>
<
Button
type=
'primary'
onClick=
{
()
=>
handleBack
()
}
>
返回
</
Button
>
</
div
>
<
div
className=
{
'detail-wrap'
}
>
<
div
className=
'detail-wrap'
>
<
DetailPurchaser
detail=
{
orderDetail
}
/>
<
DetailDelivery
detail=
{
orderDetail
}
/>
<
DetailInformation
detail=
{
orderDetail
}
/>
...
...
src/pages/orderManage/productOrder/orderList/components/distributionOrder/index.tsx
deleted
100644 → 0
浏览文件 @
6e8c5d9f
import
{
Form
,
Modal
,
ModalProps
,
Select
}
from
'antd'
;
import
{
FC
}
from
'react'
;
interface
selfProps
{
onCancel
:
()
=>
void
;
onOk
:
()
=>
void
;
}
const
DistributionOrder
:
FC
<
ModalProps
&
selfProps
>
=
({
open
,
onCancel
,
onOk
})
=>
{
const
handleOk
=
()
=>
{
onOk
();
};
const
handleCancel
=
()
=>
{
onCancel
();
};
return
(
<
Modal
open=
{
open
}
title=
'分配订单'
onOk=
{
handleOk
}
onCancel=
{
handleCancel
}
>
<
Form
labelCol=
{
{
span
:
6
}
}
wrapperCol=
{
{
span
:
16
}
}
>
<
Form
.
Item
label=
'订单编号'
></
Form
.
Item
>
<
Form
.
Item
label=
'订单名称'
></
Form
.
Item
>
<
Form
.
Item
label=
'分配运营'
rules=
{
[{
required
:
true
,
message
:
'请选择运营人员'
}]
}
>
<
Select
placeholder=
'请选择运营人员'
></
Select
>
</
Form
.
Item
>
</
Form
>
</
Modal
>
);
};
export
default
DistributionOrder
;
src/pages/orderManage/productOrder/orderList/components/remarkModal/index.tsx
0 → 100644
浏览文件 @
0fa78a51
import
{
FC
,
useEffect
}
from
'react'
;
import
{
Form
,
Modal
,
ModalProps
,
Input
,
message
}
from
'antd'
;
import
{
InterListType
}
from
'~/api/interface'
;
import
{
mallOrderListType
}
from
'~/api/interface/orderManageType'
;
import
{
OrderManageAPI
}
from
'~/api'
;
type
mallOrderType
=
InterListType
<
mallOrderListType
>
[
0
];
interface
selfProps
{
onOk
:
()
=>
void
;
onCancel
:
()
=>
void
;
mallOrderItem
:
mallOrderType
|
undefined
;
}
const
RemarkModal
:
FC
<
ModalProps
&
selfProps
>
=
({
open
,
onCancel
,
onOk
,
mallOrderItem
})
=>
{
const
[
form
]
=
Form
.
useForm
<
{
content
:
string
}
>
();
const
handleOk
=
()
=>
{
if
(
mallOrderItem
)
{
form
.
validateFields
().
then
((
value
)
=>
{
OrderManageAPI
.
sellerRemark
({
...
value
,
id
:
mallOrderItem
.
id
}).
then
(({
code
})
=>
{
if
(
code
===
'200'
)
{
message
.
success
(
'操作成功'
);
onOk
();
form
.
resetFields
();
}
});
});
}
};
const
handleCancel
=
()
=>
{
form
.
resetFields
();
onCancel
();
};
useEffect
(()
=>
{
if
(
mallOrderItem
)
{
form
.
setFieldValue
(
'content'
,
mallOrderItem
.
sellerRemark
||
undefined
);
}
},
[
mallOrderItem
]);
return
(
<
Modal
open=
{
open
}
onOk=
{
handleOk
}
onCancel=
{
handleCancel
}
title=
'备注'
>
<
Form
labelCol=
{
{
span
:
2
}
}
wrapperCol=
{
{
span
:
20
}
}
form=
{
form
}
>
<
Form
.
Item
label=
'备注'
name=
'content'
>
<
Input
.
TextArea
placeholder=
'请输入备注'
maxLength=
{
70
}
showCount
/>
</
Form
.
Item
>
</
Form
>
</
Modal
>
);
};
export
default
RemarkModal
;
src/pages/orderManage/productOrder/orderList/components/shipmentsOrder/index.tsx
浏览文件 @
0fa78a51
import
{
FC
}
from
'react'
;
import
{
Cascader
,
Form
,
Input
,
Modal
,
ModalProps
,
Select
}
from
'antd'
;
import
{
FC
,
useEffect
,
useState
}
from
'react'
;
import
{
Cascader
,
Form
,
Input
,
message
,
Modal
,
ModalProps
,
Select
}
from
'antd'
;
import
{
CommonAPI
,
OrderManageAPI
}
from
'~/api'
;
import
{
InterDataType
,
InterListType
,
InterReqType
}
from
'~/api/interface'
;
import
{
getSecondDistrictInfoType
}
from
'~/api/interface/commonType'
;
import
{
mallOrderListType
,
mallOrderSendType
}
from
'~/api/interface/orderManageType'
;
// 地址返回类型
type
locationType
=
InterDataType
<
getSecondDistrictInfoType
>
;
type
mallOrderType
=
InterListType
<
mallOrderListType
>
[
0
];
// 发货请求类型
type
sendMallType
=
InterReqType
<
mallOrderSendType
>
;
interface
selfProps
{
currentOrderItem
:
mallOrderType
|
undefined
;
onCancel
:
()
=>
void
;
onOk
:
()
=>
void
;
}
const
ShipmentsOrder
:
FC
<
ModalProps
&
selfProps
>
=
({
onOk
,
onCancel
,
open
})
=>
{
const
ShipmentsOrder
:
FC
<
ModalProps
&
selfProps
>
=
({
onOk
,
onCancel
,
open
,
currentOrderItem
})
=>
{
const
[
form
]
=
Form
.
useForm
<
sendMallType
>
();
const
[
listExpressInfo
,
setListExpressInfo
]
=
useState
<
{
label
:
string
;
value
:
string
}[]
>
([]);
const
[
location
,
setLocation
]
=
useState
<
locationType
>
([]);
//获取物流公司列表
const
getExpressList
=
()
=>
{
OrderManageAPI
.
listExpressInfo
().
then
(({
result
})
=>
{
setListExpressInfo
(
result
?.
map
((
v
)
=>
({
label
:
v
.
exName
,
value
:
v
.
exCode
}))
||
[]);
});
};
// 获取地址信息
const
getLocation
=
()
=>
{
CommonAPI
.
getSecondDistrictInfo
().
then
(({
result
})
=>
{
setLocation
(
result
||
[]);
});
};
const
handleOk
=
()
=>
{
onOk
();
form
.
validateFields
().
then
((
value
)
=>
{
OrderManageAPI
.
mallOrderSend
({
...
value
,
uavOrderId
:
currentOrderItem
?.
id
}).
then
(
({
code
})
=>
{
if
(
code
===
'200'
)
{
message
.
success
(
'发货成功'
);
form
.
resetFields
();
onOk
();
}
},
);
});
};
const
handleCancel
=
()
=>
{
form
.
resetFields
();
onCancel
();
};
useEffect
(()
=>
{
if
(
open
)
{
getLocation
();
getExpressList
();
}
},
[
open
]);
useEffect
(()
=>
{
if
(
currentOrderItem
&&
open
)
{
form
.
setFieldsValue
({
takeName
:
currentOrderItem
.
uavOrderExpressDTO
.
takeName
,
takePhone
:
currentOrderItem
.
uavOrderExpressDTO
.
takePhone
,
takeRegion
:
currentOrderItem
.
uavOrderExpressDTO
.
takeRegion
,
takeAddress
:
currentOrderItem
.
uavOrderExpressDTO
.
takeAddress
,
});
}
},
[
currentOrderItem
]);
return
(
<
Modal
open=
{
open
}
title=
'发货'
onOk=
{
handleOk
}
onCancel=
{
handleCancel
}
>
<
Form
...
...
@@ -20,6 +77,7 @@ const ShipmentsOrder: FC<ModalProps & selfProps> = ({ onOk, onCancel, open }) =>
wrapperCol=
{
{
span
:
16
}
}
initialValues=
{
{
remember
:
true
}
}
autoComplete=
'off'
form=
{
form
}
>
<
Form
.
Item
label=
'物流公司'
...
...
@@ -31,7 +89,7 @@ const ShipmentsOrder: FC<ModalProps & selfProps> = ({ onOk, onCancel, open }) =>
},
]
}
>
<
Select
placeholder=
'请选择物流公司'
allowClear
></
Select
>
<
Select
placeholder=
'请选择物流公司'
allowClear
options=
{
listExpressInfo
}
></
Select
>
</
Form
.
Item
>
<
Form
.
Item
label=
'物流编号'
...
...
@@ -43,31 +101,35 @@ const ShipmentsOrder: FC<ModalProps & selfProps> = ({ onOk, onCancel, open }) =>
},
]
}
>
<
Input
placeholder=
'请输入物流编号'
allowClear
/>
<
Input
placeholder=
'请输入物流编号'
allowClear
maxLength=
{
50
}
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'用户姓名'
name=
'takeName'
//
rules={[
//
{
// validator: validateUserNam
e,
// required: true
,
//
},
//
]}
rules=
{
[
{
required
:
tru
e
,
message
:
'请输入用户姓名'
,
},
]
}
>
<
Input
placeholder=
'请输入用户姓名'
allowClear
/>
<
Input
placeholder=
'请输入用户姓名'
allowClear
maxLength=
{
30
}
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'手机号'
name=
'takePhone'
// rules={[
// {
// validator: validatePhone,
// required: true,
// },
// ]}
rules=
{
[
{
required
:
true
,
message
:
'请输入手机号'
,
},
{
pattern
:
/^1
[
3-9
]\d
{9}$/
,
message
:
'手机号格式不正确'
,
},
]
}
>
<
Input
placeholder=
'请输入手机号'
allowClear
/>
<
Input
placeholder=
'请输入手机号'
allowClear
maxLength=
{
30
}
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'收货地址'
...
...
@@ -80,7 +142,7 @@ const ShipmentsOrder: FC<ModalProps & selfProps> = ({ onOk, onCancel, open }) =>
]
}
>
<
Cascader
//
options={location}
options=
{
location
}
placeholder=
'请选择收货地址'
allowClear
fieldNames=
{
{
...
...
@@ -96,11 +158,11 @@ const ShipmentsOrder: FC<ModalProps & selfProps> = ({ onOk, onCancel, open }) =>
rules=
{
[
{
required
:
false
,
message
:
'请输入
收货
地址'
,
message
:
'请输入
详细
地址'
,
},
]
}
>
<
Input
.
TextArea
maxLength=
{
70
}
showCount
placeholder=
'请输入
收货
地址'
allowClear
/>
<
Input
.
TextArea
maxLength=
{
70
}
showCount
placeholder=
'请输入
详细
地址'
allowClear
/>
</
Form
.
Item
>
</
Form
>
</
Modal
>
...
...
src/pages/orderManage/productOrder/orderList/index.scss
0 → 100644
浏览文件 @
0fa78a51
.order-table-item
{
.item-td
{
position
:
absolute
;
top
:
0
;
left
:
0
;
height
:
40px
;
width
:
100%
;
background
:
rgba
(
22
,
119
,
255
,
0
.1
);
line-height
:
40px
;
}
.item-tr
{
min-height
:
50px
;
width
:
100%
;
margin-top
:
50px
;
.mall-sku-item
{
display
:
flex
;
align-items
:
center
;
margin-bottom
:
10px
;
.sku-img
{
width
:
48px
;
height
:
48px
;
}
.sku-info
{
margin-left
:
10px
;
line-height
:
16px
;
text-align
:
left
;
.info-name
{
color
:
#1677ff
}
.info-spec
{
margin-top
:
10px
;
span
:not
(
:last-child
)
{
&
:after
{
content
:
';'
;
}
}
}
}
}
}
.goods-text
{
height
:
60px
;
width
:
100%
;
text-align
:
center
;
line-height
:
60px
;
}
}
src/pages/orderManage/productOrder/orderList/index.tsx
浏览文件 @
0fa78a51
差异被折叠。
点击展开。
src/router/router.tsx
浏览文件 @
0fa78a51
...
...
@@ -195,6 +195,7 @@ export interface RouteObjectType {
customIcon
?:
boolean
;
title
:
string
;
develop
?:
boolean
;
pid
?:
number
;
};
}
// 加载页面
...
...
@@ -264,6 +265,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'实名认证详情'
,
hidden
:
true
,
icon
:
<
SolutionOutlined
/>,
pid
:
260
,
},
},
{
...
...
@@ -275,6 +277,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'邀请列表'
,
icon
:
<
SolutionOutlined
/>,
hidden
:
true
,
pid
:
200
,
},
},
{
...
...
@@ -285,7 +288,6 @@ export const routerList: Array<RouteObjectType> = [
id
:
26200
,
title
:
'现金管理'
,
icon
:
<
RedEnvelopeOutlined
/>,
hidden
:
true
,
},
},
{
...
...
@@ -293,10 +295,11 @@ export const routerList: Array<RouteObjectType> = [
element
:
withLoadingComponent
(<
CustomMoneyDetail
/>),
errorElement
:
<
ErrorPage
/>,
meta
:
{
id
:
262
0
0
,
id
:
262
1
0
,
title
:
'现金变更'
,
icon
:
<
RedEnvelopeOutlined
/>,
hidden
:
true
,
pid
:
26200
,
},
},
{
...
...
@@ -340,6 +343,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'认证日志'
,
hidden
:
true
,
icon
:
<
UserOutlined
/>,
pid
:
1810
,
},
},
{
...
...
@@ -351,6 +355,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'飞手详情'
,
hidden
:
true
,
icon
:
<
UserOutlined
/>,
pid
:
1810
,
},
},
{
...
...
@@ -362,6 +367,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'飞手审批'
,
hidden
:
true
,
icon
:
<
UserOutlined
/>,
pid
:
1810
,
},
},
],
...
...
@@ -395,6 +401,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'需求详情'
,
hidden
:
true
,
icon
:
<
MonitorOutlined
/>,
pid
:
410
,
},
},
{
...
...
@@ -416,6 +423,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'宣传管理详情'
,
icon
:
<
SketchOutlined
/>,
hidden
:
true
,
pid
:
420
,
},
},
{
...
...
@@ -457,6 +465,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'招标快讯详情'
,
icon
:
<
CoffeeOutlined
/>,
hidden
:
true
,
pid
:
450
,
},
},
{
...
...
@@ -468,6 +477,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'用户反馈'
,
icon
:
<
CoffeeOutlined
/>,
hidden
:
true
,
pid
:
450
,
},
},
{
...
...
@@ -533,6 +543,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'商城订单 / 详情'
,
icon
:
<
ShoppingOutlined
/>,
hidden
:
true
,
pid
:
810
,
},
},
{
...
...
@@ -553,8 +564,8 @@ export const routerList: Array<RouteObjectType> = [
id
:
10070
,
title
:
'采购订单详情'
,
icon
:
<
ShoppingOutlined
/>,
develop
:
true
,
hidden
:
true
,
pid
:
840
,
},
},
{
...
...
@@ -576,6 +587,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'租赁订单 / 详情'
,
icon
:
<
ShopOutlined
/>,
hidden
:
true
,
pid
:
820
,
},
},
{
...
...
@@ -597,6 +609,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'服务订单 / 详情'
,
icon
:
<
CreditCardOutlined
/>,
hidden
:
true
,
pid
:
830
,
},
},
{
...
...
@@ -628,7 +641,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'需求订单详情'
,
icon
:
<
CreditCardOutlined
/>,
hidden
:
true
,
develop
:
true
,
pid
:
850
,
},
},
],
...
...
@@ -658,10 +671,11 @@ export const routerList: Array<RouteObjectType> = [
element
:
withLoadingComponent
(<
ServiceDetailView
/>),
errorElement
:
<
ErrorPage
/>,
meta
:
{
id
:
102
0
,
id
:
102
5
,
icon
:
<
SmileOutlined
/>,
title
:
'服务详情'
,
hidden
:
true
,
pid
:
1020
,
},
},
// {
...
...
@@ -694,6 +708,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'商城商品新增'
,
hidden
:
true
,
pid
:
1040
,
},
},
{
...
...
@@ -705,6 +720,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'商城商品编辑'
,
hidden
:
true
,
pid
:
1040
,
},
},
{
...
...
@@ -716,6 +732,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'商城商品详情'
,
hidden
:
true
,
pid
:
1040
,
},
},
{
...
...
@@ -737,6 +754,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'产品详情'
,
hidden
:
true
,
pid
:
1050
,
},
},
{
...
...
@@ -780,6 +798,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'租赁商品新增'
,
hidden
:
true
,
pid
:
1030
,
},
},
{
...
...
@@ -791,6 +810,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'租赁商品编辑'
,
hidden
:
true
,
pid
:
1030
,
},
},
{
...
...
@@ -802,6 +822,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'租赁商品详情'
,
hidden
:
true
,
pid
:
1030
,
},
},
{
...
...
@@ -833,6 +854,7 @@ export const routerList: Array<RouteObjectType> = [
icon
:
<
SmileOutlined
/>,
title
:
'品牌管理/型号'
,
hidden
:
true
,
pid
:
2020
,
},
},
],
...
...
@@ -908,6 +930,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'分类详情'
,
icon
:
''
,
hidden
:
true
,
pid
:
1240
,
},
},
// {
...
...
@@ -980,6 +1003,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'个人积分明细'
,
icon
:
<
MacCommandOutlined
/>,
hidden
:
true
,
pid
:
2210
,
},
},
// {
...
...
@@ -1229,6 +1253,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'权限信息'
,
icon
:
<
UserOutlined
/>,
hidden
:
true
,
pid
:
1420
,
},
},
{
...
...
@@ -1250,6 +1275,7 @@ export const routerList: Array<RouteObjectType> = [
title
:
'单位详情'
,
icon
:
<
BankOutlined
/>,
hidden
:
true
,
pid
:
1430
,
},
},
{
...
...
src/utils/router.ts
浏览文件 @
0fa78a51
...
...
@@ -33,12 +33,12 @@ export const getRouteList = (router: routerItem[]) => {
}
return
arr
;
};
// 根据路由地址获取当前路由的id
// 根据路由地址获取当前路由的id
(菜单栏专用,存在特殊处理)
export
const
getRouteID
=
(
routerList
:
RouteObjectType
[],
path
:
string
)
=>
{
let
id
:
number
|
string
=
''
;
routerList
.
forEach
((
i
)
=>
{
if
(
i
.
path
===
path
)
{
id
=
i
.
meta
?.
id
||
''
;
id
=
i
.
meta
.
hidden
?
i
.
meta
?.
pid
||
''
:
i
.
meta
?.
id
||
''
;
}
else
if
(
i
.
children
?.
length
&&
id
===
''
)
{
id
=
getRouteID
(
i
.
children
,
path
);
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论