收入合同关联会员项目[新增有问题]

This commit is contained in:
fengachen
2021-09-18 16:52:32 +08:00
parent c4d4b0a90f
commit da4b9b8924
4 changed files with 72 additions and 26 deletions
+4 -1
View File
@@ -12,6 +12,8 @@ const getSingUpUserInfo = (params) => getAction('/meeting/payMeetingSituation/qu
const uploadMeetingFiles = (params) => postAction('/meeting/payMeeting/uploadFile',params)
// 生成会议二维码
const createQcCode = (params) => getAction('/meeting/payMeeting/createBase64',params)
// 收入合同的新增会员项目的查询
const queryContractMemberProject = (params) => getAction('/jero/memberProject/queryListByNotCompany',params)
export {
getUserInfo,
@@ -19,5 +21,6 @@ export {
getAllWorkProjects,
getSingUpUserInfo,
uploadMeetingFiles,
createQcCode
createQcCode,
queryContractMemberProject
}
@@ -14,10 +14,16 @@
<a-col :xl="24" :sm="24">
<a-form-item label="会员项目" :labelCol=" {xs: {span: 24},sm: {span: 3}}"
:wrapperCol="{ xs: {span: 24},sm: {span: 21}}">
<a-input placeholder="请输入会员项目"
v-decorator="['projectName',validatorRules.projectName]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
<a-select placeholder="请选择会员项目"
show-search
v-decorator="['projectId',validatorRules.projectId]"
option-filter-prop="children"
:filter-option="filterOption"
>
<a-select-option v-for="item in memberProjetList" :key="item.id" :value="item.id">
{{ item.projectName }}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
</a-row>
@@ -48,7 +54,7 @@
<a-col :xl="12" :sm="24">
<a-form-item label="应收金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入应收金额" v-decorator="['amountReceivable',validatorRules.amountReceivable]"
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"></a-input>
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}" @blur="addZero"> </a-input>
</a-form-item>
</a-col>
</a-row>
@@ -82,7 +88,7 @@
<a-col :xl="12" :sm="24">
<a-form-item label="合同编号" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入合同编号" @change="event => event.target.value = event.target.value.trim()"
:maxLength="50" v-decorator="['contractNum',validatorRules.contractNum]" disabled></a-input>
:maxLength="50" v-decorator="['contractNo',validatorRules.contractNo]" disabled></a-input>
</a-form-item>
</a-col>
</a-row>
@@ -113,7 +119,9 @@ import {httpAction} from '@api/manage'
import SelectContacts from '@comp/company/SelectContacts'
import JDictSelectTag from '@comp/dict/JDictSelectTag'
import CompanySelect from '@comp/company/CompanySelect'
import {queryContractMemberProject} from '@api/incomeMeetingApi'
import {money} from '@/utils/validate'
import {addZero} from '@/utils/util'
export default {
@@ -152,6 +160,10 @@ export default {
rules: [{ required: true, message: '请选择会员单位' }],
validateTrigger: 'change',
},
projectId: {
rules: [{ required: true, message: '请选择会员项目' }],
validateTrigger: 'change',
},
contractNo: {
rules: [{ required: true, message: '请输入合同号' }],
validateTrigger: 'blur',
@@ -172,10 +184,6 @@ export default {
rules: [{ required: true, message: '请选择发票类型' }],
validateTrigger: ['change', 'blur'],
},
contractNum:{
rules: [{ required: true, message: '请输入合同编号' }],
validateTrigger: ['blur'],
},
chargeUse: {
rules: [{ required: true, message: '请选择来款用途' }],
validateTrigger: 'change',
@@ -183,35 +191,44 @@ export default {
},
},
url: {
add: '',
edit: '',
add: '/jero/memberProjectSubitem/add',
},
// 合同信息
contractInfo:{},
// 联系人回显
selectContact:null,
// 不包含在列表的会员项目
memberProjetList:[],
}
},
methods: {
addZero,
open(record) {
this.form.resetFields()
this.visible = true
console.log(record)
this.contractInfo = Object.assign({},record)
// 会员企业的默认显示
this.contractInfo.companyId = record.signedCompany
this.contractInfo.companyId = {
id:record.signedCompanyTemporaryId,
companyName:record.signedCompanyTemporaryName
}
// 查询会员项目的企业id
let companyId = record. signedCompanyId
// 获取会员项目数据
this.queryMemberProject(companyId)
// 联系人默认显示
this.contractInfo.companyContactId = record.signedContactsTemporaryId
this.contractInfo.companyContactId = record.signedContactsId
// 邮寄联系人显示
this.contractInfo.postContactId = record.signedContactsTemporaryId
this.contractInfo.postContactId = record.signedContactsId
// 合同编号显示
this.contractInfo.contractNum = record.contractNum
this.contractInfo.contractNo = record.contractNum
this.selectContact = {
id:record.signedContactsTemporaryId,
id:record.signedContactsId,
name:record.signedContactsTemporaryName
}
this.$nextTick( () => {
this.form.setFieldsValue(pick(this.contractInfo,'companyId','companyContactId','postContactId','contractNum'))
this.form.setFieldsValue(pick(this.contractInfo,'companyId','companyContactId','postContactId','contractNo'))
})
},
close() {
@@ -227,6 +244,7 @@ export default {
const formData = Object.assign({},values)
// 来款方式默认是合同
formData.paymentMethod = 2
formData.companyId = values.companyId.id
httpAction(url,formData,method).then(res => {
if(res.success){
that.$message.success(res.message)
@@ -258,7 +276,29 @@ export default {
callback('请输入合法的金额数字,最多2位小数,10位正数')
}
}
},
/*
* 查询会员项目
* */
queryMemberProject(id) {
const param = {
companyId:id
}
this.memberProjetList = []
queryContractMemberProject(param).then(res => {
if(res.success){
this.memberProjetList = res.result
}else {
console.log(res.message)
}
})
},
// 下拉框的搜索
filterOption(input, option) {
return (
option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
)
},
}
}
@@ -413,6 +413,7 @@ export default {
departId: null, // 部门id普通项目列表查询
projectType: null, //项目类型
signedContactId: null, //签订联系人正式id,用于新增工作组项目回显
newFormData:{} // 传入的数据
}
},
mounted() {
@@ -444,6 +445,8 @@ export default {
}
// 通过id获取合同信息
getRevenueContractById(param).then(res => {
// 这是会员跟会议要传的参数
this.newFormData = Object.assign({},res.result)
let record
record = res.result
this.isSaved = true
@@ -792,12 +795,12 @@ export default {
// 会议项目
case 3:
// 传入合同信息
this.$refs.selectMeetingProjectModule.open(this.model)
this.$refs.selectMeetingProjectModule.open(this.newFormData)
break
// 会员项目
case 4:
// 传入合同信息
this.$refs.selectMemberProjectModule.open(this.model)
this.$refs.selectMemberProjectModule.open(this.newFormData)
break
}
},
@@ -55,7 +55,7 @@
class="j-table-force-nowrap">
<template slot="text" slot-scope="text">
<j-ellipsis v-if="!!text" :value="text" :length="18"></j-ellipsis>
<j-ellipsis v-if="!!text" :value="text" :length="20"></j-ellipsis>
<span v-else></span>
</template>
@@ -89,7 +89,7 @@
class="j-table-force-nowrap">
<template slot="text" slot-scope="text">
<j-ellipsis v-if="!!text" :value="text" :length="18"></j-ellipsis>
<j-ellipsis v-if="!!text" :value="text" :length="20"></j-ellipsis>
<span v-else></span>
</template>
@@ -309,13 +309,12 @@ export default {
},
methods: {
open(record) {
console.log('record',record)
this.contractInfo = Object.assign({},record)
// 保存合同id 与打包状态
this.contractId = record.id
this.pack = record.pack
// 保存企业id
this.companyId =record.signedCompany.id
this.companyId =record.signedCompanyId
this.filters = {
companyId:this.companyId,
contractId:this.contractId,
@@ -327,6 +326,7 @@ export default {
close() {
this.queryParam = {}
this.visible = false
this.$emit('ok')
},
handleOk() {
if (this.selectedRowKeys.length <= 0) {