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
a74ef9da
Commit
a74ef9da
authored
Dec 13, 2024
by
徐俊
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
xujun
parent
cf2694e8
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
574 additions
and
672 deletions
+574
-672
projectInfo.vue
src/views/evaluation/components/projectInfo.vue
+425
-620
projectView.vue
src/views/evaluation/components/projectView.vue
+148
-51
index.vue
src/views/evaluation/index.vue
+1
-1
No files found.
src/views/evaluation/components/projectInfo.vue
View file @
a74ef9da
<
template
>
<div
class=
"from-table font-line-space"
>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
研究项目
</span><span
v-if=
"value.isBasic"
>
(基层项目)
</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
.
projName
}}
<span
v-if=
"value.englishName"
>
/
</span>
{{
value
.
englishName
}}
</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=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
appUnitName
}}
</div>
</div>
</a-col>
-->
<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
.
applyMoney
}}
(万元)
</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>
{{
value
.
isAccept
}}
</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>
{{
value
.
isOverseas
}}
</div>
<div>
{{
value
.
overseasRemark
}}
</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=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
knowledgeName
}}
</div>
</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"
>
<div>
{{
value
.
anticipatedName
}}
</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=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
reportYear
}}
</div>
</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"
>
<div>
{{
moment
(
value
.
startDate
).
format
(
'YYYY-MM-DD'
)
}}
至
{{
moment
(
value
.
endDate
).
format
(
'YYYY-MM-DD'
)
}}
</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>
{{
value
.
projKeywords
}}
<span
v-if=
"value.keywordsEnglish"
>
/
</span>
{{
value
.
keywordsEnglish
}}
</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"
class=
"row_center"
>
<a-col
:span=
"2"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
总人数
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
高级
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
中级
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
初级
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
博士后
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
博士生
</div>
</div>
</a-col>
<a-col
:span=
"3"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
硕士生
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
学士
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray flex-gray"
>
<div
class=
"special-middle"
>
<div>
参加单位数
</div>
</div>
</a-col>
</a-row>
<div
class=
"from-table font-line-space"
v-if=
"tabsData[0].isShow"
>
<div
v-if=
"tabsData[1].isShow"
>
<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-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=
"3"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
姓名
</div>
</div>
</a-col>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
appPersonName
}}
</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>
{{
value
.
sex
}}
</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>
{{
moment
(
value
.
birthday
).
format
(
'YYYY-MM-DD'
)
}}
</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>
{{
value
.
nationName
}}
</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>
{{
value
.
degreeName
}}
</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>
{{
value
.
titleName
}}
</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>
{{
value
.
mobile
}}
</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>
{{
value
.
email
}}
</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>
{{
value
.
jobTime
}}
</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=
"21"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
address
}}
</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=
"21"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
appUnitName
}}
</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=
"21"
>
<div
class=
"special-middle"
>
<div
v-html=
"toTextarea(value.mainResearchAreas)"
></div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"2"
>
<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=
"3"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memBshCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"3"
>
<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-col
:span=
"2"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
memXsCount
}}
</div>
</div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
workCount
}}
</div>
</div>
</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>
单位名称
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
appUnitName
}}
</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=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
unitLinkName
}}
</div>
</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"
>
<div>
{{
value
.
unitLinkMobile
}}
</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=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
unitLinkEmail
}}
</div>
</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"
>
<div>
{{
value
.
unitLinkFax
}}
</div>
</div>
</a-col>
</a-row>
<!--
<a-row
type=
"flex"
>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
总人数
</div>
<div>
{{
value
.
memCount
}}
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
高职
</div>
<div>
{{
value
.
memHighCount
}}
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
中职
</div>
<div>
{{
value
.
memMiddleCount
}}
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
初职
</div>
<div>
{{
value
.
memLowCount
}}
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
博士研究生
</div>
<div>
{{
value
.
memBsCount
}}
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
硕士研究生
</div>
<div>
{{
value
.
memSsCount
}}
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
其他
</div>
<div>
{{
value
.
memOtherCount
}}
</div>
</a-col>
<a-col
:flex=
"0.5"
class=
"bg-gray flex-gray"
>
<div
style=
"line-height: 80px;"
>
其中
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
博士
</div>
<div>
{{
value
.
memDegree1
}}
</div>
</a-col>
<a-col
:flex=
"1"
>
<div
class=
"bg-gray"
>
硕士
</div>
<div>
{{
value
.
memDegree2
}}
</div>
</a-col>
</a-row>
-->
<cooperative-units-info
:cooperativeUnits
.
sync=
"value.cooperativeUnits"
/>
-->
<!-- 项目合作单位 -->
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
经费预算
<strong>
(单位:万元)
</strong></span>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"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=
"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=
"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-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
人民币(万元)
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
totalFunding
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
govFunding
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
unitFunding
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
selfFunding
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
>
<div
class=
"special-middle"
>
<div>
{{
value
.
otherFunding
}}
</div>
</div>
</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>
项目名称
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
{{
value
.
projName
}}
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<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=
"16"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
计算依据及理由
</div>
</div>
</a-col>
</a-row>
<div
v-for=
"(item, index) in value.budget"
>
<a-row
:key=
"'budget' + index"
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"4"
>
<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"
>
<div>
{{
item
.
budgetName
}}
</div>
{{
value
.
subjectScope
}}
</div>
</a-col>
<a-col
:span=
"4"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
{{
item
.
totalBudget
}}
</div>
<div>
项目类别
</div>
</div>
</a-col>
<a-col
:span=
"
16
"
>
<a-col
:span=
"
8
"
>
<div
class=
"special-middle"
>
<div>
{{
item
.
calculationBasis
}}
</div>
{{
value
.
projClass
}}
</div>
</a-col>
</a-row>
</div>
<a-row
type=
"flex"
class=
"row_center"
>
<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=
"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=
"8"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
用途
</div>
</div>
</a-col>
</a-row>
<div
v-for=
"(item, index) in value.equipments"
>
<a-row
:key=
"'equipments' + index"
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"4"
>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
{{
item
.
name
}}
</div>
<div>
附注说明
</div>
</div>
</a-col>
<a-col
:span=
"
4
"
>
<a-col
:span=
"
20
"
>
<div
class=
"special-middle"
>
<div>
{{
item
.
specificationType
}}
</div>
{{
value
.
remark
}}
</div>
</a-col>
<a-col
:span=
"4"
>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
{{
item
.
quantity
}}
</div>
<div>
项日开始时间
</div>
</div>
</a-col>
<a-col
:span=
"
4
"
>
<a-col
:span=
"
8
"
>
<div
class=
"special-middle"
>
<div>
{{
item
.
totalBudget
}}
</div>
{{
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"
>
<div>
{{
item
.
useFrom
}}
</div>
{{
moment
(
value
.
endDate
).
format
(
'YYYY-MM-DD'
)
}}
</div>
</a-col>
</a-row>
</div>
<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.projContent)"
></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=
"toTextarea(value.projBasis)"
></div>
<a-layout-content
style=
"margin-top:10px;"
v-if=
"value.projReference"
>
<span
style=
"font-weight:bold;"
>
参考文献:
</span>
<div
v-html=
"toTextarea(value.projReference.replace('参考文献:', '').replace('参考文献:', ''))"
></div>
</a-layout-content>
</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=
"toTextarea(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=
"toTextarea(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=
"toTextarea(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=
"toTextarea(value.studyPlan)"
></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.expectedResults)"
></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=
"toTextarea(value.workFoundation)"
></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.workingConditions)"
></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.memResume)"
></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.researchProjects)"
></div>
</a-col>
</a-row>
-->
<a-row>
<a-col
:span=
"24"
>
<div
class=
"tb-title"
>
<span>
附件
<strong
style=
"margin-left:20px;"
>
注:技术路线、项目组成员签字
<span
style=
"color:red;"
>
*
</span>
、伦理审批件
<span
style=
"color:red;"
>
*
</span>
、科研诚信承诺书
<span
style=
"color:red;"
>
*
</span>
、查新报告
<span
style=
"color:red;"
>
*
</span>
、合作单位盖章页等文件(
<span
style=
"color:red;"
>
*
</span>
为必须上传的附件)
</strong></span>
</div>
</a-col>
</a-row>
<!--
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"2"
class=
"bg-gray"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div>
序号
</div>
</div>
</a-col>
<a-col
:span=
"10"
class=
"bg-gray"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div>
文件名
</div>
</div>
</a-col>
<a-col
:span=
"10"
class=
"bg-gray"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div>
附件说明
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div>
操作
</div>
</div>
</a-col>
</a-row>
-->
<!--
<a-row
v-for=
"(item, index) in value.fileList"
:key=
"'appendix' + index"
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"2"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div>
{{
index
+
1
}}
</div>
</div>
</a-col>
<a-col
:span=
"10"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div
v-if=
"item.fileName"
style=
"text-align: left;"
>
<document-view
:fileUrl=
"item.downloadUrl"
:fileName=
"item.fileName"
:imageArray=
"[item.downloadUrl]"
></document-view>
</div>
<div
v-else
>
无
</div>
</div>
</a-col>
<a-col
:span=
"10"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div>
{{
item
.
fileExplain
}}
<span
v-if=
"item.required"
style=
"color:red;"
>
*
</span></div>
</div>
</a-col>
<a-col
:span=
"2"
style=
"text-align: center;"
>
<div
class=
"special-middle"
>
<div
v-if=
"item.downloadUrl"
><a
:href=
"item.downloadUrl"
:download=
"item.fileName"
>
下载
</a></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>
<a-col
:span=
"24"
>
<audit-list
v-model=
"value.auditList"
/>
</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"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
项目摘要(400字以内)
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div
v-html=
"toTextarea(value.projAbstract)"
></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"
>
{{
value
.
projKeywords
}}
</div>
</a-col>
</a-row>
</div>
<div
v-if=
"tabsData[2].isShow"
>
<project-kpi-info
v-if=
"value.projectKPI"
:projectKPI
.
sync=
"value.projectKPI"
/>
</div>
<div
v-if=
"tabsData[3].isShow"
>
<!-- 经费预算 -->
<budget-info
:budget
.
sync=
"value.budget"
/>
<!-- 分年度用款计划 -->
<fund-plan-info
:fundPlan
.
sync=
"value.fundPlan"
/>
</div>
<div
v-if=
"tabsData[4].isShow"
>
<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=
"24"
class=
"bg-gray"
>
<div
class=
"special-middle"
style=
"font-weight: bold;text-align: center;"
>
<document-view
:fileUrl=
"value.downloadUrl"
:fileName=
"value.fileName"
:imageArray=
"[value.downloadUrl]"
v-if=
"!!value.downloadUrl"
></document-view>
</div>
</a-col>
</a-row>
</div>
<div
v-if=
"tabsData[5].isShow"
>
<!-- 附件 -->
<file-info
:fileList
.
sync=
"value.fileList"
/>
</div>
<div
v-if=
"tabsData[6].isShow"
>
<a-row>
<a-col
:span=
"24"
>
<div
class=
"main-title"
>
<span>
审核记录
</span>
</div>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<audit-list
v-model=
"value.auditList"
/>
</a-col>
</a-row>
</div>
</div>
</
template
>
<
script
>
import
moment
from
'moment'
import
AuditList
from
'@/views/audit/components/auditInfo'
import
cooperativeUnitsInfo
from
'@/views/report/project/components/cooperativeUnitsInfo'
import
projectMemberInfo
from
'@/views/report/project/components/projectMemberInfo'
import
projectKpiInfo
from
'@/views/report/project/components/projectKpiInfo.vue'
import
budgetInfo
from
'@/views/report/project/components/budgetInfo'
import
fundPlanInfo
from
'@/views/report/project/components/fundPlanInfo'
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
{
components
:
{
AuditList
,
documentView
cooperativeUnitsInfo
,
projectMemberInfo
,
projectKpiInfo
,
budgetInfo
,
fundPlanInfo
,
fileInfo
,
documentView
,
AuditList
},
name
:
"ProjectInfo"
,
data
()
{
...
...
@@ -670,15 +458,31 @@ export default {
default
:
()
=>
{
return
null
}
}
},
tabsData
:
{
type
:
Array
,
default
:
()
=>
{
return
[]
}
},
},
created
()
{
if
(
!!!
this
.
tabsData
||
this
.
tabsData
.
length
==
0
)
this
.
tabsData
=
[
{
title
:
'全部'
,
key
:
'0'
,
isShow
:
true
},
{
title
:
'项目基本信息'
,
key
:
'1'
,
isShow
:
true
},
//{ title: '项目组主要成员', key: '2', 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
},
]
},
mounted
()
{
},
methods
:
{
moment
,
toTextarea
,
moment
,
toTextarea
,
}
}
</
script
>
\ No newline at end of file
src/views/evaluation/components/projectView.vue
View file @
a74ef9da
<
template
>
<div
class=
"
layoutEmbedded
"
>
<div
class=
"
app-content layoutEmbedded"
style=
"height: 76vh;overflow: auto;
"
>
<a-spin
:spinning=
"loading"
style=
"width: 100%;height: 100%;"
>
<!-- 申报项目详情 -->
<!--
<a-button
type=
"primary"
>
导出申请书
</a-button>
-->
<project-info
v-model=
"projectInfo"
v-if=
"projType"
/>
<project-info-Key
v-model=
"projectInfo"
v-else
/>
<div
class=
"page-content"
>
<a-tabs
type=
"card"
hideAdd
size=
"small"
@
change=
"callback"
>
<a-tab-pane
:key=
"item.key"
:tab=
"item.title"
v-for=
"(item) in tabsData"
>
</a-tab-pane>
</a-tabs>
</div>
<div
class=
"page-footer"
>
<!-- 申报项目详情 -->
<!--
<a-button
type=
"primary"
@
click=
"onExport"
>
导出
</a-button>
-->
<project-info
v-model=
"formData"
:tabsData
.
sync=
"tabsData"
v-if=
"projType=='1'"
/>
<project-info-Key
v-model=
"formData"
:tabsData
.
sync=
"tabsData"
v-if=
"projType=='2'"
/>
</div>
</a-spin>
</div>
</
template
>
<
script
>
const
projectKPI
=
{
reportYear
:
""
,
projName
:
""
,
appUnitName
:
""
,
managerDept
:
""
,
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
:
[],
};
import
{
budgetList
}
from
'@/views/report/project/config'
import
{
getType
}
from
'@/views/utils/auth'
import
projectInfo
from
'@/views/evaluation/components/projectInfo'
import
projectInfoKey
from
'@/views/evaluation/components/keyProject/projectInfo'
import
projectInfoKey
from
"@/views/report/project/components/keyProject/projectInfo"
export
default
{
name
:
"projectView"
,
components
:
{
...
...
@@ -21,40 +65,60 @@ export default {
},
data
()
{
return
{
projectInfo
:
{
projName
:
''
,
startDate
:
''
,
endDate
:
''
,
applyMoney
:
''
,
projClassName
:
''
,
appPersonName
:
''
,
sex
:
''
,
titleName
:
''
,
degreeName
:
''
,
specName
:
''
,
jobUnit
:
''
,
mobile
:
''
,
address
:
''
,
appUnitName
:
''
,
linkName
:
''
,
linkEmail
:
''
,
linkTel
:
''
,
knowledgeName
:
''
,
projContent
:
''
,
projTarget
:
''
,
projKeywords
:
''
,
// 合作单位
together
:
[{
unitName
:
''
,
unitAddress
:
''
,
projectWork
:
''
},
{
unitName
:
''
,
unitAddress
:
''
,
projectWork
:
''
}],
// 项目组成员
tabsData
:
[
{
title
:
'全部'
,
key
:
'0'
,
isShow
:
true
},
{
title
:
'项目基本信息'
,
key
:
'1'
,
isShow
:
true
},
//{ title: '项目组主要成员', key: '2', 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
},
],
formData
:
{
id
:
null
,
appPersonName
:
null
,
sex
:
null
,
birthday
:
null
,
nationName
:
null
,
degreeName
:
null
,
titleName
:
null
,
mobile
:
null
,
email
:
null
,
jobTime
:
null
,
address
:
null
,
appUnitName
:
null
,
mainResearchAreas
:
null
,
unitLinkName
:
null
,
unitLinkMobile
:
null
,
unitLinkEmail
:
null
,
unitLinkFax
:
null
,
projName
:
null
,
knowledgeId
:
null
,
subjectScope
:
null
,
projClass
:
null
,
remark
:
null
,
startDate
:
null
,
endDate
:
null
,
totalFunding
:
null
,
govFunding
:
null
,
projAbstract
:
null
,
projKeywords
:
null
,
yearTarget
:
null
,
year1Goal
:
null
,
year2Goal
:
null
,
year3Goal
:
null
,
projectKPI
:
projectKPI
,
cooperativeUnits
:
[],
members
:
[],
// 经费
budget
:
budgetList
()
,
projDoc
:
null
,
fileList
:
[{
fileName
:
''
,
url
:
''
,
remarks
:
''
,
id
:
''
}
],
auditList
:
[{
result
:
''
,
unit
:
''
,
time
:
''
}]
,
budget
:
[],
fundPlan
:
[]
,
fileList
:
[]
,
auditList
:
[
],
managerDept
:
""
,
},
loading
:
false
,
projType
:
getType
()
==
"1"
projType
:
getType
()
};
},
props
:
{
...
...
@@ -63,33 +127,66 @@ export default {
default
:
()
=>
{
return
null
}
}
}
,
},
created
()
{
this
.
getProjectInfoById
()
},
methods
:
{
getProjectInfoById
()
{
if
(
this
.
value
!=
null
)
{
this
.
loading
=
true
let
fileArr
=
[]
this
.
$api
.
project
.
getProjectInfoById
({
id
:
this
.
value
}).
then
(({
data
=
{}
})
=>
{
if
(
data
)
{
this
.
projectInfo
=
data
for
(
let
i
=
0
;
i
<
this
.
projectInfo
.
fileList
.
length
;
i
++
)
{
if
(
this
.
projectInfo
.
fileList
[
i
].
fileExplain
.
indexOf
(
"项目申报简要信息首页"
)
==
-
1
&&
this
.
projectInfo
.
fileList
[
i
].
fileExplain
.
indexOf
(
"项目组成员签字"
)
==
-
1
)
fileArr
.
push
(
this
.
projectInfo
.
fileList
[
i
])
}
this
.
projectInfo
.
fileList
=
fileArr
this
.
formData
=
data
this
.
loading
=
false
}
else
this
.
$emit
(
'close'
,
'
close
'
)
}).
catch
(()
=>
{
this
.
$emit
(
'close'
,
'
close
'
)
})
this
.
$emit
(
'close'
,
'
error
'
)
}).
catch
(()
=>
{
this
.
$emit
(
'close'
,
'
error
'
)
})
}
}
},
onExport
()
{
this
.
$api
.
project
.
export
({
id
:
this
.
value
}).
then
((
res
)
=>
{
let
blob
=
new
Blob
([
res
],
{
type
:
"application/vnd.openxmlformats-officedocument.wordprocessingml.document;charset=utf-8"
,
});
const
fileName
=
this
.
formData
.
projName
+
'.doc'
;
let
downloadElement
=
document
.
createElement
(
'a'
)
let
href
=
window
.
URL
.
createObjectURL
(
blob
);
//创建下载的链接
downloadElement
.
href
=
href
;
downloadElement
.
download
=
fileName
;
//下载后文件名
document
.
body
.
appendChild
(
downloadElement
);
downloadElement
.
click
();
//点击下载
document
.
body
.
removeChild
(
downloadElement
);
//下载完成移除元素
window
.
URL
.
revokeObjectURL
(
href
);
//释放blob
})
},
callback
(
key
)
{
var
index
=
parseInt
(
key
)
this
.
tabsData
.
forEach
(
e
=>
{
if
(
key
==
'0'
)
e
.
isShow
=
true
else
e
.
isShow
=
false
})
this
.
tabsData
[
0
].
isShow
=
true
;
this
.
tabsData
[
index
].
isShow
=
true
;
},
},
}
</
script
>
<
style
scoped
lang=
"less"
>
::v-deep .ant-spin-container {
width: 100%;
height: 100%;
}
.page-content {
width: 100%;
height: 50px;
}
.page-footer {
width: 100%;
height: calc(100% - 50px);
overflow: auto;
}
</
style
>
src/views/evaluation/index.vue
View file @
a74ef9da
...
...
@@ -36,7 +36,7 @@
<score-view
v-model=
"id"
@
close=
"() => this.visibleEvaluationView = false"
/>
<!-- <assign-expert-view v-model="id" :hideDeleteBTN="false" @close="closeWindow"></assign-expert-view> -->
</a-modal>
<a-modal
v-model=
"visibleEvaluation"
title=
"
评审专家须知
"
width=
"90%"
:dialog-style=
"{ top: '5%' }"
:footer=
"null"
destroyOnClose
>
<a-modal
v-model=
"visibleEvaluation"
title=
"
专家评分
"
width=
"90%"
:dialog-style=
"{ top: '5%' }"
:footer=
"null"
destroyOnClose
>
<!-- <evaluation-edit v-model="id" @close="closeWindow"></evaluation-edit> -->
<score
v-model=
"id"
:exportTime=
"exportTime"
:totalFunding=
"totalFunding"
@
close=
"closeWindow"
ref=
"scoreEdit"
/>
</a-modal>
...
...
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