|
|
|
@ -14,10 +14,11 @@ |
|
|
|
<el-text size="large" style="width:4vw;">产品名称</el-text> |
|
|
|
<el-cascader v-model="searchForm.goodsName" :options="productList" style="width: 10vw;" clearable /> |
|
|
|
</div> |
|
|
|
<div class="item1" v-if="adminData.markets === '总部'"> |
|
|
|
<el-text size="large" style="width:4vw;">所属地区</el-text> |
|
|
|
<el-cascader style="width: 9vw;" v-model="searchForm.market" :options="market" placeholder="请选择所属地区" |
|
|
|
clearable @change="handleMarketChange" /> |
|
|
|
<div class="item1"> |
|
|
|
<el-text size="large" style="width:4vw;">付款币种</el-text> |
|
|
|
<el-select v-model="searchForm.paymentCurrency" style="width:9vw;" clearable> |
|
|
|
<el-option v-for="item in currencies" :key="item" :label="item" :value="item" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
<div class="item1"> |
|
|
|
<el-text size="large" style="width:4vw;" multiple>订单状态</el-text> |
|
|
|
@ -28,27 +29,19 @@ |
|
|
|
</div> |
|
|
|
<div class="condition"> |
|
|
|
<div class="item2"> |
|
|
|
<el-text size="large" style="width:4vw;">付款币种</el-text> |
|
|
|
<el-select v-model="searchForm.paymentCurrency" style="width:9vw;" clearable> |
|
|
|
<el-option v-for="item in currencies" :key="item" :label="item" :value="item" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
<div class="item2"> |
|
|
|
<el-text size="large" style="width:4vw;">支付方式</el-text> |
|
|
|
<el-select v-model="searchForm.payType" style="width:9vw;" clearable> |
|
|
|
<el-option v-for="item in channelOptions" :key="item" :label="item" :value="item" /> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
<div class="item2" style="width: 28.5vw;"> |
|
|
|
<div class="item2" style="width: 29.2vw;"> |
|
|
|
<el-text size="large" style="width:4vw;">付款时间</el-text> |
|
|
|
<el-date-picker v-model="dateRange" type="datetimerange" range-separator="至" start-placeholder="起始时间" |
|
|
|
end-placeholder="结束时间" style="width:22vw;" :disabled-date="disabledDate" :default-time="defaultTime" |
|
|
|
end-placeholder="结束时间" :disabled-date="disabledDate" :default-time="defaultTime" |
|
|
|
clearable /> |
|
|
|
</div> |
|
|
|
<div> |
|
|
|
<div style="margin-left: 1vw;"> |
|
|
|
<el-button type="primary" @click="getRefund">查询</el-button> |
|
|
|
<!-- <el-button type="warning">导出excel</el-button> |
|
|
|
<el-button type="primary">查看导出列表</el-button> --> |
|
|
|
<el-button type="success" @click="reset">重置</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
@ -56,7 +49,7 @@ |
|
|
|
|
|
|
|
<el-card style="margin-top: 0.5vh;background-color: rgb(231,244,253);"> |
|
|
|
<el-table :data="tableData" style="height:73vh;width:82vw;background-color: rgb(243,250,254);"> |
|
|
|
<el-table-column type="index" label="序号" width="60" fixed="left"> |
|
|
|
<el-table-column type="index" :label="t('common.id')" width="60" fixed="left"> |
|
|
|
<template #default="scope"> |
|
|
|
{{ scope.$index + 1 + (pagination.pageNum - 1) * pagination.pageSize }} |
|
|
|
</template> |
|
|
|
@ -105,6 +98,10 @@ |
|
|
|
@click="showEditDialog(scope.row)"> |
|
|
|
编辑 |
|
|
|
</el-button> |
|
|
|
<el-button v-if="[12, 22, 32].includes(scope.row.status)" type="primary" text |
|
|
|
@click="showRejectReasonDialog(scope.row)"> |
|
|
|
查看驳回理由 |
|
|
|
</el-button> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
@ -218,6 +215,10 @@ |
|
|
|
<el-button type="primary" @click="" style="margin-left: 2vw;">确定</el-button> |
|
|
|
</div> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<el-dialog v-model="showRejectReason" title="驳回理由" width="40%" style="background-color: rgb(243,250,254);"> |
|
|
|
<div>{{ rejectReason }}</div> |
|
|
|
</el-dialog> |
|
|
|
</template> |
|
|
|
<script setup> |
|
|
|
import { ref, onMounted } from 'vue' |
|
|
|
@ -236,6 +237,8 @@ import { productList, CurrencyForId } from '@/views/moneyManage/receiveDetail/ut |
|
|
|
import RefundRecallBackground from '@/assets/images/refund-recall.png' |
|
|
|
import { isNumber } from 'lodash' |
|
|
|
import { re } from 'mathjs' |
|
|
|
import { useI18n } from 'vue-i18n' |
|
|
|
const { t } = useI18n() |
|
|
|
|
|
|
|
const dateRange = ref([]) |
|
|
|
const searchForm = ref({ |
|
|
|
@ -246,6 +249,8 @@ const searchForm = ref({ |
|
|
|
const market = ref([]) |
|
|
|
const backRow = ref({})// 撤回存数据 |
|
|
|
const editRow = ref({})// 编辑存数据 |
|
|
|
const rejectReason = ref('小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭小钱鸭')// 驳回理由 |
|
|
|
const showRejectReason = ref(false)// 驳回理由弹窗 |
|
|
|
const editForm = ref({ |
|
|
|
refundModel: '', |
|
|
|
refundReason: '' |
|
|
|
@ -375,7 +380,7 @@ const submitEdit = async function () { |
|
|
|
}else if(!editForm.value.refundReason) { |
|
|
|
ElMessage.error('请输入退款理由') |
|
|
|
return |
|
|
|
}else if(editForm.value.refundModel == 1 && (!editForm.value.partRefundGold || !editForm.value.partRefundFree)) { |
|
|
|
}else if(editRow.value.goodsName === '金币充值' && editForm.value.refundModel == 1 && (!editForm.value.partRefundGold || !editForm.value.partRefundFree)) { |
|
|
|
ElMessage.error('请输入退款金币数和免费金币数') |
|
|
|
return |
|
|
|
}else if (editForm.value.refundModel == 1 && (editForm.value.partRefundGold || editForm.value.partRefundFree)) { |
|
|
|
@ -515,6 +520,12 @@ const reset = function () { |
|
|
|
getRefund() |
|
|
|
} |
|
|
|
const showBackDialog = function (row) { |
|
|
|
editForm.value = { |
|
|
|
refundModel: '', |
|
|
|
refundReason: '', |
|
|
|
partRefundGold: '', |
|
|
|
partRefundFree: '' |
|
|
|
} |
|
|
|
backRow.value = row |
|
|
|
showBack.value = true |
|
|
|
} |
|
|
|
@ -522,6 +533,10 @@ const showEditDialog = function (row) { |
|
|
|
editRow.value = row |
|
|
|
showEdit.value = true |
|
|
|
} |
|
|
|
const showRejectReasonDialog = function (row) { |
|
|
|
rejectReason.value = row.rejectReason |
|
|
|
showRejectReason.value = true |
|
|
|
} |
|
|
|
const handlePageSizeChange = function (val) { |
|
|
|
pagination.value.pageSize = val |
|
|
|
getRefund() |
|
|
|
|