This commit is contained in:
2026-06-18 00:10:27 +08:00
parent fbf40a1575
commit 41099f4190
9 changed files with 328 additions and 68 deletions
@@ -1,8 +1,10 @@
<script setup lang="ts">
import {
appMerchantOrderOrderListPost,
appMerchantOrderCancelOrderPost,
type MerchantOrderVo
} from "@/service";
import CancelOrder from '@/pages-store/pages/order/components/cancel-order.vue'
import {callPhone} from "@/utils/utils";
import {OrderCancelStatus, OrderStatus} from "@/constant/enums";
import {useUserStore} from "@/store";
@@ -141,9 +143,32 @@ function handleClick(item: MerchantOrderVo) {
})
}
const cancelOrderRef = ref<InstanceType<typeof CancelOrder>>()
const pendingCancelOrder = ref<MerchantOrderVo | null>(null)
function handleCancelClick(item: MerchantOrderVo) {
uni.navigateTo({
url: '/pages-store/pages/order/index?id=' + item.id
pendingCancelOrder.value = item
cancelOrderRef.value?.onOpen()
}
function confirmCancel(reason: string) {
const order = pendingCancelOrder.value
if (!order?.id) return
appMerchantOrderCancelOrderPost({
body: {
orderId: order.id,
cancelReason: reason,
},
}).then(() => {
cancelOrderRef.value?.onClose()
pendingCancelOrder.value = null
uni.showToast({
title: t('pages-store.order.cancelSuccess'),
icon: 'none',
})
setTimeout(() => {
paging.value?.refresh()
}, 500)
})
}
@@ -295,6 +320,7 @@ defineExpose({
</view>
</view>
</z-paging>
<cancel-order ref="cancelOrderRef" @confirm="confirmCancel" />
</view>
</template>