Browse Source

更新

master
j1ack 2 years ago
parent
commit
707d995dcf
  1. 118
      src/api/form.js
  2. 3
      src/layout/components/Navbar.vue
  3. 38
      src/utils/request.js
  4. 38
      src/views/pay/payAgentUser/payAgentUserList.vue
  5. 531
      src/views/pay/payAgentUser/pkCouponScopeRangeStoreList2.vue
  6. 8
      src/views/pay/payAgentUser/rate.vue
  7. 4
      src/views/pay/payOrder/payBalanceRecord.vue
  8. 32
      src/views/pay/payOrder/payDaiFuWater.vue
  9. 1
      src/views/pay/payOrder/payDailiDivideDetail.vue
  10. 35
      src/views/pay/payOrder/payMoneyWater.vue
  11. 9
      src/views/pay/payTest/payCode.vue
  12. BIN
      测试.zip

118
src/api/form.js

@ -11,13 +11,13 @@ import {
*
*/
export const common_api = {
// 查询所有代理商
selectAgentListAll: () => {
return request({
url: '/system/user/selectAgentListAll',
method: 'get',
})
},
// 查询所有代理商
selectAgentListAll: () => {
return request({
url: '/system/user/selectAgentListAll',
method: 'get',
})
},
// 所有国家
getAllNation: () => {
return request({
@ -65,6 +65,14 @@ export const common_api = {
},
})
},
// 查询所有支付通道列表
payConfigAll: (query) => {
return request({
url: '/pay/payConfig/all',
method: 'get',
params: query,
})
},
}
@ -179,8 +187,9 @@ export const payAgentUser = {
//修改商户费率
updateRate: (data) => {
return request({
url: '/store/store/updateRate?' + qs.stringify(data),
url: '/store/store/updateRate?',
method: 'PUT',
data:data,
headers: {
Authorization: "Bearer " + getToken(),
},
@ -252,16 +261,16 @@ export const payAgentUser = {
})
},
// 分配用户代理商
assignAgents: (data) => {
return request({
url: '/system/user/assignAgents?'+qs.stringify(data),
method: 'post',
headers: {
Authorization: "Bearer " + getToken(),
},
})
},
// 分配用户代理商
assignAgents: (data) => {
return request({
url: '/system/user/assignAgents?' + qs.stringify(data),
method: 'post',
headers: {
Authorization: "Bearer " + getToken(),
},
})
},
}
@ -383,7 +392,7 @@ export const manual_recharge_list = {
// 内充流水审核提交
manual_recharge_audit_save: (data) => {
return request({
url: '/record/manual_recharge_audit_save?'+qs.stringify(data),
url: '/record/manual_recharge_audit_save?' + qs.stringify(data),
method: 'post',
})
},
@ -546,8 +555,59 @@ export const platform_payment_list = {
* 资金清算模块
*/
export const payMoneyCalcu = {
// 人工修改余额接口
updateBalance: (data) => {
// 代理渠道资金明细查看
agentUpdateCapitalChannel: (query) => {
return request({
url: '/order/agentUpdateCapitalChannel?' + qs.stringify(query),
method: 'get',
})
},
// 获取代理虚拟资金户
getAgentUserCapitalAccountDetail: (query) => {
return request({
url: '/order/getAgentUserCapitalAccountDetail',
method: 'get',
params: query,
headers: {
Authorization: "Bearer " + getToken(),
},
})
},
// 获取代理资金管理金额
agentAmountCount: (query) => {
return request({
url: '/order/agentAmountCount',
method: 'get',
params: query,
headers: {
Authorization: "Bearer " + getToken(),
},
})
},
// 代理-提交单笔代付申请
agentPaymentSave: (data) => {
return request({
url: '/order/agentPaymentSave?' + qs.stringify(data),
method: 'post',
headers: {
Authorization: "Bearer " + getToken(),
},
})
},
// 获取代理资金列表
agentCapitalList: (query) => {
return request({
url: '/order/agentCapitalList',
method: 'get',
params: query,
headers: {
Authorization: "Bearer " + getToken(),
},
})
},
// 人工修改余额接口
updateBalance: (data) => {
return request({
url: '/order/updateBalance?' + qs.stringify(data),
method: 'post',
@ -1220,13 +1280,13 @@ export const payBankManual = {
* 代付银行
*/
export const payBankPayment = {
// 批量导入模板
downloadManualTemplate: (query) => {
return request({
url: '/system/config/configKey/payment.masterplate',
method: 'get',
})
},
// 批量导入模板
downloadManualTemplate: (query) => {
return request({
url: '/system/config/configKey/payment.masterplate',
method: 'get',
})
},
// 批量添加代付银行
batchimport: (data) => {
return request({
@ -1345,7 +1405,7 @@ export const pkUpdateBalanceRecord = {
* 代理分成详细列表
*/
export const agentDivideList = {
export const agentDivideList = {
// 查询线下转卡订单流水列表
listInfo: (query) => {
return request({

3
src/layout/components/Navbar.vue

@ -94,7 +94,6 @@ export default {
},
methods: {
toggleSideBar() {
console.log(1)
this.$store.dispatch('app/toggleSideBar')
},
async logout() {
@ -104,7 +103,7 @@ export default {
type: 'warning'
}).then(() => {
this.$store.dispatch('LogOut').then(() => {
location.href = '/index';
location.href = "/login";
})
}).catch(() => { });
}

38
src/utils/request.js

@ -103,7 +103,7 @@ service.interceptors.response.use(res => {
// });
// }
store.dispatch('LogOut').then(() => {
location.href = '/index';
location.href = "/login";
})
return Promise.reject('无效的会话,或者会话已过期,请重新登录。')
} else if (code === 500) {
@ -128,23 +128,25 @@ service.interceptors.response.use(res => {
}
},
error => {
console.log('err' + error)
let {
message
} = error;
if (message == "Network Error") {
message = "后端接口连接异常";
} else if (message.includes("timeout")) {
message = "系统接口请求超时";
} else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
setTimeout(() => {
console.log('err' + error)
let {
message
} = error;
if (message == "Network Error") {
message = "后端接口连接异常";
} else if (message.includes("timeout")) {
message = "系统接口请求超时";
} else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}, 500);
}
)

38
src/views/pay/payAgentUser/payAgentUserList.vue

@ -160,12 +160,12 @@
@click="handleAdd('新增商户', 'store', scope.row)" v-if="scope.row.userType != 'store'"
v-hasPermi="['system:user:saveStoreOragent']">新增下级商户</el-button>
<el-button size="small" type="text" style="color: #006EFF;" v-if="scope.row.userType == 'agent'"
@click="handleView(scope.row)">代付</el-button>
<!-- 商户 -->
<el-button size="small" v-if="scope.row.userType == 'store'" type="text"
@click="handleAgent('分配代理商', 'divide', scope.row)" style="color: #006EFF;">分配代理商</el-button>
<el-button size="small" type="text" style="color: #006EFF;" @click="handleCode('身份验证', scope.row)"
v-hasPermi="['system:user:getGoogleCaptcha']">查看密钥</el-button>
<el-button size="small" type="text" style="color: #006EFF;" @click="handleViewMy(scope.row)"
@ -305,10 +305,12 @@
</div>
<div>
<el-form-item label="商户号">
{{ detailInfoList.storeNo }} <span v-if="detailInfoList.storeNo" @click="copy(detailInfoList.storeNo)" style="cursor: pointer;color:#006EFF;margin-left: 10px;">复制</span>
{{ detailInfoList.storeNo }} <span v-if="detailInfoList.storeNo" @click="copy(detailInfoList.storeNo)"
style="cursor: pointer;color:#006EFF;margin-left: 10px;">复制</span>
</el-form-item>
<el-form-item label="签名Key">
{{ detailInfoList.storeKey }} <span v-if="detailInfoList.storeKey" @click="copy(detailInfoList.storeKey)" style="cursor: pointer;color:#006EFF;margin-left: 10px;">复制</span>
{{ detailInfoList.storeKey }} <span v-if="detailInfoList.storeKey" @click="copy(detailInfoList.storeKey)"
style="cursor: pointer;color:#006EFF;margin-left: 10px;">复制</span>
</el-form-item>
<el-form-item label="代理数">
{{ detailInfoList.agentCount }}
@ -394,6 +396,14 @@
</div>
</el-dialog>
<!-- 资金列表 -->
<el-dialog v-dialogDrag title="资金列表" :visible.sync="pkCouponScopeRangeParkingStoreOpen" width="80%" append-to-body
:close-on-click-modal="false">
<pkCouponScopeRangeStoreList v-if="pkCouponScopeRangeParkingStoreOpen" :pkCouponStore="pkCouponStore"
:pkCouponId="pkCouponStoreId">
</pkCouponScopeRangeStoreList>
</el-dialog>
</div>
</template>
@ -402,7 +412,7 @@ import { common_api, payAgentUser } from "@/api/form";
import { resetUserPwd } from "@/api/system/user";
import Editor from "@/components/Editor";
import { getToken } from "@/utils/auth";
import pkCouponScopeRangeStoreList from "./pkCouponScopeRangeStoreList";
import pkCouponScopeRangeStoreList from "./pkCouponScopeRangeStoreList2";
import pwd from "./pwd";
export default {
@ -563,12 +573,18 @@ export default {
},
},
methods: {
copy(value){
//
handleView(row) {
this.pkCouponStore = row;
this.pkCouponStoreId = row.userId;
this.pkCouponScopeRangeParkingStoreOpen = true;
},
copy(value) {
this.$copyText(value).then(message => {
this.$message.success('Copied!')
}).catch(err => {
this.$message.error('Copy failed!')
})
this.$message.success('Copied!')
}).catch(err => {
this.$message.error('Copy failed!')
})
},
change() {
this.$forceUpdate()

531
src/views/pay/payAgentUser/pkCouponScopeRangeStoreList2.vue

@ -0,0 +1,531 @@
<template>
<div class="app-container">
<div class="bg">
<div class="rig flex m20" v-hasPermi="['order:rechargeRecord:amountCount']">
<div>
在途总金额()<span class="#197CFE">{{ sum.onRouteAmount }}</span>
</div>
<div>
冻结总金额()<span class="#197CFE">{{ sum.freezeAmount }}</span>
</div>
<div>
可提现总金额()<span class="#197CFE">{{ sum.withdrawalAmount }}</span>
</div>
<div>
汇总<span class="#197CFE">{{ sum.gatherAmount }}</span>
</div>
</div>
<div class="rig flex m20">
<div>
当前用户编号<span class="#197CFE">{{ pkCouponId }}</span>
</div>
<div>
当前用户名称<span class="#197CFE">{{ pkCouponStore.userName }}</span>
</div>
<div class="payConfigAll">
<el-form :model="form" ref="form" :inline="true" label-width="86px" class="flex form"
style="padding:0 20px">
<el-form-item label="出金通道" prop="channelType">
<el-select v-model="channelType" placeholder="请选择出金通道" clearable size="medium">
<el-option v-for="(item, i) in payConfigAll" :key="i" :label="item.channelName"
:value="item.channelType"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="" size="medium"
@click="agentUpdateCapitalChannel">确定</el-button>
</el-form-item>
</el-form>
</div>
</div>
<el-table stripe v-loading="loading" :data="infoList">
<el-table-column label="序号" align="center" prop="id" />
<el-table-column label="账户编号" align="center" prop="accountNo" min-width="100" />
<el-table-column label="支付类型" align="center" prop="typeName" />
<el-table-column label="渠道类型" align="center" prop="channelName" />
<el-table-column label="账户冻结金额(元)" align="center" prop="frozenCapital" />
<el-table-column label="账户在途金额(元)" align="center" prop="transitCapital" />
<el-table-column label="账户可提余额(元)" align="center" prop="useCapital" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right"
min-width="150">
<template slot-scope="scope">
<el-button size="small" type="text" style="color: #006EFF;"
@click="handlePrivateTransfer(scope.row, 'formDai')">私户转入</el-button>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</div>
<!-- 私户转入 -->
<el-dialog v-dialogDrag title="代付" :visible.sync="openBank" width="600px" append-to-body
:close-on-click-modal="false" :before-close="cancel">
<el-form ref="formDai" :model="form" :rules="rules" label-width="120px">
<div>
<span style="font-size:19px">代付银行卡</span>
<el-divider></el-divider>
</div>
<el-form-item label="出金通道" prop="bankId">
<el-select v-model="form.bankId" placeholder="请选择出金通道" clearable size="medium" @change="getValue">
<el-option v-for="(item, i) in bankCon" :key="i" :label="item.bankName"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="银行卡号" prop="acctId">
<el-input v-model="form.acctId" placeholder="请输入银行卡号" />
</el-form-item>
<el-form-item label="支行名称" prop="bankBranchName">
<el-input v-model="form.bankBranchName" placeholder="请输入支行名称" />
</el-form-item>
<el-form-item label="支行联行号" prop="bankSettleNo">
<el-input v-model="form.bankSettleNo" placeholder="请输入支行联行号" />
</el-form-item>
<el-form-item label="开户人姓名" prop="acctName">
<el-input v-model="form.acctName" placeholder="请输入开户人姓名" />
</el-form-item>
<el-form-item label="用户预留手机号" prop="mobile">
<el-input v-model="form.mobile" placeholder="请输入用户预留手机号" />
</el-form-item>
<div>
<span style="font-size:19px">代付金额</span>
<el-divider></el-divider>
</div>
<el-form-item label="可代付金额" prop="useCapital">
<span>{{ detailData.useCapital }}</span>
</el-form-item>
<el-form-item label="本次代付金额" prop="paymentAmount">
<el-input v-model="form.paymentAmount" placeholder="请输入本次代付金额"
oninput="value=value.replace(/[^\d.]/g,'').replace(/^\./g, '').replace(/\.{2,}/g, '').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').match(/^\d*(\.?\d{0,4})/g)[0] || null" />
</el-form-item>
<el-form-item label="支付密码" prop="pwd">
<el-input type="password" v-model="form.pwd" placeholder="请输入密码" />
</el-form-item>
<el-form-item label="谷歌动态验证码" prop="googleCode">
<el-input v-model="form.googleCode" placeholder="请输入谷歌动态验证码" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm('private', 'formDai')"> </el-button>
<el-button @click="cancel('formDai')"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { payMoneyCalcu, common_api } from "@/api/form";
export default {
name: "pkCouponScopeRangeStoreList",
props: {
pkCouponId: {
type: String,
default() {
return "";
},
},
pkCouponStore: {
type: Object,
default: {}
}
},
data() {
var checkPhone = (rule, value, callback) => {
let reg = /^1[345789]\d{9}$/
if (!reg.test(value)) {
callback(new Error('请输入11位手机号'))
} else {
callback()
}
}
return {
type: [
{
label: '增加',
value: 'yes'
},
{
label: '减少',
value: 'no'
},
],
//
userWithdrawalChannel: {},
accountCon: [],
store: {},
dateRange: [],
//
loading: true,
//
exportLoading: false,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
infoList: [
],
//
title: "",
//
open: false,
openTransfer: false,
openBank: false,
openBalance: false,
//
queryParams: {
pageNum: 1,
pageSize: 20,
userId: null,
payType: null,
channelType: null,
},
sum: {
freezeAmount: 0,
gatherAmount: 0,
onRouteAmount: 0,
withdrawalAmount: 0,
},
//
form: {
},
//
rules: {
afterAmt: [
{ required: true, message: "请输入本次修改金额", trigger: "blur" },
],
paymentAmount: [
{ required: true, message: "请输入本次代付金额", trigger: "blur" },
],
mobile: [
{ required: true, type: 'number', validator: checkPhone, message: '请输入正确的手机号', trigger: 'blur' },
],
acctName: [
{ required: true, message: "请输入开户人姓名", trigger: "blur" },
],
bankSettleNo: [
{ required: true, message: "请输入支行联行号", trigger: "blur" },
],
acctId: [
{ required: true, message: "请输入银行卡号", trigger: "blur" },
],
bankBranchName: [
{ required: true, message: "请输入支行名称", trigger: "blur" },
],
bankId: [
{ required: true, message: "请选择出金通道", trigger: "blur" },
],
toAccountNo: [
{ required: true, message: "请选择划转账户", trigger: "blur" },
],
transferCapital: [
{ required: true, message: "请输入划转金额", trigger: "blur" },
],
pwd: [
{ required: true, message: "请输入密码", trigger: "blur" },
],
googleCode: [
{ required: true, message: "请输入谷歌动态验证码", trigger: "blur" },
],
},
userLevType: [],
sortLevType: [],
detailData: {},
bankCon: [],
rows: {},
payConfigAll: [],
channelType: '',
};
},
created() {
this.pkCouponId && (this.queryParams.userId = this.pkCouponId);
this.getList();
this.init();
},
methods: {
//
getValue(e) {
for (var i = 0; i < this.bankCon.length; i++) {
if (e == this.bankCon[i].id) {
this.form.bankSegment = this.bankCon[i].bankSegment
this.form.bankName = this.bankCon[i].bankName
this.form.bankCode = this.bankCon[i].bankCode
this.form.bankEnglishShort = this.bankCon[i].bankEnglishShort
}
}
},
//
getUserWithdrawalChannel() {
payMoneyCalcu.getUserWithdrawalChannel({ acctType: "debit_card", userId: this.pkCouponStore.userId })
.then(res => {
this.userWithdrawalChannel = res.data?.[0] ?? {};
if (this.userWithdrawalChannel) {
this.form = {
...this.form,
acctId: this.userWithdrawalChannel.acctId,
bankBranchName: this.userWithdrawalChannel.bankBranchName,
bankSettleNo: this.userWithdrawalChannel.bankSettleNo,
acctName: this.userWithdrawalChannel.acctName,
mobile: this.userWithdrawalChannel.mobile,
}
}
})
},
//
handlePrivateTransfer(row, v) {
this.rows = row
if (!row.channelType) {
this.$message.error('当前渠道类型为空,请选择渠道~')
return;
}
this.reset(v);
this.loading = true;
//
// this.getUserWithdrawalChannel();
payMoneyCalcu.getWithdrawalChannel({
channelType: row.channelType,
flagCard: 'private_account'
})
.then((response) => {
this.openBank = true;
this.bankCon = response.data
this.loading = false;
//
payMoneyCalcu.getAgentUserCapitalAccountDetail({
accountNo: row.accountNo,
userId: this.queryParams.userId
})
.then((response) => {
this.form.accountNo = row.accountNo
this.detailData = response.data
});
});
},
//
agentUpdateCapitalChannel() {
if (!this.channelType) {
this.$message.error('请选择渠道类型~')
return;
}
let form = {
userId: this.infoList[0].userId,
channelType: this.channelType,
payType: this.infoList[0].payType,
}
const loading = this.$loading({
lock: true,
text: `正在提交`,
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.7)",
});
payMoneyCalcu
.agentUpdateCapitalChannel(form)
.then((response) => {
loading.close();
if (response.code == 200) {
this.$message.success('提交成功')
this.getList()
this.$forceUpdate()
}
})
.catch(() => {
loading.close();
});
},
/** 提交按钮 */
submitForm(type, val) {
this.form.userId = this.pkCouponStore.userId
this.form.storeId = this.pkCouponStore.storeId
if (this.form.paymentAmount > this.detailData.useCapital) {
this.$message.error('余额不足')
return;
}
this.$refs[val].validate((valid) => {
if (valid) {
const loading = this.$loading({
lock: true,
text: `正在代付`,
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.7)",
});
payMoneyCalcu
.agentPaymentSave(this.form)
.then((response) => {
loading.close();
if (response.code == 200) {
this.$message.success('代付资金提交成功')
this.getList()
}
this.openBank = false
})
.catch(() => {
loading.close();
});
}
});
},
/** 查询 */
getList() {
this.loading = true;
this.payConfigAll = []
payMoneyCalcu.agentCapitalList(this.addSESDateRange(this.queryParams, this.dateRange))
.then((response) => {
this.infoList = response.data.rows;
this.total = Number(response.data.total)
this.loading = false;
if (this.infoList.length) {
this.channelType = this.infoList[0].channelType
//
common_api.payConfigAll({
type: 'in'
}).then((response) => {
for (var i = 0; i < response.data.length; i++) {
if (response.data[i].interfaceType == 'withdrawls' && response.data[i].payType == 'payment') {
if (response.data[i].nationCode == this.infoList[0].nationCode) {
this.payConfigAll.push(response.data[i])
}
}
}
});
}
if (!this.infoList.length) {
this.channelType = ''
}
});
//
payMoneyCalcu.agentAmountCount({
userId: this.pkCouponStore.userId,
channelType: '',
payType: '',
})
.then((response) => {
this.sum = response.data
});
},
init() {
common_api.payChannelAll().then((response) => {
this.userLevType = response.data
});
common_api.payTypeAll().then((response) => {
this.sortLevType = response.data
});
},
//
cancel(type) {
this.open = false;
this.openTransfer = false;
this.openBank = false
this.openBalance = false
this.reset(type);
},
//
reset(type) {
this.form = {};
this.detailData = {};
this.resetForm(type);
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.dateRange = [];
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加适用商家";
},
change() {
this.$forceUpdate()
},
selectChange(data) {
this.$set(this.form, 'storeName', data.storeName)
this.form.pkuserId = data.id;
this.$nextTick(() => {
this.$refs.pkParkingInfoIdRef.clearValidate();
});
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .payConfigAll .el-form-item__content {
margin-left: 0px !important;
}
::v-deep .payConfigAll .el-form-item__content {
padding: 0px !important;
background: none !important;
}
::v-deep .payConfigAll .el-input {
padding: 0px !important;
background: none !important;
margin-left: 0px !important;
}
.payConfigAll {
background: none !important;
padding: 0 !important;
div {
background: none !important;
padding: 0 !important;
}
}
::v-deep .el-divider--horizontal {
margin: 8px 0;
}
.bg {
border-radius: 0;
background: #fff;
box-shadow: none;
border-color: rgba(0, 0, 0, 0.05);
padding: 0px 0;
}
.app-container {
margin: 0;
padding: 0;
}
.el-radio {
line-height: 2;
}
</style>

8
src/views/pay/payAgentUser/rate.vue

@ -326,13 +326,13 @@ export default {
payAgentUser
.updateRate({
//
spis: JSON.stringify(dataIns),
spis: dataIns,
//
spos: JSON.stringify(dataOuts),
spos: dataOuts,
//
agents: JSON.stringify(dataAgents),
agents: dataAgents,
//
agentOuts: JSON.stringify(agentOuts)
agentOuts: agentOuts
})
.then((response) => {
this.msgSuccess("编辑成功");

4
src/views/pay/payOrder/payBalanceRecord.vue

@ -42,11 +42,11 @@
</el-select>
</el-form-item>
<!-- <el-form-item label="创建时间">
<el-form-item label="创建时间">
<el-date-picker v-model="dateRange" size="small" style="width: 240px" value-format="yyyy-MM-dd"
type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"
:unlink-panels="true"></el-date-picker>
</el-form-item> -->
</el-form-item>
<el-form-item>
<el-button type="primary" icon="" size="medium" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="medium" @click="resetQuery">重置</el-button>

32
src/views/pay/payOrder/payDaiFuWater.vue

@ -11,7 +11,7 @@
</el-row>
</div>
<div class="bg">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="86px"
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="96px"
class="flex form" style="padding:0 20px">
<el-form-item label="批次号" prop="batchNo">
<el-input size="medium" v-model="queryParams.batchNo" placeholder="请输入批次号"
@ -68,6 +68,14 @@
:value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="用户类型" prop="userType">
<el-select v-model="queryParams.userType" placeholder="请选择用户类型" size="medium">
<el-option v-for="dict in typeCon" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="订单来源" prop="sourceType">
<el-select v-model="queryParams.sourceType" placeholder="请选择订单来源" size="medium">
<el-option v-for="dict in dict.type.source_type" :key="dict.value" :label="dict.label"
@ -125,6 +133,16 @@
{{ scope.row.certId }}
</template>
</el-table-column>
<el-table-column label="用户类型" align="center" prop="userType" min-width="120">
<template slot-scope="scope">
<el-tag :type="
scope.row.userType == 'store'
? 'success' : 'primary'
">
{{ scope.row.userType == 'store' ? '商户' : '代理商' }}
</el-tag>
</template>
</el-table-column>
<el-table-column :label="'银行名称\n支行名称'" align="center" prop="storeNo" min-width="150">
<template slot-scope="scope">
{{ scope.row.bankName }}<br />
@ -233,6 +251,16 @@ export default {
dicts: ['pay_status', 'source_type', 'yes_no', 'payment_status'],
data() {
return {
typeCon: [
{
label: '商户',
value: 'store',
},
{
label: '代理商',
value: 'agent',
},
],
statusOptions: [
{
label: '通过',
@ -379,6 +407,8 @@ export default {
noOrder: null,
outTradeNo: null,
batchNo: null,
userType: null,
},
//

1
src/views/pay/payOrder/payDailiDivideDetail.vue

@ -23,6 +23,7 @@
<el-input size="medium" v-model="queryParams.name" placeholder="请输入代理" @keyup.enter.native="handleQuery"
style="width: 215px;border-color: #E6F1FF;" />
</el-form-item>
<el-form-item label="添加时间">
<el-date-picker v-model="dateRange" size="small" style="width: 240px" value-format="yyyy-MM-dd"
type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"

35
src/views/pay/payOrder/payMoneyWater.vue

@ -41,7 +41,12 @@
:value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="用户类型" prop="userType">
<el-select v-model="queryParams.userType" placeholder="请选择用户类型" size="medium">
<el-option v-for="dict in userCon" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="交易时间">
<el-date-picker v-model="dateRange" style="width: 240px;border-color: #E6F1FF;"
@ -55,8 +60,23 @@
</el-form>
<el-table stripe v-loading="loading" :data="infoList" @selection-change="handleSelectionChange">
<el-table-column :label="'业务单号'" align="center" prop="witNo" min-width="180" />
<el-table-column :label="'商户名称'" align="center" prop="storeName" min-width="150" />
<el-table-column :label="'账户名称'" align="center" prop="storeNo" min-width="150">
<template slot-scope="scope">
{{ scope.row.userType=='agent'? scope.row.name:scope.row.storeName }}
</template>
</el-table-column>
<el-table-column :label="'账号编号'" align="center" prop="accountNo" min-width="150" />
<el-table-column label="用户类型" align="center" prop="userType" min-width="120">
<template slot-scope="scope">
<el-tag :type="
scope.row.userType == 'store'
? 'success' : 'primary'
">
{{ scope.row.userType == 'store' ? '商户' : '代理商' }}
</el-tag>
</template>
</el-table-column>
<el-table-column :label="'变动前金额'" align="center" prop="beforeAmt" />
<el-table-column :label="'变动金额'" align="center" prop="tranAmt" />
<el-table-column :label="'变动后金额'" align="center" prop="afterAmt" />
@ -121,6 +141,16 @@ export default {
incomeTotal: 0,
expendTotal: 0
},
userCon: [
{
label: '商户',
value: 'store',
},
{
label: '代理商',
value: 'agent',
},
],
typeCon: [
{
label: '收入',
@ -259,6 +289,7 @@ export default {
accountNo: null,
isIncome: null,
witType: null,
userType:null,
},
//
form: {},

9
src/views/pay/payTest/payCode.vue

@ -73,7 +73,7 @@
@click="payCode">支付</el-button>
</el-form-item>
<el-form-item label="扫码支付响应" prop="resp">
<el-input type="textarea" v-model="form.resp" placeholder=""
<el-input type="textarea" v-model="resMsg" placeholder=""
style="width:80%;border-color: #E6F1FF;" />
</el-form-item>
<el-form-item>
@ -107,6 +107,9 @@ export default {
data() {
return {
//
resMsg:null,
showCode:false,
rules: {
version: [
@ -227,7 +230,9 @@ export default {
payTest
.payCode(form)
.then((response) => {
this.form.resp = response.msg
this.resMsg=response.msg
let s=JSON.parse(response.msg)
this.form.resp = s.codeImgUrl
});
},
//

BIN
测试.zip

Binary file not shown.
Loading…
Cancel
Save