Commit 6cf544c0 authored by 徐俊's avatar 徐俊
parents e8fe0a3d 17cafb50
<template>
<div>
<a-row>
<a-col :span="24">
<div class="tb-title">
<span>设备费-购置设备预算明细表<strong>(金额单位:万元)</strong></span>
</div>
</a-col>
</a-row>
<a-row type="flex" class="row_center">
<a-col :span="2" class="bg-gray">
<div class="special-middle">
<div>序号</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<div class="special-middle">
<div>设备名称</div>
</div>
</a-col>
</a-row>
<a-row v-for="(item, index) in equipments" :key="'equipments'+index" type="flex" class="row_center">
<a-col :span="1">
<div class="special-middle"><a-button icon="close" type="primary" shape="circle" size="small" @click="deleteEquipment(item)"></a-button>&nbsp;{{ index + 1 }}</div>
</a-col>
<a-col :span="20">
<a-form-model-item :prop="'equipments.' + index + '.name'" :rules="{required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.name" :maxLength="100" style="width: 90%;" />
</a-form-model-item>
</a-col>
</a-row>
<div></div>
<a-row type="flex">
<a-col :span="24" style="text-align: center">
<div class="special-middle">
<a-button type="dashed" style="width: 20%" @click="addArray()">
<a-icon type="plus" /> 添加 <span style="color:red;margin-left:10px"></span>
</a-button>
</div>
</a-col>
</a-row>
<a-row type="flex" class="item_inner">
<a-col :span="24">
<span style="color: red;">注:1.本表只填写省级财政科技资金购置的设备;涉及自筹经费购买的设备,请在资金预算编制说明中说明。<br />
2.单价50万元以下的设备不填写明细。</span>
</a-col>
</a-row>
</div>
</template>
<script>
const Equipment = {
id: "",
objectId: "",
name: "",
functionTarget: "",
specificationType: "",
quantity: 1,
totalBudget: 0.00,
useFrom: "",
buyUnit: "",
storageLocation: "",
equipmentType: "",
manufacturer: "",
sharedScope: "",
unitPrice: 0.00,
};
export default {
name: "EquipmentEdit",
data () {
return {
fiftyUpNumber: 0,
fiftyUpAmount: 0.00,
fiftyDownNumber: 0,
fiftyDownAmount: 0.00,
totalNumber: 0,
totalAmount: 0.00,
};
},
props: {
equipments: {
type: Array,
default: () => {
return [];
},
},
},
created () {
console.log(this.equipments)
},
methods: {
calNumberAmount () {
this.fiftyUpAmount = 0.00
this.fiftyDownAmount = 0.00
this.fiftyUpNumber = 0
this.fiftyDownNumber = 0
this.equipments.forEach(e => {
if (e.unitPrice >= 50) {
this.fiftyUpAmount += e.unitPrice * e.quantity
this.fiftyUpNumber += e.quantity
} else {
this.fiftyDownAmount += e.unitPrice * e.quantity
this.fiftyDownNumber += e.quantity
}
})
this.totalNumber = this.fiftyUpNumber + this.fiftyDownNumber
this.totalAmount = this.fiftyUpAmount + this.fiftyDownAmount
},
outUnitPriceChange (index) {
this.equipments[index].totalBudget = this.equipments[index].unitPrice * this.equipments[index].quantity
this.calNumberAmount()
},
outNumberChange (index) {
this.equipments[index].totalBudget = this.equipments[index].unitPrice * this.equipments[index].quantity
this.calNumberAmount()
},
addArray () {
this.equipments.push({ ...Equipment })
console.log(this.equipments)
//this.calNumberAmount()
},
deleteEquipment (item) {
let index = this.equipments.indexOf(item)
if (index !== -1) {
this.equipments.splice(index, 1)
}
this.calNumberAmount()
},
},
watch: {
equipments: {
handler (equipments) {
if (!!equipments)
this.calNumberAmount()
},
},
}
};
</script>
\ No newline at end of file
...@@ -75,27 +75,27 @@ ...@@ -75,27 +75,27 @@
</a-col> </a-col>
</a-row> </a-row>
<div> <div>
<a-row v-for="(item, index) in equipments" :key="'equipments'+index" type="flex" class="row_center"> <a-row v-for="(item, index) in deviceList" :key="'deviceList'+index" type="flex" class="row_center">
<a-col :span="1"> <a-col :span="1">
<div class="special-middle"><a-button icon="close" type="primary" shape="circle" size="small" @click="deleteEquipment(item)"></a-button>&nbsp;{{ index + 1 }}</div> <div class="special-middle"><a-button icon="close" type="primary" shape="circle" size="small" @click="deleteEquipment(item)"></a-button>&nbsp;{{ index + 1 }}</div>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.name'" :rules="{required: true, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.name'" :rules="{required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.name" :maxLength="100" style="width: 90%;" /> <a-input v-model="item.name" :maxLength="100" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.functionTarget'" :rules="{required: true, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.functionTarget'" :rules="{required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.functionTarget" :maxLength="200" style="width: 90%;" /> <a-input v-model="item.functionTarget" :maxLength="200" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.unitPrice'" :rules="{required: true, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.unitPrice'" :rules="{required: true, message: '*', trigger: 'blur',}">
<a-input-number v-model="item.unitPrice" @change="outUnitPriceChange(index)" :min="0" :step="0.01" style="width: 90%" /> <a-input-number v-model="item.unitPrice" @change="outUnitPriceChange(index)" :min="0" :step="0.01" style="width: 90%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="1">
<a-form-model-item :prop="'equipments.' + index + '.quantity'" :rules="{required: true, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.quantity'" :rules="{required: true, message: '*', trigger: 'blur',}">
<a-input-number v-model="item.quantity" @change="outNumberChange(index)" :min="1" :step="1" style="width: 90%" /> <a-input-number v-model="item.quantity" @change="outNumberChange(index)" :min="1" :step="1" style="width: 90%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
...@@ -105,37 +105,37 @@ ...@@ -105,37 +105,37 @@
</div> </div>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.buyUnit'" :rules="{required: true, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.buyUnit'" :rules="{required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.buyUnit" :maxLength="100" style="width: 90%;" /> <a-input v-model="item.buyUnit" :maxLength="100" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.storageLocation'" :rules="{required: true, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.storageLocation'" :rules="{required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.storageLocation" :maxLength="200" style="width: 90%;" /> <a-input v-model="item.storageLocation" :maxLength="200" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.equipmentType'" :rules="{required: false, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.equipmentType'" :rules="{required: false, message: '*', trigger: 'blur',}">
<a-input v-model="item.equipmentType" :maxLength="100" style="width: 90%;" /> <a-input v-model="item.equipmentType" :maxLength="100" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.manufacturer'" :rules="{required: false, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.manufacturer'" :rules="{required: false, message: '*', trigger: 'blur',}">
<a-input v-model="item.manufacturer" :maxLength="100" style="width: 90%;" /> <a-input v-model="item.manufacturer" :maxLength="100" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.specificationType'" :rules="{required: false, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.specificationType'" :rules="{required: false, message: '*', trigger: 'blur',}">
<a-input v-model="item.specificationType" :maxLength="100" style="width: 90%;" /> <a-input v-model="item.specificationType" :maxLength="100" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.sharedScope'" :rules="{required: false, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.sharedScope'" :rules="{required: false, message: '*', trigger: 'blur',}">
<a-input v-model="item.sharedScope" :maxLength="100" style="width: 90%;" /> <a-input v-model="item.sharedScope" :maxLength="100" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="2">
<a-form-model-item :prop="'equipments.' + index + '.useFrom'" :rules="{required: false, message: '*', trigger: 'blur',}"> <a-form-model-item :prop="'deviceList.' + index + '.useFrom'" :rules="{required: false, message: '*', trigger: 'blur',}">
<a-input v-model="item.useFrom" :maxLength="200" style="width: 90%;" /> <a-input v-model="item.useFrom" :maxLength="200" style="width: 90%;" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
...@@ -296,7 +296,7 @@ export default { ...@@ -296,7 +296,7 @@ export default {
}; };
}, },
props: { props: {
equipments: { deviceList: {
type: Array, type: Array,
default: () => { default: () => {
return []; return [];
...@@ -304,7 +304,7 @@ export default { ...@@ -304,7 +304,7 @@ export default {
}, },
}, },
created () { created () {
console.log(this.equipments) console.log(this.deviceList)
}, },
methods: { methods: {
calNumberAmount() { calNumberAmount() {
...@@ -312,7 +312,7 @@ export default { ...@@ -312,7 +312,7 @@ export default {
this.fiftyDownAmount = 0.00 this.fiftyDownAmount = 0.00
this.fiftyUpNumber = 0 this.fiftyUpNumber = 0
this.fiftyDownNumber = 0 this.fiftyDownNumber = 0
this.equipments.forEach(e => { this.deviceList.forEach(e => {
if (e.unitPrice >= 50) { if (e.unitPrice >= 50) {
this.fiftyUpAmount += e.unitPrice * e.quantity this.fiftyUpAmount += e.unitPrice * e.quantity
this.fiftyUpNumber += e.quantity this.fiftyUpNumber += e.quantity
...@@ -325,30 +325,30 @@ export default { ...@@ -325,30 +325,30 @@ export default {
this.totalAmount = this.fiftyUpAmount + this.fiftyDownAmount this.totalAmount = this.fiftyUpAmount + this.fiftyDownAmount
}, },
outUnitPriceChange(index) { outUnitPriceChange(index) {
this.equipments[index].totalBudget = this.equipments[index].unitPrice * this.equipments[index].quantity this.deviceList[index].totalBudget = this.deviceList[index].unitPrice * this.deviceList[index].quantity
this.calNumberAmount() this.calNumberAmount()
}, },
outNumberChange(index) { outNumberChange(index) {
this.equipments[index].totalBudget = this.equipments[index].unitPrice * this.equipments[index].quantity this.deviceList[index].totalBudget = this.deviceList[index].unitPrice * this.deviceList[index].quantity
this.calNumberAmount() this.calNumberAmount()
}, },
addArray() { addArray() {
this.equipments.push({ ...Equipment }) this.deviceList.push({ ...Equipment })
console.log(this.equipments) console.log(this.deviceList)
//this.calNumberAmount() //this.calNumberAmount()
}, },
deleteEquipment(item) { deleteEquipment(item) {
let index = this.equipments.indexOf(item) let index = this.deviceList.indexOf(item)
if (index !== -1) { if (index !== -1) {
this.equipments.splice(index, 1) this.deviceList.splice(index, 1)
} }
this.calNumberAmount() this.calNumberAmount()
}, },
}, },
watch: { watch: {
equipments: { deviceList: {
handler (equipments) { handler (deviceList) {
if (!!equipments) if (!!deviceList)
this.calNumberAmount() this.calNumberAmount()
}, },
}, },
......
...@@ -893,7 +893,7 @@ import cooperativeUnitsEdit from '@/views/report/project/components/cooperativeU ...@@ -893,7 +893,7 @@ import cooperativeUnitsEdit from '@/views/report/project/components/cooperativeU
import participateUnitsEdit from '@/views/report/project/components/participateUnitsEdit' import participateUnitsEdit from '@/views/report/project/components/participateUnitsEdit'
import budgetEdit from '@/views/report/project/components/budgetEdit' import budgetEdit from '@/views/report/project/components/budgetEdit'
import fundPlanEdit from '@/views/report/project/components/fundPlanEdit' import fundPlanEdit from '@/views/report/project/components/fundPlanEdit'
import equipmentsEdit from '@/views/report/project/components/equipmentsEdit.vue'
import unitPaymentEdit from '@/views/report/project/components/unitPaymentEdit.vue' import unitPaymentEdit from '@/views/report/project/components/unitPaymentEdit.vue'
import projectKpiEdit from '@/views/report/project/components/projectKpiEdit.vue' import projectKpiEdit from '@/views/report/project/components/projectKpiEdit.vue'
import projectResearchEdit from '@/views/report/project/components/projectResearchEdit' import projectResearchEdit from '@/views/report/project/components/projectResearchEdit'
...@@ -951,7 +951,7 @@ const projectKPI = { ...@@ -951,7 +951,7 @@ const projectKPI = {
export default { export default {
name: 'projectEdit', name: 'projectEdit',
components: { components: {
projectMemberEdit, cooperativeUnitsEdit, participateUnitsEdit, budgetEdit, fundPlanEdit, equipmentsEdit, unitPaymentEdit, projectKpiEdit, projectResearchEdit, projectSubEdit, managementRuleEdit, fileEdit projectMemberEdit, cooperativeUnitsEdit, participateUnitsEdit, budgetEdit, fundPlanEdit, unitPaymentEdit, projectKpiEdit, projectResearchEdit, projectSubEdit, managementRuleEdit, fileEdit
}, },
props: { props: {
value: { value: {
......
<template>
<div>
<a-row>
<a-col :span="24">
<div class="tb-title">
<span>项目安排及阶段目标</span>
</div>
</a-col>
</a-row>
<a-row type="flex" class="row_center">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">完成时限</div>
</div>
</a-col>
<a-col :span="8" class="bg-gray">
<div class="special-middle">
<div class="required">进度安排</div>
</div>
</a-col>
<a-col :span="8" class="bg-gray">
<div class="special-middle">
<div class="required">阶段目标</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div>操作</div>
</div>
</a-col>
</a-row>
<a-row v-for="(item, index) in stageGoals" :key="'stageGoals' + index" type="flex" class="row_center">
<a-col :span="4">
<div class="special-middle">
<a-form-model-item :prop="'stageGoals.' + index + '.startTime'" :rules="{ required: true, message: '*' }" style="flex-basis: 45%;">
<a-date-picker placeholder="请选择开始日期" format="YYYY-MM-DD" valueFormat="YYYY-MM-DD HH:mm:ss" v-model="item.startTime" style="width: 140px" />
</a-form-model-item>
<a-form-model-item :prop="'stageGoals.' + index + '.endTime'" :rules="{ required: true, message: '*' }" style="flex-basis: 45%;">
<a-date-picker placeholder="请选择结束日期" format="YYYY-MM-DD" valueFormat="YYYY-MM-DD HH:mm:ss" v-model="item.endTime" style="width: 140px" />
</a-form-model-item>
</div>
</a-col>
<a-col :span="8">
<a-form-model-item :prop="'stageGoals.' + index + '.contentInfo'" :rules="{ required: true, message: '*' }">
<a-textarea v-model="item.contentInfo" placeholder="项目阶段实施内容及目标" :maxLength="500" style="width: 90%;height: 80px;margin-top: 12px;" />
</a-form-model-item>
</a-col>
<a-col :span="8">
<a-form-model-item :prop="'stageGoals.' + index + '.target'" :rules="{ required: true, message: '*' }">
<a-textarea v-model="item.target" placeholder="项目阶段实施内容及目标" :maxLength="500" style="width: 90%;height: 80px;margin-top: 12px;" />
</a-form-model-item>
</a-col>
<a-col :span="4">
<div class="special-middle">
<a-popconfirm title="确定要删除吗?" ok-text="确定" cancel-text="取消" @confirm="removeArray(item)">
<a-button type="link" size="small">[删除]</a-button>
</a-popconfirm>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="24" style="text-align: center;">
<div class="special-middle">
<a-button type="dashed" style="width: 50%" @click="addArray">
<a-icon type="plus" /> 添加
</a-button>
</div>
</a-col>
</a-row>
</div>
</template>
<script>
//用法 <proj-stage-goals :stageGoals.sync="formData.stageGoals" />
const Model = { startTime: null, endTime: null, contentInfo: null, target: null }
export default {
name: 'projStageGoalsEdit',
data () {
return {
}
},
props: {
stageGoals: {
type: Array,
default: () => {
return []
}
},
},
components: {
},
created () {
},
methods: {
addArray () {//添加成员
this.stageGoals.push({ ...Model })
},
removeArray (item) {//移除成员
let index = this.stageGoals.indexOf(item)
if (index !== -1) {
this.stageGoals.splice(index, 1)
}
},
}
}
</script>
<template>
<div>
<a-row>
<a-col :span="24">
<div class="tb-title">
<span>项目安排及阶段目标</span>
</div>
</a-col>
</a-row>
<a-row type="flex" class="row_center">
<a-col :span="8" class="bg-gray">
<div class="special-middle">
<div>完成时限</div>
</div>
</a-col>
<a-col :span="8" class="bg-gray">
<div class="special-middle">
<div>进度安排</div>
</div>
</a-col>
<a-col :span="8" class="bg-gray">
<div class="special-middle">
<div>阶段目标</div>
</div>
</a-col>
</a-row>
<a-row v-for="(item, index) in stageGoals" :key="'stageGoals' + index" type="flex" class="row_center">
<a-col :span="8">
<div class="special-middle">
{{ moment(item.startTime).format("YYYY-MM-DD HH:mm:ss") }}{{ moment(item.endTime).format("YYYY-MM-DD HH:mm:ss") }}
</div>
</a-col>
<a-col :span="8">
{{ item.contentInfo }}
</a-col>
<a-col :span="8">
{{ item.target }}
</a-col>
</a-row>
</div>
</template>
<script>
import moment from "moment";
export default {
name: "projStageGoalsInfo",
props: {
stageGoals: {
type: Array,
default: () => {
return []
}
},
},
data() {
return {};
},
methods: {
moment,
}
};
</script>
\ No newline at end of file
...@@ -589,6 +589,12 @@ ...@@ -589,6 +589,12 @@
<!-- 设备费-试制设备预算明细表 --> <!-- 设备费-试制设备预算明细表 -->
<manufacture-edit :manufactureList.sync:="formData.manufactureList"></manufacture-edit> <manufacture-edit :manufactureList.sync:="formData.manufactureList"></manufacture-edit>
<!-- 设备 -->
<device-edit :deviceList.sync="formData.deviceList" />
<!-- 项目安排及阶段目标 -->
<proj-stage-goals :stageGoals.sync="formData.stageGoals" />
<!-- 附件 --> <!-- 附件 -->
<file-edit :fileList.sync="formData.fileList" /> <file-edit :fileList.sync="formData.fileList" />
</a-form-model> </a-form-model>
...@@ -603,11 +609,10 @@ import projectMemberEdit from '@/views/report/project/components/projectMemberEd ...@@ -603,11 +609,10 @@ import projectMemberEdit from '@/views/report/project/components/projectMemberEd
import cooperativeUnitsEdit from '@/views/report/project/components/cooperativeUnitsEdit' import cooperativeUnitsEdit from '@/views/report/project/components/cooperativeUnitsEdit'
import deviceEdit from '@/views/report/project/components/deviceEdit' import deviceEdit from '@/views/report/project/components/deviceEdit'
import projStageGoalsEdit from '@/views/report/project/components/keyProject/projStageGoalsEdit'
import budgetEdit from '@/views/report/project/components/budgetEdit' import budgetEdit from '@/views/report/project/components/budgetEdit'
import fundPlanEdit from '@/views/report/project/components/fundPlanEdit' import fundPlanEdit from '@/views/report/project/components/fundPlanEdit'
import projectKpiEdit from '@/views/report/project/components/projectKpiEdit' import projectKpiEdit from '@/views/report/project/components/projectKpiEdit'
import equipmentsEdit from '@/views/report/project/components/equipmentsEdit'
import manufactureEdit from '@/views/report/project/components/manufactureEdit' import manufactureEdit from '@/views/report/project/components/manufactureEdit'
import fileEdit from '@/views/report/project/components/fileEdit' import fileEdit from '@/views/report/project/components/fileEdit'
import { isEmptyParams } from "@/views/utils/common" import { isEmptyParams } from "@/views/utils/common"
...@@ -661,7 +666,7 @@ import cascaderSelect from '@/views/components/common/cascaderSelect' ...@@ -661,7 +666,7 @@ import cascaderSelect from '@/views/components/common/cascaderSelect'
export default { export default {
name: 'projectEdit', name: 'projectEdit',
components: { components: {
projectMemberEdit, cooperativeUnitsEdit, budgetEdit, fundPlanEdit, projectKpiEdit, fileEdit, previewFile, documentView, cascaderSelect, equipmentsEdit, deviceEdit, manufactureEdit projectMemberEdit, cooperativeUnitsEdit, budgetEdit, fundPlanEdit, projectKpiEdit, fileEdit, previewFile, documentView, cascaderSelect, equipmentsEdit, deviceEdit, projStageGoalsEdit, manufactureEdit
}, },
props: { props: {
value: { value: {
...@@ -724,6 +729,7 @@ export default { ...@@ -724,6 +729,7 @@ export default {
fundPlan: [], fundPlan: [],
deviceList: [], deviceList: [],
manufactureList: [], manufactureList: [],
stageGoals: [],
fileList: [], fileList: [],
auditList: [], auditList: [],
managerDept: "", managerDept: "",
...@@ -805,6 +811,10 @@ export default { ...@@ -805,6 +811,10 @@ export default {
if (!!!this.formData.manufactureList || this.formData.manufactureList.length == 0) if (!!!this.formData.manufactureList || this.formData.manufactureList.length == 0)
this.formData.manufactureList = [] this.formData.manufactureList = []
if (!!!this.formData.stageGoals || this.formData.stageGoals.length == 0)
this.formData.stageGoals = []
if (!!!this.formData.fileList || !this.formData.fileList.length || this.formData.fileList.length == 0) { if (!!!this.formData.fileList || !this.formData.fileList.length || this.formData.fileList.length == 0) {
this.formData.fileList = [] this.formData.fileList = []
} }
......
...@@ -532,7 +532,10 @@ ...@@ -532,7 +532,10 @@
<audit-list v-model="value.auditList" /> <audit-list v-model="value.auditList" />
</a-col> </a-col>
</a-row> </a-row>
<!-- 项目安排及阶段目标 -->
<proj-stage-goals-info :stageGoals.sync="value.stageGoals" />
</div> </div>
</div> </div>
</template> </template>
...@@ -544,6 +547,7 @@ import projectMemberInfo from '@/views/report/project/components/projectMemberIn ...@@ -544,6 +547,7 @@ import projectMemberInfo from '@/views/report/project/components/projectMemberIn
import projectKpiInfo from '@/views/report/project/components/projectKpiInfo.vue' import projectKpiInfo from '@/views/report/project/components/projectKpiInfo.vue'
import budgetInfo from '@/views/report/project/components/budgetInfo' import budgetInfo from '@/views/report/project/components/budgetInfo'
import fundPlanInfo from '@/views/report/project/components/fundPlanInfo' import fundPlanInfo from '@/views/report/project/components/fundPlanInfo'
import projStageGoalsInfo from "@/views/report/project/components/keyProject/projStageGoalsInfo";
import fileInfo from "@/views/report/project/components/fileInfo"; import fileInfo from "@/views/report/project/components/fileInfo";
import documentView from '@/views/components/common/documentView' import documentView from '@/views/components/common/documentView'
import AuditList from '@/views/audit/components/auditInfo' import AuditList from '@/views/audit/components/auditInfo'
...@@ -552,7 +556,7 @@ import { toTextarea } from '@/views/utils/common' ...@@ -552,7 +556,7 @@ import { toTextarea } from '@/views/utils/common'
export default { export default {
components: { components: {
cooperativeUnitsInfo, projectMemberInfo, projectKpiInfo, budgetInfo, fundPlanInfo, fileInfo, documentView, AuditList cooperativeUnitsInfo, projectMemberInfo, projectKpiInfo, budgetInfo, fundPlanInfo, fileInfo, documentView, AuditList,projStageGoalsInfo
}, },
name: "ProjectInfo", name: "ProjectInfo",
data () { data () {
......
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