mirror of
https://gitee.com/bootx/dax-pay-ui.git
synced 2025-09-02 10:26:32 +00:00
feat 支付记录各种数据完整性调整
This commit is contained in:
@@ -99,8 +99,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
createMessage.success('删除成功')
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
defineExpose({
|
||||
init,
|
||||
|
@@ -135,8 +135,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
createMessage.success('删除成功')
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
|
||||
//发送
|
||||
|
@@ -120,8 +120,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
notification.success({ message: '删除成功' })
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@@ -112,8 +112,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
createMessage.success('删除成功')
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
defineExpose({
|
||||
init,
|
||||
|
@@ -131,8 +131,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
createMessage.success('删除成功')
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@@ -126,8 +126,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
notification.success({ message: '删除成功' })
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@@ -130,8 +130,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
createMessage.success('删除成功')
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@@ -152,8 +152,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
notification.success({ message: '删除成功' })
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
// 批量删除
|
||||
function removeDataScopeBatch() {
|
||||
|
@@ -147,8 +147,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
createMessage.success('删除成功')
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@@ -68,8 +68,8 @@
|
||||
loading.value = true
|
||||
dictDropDown('WeChatMediaType').then((res) => {
|
||||
mediaTypes = res
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
|
||||
function queryPage() {
|
||||
|
@@ -104,8 +104,8 @@
|
||||
function remove(record) {
|
||||
del(record.id).then(() => {
|
||||
createMessage.success('删除成功')
|
||||
queryPage()
|
||||
})
|
||||
queryPage()
|
||||
}
|
||||
// 同步
|
||||
function syncInfo() {
|
||||
|
@@ -8,9 +8,9 @@
|
||||
<vxe-table
|
||||
row-id="id"
|
||||
ref="xTable"
|
||||
:sort-config="{ remote: true, trigger: 'cell' }"
|
||||
:data="pagination.records"
|
||||
:loading="loading"
|
||||
:sort-config="{ remote: true, trigger: 'cell' }"
|
||||
@sort-change="sortChange"
|
||||
>
|
||||
<vxe-column type="seq" title="序号" width="60" />
|
||||
|
@@ -25,7 +25,7 @@
|
||||
{{ form.gatewayOrderNo }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="交易类型">
|
||||
<a-tag>{{ dictConvert('PayReconcileTrade', form.type) }}</a-tag>
|
||||
<a-tag>{{ dictConvert('PayReconcileTrade', form.repairType) }}</a-tag>
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="创建时间">
|
||||
{{ form.createTime }}
|
||||
|
@@ -9,9 +9,9 @@
|
||||
<vxe-column field="paymentId" title="本地订单ID" />
|
||||
<vxe-column field="refundId" title="本地退款ID" />
|
||||
<vxe-column field="gatewayOrderNo" title="网关订单号" />
|
||||
<vxe-column field="type" title="交易类型">
|
||||
<vxe-column field="repairType" title="交易类型">
|
||||
<template #default="{ row }">
|
||||
<a-tag>{{ dictConvert('PayReconcileTrade', row.type) }}</a-tag>
|
||||
<a-tag>{{ dictConvert('PayReconcileTrade', row.repairType) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="createTime" title="创建时间" />
|
||||
|
@@ -11,7 +11,14 @@
|
||||
</a-space>
|
||||
</template>
|
||||
</vxe-toolbar>
|
||||
<vxe-table row-id="id" ref="xTable" :data="pagination.records" :loading="loading">
|
||||
<vxe-table
|
||||
row-id="id"
|
||||
ref="xTable"
|
||||
:data="pagination.records"
|
||||
:loading="loading"
|
||||
:sort-config="{ remote: true, trigger: 'cell' }"
|
||||
@sort-change="sortChange"
|
||||
>
|
||||
<vxe-column type="seq" title="序号" width="60" />
|
||||
<vxe-column field="date" title="对账日期" />
|
||||
<vxe-column field="batchNo" title="批次号" />
|
||||
@@ -63,14 +70,14 @@
|
||||
import { LabeledValue } from 'ant-design-vue/lib/select'
|
||||
import { computed, onMounted } from 'vue'
|
||||
import { DATE, LIST, QueryField, STRING } from '/@/components/Bootx/Query/Query'
|
||||
import { VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import { VxeTable, VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import { downAndSave, page } from './ReconcileOrder.api'
|
||||
import ReconcileOrderInfo from './ReconcileOrderInfo.vue'
|
||||
import ReconcileDetailList from './ReconcileDetailList.vue'
|
||||
import ReconcileOrderCreate from '/@/views/payment/order/reconcile/ReconcileOrderCreate.vue'
|
||||
|
||||
// 使用hooks
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, pages, model, loading } = useTablePage(queryPage)
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, sortChange, sortParam, pagination, pages, model, loading } = useTablePage(queryPage)
|
||||
const { notification, createMessage, createConfirm } = useMessage()
|
||||
const { dictConvert, dictDropDown } = useDict()
|
||||
|
||||
@@ -121,6 +128,7 @@
|
||||
page({
|
||||
...model.queryParam,
|
||||
...pages,
|
||||
...sortParam,
|
||||
}).then(({ data }) => {
|
||||
pageQueryResHandel(data)
|
||||
})
|
||||
|
@@ -1,7 +1,14 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="m-3 p-3 pt-5 bg-white">
|
||||
<b-query :query-params="model.queryParam" :fields="fields" @query="queryPage" @reset="resetQueryParams" />
|
||||
<b-query
|
||||
:query-params="model.queryParam"
|
||||
:fields="fields"
|
||||
@query="queryPage"
|
||||
@reset="resetQueryParams"
|
||||
:sort-config="{ remote: true, trigger: 'cell' }"
|
||||
@sort-change="sortChange"
|
||||
/>
|
||||
</div>
|
||||
<div class="m-3 p-3 bg-white">
|
||||
<vxe-toolbar ref="xToolbar" custom :refresh="{ queryMethod: queryPage }" />
|
||||
@@ -62,7 +69,7 @@
|
||||
import { page } from './RefundOrder.api'
|
||||
import useTablePage from '/@/hooks/bootx/useTablePage'
|
||||
import RefundOrderInfo from './RefundOrderInfo.vue'
|
||||
import { VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import { VxeTable, VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import BQuery from '/@/components/Bootx/Query/BQuery.vue'
|
||||
import { useMessage } from '/@/hooks/web/useMessage'
|
||||
import { LIST, QueryField, STRING } from '/@/components/Bootx/Query/Query'
|
||||
|
@@ -33,7 +33,7 @@ export interface PayCallbackRecord extends BaseEntity {
|
||||
// 支付通道
|
||||
payChannel?: string
|
||||
// 回调类型
|
||||
type?: string
|
||||
callbackType?: string
|
||||
// 通知消息
|
||||
notifyInfo?: string
|
||||
// 回调处理状态
|
||||
|
@@ -10,11 +10,17 @@
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-descriptions bordered title="" :column="{ md: 1, sm: 1, xs: 1 }">
|
||||
<a-descriptions-item label="支付记录id">
|
||||
{{ form.paymentId }}
|
||||
<a-descriptions-item label="本地订单ID">
|
||||
{{ form.orderId }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="支付网关订单号">
|
||||
{{ form.gatewayOrderNo }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="支付通道">
|
||||
{{ dictConvert('PayChannel', form.payChannel) }}
|
||||
<a-tag>{{ dictConvert('PayChannel', form.payChannel) }}</a-tag>
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="支付通道">
|
||||
<a-tag>{{ dictConvert('PayCallbackType', form.callbackType) }}</a-tag>
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="通知消息">
|
||||
<json-preview :data="JSON.parse(form.notifyInfo || '{}')" />
|
||||
@@ -26,7 +32,7 @@
|
||||
{{ form.msg }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="通知时间">
|
||||
{{ form.notifyTime }}
|
||||
{{ form.createTime }}
|
||||
</a-descriptions-item>
|
||||
</a-descriptions>
|
||||
</a-spin>
|
||||
@@ -62,13 +68,7 @@
|
||||
|
||||
// 表单
|
||||
const formRef = $ref<FormInstance>()
|
||||
let form = $ref<PayCallbackRecord>({
|
||||
id: null,
|
||||
paymentId: '',
|
||||
notifyInfo: '',
|
||||
msg: '',
|
||||
notifyTime: '',
|
||||
})
|
||||
let form = $ref<PayCallbackRecord>({})
|
||||
// 入口
|
||||
function init(id) {
|
||||
visible.value = true
|
||||
|
@@ -5,27 +5,39 @@
|
||||
</div>
|
||||
<div class="m-3 p-3 bg-white">
|
||||
<vxe-toolbar ref="xToolbar" custom :refresh="{ queryMethod: queryPage }" />
|
||||
<vxe-table row-id="id" ref="xTable" :data="pagination.records" :loading="loading">
|
||||
<vxe-table
|
||||
row-id="id"
|
||||
ref="xTable"
|
||||
:data="pagination.records"
|
||||
:loading="loading"
|
||||
:sort-config="{ remote: true, trigger: 'cell' }"
|
||||
@sort-change="sortChange"
|
||||
>
|
||||
<vxe-column type="seq" title="序号" width="60" />
|
||||
<vxe-column field="paymentId" title="原支付号" width="170" sortable>
|
||||
<vxe-column field="orderId" title="本地订单ID" width="170">
|
||||
<template #default="{ row }">
|
||||
<a @click="showPayment(row.paymentId)">
|
||||
{{ row.paymentId }}
|
||||
<a @click="showOrder(row)">
|
||||
{{ row.orderId }}
|
||||
</a>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="payChannel" title="支付通道">
|
||||
<template #default="{ row }">
|
||||
{{ dictConvert('PayChannel', row.payChannel) }}
|
||||
<a-tag>{{ dictConvert('PayChannel', row.payChannel) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="callbackType" title="回调类型">
|
||||
<template #default="{ row }">
|
||||
<a-tag>{{ dictConvert('PayCallbackType', row.callbackType) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="status" title="处理状态">
|
||||
<template #default="{ row }">
|
||||
{{ dictConvert('PayCallbackStatus', row.status) }}
|
||||
<a-tag>{{ dictConvert('PayCallbackStatus', row.status) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="msg" title="提示信息" />
|
||||
<vxe-column field="notifyTime" title="通知时间" />
|
||||
<vxe-column field="createTime" title="通知时间" sortable />
|
||||
<vxe-column fixed="right" width="60" :showOverflow="false" title="操作">
|
||||
<template #default="{ row }">
|
||||
<span>
|
||||
@@ -44,6 +56,7 @@
|
||||
/>
|
||||
<pay-callback-record-info ref="payCallbackRecordInfo" />
|
||||
<pay-order-info ref="payOrderInfo" />
|
||||
<refund-order-info ref="refundOrderInfo" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -51,19 +64,21 @@
|
||||
<script lang="ts" setup>
|
||||
import { computed, onMounted } from 'vue'
|
||||
import { $ref } from 'vue/macros'
|
||||
import { page } from './PayCallbackRecord.api'
|
||||
import { page, PayCallbackRecord } from './PayCallbackRecord.api'
|
||||
import useTablePage from '/@/hooks/bootx/useTablePage'
|
||||
import { VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import { VxeTable, VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import BQuery from '/@/components/Bootx/Query/BQuery.vue'
|
||||
import { useMessage } from '/@/hooks/web/useMessage'
|
||||
import { LIST, QueryField, STRING } from '/@/components/Bootx/Query/Query'
|
||||
import { useDict } from '/@/hooks/bootx/useDict'
|
||||
import PayCallbackRecordInfo from './PayCallbackRecordInfo.vue'
|
||||
import { LabeledValue } from 'ant-design-vue/lib/select'
|
||||
import PayOrderInfo from "/@/views/payment/order/pay/PayOrderInfo.vue";
|
||||
import PayOrderInfo from '/@/views/payment/order/pay/PayOrderInfo.vue'
|
||||
import RefundOrderInfo from '/@/views/payment/order/refund/RefundOrderInfo.vue'
|
||||
|
||||
// 使用hooks
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, pages, model, loading } = useTablePage(queryPage)
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, sortChange, sortParam, pages, model, loading } =
|
||||
useTablePage(queryPage)
|
||||
const { notification, createMessage, createConfirm } = useMessage()
|
||||
const { dictConvert, dictDropDown } = useDict()
|
||||
|
||||
@@ -95,6 +110,7 @@
|
||||
const xToolbar = $ref<VxeToolbarInstance>()
|
||||
const payCallbackRecordInfo = $ref<any>()
|
||||
const payOrderInfo = $ref<any>()
|
||||
const refundOrderInfo = $ref<any>()
|
||||
|
||||
onMounted(() => {
|
||||
initData()
|
||||
@@ -121,6 +137,7 @@
|
||||
page({
|
||||
...model.queryParam,
|
||||
...pages,
|
||||
...sortParam,
|
||||
}).then(({ data }) => {
|
||||
pageQueryResHandel(data)
|
||||
})
|
||||
@@ -134,11 +151,14 @@
|
||||
}
|
||||
|
||||
/**
|
||||
* 查看支付单信息
|
||||
* @param paymentId
|
||||
* 查看订单单信息
|
||||
*/
|
||||
function showPayment(paymentId) {
|
||||
payOrderInfo.init(paymentId)
|
||||
function showOrder(record: PayCallbackRecord) {
|
||||
if (record.callbackType === 'pay') {
|
||||
payOrderInfo.init(record.orderId)
|
||||
} else {
|
||||
refundOrderInfo.init(record.orderId)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@@ -5,7 +5,14 @@
|
||||
</div>
|
||||
<div class="m-3 p-3 bg-white">
|
||||
<vxe-toolbar ref="xToolbar" custom :refresh="{ queryMethod: queryPage }" />
|
||||
<vxe-table row-id="id" ref="xTable" :data="pagination.records" :loading="loading">
|
||||
<vxe-table
|
||||
row-id="id"
|
||||
ref="xTable"
|
||||
:data="pagination.records"
|
||||
:loading="loading"
|
||||
:sort-config="{ remote: true, trigger: 'cell' }"
|
||||
@sort-change="sortChange"
|
||||
>
|
||||
<vxe-column type="seq" title="序号" width="60" />
|
||||
<vxe-column field="paymentId" title="原支付号" width="170" sortable>
|
||||
<template #default="{ row }">
|
||||
@@ -56,17 +63,17 @@
|
||||
import { $ref } from 'vue/macros'
|
||||
import { page } from './PayCloseRecord.api'
|
||||
import useTablePage from '/@/hooks/bootx/useTablePage'
|
||||
import { VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import { VxeTable, VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import BQuery from '/@/components/Bootx/Query/BQuery.vue'
|
||||
import { useMessage } from '/@/hooks/web/useMessage'
|
||||
import { LIST, QueryField, STRING } from '/@/components/Bootx/Query/Query'
|
||||
import { useDict } from '/@/hooks/bootx/useDict'
|
||||
import { LabeledValue } from 'ant-design-vue/lib/select'
|
||||
import PayCloseRecordInfo from './PayCloseRecordInfo.vue'
|
||||
import PayOrderInfo from "/@/views/payment/order/pay/PayOrderInfo.vue";
|
||||
import PayOrderInfo from '/@/views/payment/order/pay/PayOrderInfo.vue'
|
||||
|
||||
// 使用hooks
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, pages, model, loading } = useTablePage(queryPage)
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, sortChange, sortParam, pages, model, loading } = useTablePage(queryPage)
|
||||
const { notification, createMessage, createConfirm } = useMessage()
|
||||
const { dictConvert, dictDropDown } = useDict()
|
||||
|
||||
@@ -126,6 +133,7 @@
|
||||
page({
|
||||
...model.queryParam,
|
||||
...pages,
|
||||
...sortParam
|
||||
}).then(({ data }) => {
|
||||
pageQueryResHandel(data)
|
||||
})
|
||||
|
@@ -26,14 +26,18 @@ export function get(paymentId) {
|
||||
* 支付回调记录
|
||||
*/
|
||||
export interface PayRepairRecord extends BaseEntity {
|
||||
// 支付号
|
||||
paymentId?: string
|
||||
// 业务号
|
||||
businessNo?: string
|
||||
// 支付回调记录id
|
||||
repairId?: string
|
||||
// 本地订单ID
|
||||
orderId?: string
|
||||
// 本地业务号
|
||||
orderNo?: string
|
||||
// 类型 支付修复/退款修复
|
||||
repairType?: string
|
||||
// 修复来源
|
||||
repairSource?: string
|
||||
// 修复类型
|
||||
repairType?: string
|
||||
repairWay?: string
|
||||
// 修复的异步支付通道
|
||||
asyncChannel?: string
|
||||
// 修复前状态
|
||||
|
@@ -10,17 +10,26 @@
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-descriptions bordered title="" :column="{ md: 1, sm: 1, xs: 1 }">
|
||||
<a-descriptions-item label="支付记录id">
|
||||
{{ form.paymentId }}
|
||||
<a-descriptions-item label="主键ID">
|
||||
{{ form.id }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="业务号">
|
||||
{{ form.businessNo }}
|
||||
<a-descriptions-item label="修复号">
|
||||
{{ form.repairId }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="本地订单ID">
|
||||
{{ form.orderId }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="本地业务号">
|
||||
{{ form.orderNo }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="支付">
|
||||
{{ dictConvert('PayRepairSource', form.repairSource) }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="修复来源">
|
||||
{{ dictConvert('PayRepairSource', form.repairSource) }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="修复来源">
|
||||
{{ dictConvert('PayRepairType', form.repairType) }}
|
||||
<a-descriptions-item label="修复方式">
|
||||
{{ dictConvert('PayRepairType', form.repairWay) }}
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="修复通道">
|
||||
{{ dictConvert('AsyncPayChannel', form.asyncChannel) }}
|
||||
|
@@ -5,16 +5,24 @@
|
||||
</div>
|
||||
<div class="m-3 p-3 bg-white">
|
||||
<vxe-toolbar ref="xToolbar" custom :refresh="{ queryMethod: queryPage }" />
|
||||
<vxe-table row-id="id" ref="xTable" :data="pagination.records" :loading="loading">
|
||||
<vxe-table
|
||||
row-id="id"
|
||||
ref="xTable"
|
||||
:data="pagination.records"
|
||||
:loading="loading"
|
||||
:sort-config="{ remote: true, trigger: 'cell' }"
|
||||
@sort-change="sortChange"
|
||||
>
|
||||
<vxe-column type="seq" title="序号" width="60" />
|
||||
<vxe-column field="paymentId" title="原支付号" width="170" sortable>
|
||||
<vxe-column field="repairId" title="修复号" width="170" />
|
||||
<vxe-column field="orderId" title="被修复订单ID" width="170">
|
||||
<template #default="{ row }">
|
||||
<a @click="showPayment(row.paymentId)">
|
||||
{{ row.paymentId }}
|
||||
<a @click="showOrder(row)">
|
||||
{{ row.orderId }}
|
||||
</a>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="businessNo" title="业务号" />
|
||||
<vxe-column field="orderNo" title="本地业务号" />
|
||||
<vxe-column field="repairSource" title="修复来源">
|
||||
<template #default="{ row }">
|
||||
<a-tag>{{ dictConvert('PayRepairSource', row.repairSource) }}</a-tag>
|
||||
@@ -25,19 +33,9 @@
|
||||
<a-tag>{{ dictConvert('PayRepairType', row.repairType) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="asyncChannel" title="修复通道">
|
||||
<vxe-column field="repairType" title="修复方式">
|
||||
<template #default="{ row }">
|
||||
<a-tag>{{ dictConvert('AsyncPayChannel', row.asyncChannel) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="beforeStatus" title="修复前类型">
|
||||
<template #default="{ row }">
|
||||
<a-tag>{{ dictConvert('PayStatus', row.beforeStatus) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="afterStatus" title="修复后类型">
|
||||
<template #default="{ row }">
|
||||
<a-tag>{{ dictConvert('PayStatus', row.afterStatus) }}</a-tag>
|
||||
<a-tag>{{ dictConvert('PayRepairWay', row.repairType) || dictConvert('RefundRepairWay', row.repairType) }}</a-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="createTime" title="修复时间" />
|
||||
@@ -60,30 +58,33 @@
|
||||
</div>
|
||||
<pay-repair-record-info ref="payRepairRecordInfo" />
|
||||
<pay-order-info ref="payOrderInfo" />
|
||||
<refund-order-info ref="refundOrderInfo" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { computed, onMounted } from 'vue'
|
||||
import { $ref } from 'vue/macros'
|
||||
import { page } from './PayRepairRecord.api'
|
||||
import { page, PayRepairRecord } from './PayRepairRecord.api'
|
||||
import useTablePage from '/@/hooks/bootx/useTablePage'
|
||||
import { VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import { VxeTable, VxeTableInstance, VxeToolbarInstance } from 'vxe-table'
|
||||
import BQuery from '/@/components/Bootx/Query/BQuery.vue'
|
||||
import { useMessage } from '/@/hooks/web/useMessage'
|
||||
import { LIST, QueryField, STRING } from '/@/components/Bootx/Query/Query'
|
||||
import { useDict } from '/@/hooks/bootx/useDict'
|
||||
import { LabeledValue } from 'ant-design-vue/lib/select'
|
||||
import PayRepairRecordInfo from './PayRepairRecordInfo.vue'
|
||||
import PayOrderInfo from "/@/views/payment/order/pay/PayOrderInfo.vue";
|
||||
import PayOrderInfo from '/@/views/payment/order/pay/PayOrderInfo.vue'
|
||||
import RefundOrderInfo from '/@/views/payment/order/refund/RefundOrderInfo.vue'
|
||||
|
||||
// 使用hooks
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, pages, model, loading } = useTablePage(queryPage)
|
||||
const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, sortChange, sortParam, pages, model, loading } = useTablePage(queryPage)
|
||||
const { notification, createMessage, createConfirm } = useMessage()
|
||||
const { dictConvert, dictDropDown } = useDict()
|
||||
|
||||
let repairSourceList = $ref<LabeledValue[]>([])
|
||||
let repairTypeList = $ref<LabeledValue[]>([])
|
||||
let repairWayList = $ref<LabeledValue[]>([])
|
||||
let asyncChannelList = $ref<LabeledValue[]>([])
|
||||
|
||||
// 查询条件
|
||||
@@ -105,6 +106,13 @@
|
||||
placeholder: '请选择修复类型',
|
||||
selectList: repairTypeList,
|
||||
},
|
||||
{
|
||||
field: 'repairWay',
|
||||
type: LIST,
|
||||
name: '修复方式',
|
||||
placeholder: '请选择修复方式',
|
||||
selectList: repairWayList,
|
||||
},
|
||||
{
|
||||
field: 'asyncChannel',
|
||||
type: LIST,
|
||||
@@ -119,6 +127,7 @@
|
||||
const xToolbar = $ref<VxeToolbarInstance>()
|
||||
const payRepairRecordInfo = $ref<any>()
|
||||
const payOrderInfo = $ref<any>()
|
||||
const refundOrderInfo = $ref<any>()
|
||||
|
||||
onMounted(() => {
|
||||
init()
|
||||
@@ -136,6 +145,7 @@
|
||||
repairSourceList = await dictDropDown('PayRepairSource')
|
||||
repairTypeList = await dictDropDown('PayRepairType')
|
||||
asyncChannelList = await dictDropDown('AsyncPayChannel')
|
||||
repairWayList = (await dictDropDown('PayRepairWay')).concat(await dictDropDown('RefundRepairWay'))
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -159,11 +169,14 @@
|
||||
}
|
||||
|
||||
/**
|
||||
* 查看支付单信息
|
||||
* @param paymentId
|
||||
* 查看订单单信息
|
||||
*/
|
||||
function showPayment(paymentId) {
|
||||
payOrderInfo.init(paymentId)
|
||||
function showOrder(record: PayRepairRecord) {
|
||||
if (record.repairType === 'pay') {
|
||||
payOrderInfo.init(record.orderId)
|
||||
} else {
|
||||
refundOrderInfo.init(record.orderId)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
Reference in New Issue
Block a user