|
@@ -149,6 +149,22 @@
|
|
|
@click="onManualRefundClick(row)">
|
|
@click="onManualRefundClick(row)">
|
|
|
线下退款
|
|
线下退款
|
|
|
</el-button>
|
|
</el-button>
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ v-if="row.status==='NEW' && row.isOverdue"
|
|
|
|
|
+ size="small"
|
|
|
|
|
+ plain
|
|
|
|
|
+ type="info"
|
|
|
|
|
+ @click="onSuspendRefundClick(row)">
|
|
|
|
|
+ 挂起
|
|
|
|
|
+ </el-button>
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ v-if="row.status==='SUSPENDED'"
|
|
|
|
|
+ size="small"
|
|
|
|
|
+ plain
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="onCancelSuspendRefundClick(row)">
|
|
|
|
|
+ 取消挂起
|
|
|
|
|
+ </el-button>
|
|
|
</template>
|
|
</template>
|
|
|
<template v-else>
|
|
<template v-else>
|
|
|
<div>{{ row[field.prop] }}</div>
|
|
<div>{{ row[field.prop] }}</div>
|
|
@@ -217,7 +233,7 @@ const state = reactive({
|
|
|
{label: '退款入账账户', prop: 'userReceivedAccount', resizable: true, width: 120},
|
|
{label: '退款入账账户', prop: 'userReceivedAccount', resizable: true, width: 120},
|
|
|
{label: '操作人', prop: 'adminUsername', resizable: true, width: 120},
|
|
{label: '操作人', prop: 'adminUsername', resizable: true, width: 120},
|
|
|
{
|
|
{
|
|
|
- label: '操作', prop: 'action', width: 110, align: 'center', fixed: 'right',
|
|
|
|
|
|
|
+ label: '操作', prop: 'action', width: 180, align: 'center', fixed: 'right',
|
|
|
}
|
|
}
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
@@ -337,6 +353,68 @@ const onManualRefundClick = (row: any) => {
|
|
|
});
|
|
});
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+// 挂起退款申请
|
|
|
|
|
+const onSuspendRefundClick = (row: any) => {
|
|
|
|
|
+ Msg.confirm(
|
|
|
|
|
+ `<div style="line-height: 2; font-size: 14px;">` +
|
|
|
|
|
+ `<div style="font-weight: bold; color: #909399; font-size: 15px; margin-bottom: 10px;">【挂起退款申请】</div>` +
|
|
|
|
|
+ `<div style="margin: 8px 0;"><span style="color: #606266;">用户手机:</span><span style="font-weight: 500;">${row.mobilePhone}</span></div>` +
|
|
|
|
|
+ `<div style="margin: 8px 0;"><span style="color: #606266;">退款金额:</span><span style="font-weight: 500; color: #F56C6C;">${u.fmt.fmtMoney(row.refund)}</span></div>` +
|
|
|
|
|
+ `<div style="margin: 8px 0;"><span style="color: #606266;">充值时间:</span><span style="font-weight: 500;">${row.rechargeTime ? row.rechargeTime.replace('T', ' ') : '无'}</span></div>` +
|
|
|
|
|
+ `<div style="margin: 15px 0; padding: 10px; background-color: #F4F4F5; border-radius: 4px; border-left: 3px solid #909399;">` +
|
|
|
|
|
+ `<div style="color: #909399; margin-bottom: 5px;">该订单已超过365天退款时限</div>` +
|
|
|
|
|
+ `<div style="color: #909399;">挂起后可在方便时统一处理</div>` +
|
|
|
|
|
+ `</div>` +
|
|
|
|
|
+ `</div>`,
|
|
|
|
|
+ '挂起确认',
|
|
|
|
|
+ {
|
|
|
|
|
+ confirmButtonText: '确认挂起',
|
|
|
|
|
+ cancelButtonText: '取消',
|
|
|
|
|
+ type: 'info'
|
|
|
|
|
+ }
|
|
|
|
|
+ ).then(() => {
|
|
|
|
|
+ $get(`/finance/suspendRefund/${row.refundLogId}`).then((res: any) => {
|
|
|
|
|
+ Msg.message(`挂起成功`)
|
|
|
|
|
+ loadData(true)
|
|
|
|
|
+ }).catch(e => {
|
|
|
|
|
+ console.error(e)
|
|
|
|
|
+ Msg.message(`操作失败:${e.message}`, 'error')
|
|
|
|
|
+ })
|
|
|
|
|
+ }).catch(() => {
|
|
|
|
|
+ // 用户取消操作
|
|
|
|
|
+ });
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
|
|
+// 取消挂起退款申请
|
|
|
|
|
+const onCancelSuspendRefundClick = (row: any) => {
|
|
|
|
|
+ Msg.confirm(
|
|
|
|
|
+ `<div style="line-height: 2; font-size: 14px;">` +
|
|
|
|
|
+ `<div style="font-weight: bold; color: #409EFF; font-size: 15px; margin-bottom: 10px;">【取消挂起】</div>` +
|
|
|
|
|
+ `<div style="margin: 8px 0;"><span style="color: #606266;">用户手机:</span><span style="font-weight: 500;">${row.mobilePhone}</span></div>` +
|
|
|
|
|
+ `<div style="margin: 8px 0;"><span style="color: #606266;">退款金额:</span><span style="font-weight: 500; color: #F56C6C;">${u.fmt.fmtMoney(row.refund)}</span></div>` +
|
|
|
|
|
+ `<div style="margin: 15px 0; padding: 10px; background-color: #ECF5FF; border-radius: 4px; border-left: 3px solid #409EFF;">` +
|
|
|
|
|
+ `<div style="color: #409EFF;">取消挂起后,退款状态将恢复为"新申请"</div>` +
|
|
|
|
|
+ `</div>` +
|
|
|
|
|
+ `</div>`,
|
|
|
|
|
+ '取消挂起确认',
|
|
|
|
|
+ {
|
|
|
|
|
+ confirmButtonText: '确认取消挂起',
|
|
|
|
|
+ cancelButtonText: '取消',
|
|
|
|
|
+ type: 'primary'
|
|
|
|
|
+ }
|
|
|
|
|
+ ).then(() => {
|
|
|
|
|
+ $get(`/finance/cancelSuspendRefund/${row.refundLogId}`).then((res: any) => {
|
|
|
|
|
+ Msg.message(`取消挂起成功`)
|
|
|
|
|
+ loadData(true)
|
|
|
|
|
+ }).catch(e => {
|
|
|
|
|
+ console.error(e)
|
|
|
|
|
+ Msg.message(`操作失败:${e.message}`, 'error')
|
|
|
|
|
+ })
|
|
|
|
|
+ }).catch(() => {
|
|
|
|
|
+ // 用户取消操作
|
|
|
|
|
+ });
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
|
|
|
|
|
const handleTableSelectionChange = (selection: any) => {
|
|
const handleTableSelectionChange = (selection: any) => {
|
|
|
console.log("handleTableSelectionChange>>", selection)
|
|
console.log("handleTableSelectionChange>>", selection)
|