Commit 1826ec4f authored by wangxl's avatar wangxl

33333

parent c2d931a9
......@@ -113,7 +113,7 @@ export default {
dataList: {
type: Array,
default: () => {
return [{ ...ManagementRule }]
return []
}
},
},
......
......@@ -518,7 +518,9 @@
</a-col>
</a-row>
<!-- 在研或完成基础研究项目情况 -->
<project-research-edit :dataList.sync="formData.managementRuleList" />
<project-research-edit :dataList.sync="formData.researchList" />
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
......@@ -645,6 +647,8 @@ import fileEdit from '@/views/report/project/components/fileEdit'
import { isEmptyParams } from "@/views/utils/common"
import moment from 'moment'
const Research = { projNo: null, projName: null, approveUnit: null, leader: null, startDate: null, endDate: null, funds: null }
const ManagementRule = { policyName: null, releaseDate: null, documentNumber: null, validityPeriod: null, mainContent: null, fileId: null, downloadId: null, fileName: null, downloadUrl: null }
const ProjectSub = { projName: null, undertakingUnit: null, address: null, director: null, totalBudget: null, govBudget: null, selfBudget: null, cooperativeUnits: null, fileId: null, downloadId: null, fileName: null, downloadUrl: null }
const Cooperative = { id: null, unitName: null, unitCountry: null, unitAddress: null, organizationCode: null, projectWork: null }
......@@ -655,7 +659,7 @@ const File = { fileName: '', downloadUrl: '', fileExplain: '', downloadId: '' }
export default {
name: 'projectEdit',
components: {
paraMultiSelect, paraSelect, baseSelect, projectMemberEdit, cooperativeUnitsEdit, budgetEdit, fundPlanEdit, equipmentsEdit, unitPaymentEdit, projectResearchEdit,projectSubEdit, managementRuleEdit, fileEdit
paraMultiSelect, paraSelect, baseSelect, projectMemberEdit, cooperativeUnitsEdit, budgetEdit, fundPlanEdit, equipmentsEdit, unitPaymentEdit, projectResearchEdit, projectSubEdit, managementRuleEdit, fileEdit
},
props: {
value: {
......@@ -717,6 +721,7 @@ export default {
budget: [],
fundPlan: [],
equipments: [],
researchList: [],
projectSubList: [],
managementRuleList: [],
fileList: [],
......@@ -799,6 +804,8 @@ export default {
}
},
loadList () {
if (!!!this.formData.researchList || this.formData.researchList.length == 0)
this.formData.researchList = [{ ...Research }]
if (!!!this.formData.managementRuleList || this.formData.managementRuleList.length == 0)
this.formData.managementRuleList = [{ ...ManagementRule }]
if (!!!this.formData.projectSubList || this.formData.projectSubList.length == 0)
......
......@@ -563,7 +563,7 @@
</a-col>
</a-row>
<!-- 在研或完成基础研究项目情况 -->
<project-research-info :dataList.sync="value.managementRuleList" />
<project-research-info :dataList.sync="value.researchList" />
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
......
<template>
<div>
<a-row>
<a-col :span="24">
<div class="tb-title">
<span>单位科研项目及资金管理制度</span>
<a-row type="flex" class="row_center">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div class="required">项目编号</div>
</div>
</a-col>
</a-row>
<a-row type="flex" class="row_center">
<a-col :span="6" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div class="required">单位政策名称</div>
<div class="required">项目名称</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div class="required">出台日期</div>
<div class="required">批准单位</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div class="required">文号</div>
<div class="required">负责人</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">有效</div>
<div class="required">开始日</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">主要内容</div>
<div class="required">结束日期</div>
</div>
</a-col>
<a-col :span="6" class="bg-gray">
<a-col :span="2" class="bg-gray">
<div class="special-middle">
<div>附件</div>
<div class="required">项目经费(万元)</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
......@@ -44,36 +42,41 @@
</div>
</a-col>
</a-row>
<a-row v-for="(item, index) in managementRuleList" :key="'managementRuleList'+index" type="flex" class="row_center">
<a-col :span="6">
<a-form-model-item :prop="'managementRuleList.' + index + '.policyName'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.policyName" :maxLength="100" placeholder="单位政策名称" style="width:85%" />
<a-row v-for="(item, index) in dataList" :key="'researchList'+index" type="flex" class="row_center">
<a-col :span="3">
<a-form-model-item :prop="'researchList.' + index + '.projNo'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.projNo" :maxLength="50" placeholder="项目编号" style="width:85%" />
</a-form-model-item>
</a-col>
<a-col :span="2">
<a-form-model-item :prop="'managementRuleList.' + index + '.releaseDate'" :rules="{ required: true, message: '*', trigger: 'change',}">
<a-date-picker format="YYYY-MM-DD" valueFormat="YYYY-MM-DD HH:mm:ss" placeholder="出台日期" v-model="item.releaseDate" style="width:85%" />
<a-col :span="3">
<a-form-model-item :prop="'researchList.' + index + '.projName'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.projName" :projName="50" placeholder="项目名称" style="width:85%" />
</a-form-model-item>
</a-col>
<a-col :span="2">
<a-form-model-item :prop="'managementRuleList.' + index + '.documentNumber'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.documentNumber" :maxLength="100" placeholder="文号" style="width:85%" />
<a-col :span="3">
<a-form-model-item :prop="'researchList.' + index + '.approveUnit'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.approveUnit" :maxLength="50" placeholder="批准单位" style="width:85%" />
</a-form-model-item>
</a-col>
<a-col :span="2">
<a-form-model-item :prop="'managementRuleList.' + index + '.validityPeriod'" :rules="{ required: true, message: '*', trigger: 'change',}">
<a-date-picker format="YYYY-MM-DD" valueFormat="YYYY-MM-DD HH:mm:ss" placeholder="有效期" v-model="item.validityPeriod" style="width:85%" />
<a-col :span="3">
<a-form-model-item :prop="'researchList.' + index + '.leader'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.leader" :maxLength="100" placeholder="负责人" style="width:85%" />
</a-form-model-item>
</a-col>
<a-col :span="4">
<a-form-model-item :prop="'managementRuleList.' + index + '.mainContent'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input v-model="item.mainContent" placeholder="主要内容" :maxLength="100" style="width:85%" />
<a-form-model-item :prop="'researchList.' + index + '.startDate'" :rules="{ required: true, message: '*', trigger: 'change',}">
<a-date-picker format="YYYY-MM-DD" valueFormat="YYYY-MM-DD HH:mm:ss" placeholder="开始日期" v-model="item.startDate" style="width:85%" />
</a-form-model-item>
</a-col>
<a-col :span="6">
<div class="special-middle">
<file-load :file.sync="managementRuleList[index]" :index="index" :name="'managementRuleList'" />
</div>
<a-col :span="4">
<a-form-model-item :prop="'researchList.' + index + '.endDate'" :rules="{ required: true, message: '*', trigger: 'change',}">
<a-date-picker format="YYYY-MM-DD" valueFormat="YYYY-MM-DD HH:mm:ss" placeholder="结束日期" v-model="item.endDate" style="width:85%" />
</a-form-model-item>
</a-col>
<a-col :span="2">
<a-form-model-item :prop="'researchList.' + index + '.funds'" :rules="{ required: true, message: '*', trigger: 'blur',}">
<a-input-number v-model="item.funds" placeholder="项目经费" :min="0" :step="0.01" style="width:85%" />
</a-form-model-item>
</a-col>
<a-col :span="2">
<div class="special-middle">
......@@ -96,22 +99,20 @@
</template>
<script>
const ManagementRule = { policyName: null, releaseDate: null, documentNumber: null, validityPeriod: null, mainContent: null, fileId: null, downloadId: null, fileName: null, downloadUrl: null }
const Research = { projNo: null, projName: null, approveUnit: null, leader: null, startDate: null, endDate: null, funds: null }
import { isEmptyParams } from "@/views/utils/common"
import fileLoad from '@/views/components/common/fileLoad'
export default {
name: "projectResearchEdit",
components: {
fileLoad
},
props: {
managementRuleList: {
dataList: {
type: Array,
default: () => {
return [{ ...ManagementRule }]
return [{ ...Research }]
}
},
},
......@@ -128,12 +129,12 @@ export default {
},
methods: {
addArrey () {//添加成员
this.managementRuleList.push({ ...ManagementRule })
this.dataList.push({ ...Research })
},
deleteArrey (item) {//移除成员
let index = this.managementRuleList.indexOf(item)
let index = this.dataList.indexOf(item)
if (index !== -1) {
this.managementRuleList.splice(index, 1)
this.dataList.splice(index, 1)
}
},
},
......
<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="2" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div>序号</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div >单位政策名称</div>
<div class="required">项目编号</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div >出台日期</div>
<div class="required">项目名称</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div >文号</div>
<div class="required">批准单位</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div >有效期</div>
<div class="required">负责人</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div >主要内容</div>
<div class="required">开始日期</div>
</div>
</a-col>
<a-col :span="8" class="bg-gray">
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div>附件</div>
<div class="required">结束日期</div>
</div>
</a-col>
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div class="required">项目经费(万元)</div>
</div>
</a-col>
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div>操作</div>
</div>
</a-col>
</a-row>
<a-row v-for="(item, index) in dataList" :key="'managementRuleList'+index" type="flex" class="row_center">
<a-col :span="2">
<a-row v-for="(item, index) in dataList" :key="'researchListInfo'+index" type="flex" class="row_center">
<a-col :span="3">
<div class="special-middle">
<div>
{{ index + 1 }}
......@@ -55,44 +58,50 @@
<a-col :span="4">
<div class="special-middle">
<div>
{{ item.policyName }}
{{ item.projNo }}
</div>
</div>
</a-col>
<a-col :span="2">
<a-col :span="4">
<div class="special-middle">
<div>
{{ moment(item.releaseDate).format('YYYY-MM-DD') }}
{{ item.projName }}
</div>
</div>
</a-col>
<a-col :span="2">
<a-col :span="4">
<div class="special-middle">
<div>
{{ item.approveUnit }}
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
{{ item.documentNumber }}
{{ item.leader }}
</div>
</div>
</a-col>
<a-col :span="2">
<div class="special-middle">
<div>
{{ moment(item.validityPeriod).format('YYYY-MM-DD') }}
{{ moment(item.startDate).format('YYYY-MM-DD') }}
</div>
</div>
</a-col>
<a-col :span="4">
<a-col :span="2">
<div class="special-middle">
<div>
{{ item.mainContent }}
{{ moment(item.endDate).format('YYYY-MM-DD') }}
</div>
</div>
</a-col>
<a-col :span="8">
<a-col :span="4">
<div class="special-middle">
<div v-if="item.fileName" style="text-align: left;">
<document-view :fileUrl="item.downloadUrl" :fileName="item.fileName" :imageArray="[item.downloadUrl]"></document-view>
<div>
{{ item.funds }}
</div>
<div v-else></div>
</div>
</a-col>
</a-row>
......@@ -101,19 +110,18 @@
<script>
import documentView from '@/views/components/common/documentView'
import moment from 'moment'
export default {
name: "projectResearchInfo",
components: {
documentView
},
props: {
dataList: {
type: Array,
default: () => {
return [{ ...ManagementRule }]
return []
}
},
},
......
......@@ -148,7 +148,7 @@ export default {
dataList: {
type: Array,
default: () => {
return [{ ...ProjectSub }]
return []
}
},
},
......
......@@ -116,6 +116,7 @@ export default {
members: [],
budget: [],
equipments: [],
researchList: [],
projectSubList: [],
managementRuleList: [],
fileList: [],
......
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