|
@@ -13,7 +13,7 @@ import { Image } from '@/components/ui/image'
|
|
|
|
|
|
|
|
type AddressResponse = InferResponseType<typeof deliveryAddressClient.$get, 200>
|
|
type AddressResponse = InferResponseType<typeof deliveryAddressClient.$get, 200>
|
|
|
type Address = AddressResponse['data'][0]
|
|
type Address = AddressResponse['data'][0]
|
|
|
-type CreateOrderRequest = InferRequestType<typeof orderClient.$post>['json']
|
|
|
|
|
|
|
+type CreateOrderRequest = InferRequestType<typeof orderClient['create-order']['$post']>['json']
|
|
|
|
|
|
|
|
interface CheckoutItem {
|
|
interface CheckoutItem {
|
|
|
id: number
|
|
id: number
|
|
@@ -56,33 +56,18 @@ export default function OrderSubmitPage() {
|
|
|
throw new Error('请完善订单信息')
|
|
throw new Error('请完善订单信息')
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- const goodsDetail = JSON.stringify(
|
|
|
|
|
- orderItems.map(item => ({
|
|
|
|
|
- goodsId: item.id,
|
|
|
|
|
- name: item.name,
|
|
|
|
|
- price: item.price,
|
|
|
|
|
- num: item.quantity
|
|
|
|
|
- }))
|
|
|
|
|
- )
|
|
|
|
|
-
|
|
|
|
|
const orderData: CreateOrderRequest = {
|
|
const orderData: CreateOrderRequest = {
|
|
|
- orderNo: `ORD${Date.now()}`,
|
|
|
|
|
- userId: user!.id,
|
|
|
|
|
- amount: totalAmount,
|
|
|
|
|
- payAmount: totalAmount,
|
|
|
|
|
- goodsDetail,
|
|
|
|
|
addressId: selectedAddress.id,
|
|
addressId: selectedAddress.id,
|
|
|
- recevierName: selectedAddress.name,
|
|
|
|
|
- receiverMobile: selectedAddress.phone,
|
|
|
|
|
- address: `${selectedAddress.province?.name || ''}${selectedAddress.city?.name || ''}${selectedAddress.district?.name || ''}${selectedAddress.town?.name || ''}${selectedAddress.address}`,
|
|
|
|
|
- orderType: 1,
|
|
|
|
|
- payType: 0,
|
|
|
|
|
- payState: 0,
|
|
|
|
|
- state: 0
|
|
|
|
|
|
|
+ productOwn: '自营',
|
|
|
|
|
+ consumeFrom: '积分兑换',
|
|
|
|
|
+ products: orderItems.map(item => ({
|
|
|
|
|
+ id: item.id,
|
|
|
|
|
+ num: item.quantity
|
|
|
|
|
+ }))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- const response = await orderClient.$post({ json: orderData })
|
|
|
|
|
- if (response.status !== 201) {
|
|
|
|
|
|
|
+ const response = await orderClient['create-order']['$post']({ json: orderData })
|
|
|
|
|
+ if (response.status !== 200) {
|
|
|
throw new Error('创建订单失败')
|
|
throw new Error('创建订单失败')
|
|
|
}
|
|
}
|
|
|
return response.json()
|
|
return response.json()
|
|
@@ -98,7 +83,7 @@ export default function OrderSubmitPage() {
|
|
|
|
|
|
|
|
// 跳转到订单详情页
|
|
// 跳转到订单详情页
|
|
|
Taro.redirectTo({
|
|
Taro.redirectTo({
|
|
|
- url: `/pages/order-detail/index?id=${data.id}`
|
|
|
|
|
|
|
+ url: `/pages/order-detail/index?id=${data.orderId}`
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
onError: (error) => {
|
|
onError: (error) => {
|