Commit 180ad5d3 authored by wangxl's avatar wangxl

44444

parent c46dc64f
...@@ -23,6 +23,7 @@ import BtnGroup from '@/components/btnGroup/index.vue' ...@@ -23,6 +23,7 @@ import BtnGroup from '@/components/btnGroup/index.vue'
import EComment from '@/components/comment/index.vue' import EComment from '@/components/comment/index.vue'
import FileUpload from '@/views/components/common/upload.vue' import FileUpload from '@/views/components/common/upload.vue'
import fModal from '@/components/modal/index' import fModal from '@/components/modal/index'
import fileLoad from '@/views/components/common/fileLoad'
import Viewer from "v-viewer" import Viewer from "v-viewer"
import 'viewerjs/dist/viewer.css' import 'viewerjs/dist/viewer.css'
...@@ -30,6 +31,7 @@ Vue.component('e-comment', EComment); ...@@ -30,6 +31,7 @@ Vue.component('e-comment', EComment);
Vue.component('btn-group', BtnGroup); Vue.component('btn-group', BtnGroup);
Vue.component('sModal', sModal) Vue.component('sModal', sModal)
Vue.component('FileUpload', FileUpload) Vue.component('FileUpload', FileUpload)
Vue.component('fileLoad', fileLoad)
Vue.component('fModal', fModal) Vue.component('fModal', fModal)
// 设置ant日期选择框为中文样式 // 设置ant日期选择框为中文样式
......
...@@ -28,6 +28,9 @@ ...@@ -28,6 +28,9 @@
<a-form-model-item label="邮 箱" prop="email"> <a-form-model-item label="邮 箱" prop="email">
<a-input v-model="formData.email" :maxLength="30" style="width:180px;" /> <a-input v-model="formData.email" :maxLength="30" style="width:180px;" />
</a-form-model-item> </a-form-model-item>
<a-form-model-item label="通讯地址" prop="address">
<a-input v-model="formData.address" :maxLength="60" style="width:180px;" />
</a-form-model-item>
</a-form-model> </a-form-model>
</div> </div>
</template> </template>
...@@ -55,6 +58,7 @@ export default { ...@@ -55,6 +58,7 @@ export default {
telephone: [{ required: true, message: '*', trigger: 'blur' },], telephone: [{ required: true, message: '*', trigger: 'blur' },],
fax: [{ required: true, message: '*', trigger: 'blur' },], fax: [{ required: true, message: '*', trigger: 'blur' },],
email: [{ required: true, message: '*', trigger: 'blur' },], email: [{ required: true, message: '*', trigger: 'blur' },],
address: [{ required: true, message: '*', trigger: 'blur' },],
}, },
} }
}, },
......
...@@ -35,6 +35,7 @@ export default { ...@@ -35,6 +35,7 @@ export default {
telephone: null, telephone: null,
fax: null, fax: null,
email: null, email: null,
address: null,
}, },
loading: false loading: false
} }
......
...@@ -111,6 +111,7 @@ export default { ...@@ -111,6 +111,7 @@ export default {
telephone: null, telephone: null,
fax: null, fax: null,
email: null, email: null,
address: null,
}, },
loading: false loading: false
} }
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
<script> <script>
import documentView from '@/views/components/common/documentView' import documentView from '@/views/components/common/documentView'
export default { export default {
name: "FileLoad", name: "fileLoad",
components: { components: {
documentView documentView
}, },
......
...@@ -3,34 +3,19 @@ ...@@ -3,34 +3,19 @@
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<div class="tb-title"> <div class="tb-title">
<span>项目主要参与单位及分工</span> <span>合作单位</span>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
<a-row type="flex" class="row_center"> <a-row type="flex" class="row_center">
<a-col :span="5" class="bg-gray"> <a-col :span="2" 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 class="required">单位国别</div>
</div>
</a-col>
<a-col :span="4" 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 class="special-middle">
<div class="required">组织机构代码/统社会信用代码</div> <div>序号</div>
</div> </div>
</a-col> </a-col>
<a-col :span="6" class="bg-gray"> <a-col :span="20" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">分 工</div> <div class="required">单位名称</div>
</div> </div>
</a-col> </a-col>
<a-col :span="2" class="bg-gray"> <a-col :span="2" class="bg-gray">
...@@ -40,47 +25,18 @@ ...@@ -40,47 +25,18 @@
</a-col> </a-col>
</a-row> </a-row>
<a-row v-for="(item, index) in cooperativeUnits" :key="'cooperativeUnits'+index" type="flex" class="row_center"> <a-row v-for="(item, index) in cooperativeUnits" :key="'cooperativeUnits'+index" type="flex" class="row_center">
<a-col :span="5"> <a-col :span="2">
<div class="special-middle">
<div>
<a-form-model-item :prop="'cooperativeUnits.' + index + '.unitName'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.unitName" :maxLength="20" placeholder="单位名称" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="3">
<div class="special-middle">
<div>
<a-form-model-item :prop="'cooperativeUnits.' + index + '.unitCountry'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.unitCountry" :maxLength="20" placeholder="单位国别" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
<a-form-model-item :prop="'cooperativeUnits.' + index + '.unitAddress'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.unitAddress" :maxLength="100" placeholder="单位地址" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle"> <div class="special-middle">
<div> <div>
<a-form-model-item :prop="'cooperativeUnits.' + index + '.organizationCode'" :rules="{ required: true,message: '*',trigger: 'blur',}"> {{ index + 1 }}
<a-input v-model="item.organizationCode" :maxLength="50" placeholder="组织机构代码/统社会信用代码" style="width: 80%" />
</a-form-model-item>
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="6"> <a-col :span="20">
<div class="special-middle"> <div class="special-middle">
<div> <div>
<a-form-model-item :prop="'cooperativeUnits.' + index + '.projectWork'" :rules="{ required: true,message: '*',trigger: 'blur',}"> <a-form-model-item :prop="'cooperativeUnits.' + index + '.unitName'">
<a-input v-model="item.projectWork" :maxLength="50" placeholder="分 工" style="width: 80%" /> <a-input v-model="item.unitName" :maxLength="20" placeholder="单位名称" style="width: 80%" />
</a-form-model-item> </a-form-model-item>
</div> </div>
</div> </div>
...@@ -129,7 +85,7 @@ export default { ...@@ -129,7 +85,7 @@ export default {
}, },
created () { created () {
}, },
methods: { methods: {
addArray () {//添加成员 addArray () {//添加成员
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<div class="tb-title"> <div class="tb-title">
<span>项目主要参与单位及分工</span> <span>合作单位</span>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
...@@ -13,31 +13,11 @@ ...@@ -13,31 +13,11 @@
<div>序号</div> <div>序号</div>
</div> </div>
</a-col> </a-col>
<a-col :span="5" class="bg-gray"> <a-col :span="22" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div >单位名称</div> <div >单位名称</div>
</div> </div>
</a-col> </a-col>
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div >单位国别</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div >单位地址</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div >组织机构代码/统社会信用代码</div>
</div>
</a-col>
<a-col :span="6" class="bg-gray">
<div class="special-middle">
<div >分 工</div>
</div>
</a-col>
</a-row> </a-row>
<a-row v-for="(item, index) in dataList" :key="'cooperativeUnits'+index" type="flex" class="row_center"> <a-row v-for="(item, index) in dataList" :key="'cooperativeUnits'+index" type="flex" class="row_center">
<a-col :span="2"> <a-col :span="2">
...@@ -54,34 +34,6 @@ ...@@ -54,34 +34,6 @@
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="3">
<div class="special-middle">
<div>
{{ item.unitCountry }}
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
{{ item.unitAddress }}
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
{{ item.organizationCode }}
</div>
</div>
</a-col>
<a-col :span="6">
<div class="special-middle">
<div>
{{ item.projectWork }}
</div>
</div>
</a-col>
</a-row> </a-row>
</div> </div>
</template> </template>
......
...@@ -99,13 +99,12 @@ ...@@ -99,13 +99,12 @@
const ManagementRule = { policyName: null, releaseDate: null, documentNumber: null, validityPeriod: null, mainContent: null, fileId: null, downloadId: null, fileName: null, downloadUrl: null } const ManagementRule = { policyName: null, releaseDate: null, documentNumber: null, validityPeriod: null, mainContent: null, fileId: null, downloadId: null, fileName: null, downloadUrl: null }
import { isEmptyParams } from "@/views/utils/common" import { isEmptyParams } from "@/views/utils/common"
import fileLoad from '@/views/components/common/fileLoad'
export default { export default {
name: "managementRuleEdit", name: "managementRuleEdit",
components: { components: {
fileLoad
}, },
props: { props: {
managementRuleList: { managementRuleList: {
......
...@@ -10,23 +10,11 @@ ...@@ -10,23 +10,11 @@
<div class="required">姓名</div> <div class="required">姓名</div>
</div> </div>
</a-col> </a-col>
<a-col :span="20"> <a-col :span="8">
<a-form-model-item prop="name"> <a-form-model-item prop="name">
<a-input v-model="memObject.name" :maxLength="20" placeholder="姓名" style="width: 40%" /> <a-input v-model="memObject.name" :maxLength="20" placeholder="姓名" style="width: 40%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">证件类型</div>
</div>
</a-col>
<a-col :span="8">
<a-form-model-item prop="certificateType">
<para-select v-model="memObject.certificateType" :typeId="49" :width="120" @changeTitle="(e)=>{ memObject.certificateTypeName = e}" />
</a-form-model-item>
</a-col>
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">证件号码</div> <div class="required">证件号码</div>
...@@ -60,43 +48,22 @@ ...@@ -60,43 +48,22 @@
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row type="flex"> <a-row type="flex">
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">民族</div> <div class="required">职称</div>
</div>
</a-col>
<a-col :span="8">
<a-form-model-item prop="nation">
<para-select v-model="memObject.nation" :typeId="11" :width="120" @changeTitle="(e)=>{ memObject.nationName = e}" />
</a-form-model-item>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">国别或地区</div>
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="20">
<a-form-model-item prop="country"> <a-form-model-item prop="title">
<a-input v-model="memObject.country" :maxLength="50" placeholder="国别或地区" style="width: 60%" /> <para-multi-select v-model="memObject.title" :typeId="7" :width="120" @changeTitle="(e)=>{ memObject.titleName = e}" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row type="flex"> <a-row type="flex">
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">工作单位</div> <div class="required">学位</div>
</div>
</a-col>
<a-col :span="8">
<a-form-model-item prop="workUnit">
<a-input v-model="memObject.workUnit" :maxLength="50" placeholder="工作单位" style="width: 60%" />
</a-form-model-item>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">最高学位</div>
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
...@@ -104,42 +71,19 @@ ...@@ -104,42 +71,19 @@
<para-select v-model="memObject.degree" :typeId="9" :width="120" @changeTitle="(e)=>{ memObject.degreeName = e}" /> <para-select v-model="memObject.degree" :typeId="9" :width="120" @changeTitle="(e)=>{ memObject.degreeName = e}" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">从事专业</div>
</div>
</a-col>
<a-col :span="20">
<a-form-model-item prop="spec">
<para-multi-select v-model="memObject.spec" :typeId="57" :width="120" @changeTitle="(e)=>{ memObject.specName = e}" />
</a-form-model-item>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">职称</div> <div class="required">工作单位</div>
</div> </div>
</a-col> </a-col>
<a-col :span="20"> <a-col :span="8">
<a-form-model-item prop="title"> <a-form-model-item prop="workUnit">
<para-multi-select v-model="memObject.title" :typeId="7" :width="120" @changeTitle="(e)=>{ memObject.titleName = e}" /> <a-input v-model="memObject.workUnit" :maxLength="50" placeholder="工作单位" style="width: 60%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row type="flex"> <a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">电子邮箱</div>
</div>
</a-col>
<a-col :span="8">
<a-form-model-item prop="email">
<a-input v-model="memObject.email" :maxLength="50" placeholder="电子邮箱" style="width: 60%" />
</a-form-model-item>
</a-col>
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">手机</div> <div class="required">手机</div>
...@@ -150,31 +94,17 @@ ...@@ -150,31 +94,17 @@
<a-input v-model="memObject.mobile" :maxLength="20" placeholder="手机" style="width: 60%" /> <a-input v-model="memObject.mobile" :maxLength="20" placeholder="手机" style="width: 60%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row>
<!-- <a-row type="flex">
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required"></div> <div class="required">子邮箱</div>
</div> </div>
</a-col> </a-col>
<a-col :span="20"> <a-col :span="8">
<a-form-model-item prop="telephone"> <a-form-model-item prop="email">
<a-input v-model="memObject.telephone" :maxLength="20" placeholder="电话号码" style="width: 60%" /> <a-input v-model="memObject.email" :maxLength="50" placeholder="电子邮箱" style="width: 60%" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">传真</div>
</div>
</a-col>
<a-col :span="20">
<a-form-model-item prop="fax">
<a-input v-model="memObject.fax" :maxLength="20" placeholder="传真" style="width: 60%" />
</a-form-model-item>
</a-col>
</a-row> -->
<a-row type="flex"> <a-row type="flex">
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
...@@ -226,7 +156,6 @@ export default { ...@@ -226,7 +156,6 @@ export default {
name: [{ required: true, message: '*', trigger: 'blur' },], name: [{ required: true, message: '*', trigger: 'blur' },],
sex: [{ required: true, message: '*', trigger: 'change' },], sex: [{ required: true, message: '*', trigger: 'change' },],
birthday: [{ required: true, message: '*', trigger: 'change' },], birthday: [{ required: true, message: '*', trigger: 'change' },],
certificateType: [{ required: true, message: '*', trigger: 'change' },],
certId: [{ required: true, message: '*', trigger: 'blur' }, certId: [{ required: true, message: '*', trigger: 'blur' },
// { // {
// validator: (rule, value, callback) => { // validator: (rule, value, callback) => {
...@@ -244,24 +173,19 @@ export default { ...@@ -244,24 +173,19 @@ export default {
// } // }
// } // }
], ],
nation: [{ required: true, message: '*', trigger: 'change' },],
country: [{ required: true, message: '*', trigger: 'blur' },],
workUnit: [{ required: true, message: '*', trigger: 'blur' },], workUnit: [{ required: true, message: '*', trigger: 'blur' },],
title: [{ required: true, message: '*', trigger: 'change' },], title: [{ required: true, message: '*', trigger: 'change' },],
degree: [{ required: true, message: '*', trigger: 'change' },], degree: [{ required: true, message: '*', trigger: 'change' },],
email: [ email: [
{ required: true, message: '请填写电子邮箱(项目联系人)', trigger: 'blur' }, { required: true, message: '*', trigger: 'blur' },
{ required: true, validator: checkEmail, trigger: 'blur' } { required: true, validator: checkEmail, trigger: 'blur' }
], ],
mobile: [ mobile: [
{ required: true, message: '*', trigger: 'blur' }, { required: true, message: '*', trigger: 'blur' },
{ required: true, validator: checkPhone, trigger: 'blur' } { required: true, validator: checkPhone, trigger: 'blur' }
], ],
telephone: [{ required: false, message: '*', trigger: 'blur' },],
fax: [{ required: false, message: '*', trigger: 'blur' },],
projWork: [{ required: true, message: '*', trigger: 'blur' },], projWork: [{ required: true, message: '*', trigger: 'blur' },],
forMonths: [{ required: true, message: '*', trigger: 'blur' },], forMonths: [{ required: true, message: '*', trigger: 'blur' },],
spec: [{ required: true, message: '*', trigger: 'change' },],
}, },
loading: false, loading: false,
} }
...@@ -287,12 +211,12 @@ export default { ...@@ -287,12 +211,12 @@ export default {
submit () { submit () {
this.memObject._key = Math.random().toString(16).substring(2, 8) this.memObject._key = Math.random().toString(16).substring(2, 8)
this.$refs.form.validate(valid => { this.$refs.form.validate(valid => {
if (valid) { // if (valid) {
this.$emit('close', this.memObject) this.$emit('close', this.memObject)
} else { // } else {
this.$message.error('项目信息未填写完全!') // this.$message.error('信息未填写完全!')
return false // return false
} // }
}) })
}, },
}, },
......
<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="5" 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 class="required">单位国别</div>
</div>
</a-col>
<a-col :span="4" 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 class="required">组织机构代码/统社会信用代码</div>
</div>
</a-col>
<a-col :span="6" class="bg-gray">
<div class="special-middle">
<div class="required">分 工</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 participateUnits" :key="'participateUnits'+index" type="flex" class="row_center">
<a-col :span="5">
<div class="special-middle">
<div>
<a-form-model-item :prop="'participateUnits.' + index + '.unitName'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.unitName" :maxLength="20" placeholder="单位名称" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="3">
<div class="special-middle">
<div>
<a-form-model-item :prop="'participateUnits.' + index + '.unitCountry'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.unitCountry" :maxLength="20" placeholder="单位国别" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
<a-form-model-item :prop="'participateUnits.' + index + '.unitAddress'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.unitAddress" :maxLength="100" placeholder="单位地址" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
<a-form-model-item :prop="'participateUnits.' + index + '.organizationCode'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.organizationCode" :maxLength="50" placeholder="组织机构代码/统社会信用代码" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="6">
<div class="special-middle">
<div>
<a-form-model-item :prop="'participateUnits.' + index + '.projectWork'" :rules="{ required: true,message: '*',trigger: 'blur',}">
<a-input v-model="item.projectWork" :maxLength="50" placeholder="分 工" style="width: 80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="2">
<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>
//用法 <cooperative-units :participateUnits.sync="formData.participateUnits" />
const Model = { id: null, unitName: null, unitCountry: null, unitAddress: null, organizationCode: null, projectWork: null }
export default {
name: 'participateUnitsEdit',
data () {
return {
}
},
props: {
participateUnits: {
type: Array,
default: () => {
return []
}
},
},
components: {
},
created () {
},
methods: {
addArray () {//添加成员
this.participateUnits.push({ ...Model })
},
removeArray (item) {//移除成员
let index = this.participateUnits.indexOf(item)
if (index !== -1) {
this.participateUnits.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="2" class="bg-gray">
<div class="special-middle">
<div>序号</div>
</div>
</a-col>
<a-col :span="5" class="bg-gray">
<div class="special-middle">
<div >单位名称</div>
</div>
</a-col>
<a-col :span="3" class="bg-gray">
<div class="special-middle">
<div >单位国别</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div >单位地址</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div >组织机构代码/统社会信用代码</div>
</div>
</a-col>
<a-col :span="6" class="bg-gray">
<div class="special-middle">
<div >分 工</div>
</div>
</a-col>
</a-row>
<a-row v-for="(item, index) in dataList" :key="'cooperativeUnits'+index" type="flex" class="row_center">
<a-col :span="2">
<div class="special-middle">
<div>
{{ index + 1 }}
</div>
</div>
</a-col>
<a-col :span="5">
<div class="special-middle">
<div>
{{ item.unitName }}
</div>
</div>
</a-col>
<a-col :span="3">
<div class="special-middle">
<div>
{{ item.unitCountry }}
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
{{ item.unitAddress }}
</div>
</div>
</a-col>
<a-col :span="4">
<div class="special-middle">
<div>
{{ item.organizationCode }}
</div>
</div>
</a-col>
<a-col :span="6">
<div class="special-middle">
<div>
{{ item.projectWork }}
</div>
</div>
</a-col>
</a-row>
</div>
</template>
<script>
export default {
name: 'participateUnitsInfo',
data () {
return {
}
},
props: {
dataList: {
type: Array,
default: () => {
return []
}
},
},
components: {
},
created () {
},
methods: {
}
}
</script>
...@@ -433,7 +433,7 @@ ...@@ -433,7 +433,7 @@
</a-row> </a-row>
<!-- 项目合作单位 --> <!-- 项目合作单位 -->
<cooperative-units-info :dataList.sync="value.cooperativeUnits" /> <participate-units-info :dataList.sync="value.participateUnits" />
<!-- 项目组成员 --> <!-- 项目组成员 -->
<project-member-info :dataList.sync="value.members" /> <project-member-info :dataList.sync="value.members" />
...@@ -676,6 +676,7 @@ ...@@ -676,6 +676,7 @@
import moment from 'moment' import moment from 'moment'
import projectMemberInfo from '@/views/report/project/components/projectMemberInfo' import projectMemberInfo from '@/views/report/project/components/projectMemberInfo'
import cooperativeUnitsInfo from '@/views/report/project/components/cooperativeUnitsInfo' import cooperativeUnitsInfo from '@/views/report/project/components/cooperativeUnitsInfo'
import participateUnitsInfo from '@/views/report/project/components/participateUnitsInfo'
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 equipmentsInfo from '@/views/report/project/components/equipmentsInfo.vue' import equipmentsInfo from '@/views/report/project/components/equipmentsInfo.vue'
...@@ -694,7 +695,7 @@ import { toTextarea } from '@/views/utils/common' ...@@ -694,7 +695,7 @@ import { toTextarea } from '@/views/utils/common'
export default { export default {
components: { components: {
projectMemberInfo, cooperativeUnitsInfo, budgetInfo, fundPlanInfo, equipmentsInfo, unitPaymentInfo, projectKpiInfo,projectResearchInfo, projectSubInfo, managementRuleInfo, fileInfo, AuditList, documentView projectMemberInfo, cooperativeUnitsInfo,participateUnitsInfo, budgetInfo, fundPlanInfo, equipmentsInfo, unitPaymentInfo, projectKpiInfo,projectResearchInfo, projectSubInfo, managementRuleInfo, fileInfo, AuditList, documentView
}, },
name: "ProjectInfo", name: "ProjectInfo",
data () { data () {
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<div class="tb-title"> <div class="tb-title">
<span>项目组成员 <strong>(注:项目负责人填写到第一行)</strong></span> <span>项目组主要成员 <strong style="color: red;">(注:不包含项目申请人)</strong></span>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
...@@ -18,11 +18,6 @@ ...@@ -18,11 +18,6 @@
<div>姓名</div> <div>姓名</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray">
<div class="special-middle">
<div>性别</div>
</div>
</a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="1" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>出生年月</div> <div>出生年月</div>
...@@ -30,59 +25,39 @@ ...@@ -30,59 +25,39 @@
</a-col> </a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="1" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>证件类型</div> <div>性别</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<div class="special-middle">
<div>证件号码</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="1" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>民族</div> <div>职称</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="1" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>国别或地区</div> <div>学位</div>
</div>
</a-col>
<a-col :span="2" class="bg-gray">
<div class="special-middle">
<div>工作单位</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="1" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>职称</div> <div>工作单位</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="2" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>最高学位</div> <div>电话</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="2" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>电子邮箱</div> <div>电子邮箱</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray"> <a-col :span="2" class="bg-gray">
<div class="special-middle">
<div>手机</div>
</div>
</a-col>
<!-- <a-col :span="1" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div >电话</div> <div>证件号码</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray">
<div class="special-middle">
<div >传真</div>
</div>
</a-col> -->
<a-col :span="2" class="bg-gray"> <a-col :span="2" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>项目分工</div> <div>项目分工</div>
...@@ -93,9 +68,9 @@ ...@@ -93,9 +68,9 @@
<div>每年工作(月)</div> <div>每年工作(月)</div>
</div> </div>
</a-col> </a-col>
<a-col :span="2" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>从事专业</div> <div>个人简历</div>
</div> </div>
</a-col> </a-col>
<a-col :span="3" class="bg-gray"> <a-col :span="3" class="bg-gray">
...@@ -123,94 +98,59 @@ ...@@ -123,94 +98,59 @@
<a-col :span="1"> <a-col :span="1">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ item.sex }} {{ moment(item.birthday).format('YYYY-MM') }}
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="1">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ moment(item.birthday).format('YYYY-MM-DD') }} {{ item.sex }}
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="1">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ item.certificateTypeName }} {{ item.titleName }}
</div>
</div>
</a-col>
<a-col :span="2">
<div class="special-middle">
<div>
{{ item.certId }}
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="1">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ item.nationName }} {{ item.degreeName }}
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="1">
<div class="special-middle">
<div>
{{ item.country }}
</div>
</div>
</a-col>
<a-col :span="2">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ item.workUnit }} {{ item.workUnit }}
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="2">
<div class="special-middle">
<div>
{{ item.titleName }}
</div>
</div>
</a-col>
<a-col :span="1">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ item.degreeName }} {{ item.mobile }}
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="2">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ item.email }} {{ item.email }}
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1"> <a-col :span="2">
<div class="special-middle"> <div class="special-middle">
<div> <div>
{{ item.mobile }} {{ item.certId }}
</div> </div>
</div> </div>
</a-col> </a-col>
<!-- <a-col :span="1">
<div class="special-middle">
<div>
{{ item.telephone }}
</div>
</div>
</a-col>
<a-col :span="1">
<div class="special-middle">
<div>
{{ item.fax }}
</div>
</div>
</a-col> -->
<a-col :span="2"> <a-col :span="2">
<div class="special-middle"> <div class="special-middle">
<div> <div>
...@@ -225,11 +165,9 @@ ...@@ -225,11 +165,9 @@
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="2"> <a-col :span="4">
<div class="special-middle"> <div class="special-middle">
<div> <file-load :file.sync="dataList[index]" :index="index" :name="'members'" />
{{ item.specName }}
</div>
</div> </div>
</a-col> </a-col>
<a-col :span="3"> <a-col :span="3">
...@@ -248,9 +186,7 @@ ...@@ -248,9 +186,7 @@
<a-row type="flex"> <a-row type="flex">
<a-col :span="24" style="text-align: center;"> <a-col :span="24" style="text-align: center;">
<div class="special-middle"> <div class="special-middle">
<a-button type="dashed" style="width: 30%;background: #40a9ff;" @click="addMember"> <a-button type="primary" @click="addMember">添加项目组成员</a-button>
<a-icon type="plus" /> 添加项目组成员
</a-button>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
...@@ -295,6 +231,9 @@ const Member = { ...@@ -295,6 +231,9 @@ const Member = {
export default { export default {
name: 'projectMemberEdit', name: 'projectMemberEdit',
components: {
},
data () { data () {
return { return {
memObject: {}, memObject: {},
......
...@@ -28,11 +28,6 @@ ...@@ -28,11 +28,6 @@
<div>出生年月</div> <div>出生年月</div>
</div> </div>
</a-col> </a-col>
<a-col :span="1" class="bg-gray">
<div class="special-middle">
<div>证件类型</div>
</div>
</a-col>
<a-col :span="3" class="bg-gray"> <a-col :span="3" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div>证件号码</div> <div>证件号码</div>
...@@ -129,13 +124,6 @@ ...@@ -129,13 +124,6 @@
</div> </div>
</div> </div>
</a-col> </a-col>
<a-col :span="1">
<div class="special-middle">
<div>
{{ item.certificateTypeName }}
</div>
</div>
</a-col>
<a-col :span="3"> <a-col :span="3">
<div class="special-middle"> <div class="special-middle">
<div> <div>
......
...@@ -129,13 +129,12 @@ ...@@ -129,13 +129,12 @@
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 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 }
import { isEmptyParams } from "@/views/utils/common" import { isEmptyParams } from "@/views/utils/common"
import fileLoad from '@/views/components/common/fileLoad'
export default { export default {
name: "projectSubEdit", name: "projectSubEdit",
components: { components: {
fileLoad
}, },
props: { props: {
projectSubList: { projectSubList: {
......
...@@ -124,6 +124,7 @@ export default { ...@@ -124,6 +124,7 @@ export default {
year3Goal: null, year3Goal: null,
projectKPI: projectKPI, projectKPI: projectKPI,
cooperativeUnits: [], cooperativeUnits: [],
participateUnits: [],
members: [], members: [],
budget: [], budget: [],
equipments: [], equipments: [],
......
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