订单列表对接

This commit is contained in:
2022-05-31 20:33:59 +08:00
parent b5c4500866
commit d05ad47b8d
8 changed files with 173 additions and 62 deletions
+72 -10
View File
@@ -1,3 +1,4 @@
import { ORDER_STATUS } from "@/common/enum"
import { formatHashTag, formatPriceDiv } from "@/common/fotmat"
import { View } from "@tarojs/components"
import { memo, useCallback, useMemo } from "react"
@@ -17,10 +18,11 @@ type OrderParam = {
total_sale_price: number, //销售金额
total_should_collect_money: number, //应收金额
total_weight_error_discount: number, //空差优惠
the_previous_status: number, //取消订单时的订单状态
actual_amount: number //实付金额
}
export default memo(({value}:{value?:OrderParam}) => {
export default memo(({value}:{value:OrderParam}) => {
//对应数量
const formatCount = useCallback((item) => {
return value?.sale_mode == 0? item.roll : Number(item.length / 100)
@@ -36,15 +38,75 @@ export default memo(({value}:{value?:OrderParam}) => {
return `${value?.total_fabrics}种面料,${value?.total_colors}种颜色,共${value?.total_number}${value?.unit}`
}, [value])
const {
SaleOrderStatusBooking, // 待接单
SaleOrderStatusArranging, // 配布中
SaleOrderStatusArranged, // 已配布
SaleOrderStatusWaitingPayment, // 待付款
SaleOrderStatusWaitingDelivery, // 待发货
SaleOrderStatusWaitingReceipt, // 待收货
SaleOrderStatusAlreadyReceipt, // 已收货
SaleOrderStatusComplete, // 已完成
SaleOrderStatusRefund, // 已退款
SaleOrderStatusCancel, // 已取消
} = ORDER_STATUS
//金额列表枚举
const priceList = [
{
id:1,
value:[SaleOrderStatusBooking.value, SaleOrderStatusArranging.value],
label:'预估金额'
},
{
id:2,
value:[SaleOrderStatusArranged.value, SaleOrderStatusWaitingPayment.value, SaleOrderStatusWaitingDelivery.value, SaleOrderStatusWaitingReceipt.value, SaleOrderStatusAlreadyReceipt.value, SaleOrderStatusComplete.value, SaleOrderStatusRefund.value, SaleOrderStatusCancel.value],
label:'合计金额'
},
{
id:3,
value:[SaleOrderStatusArranged.value, SaleOrderStatusWaitingPayment.value, SaleOrderStatusWaitingDelivery.value, SaleOrderStatusWaitingReceipt.value, SaleOrderStatusAlreadyReceipt.value, SaleOrderStatusComplete.value, SaleOrderStatusRefund.value, SaleOrderStatusCancel.value],
label:'空差优惠'
},
{
id:4,
value:[ SaleOrderStatusWaitingPayment.value],
label:'应付金额'
},
{
id:5,
value:[SaleOrderStatusWaitingDelivery.value, SaleOrderStatusWaitingReceipt.value, SaleOrderStatusAlreadyReceipt.value, SaleOrderStatusComplete.value, SaleOrderStatusRefund.value, SaleOrderStatusCancel.value],
label:'实付金额'
}
]
const priceConDom = useMemo(() => {
return (
<>
{(value&&value.status < 3)&&<EstimatedAmount number={formatPriceDiv(value?.estimate_amount)} title="预估金额" />}
{(value&&value.status >= 3)&&<EstimatedAmount number={formatPriceDiv(value?.total_sale_price)} titleStatus={false} numberStatus={0} title="合计金额" />}
{(value&&value.status >= 3)&&<EstimatedAmount number={formatPriceDiv(value?.total_weight_error_discount)} titleStatus={false} numberStatus={0} title="空差优惠" />}
{(value&&value.status >= 3)&&<EstimatedAmount number={formatPriceDiv(value?.total_should_collect_money)} title="应付金额" />}
</>
)
if(!value) return
console.log('value:::', value)
//订单为取消订单状态
if(value?.status == 9) {
return (
<>
{(priceList[1].value.includes(value?.the_previous_status))&&<EstimatedAmount number={formatPriceDiv(value?.estimate_amount)} title="预估金额" />}
{(priceList[2].value.includes(value?.the_previous_status))&&<EstimatedAmount number={formatPriceDiv(value?.total_sale_price)} titleStatus={false} numberStatus={0} title="合计金额" />}
{(priceList[3].value.includes(value?.the_previous_status))&&<EstimatedAmount number={formatPriceDiv(value?.total_weight_error_discount)} titleStatus={false} numberStatus={0} title="空差优惠" />}
{(priceList[4].value.includes(value?.the_previous_status))&&<EstimatedAmount number={formatPriceDiv(value?.total_should_collect_money)} title="应付金额" />}
{/* {(priceList[5].value.includes(value?.the_previous_status))&&<EstimatedAmount number={formatPriceDiv(value?.actual_amount)} title="实付金额" />} */}
</>
)
} else {
return (
<>
{(priceList[1].value.includes(value?.status))&&<EstimatedAmount number={formatPriceDiv(value?.estimate_amount)} title="预估金额" />}
{(priceList[2].value.includes(value?.status))&&<EstimatedAmount number={formatPriceDiv(value?.total_sale_price)} titleStatus={false} numberStatus={0} title="合计金额" />}
{(priceList[3].value.includes(value?.status))&&<EstimatedAmount number={formatPriceDiv(value?.total_weight_error_discount)} titleStatus={false} numberStatus={0} title="空差优惠" />}
{(priceList[4].value.includes(value?.status))&&<EstimatedAmount number={formatPriceDiv(value?.total_should_collect_money)} title="应付金额" />}
{/* {(priceList[5].value.includes(value?.status))&&<EstimatedAmount number={formatPriceDiv(value?.actual_amount)} title="实付金额" />} */}
</>
)
}
}, [value])
return (
@@ -4,12 +4,16 @@ import styles from './index.module.scss'
import classnames from "classnames";
import { formatDateTime, formatImgUrl } from "@/common/fotmat";
type Param = {
status: string,
time: string,
tag: string,
desc: string
list: {
status: string,
time: string,
tag: string,
desc: string
}[],
settle_mode: -1|0|1|2, //-1:没选支付方式,0:全额现结,1:定期付款,2:货到付款
}
export default memo(({list = []}:{list?:Param[]}) => {
export default memo(({list = [], settle_mode = -1}:Param) => {
const [showMore, setShowMore] = useState(false)
const changeMore = () => {
setShowMore(() => !showMore)
@@ -38,7 +42,8 @@ export default memo(({list = []}:{list?:Param[]}) => {
<Text className={classnames('iconfont icon-a-moreback', styles.miconfonts, showMore&&styles.open_miconfonts)}></Text>
</View>}
<View className={styles.image_tag}>
{/* <Image mode="aspectFit" src={formatImgUrl('/mall/order_pay_status.png')} className={styles.image}/> */}
{(settle_mode == 2)&&<Image mode="aspectFit" src={formatImgUrl('/mall/order_pay_status.png')} className={styles.image}/>}
{(settle_mode == 1)&&<Image mode="aspectFit" src={formatImgUrl('/mall/order_pay_status_7day.png')} className={styles.image}/>}
</View>
</View>}
</>
+5 -4
View File
@@ -23,7 +23,7 @@ type PayInfo = {
amount: string
}
type PayStatus = 0|1|2|3|4|null //0:预存款, 1:账期,2:线下汇款, 3:扫码支付, 4:货到付款
type PayStatus = 1|2|3|4|5|null //1:预存款, 2:账期,3:线下汇款, 4:扫码支付, 5:货到付款
export default memo(({show = false, onClose, orderId = 0, onSubmitSuccess}:Param) => {
//提交参数
@@ -54,9 +54,10 @@ export default memo(({show = false, onClose, orderId = 0, onSubmitSuccess}:Param
setPayInfo(() => data)
}
useEffect(() => {
if(show&&orderId)
if(show&&orderId) {
setSubmitData((val) => ({...val, id:orderId}))
getOrderPay()
}
}, [show, orderId])
//预存款选择
@@ -125,7 +126,7 @@ export default memo(({show = false, onClose, orderId = 0, onSubmitSuccess}:Param
</View>
{advance_payment}
</View>
<MCheckbox status={submitData.payment_method == 0} onSelect={() => advanceSelectData(0)} onClose={() => advanceSelectData(null)}/>
<MCheckbox status={submitData.payment_method == 1} onSelect={() => advanceSelectData(0)} onClose={() => advanceSelectData(null)}/>
</View>
<View className={styles.payment_list_item}>
<View className={styles.payment_list_item_left}>
@@ -135,7 +136,7 @@ export default memo(({show = false, onClose, orderId = 0, onSubmitSuccess}:Param
</View>
<View className={styles.payment_list_item_left_price}>可用额度 ¥{payInfo?.account_period_credit_available_line}</View>
</View>
<MCheckbox status={submitData.payment_method == 1} onSelect={() => periodSelectData(1)} onClose={() => periodSelectData(null)}/>
<MCheckbox status={submitData.payment_method == 2} onSelect={() => periodSelectData(1)} onClose={() => periodSelectData(null)}/>
</View>
<View className={styles.payment_list_item} onClick={onShowOfflinePay}>
<View className={styles.payment_list_item_left}>