订单支付完善

This commit is contained in:
2022-06-06 20:32:35 +08:00
parent 52008e153f
commit a552a023f8
18 changed files with 603 additions and 40 deletions
@@ -117,5 +117,6 @@
background-color: #F6F6F6;
border-radius: 10px;
padding: 10px 22px;
margin-top: 20px;
}
}
@@ -1,6 +1,6 @@
import { goLink } from "@/common/common";
import { formatHashTag, formatImgUrl, formatPriceDiv } from "@/common/fotmat";
import OrderBtns, {OrderBtnsemus} from "@/components/orderBtns";
import OrderBtns from "@/components/orderBtns";
import Payment from "@/pages/order/components/payment";
import { useSelector } from "@/reducers/hooks";
import { Image, Text, View } from "@tarojs/components"
@@ -21,12 +21,12 @@ type Param = {
total_number: number,
status: 0,
id: number,
settle_mode: number, //支付方式
payment_method: number, //支付方式
actual_amount: number, //实付金额
wait_pay_amount: number //待付金额
should_collect_order_id: number //应付单id
},
onClickBtn?: (val:number) => void
onClickBtn?: (val:{status:number, orderInfo:Param['value']}) => void
}
export default memo(({value, onClickBtn}: Param) => {
const userInfo = useSelector(state => state.userInfo)
@@ -41,7 +41,7 @@ export default memo(({value, onClickBtn}: Param) => {
//点击订单按钮
const orderBtnsClick = useCallback((status) => {
onClickBtn?.(status)
onClickBtn?.({status, orderInfo:value})
}, [value])
//按钮所需数据
@@ -49,7 +49,6 @@ export default memo(({value, onClickBtn}: Param) => {
return {
status: value?.status, //订单状态
orderId: value?.id,
settle_mode: value?.settle_mode, //支付方式 -1 还没支付 0:全额现结,1:定期付款,2:货到付款
actual_amount: value?.actual_amount, //实付金额
wait_pay_amount: value?.wait_pay_amount, //待付金额
}
+14 -12
View File
@@ -11,6 +11,7 @@ import {GetOrderStatusListApi, GetOrderListApi} from '@/api/order'
import { dataLoadingStatus, getFilterData } from "@/common/util"
import OrderStatusList from "./components/orderStatusList"
import Payment from "../order/components/payment"
import { ORDER_STATUS } from "@/common/enum"
export default () => {
const {checkLogin} = useLogin()
@@ -27,12 +28,13 @@ export default () => {
})
//获取订单状态
const {fetchData: statusFetchData} = GetOrderStatusListApi()
// const {fetchData: statusFetchData} = GetOrderStatusListApi()
const [statusList, setStatusList] = useState<any[]>([{id: -1, name: '全部'}])
const getOrderStatusList = async () => {
let res = await statusFetchData()
let list = [...statusList, ...res.data.list||[]]
setStatusList(() => list)
const getOrderStatusList = () => {
const status = Object.values(ORDER_STATUS).map(item => {
return {id: item.value, name: item.label}
})
setStatusList((e) => [...e, ...status])
}
useEffect(() => {
getOrderStatusList()
@@ -93,15 +95,17 @@ export default () => {
}
//监听点击的按钮
const clickOrderBtn = useCallback((state) => {
if(state == 2) {
const clickOrderBtn = useCallback(({status, orderInfo}) => {
if(status == 2) {
//去支付
setPayOrderInfo({orderId:orderInfo.should_collect_order_id, payment_method:orderInfo.payment_method})
toPay()
}
}, [orderData])
//去付款
const [shouldCollectOrderId, setShouldCollectOrderId] = useState(0)
const [payOrderInfo, setPayOrderInfo] = useState<any>()
const [payMentShow, setPayMentShow] = useState(false)
const toPay = () => {
setPayMentShow(true)
@@ -110,15 +114,13 @@ export default () => {
const closePayShow = useCallback(() => {
setPayMentShow(() => false)
}, [])
//支付成功
const onPaySuccess = useCallback(() => {
getOrderList()
closePayShow()
}, [])
return (
<View className={styles.order_list_main}>
<View className={styles.title}>
@@ -132,7 +134,7 @@ export default () => {
})}
</InfiniteScroll>
</View>
<Payment onSubmitSuccess={onPaySuccess} show={payMentShow} onClose={closePayShow} orderId={shouldCollectOrderId}/>
<Payment onSubmitSuccess={onPaySuccess} show={payMentShow} onClose={closePayShow} orderInfo={payOrderInfo}/>
</View>
)
}