Commit 1974ed1b authored by 许珑标's avatar 许珑标

付款账户增加绑定类型、开票金额字段;

付款账户封装为下拉框组件
parent 823f59d9
<!-- @author zhengjie -->
<template>
<div>
<el-select v-model="value" placeholder="请选择" @change="selected">
<el-option-group
v-for="group in payAccList"
:key="group.label"
:label="group.label">
<el-option
v-for="item in group.options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-option-group>
</el-select>
</div>
</template>
<script>
import { listAllAccInfo } from '@/api/business/accInfo'
export default {
name: 'AccSelect',
props: ['defaultVal'],
data() {
return {
value: '',
payAccList: []
}
},
mounted() {
this.getPayAccList()
if (this.defaultVal) {
this.value = this.defaultVal
}
},
methods: {
getPayAccList() {
listAllAccInfo().then(resp => {
if (resp.code == 200) {
let bindA = []
let bindB = []
if (resp.data && resp.data.length > 0) {
resp.data.forEach(item => {
let option = {
label: item.payAccNo + ' -- ' + item.companyName,
value: item.payAccNo
}
if (item.bindType) {
if (1 === item.bindType) {
bindA.push(option)
} else if (2 === item.bindType) {
bindB.push(option)
}
}
})
}
if (bindA && bindA.length > 0) {
this.payAccList[0] = {
label: '直属账户',
options: bindA
}
}
if (bindB && bindB.length > 0) {
this.payAccList[1] = {
label: '外部账户',
options: bindB
}
}
this.$forceUpdate()
}
})
},
selected(val) {
this.$emit('input', val)
document.body.click()
},
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.icon-body {
width: 100%;
padding: 10px;
.icon-list {
height: 200px;
overflow-y: scroll;
div {
height: 30px;
line-height: 30px;
margin-bottom: -5px;
cursor: pointer;
width: 33%;
float: left;
}
span {
display: inline-block;
vertical-align: -0.15em;
fill: currentColor;
overflow: hidden;
}
}
}
</style>
......@@ -71,6 +71,11 @@
<el-table-column label="信用代码" align="center" prop="companyCode" />
<el-table-column label="法人姓名" align="center" prop="legalName" />
<el-table-column label="法人电话" align="center" prop="legalPhone" />
<el-table-column label="绑定类型" align="center" prop="bindType" >
<template slot-scope="scope">
<dict-tag :options="dict.type.payer_acc_bind_type" :value="scope.row.bindType"/>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
......@@ -101,7 +106,7 @@
<!-- 添加或修改付款主体信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="企业名称" prop="companyName">
<el-input v-model="form.companyName" placeholder="请输入企业名称" />
</el-form-item>
......@@ -112,6 +117,15 @@
<el-cascader :props="cascaderProps" v-model="form.deptId" :options="deptOptions">
</el-cascader>
</el-form-item>
<el-form-item label="绑定类型" prop="bindType">
<el-select v-model="form.bindType" placeholder="请选择支付类型">
<el-option v-for="dict in dict.type.payer_acc_bind_type" :key="dict.value" :label="dict.label"
:value="dict.value * 1" />
</el-select>
</el-form-item>
<el-form-item label="可开票金额" prop="invoiceBalance">
<el-input-number style="width: 100%" v-model="form.invoiceBalance" :precision="2" :step="0.1" placeholder="请输入可开票金额" />
</el-form-item>
<el-form-item label="法人姓名" prop="legalName">
<el-input v-model="form.legalName" placeholder="请输入法人姓名" />
</el-form-item>
......@@ -133,6 +147,7 @@ import { deptTreeSelect } from '@/api/system/user'
export default {
name: "CompanyInfo",
dicts: ['payer_acc_bind_type'],
data() {
return {
// 部门树选项
......@@ -172,7 +187,9 @@ export default {
deptId: null,
},
// 表单参数
form: {},
form: {
invoiceBalance: 0
},
// 表单校验
rules: {
id: [
......
......@@ -18,10 +18,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="付款账号" prop="payerAccNo">
<el-select v-model="batchForm.payerAccNo" placeholder="请选择付款账号">
<el-option v-for="item in payAccList" :key="item.id" :label="item.payAccNo + ' -- ' + item.companyName" :value="item.payAccNo">
</el-option>
</el-select>
<acc-select v-model="batchForm.payerAccNo" :defaultVal="batchForm.payerAccNo"></acc-select>
</el-form-item>
</el-col>
<el-col :span="12">
......@@ -164,9 +161,6 @@
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
<div class="el-upload__tip text-center" slot="tip">
<!-- <div class="el-upload__tip" slot="tip">-->
<!-- <el-checkbox v-model="upload.updateSupport" /> 是否更新已经存在的用户数据 -->
<!-- </div>-->
<span>仅允许导入xls、xlsx格式文件。</span>
<a style="color:#1890ff;margin:0px;line-height:14px" class="download" download="收款人明细模板"
href="/收款人明细模板.xlsx" target="_blank">下载模板</a>
......@@ -181,12 +175,13 @@
</template>
<script>
import { listAllAccInfo } from '@/api/business/accInfo'
import { getToken } from '@/utils/auth'
import { addPayOrder } from '@/api/business/payOrder'
import AccSelect from '@/views/business/accInfo/accSelect.vue'
export default {
name: "batchToBank",
components: { AccSelect },
dicts: ['pay_type_title', 'payee_acc_type'],
data() {
return {
......@@ -209,8 +204,9 @@ export default {
url: process.env.VUE_APP_BASE_API + "/business/payOrder/detail/importByExcel"
},
indexList: [],
payAccList: [],
batchForm: {},
batchForm: {
payerAccNo: ''
},
batchRules: {
payTitle: [
{ required: true, message: "支付类型不能为空", trigger: "blur" }
......@@ -260,17 +256,7 @@ export default {
},
created() {
},
mounted() {
this.getPayAccList()
},
methods: {
getPayAccList() {
listAllAccInfo().then(resp => {
if (resp.code == 200) {
this.payAccList = resp.data
}
})
},
// 新增明细
handleAdd() {
if (this.transMap && this.transMap.size >= 1000) {
......
......@@ -18,10 +18,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="付款账号" prop="payerAccNo">
<el-select v-model="batchForm.payerAccNo" placeholder="请选择付款账号">
<el-option v-for="item in payAccList" :key="item.id" :label="item.payAccNo + ' -- ' + item.companyName" :value="item.payAccNo">
</el-option>
</el-select>
<acc-select v-model="batchForm.payerAccNo" :defaultVal="batchForm.payerAccNo"></acc-select>
</el-form-item>
</el-col>
<el-col :span="12">
......@@ -181,12 +178,13 @@
</template>
<script>
import { listAllAccInfo } from '@/api/business/accInfo'
import { getToken } from '@/utils/auth'
import { addPayOrder } from '@/api/business/payOrder'
import AccSelect from '@/views/business/accInfo/accSelect.vue'
export default {
name: "batchToBank",
components: { AccSelect },
dicts: ['pay_type_title', 'payee_acc_type'],
data() {
return {
......@@ -209,7 +207,6 @@ export default {
url: process.env.VUE_APP_BASE_API + "/business/payOrder/detail/importByExcel"
},
indexList: [],
payAccList: [],
batchForm: {},
batchRules: {
payTitle: [
......@@ -260,17 +257,7 @@ export default {
},
created() {
},
mounted() {
this.getPayAccList()
},
methods: {
getPayAccList() {
listAllAccInfo().then(resp => {
if (resp.code == 200) {
this.payAccList = resp.data
}
})
},
// 新增明细
handleAdd() {
if (this.transMap && this.transMap.size >= 1000) {
......
......@@ -163,10 +163,7 @@
<el-input v-model="payForm.totalAmount" disabled placeholder="请输入发放总金额" />
</el-form-item>
<el-form-item label="付款账号" prop="payAccNo">
<el-select v-model="payForm.payAccNo" placeholder="请选择">
<el-option v-for="item in payAccList" :key="item.id" :label="item.payAccNo + ' -- ' + item.companyName" :value="item.payAccNo">
</el-option>
</el-select>
<acc-select v-model="payForm.payAccNo" :defaultVal="payForm.payAccNo"></acc-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
......@@ -179,14 +176,14 @@
<script>
import { listPayOutRecord, getPayOutRecord, delPayOutRecord, addPayOutRecord, updatePayOutRecord, pay } from "@/api/business/payOutRecord";
import { listAccInfo, listAllAccInfo } from '@/api/business/accInfo'
import AccSelect from '@/views/business/accInfo/accSelect.vue'
export default {
name: "PayOutRecord",
components: { AccSelect },
dicts: ['pay_status'],
data() {
return {
payAccList: [],
payForm: {
payAccNo: null,
},
......@@ -286,13 +283,6 @@ export default {
this.getList();
},
methods: {
getPayAccList(payerCompanyId) {
listAllAccInfo({payerCompanyId: payerCompanyId}).then(resp => {
if (resp.code == 200) {
this.payAccList = resp.data
}
})
},
/** 查询发薪批次信息列表 */
getList() {
this.loading = true;
......@@ -406,7 +396,6 @@ export default {
this.payForm.totalCount = row.totalCount;
this.payForm.totalAmount = row.totalAmount;
this.payOpen = true
this.getPayAccList(row.payerCompanyId);
},
confirmPay() {
pay(this.payForm).then(resp => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment