优化细节

This commit is contained in:
2025-07-23 14:15:50 +08:00
parent d3f39dab68
commit 3e315bf9ee
28 changed files with 2547 additions and 303 deletions

View File

@@ -1,15 +1,27 @@
import {useEffect, useState} from "react";
import {Image, Button, Cell, CellGroup, Input, TextArea} from '@nutui/nutui-react-taro'
import {Image, Button, Cell, CellGroup, Input, TextArea, Space} from '@nutui/nutui-react-taro'
import {Location} from '@nutui/icons-react-taro'
import Taro from '@tarojs/taro'
import {ShopGoods} from "@/api/shop/shopGoods/model";
import {getShopGoods} from "@/api/shop/shopGoods";
import {View} from '@tarojs/components';
import {listShopUserAddress} from "@/api/shop/shopUserAddress";
import {ShopUserAddress} from "@/api/shop/shopUserAddress/model";
import './index.scss'
const OrderConfirm = () => {
const [goods, setGoods] = useState<ShopGoods | null>(null);
const [address, setAddress] = useState<ShopUserAddress>()
const router = Taro.getCurrentInstance().router;
const goodsId = router?.params?.goodsId;
const reload = async () => {
const address = await listShopUserAddress({isDefault: true});
if(address.length > 0){
setAddress(address[0])
}
}
useEffect(() => {
if (goodsId) {
getShopGoods(Number(goodsId)).then(res => {
@@ -18,6 +30,7 @@ const OrderConfirm = () => {
console.error("Failed to fetch goods detail:", error);
});
}
reload().then()
}, [goodsId]);
if (!goods) {
@@ -26,10 +39,32 @@ const OrderConfirm = () => {
return (
<div className={'order-confirm-page'}>
<CellGroup title="商品信息">
<CellGroup>
{
address && (
<Cell>
<Space>
<Location/>
<View></View>
<View>{address.fullAddress}</View>
</Space>
</Cell>
)
}
{!address && (
<Cell className={''} onClick={() => Taro.navigateTo({url: '/user/address/index'})}>
<Space>
<Location/>
</Space>
</Cell>
)}
</CellGroup>
<CellGroup>
<Cell>
<div className={'flex items-center'}>
<Image src={goods.image} width="80" height="80" />
<Image src={goods.image} width="80" height="80"/>
<div className={'ml-2'}>
<div className={'text-sm font-bold'}>{goods.name}</div>
<div className={'text-red-500 text-lg'}>{goods.price}</div>
@@ -40,19 +75,19 @@ const OrderConfirm = () => {
<CellGroup title="收货信息">
<Cell title="收货人">
<Input placeholder="请输入收货人姓名" />
<Input placeholder="请输入收货人姓名"/>
</Cell>
<Cell title="手机号">
<Input placeholder="请输入手机号" type="tel" />
<Input placeholder="请输入手机号" type="tel"/>
</Cell>
<Cell title="收货地址">
<TextArea placeholder="请输入详细收货地址" />
<TextArea placeholder="请输入详细收货地址"/>
</Cell>
</CellGroup>
<CellGroup title="订单备注">
<Cell>
<TextArea placeholder="请输入订单备注" />
<TextArea placeholder="请输入订单备注"/>
</Cell>
</CellGroup>
@@ -66,4 +101,4 @@ const OrderConfirm = () => {
);
};
export default OrderConfirm;
export default OrderConfirm;