feat(onlinePayDetail): 在线支付明细添加账户金额字段

This commit is contained in:
woody 2025-07-11 10:17:28 +08:00
parent 4f113e8178
commit 74cecdc6d1
1 changed files with 240 additions and 186 deletions

View File

@ -6,228 +6,280 @@
--> -->
<template> <template>
<div class="page"> <div class="page">
<topBar v-if="topList.length > 0" <topBar
:topList="topList" v-if="topList.length > 0"
:moren="moren"></topBar> :top-list="topList"
:moren="moren"
/>
<div class="main"> <div class="main">
<el-form ref="select" <el-form
:model="select" ref="select"
style="background-color: #fff" :model="select"
label-width="100px"> style="background-color: #fff"
label-width="100px"
>
<el-row> <el-row>
<!-- 一层 --> <!-- 一层 -->
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'会员编号'"> <el-form-item :label="'会员编号'">
<el-input clearable <el-input
v-model="select.memberCode"></el-input> v-model="select.memberCode"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'会员姓名'"> <el-form-item :label="'会员姓名'">
<el-input clearable <el-input
v-model="select.memberName"></el-input> v-model="select.memberName"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'交易金额'"> <el-form-item :label="'交易金额'">
<el-input clearable <el-input
v-model="select.businessMoney"></el-input> v-model="select.businessMoney"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'交易类型'"> <el-form-item :label="'交易类型'">
<el-select clearable <el-select
:placeholder="'请选择'" v-model="select.businessType"
v-model="select.businessType"> clearable
<el-option v-for="item in tradeTypeList" :placeholder="'请选择'"
:key="item.value" >
:label="item.label" <el-option
:value="item.value"></el-option> v-for="item in tradeTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'支付渠道'"> <el-form-item :label="'支付渠道'">
<el-select clearable <el-select
:placeholder="'请选择'" v-model="select.payChannel"
v-model="select.payChannel"> clearable
<el-option v-for="item in channelList" :placeholder="'请选择'"
:key="item.value" >
:label="item.label" <el-option
:value="item.value"></el-option> v-for="item in channelList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'支付方式'"> <el-form-item :label="'支付方式'">
<el-select clearable <el-select
:placeholder="'请选择'" v-model="select.payType"
v-model="select.payType"> clearable
<el-option v-for="item in peyTypeList" :placeholder="'请选择'"
:key="item.value" >
:label="item.label" <el-option
:value="item.value"></el-option> v-for="item in peyTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'支付状态'"> <el-form-item :label="'支付状态'">
<el-select clearable <el-select
:placeholder="'请选择'" v-model="select.payStatus"
v-model="select.payStatus"> clearable
<el-option v-for="item in statusList" :placeholder="'请选择'"
:key="item.value" >
:label="item.label" <el-option
:value="item.value"></el-option> v-for="item in statusList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'单据编号'"> <el-form-item :label="'单据编号'">
<el-input clearable <el-input
v-model="select.businessCode"></el-input> v-model="select.businessCode"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item :label="'下单日期'"> <el-form-item :label="'下单日期'">
<el-date-picker v-model="select.creationTime" <el-date-picker
value-format="yyyy-MM-dd" v-model="select.creationTime"
type="daterange" value-format="yyyy-MM-dd"
:range-separator="'至'" type="daterange"
:start-placeholder="'开始日期'" :range-separator="'至'"
:end-placeholder="'结束日期'"> :start-placeholder="'开始日期'"
</el-date-picker> :end-placeholder="'结束日期'"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item :label="'支付日期'"> <el-form-item :label="'支付日期'">
<el-date-picker v-model="select.payTime" <el-date-picker
@change="changeTime1" v-model="select.payTime"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
type="daterange" type="daterange"
:range-separator="'至'" :range-separator="'至'"
:start-placeholder="'开始日期'" :start-placeholder="'开始日期'"
:end-placeholder="'结束日期'"> :end-placeholder="'结束日期'"
</el-date-picker> @change="changeTime1"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-button class="my_search" <el-button
style="margin-left: 30px" class="my_search"
@click="getDataList"> {{ '搜索' }}</el-button> style="margin-left: 30px"
@click="getDataList"
> {{ '搜索' }}</el-button>
<el-button class="my_reset" @click="reset"> {{ '重置' }}</el-button> <el-button class="my_reset" @click="reset"> {{ '重置' }}</el-button>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<div class="maintop"> <div class="maintop">
<div class="mainbtn"> <div class="mainbtn">
<el-button size="small" <el-button
@click="handleExport" v-has-buttons="['OnlinePayDetailsExport']"
v-has-buttons="['OnlinePayDetailsExport']" size="small"
class="thebtn2"> {{ '导出' }}</el-button> class="thebtn2"
@click="handleExport"
> {{ '导出' }}</el-button>
</div> </div>
</div> </div>
<div class="maintable"> <div class="maintable">
<el-table :data="tableData" <el-table
height="640px" :data="tableData"
style="width: 100%" height="640px"
:header-cell-style="{ background: '#EEEEEE' }" style="width: 100%"
:row-class-name="tableRowClassName" :header-cell-style="{ background: '#EEEEEE' }"
@selection-change="handleSelectionChange"> :row-class-name="tableRowClassName"
<el-table-column type="selection" @selection-change="handleSelectionChange"
width="55"> </el-table-column> >
<!-- <el-table-column align="center"--> <el-table-column
<!-- prop="title"--> type="selection"
<!-- :label="'国家'">--> width="55"
<!-- <template slot-scope="scope">--> />
<!-- <div class="tem">--> <!-- <el-table-column align="center"-->
<!-- <img :src="scope.row.pkCountryIcon"--> <!-- prop="title"-->
<!-- alt="" />--> <!-- :label="'国家'">-->
<!-- &lt;!&ndash; <div>{{ scope.row.pkCountryName }}</div> &ndash;&gt;--> <!-- <template slot-scope="scope">-->
<!-- </div>--> <!-- <div class="tem">-->
<!-- </template>--> <!-- <img :src="scope.row.pkCountryIcon"-->
<!-- </el-table-column>--> <!-- alt="" />-->
<el-table-column align="center" <!-- &lt;!&ndash; <div>{{ scope.row.pkCountryName }}</div> &ndash;&gt;-->
prop="memberCode" <!-- </div>-->
:label="'会员编号'" <!-- </template>-->
width="140"> <!-- </el-table-column>-->
</el-table-column> <el-table-column
<el-table-column align="center" align="center"
prop="memberName" prop="memberCode"
:label="'会员姓名'"> :label="'会员编号'"
</el-table-column> width="140"
<el-table-column align="center" />
prop="phone" <el-table-column
label="联系方式" align="center"
width="140"> prop="memberName"
</el-table-column> :label="'会员姓名'"
<el-table-column align="center" />
prop="businessTypeVal" <el-table-column
:label="'交易类型'"> align="center"
</el-table-column> prop="phone"
<el-table-column align="center" label="联系方式"
prop="businessMoney" width="140"
:formatter="stateFormat" />
:label="'交易金额'+`(${isLocalSymbol()})`" <el-table-column
width="150"> align="center"
</el-table-column> prop="businessTypeVal"
<el-table-column align="center" :label="'交易类型'"
prop="payMoney" />
:formatter="stateFormat" <el-table-column
label="实际支付金额(¥)" align="center"
width="150"> prop="businessMoney"
</el-table-column> :formatter="stateFormat"
<!-- <el-table-column align="center" :label="'交易金额'"
prop="payMoney" width="150"
:formatter="stateFormat" />
:label="'交易金额'+`(${isLocals()})`" width="150"> <el-table-column
</el-table-column> align="center"
<el-table-column align="center" prop="payMoney"
:formatter="stateFormat" :formatter="stateFormat"
prop="settleTradeBalance" label="实际支付金额"
label="实际支付金额($)" width="150"> width="150"
</el-table-column> />
<el-table-column align="center"
prop="exchangeRate"
:label="'汇率'">
</el-table-column> -->
<el-table-column align="center" <el-table-column
prop="payChannelVal" align="center"
:label="'支付渠道'"> prop="payChannelVal"
</el-table-column> :label="'支付渠道'"
<el-table-column align="center" />
prop="payTypeVal" <el-table-column
:label="'支付方式'"> align="center"
</el-table-column> prop="payTypeVal"
<el-table-column align="center" :label="'支付方式'"
prop="payStatusVal" />
:label="'支付状态'"> <el-table-column
</el-table-column> align="center"
<el-table-column align="center" prop="payStatusVal"
prop="creationTime" :label="'支付状态'"
:label="'下单日期'" />
width="180"> <el-table-column
</el-table-column> align="center"
<el-table-column align="center" prop="creationTime"
prop="payTime" :label="'下单日期'"
:label="'支付日期'" width="180"
width="180"> />
</el-table-column> <el-table-column
<el-table-column align="center" align="center"
prop="businessCode" prop="payTime"
min-width="180px" :label="'支付日期'"
:label="'单据编号'"> width="180"
</el-table-column> />
<el-table-column align="center" <el-table-column
prop="time" align="center"
:label="'操作'" prop="businessCode"
fixed="right"> min-width="180px"
:label="'单据编号'"
/>
<el-table-column
align="center"
prop="mainAccountMoney"
label="主账户金额"
width="150"
/>
<el-table-column
align="center"
prop="subAccountMoney"
label="子账户金额"
width="150"
/>
<el-table-column
align="center"
prop="time"
:label="'操作'"
fixed="right"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="toFixed(scope.row.pkId)" <el-button
style="color: #ffad41" style="color: #ffad41"
type="text" type="text"
size="small"> size="small"
@click="toFixed(scope.row.pkId)"
>
{{ '导出' }} {{ '导出' }}
</el-button> </el-button>
</template> </template>
@ -235,11 +287,13 @@
</el-table> </el-table>
</div> </div>
</div> </div>
<pagination v-show="total>0" <pagination
:total="total" v-show="total>0"
:page.sync="queryParams.pageNum" :total="total"
:limit.sync="queryParams.pageSize" :page.sync="queryParams.pageNum"
@pagination="getDataList" /> :limit.sync="queryParams.pageSize"
@pagination="getDataList"
/>
</div> </div>
</template> </template>
@ -251,16 +305,16 @@ import { userCountryList } from '@/api/user'
export default { export default {
name: 'Bzpz', name: 'Bzpz',
components: { components: {
topBar, topBar
}, },
filters: { filters: {
isAgree(val) { isAgree(val) {
if (!val) { if (!val) {
return '允许'; return '允许'
} else { } else {
return '禁止'; return '禁止'
} }
}, }
}, },
data() { data() {
return { return {
@ -269,7 +323,7 @@ export default {
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 50, pageSize: 50
}, },
total: 0, total: 0,
dialogVisible: false, dialogVisible: false,
@ -280,26 +334,26 @@ export default {
peyTypeList: [ peyTypeList: [
{ {
value: '1', value: '1',
label: '支付宝', label: '支付宝'
}, },
{ {
value: '2', value: '2',
label: '微信', label: '微信'
}, },
{ {
value: '3', value: '3',
label: '银行卡', label: '银行卡'
}, }
], ],
tradeTypeList: [], tradeTypeList: [],
moren: 'onlinePayDetails', moren: 'onlinePayDetails',
topList: [ topList: [
{ {
name: '在线支付明细', name: '在线支付明细',
path: 'onlinePayDetails', path: 'onlinePayDetails'
}, }
], ],
countryList: [], countryList: []
} }
}, },
mounted() { mounted() {
@ -329,7 +383,7 @@ export default {
// this.select.startDate = val[0] // this.select.startDate = val[0]
// this.select.endDate = val[1] // this.select.endDate = val[1]
}, },
reset(){ reset() {
this.select = {} this.select = {}
this.getDataList() this.getDataList()
}, },
@ -359,10 +413,10 @@ export default {
handleSelectionChange(val) {}, handleSelectionChange(val) {},
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
this.$confirm( '是否确认导出所有数据项?', '警告', { this.$confirm('是否确认导出所有数据项?', '警告', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning', type: 'warning'
}).then((_) => { }).then((_) => {
this.download( this.download(
'/pay/manage/online-payment/export', '/pay/manage/online-payment/export',
@ -378,8 +432,8 @@ export default {
return 'success-row' return 'success-row'
} }
return '' return ''
}, }
}, }
} }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">