普通项目、工作组项目关联收入合同校验,bug修改
This commit is contained in:
@@ -76,6 +76,8 @@ const sysReminders = (param) => postAction('/reminders/edit', param)
|
|||||||
const checkCompanyAduit = (param) => getAction('/payMailContract/payMailContract/check', param)
|
const checkCompanyAduit = (param) => getAction('/payMailContract/payMailContract/check', param)
|
||||||
// 获取全部部门
|
// 获取全部部门
|
||||||
const getAllDepartTreeList = (param) => getAction('/sys/sysDepart/queryTreeAllList', param)
|
const getAllDepartTreeList = (param) => getAction('/sys/sysDepart/queryTreeAllList', param)
|
||||||
|
// 验证项目是否关联合同
|
||||||
|
const getIsAssociatedProject = (param) => getAction('/contract/payIncomeContract/getAssociatedProject', param)
|
||||||
|
|
||||||
export {
|
export {
|
||||||
getWorkingGroupById,
|
getWorkingGroupById,
|
||||||
@@ -115,5 +117,6 @@ export {
|
|||||||
homePageDataStatistics,
|
homePageDataStatistics,
|
||||||
sysReminders,
|
sysReminders,
|
||||||
checkCompanyAduit,
|
checkCompanyAduit,
|
||||||
getAllDepartTreeList
|
getAllDepartTreeList,
|
||||||
|
getIsAssociatedProject
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -202,7 +202,7 @@ const columns = [
|
|||||||
{
|
{
|
||||||
title: '开票人',
|
title: '开票人',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'createBy'
|
dataIndex: 'realName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '日期',
|
title: '日期',
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
@paste.native.capture.prevent="handleOperate"
|
@paste.native.capture.prevent="handleOperate"
|
||||||
autocomplete="new-password"
|
autocomplete="new-password"
|
||||||
label="旧密码">
|
label="旧密码">
|
||||||
<a-input-password type="password" placeholder="请输入旧密码" v-decorator="[ 'oldpassword', validatorRules.oldpassword]"/>
|
<a-input-password type="password" placeholder="请输入旧密码" :maxLength='30' v-decorator="[ 'oldpassword', validatorRules.oldpassword]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
<a-form-item
|
<a-form-item
|
||||||
@@ -29,6 +29,7 @@
|
|||||||
placeholder="请输入新密码"
|
placeholder="请输入新密码"
|
||||||
@paste.native.capture.prevent="handleOperate"
|
@paste.native.capture.prevent="handleOperate"
|
||||||
autocomplete="new-password"
|
autocomplete="new-password"
|
||||||
|
:maxLength='30'
|
||||||
v-decorator="[ 'password', validatorRules.password]"/>
|
v-decorator="[ 'password', validatorRules.password]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
@@ -42,6 +43,7 @@
|
|||||||
placeholder="请确认新密码"
|
placeholder="请确认新密码"
|
||||||
@paste.native.capture.prevent="handleOperate"
|
@paste.native.capture.prevent="handleOperate"
|
||||||
autocomplete="new-password"
|
autocomplete="new-password"
|
||||||
|
:maxLength='30'
|
||||||
v-decorator="[ 'confirmpassword', validatorRules.confirmpassword]"/>
|
v-decorator="[ 'confirmpassword', validatorRules.confirmpassword]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
import { getIsAssociatedProject } from '../api/incomePaymentsApi'
|
||||||
|
/**
|
||||||
|
* 验证项目是否关联合同
|
||||||
|
* @param projectId
|
||||||
|
*/
|
||||||
|
export function checkAssociatedProject(projectId) {
|
||||||
|
return new Promise(resolve => {
|
||||||
|
getIsAssociatedProject({projectId: projectId}).then(res => {
|
||||||
|
if (res.success) {
|
||||||
|
resolve(false)
|
||||||
|
} else {
|
||||||
|
resolve(true)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -94,6 +94,7 @@
|
|||||||
@click="toRevenueContractDetail(record.id, record.contractNum)"
|
@click="toRevenueContractDetail(record.id, record.contractNum)"
|
||||||
v-if="record.chargeStatus === 1"
|
v-if="record.chargeStatus === 1"
|
||||||
:value="text"
|
:value="text"
|
||||||
|
style="cursor: pointer"
|
||||||
:length="18"></j-ellipsis>
|
:length="18"></j-ellipsis>
|
||||||
<j-ellipsis
|
<j-ellipsis
|
||||||
class="primary-color"
|
class="primary-color"
|
||||||
@@ -323,7 +324,6 @@ export default {
|
|||||||
|
|
||||||
/deep/ .aduit {
|
/deep/ .aduit {
|
||||||
color: red !important;
|
color: red !important;
|
||||||
cursor: pointer;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
@@ -8,18 +8,18 @@
|
|||||||
<div class="part-title">
|
<div class="part-title">
|
||||||
<div class="part-title-text">主体信息</div>
|
<div class="part-title-text">主体信息</div>
|
||||||
</div>
|
</div>
|
||||||
<a-row class="detail">
|
<div class="detail" v-if="mainInfoShowList.length > 0">
|
||||||
<template v-if="mainInfoShowList.length > 0">
|
<div class="detail-item"
|
||||||
<a-col :xxl="6" :xl="8" :sm="12" class="detail-item" v-for="(item, index) in mainInfoShowList"
|
v-for="(item, index) in mainInfoShowList"
|
||||||
:key="index">
|
:key="index">
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||||
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
<a-col :sm="14" :xs="24" v-if="item.fieldName === 'rate'">{{ detailData[item.fieldName] }}%</a-col>
|
||||||
|
<a-col :sm="14" :xs="24" v-else>{{ detailData[item.fieldName] }}</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-col>
|
</div>
|
||||||
</template>
|
</div>
|
||||||
<a-empty v-else></a-empty>
|
<a-empty v-else></a-empty>
|
||||||
</a-row>
|
|
||||||
</div>
|
</div>
|
||||||
<a-divider></a-divider>
|
<a-divider></a-divider>
|
||||||
|
|
||||||
@@ -28,18 +28,16 @@
|
|||||||
<div class="part-title">
|
<div class="part-title">
|
||||||
<div class="part-title-text">日期节点</div>
|
<div class="part-title-text">日期节点</div>
|
||||||
</div>
|
</div>
|
||||||
<a-row class="detail">
|
<div class="detail" v-if="dateNodeShowList.length > 0">
|
||||||
<template v-if="dateNodeShowList.length > 0">
|
<div class="detail-item" v-for="(item, index) in dateNodeShowList"
|
||||||
<a-col :xxl="6" :xl="8" :sm="12" class="detail-item" v-for="(item, index) in dateNodeShowList"
|
|
||||||
:key="index">
|
:key="index">
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||||
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-col>
|
</div>
|
||||||
</template>
|
</div>
|
||||||
<a-empty v-else></a-empty>
|
<a-empty v-else></a-empty>
|
||||||
</a-row>
|
|
||||||
</div>
|
</div>
|
||||||
<a-divider></a-divider>
|
<a-divider></a-divider>
|
||||||
|
|
||||||
@@ -48,18 +46,16 @@
|
|||||||
<div class="part-title">
|
<div class="part-title">
|
||||||
<div class="part-title-text">账款信息</div>
|
<div class="part-title-text">账款信息</div>
|
||||||
</div>
|
</div>
|
||||||
<a-row class="detail">
|
<div class="detail" v-if="accountInfoShowList.length > 0">
|
||||||
<template v-if="accountInfoShowList.length > 0">
|
<div class="detail-item" v-for="(item, index) in accountInfoShowList"
|
||||||
<a-col :xxl="6" :xl="8" :sm="12" class="detail-item" v-for="(item, index) in accountInfoShowList"
|
|
||||||
:key="index">
|
:key="index">
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||||
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-col>
|
</div>
|
||||||
</template>
|
</div>
|
||||||
<a-empty v-else></a-empty>
|
<a-empty v-else></a-empty>
|
||||||
</a-row>
|
|
||||||
</div>
|
</div>
|
||||||
<a-divider></a-divider>
|
<a-divider></a-divider>
|
||||||
|
|
||||||
@@ -68,18 +64,16 @@
|
|||||||
<div class="part-title">
|
<div class="part-title">
|
||||||
<div class="part-title-text">其他信息</div>
|
<div class="part-title-text">其他信息</div>
|
||||||
</div>
|
</div>
|
||||||
<a-row class="detail">
|
<div class="detail" v-if="otherInfoShowList.length > 0">
|
||||||
<template v-if="otherInfoShowList.length > 0">
|
<div class="detail-item" v-for="(item, index) in otherInfoShowList"
|
||||||
<a-col :xxl="6" :xl="8" :sm="12" class="detail-item" v-for="(item, index) in otherInfoShowList"
|
|
||||||
:key="index">
|
:key="index">
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||||
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-col>
|
</div>
|
||||||
</template>
|
</div>
|
||||||
<a-empty v-else></a-empty>
|
<a-empty v-else></a-empty>
|
||||||
</a-row>
|
|
||||||
</div>
|
</div>
|
||||||
<a-divider></a-divider>
|
<a-divider></a-divider>
|
||||||
|
|
||||||
@@ -138,8 +132,7 @@
|
|||||||
<div class="part-title">
|
<div class="part-title">
|
||||||
<div class="part-title-text">存档信息</div>
|
<div class="part-title-text">存档信息</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="detail">
|
<div class="detail" v-if="detailData.listArchive && detailData.listArchive.length > 0">
|
||||||
<template v-if="detailData.listArchive && detailData.listArchive.length > 0">
|
|
||||||
<div class="detail-item" v-for="(item, index) in detailData.listArchive"
|
<div class="detail-item" v-for="(item, index) in detailData.listArchive"
|
||||||
:key="index">
|
:key="index">
|
||||||
<a-row>
|
<a-row>
|
||||||
@@ -148,9 +141,8 @@
|
|||||||
<a-col :sm="6" :xs="24">{{ item.contractStatus_dictText }}</a-col>
|
<a-col :sm="6" :xs="24">{{ item.contractStatus_dictText }}</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
|
||||||
<a-empty v-else></a-empty>
|
|
||||||
</div>
|
</div>
|
||||||
|
<a-empty v-else></a-empty>
|
||||||
</div>
|
</div>
|
||||||
<a-divider></a-divider>
|
<a-divider></a-divider>
|
||||||
|
|
||||||
@@ -159,8 +151,7 @@
|
|||||||
<div class="part-title">
|
<div class="part-title">
|
||||||
<div class="part-title-text">审核记录</div>
|
<div class="part-title-text">审核记录</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="detail">
|
<div class="detail" v-if="detailData.listAudit && detailData.listAudit.length > 0">
|
||||||
<template v-if="detailData.listAudit && detailData.listAudit.length > 0">
|
|
||||||
<div class="detail-item" v-for="(item, index) in detailData.listAudit"
|
<div class="detail-item" v-for="(item, index) in detailData.listAudit"
|
||||||
:key="index">
|
:key="index">
|
||||||
<a-row>
|
<a-row>
|
||||||
@@ -170,9 +161,8 @@
|
|||||||
<a-col :sm="6" :xs="24">{{ item.explainRemarks }}</a-col>
|
<a-col :sm="6" :xs="24">{{ item.explainRemarks }}</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
|
||||||
<a-empty v-else></a-empty>
|
|
||||||
</div>
|
</div>
|
||||||
|
<a-empty v-else></a-empty>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 状态非已存档显示-->
|
<!-- 状态非已存档显示-->
|
||||||
@@ -409,11 +399,16 @@ export default {
|
|||||||
@import '~@assets/less/common.less';
|
@import '~@assets/less/common.less';
|
||||||
|
|
||||||
.detail {
|
.detail {
|
||||||
|
display: flex;
|
||||||
padding: 0 20px;
|
padding: 0 20px;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
|
||||||
&-item {
|
&-item {
|
||||||
|
width: 25%;
|
||||||
|
min-width: 280px;
|
||||||
padding-top: 10px;
|
padding-top: 10px;
|
||||||
color: #2F3133;
|
color: #2F3133;
|
||||||
|
word-break: break-all;
|
||||||
|
|
||||||
&-title {
|
&-title {
|
||||||
color: #999999;
|
color: #999999;
|
||||||
|
|||||||
@@ -42,6 +42,7 @@
|
|||||||
:selected-company="selectedCompany"
|
:selected-company="selectedCompany"
|
||||||
:init-contacts="selectedContact"
|
:init-contacts="selectedContact"
|
||||||
:is-cancel="isCancel"
|
:is-cancel="isCancel"
|
||||||
|
:disabled="isSaved"
|
||||||
v-decorator="['signedContactsId',validatorRules.signedContactsId]"></select-contacts>
|
v-decorator="['signedContactsId',validatorRules.signedContactsId]"></select-contacts>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -78,7 +79,7 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
<a-col :xxl="6" :xl="8" :sm="12">
|
<a-col :xxl="6" :xl="8" :sm="12">
|
||||||
<a-form-item label="税率" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="税率" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<a-row>
|
<a-row :gutter="10">
|
||||||
<a-col :span="20">
|
<a-col :span="20">
|
||||||
<a-input placeholder="请输入税率"
|
<a-input placeholder="请输入税率"
|
||||||
v-decorator="['rate',validatorRules.rate]"
|
v-decorator="['rate',validatorRules.rate]"
|
||||||
@@ -215,6 +216,8 @@
|
|||||||
<a-form-item label="打包年份" :labelCol="labelCol" :wrapperCol="wrapperCol" v-if="isPackage">
|
<a-form-item label="打包年份" :labelCol="labelCol" :wrapperCol="wrapperCol" v-if="isPackage">
|
||||||
<j-year-date style="width:100%"
|
<j-year-date style="width:100%"
|
||||||
placeholder="请选择打包年份"
|
placeholder="请选择打包年份"
|
||||||
|
:disabledDate="disabledPackDate"
|
||||||
|
:disabled="isSaved"
|
||||||
v-decorator="['packYear',validatorRules.packYear]"></j-year-date>
|
v-decorator="['packYear',validatorRules.packYear]"></j-year-date>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -260,6 +263,7 @@
|
|||||||
<select-project-module ref="selectProjectModule"
|
<select-project-module ref="selectProjectModule"
|
||||||
@ok="selectProjectOk"
|
@ok="selectProjectOk"
|
||||||
:depart-id="departId"
|
:depart-id="departId"
|
||||||
|
:principal="principal"
|
||||||
:pack="Number(model.pack)"
|
:pack="Number(model.pack)"
|
||||||
:contract-id="model.id"
|
:contract-id="model.id"
|
||||||
:project-type="projectType"
|
:project-type="projectType"
|
||||||
@@ -307,6 +311,7 @@ import SelectMemberProjectModule from './SelectMemberProjectModule'
|
|||||||
import { money } from '../../../../utils/validate'
|
import { money } from '../../../../utils/validate'
|
||||||
import SelectWorkingGroupProjectModule from './SelectWorkingGroupProjectModule'
|
import SelectWorkingGroupProjectModule from './SelectWorkingGroupProjectModule'
|
||||||
import { addZero } from '../../../../utils/util'
|
import { addZero } from '../../../../utils/util'
|
||||||
|
import moment from 'moment'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'RevenueContractModule',
|
name: 'RevenueContractModule',
|
||||||
@@ -411,6 +416,7 @@ export default {
|
|||||||
contractNum: '', // 合同号
|
contractNum: '', // 合同号
|
||||||
isCancel: false, // 是否取消
|
isCancel: false, // 是否取消
|
||||||
departId: null, // 部门id普通项目列表查询
|
departId: null, // 部门id普通项目列表查询
|
||||||
|
principal: null, // 负责人id,普通项目列表查询
|
||||||
projectType: null, //项目类型
|
projectType: null, //项目类型
|
||||||
signedContactId: null, //签订联系人正式id,用于新增工作组项目回显
|
signedContactId: null, //签订联系人正式id,用于新增工作组项目回显
|
||||||
newFormData: {} // 传入的数据
|
newFormData: {} // 传入的数据
|
||||||
@@ -825,6 +831,7 @@ export default {
|
|||||||
* 通过用户id获取用户信息
|
* 通过用户id获取用户信息
|
||||||
*/
|
*/
|
||||||
getUserDetailByUserId() {
|
getUserDetailByUserId() {
|
||||||
|
this.principal = this.model.principalId
|
||||||
let param = {
|
let param = {
|
||||||
id: this.model.principalId
|
id: this.model.principalId
|
||||||
}
|
}
|
||||||
@@ -843,6 +850,14 @@ export default {
|
|||||||
*/
|
*/
|
||||||
selectProjectOk() {
|
selectProjectOk() {
|
||||||
this.$refs.associatedProject.loadAssociatedProject()
|
this.$refs.associatedProject.loadAssociatedProject()
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 限制可选打包年份范围---当年+1以及前推15年
|
||||||
|
* @param current
|
||||||
|
* @returns {boolean}
|
||||||
|
*/
|
||||||
|
disabledPackDate(current) {
|
||||||
|
return current < moment().subtract(15, 'year') || current > moment().add(1, 'year')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+14
-2
@@ -34,8 +34,8 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||||
<a-form-item label="年份">
|
<a-form-item label="运行年份">
|
||||||
<j-year-date style="width: 100%" placeholder="请选择年份" v-model="queryParam.particularYear"></j-year-date>
|
<j-year-date style="width: 100%" placeholder="请选择运行年份" v-model="queryParam.particularYear"></j-year-date>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
@@ -261,6 +261,9 @@ export default {
|
|||||||
this.contractId = this.contranctInfo.id
|
this.contractId = this.contranctInfo.id
|
||||||
// 记录打包状态
|
// 记录打包状态
|
||||||
this.pack = this.contranctInfo.pack
|
this.pack = this.contranctInfo.pack
|
||||||
|
// 运行年份默认为当年
|
||||||
|
this.queryParam.particularYear = new Date().getFullYear().toString()
|
||||||
|
this.lastQueryParam.particularYear = new Date().getFullYear().toString()
|
||||||
this.loadData(1)
|
this.loadData(1)
|
||||||
this.visible = true
|
this.visible = true
|
||||||
},
|
},
|
||||||
@@ -333,7 +336,16 @@ export default {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
return startValue.valueOf() > endValue.valueOf()
|
return startValue.valueOf() > endValue.valueOf()
|
||||||
|
},
|
||||||
|
searchReset() {
|
||||||
|
this.lastQueryParam = {
|
||||||
|
particularYear: new Date().getFullYear().toString()
|
||||||
}
|
}
|
||||||
|
this.queryParam = {
|
||||||
|
particularYear: new Date().getFullYear().toString()
|
||||||
|
}
|
||||||
|
this.loadData(1)
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -140,6 +140,11 @@ export default {
|
|||||||
type: Number,
|
type: Number,
|
||||||
requird: false,
|
requird: false,
|
||||||
default: null
|
default: null
|
||||||
|
},
|
||||||
|
principal: {
|
||||||
|
type: String,
|
||||||
|
requird: false,
|
||||||
|
default: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
@@ -246,14 +251,14 @@ export default {
|
|||||||
userList: [], // 用户列表
|
userList: [], // 用户列表
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 部门id变化时绑定查询条件
|
|
||||||
watch: {
|
|
||||||
departId(val) {
|
|
||||||
this.queryParam.departId = val
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
open() {
|
open() {
|
||||||
|
// 运行年份默认为当年
|
||||||
|
this.queryParam.year = new Date().getFullYear().toString()
|
||||||
|
this.lastQueryParam.year = new Date().getFullYear().toString()
|
||||||
|
//
|
||||||
|
this.queryParam.principalId = this.principal
|
||||||
|
this.queryParam.departId = this.departId
|
||||||
this.loadDepartTreeData()
|
this.loadDepartTreeData()
|
||||||
this.visible = true
|
this.visible = true
|
||||||
this.loadData()
|
this.loadData()
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
<company-select placeholder="请选择来款企业"
|
<company-select placeholder="请选择来款企业"
|
||||||
v-decorator="['chargeCompany',validatorRules.chargeCompany]"
|
v-decorator="['chargeCompany',validatorRules.chargeCompany]"
|
||||||
@change="companyChange"
|
@change="companyChange"
|
||||||
:disabled="disabledChargeCompany"
|
:disabled="disabledCompany"
|
||||||
:maxLength='50'>
|
:maxLength='50'>
|
||||||
</company-select>
|
</company-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
@@ -187,6 +187,8 @@ import SelectContacts from '@comp/company/SelectContacts'
|
|||||||
import { addZero } from '../../../utils/util'
|
import { addZero } from '../../../utils/util'
|
||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
import { USER_INFO } from '../../../store/mutation-types'
|
import { USER_INFO } from '../../../store/mutation-types'
|
||||||
|
import { money } from '../../../utils/validate'
|
||||||
|
import { checkAssociatedProject } from '../../../utils/projectCheck'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'GeneralProjectModule',
|
name: 'GeneralProjectModule',
|
||||||
@@ -290,7 +292,7 @@ export default {
|
|||||||
validateTrigger: 'change'
|
validateTrigger: 'change'
|
||||||
},
|
},
|
||||||
receivableAmount: {
|
receivableAmount: {
|
||||||
rules: [{ required: true, message: '请输入应收金额' }],
|
rules: [{ required: true, validator: this.checkMoney }],
|
||||||
validateTrigger: 'blur'
|
validateTrigger: 'blur'
|
||||||
},
|
},
|
||||||
needInvoice: {
|
needInvoice: {
|
||||||
@@ -314,6 +316,7 @@ export default {
|
|||||||
selectedCompany: null, // 当前选中的企业
|
selectedCompany: null, // 当前选中的企业
|
||||||
selectedContact: null, // 编辑时的联系人
|
selectedContact: null, // 编辑时的联系人
|
||||||
selectedMailContact: null, // 编辑时的邮寄联系人
|
selectedMailContact: null, // 编辑时的邮寄联系人
|
||||||
|
disabledCompany: false, // 企业是否可以编辑
|
||||||
url: {
|
url: {
|
||||||
add: '/project/payCommonProject/add',
|
add: '/project/payCommonProject/add',
|
||||||
edit: '/project/payCommonProject/edit'
|
edit: '/project/payCommonProject/edit'
|
||||||
@@ -346,9 +349,16 @@ export default {
|
|||||||
companyName: record.chargeCompanyTemporaryName
|
companyName: record.chargeCompanyTemporaryName
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 判断企业是否可以编辑,项目来款、开票、邮寄、打包、关联合同后,企业不可更改
|
||||||
|
if (record.id) {
|
||||||
|
// 验证项目是否关联收入合同
|
||||||
|
checkAssociatedProject(record.id).then(res => {
|
||||||
|
this.disabledCompany = this.disabledChargeCompany || res || (!!record.inAccount && record.inAccount !== 0) || (!!record.makeInvoice && record.makeInvoice !== 0) || (!!record.mail && record.mail !== 0)
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.disabledCompany = this.disabledChargeCompany
|
||||||
|
}
|
||||||
// 是否存在从收入合同传入的签订联系人id
|
// 是否存在从收入合同传入的签订联系人id
|
||||||
console.log(record, this.signedContactId)
|
|
||||||
record.contactsId = this.signedContactId || record.contactsTemporaryId || undefined
|
record.contactsId = this.signedContactId || record.contactsTemporaryId || undefined
|
||||||
record.mailContactsId = this.signedContactId || record.mailContactsTemporaryId || undefined
|
record.mailContactsId = this.signedContactId || record.mailContactsTemporaryId || undefined
|
||||||
// 回显选中的企业
|
// 回显选中的企业
|
||||||
@@ -487,6 +497,22 @@ export default {
|
|||||||
this.form.setFieldsValue(pick(this.model, 'mailContactsId'))
|
this.form.setFieldsValue(pick(this.model, 'mailContactsId'))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 校验金额格式
|
||||||
|
* @param rules
|
||||||
|
* @param value
|
||||||
|
* @param callback
|
||||||
|
*/
|
||||||
|
checkMoney(rules, value, callback) {
|
||||||
|
console.log(value, rules.field)
|
||||||
|
if (value) {
|
||||||
|
if (money(value)) {
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
callback('请输入正确格式的金额')
|
||||||
|
}
|
||||||
|
callback('请输入应收金额')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
<a-form-item label="成员单位" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
|
<a-form-item label="成员单位" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
|
||||||
<company-select placeholder="请选择成员单位"
|
<company-select placeholder="请选择成员单位"
|
||||||
v-decorator="['chargeCompany',validatorRules.chargeCompany]"
|
v-decorator="['chargeCompany',validatorRules.chargeCompany]"
|
||||||
:disabled="disabledChargeCompany"
|
:disabled="disabledCompany"
|
||||||
@change="companyChange"
|
@change="companyChange"
|
||||||
:maxLength='50'>
|
:maxLength='50'>
|
||||||
</company-select>
|
</company-select>
|
||||||
@@ -216,6 +216,7 @@ import { getWorkingGroupListByNotCompany } from '../../../api/incomePaymentsApi'
|
|||||||
import { isRepeat } from '../../../utils/util'
|
import { isRepeat } from '../../../utils/util'
|
||||||
import { addZero } from '../../../utils/util'
|
import { addZero } from '../../../utils/util'
|
||||||
import { money } from '../../../utils/validate'
|
import { money } from '../../../utils/validate'
|
||||||
|
import { checkAssociatedProject } from '../../../utils/projectCheck'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'WorkingGroupMemberUnitModule',
|
name: 'WorkingGroupMemberUnitModule',
|
||||||
@@ -342,6 +343,7 @@ export default {
|
|||||||
selectedChargeNotice: null, // 选中的收费通知号
|
selectedChargeNotice: null, // 选中的收费通知号
|
||||||
workingGroupId: null,
|
workingGroupId: null,
|
||||||
workingGroupList: [],
|
workingGroupList: [],
|
||||||
|
disabledCompany: false, // 企业是否禁用
|
||||||
url: {
|
url: {
|
||||||
add: '/project/payWorkingGroupSubitem/add',
|
add: '/project/payWorkingGroupSubitem/add',
|
||||||
edit: '/project/payWorkingGroupSubitem/edit'
|
edit: '/project/payWorkingGroupSubitem/edit'
|
||||||
@@ -393,6 +395,14 @@ export default {
|
|||||||
companyName: record.chargeCompanyTemporaryName
|
companyName: record.chargeCompanyTemporaryName
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 验证项目是否关联收入合同,项目来款、开票、邮寄、打包、关联合同后,企业不可更改
|
||||||
|
if (record.id) {
|
||||||
|
checkAssociatedProject(record.id).then(res => {
|
||||||
|
this.disabledCompany = this.disabledChargeCompany || res || (!!record.inAccount && record.inAccount !== 0) || (!!record.makeInvoice && record.makeInvoice !== 0) || (!!record.mail && record.mail !== 0)
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.disabledCompany = this.disabledChargeCompany
|
||||||
|
}
|
||||||
// 回显选中的企业
|
// 回显选中的企业
|
||||||
this.selectedCompany = record.chargeCompany
|
this.selectedCompany = record.chargeCompany
|
||||||
this.companyChange(this.selectedCompany)
|
this.companyChange(this.selectedCompany)
|
||||||
@@ -577,7 +587,7 @@ export default {
|
|||||||
callback()
|
callback()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
callback('请输入正确格式的金额')
|
callback('请输入正确格式的金额,金额格式为不超过十位整数,保留两位小数')
|
||||||
}
|
}
|
||||||
callback('请输入应收金额')
|
callback('请输入应收金额')
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user