普通项目管理接口;分标委页面;工作组项目会议维护页面

This commit is contained in:
zhaoxiao
2021-08-30 18:42:06 +08:00
parent eec31f453b
commit 9dc24b2b8b
11 changed files with 837 additions and 103 deletions
@@ -22,8 +22,8 @@
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="运行年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-date show-type="year" date-format="YYYY" placeholder="请选择运行年份"
v-decorator="['year',validatorRules.year]"></j-date>
<j-year-date style="width:100%" placeholder="请选择运行年份"
v-decorator="['year',validatorRules.year]"></j-year-date>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
@@ -46,7 +46,9 @@
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="来款用途" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-dict-select-tag v-decorator="['chargeUse',validatorRules.chargeUse]" placeholder="请选择来款用途"
<j-dict-select-tag v-decorator="['chargeUse', validatorRules.chargeUse]"
:triggerChange="true"
placeholder="请选择来款用途"
dictCode="payment_charge_use"/>
</a-form-item>
</a-col>
@@ -139,7 +141,7 @@
placeholder="请输入备注"
:auto-size="{ minRows: 3, maxRows: 6 }"
v-decorator="['remarks']"
:maxLength='300'
:maxLength='200'
@change="e => {e.target.value = (e.target.value + '').trim()}"/>
</a-form-item>
</a-col>
@@ -151,7 +153,7 @@
<script>
import pick from 'lodash.pick'
import { httpAction } from '@api/manage'
import JDate from '@comp/jero/JDate'
import JYearDate from '@comp/jero/JYearDate'
import JUpload from '@comp/jero/JUpload'
import CompanySelect from '@comp/company/CompanySelect'
import ContactManagementModule from '@views/businessManagement/modules/ContactManagementModule'
@@ -160,7 +162,7 @@ import SelectContacts from '@comp/company/SelectContacts'
export default {
name: 'GeneralProjectModule',
components: { JDate, JUpload, CompanySelect, ContactManagementModule, SelectPrincipal, SelectContacts },
components: { JYearDate, JUpload, CompanySelect, ContactManagementModule, SelectPrincipal, SelectContacts },
data() {
return {
title: '操作',
@@ -187,45 +189,60 @@ export default {
},
validatorRules: {
chargeProject: {
rules: [{ required: true, message: '请输入项目名称' }]
rules: [{ required: true, message: '请输入项目名称' }],
validateTrigger: 'blur'
},
year: {
rules: [{ required: true, message: '请选择运行年份' }]
rules: [{ required: true, message: '请选择运行年份' }],
validateTrigger: 'blur'
},
principalId: {
rules: [{ required: true, message: '请选择负责人' }]
rules: [{ required: true, message: '请选择负责人' }],
validateTrigger: 'blur'
},
chargeCompany: {
rules: [{ required: true, message: '请选择来款企业' }]
rules: [{ required: true, validator: this.checkCompany }],
validateTrigger: 'change'
},
chargeUse: {
rules: [{ required: true, message: '请选择来款用途' }]
rules: [{ required: true, message: '请选择来款用途' }],
validateTrigger: 'blur'
},
contactsId: {
rules: [{ required: true, message: '请选择联系人' }]
rules: [{ required: true, message: '请选择联系人' }],
validateTrigger: 'blur'
},
mailContactsId: {
rules: [{ required: true, message: '请选择邮寄联系人' }]
rules: [{ required: true, message: '请选择邮寄联系人' }],
validateTrigger: 'blur'
},
receivableAmount: {
rules: [{ required: true, message: '请输入应收金额' }]
rules: [{ required: true, message: '请输入应收金额' }],
validateTrigger: 'blur'
},
invoice: {
rules: [{ required: true, message: '请选择发票类型' }]
rules: [{ required: true, message: '请选择发票类型' }],
validateTrigger: 'blur'
},
chargeWay: {
rules: [{ required: true, message: '请选择来款方式' }]
rules: [{ required: true, message: '请选择来款方式' }],
validateTrigger: 'blur'
},
contractNum: {
rules: [{ required: true, message: '请输入合同号' }]
rules: [{ required: true, message: '请输入合同号' }],
validateTrigger: 'blur'
},
chargeNoticeNo: {
rules: [{ required: true, message: '请输入收费通知号' }]
rules: [{ required: true, message: '请输入收费通知号' }],
validateTrigger: 'blur'
}
},
userList: [], // 用户列表
chargeWayType: null,
selectedCompany: null
selectedCompany: null,
url: {
add: '/project/payCommonProject/add',
edit: '/project/payCommonProject/edit'
}
}
},
methods: {
@@ -233,8 +250,16 @@ export default {
this.edit({})
},
edit(record) {
console.log(record)
record.chargeCompany = {
id: record.chargeCompanyId,
companyName: record.chargeCompanyName
}
// 回显选中的企业
this.selectedCompany = record.chargeCompany
this.form.resetFields()
this.model = Object.assign({}, record)
this.chargeWayType = record.chargeWay
this.visible = true
this.$nextTick(() => {
this.form.setFieldsValue(pick(this.model, 'chargeProject', 'year', 'principalId', 'chargeCompany', 'chargeUse', 'contactsId', 'mailContactsId', 'receivableAmount', 'invoice', 'chargeWay', 'contractNum', 'chargeNoticeNo', 'remarks'))
@@ -242,6 +267,8 @@ export default {
},
close() {
this.$emit('close')
this.chargeWayType = null
this.selectedCompany = null
this.visible = false
},
handleOk() {
@@ -291,12 +318,26 @@ export default {
companyChange(value) {
console.log(1)
this.selectedCompany = value
console.log(this.model.contactsId, this.model.mailContactsId)
this.model.contactsId = undefined
this.model.mailContactsId = undefined
this.$nextTick(() => {
this.form.setFieldsValue(pick(this.model, 'contactsId', 'mailContactsId'))
})
},
/**
* 企业必填校验
* @param rules
* @param value
* @param callback
*/
checkCompany(rules, value, callback) {
if (value.id && value.companyName) {
callback()
return
}
callback('请选择企业')
},
/**
* 在新增成功后重新获取联系人列表
*/