Bladeren bron

移动支付 报表提交

master
jiangsongz 4 dagen geleden
bovenliggende
commit
67dfcd8175

+ 169
- 0
src/views/settlement/businessManagement/mobilePayment/inpConsumFundSettle/crudConfig.ts Bestand weergeven

@@ -0,0 +1,169 @@
import { ref } from "vue";
import { IsPermission } from "@/router/routerUtil";
// crud表格配置
export default function crudConfig(route) {
const form = {
formLabelWidth: "100px",
width: "50%",
type: "input",
};
const field = ref({
tabSize: "small", //Table 的尺寸 large / default /small (默认default)
searchShow: true, //是否显示搜索模块(默认false)
border: true, //是否添加边框(默认false)
dialogCustom: true, //自定义Dialog (默认false)
dialogFooter: true, //隐藏弹窗页脚显示 (默认false)
dialogWidth: "50%", //dialog宽度 (默认40%)
crudChildShow: true, //是否显示CURD子操作栏 (默认true)
paginStart: true, //是否显示分页查询 (默认false)
isPageSizes: true,
pageLayout: "total, sizes, prev, pager, next",
titleDialog: "", //table 标题
paging: {
pageSize: 10,
currentPage: 1,
total: 0,
allAmountSum: 0, //总合计金额
outAmountSum: 0, //多省总金额
inpAmountSum: 0, //省内总金额
allCountSum: 0, //总交易笔总数
outCountSum: 0, //多省笔总数
inpCountSum: 0, //省内笔总数
},
crudShow: true, //是否显示CURD操作栏 (默认true)
crud: {
//配合crudShow,为true是可配置此
add: false,
edit: false,
delete: false,
derive: false, //导出
search: false,
refresh: false,
cudText: [
{
label: "总合计金额:",
key: "allAmountSum",
isAmount: true,
},
{
label: "多省总金额:",
key: "outAmountSum",
isAmount: true,
},
{
label: "省内总金额:",
key: "inpAmountSum",
isAmount: true,
},
{
label: "总交易笔总数:",
key: "allCountSum",
unit: "",
},
{
label: "多省笔总数:",
key: "outCountSum",
unit: "",
},
{
label: "省内笔总数:",
key: "inpCountSum",
unit: "",
},
],
},
searchOperation: {
isInitiateApproval: IsPermission(route, "INITIATE_APPROVAL"), //发起审批
initiateApprovalData: {
key: "mobile_payment",
processName: "移动支付省内消费资金结算表",
reqFileName: "SETTLE_MOBILEPAYMENT_DAYIMPORT",
isToLead: true,
},
isDownload: IsPermission(route, "DERIVE_BASE"), //开启下载
isAdd: false,
isTransferMachine: false,
isTemplate: IsPermission(route, "BATCH_LEAD"),
// templateUrl:
// import.meta.env.VITE_APP_UPLOAD_URL +
// "sett-minio/template/业务管理/移动支付/移动支付省内消费资金结算表-xin.xlsx",
templateFileName: "移动支付省内消费资金结算表导入模板",
isToLead: IsPermission(route, "BATCH_LEAD"), //导入
minioBucket: { bucket: "sett-minio" }, //指定桶为sett-minio
},
tableSize: -1,
operateShow: true, //是否为表格添加操作栏(默认true)
operateTitle: "操作", //操作栏标题(默认为"")
operateFixed: false, //操作栏是否固定(默认false)
operateWidth: "100", //操作栏宽度
operate: {
edit: false, //是否编辑(默认true)
delete: false, //是否删除(默认true)
announcement: false, // 公告
remark: false, // 查看
info: IsPermission(route, "INFO_LIST"), //详情
forbidden: false, // 禁用
enable: false, // 启用
authorization: false, // 授权
cancel: false, // 取消订单
writeOff: false, // 注销
make: false, // 补缴
},
extend: [
{
type: "index",
label: "序号",
},
],
field: [
{
prop: "clearDate",
label: "清分日期",
width: "170px",
form,
},
{
label: "总交易笔",
prop: "allCount",
form,
},
{
label: "总金额(元)",
prop: "allAmount",
isAmount: true,
form,
},
{
label: "多省笔数",
prop: "outCount",
form,
},
{
label: "多省金额(元)",
prop: "outAmount",
isAmount: true,
form,
},
{
label: "省内笔数",
prop: "inpCount",
form,
},
{
label: "省内金额(元)",
prop: "inpAmount",
isAmount: true,
form,
},
{
label: "上传时间",
prop: "insertTime",
hide: true,
form,
},
],
});
return {
field,
};
}

+ 173
- 0
src/views/settlement/businessManagement/mobilePayment/inpConsumFundSettle/index.vue Bestand weergeven

@@ -0,0 +1,173 @@
<template>
<div>
<crud-template class="as-weight" :ref="(el) => (crudRef = el)" :home-data="field" @btnSearch="btnSearch"
@refreshLeft="refreshLeft" :tableData="tableData" @CurrentChange="handleCurrentChange" @importData="handleSuccess"
@pageSizeChange="(val) => {
field.paging.currentPage = 1
field.paging.pageSize = val
getList()
}
">
<template #search>
<div class="date-label">清分日期:</div>
<el-date-picker unlink-panels v-model="timeValue" type="daterange" range-separator="到"
start-placeholder="清分开始日期" end-placeholder="清分结束日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD"
@change="dateChangeHandle" :default-time="defaultTime" />
</template>
</crud-template>
</div>
</template>

<!-- 移动支付省内消费资金结算表 -->
<script lang="ts" setup>
// @ts-ignore crudFrom模板
import CrudTemplate from '@/crud/index.vue'
import { ref, onMounted } from 'vue'
import { ElMessage } from 'element-plus'
// 请求函数
import BaseService from '@/utils/baseService'
//crud配置
import crudConfig from './crudConfig'
import { IsPermission } from '@/router/routerUtil'
import { useRoute } from 'vue-router'
const route = useRoute()
// 拿到配置
const { field } = crudConfig(route)
const defaultTime: any = getDefaultTime('day', 1, 'YYYY-MM-DD')
console.log(defaultTime)

const timeValue = ref(defaultTime) // 筛选时间
function dateChangeHandle(val) {
if (val) {
searchForm.value.startClearDate = val[0]
searchForm.value.endClearDate = val[1]
} else {
searchForm.value.startClearDate = ''
searchForm.value.endClearDate = ''
}
}

//整个crud虚拟dom
const crudRef = ref()
// 获取数据,查询条件
const searchForm = ref({
startClearDate: defaultTime[0], //开始时间
endClearDate: defaultTime[1], //结束时间
})
const tableData = ref([])
// 搜索按钮
function btnSearch() {
field.value.paging.currentPage = 1
getList()
getTotalSum()
}
// 搜索重置
function refreshLeft() {
field.value.paging.currentPage = 1
searchForm.value = {
startClearDate: defaultTime[0], //开始时间
endClearDate: defaultTime[1], //结束时间
}
tableData.value = []
timeValue.value = defaultTime
getList()
}

// 处理请求参数
const handleParams = () => {
let params: any = {
pageNo: field.value.paging.currentPage,
pageSize: field.value.paging.pageSize,
...searchForm.value,
}
return params
}
onMounted(() => {
getList()
getTotalSum()
})
// 获取数据
function getList(isInfo = false) {
const params = handleParams()
if (!params.startClearDate || !params.endClearDate) {
if (!isInfo) {
ElMessage.error('请选择统计开始时间和结束时间')
}
return
}
crudRef.value.tableLoding = true //表格loading效果
BaseService.postN('/settlew/mobilepay/statement/page', params).then(
(res: any) => {
crudRef.value.tableLoding = false
if (res && res.code === 0) {
let bizContent = res.data
let data = bizContent.result || []
tableData.value = data
field.value.paging.total = bizContent.totalCount
} else {
ElMessage.error(res.message)
}
}
)
}

// 获取数据
function getTotalSum(isInfo = false) {
const params = handleParams()
if (!params.startClearDate || !params.endClearDate) {
if (!isInfo) {
ElMessage.error('请选择统计开始时间和结束时间')
}
return
}
// crudRef.value.tableLoding = true //表格loading效果
BaseService.postN('/settlew/mobilepay/statement/queryStatementNoticeSum', params).then(
(res: any) => {
// crudRef.value.tableLoding = false
if (res && res.code === 0) {
let bizContent = res.data

field.value.paging.allAmountSum = bizContent.allAmount
field.value.paging.outAmountSum = bizContent.outAmount
field.value.paging.inpAmountSum = bizContent.inpAmount
field.value.paging.allCountSum = bizContent.allCount
field.value.paging.outCountSum = bizContent.outCount
field.value.paging.inpCountSum = bizContent.inpCount
} else {
ElMessage.error(res.message)
}
}
)
}
// 处理当前页数
function handleCurrentChange(val: number) {
field.value.paging.currentPage = val
getList()
}

/***********上传下载**************/

import {
importFn,
reportExportFn,
getDefaultTime,
} from '@/views/settlement/exportFn'
// 文件上传到minio后触发
const handleSuccess = (url: any, reportFileName: any) => {
importFn(
'/settlew/treatment/dayimport',
() => {
getList(true)
},
{
url,
reportFileName,
}
)
}
</script>
<style scoped lang="less">
.upload-btn {
margin: 20px 0 0 20px;
}
</style>

+ 145
- 0
src/views/settlement/businessManagement/mobilePayment/summaryComparisonReport/crudConfig.ts Bestand weergeven

@@ -0,0 +1,145 @@
import { ref } from "vue";
import { IsPermission } from "@/router/routerUtil";
// crud表格配置
export default function crudConfig(route) {
const form = {
formLabelWidth: "130px",
width: "50%",
type: "input",
};
const field = ref({
tabSize: "small", //Table 的尺寸 large / default /small (默认default)
searchShow: true, //是否显示搜索模块(默认false)
border: true, //是否添加边框(默认false)
dialogCustom: true, //自定义Dialog (默认false)
dialogFooter: true, //隐藏弹窗页脚显示 (默认false)
dialogWidth: "50%", //dialog宽度 (默认40%)
crudChildShow: true, //是否显示CURD子操作栏 (默认true)
paginStart: true, //是否显示分页查询 (默认false)
isPageSizes: true,
pageLayout: "total, sizes, prev, pager, next",
titleDialog: "", //table 标题
paging: {
pageSize: 10,
currentPage: 1,
total: 0,
entryAmountSum: 0,
settNoticeAmountSum: 0,
},
crudShow: true, //是否显示CURD操作栏 (默认true)
crud: {
//配合crudShow,为true是可配置此
add: false,
edit: false,
delete: false,
derive: false, //导出
search: false,
refresh: false,
cudText: [
{
label: "入账总金额:",
key: "entryAmountSum",
isAmount: true,
},
{
label: "省内结算通知书金额:",
key: "inpNoticeAmountSum",
isAmount: true,
},
{
label: "省外结算通知书金额:",
key: "outNoticeAmountSum",
isAmount: true,
},
{
label: "差额:",
key: "diffSum",
isAmount: true,
},
],
},
searchOperation: {
isInitiateApproval: IsPermission(route, "INITIATE_APPROVAL"), //发起审批
initiateApprovalData: {
key: "mobile_payment",
processName: "移动支付总表对比表",
// reqFileName: 'SETTLE_MOBILEPAYMENT_CONTRASTIMPORT',
},
isDownload: false, //开启下载
isAdd: false,
isTransferMachine: false,
isTemplate: IsPermission(route, "BATCH_LEAD"),
templateUrl:
import.meta.env.VITE_APP_UPLOAD_URL +
"sett-minio/template/业务管理/移动支付/移动支付总表对比表-xin.xlsx",
templateFileName: "移动支付总表对比表导入模板",
isToLead: IsPermission(route, "BATCH_LEAD"), //导入
minioBucket: { bucket: "sett-minio" }, //指定桶为sett-minio
},
tableSize: -1,
operateShow: true, //是否为表格添加操作栏(默认true)
operateTitle: "操作", //操作栏标题(默认为"")
operateFixed: false, //操作栏是否固定(默认false)
operateWidth: "100", //操作栏宽度
operate: {
edit: false, //是否编辑(默认true)
delete: false, //是否删除(默认true)
announcement: false, // 公告
remark: false, // 查看
info: IsPermission(route, "INFO_LIST"), //详情
forbidden: false, // 禁用
enable: false, // 启用
authorization: false, // 授权
cancel: false, // 取消订单
writeOff: false, // 注销
make: false, // 补缴
},
extend: [
{
type: "index",
label: "序号",
},
],
field: [
{
prop: "clearDate",
label: "日期",
width: "170px",
form,
},
{
label: "入账金额(元)",
prop: "entryAmount",
isAmount: true,
form,
},
{
label: "省内结算通知书金额(元)",
prop: "inpNoticeAmount",
isAmount: true,
form,
},
{
label: "省外结算通知书金额(元)",
prop: "outNoticeAmount",
isAmount: true,
form,
},
{
label: "差额",
prop: "diff",
isAmount: true,
form,
},
{
label: "上传时间",
prop: "insertTime",
hide: true,
form,
},
],
});
return {
field,
};
}

+ 162
- 0
src/views/settlement/businessManagement/mobilePayment/summaryComparisonReport/index.vue Bestand weergeven

@@ -0,0 +1,162 @@
<template>
<div>
<crud-template class="as-weight" :ref="(el) => (crudRef = el)" :home-data="field" @btnSearch="btnSearch"
@refreshLeft="refreshLeft" :tableData="tableData" @CurrentChange="handleCurrentChange" @importData="handleSuccess"
@pageSizeChange="(val) => {
field.paging.currentPage = 1
field.paging.pageSize = val
getList()
}
">
<template #search>
<div class="date-label">日期:</div>
<el-date-picker unlink-panels v-model="timeValue" type="daterange" range-separator="到" start-placeholder="开始日期"
end-placeholder="结束日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" @change="dateChangeHandle"
:default-time="defaultTime" />
</template>
</crud-template>
</div>
</template>

<!-- 移动支付总对比表 -->
<script lang="ts" setup>
// @ts-ignore crudFrom模板
import CrudTemplate from '@/crud/index.vue'
import { ref } from 'vue'
import { ElMessage } from 'element-plus'
// 请求函数
import BaseService from '@/utils/baseService'

//crud配置
import crudConfig from './crudConfig'
import { IsPermission } from '@/router/routerUtil'
import { useRoute } from 'vue-router'
const route = useRoute()
// 拿到配置
const { field } = crudConfig(route)
const defaultTime: any = getDefaultTime('day', 1, 'YYYY-MM-DD')
console.log(defaultTime)

const timeValue = ref(defaultTime) // 筛选时间
function dateChangeHandle(val) {
if (val) {
searchForm.value.startClearDate = val[0]
searchForm.value.endClearDate = val[1]
} else {
searchForm.value.startClearDate = ''
searchForm.value.endClearDate = ''
}
}

//整个crud虚拟dom
const crudRef = ref()
// 获取数据,查询条件
const searchForm = ref({
startClearDate: defaultTime[0], //开始时间
endClearDate: defaultTime[1], //结束时间
})
const tableData = ref([])
// 搜索按钮
function btnSearch() {
field.value.paging.currentPage = 1
getList()
}
// 搜索重置
function refreshLeft() {
field.value.paging.currentPage = 1
searchForm.value = {
startClearDate: defaultTime[0], //开始时间
endClearDate: defaultTime[1], //结束时间
}
tableData.value = []
timeValue.value = defaultTime
getList()
}

// 处理请求参数
const handleParams = () => {
let params: any = {
pageNo: field.value.paging.currentPage,
pageSize: field.value.paging.pageSize,
...searchForm.value,
}
return params
}
// 获取数据
function getList(isInfo = false) {
const params = handleParams()
if (!params.startClearDate || !params.endClearDate) {
if (!isInfo) {
ElMessage.error('请选择统计开始时间和结束时间')
}
return
}
crudRef.value.tableLoding = true //表格loading效果
BaseService.postN('/settlew/mobilepay/comparison/page', params).then(
(res: any) => {
crudRef.value.tableLoding = false
if (res && res.code === 0) {
let bizContent = res.data
let data = bizContent.result || []
tableData.value = data
field.value.paging.total = bizContent.totalCount
} else {
ElMessage.error(res.message)
}
}
)
}

// 获取数据
function getTotalSum(isInfo = false) {
const params = handleParams()
if (!params.startClearDate || !params.endClearDate) {
if (!isInfo) {
ElMessage.error('请选择统计开始时间和结束时间')
}
return
}
crudRef.value.tableLoding = true //表格loading效果
BaseService.postN('/settlew/mobilepay/comparison/queryComparisonSum', params).then(
(res: any) => {
if (res && res.code === 0) {
let bizContent = res.data
field.value.paging.entryAmountSum = bizContent.entryAmount
field.value.paging.inpNoticeAmountSum = bizContent.inpNoticeAmount
field.value.paging.outNoticeAmountSum = bizContent.outNoticeAmount
field.value.paging.diffSum = bizContent.diff
} else {
ElMessage.error(res.message)
}
}
)
}
// 处理当前页数
function handleCurrentChange(val: number) {
field.value.paging.currentPage = val
getList()
}

/***********上传下载**************/

import { importFn, getDefaultTime } from '@/views/settlement/exportFn'

// 文件上传到minio后触发
const handleSuccess = (url: any, reportFileName: any) => {
importFn(
'/settlew/treatment/contrastimport',
() => {
getList(true)
},
{
url,
reportFileName,
}
)
}
</script>
<style scoped lang="less">
.upload-btn {
margin: 20px 0 0 20px;
}
</style>

Laden…
Annuleren
Opslaan