diff --git a/src/pages/submitOrder/index.tsx b/src/pages/submitOrder/index.tsx index 6d8fbed..a3950b8 100644 --- a/src/pages/submitOrder/index.tsx +++ b/src/pages/submitOrder/index.tsx @@ -15,6 +15,7 @@ import { import { alert } from '@/common/common' import { formatDateTime, formatPriceDiv, formatWeightDiv } from '@/common/format' import IconFont from '@/components/iconfont/iconfont' +import { MpPurchaserAddressList } from '@/api/addressList' // 卡片盒子元素 interface Obs { @@ -99,6 +100,10 @@ const GoodsItem = (porps: PropGoods) => { const GoodsItemWithMemo = memo(GoodsItem) const SubmitOrder = () => { + const addrssRef = useRef([]) + const pages = Taro.getCurrentPages() + const currPage = pages[pages.length - 1] // 获取当前页面 + const { fetchData: addressFetch } = MpPurchaserAddressList() const router: any = useRouter() const [infoObj, setInfoObj] = useState({}) let selectId = -1 @@ -116,6 +121,21 @@ const SubmitOrder = () => { title: '请稍等...', mask: true, }) + if (value === 2 && addrssRef.current.length > 0 && !currPage.data?.addressObj) { + setInfoObj(val => ({ + ...val, + province_name: addrssRef.current[0]?.province_name, + address_id: addrssRef.current[0]?.id, + city_name: addrssRef.current[0]?.city_name, + address_detail: addrssRef.current[0]?.address_detail, + district_name: addrssRef.current[0]?.district_name, + target_user_name: addrssRef.current[0]?.name, + purchaser_phone: addrssRef.current[0]?.phone, + })) + } + else { + alert.error('请选择一个收货地址') + } setReceivingStatus(value) Taro.hideLoading() }, 300) @@ -213,13 +233,18 @@ const SubmitOrder = () => { }) } + // 获取地址 + const getAddress = async() => { + const result = await addressFetch({ purchaser_id: router.params.purchaser_id }) + addrssRef.current = result?.data?.list.filter((item) => { return item.is_default }) + } + useEffect(() => { setInfoObj(infoObj) }, [infoObj]) useDidShow(() => { // 获取选择的地址 - const pages = Taro.getCurrentPages() - const currPage = pages[pages.length - 1] // 获取当前页面 + setInfoObj(val => ({ ...val, sale_mode: Number(router.params.sale_mode), @@ -253,7 +278,9 @@ const SubmitOrder = () => { setReceivingStatus(2) } }) + useEffect(() => { + getAddress() getDetail() }, []) return (