代收水费、电费

20240205
yujialong 5 months ago
parent e48876d125
commit 45dfe32c87
  1. 41
      src/pages/counter/list/myConfig.js
  2. 348
      src/pages/manage/list/agent/electricRate.vue
  3. 25
      src/pages/manage/list/agent/waterRate.vue

@ -351,6 +351,47 @@ const myConfig = {
isPassword: true, isPassword: true,
}, },
'713': {
nbm: 713,
name: 'waterRateIdCard',
parentId: '5,706,709',
isPassword: false,
machine: '身份证扫描仪'
},
'715': {
nbm: 715,
name: 'waterRateBankCard',
parentId: '5,706,709',
isPassword: false,
machine: '刷卡器'
},
'720': {
nbm: 720,
name: 'waterRatePassword',
parentId: '5,706,709',
isPassword: true
},
'722': {
nbm: 722,
name: 'electricRateIdCard',
parentId: '5,706,710',
isPassword: false,
machine: '身份证扫描仪'
},
'724': {
nbm: 724,
name: 'electricRateBankCard',
parentId: '5,706,710',
isPassword: false,
machine: '刷卡器'
},
'729': {
nbm: 729,
name: 'electricRatePassword',
parentId: '5,706,710',
isPassword: true
},
} }
export { export {

@ -1,149 +1,86 @@
<!-- 代收电费 --> <!-- 代收电费 -->
<template> <template>
<div class="body"> <div class="body">
<el-row :gutter="20" <el-row :gutter="20" style="margin: 0">
style="margin: 0"> <el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-form ref="form" <el-col :span="10" :offset="1">
:model="form" <el-form-item label="证件类型" prop="certificateType">
label-width="120px" <el-select v-model.trim="form.certificateType" placeholder="请选择" ref="certificateType" disabled>
:rules="rules"> <el-option label="身份证" :value="83"> </el-option>
<el-col :span="10"
:offset="1">
<el-form-item label="证件类型"
prop="certificateType">
<el-select v-model.trim="form.certificateType"
placeholder="请选择"
ref="certificateType">
<el-option label="身份证"
:value="83"> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="账号" <el-form-item label="账号" required>
required> <div v-if='!cardNumberJudge' class="idCard" @click="popUp2('刷卡器')">
<div v-if='!cardNumberJudge'
class="idCard"
@click="popUp2('刷卡器')">
<p>请刷卡</p> <p>请刷卡</p>
</div> </div>
<div v-else> <div v-else>
<el-input @blur="getDataBlur" <el-input maxlength="20" ref="voucherNumber" disabled :value="form.voucherNumber"
maxlength="20"
ref="voucherNumber"
disabled
:value="form.voucherNumber"
@input="(val) => inputListen(val, form, 'voucherNumber')"></el-input> @input="(val) => inputListen(val, form, 'voucherNumber')"></el-input>
</div> </div>
<!-- <el-input @blur="getDataBlur" maxlength="20" ref="voucherNumber" :value="form.voucherNumber" @input="(val) => inputListen(val, form, 'voucherNumber')"></el-input> -->
</el-form-item> </el-form-item>
<el-form-item label="缴费单位" <el-form-item label="缴费单位" required>
required> <el-input v-model="form.paymentUnit" />
<el-input :value="form.mailbox"
@input="val => mailBoxListen(val, form, 'mailbox')"
maxlength="30"
ref="mailbox"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" <el-col :span="10" :offset="1">
:offset="1"> <el-form-item label="证件号码" required>
<el-form-item label="证件号码" <div class="idCard" @click="popUp1('身份证扫描仪')" v-if='!idNumberJudge'>
required>
<div class="idCard"
@click="popUp1('身份证扫描仪')"
v-if='!idNumberJudge'>
<p>请刷身份证</p> <p>请刷身份证</p>
</div> </div>
<div v-else> <div v-else>
<el-input :value="form.idNumber" <el-input :value="form.idNumber" disabled ref="idNumber"></el-input>
disabled
ref="idNumber"></el-input>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="客户姓名" <el-form-item label="客户姓名" prop="customerName">
prop="customerName"> <el-input ref="customerName" disabled :value="form.customerName"
<el-input ref="customerName"
disabled
:value="form.customerName"
@input="(val) => checkName(val, form, 'customerName')"></el-input> @input="(val) => checkName(val, form, 'customerName')"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="户号" <el-form-item label="户号" required>
required> <el-input v-model="form.houseId" />
<el-input :value="form.mailbox"
@input="val => mailBoxListen(val, form, 'mailbox')"
maxlength="30"
ref="mailbox"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="21" <el-col :span="21" :offset="1">
:offset="1"> <el-form-item label="住址信息" prop="address">
<el-form-item label="住址信息" <el-input type="textarea" :rows="3" placeholder="请输入住址信息" v-model.trim="form.address"></el-input>
prop="textarea">
<el-input type="textarea"
:rows="3"
placeholder="请输入内容"
v-model.trim="form.abstract"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" <el-col :span="10" :offset="1">
:offset="1"> <el-form-item label="缴费金额" prop="paymentMoney">
<el-form-item label="缴费金额" <el-input :value="form.paymentMoney" maxlength="15"
prop="monthDeposit" @input="val => ismoney(val, form, 'paymentMoney')"></el-input>
required>
<!-- :value="form.monthDeposit" -->
<el-input :value="form.monthDeposit"
maxlength="15"
@input="val => ismoney(val, form, 'monthDeposit')"
ref="monthDeposit"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="支取密码" <el-form-item label="支取密码" required>
required> <div v-if='!form.drawPassword' class="idCard" @click="popUp3('密码器')">
<div v-if='!form.drawPassword'
class="idCard"
@click="popUp3('密码器')">
<p>请输入密码</p> <p>请输入密码</p>
</div> </div>
<div v-else <div v-else @click="popUp3('密码器')">
@click="popUp3('密码器')"> <el-input :value="form.drawPassword" ref="drawPassword" type="password"></el-input>
<el-input :value="form.drawPassword"
ref="drawPassword"
type="password"></el-input>
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" <el-col :span="10" :offset="1">
:offset="1"> <el-form-item label="每月代扣" prop="monthlyWithholding" required>
<el-form-item label="每月代扣" <el-radio-group v-model.trim="form.monthlyWithholding">
prop="extendPeriod" <el-radio :label="142"></el-radio>
required> <el-radio :label="143"></el-radio>
<el-radio-group v-model.trim="form.extendPeriod"
ref="extendPeriod">
<el-radio :label="90"></el-radio>
<el-radio :label="91"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
<my-dialog :moduleName="moduleName" <my-dialog :moduleName="moduleName" v-if="visible" :visible.sync="visible" :showForm="form" :formName="formName"
v-if="visible" @submitIt="submitForm2" depositNumber='0816' />
:visible.sync="visible"
:showForm="form"
:formName="formName"
@submitIt="submitForm2"
depositNumber='0816' />
</el-form> </el-form>
</el-row> </el-row>
<el-button @click="submitForm" <el-button @click="submitForm" type="primary" class="submitBtn" v-throttle>提交</el-button>
type="primary"
class="submitBtn"
v-throttle>提交</el-button>
</div> </div>
<!-- <need-before v-else :moduleName='needBefore' :unNeed="unNeed" /> -->
</template> </template>
<script> <script>
import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js'; import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js';
import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js' import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js'
import { addOperation, getOperation } from '@/api/http';
const moduleName = 'usefulPhrases/openAccount' const moduleName = 'agent/electricRate'
import { mapMutations, mapGetters } from 'vuex' import { mapMutations, mapGetters } from 'vuex'
import NeedBefore from '@/components/needBefore' import NeedBefore from '@/components/needBefore'
import MyDialog from '@/components/dialog' import MyDialog from '@/components/dialog'
@ -157,20 +94,11 @@ export default {
}, },
mixins: [TipsBefore], mixins: [TipsBefore],
created () { created () {
if (sessionStorage.getItem('nomUsefulPhrasesOpenPassword')) { if (sessionStorage.getItem('electricRatePassword')) {
this.form.drawPassword = sessionStorage.getItem('nomUsefulPhrasesOpenPassword') this.form.drawPassword = sessionStorage.getItem('electricRatePassword')
} }
// if(sessionStorage.getItem('nomUsefulPhrasesOpenCard2')) { if (sessionStorage.getItem('electricRateIdCard')) {
// this.idNumberJudge = true
// this.form.idNumber = this.dataFlow.idNumber || '441515199812064569'
// }
// if(sessionStorage.getItem('nomUsefulPhrasesOpenCard')) {
// this.cardNumberJudge = true
// this.form.voucherNumber = this.dataFlow.voucherNumber || '159753'
// }
if (sessionStorage.getItem('nomUsefulPhrasesOpenCard2')) {
this.idNumberJudge = true this.idNumberJudge = true
// //
const { idNumber, userName, peopleNumber, currency, goldLogo } = this.dataFlow const { idNumber, userName, peopleNumber, currency, goldLogo } = this.dataFlow
@ -181,100 +109,102 @@ export default {
this.form.goldLogo = goldLogo this.form.goldLogo = goldLogo
this.form.voucherType = 127 this.form.voucherType = 127
} }
if (sessionStorage.getItem('nomUsefulPhrasesOpenCard')) { if (sessionStorage.getItem('electricRateBankCard')) {
this.cardNumberJudge = true this.cardNumberJudge = true
const { voucherNumber } = this.dataFlow const { voucherNumber } = this.dataFlow
this.form.voucherNumber = voucherNumber this.form.voucherNumber = voucherNumber
} }
// this.getFormData()
this.getFormData()
}, },
data () { data () {
return { return {
moduleName: 'usefulPhrases/openAccount', moduleName,
visible: false, visible: false,
cardNumberJudge: false, cardNumberJudge: false,
idNumberJudge: false, idNumberJudge: false,
form: { form: {
// certificateType: 83,
// identityCard: '', //
idNumber: '', idNumber: '',
customerName: '', // voucherNumber: '',
currency: '', // customerName: '',
goldLogo: '', // paymentUnit: '',
voucherType: '', // houseId: '',
monthDeposit: '', // address: '',
depositTerm: '', // paymentMoney: '',
extendDepositTarget: '', // monthlyWithholding: '',
voucherNumber: '', // drawPassword: '',
drawPassword: '', //
//
clientNumber: '', //
certificateType: 83, //
}, },
formName: { formName: {
// certificateType: '证件类型',
// identityCard: '', // idNumber: '证件号码',
idNumber: '身份证', voucherNumber: '账号',
customerName: '客户姓名', // customerName: '客户姓名',
currency: '币种', // paymentUnit: '缴费单位',
goldLogo: '钞汇标识', // houseId: '户号',
voucherType: '凭证类型', // address: '住址信息',
monthDeposit: '月存金额', // paymentMoney: '缴费金额',
depositTerm: '存期', // monthlyWithholding: '每月代扣',
extendDepositTarget: '续存标识', // drawPassword: '支付密码',
voucherNumber: '凭证号码', //
drawPassword: '支付密码', //
//
clientNumber: '客户号', //
certificateType: '证件类型', //
}, },
rules: { rules: {
customerName: vercustomer, customerName: vercustomer,
currency: [ idNumber: [
{ {
required: true, required: true,
message: '请选择币种', message: '请输入证件号码',
trigger: 'blur' trigger: 'blur'
} }
], ],
goldLogo: [ voucherNumber: [
{ {
required: true, required: true,
message: '请选择钞汇标识', message: '请输入账号',
trigger: 'blur' trigger: 'blur'
} }
], ],
voucherType: [ customerName: [
{ {
required: true, required: true,
message: '请选择凭证类型', message: '请输入客户姓名',
trigger: 'blur' trigger: 'blur'
} }
], ],
monthDeposit: [ paymentUnit: [
{ {
required: true, required: true,
message: '请输入月存金额', message: '请输入缴费单位',
trigger: 'blur' trigger: 'blur'
} }
], ],
depositTerm: [ houseId: [
{ {
required: true, required: true,
message: '请选择存期', message: '请输入户号',
trigger: 'blur' trigger: 'blur'
} }
], ],
extendDepositTarget: [ address: [
{ {
required: true, required: true,
message: '请选择续存标识', message: '请输入住址信息',
trigger: 'blur' trigger: 'blur'
} }
], ],
paymentMoney: [
{
required: true,
message: '请输入缴费金额',
trigger: 'blur'
}
],
extendDepomonthlyWithholdingsitTarget: [
{
required: true,
message: '请选择每月代扣',
trigger: 'change'
}
],
}, },
myTable2: { myTable2: {
158: { 158: {
@ -346,11 +276,6 @@ export default {
}, },
methods: { methods: {
// userName,
// peopleNumber,
// idNumber,
// currency:'CNY',
// goldLogo:'',
...mapMutations({ ...mapMutations({
changeShowGoods: 'system/changeShowGoods', changeShowGoods: 'system/changeShowGoods',
setDataFlow: 'system/setDataFlow', setDataFlow: 'system/setDataFlow',
@ -358,24 +283,21 @@ export default {
setPopId: 'system/setPopId', setPopId: 'system/setPopId',
setTipsOperate: 'system/setTipsOperate' setTipsOperate: 'system/setTipsOperate'
}), }),
getDataBlur () {
// console.log('???')
},
popUp1 (text) { popUp1 (text) {
this.setTipsOperate('请刷身份证'); this.setTipsOperate('请刷身份证');
this.setPopId('1399') this.setPopId('722')
sessionStorage.setItem('computerPath', this.$route.fullPath) sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/') this.$router.push('/counter/list/')
}, },
popUp2 (text) { popUp2 (text) {
this.setTipsOperate('请刷银行卡'); this.setTipsOperate('请刷银行卡');
this.setPopId('166') this.setPopId('724')
sessionStorage.setItem('computerPath', this.$route.fullPath) sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/') this.$router.push('/counter/list/')
}, },
popUp3 (text) { popUp3 (text) {
this.setTipsOperate('请在密码器输入密码'); this.setTipsOperate('请在密码器输入密码');
this.setPopId('167') this.setPopId('729')
sessionStorage.setItem('computerPath', this.$route.fullPath) sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/') this.$router.push('/counter/list/')
}, },
@ -403,30 +325,6 @@ export default {
if (this.submited) return this.$message.error('已提交!') if (this.submited) return this.$message.error('已提交!')
if (!this.form.idNumber) { if (!this.form.idNumber) {
messageIdCard() messageIdCard()
// let projectId = sessionStorage.getItem('projectId')
// let startTime = sessionStorage.getItem('startTime')
// let formList = [
// {
// "answerId":'159',
// "emptyOne": "",
// "emptyTwo": "",
// "operationIds": "285," + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id +",287,5,26,59,155,159,13",
// "type": ""
// }
// ]
// let params= {
// parentId: '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,59,155,159',
// lcJudgmentRuleReq:formList,
// projectId:+projectId,
// startTime:startTime,
// }
// addOperation(params).then((data)=>{
// this.$message({
// message: '',
// type: 'success'
// });
// }).catch((error)=>{
// })
return return
} }
if (!this.form.voucherNumber) { if (!this.form.voucherNumber) {
@ -444,34 +342,39 @@ export default {
}, this.$refs)); }, this.$refs));
}, },
submitForm2 () { submitForm2 () {
// let nomUsefulPhrasesOpenCard = sessionStorage.getItem('nomUsefulPhrasesOpenCard') let projectId = sessionStorage.getItem('projectId')
// let nomUsefulPhrasesOpenCard2 = sessionStorage.getItem('nomUsefulPhrasesOpenCard2') let startTime = sessionStorage.getItem('startTime')
// let nomUsefulPhrasesOpenPassword = sessionStorage.getItem('nomUsefulPhrasesOpenPassword') let formList = [];
const parentId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,26,59,155' const { form } = this
const cards = [ const preId = '285,' + this.$store.state.system.businessSelect[this.$store.state.system.businessKey].id + ',287,5,706,710'
{ formList.push(
key: '159,13' { answerId: 725, emptyOne: 111, emptyTwo: form.paymentUnit, operationIds: preId + ',725', type: 3 },
{ answerId: 726, emptyOne: 112, emptyTwo: form.houseId, operationIds: preId + ',726', type: 3 },
{ answerId: 730, emptyOne: '', emptyTwo: '', operationIds: preId + ',730', type: '' },
{ answerId: 727, emptyOne: 113, emptyTwo: form.paymentMoney, operationIds: preId + ',727', type: 3 },
{ answerId: 728, emptyOne: 114, emptyTwo: form.monthlyWithholding, operationIds: preId + ',728', type: 1 },
)
let params = {
parentId: preId,
lcJudgmentRuleReq: formList,
projectId: +projectId,
startTime: startTime,
} }
addOperation(params).then((data) => {
// { this.setDataFlow({ ...this.form })
// 1399: nomUsefulPhrasesOpenCard2
// },
// {
// 166: nomUsefulPhrasesOpenCard
// },
// {
// 167: nomUsefulPhrasesOpenPassword,
// "subjectId": 17,
// }
]
this.setDataFlow(this.form)
autoPlay(parentId, this.form, this.myTable2, this.myTable, cards)
this.submited = 1 this.submited = 1
}).catch((error) => {
this.$message({
message: '服务器繁忙,提交失败。',
center: true,
type: 'info'
});
})
}, },
ismoney: ismoney, ismoney,
checkHanzi: checkHanzi, checkHanzi,
checkName: checkName, checkName,
inputListen: inputListen inputListen,
}, },
computed: { computed: {
...mapGetters({ ...mapGetters({
@ -484,5 +387,4 @@ export default {
} }
} }
</script> </script>
<style lang='scss' scoped> <style lang='scss' scoped></style>
</style>

@ -20,7 +20,7 @@
</el-form-item> </el-form-item>
<el-form-item label="缴费单位" prop="paymentUnit"> <el-form-item label="缴费单位" prop="paymentUnit">
<el-input v-model="form.paymentUnit"></el-input> <el-input v-model="form.paymentUnit" />
</el-form-item> </el-form-item>
<el-form-item label="缴费金额" prop="paymentMoney"> <el-form-item label="缴费金额" prop="paymentMoney">
<el-input :value="form.paymentMoney" maxlength="15" <el-input :value="form.paymentMoney" maxlength="15"
@ -50,7 +50,7 @@
</el-form-item> </el-form-item>
<el-form-item label="户号" required> <el-form-item label="户号" required>
<el-input v-model="form.houseId"></el-input> <el-input v-model="form.houseId" />
</el-form-item> </el-form-item>
<el-form-item label="每月代扣" prop="monthlyWithholding" required> <el-form-item label="每月代扣" prop="monthlyWithholding" required>
<el-radio-group v-model.trim="form.monthlyWithholding"> <el-radio-group v-model.trim="form.monthlyWithholding">
@ -70,11 +70,12 @@
import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js'; import { myValidate, checkHanzi, checkName, ismoney, autoPlay, autoPlay2, inputListen, messageIdCard, messageCard, messagePassword } from '@/utils/utilFunction.js';
import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js' import { mobPattern, namePattern, ratePattern, vercustomer } from '@/utils/verify.js'
import { addOperation, getOperation } from '@/api/http'; import { addOperation, getOperation } from '@/api/http';
const moduleName = 'usefulPhrases/openAccount'
import { mapMutations, mapGetters } from 'vuex' import { mapMutations, mapGetters } from 'vuex'
import NeedBefore from '@/components/needBefore' import NeedBefore from '@/components/needBefore'
import MyDialog from '@/components/dialog' import MyDialog from '@/components/dialog'
import TipsBefore from '@/mixins/tipsBefore' import TipsBefore from '@/mixins/tipsBefore'
const moduleName = 'agent/waterRate'
export default { export default {
name: '', name: '',
props: {}, props: {},
@ -84,16 +85,16 @@ export default {
}, },
mixins: [TipsBefore], mixins: [TipsBefore],
created () { created () {
if (sessionStorage.getItem('nomCurrentTransferPassword')) { if (sessionStorage.getItem('waterRatePassword')) {
this.form.drawPassword = sessionStorage.getItem('nomCurrentTransferPassword') this.form.drawPassword = sessionStorage.getItem('waterRatePassword')
} }
if (sessionStorage.getItem('nomUsefulPhrasesOpenCard2')) { if (sessionStorage.getItem('waterRateIdCard')) {
this.idNumberJudge = true this.idNumberJudge = true
const { idNumber } = this.dataFlow const { idNumber } = this.dataFlow
this.form.idNumber = idNumber this.form.idNumber = idNumber
} }
if (sessionStorage.getItem('nomUsefulPhrasesOpenCard')) { if (sessionStorage.getItem('waterRateBankCard')) {
this.cardNumberJudge = true this.cardNumberJudge = true
const { voucherNumber, userName } = this.dataFlow const { voucherNumber, userName } = this.dataFlow
this.form.voucherNumber = voucherNumber this.form.voucherNumber = voucherNumber
@ -106,7 +107,7 @@ export default {
}, },
data () { data () {
return { return {
moduleName: 'usefulPhrases/openAccount', moduleName,
visible: false, visible: false,
cardNumberJudge: false, cardNumberJudge: false,
idNumberJudge: false, idNumberJudge: false,
@ -123,7 +124,7 @@ export default {
}, },
formName: { formName: {
certificateType: '证件类型', certificateType: '证件类型',
idNumber: '身份证', idNumber: '证件号码',
voucherNumber: '账号', voucherNumber: '账号',
customerName: '客户姓名', customerName: '客户姓名',
paymentUnit: '缴费单位', paymentUnit: '缴费单位',
@ -263,19 +264,19 @@ export default {
}), }),
popUp1 (text) { popUp1 (text) {
this.setTipsOperate('请刷身份证'); this.setTipsOperate('请刷身份证');
this.setPopId('1399') this.setPopId('713')
sessionStorage.setItem('computerPath', this.$route.fullPath) sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/') this.$router.push('/counter/list/')
}, },
popUp2 (text) { popUp2 (text) {
this.setTipsOperate('请刷银行卡'); this.setTipsOperate('请刷银行卡');
this.setPopId('166') this.setPopId('715')
sessionStorage.setItem('computerPath', this.$route.fullPath) sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/') this.$router.push('/counter/list/')
}, },
popUp3 (text) { popUp3 (text) {
this.setTipsOperate('请在密码器输入密码'); this.setTipsOperate('请在密码器输入密码');
this.setPopId('99') this.setPopId('720')
sessionStorage.setItem('computerPath', this.$route.fullPath) sessionStorage.setItem('computerPath', this.$route.fullPath)
this.$router.push('/counter/list/') this.$router.push('/counter/list/')
}, },

Loading…
Cancel
Save