feat: ✨ 商品详情页的立即购买
This commit is contained in:
parent
f8673b8553
commit
1e9cd792b4
@ -270,8 +270,10 @@ const handlerAddCart = async (e: SkuPopupEvent) => {
|
||||
}
|
||||
|
||||
// 立即购买
|
||||
const handlerBuyNow = () => {
|
||||
console.log('立即购买')
|
||||
const handlerBuyNow = (e: SkuPopupEvent) => {
|
||||
uni.navigateTo({
|
||||
url: `/pagesOrder/create/create?skuId=${e._id}&count=${e.buy_num}`,
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@ -79,13 +79,13 @@ const handleDelete = (id: string) => {
|
||||
|
||||
// 创建订单时更改地址
|
||||
const props = defineProps<{
|
||||
from: string
|
||||
from?: string
|
||||
}>()
|
||||
|
||||
const useSelectedAddress = useSelectedAddressStore()
|
||||
|
||||
const handleSelectAddress = (address: AddressItem) => {
|
||||
if (props.from === 'order') {
|
||||
if (props?.from === 'order') {
|
||||
useSelectedAddress.setSelectedAddress(address)
|
||||
uni.navigateBack()
|
||||
}
|
||||
|
@ -92,9 +92,8 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { getMemberOrderAPI } from '@/services/order'
|
||||
import { getMemberOrderPreAPI, getMemberOrderPreNowAPI } from '@/services/order'
|
||||
import { useSelectedAddressStore } from '@/stores/modules/selectedAddress'
|
||||
import type { AddressItem } from '@/types/address'
|
||||
import type { OrderPreResult } from '@/types/order'
|
||||
import { onShow } from '@dcloudio/uni-app'
|
||||
import { computed, ref } from 'vue'
|
||||
@ -120,8 +119,20 @@ const onChangeDelivery: UniHelper.SelectorPickerOnChange = (ev) => {
|
||||
|
||||
// 获取预付订单
|
||||
const orderPreList = ref<OrderPreResult>()
|
||||
const props = defineProps<{
|
||||
skuId?: string
|
||||
count?: number
|
||||
}>()
|
||||
const getOrderPre = async () => {
|
||||
const res = await getMemberOrderAPI()
|
||||
let res
|
||||
if (props?.skuId && props?.count) {
|
||||
res = await getMemberOrderPreNowAPI({
|
||||
skuId: props.skuId,
|
||||
count: props.count,
|
||||
})
|
||||
} else {
|
||||
res = await getMemberOrderPreAPI()
|
||||
}
|
||||
console.log(res)
|
||||
if (res.code === '1') {
|
||||
orderPreList.value = res.result
|
||||
|
@ -28,11 +28,28 @@ export const orderStateList = [
|
||||
]
|
||||
|
||||
/**
|
||||
* 获取预付订单
|
||||
* 获取预付订单: 从购物车跳转
|
||||
*/
|
||||
export const getMemberOrderAPI = () => {
|
||||
export const getMemberOrderPreAPI = () => {
|
||||
return http<OrderPreResult>({
|
||||
url: '/member/order/pre',
|
||||
method: 'GET',
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取预付订单-立即购买: 从商品详情页跳转
|
||||
* */
|
||||
type getMemberOrderPreNowParams = {
|
||||
skuId: string
|
||||
count: number
|
||||
addressId?: string
|
||||
}
|
||||
|
||||
export const getMemberOrderPreNowAPI = (data: getMemberOrderPreNowParams) => {
|
||||
return http<OrderPreResult>({
|
||||
url: '/member/order/pre/now',
|
||||
method: 'GET',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user