Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
Y
yn-science-front
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
徐俊
yn-science-front
Commits
180ad5d3
Commit
180ad5d3
authored
Dec 10, 2024
by
wangxl
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
44444
parent
c46dc64f
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
1878 additions
and
1770 deletions
+1878
-1770
register.js
src/register.js
+2
-0
infoEdit.vue
src/views/basicSetting/person/components/infoEdit.vue
+4
-0
index.vue
src/views/basicSetting/person/index.vue
+1
-0
info.vue
src/views/basicSetting/person/info.vue
+1
-0
fileLoad.vue
src/views/components/common/fileLoad.vue
+1
-1
cooperativeUnitsEdit.vue
src/views/report/project/components/cooperativeUnitsEdit.vue
+11
-55
cooperativeUnitsInfo.vue
src/views/report/project/components/cooperativeUnitsInfo.vue
+2
-50
projectEdit.vue
...iews/report/project/components/keyProject/projectEdit.vue
+644
-560
projectInfo.vue
...iews/report/project/components/keyProject/projectInfo.vue
+720
-646
managementRuleEdit.vue
src/views/report/project/components/managementRuleEdit.vue
+1
-2
memberEdit.vue
src/views/report/project/components/memberEdit.vue
+21
-97
participateUnitsEdit.vue
src/views/report/project/components/participateUnitsEdit.vue
+146
-0
participateUnitsInfo.vue
src/views/report/project/components/participateUnitsInfo.vue
+115
-0
projectEdit.vue
src/views/report/project/components/projectEdit.vue
+177
-255
projectInfo.vue
src/views/report/project/components/projectInfo.vue
+3
-2
projectMemberEdit.vue
src/views/report/project/components/projectMemberEdit.vue
+27
-88
projectMemberInfo.vue
src/views/report/project/components/projectMemberInfo.vue
+0
-12
projectSubEdit.vue
src/views/report/project/components/projectSubEdit.vue
+1
-2
projectView.vue
src/views/report/project/components/projectView.vue
+1
-0
No files found.
src/register.js
View file @
180ad5d3
...
@@ -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日期选择框为中文样式
...
...
src/views/basicSetting/person/components/infoEdit.vue
View file @
180ad5d3
...
@@ -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'
},],
},
},
}
}
},
},
...
...
src/views/basicSetting/person/index.vue
View file @
180ad5d3
...
@@ -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
}
}
...
...
src/views/basicSetting/person/info.vue
View file @
180ad5d3
...
@@ -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
}
}
...
...
src/views/components/common/fileLoad.vue
View file @
180ad5d3
...
@@ -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
:
"
F
ileLoad"
,
name
:
"
f
ileLoad"
,
components
:
{
components
:
{
documentView
documentView
},
},
...
...
src/views/report/project/components/cooperativeUnitsEdit.vue
View file @
180ad5d3
...
@@ -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
()
{
//添加成员
...
...
src/views/report/project/components/cooperativeUnitsInfo.vue
View file @
180ad5d3
...
@@ -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
>
...
...
src/views/report/project/components/keyProject/projectEdit.vue
View file @
180ad5d3
<
template
>
<
template
>
<div>
<div>
<a-form-model
ref=
"form"
:model=
"formData"
:rules=
"rules"
style=
"border-top: 0px"
class=
"from-table font-line-space"
>
<a-form-model
ref=
"form"
:model=
"formData"
:rules=
"rules"
style=
"border-top: 0px"
class=
"from-table font-line-space"
>
<!-- 项目名称 -->
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px;text-align: center;"
>
<div
class=
"main-title"
>
<span>
项目基本情况
</span>
</div>
</a-col>
</a-row>
<a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<div
class=
"tb-title"
>
<span>
项目名称
</span>
<span>
申请人信息
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
姓名
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
appPersonName
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
性别
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
sex
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
出生日期
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
{{
moment
(
formData
.
birthday
).
format
(
'YYYY-MM-DD'
)
}}
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
民族
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
nationName
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
学位
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
degreeName
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
职称
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
{{
formData
.
titleName
}}
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
电话
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
mobile
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
电子邮箱
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
email
}}
</div>
</a-form-model-item>
</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=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"jobTime"
>
<a-input-number
v-model=
"formData.jobTime"
:min=
"0"
:max=
"12"
:step=
"1"
style=
"width: 100px"
/>
</a-form-model-item>
</div>
</div>
</div>
</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
>
个人通讯地址
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"projName"
>
<div
class=
"special-middle"
>
<a-input
placeholder=
"项目名称"
v-model=
"formData.projName"
:maxLength=
"50"
style=
"width:60%"
/>
<div>
</a-form-model-item>
<a-form-model-item>
<div>
{{
formData
.
address
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
工作单位
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
appUnitName
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row
type=
"flex"
v-if=
"isModifyNo"
>
<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=
"20"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
projNo
"
>
<a-form-model-item
prop=
"
mainResearchAreas
"
>
<a-
input
placeholder=
"项目编号"
v-model=
"formData.projNo"
:maxLength=
"50"
style=
"width: 40%;
"
/>
<a-
textarea
placeholder=
"主要研究领域"
v-model=
"formData.mainResearchAreas"
:maxLength=
"300"
style=
"width: 80%; height: 160px; margin-top: 12px
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 项目名称 end -->
<!-- 项目申报单位 -->
<a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<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"
>
<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>
单位名称
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
{{
formData
.
appUnitName
}}
</div>
<div>
<a-form-model-item>
<div>
{{
formData
.
appUnitName
}}
</div>
</a-form-model-item>
</div>
</div>
</div>
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
address
"
>
<a-form-model-item
prop=
"
unitLinkName
"
>
<a-input
placeholder=
"
通讯地址"
v-model=
"formData.address"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
联系人"
v-model=
"formData.unitLinkName"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</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>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
postCod
e"
>
<a-form-model-item
prop=
"
unitLinkMobil
e"
>
<a-input
placeholder=
"
邮编"
v-model=
"formData.postCode"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
电话"
v-model=
"formData.unitLinkMobile"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
...
@@ -92,111 +252,106 @@
...
@@ -92,111 +252,106 @@
<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>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
creditCode
"
>
<a-form-model-item
prop=
"
unitLinkEmail
"
>
<a-input
placeholder=
"
统一社会信用代码"
v-model=
"formData.creditCode"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
电子信箱"
v-model=
"formData.unitLinkEmail"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</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>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
nature
"
>
<a-form-model-item
prop=
"
unitLinkFax
"
>
<
para-select
v-model=
"formData.nature"
:typeId=
"58"
:width=
"200
"
/>
<
a-input
placeholder=
"传真"
v-model=
"formData.unitLinkFax"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 项目申报单位 end-->
<!-- 项目合作单位 -->
<cooperative-units
:cooperativeUnits
.
sync=
"formData.cooperativeUnits"
/>
<!-- 项目合作单位 end-->
<!-- 项目负责人 -->
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
项目负责人
</span>
</div>
</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"
>
<div>
姓名
</div>
<div>
注册单位类型
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
{{
formData
.
personName
}}
</div>
<div>
<a-form-model-item>
<div>
{{
formData
.
unitTypeName
}}
</div>
</a-form-model-item>
</div>
</div>
</div>
</a-col>
</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
>
性别
</div>
<div
class=
"required"
>
组织机构代码/统一社会信用代码
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
{{
formData
.
sex
}}
</div>
<div>
<a-form-model-item
prop=
"organizationCode"
>
<a-input
placeholder=
"组织机构代码/统一社会信用代码"
v-model=
"formData.organizationCode"
:maxLength=
"100"
style=
"width:80%"
/>
</a-form-model-item>
</div>
</div>
</div>
</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>
身份证号
</div>
<div
class=
"required"
>
通讯地址
</div>
</div>
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
formData
.
certId
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
学历
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"
8
"
>
<a-col
:span=
"
20
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
{{
formData
.
educationName
}}
</div>
<div>
<a-form-model-item
prop=
"address"
>
<a-input
placeholder=
"通讯地址"
v-model=
"formData.address"
:maxLength=
"100"
style=
"width:80%"
/>
</a-form-model-item>
</div>
</div>
</div>
</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
>
职称
</div>
<div
class=
"required"
>
注册所在地(县/区)
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
{{
formData
.
titleName
}}
</div>
<div>
<a-form-model-item
prop=
"registeredAddress"
>
<a-input
placeholder=
"注册所在地"
v-model=
"formData.registeredAddress"
:maxLength=
"100"
style=
"width:80%"
/>
</a-form-model-item>
</div>
</div>
</div>
</a-col>
</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
>
工作单位
</div>
<div
class=
"required"
>
邮编
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<div>
{{
formData
.
appUnitName
}}
</div>
<a-form-model-item
prop=
"postCode"
>
<a-input
placeholder=
"邮编"
v-model=
"formData.postCode"
:maxLength=
"10"
style=
"width:80%"
/>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
...
@@ -204,28 +359,28 @@
...
@@ -204,28 +359,28 @@
<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
>
固定电话
</div>
<div
class=
"required"
>
法定代表人
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
telephone
"
>
<a-form-model-item
prop=
"
legalPerson
"
>
<a-input
placeholder=
"
固定电话"
v-model=
"formData.telephone"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
法定代表人"
v-model=
"formData.legalPerson"
:maxLength=
"50"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</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
>
手机号码
</div>
<div
class=
"required"
>
职工总数
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
mobil
e"
>
<a-form-model-item
prop=
"
workforc
e"
>
<a-input
placeholder=
"手机号码"
v-model=
"formData.mobile"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
-number
v-model=
"formData.workforce"
:min=
"0"
:step=
"1"
style=
"width: 100px
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
...
@@ -234,54 +389,58 @@
...
@@ -234,54 +389,58 @@
<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
>
电子邮箱
</div>
<div
class=
"required"
>
其中专科以上人员
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"
20
"
>
<a-col
:span=
"
8
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
emai
l"
>
<a-form-model-item
prop=
"
specializedPersonne
l"
>
<a-input
placeholder=
"电子邮箱"
v-model=
"formData.email"
:maxLength=
"50"
style=
"width: 250px;
"
/>
<a-input
-number
v-model=
"formData.specializedPersonnel"
:min=
"0"
:step=
"1"
style=
"width: 100px
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
<a-col
:span=
"4"
class=
"bg-gray"
>
<!-- 项目负责人 end-->
<div
class=
"special-middle"
>
<div
class=
"required"
>
研究开发人员
</div>
<!-- 项目联系人 -->
</div>
<a-row>
</a-col>
<a-col
:span=
"24"
>
<a-col
:span=
"8"
>
<div
class=
"tb-title"
>
<div
class=
"special-middle"
>
<span>
项目联系人
</span>
<div>
<a-form-model-item
prop=
"researchPersonnel"
>
<a-input-number
v-model=
"formData.researchPersonnel"
:min=
"0"
:step=
"1"
style=
"width: 100px"
/>
</a-form-model-item>
</div>
</div>
</div>
</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
>
姓名
</div>
<div
class=
"required"
>
开户银行
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
linkName
"
>
<a-form-model-item
prop=
"
depositBank
"
>
<a-input
placeholder=
"
姓名"
v-model=
"formData.linkName"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
开户银行"
v-model=
"formData.depositBank"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</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
>
工作单位
</div>
<div
class=
"required"
>
银行账号
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
linkUni
t"
>
<a-form-model-item
prop=
"
bankAccoun
t"
>
<a-input
placeholder=
"
工作单位"
v-model=
"formData.linkUnit"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
银行账号"
v-model=
"formData.bankAccount"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
...
@@ -290,502 +449,510 @@
...
@@ -290,502 +449,510 @@
<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
>
手机号码
</div>
<div
class=
"required"
>
开户银行地址
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
linkMobile
"
>
<a-form-model-item
prop=
"
depositBankAddress
"
>
<a-input
placeholder=
"
手机号码"
v-model=
"formData.linkMobile"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
开户银行地址"
v-model=
"formData.depositBankAddress"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</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
>
电子邮箱
</div>
<div
class=
"required"
>
银行联行号
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
linkEmail
"
>
<a-form-model-item
prop=
"
interbankNumber
"
>
<a-input
placeholder=
"
电子邮箱"
v-model=
"formData.linkEmail"
:maxLength=
"50"
style=
"width: 60%;
"
/>
<a-input
placeholder=
"
开户银行地址"
v-model=
"formData.interbankNumber"
:maxLength=
"100"
style=
"width:80%
"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 项目合项目联系人 end-->
<!-- 执行期限 -->
<!-- 项目合作单位 -->
<a-row>
<cooperative-units-edit
:cooperativeUnits
.
sync=
"formData.cooperativeUnits"
/>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<!--
<a-row
type=
"flex"
>
<span>
执行期限
</span>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"required"
>
上年度研发经费支出总额(单位:万元)
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"researchTotal"
>
<a-input-number
v-model=
"formData.researchTotal"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
</a-form-model-item>
</div>
</div>
</div>
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<
a-form-model-item
prop=
"startDate"
style=
"width:200px;display: inline-block;
"
>
<
div
class=
"special-middle
"
>
<
a-date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.startDate"
style=
"width: 180px"
/
>
<
div
>
</a-form-model-item
>
<a-form-model-item
prop=
"isResearchActive"
>
<span
style=
"margin: 0px 10px 0 2px"
>
~
</span
>
<base-select
v-model=
"formData.isResearchActive"
:type=
"12"
:isAll=
"true"
/
>
<a-form-model-item
prop=
"endDate"
style=
"width:200px;display: inline-block;"
>
</a-form-model-item
>
<
a-date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.endDate"
style=
"width: 180px"
/
>
<
/div
>
</
a-form-model-item
>
</
div
>
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 执行期限 end-->
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<!-- 项目信息 -->
<div
class=
"special-middle"
>
<a-row>
<div
class=
"required"
>
上一年度填报的研发投入总数(单位:万元)
</div>
<a-col
:span=
"24"
>
</div>
<div
class=
"tb-title"
>
</a-col>
<span>
所属技术领域
</span>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"researchCount"
>
<a-input-number
v-model=
"formData.researchCount"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
</a-form-model-item>
</div>
</div>
</div>
</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
>
所属技术领域
</div>
<div
class=
"required"
>
上一年度填报的研发人员数
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
technicalField
"
>
<a-form-model-item
prop=
"
researchPersonCount
"
>
<a-
textarea
placeholder=
"所属技术领域"
v-model=
"formData.technicalField"
:maxLength=
"1000"
style=
"width: 60%; height: 140px; margin-top: 12
px"
/>
<a-
input-number
v-model=
"formData.researchPersonCount"
:min=
"0"
:step=
"1"
style=
"width: 100
px"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
-->
<a-row>
<a-row>
<a-col
:span=
"24"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<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"
>
<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=
"20"
>
<a-form-model-item
prop=
"
knowledgeId
"
>
<a-form-model-item
prop=
"
projName
"
>
<
para-multi-select
v-model=
"formData.knowledgeId"
:typeId=
"57
"
/>
<
a-input
placeholder=
"项目名称"
v-model=
"formData.projName"
:maxLength=
"100"
style=
"width: 80%
"
/>
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
<
a-row
>
<
!--
<a-row
type=
"flex"
>
<a-col
:span=
"
24
"
>
<a-col
:span=
"
4"
class=
"bg-gray
"
>
<div
class=
"
tb-tit
le"
>
<div
class=
"
special-midd
le"
>
<
span>
科技报告
</span
>
<
div
class=
"required"
>
项目所属二级学院/部门名称(牵头单位)
</div
>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"leadUnit"
>
<a-input
placeholder=
"项目所属二级学院/部门名称(牵头单位)"
v-model=
"formData.leadUnit"
:maxLength=
"100"
style=
"width: 80%"
/>
</a-form-model-item>
</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
>
推荐部门
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"4"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"annualTechnologyReport"
>
<div
class=
"special-middle"
>
<a-input-number
placeholder=
"年度报告"
v-model=
"formData.annualTechnologyReport"
:maxLength=
"50"
style=
"width: 80px;"
/>
<div>
{{
formData
.
appUnitName
}}
</div>
<span
style=
"margin-left:6px"
>
份
</span>
</div>
</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=
"4"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"midTechnicalReport"
>
<a-form-model-item
prop=
"knowledgeId"
>
<a-input-number
placeholder=
"中期技术报告"
v-model=
"formData.midTechnicalReport"
:maxLength=
"50"
style=
"width: 80px;"
/>
<para-multi-select
v-model=
"formData.knowledgeId"
:typeId=
"57"
/>
<span
style=
"margin-left:6px"
>
份
</span>
</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=
"4"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"finalTechnicalReport"
>
<a-form-model-item
prop=
"startDate"
style=
"width:200px;display: inline-block;"
>
<a-input-number
placeholder=
"最终技术报告"
v-model=
"formData.finalTechnicalReport"
:maxLength=
"50"
style=
"width: 80px;"
/>
<a-date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.startDate"
@
change=
"startDateChange"
style=
"width: 180px"
/>
<span
style=
"margin-left:6px"
>
份
</span>
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
<a-col
:span=
"4"
class=
"bg-gray"
>
<a-row>
<div
class=
"special-middle"
>
<a-col
:span=
"24"
>
<div
class=
"required"
>
项目结束时间
</div>
<div
class=
"tb-title"
>
<span>
·
</span>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"endDate"
style=
"width:200px;display: inline-block;"
>
<a-date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.endDate"
@
change=
"endDateChange"
style=
"width: 180px"
/>
</a-form-model-item>
</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"
>
项目
摘要(300字以内)
</div>
<div
class=
"required"
>
项目
依托的科技创新基地
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"
projAbstract
"
>
<a-form-model-item
prop=
"
technologyInnovationBase
"
>
<a-
textarea
placeholder=
"项目摘要"
v-model=
"formData.projAbstract"
:maxLength=
"300"
style=
"width: 60%; height: 160px; margin-top: 12px
"
/>
<a-
input
placeholder=
"项目依托的科技创新基地"
v-model=
"formData.technologyInnovationBase"
:maxLength=
"100"
style=
"width: 80%
"
/>
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
-->
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
项目投入
</span>
</div>
</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"
>
<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=
"totalFunding"
>
<a-form-model-item
prop=
"totalFunding"
>
<a-input-number
v-model=
"formData.totalFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<a-input-number
v-model=
"formData.totalFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<span>
单位:万元
</span>
<span>
单位:万元
</span>
</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=
"
4
"
>
<a-col
:span=
"
8
"
>
<a-form-model-item
prop=
"govFunding"
>
<a-form-model-item
prop=
"govFunding"
>
<a-input-number
v-model=
"formData.govFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<a-input-number
v-model=
"formData.govFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<span>
单位:万元
</span>
<span>
单位:万元
</span>
</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=
"4"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"selfFunding"
>
<a-form-model-item
prop=
"linkName"
>
<a-input-number
v-model=
"formData.selfFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<a-input
placeholder=
"项目联系人姓名"
v-model=
"formData.linkName"
:maxLength=
"100"
style=
"width: 80%"
/>
<span>
单位:万元
</span>
</a-form-model-item>
</a-form-model-item>
</a-col>
</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>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"4"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"otherFunding"
>
<a-form-model-item
prop=
"linkMobile"
>
<a-input-number
v-model=
"formData.otherFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<a-input
placeholder=
"联系人手机"
v-model=
"formData.linkMobile"
:maxLength=
"100"
style=
"width: 80%"
/>
<span>
单位:万元
</span>
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
·
</span>
</div>
</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"
>
<div
class=
"required"
>
成果形式
</div>
<div
class=
"required"
>
电子邮箱
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"
results
"
>
<a-form-model-item
prop=
"
linkEmail
"
>
<
para-check
v-model=
"formData.results"
:typeId=
"45
"
/>
<
a-input
placeholder=
"电子邮箱"
v-model=
"formData.linkEmail"
:maxLength=
"100"
style=
"width: 80%
"
/>
</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"
>
项目摘要(400字以内)
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"researchProgress"
>
<a-form-model-item
prop=
"projAbstract"
>
<my-editor
v-model=
"formData.researchProgress"
id=
"my_researchProgress"
/>
<a-textarea
placeholder=
"项目摘要"
v-model=
"formData.projAbstract"
:maxLength=
"400"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"国内外研究进展"
v-model=
"formData.researchProgress"
:maxLength=
"5000"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"researchContent"
>
<a-form-model-item
prop=
"projKeywords"
>
<my-editor
v-model=
"formData.researchContent"
id=
"my_researchContent"
/>
<a-input
placeholder=
"关键词"
v-model=
"formData.projKeywords"
:maxLength=
"200"
style=
"width: 80%"
/>
<!--
<a-textarea
placeholder=
"研发内容"
v-model=
"formData.researchContent"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</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"
>
<a-row>
<div
class=
"special-middle"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"required"
>
研究方法和技术路线
</div>
<div
class=
"main-title"
>
<span>
项目人员情况
</span>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
</a-row>
<a-form-model-item
prop=
"researchPlan"
>
<my-editor
v-model=
"formData.researchPlan"
id=
"my_researchPlan"
/>
<!-- 项目合作单位 -->
<!--
<a-textarea
placeholder=
"研究方法和技术路线"
v-model=
"formData.researchPlan"
:maxLength=
"20000"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
<participate-units-edit
:participateUnits
.
sync=
"formData.participateUnits"
/>
</a-form-model-item>
<!-- 项目组成员 -->
<project-member-edit
:dataList
.
sync=
"formData.members"
/>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
项目可行性研究情况
</span>
</div>
</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"
>
1、立项依据、研究内容、意义及必要性
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"mainFeatures"
>
<a-form-model-item
prop=
"projContent"
>
<my-editor
v-model=
"formData.mainFeatures"
id=
"my_mainFeatures"
/>
<a-textarea
placeholder=
"立项依据、研究内容、意义及必要性"
v-model=
"formData.projContent"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"创新点"
v-model=
"formData.mainFeatures"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</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"
>
2、项目现有工作基础和支撑条件
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"progressiveness"
>
<a-form-model-item
prop=
"memResume"
>
<my-editor
v-model=
"formData.progressiveness"
id=
"my_progressiveness"
/>
<a-textarea
placeholder=
"项目现有工作基础和支撑条件"
v-model=
"formData.memResume"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"先进性"
v-model=
"formData.progressiveness"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row>
<a-row>
<a-col
:span=
"24"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<div
class=
"tb-title
"
>
<
div
class=
"required"
></div><strong>
(注:填报时不要出现本人相关信息)
</strong
>
<
span
style=
"color: rgba(0, 0, 0, 0.65);"
>
3、在研或完成基础研究项目情况
</span
>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 在研或完成基础研究项目情况 -->
<project-research-edit
:projectResearchList
.
sync=
"formData.projectResearchList"
/>
<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"
>
申报单位、参与单位科研条件支撑状况
<br/>
(注:填报时不要出现本人相关信息)
</div>
<div
class=
"required"
>
4、与项目相关的国内外技术发展现状(包括知识产权情况)以及本项目主要研究开发内容技术关键(创新点)、可行性评价及项目风险分析与对策
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"supportingConditions"
>
<a-form-model-item
prop=
"researchProgress"
>
<my-editor
v-model=
"formData.supportingConditions"
id=
"my_supportingConditions"
/>
<a-textarea
placeholder=
"与项目相关的国内外技术发展现状"
v-model=
"formData.researchProgress"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"申报单位、参与单位科研条件支撑状况"
v-model=
"formData.supportingConditions"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row>
<a-row>
<a-col
:span=
"24"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"
tb
-title"
>
<div
class=
"
main
-title"
>
<
div
class=
"required"
></div><strong>
(注:填报时不要出现本人相关信息)
</strong
>
<
span>
项目主要实施内容和目标
</span
>
</div>
</div>
</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"
>
负责人及研究团队的科研水平及前期研究基础
<br/>
(注:填报时不要出现本人相关信息)
</div>
<div
class=
"required"
>
项目实施目标
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"memResume"
>
<a-form-model-item
prop=
"researchContent"
>
<my-editor
v-model=
"formData.memResume"
id=
"my_memResume"
/>
<a-textarea
placeholder=
"项目实施目标"
v-model=
"formData.researchContent"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"负责人及研究团队的科研水平及前期研究基础"
v-model=
"formData.memResume"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row>
<a-row>
<a-col
:span=
"24"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<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"
>
<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=
"20"
>
<a-form-model-item
prop=
"technologyTarget"
>
<a-form-model-item
prop=
"technologyTarget"
>
<my-editor
v-model=
"formData.technologyTarget"
id=
"my_technologyTarget"
/>
<a-textarea
placeholder=
"主要技术指标"
v-model=
"formData.technologyTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"技术指标"
v-model=
"formData.technologyTarget"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"economyTarget"
>
<a-form-model-item
prop=
"economyTarget"
>
<my-editor
v-model=
"formData.economyTarget"
id=
"my_economyTarget"
/>
<a-textarea
placeholder=
"主要经济指标"
v-model=
"formData.economyTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"经济指标"
v-model=
"formData.economyTarget"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</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
>
项目实施中形成的示范基地、中试线、生产线及其规模等
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"achievementTarget"
>
<a-form-model-item
prop=
"achievementTarget"
>
<my-editor
v-model=
"formData.achievementTarget"
id=
"my_achievementTarget"
/>
<a-textarea
placeholder=
"项目实施中形成的示范基地、中试线、生产线及其规模等"
v-model=
"formData.achievementTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"成果指标"
v-model=
"formData.achievementTarget"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</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>
其他应考核的指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"socialBenefit"
>
<my-editor
v-model=
"formData.socialBenefit"
id=
"my_socialBenefit"
/>
<!--
<a-textarea
placeholder=
"社会效益"
v-model=
"formData.socialBenefit"
style=
"width: 80%; height: 140px; margin-top: 12px"
/>
-->
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<div
class=
"required"
></div><span>
其他目标与考核指标
<strong>
(对于难以采取上述表格细化的项目目标及其考核指标,可在此细化填写,限1000字以内。)
</strong></span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"24"
>
<div
style=
"font-weight: bold;"
>
<span>
1.“项目目标”,应从以下方面明确描述:
<br
/>
(1)项目研发主要针对什么问题和需求;
<br
/>
(2)将要解决哪些科学问题、突破哪些核心/共性/关键技术;
<br
/>
(3)预期成果;
<br
/>
(4)成果将以何种方式应用在哪些领域/行业/重大工程等,并拟在科技、经济、社会、等方面发挥何种的作用和影响。
</span><br
/>
<span>
2.“对应的课题(任务)”,课题任务的主要成果,指将由项目内哪些课题(任务)支撑取得某项成果。
</span><br
/>
<span>
3.“考核指标”,指相应成果的数量指标、技术指标、质量指标、应用指标和产业化指标等,其中,数量指标可以为论文、专利、产品等的数量;技术指标可以为关键技术、产品的性能参数等;质量指标可以为产品的质量提升等;应用指标可以为成果应用的对象、范围和效果等;产业化指标可以为成果产业化的数量、经济效益等。同时,对各项考核指标需填写立项时已有的指标值/状态以及项目完成时要到达的指标值/状态。同时,考核指标也应包括支撑和服务其他重大科研、经济、社会发展、科学普及需求等方面的直接和间接效益。若某项成果属于开创性的成果,立项时已有指标值/状态可填写“无”,若某项成果在立项时已有指标值/状态难以界定,则可填写“/”。
</span><br
/>
<span>
4.“中期指标”,可根据每个项目管理特点,确定是否填写,阶段目标明确的项目应填写中期指标。
</span><br
/>
<span>
5.“考核方式方法”,应提出符合相关研究成果与指标的具体考核技术方法、证明材料等。
</span><br
/>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"required"
>
其他目标与考核指标
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"otherTarget"
>
<a-form-model-item
prop=
"otherTarget"
>
<my-editor
v-model=
"formData.otherTarget"
id=
"my_otherTarget"
/>
<a-textarea
placeholder=
"其他应考核的指标"
v-model=
"formData.otherTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
<!--
<a-textarea
placeholder=
"其他目标与考核指标"
v-model=
"formData.otherTarget"
:maxLength=
"1000"
style=
"width: 80%; height: 200px; margin-top: 12px"
/>
-->
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 项目安排及阶段目标 -->
<proj-stage-goals
:stageGoals
.
sync=
"formData.stageGoals"
/>
<!-- 项目经费构成表 -->
<proj-fund-composition
:fundCompositions
.
sync=
"formData.fundCompositions"
/>
<!-- 项目组成员 -->
<proj-group-member
:members
.
sync=
"formData.members"
/>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目负责人主要成就、发明及获奖情况
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"awardSituation"
>
<a-input
placeholder=
"项目负责人主要成就、发明及获奖情况"
v-model=
"formData.awardSituation"
:maxLength=
"10000"
style=
"width: 80%;"
/>
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<!-- 经费预算 -->
<!-- 经费预算 -->
<budget-edit
:budget
.
sync=
"formData.budget"
/>
<budget-edit
:budget
.
sync=
"formData.budget"
/>
<!-- 分年度用款计划 -->
<fund-plan-edit
:fundPlan
.
sync=
"formData.fundPlan"
/>
<!-- 设备费-购置设备预算明细表 -->
<equipments-edit
:equipments
.
sync=
"formData.equipments"
/>
<!-- 科技计划项目承担单位研究资金支出预算明细表 -->
<unit-payment-edit
:unitPayment
.
sync=
"formData.unitPayment"
/>
<!-- 项目绩效指标 -->
<project-kpi-edit
:projectKPI
.
sync=
"formData.projectKPI"
/>
<!-- 项目课题设置 -->
<project-sub-edit
:projectSubList
.
sync=
"formData.projectSubList"
/>
<!-- 单位科研项目及资金管理制度表 -->
<management-rule-edit
:managementRuleList
.
sync=
"formData.managementRuleList"
/>
<!-- 附件 -->
<!-- 附件 -->
<file-edit
:fileList
.
sync=
"formData.fileList"
/>
<file-edit
:fileList
.
sync=
"formData.fileList"
/>
<!-- 项目信息 end-->
</a-form-model>
</a-form-model>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
isEmptyParams
,
checkEmail
,
checkPhone
,
checkIdentitytionId
,
personBirthday
,
personGender
}
from
"@/views/utils/common"
import
moment
from
'moment'
import
{
getType
}
from
'@/views/utils/auth'
import
{
getType
}
from
'@/views/utils/auth'
import
paraMultiSelect
from
'@/views/components/common/paraMultiSelect'
import
paraMultiSelect
from
'@/views/components/common/paraMultiSelect'
import
myEditor
from
'@/views/components/common/myEditor'
import
paraSelect
from
'@/views/components/common/paraSelect'
import
paraSelect
from
'@/views/components/common/paraSelect'
import
baseSelect
from
'@/views/components/common/baseSelect'
import
baseSelect
from
'@/views/components/common/baseSelect'
import
projGroupMember
from
'@/views/report/project/components/keyProject/projGroupMember'
import
projectMemberEdit
from
'@/views/report/project/components/projectMemberEdit'
import
projStageGoals
from
'@/views/report/project/components/keyProject/projStageGoals'
import
cooperativeUnitsEdit
from
'@/views/report/project/components/cooperativeUnitsEdit'
import
projFundComposition
from
'@/views/report/project/components/keyProject/projFundComposition'
import
participateUnitsEdit
from
'@/views/report/project/components/participateUnitsEdit'
import
cooperativeUnits
from
'@/views/report/project/components/keyProject/cooperativeUnits'
import
budgetEdit
from
'@/views/report/project/components/budgetEdit'
import
budgetEdit
from
'@/views/report/project/components/keyProject/budgetEdit'
import
fundPlanEdit
from
'@/views/report/project/components/fundPlanEdit'
import
fileEdit
from
'@/views/report/project/components/keyProject/fileEdit'
import
equipmentsEdit
from
'@/views/report/project/components/equipmentsEdit.vue'
import
paraCheck
from
'@/views/components/common/paraCheck'
import
unitPaymentEdit
from
'@/views/report/project/components/unitPaymentEdit.vue'
import
projectKpiEdit
from
'@/views/report/project/components/projectKpiEdit.vue'
import
projectResearchEdit
from
'@/views/report/project/components/projectResearchEdit'
import
projectSubEdit
from
'@/views/report/project/components/projectSubEdit'
import
managementRuleEdit
from
'@/views/report/project/components/managementRuleEdit'
import
fileEdit
from
'@/views/report/project/components/fileEdit'
import
{
isEmptyParams
}
from
"@/views/utils/common"
import
moment
from
'moment'
const
Unit
=
{
id
:
null
,
unitName
:
null
}
const
ProjResearch
=
{
projNo
:
null
,
projName
:
null
,
approveUnit
:
null
,
leader
:
null
,
startDate
:
null
,
endDate
:
null
,
funds
:
null
}
const
Goals
=
{
startTime
:
null
,
endTime
:
null
,
contentInfo
:
null
,
target
:
null
}
const
ManagementRule
=
{
policyName
:
null
,
releaseDate
:
null
,
documentNumber
:
null
,
validityPeriod
:
null
,
mainContent
:
null
,
fileId
:
null
,
downloadId
:
null
,
fileName
:
null
,
downloadUrl
:
null
}
const
Fund
=
{
year
:
null
,
totalFund
:
null
,
specialFund
:
null
,
selfFund
:
null
,
cityFund
:
null
,
otherFund
:
null
,
remark
:
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
Member
=
{
name
:
null
,
certId
:
null
,
title
:
null
,
education
:
null
,
degree
:
null
,
spec
:
null
,
workUnit
:
null
}
const
Cooperative
=
{
id
:
null
,
unitName
:
null
}
const
ParticipateUnit
=
{
id
:
null
,
unitName
:
null
,
unitCountry
:
null
,
unitAddress
:
null
,
organizationCode
:
null
,
projectWork
:
null
}
const
Members
=
{
name
:
null
,
sex
:
null
,
birthday
:
null
,
certificateType
:
null
,
certId
:
null
,
nation
:
null
,
country
:
null
,
workUnit
:
null
,
title
:
null
,
degree
:
null
,
email
:
null
,
mobile
:
null
,
telephone
:
null
,
fax
:
null
,
projWork
:
null
,
forMonths
:
null
,
spec
:
null
}
const
Equipment
=
{
id
:
""
,
objectId
:
""
,
name
:
""
,
functionTarget
:
""
,
specificationType
:
""
,
quantity
:
1
,
totalBudget
:
0.00
,
useFrom
:
""
,
buyUnit
:
""
,
storageLocation
:
""
,
equipmentType
:
""
,
manufacturer
:
""
,
sharedScope
:
""
,
unitPrice
:
0.00
,
}
const
File
=
{
fileName
:
''
,
downloadUrl
:
''
,
fileExplain
:
''
,
downloadId
:
''
}
const
File
=
{
fileName
:
''
,
downloadUrl
:
''
,
fileExplain
:
''
,
downloadId
:
''
}
const
projectKPI
=
{
reportYear
:
""
,
projName
:
""
,
appUnitName
:
""
,
projAttribute
:
""
,
projDeadline
:
""
,
startDate
:
""
,
endData
:
""
,
yearTarget
:
""
,
year1Goal
:
""
,
year2Goal
:
""
,
year3Goal
:
""
,
totalBudget
:
0.00
,
applyFunds
:
0.00
,
selfFunds
:
0.00
,
yearTotal
:
0.00
,
yearApply
:
0.00
,
yearSelf
:
0.00
,
totalRowSpan
:
0
,
//总合并行数
outTarget
:
0
,
//一级指标(产出指标)
benefitTarget
:
0
,
//一级指标(效益指标)
satisfactionDegree
:
0
,
//一级指标(满意度指标)
quantityTarget
:
0
,
//二级指标(数量指标)
qualityTarget
:
0
,
//二级指标(质量指标)
validityTarget
:
0
,
//二级指标(时效指标)
costTarget
:
0
,
//二级指标(成本指标)
economicTarget
:
0
,
//二级指标(经济效益指标)
socialTarget
:
0
,
//二级指标(社会效益指标)
ecologicalTarget
:
0
,
//二级指标(生态效益指标)
sustainableTarget
:
0
,
//二级指标(可持续影响指标)
serviceTarget
:
0
,
//二级指标(服务对象满意度指标)
threeLevel
:
[],
kpiList
:
[],
};
export
default
{
export
default
{
name
:
'projectEdit'
,
name
:
'projectEdit'
,
components
:
{
components
:
{
paraMultiSelect
,
paraSelect
,
baseSelect
,
proj
GroupMember
,
cooperativeUnits
,
paraCheck
,
projStageGoals
,
projFundComposition
,
budgetEdit
,
fileEdit
,
myEditor
paraMultiSelect
,
paraSelect
,
baseSelect
,
proj
ectMemberEdit
,
cooperativeUnitsEdit
,
participateUnitsEdit
,
budgetEdit
,
fundPlanEdit
,
equipmentsEdit
,
unitPaymentEdit
,
projectKpiEdit
,
projectResearchEdit
,
projectSubEdit
,
managementRuleEdit
,
fileEdit
},
},
props
:
{
props
:
{
value
:
{
value
:
{
...
@@ -794,239 +961,119 @@ export default {
...
@@ -794,239 +961,119 @@ export default {
return
null
return
null
}
}
},
},
isModifyNo
:
{
},
type
:
Boolean
,
created
()
{
default
:
()
=>
{
this
.
getProject
()
return
false
}
},
},
},
data
()
{
data
()
{
return
{
return
{
overseasShow
:
false
,
formData
:
{
formData
:
{
id
:
null
,
id
:
null
,
// 年度
organizationCode
:
null
,
reportYear
:
null
,
// 状态
projState
:
-
10
,
// 项目名称
projName
:
null
,
// 项目编号
projNo
:
null
,
// 单位名称
appUnitName
:
null
,
// 通讯地址
address
:
null
,
address
:
null
,
// 邮编
jobTime
:
null
,
mainResearchAreas
:
null
,
registeredAddress
:
null
,
postCode
:
null
,
postCode
:
null
,
// 统一社会信用代码
legalPerson
:
null
,
creditCode
:
null
,
workforce
:
null
,
// 单位性质
specializedPersonnel
:
null
,
nature
:
null
,
researchPersonnel
:
null
,
// 项目合作单位
depositBank
:
null
,
cooperativeUnits
:
[],
bankAccount
:
null
,
// 姓名
depositBankAddress
:
null
,
personName
:
''
,
interbankNumber
:
null
,
// 性别
researchTotal
:
null
,
sex
:
''
,
isResearchActive
:
null
,
// 证件号
researchCount
:
null
,
certId
:
''
,
researchPersonCount
:
null
,
// 学历
projName
:
null
,
educationName
:
''
,
leadUnit
:
null
,
// 职 称
recommendUnit
:
null
,
titleName
:
''
,
// 固定电话
telephone
:
''
,
// 手机号码
mobile
:
''
,
// 电子邮箱
email
:
''
,
// 姓名(项目联系人)
linkName
:
''
,
// 工作单位(项目联系人)
linkUnit
:
''
,
// 手机号码(项目联系人)
linkMobile
:
''
,
// 电子邮箱(项目联系人)
linkEmail
:
''
,
// 实施年限 起止日期
startDate
:
null
,
startDate
:
null
,
endDate
:
null
,
endDate
:
null
,
// 所属技术领域
technologyInnovationBase
:
null
,
technicalField
:
null
,
knowledgeId
:
null
,
// 国标学科
knowledgeId
:
''
,
// 年度报告
annualTechnologyReport
:
null
,
// 中期技术报告
midTechnicalReport
:
null
,
// 最终技术报告
finalTechnicalReport
:
null
,
// 项目摘要
projAbstract
:
null
,
// 投资总额
totalFunding
:
null
,
totalFunding
:
null
,
// 卫生健康委资助
govFunding
:
null
,
govFunding
:
null
,
// 单位配套
linkName
:
null
,
unitFunding
:
null
,
linkMobile
:
null
,
// 自筹
linkEmail
:
null
,
selfFunding
:
null
,
projAbstract
:
null
,
// 其他
projKeywords
:
null
,
otherFunding
:
null
,
projContent
:
null
,
// 成果形式
memResume
:
null
,
results
:
null
,
// 国内外研究进展
researchProgress
:
null
,
researchProgress
:
null
,
// 研发内容
researchContent
:
null
,
researchContent
:
null
,
// 研究方法和技术路线
researchPlan
:
null
,
// 创新点
mainFeatures
:
null
,
// 先进性
progressiveness
:
null
,
// 申报单位、参与单位科研条件支撑状况
supportingConditions
:
null
,
// 负责人及研究团队的科研水平及前期研究基础
memResume
:
null
,
// 技术指标 */
technologyTarget
:
null
,
technologyTarget
:
null
,
// 经济指标 */
economyTarget
:
null
,
economyTarget
:
null
,
// 成果指标 */
achievementTarget
:
null
,
achievementTarget
:
null
,
// 社会效益 */
socialBenefit
:
null
,
// 其他目标与考核指标 */
otherTarget
:
null
,
otherTarget
:
null
,
// 负责人主要成就、发明及获奖情况 */
yearTarget
:
null
,
awardSituation
:
null
,
year1Goal
:
null
,
// 项目安排及阶段目标 */
year2Goal
:
null
,
stageGoals
:
[],
year3Goal
:
null
,
// 项目经费构成表 */
projectKPI
:
projectKPI
,
fundCompositions
:
[],
unitPayment
:
[],
// 项目参加人员 */
cooperativeUnits
:
[],
participateUnits
:
[],
members
:
[],
members
:
[],
// 经费预算 */
budget
:
[],
budget
:
[],
// 附件 */
fundPlan
:
[],
equipments
:
[],
projectResearchList
:
[],
projectSubList
:
[],
managementRuleList
:
[],
fileList
:
[],
fileList
:
[],
},
},
rules
:
{
rules
:
{
// 项目名称
mainResearchAreas
:
[{
required
:
true
,
message
:
'请填写主要研究领域'
,
trigger
:
'blur'
},],
projName
:
[{
required
:
true
,
message
:
'请填写项目名称'
,
trigger
:
'blur'
},],
jobTime
:
[{
required
:
true
,
message
:
'请填写每年工作时间(月)'
,
trigger
:
'blur'
},],
// 项目编号
organizationCode
:
[{
required
:
true
,
message
:
'请填写组织机构代码/统一社会信用代码'
,
trigger
:
'blur'
},],
projNo
:
[{
required
:
false
,
message
:
'请填写项目编号'
,
trigger
:
'blur'
},],
registeredAddress
:
[{
required
:
true
,
message
:
'请填写注册所在地'
,
trigger
:
'blur'
},],
// 单位名称
appUnitName
:
[{
required
:
false
,
message
:
'请填写单位名称'
,
trigger
:
'blur'
},],
// 通讯地址
address
:
[{
required
:
true
,
message
:
'请填写通讯地址'
,
trigger
:
'blur'
},],
// 邮编
postCode
:
[{
required
:
true
,
message
:
'请填写邮编'
,
trigger
:
'blur'
},],
postCode
:
[{
required
:
true
,
message
:
'请填写邮编'
,
trigger
:
'blur'
},],
// 统一社会信用代码
legalPerson
:
[{
required
:
true
,
message
:
'请填写法定代表人'
,
trigger
:
'blur'
},],
creditCode
:
[{
required
:
true
,
message
:
'请填写统一社会信用代码'
,
trigger
:
'blur'
},],
workforce
:
[{
required
:
true
,
message
:
'请填写职工总数'
,
trigger
:
'blur'
},],
// 单位性质
specializedPersonnel
:
[{
required
:
true
,
message
:
'请填写其中专科以上人员'
,
trigger
:
'blur'
},],
nature
:
{
required
:
true
,
message
:
'请选择单位性质'
,
trigger
:
'change'
},
researchPersonnel
:
[{
required
:
true
,
message
:
'请填写研究开发人员'
,
trigger
:
'blur'
},],
// 姓名
depositBank
:
[{
required
:
true
,
message
:
'请填写开户银行'
,
trigger
:
'blur'
},],
personName
:
[{
required
:
false
,
message
:
'请填写姓名'
,
trigger
:
'blur'
},],
bankAccount
:
[{
required
:
true
,
message
:
'请填写银行账号'
,
trigger
:
'blur'
},],
// 性别
depositBankAddress
:
[{
required
:
true
,
message
:
'请填写开户银行地址'
,
trigger
:
'blur'
},],
sex
:
[{
required
:
false
,
message
:
'请填写性别'
,
trigger
:
'blur'
},],
interbankNumber
:
[{
required
:
true
,
message
:
'请填写开户银行地址'
,
trigger
:
'blur'
},],
// 证件号
// researchTotal: [{ required: true, message: '请填写上年度研发经费支出总额', trigger: 'blur' },],
certId
:
[{
required
:
false
,
message
:
'请填写证件号'
,
trigger
:
'blur'
},],
// isResearchActive: [{ required: true, message: '请选择上年度是否填报了研发活动情况', trigger: 'change' },],
// 学历
// researchCount: [{ required: true, message: '请填写上一年度填报的研发投入总数', trigger: 'blur' },],
educationName
:
[{
required
:
false
,
message
:
'请填写学历'
,
trigger
:
'blur'
},],
// researchPersonCount: [{ required: true, message: '请填写上一年度填报的研发人员数', trigger: 'blur' },],
// 职 称
projName
:
[{
required
:
true
,
message
:
'请填写项目名称'
,
trigger
:
'blur'
},],
titleName
:
[{
required
:
false
,
message
:
'请填写职 称'
,
trigger
:
'blur'
},],
// leadUnit: [{ required: true, message: '请填写项目所属二级学院/部门名称(牵头单位)', trigger: 'blur' },],
// 固定电话
// recommendUnit: [{ required: false, message: '请填写推荐部门', trigger: 'blur' },],
telephone
:
[{
required
:
true
,
message
:
'请填写固定电话'
,
trigger
:
'blur'
},],
startDate
:
{
required
:
true
,
message
:
'请选择项日开始时间'
,
trigger
:
'change'
},
// 手机号码
endDate
:
{
required
:
true
,
message
:
'请选择项目结束时间'
,
trigger
:
'change'
},
mobile
:
[
technologyInnovationBase
:
[{
required
:
true
,
message
:
'请填写项目依托的科技创新基地'
,
trigger
:
'blur'
},],
{
required
:
true
,
message
:
'请填写手机号码'
,
trigger
:
'blur'
},
knowledgeId
:
{
required
:
true
,
message
:
'请选择>项目所属学科类别'
,
trigger
:
'change'
},
{
required
:
true
,
validator
:
checkPhone
,
trigger
:
'blur'
}],
totalFunding
:
[{
required
:
true
,
message
:
'请填写项目总经费'
,
trigger
:
'blur'
},],
// 电子邮箱
govFunding
:
[{
required
:
true
,
message
:
'请填写申请科技经费'
,
trigger
:
'blur'
},],
email
:
[
linkName
:
[{
required
:
true
,
message
:
'请填写项目联系人姓名'
,
trigger
:
'blur'
},],
{
required
:
true
,
message
:
'请填写电子邮箱'
,
trigger
:
'blur'
},
linkMobile
:
[{
required
:
true
,
message
:
'请填写联系人手机'
,
trigger
:
'blur'
},],
{
required
:
true
,
validator
:
checkEmail
,
trigger
:
'blur'
}
linkEmail
:
[{
required
:
true
,
message
:
'请填写电子邮箱'
,
trigger
:
'blur'
},],
],
projAbstract
:
[{
required
:
true
,
message
:
'请填写项目摘要'
,
trigger
:
'blur'
},],
// 姓名(项目联系人)
projKeywords
:
[{
required
:
true
,
message
:
'请填写关键词'
,
trigger
:
'blur'
},],
linkName
:
[{
required
:
true
,
message
:
'请填写姓名(项目联系人)'
,
trigger
:
'blur'
},],
projContent
:
{
required
:
true
,
message
:
'请填写项目的意义、必要性'
,
trigger
:
'blur'
},
// 工作单位(项目联系人)
memResume
:
{
required
:
true
,
message
:
'请填写项目现有工作基础和支撑条件'
,
trigger
:
'blur'
},
linkUnit
:
[{
required
:
true
,
message
:
'请填写工作单位(项目联系人)'
,
trigger
:
'blur'
},],
researchProgress
:
{
required
:
true
,
message
:
'请填写与项目相关的国内外技术发展现状'
,
trigger
:
'blur'
},
// 手机号码(项目联系人)
researchContent
:
{
required
:
true
,
message
:
'请填写项目实施目标'
,
trigger
:
'blur'
},
linkMobile
:
[
technologyTarget
:
{
required
:
true
,
message
:
'请填写主要技术指标'
,
trigger
:
'blur'
},
{
required
:
true
,
message
:
'请填写手机号码(项目联系人)'
,
trigger
:
'blur'
},
economyTarget
:
{
required
:
true
,
message
:
'请填写主要经济指标'
,
trigger
:
'blur'
},
{
required
:
true
,
validator
:
checkPhone
,
trigger
:
'blur'
}
achievementTarget
:
[{
required
:
false
,
message
:
'请填写项目实施中形成的示范基地、中试线、生产线及其规模等'
,
trigger
:
'blur'
},],
],
otherTarget
:
{
required
:
false
,
message
:
'请填写其他应考核的指标'
,
trigger
:
'blur'
},
// 电子邮箱(项目联系人)
linkEmail
:
[
{
required
:
true
,
message
:
'请填写电子邮箱(项目联系人)'
,
trigger
:
'blur'
},
{
required
:
true
,
validator
:
checkEmail
,
trigger
:
'blur'
}
],
// 实施年限 起止日期
startDate
:
{
required
:
true
,
message
:
'请选择起始日期'
,
trigger
:
'change'
},
endDate
:
{
required
:
true
,
message
:
'请选择结束日期'
,
trigger
:
'change'
},
// 所属技术领域
technicalField
:
[{
required
:
true
,
message
:
'请填写所属技术领域'
,
trigger
:
'blur'
},],
// 国标学科
knowledgeId
:
{
required
:
true
,
message
:
'请选择国标学科'
,
trigger
:
'change'
},
// 年度报告
annualTechnologyReport
:
[{
required
:
true
,
message
:
'请填写年度报告'
,
trigger
:
'blur'
},],
// 中期技术报告
midTechnicalReport
:
[{
required
:
true
,
message
:
'请填写中期技术报告'
,
trigger
:
'blur'
},],
// 最终技术报告
finalTechnicalReport
:
[{
required
:
true
,
message
:
'请填写最终技术报告'
,
trigger
:
'blur'
},],
// 项目摘要
projAbstract
:
[{
required
:
true
,
message
:
'请填写项目名称'
,
trigger
:
'blur'
},],
// 投资总额
totalFunding
:
[{
required
:
true
,
message
:
'请填写项目摘要'
,
trigger
:
'blur'
},],
// 卫生健康委资助
govFunding
:
[{
required
:
true
,
message
:
'请填写投资总额'
,
trigger
:
'blur'
},],
// 单位配套
unitFunding
:
[{
required
:
true
,
message
:
'请填写单位配套'
,
trigger
:
'blur'
},],
// 自筹
selfFunding
:
[{
required
:
true
,
message
:
'请填写自筹'
,
trigger
:
'blur'
},],
// 其他
otherFunding
:
[{
required
:
true
,
message
:
'请填写其他'
,
trigger
:
'blur'
},],
// 成果形式
results
:
[{
required
:
true
,
message
:
'请选择成果形式'
,
trigger
:
'change'
},],
// 国内外研究进展
researchProgress
:
[{
required
:
true
,
message
:
'请填写国内外研究进展'
,
trigger
:
'blur'
},],
// 研发内容
researchContent
:
[{
required
:
true
,
message
:
'请填写研发内容'
,
trigger
:
'blur'
},],
// 研究方法和技术路线
researchPlan
:
[{
required
:
true
,
message
:
'请填写研究方法和技术路线'
,
trigger
:
'blur'
},],
// 创新点
mainFeatures
:
[{
required
:
true
,
message
:
'请填写创新点'
,
trigger
:
'blur'
},],
// 先进性
progressiveness
:
[{
required
:
true
,
message
:
'请填写先进性'
,
trigger
:
'blur'
},],
// 申报单位、参与单位科研条件支撑状况
supportingConditions
:
[{
required
:
true
,
message
:
'请填写申报单位、参与单位科研条件支撑状况'
,
trigger
:
'blur'
},],
// 负责人及研究团队的科研水平及前期研究基础
memResume
:
[{
required
:
true
,
message
:
'请填写 负责人及研究团队的科研水平及前期研究基础'
,
trigger
:
'blur'
},],
// 技术指标 */
technologyTarget
:
[{
required
:
true
,
message
:
'请填写技术指标'
,
trigger
:
'blur'
},],
// 经济指标 */
economyTarget
:
[{
required
:
true
,
message
:
'请填写经济指标'
,
trigger
:
'blur'
},],
// 成果指标 */
achievementTarget
:
[{
required
:
true
,
message
:
'请填写成果指标'
,
trigger
:
'blur'
},],
// 社会效益 */
socialBenefit
:
[{
required
:
true
,
message
:
'请填写社会效益'
,
trigger
:
'blur'
},],
// 其他目标与考核指标 */
otherTarget
:
[{
required
:
true
,
message
:
'请填写其他目标与考核指标'
,
trigger
:
'blur'
},],
// 负责人主要成就、发明及获奖情况 */
awardSituation
:
[{
required
:
true
,
message
:
'请填写负责人主要成就、发明及获奖情况'
,
trigger
:
'blur'
},],
},
},
}
}
},
},
computed
:
{
computed
:
{
},
},
mounted
()
{
mounted
()
{
},
created
()
{
this
.
getProject
()
},
},
methods
:
{
methods
:
{
moment
,
moment
,
...
@@ -1049,80 +1096,117 @@ export default {
...
@@ -1049,80 +1096,117 @@ export default {
if
(
data
)
{
if
(
data
)
{
this
.
formData
=
data
this
.
formData
=
data
this
.
loadList
()
this
.
loadList
()
}
else
{
}
else
this
.
$emit
(
'close'
,
'error'
)
this
.
$emit
(
'close'
,
'error'
)
}
this
.
$emit
(
'load'
,
false
)
this
.
$emit
(
'load'
,
false
)
}).
catch
(()
=>
{
}).
catch
(()
=>
{
this
.
$emit
(
'load'
,
false
)
this
.
$emit
(
'close'
,
'error'
)
this
.
$emit
(
'close'
,
'error'
)
this
.
$emit
(
'load'
,
false
)
})
})
}
}
},
},
loadList
()
{
loadList
()
{
if
(
!!!
this
.
formData
.
cooperativeUnits
||
this
.
formData
.
cooperativeUnits
.
length
==
0
)
{
this
.
formData
.
cooperativeUnits
=
[{
...
Unit
},
{
...
Unit
},
{
...
Unit
}]
if
(
!!!
this
.
formData
.
participateUnits
||
this
.
formData
.
participateUnits
.
length
==
0
)
}
this
.
formData
.
participateUnits
=
[{
...
ParticipateUnit
}]
if
(
!!!
this
.
formData
.
stageGoals
||
this
.
formData
.
stageGoals
.
length
==
0
)
{
this
.
formData
.
stageGoals
=
[{
...
Goals
},
{
...
Goals
},
{
...
Goals
}]
if
(
!!!
this
.
formData
.
cooperativeUnits
||
this
.
formData
.
cooperativeUnits
.
length
==
0
)
this
.
formData
.
cooperativeUnits
=
[{
...
Cooperative
},
{
...
Cooperative
}]
if
(
!!!
this
.
formData
.
projectResearchList
||
this
.
formData
.
projectResearchList
.
length
==
0
)
this
.
formData
.
projectResearchList
=
[{
...
ProjResearch
}]
if
(
!!!
this
.
formData
.
managementRuleList
||
this
.
formData
.
managementRuleList
.
length
==
0
)
this
.
formData
.
managementRuleList
=
[{
...
ManagementRule
}]
if
(
!!!
this
.
formData
.
projectSubList
||
this
.
formData
.
projectSubList
.
length
==
0
)
this
.
formData
.
projectSubList
=
[{
...
ProjectSub
}]
if
(
!!!
this
.
formData
.
members
||
this
.
formData
.
members
.
length
==
0
)
this
.
formData
.
members
=
[]
if
(
!!!
this
.
formData
.
equipments
||
!
this
.
formData
.
equipments
.
length
||
this
.
formData
.
equipments
.
length
==
0
)
{
this
.
formData
.
equipments
=
[]
}
}
if
(
!!!
this
.
formData
.
fundCompositions
||
this
.
formData
.
fundCompositions
.
length
==
0
)
{
if
(
!!!
this
.
formData
.
unitPayment
||
!
this
.
formData
.
unitPayment
.
length
||
this
.
formData
.
unitPayment
.
length
==
0
)
{
this
.
formData
.
fundCompositions
=
[{
...
Fund
},
{
...
Fund
},
{
...
Fund
}
]
this
.
formData
.
unitPayment
=
[
]
}
}
if
(
!!!
this
.
formData
.
members
||
this
.
formData
.
members
.
length
==
0
)
{
if
(
!!!
this
.
formData
.
fileList
||
!
this
.
formData
.
fileList
.
length
||
this
.
formData
.
fileList
.
length
==
0
)
{
this
.
formData
.
members
=
[{
...
Member
},
{
...
Member
},
{
...
Member
},
{
...
Member
},
{
...
Member
}
]
this
.
formData
.
fileList
=
[
]
}
}
},
},
processProjectYearTarget
()
{
this
.
formData
.
yearTarget
=
this
.
formData
.
projectKPI
.
yearTarget
this
.
formData
.
year1Goal
=
this
.
formData
.
projectKPI
.
year1Goal
this
.
formData
.
year2Goal
=
this
.
formData
.
projectKPI
.
year2Goal
this
.
formData
.
year3Goal
=
this
.
formData
.
projectKPI
.
year3Goal
this
.
formData
.
projectKPI
.
kpiList
=
this
.
formData
.
projectKPI
.
threeLevel
},
save
()
{
save
()
{
if
(
this
.
formData
.
projName
==
""
||
!!!
this
.
formData
.
projName
)
{
this
.
processProjectYearTarget
()
this
.
$message
.
error
(
'项目名称不能为空!'
)
if
(
this
.
checkProjName
())
{
return
false
this
.
$emit
(
'load'
,
true
)
let
pars
=
isEmptyParams
(
this
.
formData
)
let
par
=
{
...
pars
}
this
.
$api
.
project
.
save
(
par
).
then
(({
data
=
{}
})
=>
{
if
(
data
)
{
this
.
formData
.
id
=
data
this
.
$message
.
success
(
'保存成功!'
)
this
.
$emit
(
'close'
,
'save'
)
}
this
.
$emit
(
'load'
,
false
)
}).
catch
(()
=>
{
this
.
$emit
(
'load'
,
false
)
})
}
}
this
.
formData
.
projState
=
-
10
this
.
saveProjectInfo
(
1
)
},
},
submit
()
{
submit
()
{
if
(
!!!
this
.
formData
.
members
||
this
.
formData
.
members
.
length
==
0
)
{
this
.
processProjectYearTarget
()
if
(
this
.
formData
.
members
.
length
==
0
)
{
this
.
$message
.
error
(
'至少添加一位项目组成员!'
)
this
.
$message
.
error
(
'至少添加一位项目组成员!'
)
return
false
return
}
}
this
.
$refs
.
form
.
validate
(
valid
=>
{
this
.
$refs
.
form
.
validate
(
valid
=>
{
if
(
valid
)
{
if
(
valid
)
{
if
(
this
.
formData
.
projState
!=
30
)
this
.
$emit
(
'load'
,
true
)
let
state
=
this
.
formData
.
projState
if
(
state
!=
30
)
this
.
formData
.
projState
=
10
this
.
formData
.
projState
=
10
this
.
saveProjectInfo
(
2
)
let
pars
=
isEmptyParams
(
this
.
formData
)
let
par
=
{
...
pars
}
this
.
$api
.
project
.
save
(
par
).
then
(({
data
=
{}
})
=>
{
if
(
data
)
{
this
.
formData
.
id
=
data
this
.
$message
.
success
(
'成功!'
)
this
.
$emit
(
'close'
,
'submit'
)
}
this
.
$emit
(
'load'
,
false
)
}).
catch
(()
=>
{
this
.
$emit
(
'load'
,
false
)
})
}
else
{
}
else
{
this
.
$message
.
error
(
'项目信息未填写完全!'
)
this
.
$message
.
warn
(
'项目信息未填写完全!'
)
return
false
return
false
}
}
})
})
},
},
saveProjectInfo
(
type
)
{
checkProjName
()
{
this
.
$emit
(
'load'
,
true
)
if
(
this
.
formData
.
projName
==
""
||
this
.
formData
.
projName
==
null
)
{
let
pars
=
isEmptyParams
(
this
.
formData
)
alert
(
'项目名称不能为空'
)
let
par
=
{
...
pars
}
return
false
this
.
$api
.
project
.
save
(
par
).
then
(({
data
=
{}
})
=>
{
}
else
{
if
(
data
)
{
return
true
this
.
formData
.
id
=
data
}
this
.
$message
.
success
(
'成功!'
)
},
this
.
$emit
(
'load'
,
false
)
startDateChange
(
value
,
dateString
)
{
this
.
$emit
(
'onSave'
,
type
==
1
?
'save'
:
'submit'
)
this
.
formData
.
projectKPI
.
startDate
=
this
.
formData
.
startDate
}
else
this
.
$emit
(
'load'
,
false
)
}).
catch
(()
=>
{
this
.
$emit
(
'load'
,
false
)
})
},
},
endDateChange
(
value
,
dateString
)
{
this
.
formData
.
projectKPI
.
endDate
=
this
.
formData
.
endDate
console
.
log
(
this
.
formData
.
projectKPI
)
}
},
},
watch
:
{
watch
:
{
}
}
}
}
</
script
>
</
script
>
<
style
scoped
lang=
"less"
>
<
style
scoped
lang=
"less"
>
.d-icon {
margin-right: 10px;
}
</
style
>
</
style
>
src/views/report/project/components/keyProject/projectInfo.vue
View file @
180ad5d3
<
template
>
<
template
>
<div
class=
"from-table font-line-space"
>
<div
class=
"from-table font-line-space"
v-if=
"tabsData[0].isShow"
>
<a-row>
<div
v-if=
"tabsData[1].isShow"
>
<a-col
:span=
"24"
>
<a-row>
<div
class=
"tb-title"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<span>
项目名称
</span>
<div
class=
"tb-title"
>
</div>
<span>
基本情况
</span>
</a-col>
</div>
</a-row>
</a-col>
<a-row
type=
"flex"
>
</a-row>
<a-col
:span=
"4"
class=
"bg-gray"
>
<a-row>
<div
class=
"special-middle"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div>
项目名称
</div>
<div
class=
"tb-title"
>
</div>
<span>
单位基本情况
</span>
</a-col>
</div>
<a-col
:span=
"20"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
<div>
{{
value
.
projName
}}
</div>
<a-row
type=
"flex"
>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
<div>
单位名称
</div>
<!--
<a-row
type=
"flex"
v-if=
"isModifyNo"
>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"20"
>
<div>
项目编号
</div>
<div
class=
"special-middle"
>
</div>
<div>
{{
value
.
appUnitName
}}
</div>
</a-col>
</div>
<a-col
:span=
"20"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
<div>
{{
value
.
projNo
}}
</div>
<a-row
type=
"flex"
>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
-->
<div>
注册单位类型
</div>
</div>
<a-row>
</a-col>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<a-col
:span=
"8"
>
<div
class=
"tb-title"
>
<div
class=
"special-middle"
>
<span>
项目申报单位
</span>
<div>
</div>
{{
value
.
unitTypeName
}}
</a-col>
</div>
</a-row>
</div>
<a-row
type=
"flex"
>
</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>
单位名称
</div>
<div>
组织机构代码/统一社会信用代码
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
appUnitName
}}
</div>
<div>
</div>
{{
value
.
organizationCode
}}
</a-col>
</div>
</a-row>
</div>
<a-row
type=
"flex"
>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-row>
<div
class=
"special-middle"
>
<a-row
type=
"flex"
>
<div>
通讯地址
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
通讯地址
</div>
<a-col
:span=
"8"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
{{
value
.
address
}}
</div>
<a-col
:span=
"20"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
<a-col
:span=
"4"
class=
"bg-gray"
>
{{
value
.
address
}}
<div
class=
"special-middle"
>
</div>
<div>
邮编
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
<a-col
:span=
"8"
>
<a-row
type=
"flex"
>
<div
class=
"special-middle"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div>
{{
value
.
postCode
}}
</div>
<div
class=
"special-middle"
>
</div>
<div>
注册所在地
</div>
</a-col>
</div>
</a-row>
</a-col>
<a-row
type=
"flex"
>
<a-col
:span=
"8"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
统一社会信用代码
</div>
{{
value
.
registeredAddress
}}
</div>
</div>
</a-col>
</div>
<a-col
:span=
"8"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div>
{{
value
.
creditCode
}}
</div>
<div
class=
"special-middle"
>
</div>
<div>
邮编
</div>
</a-col>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"8"
>
<div>
单位性质
</div>
<div
class=
"special-middle"
>
</div>
<div>
</a-col>
{{
value
.
postCode
}}
<a-col
:span=
"8"
>
</div>
<div
class=
"special-middle"
>
</div>
<div>
{{
value
.
natureName
}}
</div>
</a-col>
</div>
</a-row>
</a-col>
<!--
<a-row
type=
"flex"
>
</a-row>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<cooperative-info
:cooperativeUnits
.
sync=
"value.cooperativeUnits"
/>
<div>
法定代表人
</div>
</div>
<!-- 项目负责人 -->
</a-col>
<a-row>
<a-col
:span=
"8"
>
<a-col
:span=
"24"
>
<div
class=
"special-middle"
>
<div
class=
"tb-title"
>
<div>
<span>
项目负责人
</span>
{{
value
.
legalPerson
}}
</div>
</div>
</a-col>
</div>
</a-row>
</a-col>
<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>
职工总数
</div>
<div>
姓名
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
{{
value
.
personName
}}
</div>
{{
value
.
workforce
}}
</div>
</div>
</a-col>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
<div>
性别
</div>
<a-row
type=
"flex"
>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"8"
>
<div>
其中专科以上人员
</div>
<div
class=
"special-middle"
>
</div>
<div>
{{
value
.
sex
}}
</div>
</a-col>
</div>
<a-col
:span=
"8"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
<div>
<a-row
type=
"flex"
>
{{
value
.
specializedPersonnel
}}
<a-col
:span=
"4"
class=
"bg-gray"
>
</div>
<div
class=
"special-middle"
>
</div>
<div>
身份证号
</div>
</a-col>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"8"
>
<div>
研究开发人员
</div>
<div
class=
"special-middle"
>
</div>
<div>
{{
value
.
certId
}}
</div>
</a-col>
</div>
<a-col
:span=
"8"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div>
<div
class=
"special-middle"
>
{{
value
.
researchPersonnel
}}
<div>
学历
</div>
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
</a-row>
-->
<div
class=
"special-middle"
>
<!--
<a-row
type=
"flex"
>
<div>
{{
value
.
educationName
}}
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
开户银行
</div>
</a-row>
</div>
<a-row
type=
"flex"
>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
职称
</div>
<div>
</div>
{{
value
.
depositBank
}}
</a-col>
</div>
<a-col
:span=
"8"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
{{
value
.
titleName
}}
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
银行账号
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
工作单位
</div>
<a-col
:span=
"8"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
<a-col
:span=
"8"
>
{{
value
.
bankAccount
}}
<div
class=
"special-middle"
>
</div>
<div>
{{
value
.
appUnitName
}}
</div>
</div>
</div>
</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>
开户银行地址
</div>
<div>
固定电话
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
{{
value
.
telephone
}}
</div>
{{
value
.
depositBankAddress
}}
</div>
</div>
</a-col>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div>
手机号码
</div>
<div
class=
"special-middle"
>
</div>
<div>
银行联行号
</div>
</a-col>
</div>
<a-col
:span=
"8"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"8"
>
<div>
{{
value
.
mobile
}}
</div>
<div
class=
"special-middle"
>
</div>
<div>
</a-col>
{{
value
.
interbankNumber
}}
</a-row>
</div>
<a-row
type=
"flex"
>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
-->
<div>
电子邮箱
</div>
<!--
<a-row
type=
"flex"
>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"20"
>
<div>
上年度研发经费支出总额(单位:万元)
</div>
<div
class=
"special-middle"
>
</div>
<div>
{{
value
.
email
}}
</div>
</a-col>
</div>
<a-col
:span=
"20"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
<div>
<!-- 项目负责人 end-->
{{
value
.
researchTotal
}}
</div>
<!-- 项目联系人 -->
</div>
<a-row>
</a-col>
<a-col
:span=
"24"
>
</a-row>
<div
class=
"tb-title"
>
<a-row
type=
"flex"
>
<span>
项目联系人
</span>
<a-col
:span=
"4"
class=
"bg-gray"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
上年度是否填报了研发活动情况
</div>
</a-row>
</div>
<a-row
type=
"flex"
>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
姓名
</div>
<div>
</div>
{{
value
.
isResearchActive
}}
</a-col>
</div>
<a-col
:span=
"8"
>
</div>
<div
class=
"special-middle"
>
</a-col>
<div>
{{
value
.
linkName
}}
</div>
</a-row>
</div>
<a-row
type=
"flex"
>
</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>
上一年度填报的研发投入总数(单位:万元)
</div>
<div>
工作单位
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
{{
value
.
linkUnit
}}
</div>
{{
value
.
researchCount
}}
</div>
</div>
</a-col>
</div>
</a-row>
</a-col>
<a-row
type=
"flex"
>
</a-row>
<a-col
:span=
"4"
class=
"bg-gray"
>
<a-row
type=
"flex"
>
<div
class=
"special-middle"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div>
手机号码
</div>
<div
class=
"special-middle"
>
</div>
<div>
上一年度填报的研发人员数
</div>
</a-col>
</div>
<a-col
:span=
"8"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"20"
>
<div>
{{
value
.
linkMobile
}}
</div>
<div
class=
"special-middle"
>
</div>
<div>
</a-col>
{{
value
.
researchPersonCount
}}
<a-col
:span=
"4"
class=
"bg-gray"
>
</div>
<div
class=
"special-middle"
>
</div>
<div>
电子邮箱
</div>
</a-col>
</div>
</a-row>
-->
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
linkEmail
}}
</div>
</div>
</a-col>
</a-row>
<!-- 项目合项目联系人 end-->
<!-- 执行期限 -->
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
执行期限
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目执行期
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
{{
moment
(
value
.
startDate
).
format
(
"YYYY-MM-DD"
)
}}
至
{{
moment
(
value
.
endDate
).
format
(
"YYYY-MM-DD"
)
}}
</div>
</div>
</a-col>
</a-row>
<!-- 执行期限 end-->
<!-- 项目信息 -->
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
所属技术领域
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
所属技术领域
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.technicalField)"
></div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
·
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
国标学科
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
knowledgeName
}}
</div>
</div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
科技报告
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
年度报告
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
annualTechnologyReport
}}
份
</div>
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
中期技术报告
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
midTechnicalReport
}}
份
</div>
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
最终技术报告
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
finalTechnicalReport
}}
份
</div>
</div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
·
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目摘要(300字以内)
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
projAbstract
}}
</div>
</div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
项目投入
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目投入
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
totalFunding
}}
<span>
(万元)
</span></div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
申请自治区资金
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
govFunding
}}
<span>
(万元)
</span></div>
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
单位自筹
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
selfFunding
}}
<span>
(万元)
</span></div>
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
其他
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
otherFunding
}}
<span>
(万元)
</span></div>
</div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
·
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
成果形式
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<para-check
v-model=
"value.results"
:typeId=
"45"
:disabled=
"true"
/>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
国内外研究进展
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.researchProgress"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
研发内容
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.researchContent"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
研究方法和技术路线
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.researchPlan"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
创新点
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.mainFeatures"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
先进性
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.progressiveness"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
申报单位、参与单位科研条件支撑状况
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.supportingConditions"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
负责人及研究团队的科研水平及前期研究基础
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.memResume"
></div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
预期目标
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
技术指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.technologyTarget"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
经济指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.economyTarget"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
成果指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.achievementTarget"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
社会效益
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.socialBenefit"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
其他目标与考核指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"value.otherTarget"
></div>
</a-col>
</a-row>
<!-- 项目安排及阶段目标 -->
<proj-stage-goals-info
:stageGoals
.
sync=
"value.stageGoals"
/>
<!-- 项目经费构成表 -->
<a-row>
<proj-fund-composition-info
<a-col
:span=
"24"
style=
"border-top: 0px"
>
:fundCompositions
.
sync=
"value.fundCompositions"
<div
class=
"tb-title"
>
/>
<span>
项目基本情况
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目名称
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
projName
}}
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目所属二级学院/部门名称(牵头单位)
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
leadUnit
}}
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
推荐部门
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
appUnitName
}}
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项日开始时间
</div>
</div>
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
{{
moment
(
value
.
startDate
).
format
(
'YYYY-MM-DD'
)
}}
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目结束时间
</div>
</div>
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
{{
moment
(
value
.
endDate
).
format
(
'YYYY-MM-DD'
)
}}
</div>
</a-col>
</a-row>
<!--
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目依托的科技创新基地
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
technologyInnovationBase
}}
</div>
</a-col>
</a-row>
-->
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目所属学科类别
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
knowledgeName
}}
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目总经费(万元)
</div>
</div>
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
{{
value
.
totalFunding
}}
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
申请科技经费(万元)
</div>
</div>
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
{{
value
.
govFunding
}}
</div>
</a-col>
</a-row>
<!-- 项目组成员 -->
<a-row
type=
"flex"
>
<proj-group-member-info
:members
.
sync=
"value.members"
/>
<a-col
:span=
"4"
class=
"bg-gray"
>
<a-row
type=
"flex"
>
<div
class=
"special-middle"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div>
项目联系人姓名
</div>
<div
class=
"special-middle"
>
</div>
<div>
项目负责人主要成就、发明及获奖情况
</div>
</a-col>
</div>
<a-col
:span=
"8"
>
</a-col>
<div
class=
"special-middle"
>
<a-col
:span=
"20"
>
{{
value
.
linkName
}}
<div
class=
"special-middle"
>
</div>
<div>
{{
value
.
awardSituation
}}
</div>
</a-col>
</div>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-col>
<div
class=
"special-middle"
>
</a-row>
<div>
联系人手机
</div>
</div>
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
{{
value
.
linkMobile
}}
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
电子邮箱
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
linkEmail
}}
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目摘要(400字以内)
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.projAbstract)"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
关键词
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
projKeywords
}}
</div>
</a-col>
</a-row>
</div>
<div
v-if=
"tabsData[2].isShow"
>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
项目人员情况
</span>
</div>
</a-col>
</a-row>
<!-- 经费预算
-->
<!-- 项目合作单位
-->
<budget-info
:budget
.
sync=
"value.budget
"
/>
<participate-units-info
:dataList
.
sync=
"value.participateUnits
"
/>
<!-- 附件
-->
<!-- 项目组成员
-->
<file-info
:fileList
.
sync=
"value.fileList
"
/>
<project-member-info
:dataList
.
sync=
"value.members
"
/>
<a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"24"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"tb-title"
>
<div
class=
"special-middle"
>
<span>
审核记录
</span>
<div>
总人数
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
<a-col
:span=
"3"
class=
"bg-gray"
>
<a-row>
<div
class=
"special-middle"
>
<a-col
:span=
"24"
>
<div>
高级
</div>
<audit-list
v-model=
"value.auditList"
/>
</div>
</a-col>
</a-col>
</a-row>
<a-col
:span=
"3"
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=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
硕士生
</div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"3"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memHighCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"3"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memMiddleCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"3"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memLowCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memBshCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memBsCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"3"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memSsCount
}}
</div>
</div>
</a-col>
</a-row>
</div>
<div
v-if=
"tabsData[3].isShow"
>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
项目可行性研究情况
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
1、项目的意义、必要性
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.projContent)"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
2、项目现有工作基础和支撑条件
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.memResume)"
></div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
3、在研或完成基础研究项目情况
</span>
</div>
</a-col>
</a-row>
<!-- 在研或完成基础研究项目情况 -->
<project-research-info
:dataList
.
sync=
"value.projectResearchList"
/>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
4、与项目相关的国内外技术发展现状(包括知识产权情况)以及本项目主要研究开发内容技术关键(创新点)、可行性评价及项目风险分析与对策
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.researchProgress)"
></div>
</a-col>
</a-row>
</div>
<div
v-if=
"tabsData[4].isShow"
>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
项目主要实施内容和目标
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目实施目标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.researchContent)"
></div>
</a-col>
</a-row>
</div>
<div
v-if=
"tabsData[5].isShow"
>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
项目考核指标
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
主要技术指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.technologyTarget)"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
主要经济指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.economyTarget)"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目实施中形成的示范基地、中试线、生产线及其规模等
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.achievementTarget)"
></div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
其他应考核的指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
v-html=
"toTextarea(value.otherTarget)"
></div>
</a-col>
</a-row>
</div>
<div
v-if=
"tabsData[6].isShow"
>
<!-- 经费预算 -->
<budget-info
:budget
.
sync=
"value.budget"
/>
<!-- 分年度用款计划 -->
<fund-plan-info
:fundPlan
.
sync=
"value.fundPlan"
/>
<!-- 设备费-购置设备预算明细表 -->
<equipments-info
:equipments
.
sync=
"value.equipments"
/>
<!-- 设备费-购置设备预算明细表 -->
<unit-payment-info
:unitPayment
.
sync=
"value.unitPayment"
/>
</div>
<div
v-if=
"tabsData[7].isShow"
>
<!-- 项目绩效目标表v-if="value.projState >= 50" -->
<project-kpi-info
v-if=
"value.projectKPI"
:projectKPI
.
sync=
"value.projectKPI"
/>
</div>
<div
v-if=
"tabsData[8].isShow"
>
<!-- 项目课题设置 -->
<project-sub-info
:dataList
.
sync=
"value.projectSubList"
/>
</div>
<div
v-if=
"tabsData[9].isShow"
>
<!-- 附件 -->
<file-info
:fileList
.
sync=
"value.fileList"
/>
</div>
<div
v-if=
"tabsData[10].isShow"
>
<!-- 单位科研项目及资金管理制度表 -->
<management-rule-info
:dataList
.
sync=
"value.managementRuleList"
/>
</div>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
moment
from
"moment"
;
import
moment
from
'moment'
import
AuditList
from
"@/views/audit/components/auditInfo"
;
import
projectMemberInfo
from
'@/views/report/project/components/projectMemberInfo'
import
documentView
from
"@/views/components/common/documentView"
;
import
cooperativeUnitsInfo
from
'@/views/report/project/components/cooperativeUnitsInfo'
import
{
toTextarea
}
from
"@/views/utils/common"
;
import
participateUnitsInfo
from
'@/views/report/project/components/participateUnitsInfo'
import
budgetInfo
from
"@/views/report/project/components/keyProject/budgetInfo"
;
import
budgetInfo
from
'@/views/report/project/components/budgetInfo'
import
fileInfo
from
"@/views/report/project/components/keyProject/fileInfo"
;
import
fundPlanInfo
from
'@/views/report/project/components/fundPlanInfo'
import
cooperativeInfo
from
"@/views/report/project/components/keyProject/cooperativeInfo"
;
import
equipmentsInfo
from
'@/views/report/project/components/equipmentsInfo.vue'
import
projStageGoalsInfo
from
"@/views/report/project/components/keyProject/projStageGoalsInfo"
;
import
unitPaymentInfo
from
'@/views/report/project/components/unitPaymentInfo.vue'
import
projFundCompositionInfo
from
"@/views/report/project/components/keyProject/projFundCompositionInfo"
;
import
projectKpiInfo
from
'@/views/report/project/components/projectKpiInfo.vue'
import
projGroupMemberInfo
from
"@/views/report/project/components/keyProject/projGroupMemberInfo"
;
import
projectResearchInfo
from
'@/views/report/project/components/projectResearchInfo'
import
paraCheck
from
'@/views/components/common/paraCheck'
;
import
projectSubInfo
from
'@/views/report/project/components/projectSubInfo'
import
managementRuleInfo
from
'@/views/report/project/components/managementRuleInfo'
import
fileInfo
from
"@/views/report/project/components/fileInfo"
;
import
documentView
from
'@/views/components/common/documentView'
import
AuditList
from
'@/views/audit/components/auditInfo'
import
{
toTextarea
}
from
'@/views/utils/common'
export
default
{
export
default
{
name
:
"ProjectInfo"
,
components
:
{
components
:
{
AuditList
,
projectMemberInfo
,
cooperativeUnitsInfo
,
participateUnitsInfo
,
budgetInfo
,
fundPlanInfo
,
equipmentsInfo
,
unitPaymentInfo
,
projectKpiInfo
,
projectResearchInfo
,
projectSubInfo
,
managementRuleInfo
,
fileInfo
,
AuditList
,
documentView
documentView
,
budgetInfo
,
fileInfo
,
cooperativeInfo
,
projStageGoalsInfo
,
projFundCompositionInfo
,
projGroupMemberInfo
,
paraCheck
,
},
},
data
()
{
name
:
"ProjectInfo"
,
return
{};
data
()
{
return
{
}
},
},
props
:
{
props
:
{
value
:
{
value
:
{
type
:
Object
,
type
:
Object
,
default
:
()
=>
{
default
:
()
=>
{
return
null
;
return
null
},
}
},
tabsData
:
{
type
:
Array
,
default
:
()
=>
{
return
[]
}
},
},
},
},
created
()
{},
created
()
{
mounted
()
{},
if
(
!!!
this
.
tabsData
||
this
.
tabsData
.
length
==
0
)
methods
:
{
this
.
tabsData
=
[
moment
,
{
title
:
'全部'
,
key
:
'0'
,
isShow
:
true
},
toTextarea
,
{
title
:
'基本情况'
,
key
:
'1'
,
isShow
:
true
},
{
title
:
'项目人员情况'
,
key
:
'2'
,
isShow
:
true
},
{
title
:
'项目可行性研究情况'
,
key
:
'3'
,
isShow
:
true
},
{
title
:
'项目实施目标'
,
key
:
'4'
,
isShow
:
true
},
{
title
:
'项目考核指标'
,
key
:
'5'
,
isShow
:
true
},
{
title
:
'项目经费'
,
key
:
'6'
,
isShow
:
true
},
{
title
:
'项目绩效目标表'
,
key
:
'7'
,
isShow
:
true
},
{
title
:
'项目课题设置'
,
key
:
'8'
,
isShow
:
true
},
{
title
:
'附件清单'
,
key
:
'9'
,
isShow
:
true
},
{
title
:
'单位科研项目及资金管理制度'
,
key
:
'10'
,
isShow
:
true
},
{
title
:
'诚信承诺书'
,
key
:
'11'
,
isShow
:
true
},
]
},
mounted
()
{
},
},
};
methods
:
{
moment
,
toTextarea
,
}
}
</
script
>
</
script
>
\ No newline at end of file
src/views/report/project/components/managementRuleEdit.vue
View file @
180ad5d3
...
@@ -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
:
{
...
...
src/views/report/project/components/memberEdit.vue
View file @
180ad5d3
...
@@ -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
}
//
}
})
})
},
},
},
},
...
...
src/views/report/project/components/participateUnitsEdit.vue
0 → 100644
View file @
180ad5d3
<
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
>
src/views/report/project/components/participateUnitsInfo.vue
0 → 100644
View file @
180ad5d3
<
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
>
src/views/report/project/components/projectEdit.vue
View file @
180ad5d3
...
@@ -4,164 +4,216 @@
...
@@ -4,164 +4,216 @@
<a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px;text-align: center;"
>
<a-col
:span=
"24"
style=
"border-top: 0px;text-align: center;"
>
<div
class=
"main-title"
>
<div
class=
"main-title"
>
<span>
基本情况
</span>
<span>
项目
基本情况
</span>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
<a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<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"
>
<a-row
type=
"flex"
>
<a-col
:span=
"
4
"
class=
"bg-gray"
>
<a-col
:span=
"
3
"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
单位名称
</div>
<div>
姓名
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"
20
"
>
<a-col
:span=
"
5
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item>
<a-form-model-item>
<div>
{{
formData
.
app
Unit
Name
}}
</div>
<div>
{{
formData
.
app
Person
Name
}}
</div>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
<a-col
:span=
"3"
class=
"bg-gray"
>
<a-row
type=
"flex"
>
<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=
"
8
"
>
<a-col
:span=
"
5
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item>
<a-form-model-item>
<div>
{{
formData
.
unitTypeName
}}
</div>
<div>
{{
formData
.
sex
}}
</div>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"
4
"
class=
"bg-gray"
>
<a-col
:span=
"
3
"
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=
"
8
"
>
<a-col
:span=
"
5
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"organizationCode"
>
<a-form-model-item>
<a-input
placeholder=
"组织机构代码/统一社会信用代码"
v-model=
"formData.organizationCode"
:maxLength=
"100"
style=
"width:80%"
/>
{{
moment
(
formData
.
birthday
).
format
(
'YYYY-MM-DD'
)
}}
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</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=
"
3
"
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=
"20"
>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
nationName
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
学位
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item>
<div>
{{
formData
.
degreeName
}}
</div>
</a-form-model-item>
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
职称
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"address"
>
<a-form-model-item>
<a-input
placeholder=
"通讯地址"
v-model=
"formData.address"
:maxLength=
"100"
style=
"width:80%"
/>
{{
formData
.
titleName
}}
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</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=
"
3
"
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=
"
8
"
>
<a-col
:span=
"
5
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"registeredAddress"
>
<a-form-model-item>
<
a-input
placeholder=
"注册所在地"
v-model=
"formData.registeredAddress"
:maxLength=
"100"
style=
"width:80%"
/
>
<
div>
{{
formData
.
mobile
}}
</div
>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"
4
"
class=
"bg-gray"
>
<a-col
:span=
"
3
"
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=
"
8
"
>
<a-col
:span=
"
5
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"postCode"
>
<a-form-model-item>
<a-input
placeholder=
"邮编"
v-model=
"formData.postCode"
:maxLength=
"10"
style=
"width:80%"
/>
<div>
{{
formData
.
email
}}
</div>
</a-form-model-item>
</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=
"5"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"jobTime"
>
<a-input-number
v-model=
"formData.jobTime"
:min=
"0"
:max=
"12"
:step=
"1"
style=
"width: 100px"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</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=
"
3
"
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=
"
8
"
>
<a-col
:span=
"
21
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"legalPerson"
>
<a-form-model-item>
<
a-input
placeholder=
"法定代表人"
v-model=
"formData.legalPerson"
:maxLength=
"50"
style=
"width:80%"
/
>
<
div>
{{
formData
.
address
}}
</div
>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"3"
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=
"
8
"
>
<a-col
:span=
"
21
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"workforce"
>
<a-form-model-item>
<
a-input-number
v-model=
"formData.workforce"
:min=
"0"
:step=
"1"
style=
"width: 100px"
/
>
<
div>
{{
formData
.
appUnitName
}}
</div
>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</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=
"
3
"
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=
"
8
"
>
<a-col
:span=
"
21
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
specializedPersonnel
"
>
<a-form-model-item
prop=
"
mainResearchAreas
"
>
<a-
input-number
v-model=
"formData.specializedPersonnel"
:min=
"0"
:step=
"1"
style=
"width: 100
px"
/>
<a-
textarea
placeholder=
"主要研究领域"
v-model=
"formData.mainResearchAreas"
:maxLength=
"300"
style=
"width: 80%; height: 160px; margin-top: 12
px"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
申请单位信息
</span>
</div>
</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
>
单位名称
</div>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"
8
"
>
<a-col
:span=
"
20
"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"researchPersonnel"
>
<a-form-model-item>
<
a-input-number
v-model=
"formData.researchPersonnel"
:min=
"0"
:step=
"1"
style=
"width: 100px"
/
>
<
div>
{{
formData
.
appUnitName
}}
</div
>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
...
@@ -170,28 +222,28 @@
...
@@ -170,28 +222,28 @@
<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>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
depositBank
"
>
<a-form-model-item
prop=
"
unitLinkName
"
>
<a-input
placeholder=
"
开户银行"
v-model=
"formData.depositBank
"
:maxLength=
"100"
style=
"width:80%"
/>
<a-input
placeholder=
"
联系人"
v-model=
"formData.unitLinkName
"
:maxLength=
"100"
style=
"width:80%"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</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>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
bankAccount
"
>
<a-form-model-item
prop=
"
unitLinkMobile
"
>
<a-input
placeholder=
"
银行账号"
v-model=
"formData.bankAccount
"
:maxLength=
"100"
style=
"width:80%"
/>
<a-input
placeholder=
"
电话"
v-model=
"formData.unitLinkMobile
"
:maxLength=
"100"
style=
"width:80%"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
...
@@ -200,33 +252,37 @@
...
@@ -200,33 +252,37 @@
<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>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
depositBankAddress
"
>
<a-form-model-item
prop=
"
unitLinkEmail
"
>
<a-input
placeholder=
"
开户银行地址"
v-model=
"formData.depositBankAddress
"
:maxLength=
"100"
style=
"width:80%"
/>
<a-input
placeholder=
"
电子信箱"
v-model=
"formData.unitLinkEmail
"
:maxLength=
"100"
style=
"width:80%"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</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>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div
class=
"special-middle"
>
<div>
<div>
<a-form-model-item
prop=
"
interbankNumber
"
>
<a-form-model-item
prop=
"
unitLinkFax
"
>
<a-input
placeholder=
"
开户银行地址"
v-model=
"formData.interbankNumber
"
:maxLength=
"100"
style=
"width:80%"
/>
<a-input
placeholder=
"
传真"
v-model=
"formData.unitLinkFax
"
:maxLength=
"100"
style=
"width:80%"
/>
</a-form-model-item>
</a-form-model-item>
</div>
</div>
</div>
</div>
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 项目合作单位 -->
<cooperative-units-edit
:cooperativeUnits
.
sync=
"formData.cooperativeUnits"
/>
<!--
<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"
>
...
@@ -311,7 +367,7 @@
...
@@ -311,7 +367,7 @@
</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>
...
@@ -334,108 +390,98 @@
...
@@ -334,108 +390,98 @@
<div>
{{
formData
.
appUnitName
}}
</div>
<div>
{{
formData
.
appUnitName
}}
</div>
</div>
</div>
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"
8
"
>
<a-col
:span=
"
20
"
>
<a-form-model-item
prop=
"
startDate"
style=
"width:200px;display: inline-block;
"
>
<a-form-model-item
prop=
"
knowledgeId
"
>
<
a-date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.startDate"
@
change=
"startDateChange"
style=
"width: 180px
"
/>
<
para-multi-select
v-model=
"formData.knowledgeId"
:typeId=
"57
"
/>
</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=
"8"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"
endDate"
style=
"width:200px;display: inline-block;
"
>
<a-form-model-item
prop=
"
subjectScope
"
>
<a-
date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.endDate"
@
change=
"endDateChange"
style=
"width: 180px
"
/>
<a-
input
placeholder=
"选题范围"
v-model=
"formData.subjectScope"
:maxLength=
"100"
style=
"width: 80%
"
/>
</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=
"
technologyInnovationBase
"
>
<a-form-model-item
prop=
"
projClass
"
>
<a-input
placeholder=
"项目
依托的科技创新基地"
v-model=
"formData.technologyInnovationBase
"
:maxLength=
"100"
style=
"width: 80%"
/>
<a-input
placeholder=
"项目
类别"
v-model=
"formData.projClass
"
:maxLength=
"100"
style=
"width: 80%"
/>
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"20"
>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"
knowledgeId
"
>
<a-form-model-item
prop=
"
projClass
"
>
<
para-multi-select
v-model=
"formData.knowledgeId"
:typeId=
"57
"
/>
<
a-input
placeholder=
"附注说明"
v-model=
"formData.remark"
:maxLength=
"100"
style=
"width: 80%
"
/>
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"totalFunding"
>
<a-form-model-item
prop=
"startDate"
style=
"width:200px;display: inline-block;"
>
<a-input-number
v-model=
"formData.totalFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<a-date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.startDate"
@
change=
"startDateChange"
style=
"width: 180px"
/>
<span>
单位:万元
</span>
</a-form-model-item>
</a-form-model-item>
</a-col>
</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>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"govFunding"
>
<a-form-model-item
prop=
"endDate"
style=
"width:200px;display: inline-block;"
>
<a-input-number
v-model=
"formData.govFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<a-date-picker
format=
"YYYY-MM-DD"
valueFormat=
"YYYY-MM-DD HH:mm:ss"
v-model=
"formData.endDate"
@
change=
"endDateChange"
style=
"width: 180px"
/>
<span>
单位:万元
</span>
</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>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"linkName"
>
<a-form-model-item
prop=
"totalFunding"
>
<a-input
placeholder=
"项目联系人姓名"
v-model=
"formData.linkName"
:maxLength=
"100"
style=
"width: 80%"
/>
<a-input-number
v-model=
"formData.totalFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
<span>
单位:万元
</span>
</a-form-model-item>
</a-form-model-item>
</a-col>
</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>
</div>
</div>
</a-col>
</a-col>
<a-col
:span=
"8"
>
<a-col
:span=
"8"
>
<a-form-model-item
prop=
"linkMobile"
>
<a-form-model-item
prop=
"govFunding"
>
<a-input
placeholder=
"联系人手机"
v-model=
"formData.linkMobile"
:maxLength=
"100"
style=
"width: 80%"
/>
<a-input-number
v-model=
"formData.govFunding"
:min=
"0"
:step=
"0.01"
style=
"width: 100px"
/>
</a-form-model-item>
<span>
单位:万元
</span>
</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=
"linkEmail"
>
<a-input
placeholder=
"电子邮箱"
v-model=
"formData.linkEmail"
:maxLength=
"100"
style=
"width: 80%"
/>
</a-form-model-item>
</a-form-model-item>
</a-col>
</a-col>
</a-row>
</a-row>
...
@@ -472,141 +518,9 @@
...
@@ -472,141 +518,9 @@
</a-col>
</a-col>
</a-row>
</a-row>
<!-- 项目合作单位 -->
<cooperative-units-edit
:cooperativeUnits
.
sync=
"formData.cooperativeUnits"
/>
<!-- 项目组成员 -->
<!-- 项目组成员 -->
<project-member-edit
:dataList
.
sync=
"formData.members"
/>
<project-member-edit
:dataList
.
sync=
"formData.members"
/>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
项目可行性研究情况
</span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"required"
>
1、立项依据、研究内容、意义及必要性
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"projContent"
>
<a-textarea
placeholder=
"立项依据、研究内容、意义及必要性"
v-model=
"formData.projContent"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"required"
>
2、项目现有工作基础和支撑条件
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"memResume"
>
<a-textarea
placeholder=
"项目现有工作基础和支撑条件"
v-model=
"formData.memResume"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title "
>
<span
style=
"color: rgba(0, 0, 0, 0.65);"
>
3、在研或完成基础研究项目情况
</span>
</div>
</a-col>
</a-row>
<!-- 在研或完成基础研究项目情况 -->
<project-research-edit
:projectResearchList
.
sync=
"formData.projectResearchList"
/>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"required"
>
4、与项目相关的国内外技术发展现状(包括知识产权情况)以及本项目主要研究开发内容技术关键(创新点)、可行性评价及项目风险分析与对策
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"researchProgress"
>
<a-textarea
placeholder=
"与项目相关的国内外技术发展现状"
v-model=
"formData.researchProgress"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"main-title"
>
<span>
项目主要实施内容和目标
</span>
</div>
</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=
"researchContent"
>
<a-textarea
placeholder=
"项目实施目标"
v-model=
"formData.researchContent"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
style=
"border-top: 0px"
>
<div
class=
"tb-title"
>
<span>
项目考核指标
</span>
</div>
</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=
"technologyTarget"
>
<a-textarea
placeholder=
"主要技术指标"
v-model=
"formData.technologyTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</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=
"economyTarget"
>
<a-textarea
placeholder=
"主要经济指标"
v-model=
"formData.economyTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目实施中形成的示范基地、中试线、生产线及其规模等
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"achievementTarget"
>
<a-textarea
placeholder=
"项目实施中形成的示范基地、中试线、生产线及其规模等"
v-model=
"formData.achievementTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
其他应考核的指标
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<a-form-model-item
prop=
"otherTarget"
>
<a-textarea
placeholder=
"其他应考核的指标"
v-model=
"formData.otherTarget"
:maxLength=
"10000"
style=
"width: 80%; height: 160px; margin-top: 12px"
/>
</a-form-model-item>
</a-col>
</a-row>
<!-- 经费预算 -->
<!-- 经费预算 -->
<budget-edit
:budget
.
sync=
"formData.budget"
/>
<budget-edit
:budget
.
sync=
"formData.budget"
/>
<!-- 分年度用款计划 -->
<!-- 分年度用款计划 -->
...
@@ -617,13 +531,7 @@
...
@@ -617,13 +531,7 @@
<unit-payment-edit
:unitPayment
.
sync=
"formData.unitPayment"
/>
<unit-payment-edit
:unitPayment
.
sync=
"formData.unitPayment"
/>
<!-- 项目绩效指标 -->
<!-- 项目绩效指标 -->
<project-kpi-edit
:projectKPI
.
sync=
"formData.projectKPI"
/>
<project-kpi-edit
:projectKPI
.
sync=
"formData.projectKPI"
/>
<!-- 项目课题设置 -->
<project-sub-edit
:projectSubList
.
sync=
"formData.projectSubList"
/>
<!-- 单位科研项目及资金管理制度表 -->
<management-rule-edit
:managementRuleList
.
sync=
"formData.managementRuleList"
/>
<!-- 附件 -->
<!-- 附件 -->
<file-edit
:fileList
.
sync=
"formData.fileList"
/>
<file-edit
:fileList
.
sync=
"formData.fileList"
/>
</a-form-model>
</a-form-model>
...
@@ -637,6 +545,7 @@ import paraSelect from '@/views/components/common/paraSelect'
...
@@ -637,6 +545,7 @@ import paraSelect from '@/views/components/common/paraSelect'
import
baseSelect
from
'@/views/components/common/baseSelect'
import
baseSelect
from
'@/views/components/common/baseSelect'
import
projectMemberEdit
from
'@/views/report/project/components/projectMemberEdit'
import
projectMemberEdit
from
'@/views/report/project/components/projectMemberEdit'
import
cooperativeUnitsEdit
from
'@/views/report/project/components/cooperativeUnitsEdit'
import
cooperativeUnitsEdit
from
'@/views/report/project/components/cooperativeUnitsEdit'
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
equipmentsEdit
from
'@/views/report/project/components/equipmentsEdit.vue'
...
@@ -653,10 +562,12 @@ import moment from 'moment'
...
@@ -653,10 +562,12 @@ import moment from 'moment'
const
ProjResearch
=
{
projNo
:
null
,
projName
:
null
,
approveUnit
:
null
,
leader
:
null
,
startDate
:
null
,
endDate
:
null
,
funds
:
null
}
const
ProjResearch
=
{
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
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
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
}
const
Cooperative
=
{
id
:
null
,
unitName
:
null
}
const
Members
=
{
name
:
null
,
sex
:
null
,
birthday
:
null
,
certificateType
:
null
,
certId
:
null
,
nation
:
null
,
country
:
null
,
workUnit
:
null
,
title
:
null
,
degree
:
null
,
email
:
null
,
mobile
:
null
,
telephone
:
null
,
fax
:
null
,
projWork
:
null
,
forMonths
:
null
,
spec
:
null
}
const
ParticipateUnit
=
{
id
:
null
,
unitName
:
null
,
unitCountry
:
null
,
unitAddress
:
null
,
organizationCode
:
null
,
projectWork
:
null
}
const
Members
=
{
name
:
null
,
sex
:
null
,
birthday
:
null
,
certificateType
:
null
,
certId
:
null
,
nation
:
null
,
country
:
null
,
workUnit
:
null
,
title
:
null
,
degree
:
null
,
email
:
null
,
mobile
:
null
,
telephone
:
null
,
fax
:
null
,
projWork
:
null
,
forMonths
:
null
,
spec
:
null
,
fileId
:
null
,
downloadId
:
null
,
fileName
:
null
,
downloadUrl
:
null
}
const
Equipment
=
{
id
:
""
,
objectId
:
""
,
name
:
""
,
functionTarget
:
""
,
specificationType
:
""
,
quantity
:
1
,
totalBudget
:
0.00
,
useFrom
:
""
,
buyUnit
:
""
,
storageLocation
:
""
,
equipmentType
:
""
,
manufacturer
:
""
,
sharedScope
:
""
,
unitPrice
:
0.00
,
}
const
Equipment
=
{
id
:
""
,
objectId
:
""
,
name
:
""
,
functionTarget
:
""
,
specificationType
:
""
,
quantity
:
1
,
totalBudget
:
0.00
,
useFrom
:
""
,
buyUnit
:
""
,
storageLocation
:
""
,
equipmentType
:
""
,
manufacturer
:
""
,
sharedScope
:
""
,
unitPrice
:
0.00
,
}
const
File
=
{
fileName
:
''
,
downloadUrl
:
''
,
fileExplain
:
''
,
downloadId
:
''
}
const
File
=
{
fileName
:
''
,
downloadUrl
:
''
,
fileExplain
:
''
,
downloadId
:
''
}
const
projectKPI
=
{
const
projectKPI
=
{
reportYear
:
""
,
reportYear
:
""
,
projName
:
""
,
projName
:
""
,
...
@@ -695,7 +606,7 @@ const projectKPI = {
...
@@ -695,7 +606,7 @@ const projectKPI = {
export
default
{
export
default
{
name
:
'projectEdit'
,
name
:
'projectEdit'
,
components
:
{
components
:
{
paraMultiSelect
,
paraSelect
,
baseSelect
,
projectMemberEdit
,
cooperativeUnitsEdit
,
budgetEdit
,
fundPlanEdit
,
equipmentsEdit
,
unitPaymentEdit
,
projectKpiEdit
,
projectResearchEdit
,
projectSubEdit
,
managementRuleEdit
,
fileEdit
paraMultiSelect
,
paraSelect
,
baseSelect
,
projectMemberEdit
,
cooperativeUnitsEdit
,
participateUnitsEdit
,
budgetEdit
,
fundPlanEdit
,
equipmentsEdit
,
unitPaymentEdit
,
projectKpiEdit
,
projectResearchEdit
,
projectSubEdit
,
managementRuleEdit
,
fileEdit
},
},
props
:
{
props
:
{
value
:
{
value
:
{
...
@@ -715,6 +626,8 @@ export default {
...
@@ -715,6 +626,8 @@ export default {
id
:
null
,
id
:
null
,
organizationCode
:
null
,
organizationCode
:
null
,
address
:
null
,
address
:
null
,
jobTime
:
null
,
mainResearchAreas
:
null
,
registeredAddress
:
null
,
registeredAddress
:
null
,
postCode
:
null
,
postCode
:
null
,
legalPerson
:
null
,
legalPerson
:
null
,
...
@@ -758,6 +671,7 @@ export default {
...
@@ -758,6 +671,7 @@ export default {
projectKPI
:
projectKPI
,
projectKPI
:
projectKPI
,
unitPayment
:
[],
unitPayment
:
[],
cooperativeUnits
:
[],
cooperativeUnits
:
[],
participateUnits
:
[],
members
:
[],
members
:
[],
budget
:
[],
budget
:
[],
fundPlan
:
[],
fundPlan
:
[],
...
@@ -768,8 +682,9 @@ export default {
...
@@ -768,8 +682,9 @@ export default {
fileList
:
[],
fileList
:
[],
},
},
rules
:
{
rules
:
{
mainResearchAreas
:
[{
required
:
true
,
message
:
'请填写主要研究领域'
,
trigger
:
'blur'
},],
jobTime
:
[{
required
:
true
,
message
:
'请填写每年工作时间(月)'
,
trigger
:
'blur'
},],
organizationCode
:
[{
required
:
true
,
message
:
'请填写组织机构代码/统一社会信用代码'
,
trigger
:
'blur'
},],
organizationCode
:
[{
required
:
true
,
message
:
'请填写组织机构代码/统一社会信用代码'
,
trigger
:
'blur'
},],
address
:
[{
required
:
true
,
message
:
'请填写通讯地址'
,
trigger
:
'blur'
},],
registeredAddress
:
[{
required
:
true
,
message
:
'请填写注册所在地'
,
trigger
:
'blur'
},],
registeredAddress
:
[{
required
:
true
,
message
:
'请填写注册所在地'
,
trigger
:
'blur'
},],
postCode
:
[{
required
:
true
,
message
:
'请填写邮编'
,
trigger
:
'blur'
},],
postCode
:
[{
required
:
true
,
message
:
'请填写邮编'
,
trigger
:
'blur'
},],
legalPerson
:
[{
required
:
true
,
message
:
'请填写法定代表人'
,
trigger
:
'blur'
},],
legalPerson
:
[{
required
:
true
,
message
:
'请填写法定代表人'
,
trigger
:
'blur'
},],
...
@@ -785,7 +700,7 @@ export default {
...
@@ -785,7 +700,7 @@ export default {
// researchCount: [{ required: true, message: '请填写上一年度填报的研发投入总数', trigger: 'blur' },],
// researchCount: [{ required: true, message: '请填写上一年度填报的研发投入总数', trigger: 'blur' },],
// researchPersonCount: [{ required: true, message: '请填写上一年度填报的研发人员数', trigger: 'blur' },],
// researchPersonCount: [{ required: true, message: '请填写上一年度填报的研发人员数', trigger: 'blur' },],
projName
:
[{
required
:
true
,
message
:
'请填写项目名称'
,
trigger
:
'blur'
},],
projName
:
[{
required
:
true
,
message
:
'请填写项目名称'
,
trigger
:
'blur'
},],
leadUnit
:
[{
required
:
true
,
message
:
'请填写项目所属二级学院/部门名称(牵头单位)'
,
trigger
:
'blur'
},],
//
leadUnit: [{ required: true, message: '请填写项目所属二级学院/部门名称(牵头单位)', trigger: 'blur' },],
// recommendUnit: [{ required: false, message: '请填写推荐部门', trigger: 'blur' },],
// recommendUnit: [{ required: false, message: '请填写推荐部门', trigger: 'blur' },],
startDate
:
{
required
:
true
,
message
:
'请选择项日开始时间'
,
trigger
:
'change'
},
startDate
:
{
required
:
true
,
message
:
'请选择项日开始时间'
,
trigger
:
'change'
},
endDate
:
{
required
:
true
,
message
:
'请选择项目结束时间'
,
trigger
:
'change'
},
endDate
:
{
required
:
true
,
message
:
'请选择项目结束时间'
,
trigger
:
'change'
},
...
@@ -845,16 +760,23 @@ export default {
...
@@ -845,16 +760,23 @@ export default {
}
}
},
},
loadList
()
{
loadList
()
{
if
(
!!!
this
.
formData
.
participateUnits
||
this
.
formData
.
participateUnits
.
length
==
0
)
this
.
formData
.
participateUnits
=
[{
...
ParticipateUnit
}]
if
(
!!!
this
.
formData
.
cooperativeUnits
||
this
.
formData
.
cooperativeUnits
.
length
==
0
)
this
.
formData
.
cooperativeUnits
=
[{
...
Cooperative
},
{
...
Cooperative
}]
if
(
!!!
this
.
formData
.
projectResearchList
||
this
.
formData
.
projectResearchList
.
length
==
0
)
if
(
!!!
this
.
formData
.
projectResearchList
||
this
.
formData
.
projectResearchList
.
length
==
0
)
this
.
formData
.
projectResearchList
=
[{
...
ProjResearch
}]
this
.
formData
.
projectResearchList
=
[{
...
ProjResearch
}]
if
(
!!!
this
.
formData
.
managementRuleList
||
this
.
formData
.
managementRuleList
.
length
==
0
)
if
(
!!!
this
.
formData
.
managementRuleList
||
this
.
formData
.
managementRuleList
.
length
==
0
)
this
.
formData
.
managementRuleList
=
[{
...
ManagementRule
}]
this
.
formData
.
managementRuleList
=
[{
...
ManagementRule
}]
if
(
!!!
this
.
formData
.
projectSubList
||
this
.
formData
.
projectSubList
.
length
==
0
)
if
(
!!!
this
.
formData
.
projectSubList
||
this
.
formData
.
projectSubList
.
length
==
0
)
this
.
formData
.
projectSubList
=
[{
...
ProjectSub
}]
this
.
formData
.
projectSubList
=
[{
...
ProjectSub
}]
if
(
!!!
this
.
formData
.
cooperativeUnits
||
this
.
formData
.
cooperativeUnits
.
length
==
0
)
this
.
formData
.
cooperativeUnits
=
[{
...
Cooperative
}]
if
(
!!!
this
.
formData
.
members
||
this
.
formData
.
members
.
length
==
0
)
if
(
!!!
this
.
formData
.
members
||
this
.
formData
.
members
.
length
==
0
)
this
.
formData
.
members
=
[]
this
.
formData
.
members
=
[{
...
Members
}]
if
(
!!!
this
.
formData
.
equipments
||
!
this
.
formData
.
equipments
.
length
||
this
.
formData
.
equipments
.
length
==
0
)
{
if
(
!!!
this
.
formData
.
equipments
||
!
this
.
formData
.
equipments
.
length
||
this
.
formData
.
equipments
.
length
==
0
)
{
this
.
formData
.
equipments
=
[]
this
.
formData
.
equipments
=
[]
}
}
...
...
src/views/report/project/components/projectInfo.vue
View file @
180ad5d3
...
@@ -433,7 +433,7 @@
...
@@ -433,7 +433,7 @@
</a-row>
</a-row>
<!-- 项目合作单位 -->
<!-- 项目合作单位 -->
<
cooperative-units-info
:dataList
.
sync=
"value.cooperativ
eUnits"
/>
<
participate-units-info
:dataList
.
sync=
"value.participat
eUnits"
/>
<!-- 项目组成员 -->
<!-- 项目组成员 -->
<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
()
{
...
...
src/views/report/project/components/projectMemberEdit.vue
View file @
180ad5d3
...
@@ -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
.
nation
Name
}}
{{
item
.
degree
Name
}}
</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
.
degreeNam
e
}}
{{
item
.
mobil
e
}}
</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
:
{},
...
...
src/views/report/project/components/projectMemberInfo.vue
View file @
180ad5d3
...
@@ -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>
...
...
src/views/report/project/components/projectSubEdit.vue
View file @
180ad5d3
...
@@ -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
:
{
...
...
src/views/report/project/components/projectView.vue
View file @
180ad5d3
...
@@ -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
:
[],
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment