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

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