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
f1f8ccab
Commit
f1f8ccab
authored
Aug 08, 2025
by
wangxl
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
333
parent
b4cf4d01
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
139 additions
and
38 deletions
+139
-38
Index.vue
src/views/audit/talent/Index.vue
+1
-0
final.vue
src/views/audit/talent/final.vue
+2
-1
Index.vue
src/views/report/task/Index.vue
+4
-1
taskCreate.vue
src/views/report/task/components/taskCreate.vue
+83
-19
taskEdit.vue
src/views/report/task/components/taskEdit.vue
+30
-12
taskInfo.vue
src/views/report/task/components/taskInfo.vue
+19
-5
No files found.
src/views/audit/talent/Index.vue
View file @
f1f8ccab
...
...
@@ -106,6 +106,7 @@ export default {
{
title
:
'人才类型'
,
dataIndex
:
'talentCategoryName'
,
align
:
'center'
},
{
title
:
'总经费'
,
dataIndex
:
'totalFunding'
,
align
:
'center'
},
{
title
:
'审核状态'
,
dataIndex
:
'auditResultName'
,
align
:
'center'
},
{
title
:
'审核人'
,
dataIndex
:
'auditPersonName'
,
align
:
'center'
},
{
title
:
'操作'
,
scopedSlots
:
{
customRender
:
'option'
},
align
:
'center'
,
fixed
:
'right'
,
width
:
180
,
},
],
pagination
:
{
...
...
src/views/audit/talent/final.vue
View file @
f1f8ccab
...
...
@@ -107,8 +107,9 @@ export default {
{
title
:
'职称'
,
dataIndex
:
'titleName'
,
align
:
'center'
},
{
title
:
'人才类型'
,
dataIndex
:
'talentCategoryName'
,
align
:
'center'
},
{
title
:
'总经费'
,
dataIndex
:
'totalFunding'
,
align
:
'center'
},
{
title
:
'评分'
,
dataIndex
:
'gradeScore'
,
align
:
'center'
},
{
title
:
'审核状态'
,
dataIndex
:
'auditResultName'
,
align
:
'center'
},
{
title
:
'
专家评分'
,
dataIndex
:
'gradeScor
e'
,
align
:
'center'
},
{
title
:
'
审核人'
,
dataIndex
:
'auditPersonNam
e'
,
align
:
'center'
},
{
title
:
'操作'
,
scopedSlots
:
{
customRender
:
'option'
},
align
:
'center'
,
fixed
:
'right'
,
width
:
180
,
},
],
pagination
:
{
...
...
src/views/report/task/Index.vue
View file @
f1f8ccab
...
...
@@ -39,7 +39,7 @@
</a-table>
<a-pagination
v-if=
"pagination.total > 0"
:total=
"pagination.total"
show-size-changer
show-quick-jumper
v-model=
"pagination.pageIndex"
:page-size=
"pagination.pageSize"
:page-size-options=
"pagination.pageSizeOptions"
@
showSizeChange=
"showSizeChange"
@
change=
"change"
:showTotal=
"() => `共 ${pagination.total} 条`"
/>
<a-modal
v-model=
"visibleEdit"
:title=
"'创建/修改'"
:width=
"'94%'"
:dialog-style=
"{ top: '8%' }"
:footer=
"null"
destroyOnClose
:maskClosable=
"false"
>
<task-create
v-model=
"projId"
@
close=
"closeWindow"
/>
<task-create
v-model=
"projId"
@
close=
"closeWindow"
:type=
"createType"
/>
</a-modal>
<a-modal
v-model=
"visibleView"
title=
"查看合同书"
:width=
"'94%'"
:dialog-style=
"{ top: '8%' }"
:footer=
"null"
destroyOnClose
:maskClosable=
"false"
>
<task-view
v-model=
"projId"
@
close=
"closeWindow"
/>
...
...
@@ -93,6 +93,7 @@ export default {
visibleProjView
:
false
,
id
:
null
,
projId
:
null
,
createType
:
false
,
selectedRowKeys
:
[],
isButten
:
false
,
description
:
''
,
...
...
@@ -165,9 +166,11 @@ export default {
this
.
projId
=
record
.
projId
this
.
visibleProjView
=
true
}
else
if
(
type
===
'create'
)
{
this
.
createType
=
true
this
.
projId
=
record
.
projId
this
.
visibleEdit
=
true
}
else
if
(
type
===
'edit'
)
{
this
.
createType
=
true
this
.
projId
=
record
.
projId
this
.
visibleEdit
=
true
}
else
{
...
...
src/views/report/task/components/taskCreate.vue
View file @
f1f8ccab
...
...
@@ -2,18 +2,56 @@
<
template
>
<div
class=
"app-content"
style=
"height: 76vh;overflow: auto;"
>
<a-spin
:spinning=
"loading"
style=
"width: 100%;height: 100%;"
>
<div
class=
"page-card"
>
<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
v-if=
"!isRead && type"
style=
"height: 100%;"
>
<div
style=
"height:calc(100% - 40px);overflow: auto;padding:0px 40px ;"
>
<div>
<p
class=
"MsoNormal"
style=
"text-align:center;"
>
<b><span
style=
"font-size:16.0pt;line-height:150%;font-family:方正小标宋_GBK;"
>
填写说明
</span></b><b><span
style=
"font-size:14.0pt;line-height:150%;font-family:方正小标宋_GBK;"
></span></b>
</p>
<p
class=
"MsoNormal"
style=
"text-indent:32.0pt;"
>
<span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
一、本合同由甲、乙两方共同签订。甲方系指省卫生健康委;乙方系指省级临床医学中心依托单位。
<span></span></span>
</p>
<p
class=
"MsoNormal"
style=
"text-indent:32.0pt;"
>
<span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
二、本合同所列内容应实事求是填写,表达要明确、严谨。对填写不符合要求的合同书,或填报内容出现虚报夸大、不切实际的,甲方将退回项目承担单位修改。
<span></span></span>
</p>
<p
class=
"MsoNormal"
style=
"text-indent:32.0pt;"
>
<span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
三、合同书规定的项目考核指标应根据省级临床医学中心科研项目建设要求,遵循明确、量化、可考核的原则,其中技术指标应明确项目完成时达到的关键技术参数及预期可以形成的发明专利、标准、新技术、新产品、新装置、论文、专著等的数量;经济指标应明确项目完成时产生的产值、销售收入、利税
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
、技术及产品应用所形成的市场规模、效益等。
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
></span>
</p>
<p
class=
"MsoNormal"
style=
"text-indent:30.0pt;"
>
<span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
五、项目实施阶段及任务要根据省级临床医学中心科研项目建设实施内容、主要任务和目标合理安排。各阶段的任务目标是项目年度
<span>
(
</span>
中期
<span>
)
</span>
检查(评估)和安排项目结转经费的依据。
<span></span></span>
</p>
<p
class=
"MsoNormal"
style=
"text-indent:30.0pt;"
>
<span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
六、项目自筹经费指项目承担单位自行筹措,在项目执行期能够落实的非政府财政经费。原则上自筹经费以项目起始时间后项目单位自筹投入的资金进行核算。
<span></span></span>
</p>
<p
class=
"MsoNormal"
style=
"text-indent:30.0pt;"
>
<span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
七、“科技报告类型”,包括项目验收前撰写的全面描述研究过程和技术内容的最终科技报告、项目年度或中期检查时撰写的描述本年度研究过程和进展的年度技术进展报告以及在项目实施过程中撰写的包含科研活动细节及基础数据的专题科技报告。科技报告“公开类别及时限”分为公开或延期公开,内容需要发表论文、申请专利、出版专著或涉及
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
技术诀窍的,可标注为
</span><span
style=
"font-size:16.0pt;"
>
“
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
延期公开
</span><span
style=
"font-size:16.0pt;"
>
”
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
。需要发表论文的,延期公开时限原则上在
</span><span
style=
"font-size:16.0pt;"
>
2
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
年(含
</span><span
style=
"font-size:16.0pt;"
>
2
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
年)以内;需要申请专利、出版专著的,延期公开时限原则上在
</span><span
style=
"font-size:16.0pt;"
>
3
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
年(含
</span><span
style=
"font-size:16.0pt;"
>
3
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
年)以内;涉及技术诀窍的,延期公开时限原则上在
</span><span
style=
"font-size:16.0pt;"
>
5
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
年(含
</span><span
style=
"font-size:16.0pt;"
>
5
</span><span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
年)以内(涉密项目科技报告按照有关规定管理)。
</span><span
style=
"font-size:16.0pt;"
></span>
</p>
<p
class=
"MsoNormal"
style=
"text-indent:30.0pt;"
>
<span
style=
"font-size:16.0pt;font-family:方正仿宋_GBK;"
>
八、省财政资金支出的预算计划应按照国家及省相关规定执行。重大、重点项目的预算计划应吸纳经费评审时提出的调整意见。
</span><span
style=
"font-size:16.0pt;"
></span>
</p>
<br
/>
</div>
</div>
<div
style=
"height:40px;width:100%;text-align:center;padding:4px 0px;background: #fafafa;border:1px solid #e8e8e8; "
>
<a-checkbox
@
change=
"onReadChange"
>
我已阅读
</a-checkbox>
<a-button
type=
"primary"
@
click=
"next"
:disabled=
"check.disabled"
>
{{
check
.
title
}}
</a-button>
</div>
</div>
<div
class=
"page-content"
>
<task-edit
v-model=
"value"
@
close=
"closeWindow"
@
load=
"onLoad"
ref=
"taskCreate"
:tabsData
.
sync=
"tabsData"
/>
</div>
<div
class=
"page-footer"
>
<a-button
type=
"primary"
@
click=
"save"
v-if=
"tabsData[0].isShow"
>
保 存
</a-button>
<a-button
type=
"primary"
style=
"margin-left: 40px"
@
click=
"submit"
v-if=
"tabsData[0].isShow"
>
完成填写
</a-button>
<div
v-else
>
<div
class=
"page-card"
>
<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-content"
>
<task-edit
v-model=
"value"
@
close=
"closeWindow"
@
load=
"onLoad"
ref=
"taskCreate"
:tabsData
.
sync=
"tabsData"
/>
</div>
<div
class=
"page-footer"
>
<a-button
type=
"primary"
@
click=
"save"
v-if=
"tabsData[0].isShow"
>
保 存
</a-button>
<a-button
type=
"primary"
style=
"margin-left: 40px"
@
click=
"submit"
v-if=
"tabsData[0].isShow"
>
完成填写
</a-button>
</div>
</div>
</a-spin>
</div>
...
...
@@ -31,15 +69,19 @@ export default {
loading
:
false
,
tabsData
:
[
{
title
:
'填报信息'
,
key
:
'0'
,
isShow
:
true
},
{
title
:
'项目组主要成员及单位'
,
key
:
'1'
,
isShow
:
tru
e
},
{
title
:
'项目主要实施内容和目标'
,
key
:
'2'
,
isShow
:
tru
e
},
{
title
:
'申请书正文'
,
key
:
'3'
,
isShow
:
tru
e
},
{
title
:
'经费预算及设备明细'
,
key
:
'4'
,
isShow
:
tru
e
},
{
title
:
'项目实施阶段及任务'
,
key
:
'5'
,
isShow
:
tru
e
},
{
title
:
'项目课题设置'
,
key
:
'6'
,
isShow
:
tru
e
},
{
title
:
'绩效目标表'
,
key
:
'7'
,
isShow
:
tru
e
},
{
title
:
'附件信息'
,
key
:
'8'
,
isShow
:
tru
e
},
{
title
:
'项目组主要成员及单位'
,
key
:
'1'
,
isShow
:
fals
e
},
{
title
:
'项目主要实施内容和目标'
,
key
:
'2'
,
isShow
:
fals
e
},
{
title
:
'申请书正文'
,
key
:
'3'
,
isShow
:
fals
e
},
{
title
:
'经费预算及设备明细'
,
key
:
'4'
,
isShow
:
fals
e
},
{
title
:
'项目实施阶段及任务'
,
key
:
'5'
,
isShow
:
fals
e
},
{
title
:
'项目课题设置'
,
key
:
'6'
,
isShow
:
fals
e
},
{
title
:
'绩效目标表'
,
key
:
'7'
,
isShow
:
fals
e
},
{
title
:
'附件信息'
,
key
:
'8'
,
isShow
:
fals
e
},
],
check
:
{
time
:
5
,
title
:
'我已阅读'
,
count
:
5
,
disabled
:
false
,
},
isRead
:
false
,
}
},
props
:
{
...
...
@@ -49,8 +91,15 @@ export default {
return
null
}
},
type
:
{
type
:
Boolean
,
default
:
()
=>
{
return
false
}
}
},
created
()
{
this
.
countStart
()
},
methods
:
{
save
()
{
...
...
@@ -72,6 +121,19 @@ export default {
})
this
.
tabsData
[
index
].
isShow
=
true
;
},
countStart
()
{
this
.
check
.
disabled
=
true
this
.
check
.
title
=
'下一步'
},
onReadChange
(
e
)
{
if
(
e
.
target
.
checked
)
this
.
check
.
disabled
=
false
else
this
.
check
,
disabled
=
true
},
next
()
{
this
.
isRead
=
true
},
},
}
</
script
>
...
...
@@ -88,6 +150,8 @@ export default {
width: 100%;
height: 50px;
overflow: auto;
border-left: 1px solid #f0f0f0;
border-right: 1px solid #f0f0f0;
}
.page-content {
width: 100%;
...
...
src/views/report/task/components/taskEdit.vue
View file @
f1f8ccab
...
...
@@ -579,10 +579,10 @@
<div
class=
"required"
>
项目总经费(万元)
</div>
</div>
</a-col>
<a-col
:span=
"
8
"
>
<a-col
:span=
"
4
"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"
isTechnologyReport
"
>
<a-form-model-item
prop=
"
totalFunding
"
>
{{
formData
.
totalFunding
}}
</a-form-model-item>
</div>
...
...
@@ -593,15 +593,29 @@
<div
class=
"required"
>
财政经费(万元)
</div>
</div>
</a-col>
<a-col
:span=
"
8
"
>
<a-col
:span=
"
4
"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"
isTechnologyReport
"
>
<a-form-model-item
prop=
"
govFunding
"
>
{{
formData
.
govFunding
}}
</a-form-model-item>
</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"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"govFunding"
>
{{
formData
.
selfFunding
}}
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
...
...
@@ -613,13 +627,16 @@
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"isTechnologyReport"
>
<base-select
v-model=
"formData.isTechnologyReport"
:type=
"12"
:isAll=
"true"
:width=
"120"
/>
<a-radio-group
v-model=
"formData.isTechnologyReport"
>
<a-radio
:value=
"1"
>
是
</a-radio>
<a-radio
:value=
"0"
>
否
</a-radio>
</a-radio-group>
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-row
type=
"flex"
v-if=
"!!formData.isTechnologyReport && formData.isTechnologyReport==1"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div
class=
"required"
>
科技报告类型
</div>
...
...
@@ -628,17 +645,18 @@
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
<span
style=
"margin:0 6px 0 6px;"
>
立项报告
</span><a-input-number
v-model=
"formData.projectReport"
:min=
"0"
:step=
"1"
style=
"width: 60px"
/>
<span
style=
"margin:0 6px 0 24px;"
>
进展报告
</span><a-input-number
v-model=
"formData.progressReport"
:min=
"0"
:step=
"1"
style=
"width: 60px;"
/>
<span
style=
"margin:0 6px 0 24px;"
>
专题报告
</span><a-input-number
v-model=
"formData.specialReport"
:min=
"0"
:step=
"1"
style=
"width: 60px"
/>
<span
style=
"margin:0 6px 0 24px;"
>
最终报告
</span><a-input-number
v-model=
"formData.finalReport"
:min=
"0"
:step=
"1"
style=
"width: 60px"
/>
<span
style=
"margin:0 6px 0 6px;"
>
立项报告
份数
</span><a-input-number
v-model=
"formData.projectReport"
:min=
"0"
:step=
"1"
style=
"width: 60px"
/>
<span
style=
"margin:0 6px 0 24px;"
>
进展报告
份数
</span><a-input-number
v-model=
"formData.progressReport"
:min=
"0"
:step=
"1"
style=
"width: 60px;"
/>
<span
style=
"margin:0 6px 0 24px;"
>
专题报告
份数
</span><a-input-number
v-model=
"formData.specialReport"
:min=
"0"
:step=
"1"
style=
"width: 60px"
/>
<span
style=
"margin:0 6px 0 24px;"
>
最终报告
份数
</span><a-input-number
v-model=
"formData.finalReport"
:min=
"0"
:step=
"1"
style=
"width: 60px"
/>
</div>
</div>
</a-col>
</a-row>
<participate-units-info
:dataList
.
sync=
"formData.participateUnits"
/>
</a-form-model>
<!-- 项目主要参与单位及分工 -->
<participate-units-info
:dataList
.
sync=
"formData.participateUnits"
/>
</div>
<div
v-if=
"tabsData[1].isShow"
>
<a-row>
...
...
@@ -1094,7 +1112,7 @@ import { toTextarea } from '@/views/utils/common'
export
default
{
name
:
'projectEdit'
,
components
:
{
cooperativeUnitsInfo
,
projectMemberInfo
,
projectKpiInfo
,
budgetInfo
,
fundPlanInfo
,
unitPaymentInfo
,
deviceInfo
,
manufactureInfo
,
fileInfo
,
projStageGoalsInfo
,
projectSubInfo
,
participateUnitsInfo
,
documentView
cooperativeUnitsInfo
,
projectMemberInfo
,
projectKpiInfo
,
budgetInfo
,
fundPlanInfo
,
unitPaymentInfo
,
deviceInfo
,
manufactureInfo
,
fileInfo
,
projStageGoalsInfo
,
projectSubInfo
,
participateUnitsInfo
,
documentView
},
props
:
{
value
:
{
...
...
src/views/report/task/components/taskInfo.vue
View file @
f1f8ccab
...
...
@@ -376,10 +376,10 @@
<div>
项目总经费(万元)
</div>
</div>
</a-col>
<a-col
:span=
"
8
"
>
<a-col
:span=
"
4
"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"
isTechnologyReport
"
>
<a-form-model-item
prop=
"
totalFunding
"
>
{{
value
.
totalFunding
}}
</a-form-model-item>
</div>
...
...
@@ -390,15 +390,29 @@
<div>
财政经费(万元)
</div>
</div>
</a-col>
<a-col
:span=
"
8
"
>
<a-col
:span=
"
4
"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"
isTechnologyReport
"
>
<a-form-model-item
prop=
"
govFunding
"
>
{{
value
.
govFunding
}}
</a-form-model-item>
</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"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
prop=
"govFunding"
>
{{
formData
.
selfFunding
}}
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
...
...
@@ -417,7 +431,7 @@
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
>
<a-row
type=
"flex"
v-if=
"!!value.isTechnologyReport && value.isTechnologyReport==1"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
科技报告类型
</div>
...
...
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