452 lines
16 KiB
Vue
452 lines
16 KiB
Vue
<template>
|
||
<div>
|
||
<div style="padding:10px 0 20px;">
|
||
<el-button
|
||
type="primary"
|
||
plain
|
||
icon="Plus"
|
||
@click="showpop(1)">新增</el-button>
|
||
<el-table
|
||
style="width:100%;margin-top: 10px;"
|
||
:data="yysList"
|
||
border
|
||
stripe
|
||
highlight-current-row
|
||
max-height="620px"
|
||
>
|
||
<el-table-column label="交易编码" min-width="280" align="center" prop="tradeNo" :show-overflow-tooltip="true" />
|
||
<el-table-column label="交易前账户总金额(元)" min-width="160" align="center" prop="preTotalAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.preTotalAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="交易前充值余额(元)" min-width="150" align="center" prop="preRechargeAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.preRechargeAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="交易前赠送金额(元)" min-width="150" align="center" prop="preGiftAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.preGiftAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
|
||
<el-table-column label="交易总金额(元)" min-width="140" align="center" prop="tradeTotalAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.tradeTotalAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
|
||
<el-table-column label="交易充值余额(元)" min-width="140" align="center" prop="tradeRechargeAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.tradeRechargeAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="交易赠送金额(元)" min-width="140" align="center" prop="tradeGiftAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.tradeGiftAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
|
||
<el-table-column label="交易后总金额(元)" min-width="150" align="center" prop="afterTotalAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.afterTotalAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="交易后充值余额(元)" min-width="150" align="center" prop="afterRechargeAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.afterRechargeAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="交易后赠送金额(元)" min-width="150" align="center" prop="afterGiftAmount" :show-overflow-tooltip="true">
|
||
<template #default="scope">
|
||
<div>{{scope.row.afterGiftAmount/100}}</div>
|
||
</template>
|
||
</el-table-column>
|
||
|
||
<el-table-column label="操作" align="center" width="150" fixed="right">
|
||
<template #default="scope">
|
||
<!-- <el-button link type="primary" icon="Edit" @click="showpop(2,scope.row)">修改</el-button> -->
|
||
<el-button link type="danger" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
|
||
</template>
|
||
</el-table-column>
|
||
</el-table>
|
||
|
||
</div>
|
||
<div v-if="total > 10" style="display: flex;justify-content: right;">
|
||
<el-pagination
|
||
v-model:current-page="queryParams.pageNo"
|
||
v-model:page-size="queryParams.pageSize"
|
||
:page-sizes="[10, 20, 30, 40]"
|
||
background
|
||
size="small"
|
||
layout="total, sizes, prev, pager, next, jumper"
|
||
:total="total"
|
||
@size-change="handleSizeChange"
|
||
@current-change="getyys"
|
||
/>
|
||
</div>
|
||
|
||
<!-- 添加或修改用户配置对话框 -->
|
||
<el-dialog
|
||
v-model="openpop"
|
||
:title="ystit"
|
||
width="500px"
|
||
append-to-body
|
||
:close-on-click-modal="false"
|
||
>
|
||
<el-form
|
||
ref="yysRef"
|
||
:model="addata"
|
||
:rules="rules"
|
||
label-width="180px">
|
||
<el-row :gutter="30">
|
||
|
||
<!-- <el-col :span="12">
|
||
<el-form-item label="结束时间" prop="timeEnd">
|
||
<el-time-picker
|
||
v-model="addata.timeEnd"
|
||
placeholder="请选择结束时间"
|
||
value-format="YYYY-MM-DD"
|
||
style="width: 100%;"
|
||
/>
|
||
</el-form-item>
|
||
</el-col> -->
|
||
<el-col :span="24">
|
||
<el-form-item label="交易编码" prop="tradeNo">
|
||
<el-input
|
||
v-model="addata.tradeNo"
|
||
placeholder="请输入交易编码"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易前账户总金额(元)" prop="preTotalAmount">
|
||
<el-input
|
||
v-model="addata.preTotalAmount"
|
||
placeholder="请输入交易前账户总金额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易前充值余额(元)" prop="preRechargeAmount">
|
||
<el-input
|
||
v-model="addata.preRechargeAmount"
|
||
placeholder="请输入交易前充值余额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易前赠送金额(元)" prop="preGiftAmount">
|
||
<el-input
|
||
v-model="addata.preGiftAmount"
|
||
placeholder="请输入交易前赠送金额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易总金额(元)" prop="tradeTotalAmount">
|
||
<el-input
|
||
v-model="addata.tradeTotalAmount"
|
||
placeholder="请输入交易总金额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易充值余额(元)" prop="tradeRechargeAmount">
|
||
<el-input
|
||
v-model="addata.tradeRechargeAmount"
|
||
placeholder="请输入交易充值余额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易赠送金额(元)" prop="tradeGiftAmount">
|
||
<el-input
|
||
v-model="addata.tradeGiftAmount"
|
||
placeholder="请输入交易赠送金额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易后总金额(元)" prop="afterTotalAmount">
|
||
<el-input
|
||
v-model="addata.afterTotalAmount"
|
||
placeholder="请输入交易后总金额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易后充值余额(元)" prop="afterRechargeAmount">
|
||
<el-input
|
||
v-model="addata.afterRechargeAmount"
|
||
placeholder="请输入交易后充值余额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
<el-col :span="24">
|
||
<el-form-item label="交易后赠送金额(元)" prop="afterGiftAmount">
|
||
<el-input
|
||
v-model="addata.afterGiftAmount"
|
||
placeholder="请输入交易后赠送金额"
|
||
maxlength="50"
|
||
/>
|
||
</el-form-item>
|
||
</el-col>
|
||
</el-row>
|
||
</el-form>
|
||
<template #footer>
|
||
<div class="dialog-footer">
|
||
<el-button type="primary" @click="handleAdd">确 定</el-button>
|
||
<el-button @click="cancel">取 消</el-button>
|
||
</div>
|
||
</template>
|
||
</el-dialog>
|
||
</div>
|
||
</template>
|
||
<script setup lang="ts" name="UserPage">
|
||
import {
|
||
getmxlist,
|
||
addhdz,
|
||
delhdz
|
||
} from '@/api/order/accdetails'
|
||
|
||
import { setNum } from '@/utils/validate'
|
||
|
||
import { ref,reactive,watch} from 'vue'
|
||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||
|
||
const props = defineProps<{
|
||
code:string
|
||
}>()
|
||
|
||
let queryParams = reactive({
|
||
pageSize:20, //每页条数,示例值(10)
|
||
pageNo:1, //页数,示例值
|
||
ownerType:'', //户主类型:1-个人,2-企业
|
||
ownerId:'', //户主ID
|
||
code:props.code, //编码
|
||
stationCode:'' //引入站点
|
||
})
|
||
|
||
//查询
|
||
let yysList = ref<any>([])
|
||
// if(props.list.length > 0){
|
||
// yysList.value = props.list
|
||
// }
|
||
let total = ref(0)
|
||
function getyys() {
|
||
yysList.value.splice(0)
|
||
getmxlist(queryParams).then(rps => {
|
||
if(rps.data){
|
||
total.value = (rps.data as any).total
|
||
let list = (rps.data as any).records
|
||
yysList.value = list?list:[]
|
||
}
|
||
})
|
||
}
|
||
|
||
function handleSizeChange(val:number) {
|
||
queryParams.pageSize = val
|
||
getyys()
|
||
}
|
||
|
||
//新增、修改
|
||
let type = ref(1)
|
||
let openpop = ref(false)
|
||
let ystit = ref('添加账户明细')
|
||
let yysRef = ref()
|
||
let addata = reactive({
|
||
code:'', //编码 ??
|
||
tradeType:'1', //交易类型 ??
|
||
tradeNo:'', //交易编码 ??
|
||
preTotalAmount:'', //交易前账户总金额,分:总金额=充值金额+赠送金额
|
||
preRechargeAmount:'', //交易前充值余额,分
|
||
preGiftAmount:'', //交易前赠送金额,分
|
||
|
||
tradeTotalAmount:'', //交易总金额,分:总金额=充值金额+赠送金额
|
||
tradeRechargeAmount:'', //交易充值余额,分
|
||
tradeGiftAmount:'', //交易赠送金额,分
|
||
|
||
afterTotalAmount:'', //交易后总金额,分:总金额=充值金额+赠送金额
|
||
afterRechargeAmount:'', //交易后充值余额,分
|
||
afterGiftAmount:'' //交易后赠送金额,分
|
||
})
|
||
|
||
const rules = ref({
|
||
tradeNo:[
|
||
{ required: true, message: "请输入交易编码", trigger: "blur" }
|
||
],
|
||
preTotalAmount:[
|
||
{ required: true, message: "请输入交易前账户总金额", trigger: "blur" }
|
||
],
|
||
preRechargeAmount:[
|
||
{ required: true, message: "请输入交易前充值余额", trigger: "blur" },
|
||
],
|
||
preGiftAmount:[
|
||
{ required: true, message: "请输入交易前赠送金额", trigger: "blur" },
|
||
],
|
||
tradeTotalAmount:[
|
||
{ required: true, message: "请输入交易总金额", trigger: "blur" },
|
||
],
|
||
tradeRechargeAmount:[
|
||
{ required: true, message: "请输入交易充值余额", trigger: "blur" },
|
||
],
|
||
tradeGiftAmount:[
|
||
{ required: true, message: "请输入交易赠送金额", trigger: "blur" },
|
||
],
|
||
afterTotalAmount:[
|
||
{ required: true, message: "请输入交易后总金额", trigger: "blur" },
|
||
],
|
||
afterRechargeAmount:[
|
||
{ required: true, message: "请输入交易后充值余额", trigger: "blur" },
|
||
],
|
||
afterGiftAmount:[
|
||
{ required: true, message: "请输入交易后赠送金额", trigger: "blur" },
|
||
]
|
||
})
|
||
|
||
watch(() => addata.preTotalAmount,v => {
|
||
addata.preTotalAmount = setNum(addata.preTotalAmount)
|
||
})
|
||
|
||
watch(() => addata.preRechargeAmount,v => {
|
||
addata.preRechargeAmount = setNum(addata.preRechargeAmount)
|
||
})
|
||
|
||
watch(() => addata.preGiftAmount,v => {
|
||
addata.preGiftAmount = setNum(addata.preGiftAmount)
|
||
})
|
||
|
||
|
||
|
||
watch(() => addata.tradeTotalAmount,v => {
|
||
addata.tradeTotalAmount = setNum(addata.tradeTotalAmount)
|
||
})
|
||
|
||
watch(() => addata.tradeRechargeAmount,v => {
|
||
addata.tradeRechargeAmount = setNum(addata.tradeRechargeAmount)
|
||
})
|
||
|
||
watch(() => addata.tradeGiftAmount,v => {
|
||
addata.tradeGiftAmount = setNum(addata.tradeGiftAmount)
|
||
})
|
||
|
||
watch(() => addata.afterTotalAmount,v => {
|
||
addata.afterTotalAmount = setNum(addata.afterTotalAmount)
|
||
})
|
||
|
||
|
||
watch(() => addata.afterRechargeAmount,v => {
|
||
addata.afterRechargeAmount = setNum(addata.afterRechargeAmount)
|
||
})
|
||
|
||
watch(() => addata.afterGiftAmount,v => {
|
||
addata.afterGiftAmount = setNum(addata.afterGiftAmount)
|
||
})
|
||
|
||
|
||
function showpop(num:any,row?:any){
|
||
type.value = num
|
||
openpop.value = true
|
||
ystit.value = num == 1?'添加账户明细':'修改账户明细'
|
||
yysRef.value?.resetFields()
|
||
if(row){
|
||
//addata.code = //??
|
||
addata.tradeNo = row.tradeNo
|
||
addata.preTotalAmount = row.preTotalAmount
|
||
addata.preRechargeAmount = row.preRechargeAmount
|
||
addata.preGiftAmount = row.preGiftAmount
|
||
|
||
addata.tradeTotalAmount = row.tradeTotalAmount
|
||
addata.tradeRechargeAmount = row.tradeRechargeAmount
|
||
addata.tradeGiftAmount = row.tradeGiftAmount
|
||
|
||
addata.afterTotalAmount = row.afterTotalAmount
|
||
addata.afterRechargeAmount = row.afterRechargeAmount
|
||
addata.afterGiftAmount = row.afterGiftAmount
|
||
|
||
}else{
|
||
//addata.code = //??
|
||
addata.tradeNo = ''
|
||
addata.preTotalAmount = ''
|
||
addata.preRechargeAmount = ''
|
||
addata.preGiftAmount = ''
|
||
|
||
addata.tradeTotalAmount = ''
|
||
addata.tradeRechargeAmount = ''
|
||
addata.tradeGiftAmount = ''
|
||
|
||
addata.afterTotalAmount = ''
|
||
addata.afterRechargeAmount = ''
|
||
addata.afterGiftAmount = ''
|
||
}
|
||
}
|
||
function savehand() {
|
||
if(type.value == 1){
|
||
return addhdz(addata)
|
||
}
|
||
return addhdz(addata) //??
|
||
|
||
}
|
||
//保存
|
||
function handleAdd() {
|
||
yysRef.value?.validate((valid:Boolean) => {
|
||
if (valid) {
|
||
addata.code = props.code
|
||
savehand().then(() => {
|
||
ElMessage({
|
||
type: 'success',
|
||
message: type.value == 1?'添加成功':'修改成功'
|
||
})
|
||
setTimeout(()=> {
|
||
openpop.value = false
|
||
getyys()
|
||
},600)
|
||
})
|
||
}
|
||
})
|
||
}
|
||
|
||
//取消
|
||
function cancel() {
|
||
openpop.value = false
|
||
}
|
||
|
||
//删除
|
||
function handleDelete(row:any) {
|
||
ElMessageBox.confirm(
|
||
`确定删除?`,
|
||
'温馨提示',
|
||
{
|
||
// confirmButtonText: '',
|
||
// cancelButtonText: 'Cancel',
|
||
type: 'warning',
|
||
}
|
||
).then(() => {
|
||
delhdz(row.pkId,props.code).then(() => {
|
||
ElMessage({
|
||
type: 'success',
|
||
message: '删除成功'
|
||
})
|
||
getyys()
|
||
})
|
||
})
|
||
}
|
||
|
||
getyys()
|
||
</script>
|
||
<style scoped>
|
||
.el-divider--horizontal{
|
||
border-color:#5b98cd;
|
||
}
|
||
</style> |