庞东旭 2 роки тому
джерело
коміт
243becd5a8
7 змінених файлів з 643 додано та 12 видалено
  1. +2
    -2
      config/index.js
  2. +20
    -0
      src/router/index.js
  3. +3
    -0
      src/views/yinnong/bankAgriculture/paymentAccount/paymentAccountAdd.vue
  4. +3
    -0
      src/views/yinnong/bankAgriculture/paymentAccount/paymentAccountModify.vue
  5. +67
    -10
      src/views/yinnong/bankAgriculture/paymentApproval/approvalAdd.vue
  6. +274
    -0
      src/views/yinnong/bankAgriculture/paymentApproval/collectionAdd.vue
  7. +274
    -0
      src/views/yinnong/bankAgriculture/paymentApproval/collectionAdd2.vue

+ 2
- 2
config/index.js Переглянути файл

@@ -12,8 +12,8 @@ module.exports = {
proxyTable: {
"/api": {
// 请求的目标主机
//target: 'http://116.255.135.38:8081/nsgk_test/',
target: 'http://localhost:8080/',
target: 'http://116.255.223.226:8081/nsgk_test/',
//target: 'http://localhost:8080/',
changeOrigin: true,
pathRewrite: {
'^/api': ''


+ 20
- 0
src/router/index.js Переглянути файл

@@ -1795,6 +1795,7 @@ export const constantRoutes = [
meta: {
title: '添加银行卡转账申请',
hidden: true,
keepAlive: true
},
component: (resolve) => require(['@/views/yinnong/bankAgriculture/paymentApproval/approvalAdd'], resolve)
},
@@ -1804,6 +1805,7 @@ export const constantRoutes = [
meta: {
title: '添加信用卡还款申请',
hidden: true,
keepAlive: true
},
component: (resolve) => require(['@/views/yinnong/bankAgriculture/paymentApproval/approvalAdd2'], resolve)
},
@@ -1861,6 +1863,24 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/yinnong/bankAgriculture/paymentApproval/approvalAdd12'], resolve)
},
{
path: '/yinnong/approval/collectionAdd',
name: 'approvalCollectionAdd',
meta: {
title: '添加收款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/yinnong/bankAgriculture/paymentApproval/collectionAdd'], resolve)
},
{
path: '/yinnong/approval/collectionAdd2',
name: 'approvalCollectionAdd2',
meta: {
title: '添加收款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/yinnong/bankAgriculture/paymentApproval/collectionAdd2'], resolve)
},
{
path: '/yinnong/approvalApproval',
name: 'approvalApproval',


+ 3
- 0
src/views/yinnong/bankAgriculture/paymentAccount/paymentAccountAdd.vue Переглянути файл

@@ -407,7 +407,10 @@
onConfirmTaccountId(val){
this.showTaccountId = false
this.taccountId = val.text
console.log(val)
this.$set(this.form, "taccountId", val.value);
this.$set(this.form, "cifNo", val.cifNo);
this.$set(this.form, "accountNo", val.accountNo);
this.taccountIdOptions.map(res => {
if(res.id==val.value){
if(this.form.villageAccountType === '3'){


+ 3
- 0
src/views/yinnong/bankAgriculture/paymentAccount/paymentAccountModify.vue Переглянути файл

@@ -463,7 +463,10 @@
onConfirmTaccountId(val){
this.showTaccountId = false
this.taccountId = val.text
console.log(val)
this.$set(this.form, "taccountId", val.value);
this.$set(this.form, "cifNo", val.cifNo);
this.$set(this.form, "accountNo", val.accountNo);
this.taccountIdOptions.map(res => {
if(res.id==val.value){
if(this.form.villageAccountType === '3'){


+ 67
- 10
src/views/yinnong/bankAgriculture/paymentApproval/approvalAdd.vue Переглянути файл

@@ -4,7 +4,7 @@
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-left="goBack"
>
<template #title>
<p style="font-weight: bold;">添加银行卡转账申请</p>
@@ -216,8 +216,13 @@
<van-field :rules="[{ required: true , message:'请输入付款方账户' }]" required label="付款方账户" v-model="form.payerAccount" placeholder="请输入账户" input-align="right" label-width="auto"/>
</div>

<p class="main_title">收款方信息<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/></p>
<div class="main_box" style="margin-bottom: 15px;">
<div class="main_title main_title_box">
<p>收款方信息</p>
<router-link :to="{name:'approvalCollectionAdd', params: {accountType:form.accountType,isPeers:form.isPeers,bankType:form.bankType,option:form}}">添加收款方</router-link>
<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/>
</div>

<div class="main_box" style="margin-bottom: 15px;" v-if="form.bankType==1||form.bankType==2||form.bankType==3||form.bankType==4">
<van-cell title="收款账户类型" v-if="form.bankType==1">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange" >
@@ -333,7 +338,32 @@
minDate: new Date(2000, 1, 1),
maxDate: new Date(2050, 12, 31),
currentDate: new Date(),
form:{},
form:{
id: null,
upId: null,
applyDate:this.nowDate,
approvalMode:'1',
downId: null,
orderId: null,
cashierId: null,
transferType: '1',
accountType: null,
isPeers:null,
explainSituation: null,
succeedAmount: null,
payer: null,
payerAccount: null,
operatorCode: null,
enterpriseCode: null,
expenditureAmount: null,
capitalExpenditureType: '1',
remark: null,
transferStatus: "0",
auditStatus: "0",
paymentState: "1",
bankPriority: "0",
clientPriority: "0"
},
fileList1:[],
fileList2:[],
fileList3:[],
@@ -423,6 +453,8 @@
});
this.getDictionaries();
this.getTemplateList();


},
methods: {
getTemplateList(){
@@ -561,7 +593,7 @@
this.$notify({ type: 'danger', message: '请选择所属银行!' });
return;
}
if(this.form.bankType == '2' && this.form.isPeers == 'N' && this.chargeItme.length>1){
if(this.form.bankType == '2' && this.form.isPeers == 'N' && this.chargeItme.length>0 && this.chargeItme != []){
this.$notify({ type: 'danger', message: '目前农商行仅支持单笔跨行转账,即仅能有一个收款方!' });
}else{
this.getDicts("bank_type").then(res => {
@@ -727,6 +759,7 @@
},
goAdd(){
let _this = this

if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
@@ -1680,7 +1713,7 @@
let _this = this
if(this.chargeItme != [] && this.chargeItme.length>1){
this.chargeItme.some((value, index) => {
if(value.payeeAccount != undefined &&value.payeeAccount != '' && obj.payeeAccount == value.payeeAccount&&index!=i){
if(value.payeeAccount != undefined &&value.payeeAccount != '' && obj.payeeAccount == value.payeeAccount&&index!=i&&this.form.bankType != 2){
fuzhitype = 2;
return true;
}
@@ -1884,12 +1917,25 @@
})
},
goBack(){
window.history.go(-1)
this.$router.push({path:'/yinnong/approvalList'})
},
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
watch: {
$route (to, from ) {
// 监听路由变化, 实现类似 小程序的 onShow 事件
if (to.path === '/yinnong/approvalAdd') {
// do anything you want
console.log("aaa")
if (this.$route.params.payeeForm){
this.chargeItme.push(this.$route.params.payeeForm)
console.log(this.$route.params.payeeForm)
}
}
}
},
}
</script>

@@ -1897,11 +1943,22 @@
.app-container {
padding: 2% 0;
}
.main_title_box{
display: flex;
justify-content: space-between;
align-items: center;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
a{
background: #1989fa;
color: #ffffff;
padding: 0.05rem 0.3rem;
border-radius: 5PX;
}
}
.main_box{
width: 96%;
@@ -1918,9 +1975,9 @@
}

.addFamily{
position: absolute;
top: -2px;
right: 0;
//position: absolute;
//top: -2px;
//right: 0;
border-radius: 50%;
}
.deleteFamily{


+ 274
- 0
src/views/yinnong/bankAgriculture/paymentApproval/collectionAdd.vue Переглянути файл

@@ -0,0 +1,274 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="goBack"
>
<template #title>
<p style="font-weight: bold;">添加收款账户信息</p>
</template>
</van-nav-bar>

<van-form @submit="goAdd" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field label="收款方" required :rules="[{ required: true , message:'请输入收款方' }]" v-model="form.payee" placeholder="请输入收款方" input-align="right" label-width="auto"/>
<van-field label="收款账户" required :rules="[{ required: true , message:'请输入收款账户' }]" v-model="form.payeeAccount" placeholder="请输入收款账户" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="isPeersRead ? showBankType = true : ''"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
@click="showBankDeposit = true"
v-model="bankDeposit"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositOptions"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" readonly required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" input-align="right" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="备注" v-model="form.remark" type="textarea" placeholder="请输入备注" input-align="right" rows="3" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell title="账户类型" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择账户类型' }]" v-model="form.accountType">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-field
readonly
clickable
label="收款人类型"
placeholder="请选择"
v-model="payeeType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择收款人类型' }]"
/>
<!-- @click="showPayeeType = true"-->
<van-popup v-model="showPayeeType" position="bottom">
<van-picker
show-toolbar
:columns="payeeTypeOptions"
@confirm="onConfirmPayeeType"
@cancel="showPayeeType = false"
/>
</van-popup>
<van-cell title="数据状态" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择数据状态' }]" v-model="form.status">
<van-radio name="0">正常</van-radio>
<!-- <van-radio name="1">停用</van-radio>-->
</van-radio-group>
</template>
</van-cell>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addPayee,listDeposit } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionAdd",
data() {
return {
isPeersRead:true,
showBankType:false,
showBankDeposit:false,
showPayeeType:false,
form:{
accountType:'1',
status:'0',
payeeType:'1'
},
bankType:'',
payeeType:'收款方',
bankDeposit:'',
bankTypeOptions:[],
statusOptions:[],
accountTypeOptions:[],
payeeTypeOptions:[],
bankDepositOptions:[],
};
},
created() {
this.getDictionaries();
const accountType = this.$route.params.accountType;
const isPeers = this.$route.params.isPeers;
const bankType = this.$route.params.bankType;
console.log(this.$route.params.option)
if (accountType){this.form.accountType = accountType;}
if (isPeers){
this.form.isPeers = isPeers;
if (isPeers == 'Y'){
this.isPeersRead = false;
this.getDicts("bank_type").then((res) => {
let bankText = this.selectDictLabel(res.data,bankType);
let data = {
text : bankText,
value : bankType
}
this.onConfirmBankType(data);
});
}
}
},
methods: {
getDictionaries(){
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("sys_normal_disable").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.statusOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("bank_account_type").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.accountTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(data){
console.log(data)
this.bankType = data.text;
this.form.bankType = data.value;
this.bankDeposit = ""
this.form.payeePaymentLines = ""
this.showBankType = false;
let queryParams={
"bankType":this.form.bankType,
"status": "0",
}
listDeposit(queryParams).then(response => {
this.bankDepositOptions = []
for(var i = 0 ; i < response.rows.length ; i++){
this.bankDepositOptions.push({"text":response.rows[i].bankDeposit,"value":response.rows[i].id,
"payeePaymentLines":response.rows[i].payeePaymentLines,"institutionNumber":response.rows[i].institutionNumber});
}
});
},
onConfirmBankDeposit(data){
this.bankDeposit = data.text
this.form.bankDeposit = data.text
this.form.payeePaymentLines = data.payeePaymentLines
this.form.alternateField10 = data.institutionNumber
this.showBankDeposit = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
var that = this;
addPayee(this.form).then(response => {
this.$toast.success('新增成功');
setTimeout(function(){
that.form.bankTypeText = that.bankType;
that.$router.push({name: 'approvalAdd', params: { payeeForm: that.form }});
// history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.main_box{
width: 96%;
margin: 0 auto;
border-radius: 6px;
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
overflow: hidden;
background-color: #FFF;
}
.submitButton{
width: 80%;
margin: 0 auto;
background-color: #1D6FE9;
}

.addFamily{
position: absolute;
top: -2px;
right: 0;
border-radius: 50%;
}
</style>

+ 274
- 0
src/views/yinnong/bankAgriculture/paymentApproval/collectionAdd2.vue Переглянути файл

@@ -0,0 +1,274 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="goBack"
>
<template #title>
<p style="font-weight: bold;">添加收款账户信息</p>
</template>
</van-nav-bar>

<van-form @submit="goAdd" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field label="收款方" required :rules="[{ required: true , message:'请输入收款方' }]" v-model="form.payee" placeholder="请输入收款方" input-align="right" label-width="auto"/>
<van-field label="收款账户" required :rules="[{ required: true , message:'请输入收款账户' }]" v-model="form.payeeAccount" placeholder="请输入收款账户" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="isPeersRead ? showBankType = true : ''"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
@click="showBankDeposit = true"
v-model="bankDeposit"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositOptions"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" readonly required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" input-align="right" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="备注" v-model="form.remark" type="textarea" placeholder="请输入备注" input-align="right" rows="3" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell title="账户类型" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择账户类型' }]" v-model="form.accountType">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-field
readonly
clickable
label="收款人类型"
placeholder="请选择"
v-model="payeeType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择收款人类型' }]"
/>
<!-- @click="showPayeeType = true"-->
<van-popup v-model="showPayeeType" position="bottom">
<van-picker
show-toolbar
:columns="payeeTypeOptions"
@confirm="onConfirmPayeeType"
@cancel="showPayeeType = false"
/>
</van-popup>
<van-cell title="数据状态" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择数据状态' }]" v-model="form.status">
<van-radio name="0">正常</van-radio>
<!-- <van-radio name="1">停用</van-radio>-->
</van-radio-group>
</template>
</van-cell>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addPayee,listDeposit } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionAdd",
data() {
return {
isPeersRead:true,
showBankType:false,
showBankDeposit:false,
showPayeeType:false,
form:{
accountType:'1',
status:'0',
payeeType:'4'
},
bankType:'',
payeeType:'公务卡',
bankDeposit:'',
bankTypeOptions:[],
statusOptions:[],
accountTypeOptions:[],
payeeTypeOptions:[],
bankDepositOptions:[],
};
},
created() {
this.getDictionaries();
const accountType = this.$route.params.accountType;
const isPeers = this.$route.params.isPeers;
const bankType = this.$route.params.bankType;
console.log(this.$route.params.option)
if (accountType){this.form.accountType = accountType;}
if (isPeers){
this.form.isPeers = isPeers;
if (isPeers == 'Y'){
this.isPeersRead = false;
this.getDicts("bank_type").then((res) => {
let bankText = this.selectDictLabel(res.data,bankType);
let data = {
text : bankText,
value : bankType
}
this.onConfirmBankType(data);
});
}
}
},
methods: {
getDictionaries(){
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("sys_normal_disable").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.statusOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("bank_account_type").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.accountTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(data){
console.log(data)
this.bankType = data.text;
this.form.bankType = data.value;
this.bankDeposit = ""
this.form.payeePaymentLines = ""
this.showBankType = false;
let queryParams={
"bankType":this.form.bankType,
"status": "0",
}
listDeposit(queryParams).then(response => {
this.bankDepositOptions = []
for(var i = 0 ; i < response.rows.length ; i++){
this.bankDepositOptions.push({"text":response.rows[i].bankDeposit,"value":response.rows[i].id,
"payeePaymentLines":response.rows[i].payeePaymentLines,"institutionNumber":response.rows[i].institutionNumber});
}
});
},
onConfirmBankDeposit(data){
this.bankDeposit = data.text
this.form.bankDeposit = data.text
this.form.payeePaymentLines = data.payeePaymentLines
this.form.alternateField10 = data.institutionNumber
this.showBankDeposit = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
var that = this;
addPayee(this.form).then(response => {
this.$toast.success('新增成功');
setTimeout(function(){
that.form.bankTypeText = that.bankType;
that.$router.push({name: 'approvalAdd2', params: { payeeForm: that.form }});
// history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.main_box{
width: 96%;
margin: 0 auto;
border-radius: 6px;
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
overflow: hidden;
background-color: #FFF;
}
.submitButton{
width: 80%;
margin: 0 auto;
background-color: #1D6FE9;
}

.addFamily{
position: absolute;
top: -2px;
right: 0;
border-radius: 50%;
}
</style>

Завантаження…
Відмінити
Зберегти