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
171a1a43
Commit
171a1a43
authored
Dec 19, 2024
by
wangxl
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
444
parent
9fc6e92c
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
110 additions
and
130 deletions
+110
-130
fileLoad.vue
src/views/components/common/fileLoad.vue
+29
-31
upLoad.vue
src/views/components/common/upLoad.vue
+2
-2
scoreEdit.vue
src/views/evaluation/components/scoreEdit.vue
+60
-13
Index.vue
src/views/query/project/Index.vue
+1
-1
fileEdit.vue
src/views/report/project/components/fileEdit.vue
+18
-83
No files found.
src/views/components/common/fileLoad.vue
View file @
171a1a43
...
...
@@ -4,10 +4,10 @@
<div>
<document-view
:fileUrl=
"file.downloadUrl"
:fileName=
"file.fileName"
:imageArray=
"[file.downloadUrl]"
></document-view>
</div>
<a-icon
type=
"delete"
class=
"hover-pointer d-icon"
@
click=
"deletefile(file)"
style=
"margin: 0px
2
px;"
/>
<a-icon
type=
"delete"
class=
"hover-pointer d-icon"
@
click=
"deletefile(file)"
style=
"margin: 0px
4
px;"
/>
</div>
<div
v-else
>
<a-form-model-item
:prop=
"name +'.'+ index + '.downloadUrl'"
:rules=
"
{required:
true
, message: '请上传附件',trigger: 'blur',}">
<a-form-model-item
:prop=
"name +'.'+ index + '.downloadUrl'"
:rules=
"
{required:
file.isRequired
, message: '请上传附件',trigger: 'blur',}">
<input
type=
"file"
:ref=
"name +'fileElem' + index"
class=
"visually-hidden"
@
change=
"handleFiles(file, index)"
/>
<a-button
@
click=
"fileSelect(index)"
><a-icon
type=
"upload"
/>
选择文件
</a-button>
</a-form-model-item>
...
...
@@ -26,12 +26,6 @@ export default {
};
},
props
:
{
value
:
{
type
:
Object
,
default
:
()
=>
{
return
null
}
},
file
:
{
type
:
Object
,
default
:
()
=>
{
...
...
@@ -50,23 +44,29 @@ export default {
return
0
},
},
format
:
{
type
:
Array
,
default
()
{
return
[]
}
},
},
created
()
{
},
methods
:
{
deletefile
(
item
)
{
this
.
$api
.
base
.
deletefile
({
id
:
item
.
downloadId
}).
then
(({
data
=
{}
})
=>
{
deletefile
(
obj
)
{
this
.
$api
.
base
.
deletefile
({
id
:
obj
.
downloadId
}).
then
(({
data
=
{}
})
=>
{
if
(
data
)
{
item
.
fileName
=
''
item
.
downloadUrl
=
''
item
.
downloadId
=
''
obj
.
fileName
=
null
obj
.
downloadUrl
=
null
obj
.
downloadId
=
null
}
}).
catch
(()
=>
{
this
.
$message
.
error
(
'删除失败'
)
})
},
handleFiles
(
item
,
index
)
{
handleFiles
(
obj
,
index
)
{
let
fileElem
=
this
.
$refs
[
this
.
name
+
'fileElem'
+
index
]
let
files
=
fileElem
.
files
if
(
files
.
length
<=
0
)
{
...
...
@@ -77,9 +77,9 @@ export default {
return
this
.
$api
.
base
.
asyncUpload
(
this
.
uploadHandle
(
files
[
0
],
files
[
0
].
name
)).
then
(({
data
=
{}
})
=>
{
if
(
data
)
{
item
.
fileName
=
files
[
0
].
name
item
.
downloadUrl
=
data
.
downloadUrl
item
.
downloadId
=
data
.
id
obj
.
fileName
=
files
[
0
].
name
obj
.
downloadUrl
=
data
.
downloadUrl
obj
.
downloadId
=
data
.
id
}
else
this
.
$message
.
error
(
'上传失败'
)
}).
catch
(()
=>
{
...
...
@@ -93,13 +93,15 @@ export default {
this
.
$message
.
error
(
'文件大小不能超过15M!'
);
return
false
}
// var fileNames = file.name.split('.')
// var fileType = fileNames[fileNames.length - 1].toLocaleLowerCase()
// var extList = ['doc', 'docx', 'pdf']
// if (!extList.find((item) => item == fileType)) {
// this.$message.error('文件格式错误!')
// return false
// }
if
(
!!
this
.
format
&&
this
.
format
.
length
>
0
)
{
var
fileNames
=
file
.
name
.
split
(
'.'
)
var
fileType
=
fileNames
[
fileNames
.
length
-
1
].
toLocaleLowerCase
()
var
extList
=
this
.
format
if
(
!
extList
.
find
((
e
)
=>
e
==
fileType
))
{
this
.
$message
.
error
(
'文件格式错误!'
)
return
false
}
}
return
true
},
uploadHandle
(
file
,
fileName
)
{
...
...
@@ -114,14 +116,10 @@ export default {
fileElem
.
click
()
}
},
},
watch
:
{
value
:
{
handler
(
value
)
{
downloadfile
()
{
},
}
}
},
},
};
</
script
>
<
style
scoped
lang=
"less"
>
...
...
src/views/components/common/upLoad.vue
View file @
171a1a43
...
...
@@ -110,9 +110,9 @@ export default {
this
.
$message
.
error
(
'文件大小不能超过15M!'
);
return
false
}
var
fileNames
=
file
.
name
.
split
(
'.'
)
var
fileType
=
fileNames
[
fileNames
.
length
-
1
].
toLocaleLowerCase
()
if
(
!!
this
.
format
&&
this
.
format
.
length
>
0
)
{
var
fileNames
=
file
.
name
.
split
(
'.'
)
var
fileType
=
fileNames
[
fileNames
.
length
-
1
].
toLocaleLowerCase
()
var
extList
=
this
.
format
if
(
!
extList
.
find
((
item
)
=>
item
==
fileType
))
{
this
.
$message
.
error
(
'文件格式错误!'
)
...
...
src/views/evaluation/components/scoreEdit.vue
View file @
171a1a43
<
template
>
<div
style=
"height:75vh;overflow:auto"
class=
"app-content"
>
<a-form-model
ref=
"form"
:model=
"formData"
:rules=
"rules"
class=
"from-table font-line-space"
>
{{
formdata
}}
<table
class=
"tab-content"
cellpadding=
"3"
cellspacing=
"3"
style=
"width: 98%"
>
<tr
v-for=
"(item,index) in formdata"
:key=
"'tr1'+index"
>
<td
:rowspan=
"item.row1"
>
{{
item
.
title1
}}
</td>
<td
:rowspan=
"item.row3"
>
{{
item
.
title2
}}
</td>
<td
:rowspan=
"item.row3"
>
{{
item
.
title3
}}
</td>
<a-form-model
ref=
"form"
:rules=
"rules"
class=
"from-table font-line-space"
>
<table
class=
"tab-content"
border=
"1"
style=
"width: 98%"
>
<tr
v-for=
"(item,index) in fromList"
:key=
"'tr1'+index"
>
<td
:rowspan=
"item.row1"
v-if=
"item.row1>0"
>
{{
item
.
title1
}}
</td>
<td
:rowspan=
"item.row2"
v-if=
"item.row2>0"
>
{{
item
.
title2
}}
</td>
<td
:rowspan=
"item.row3"
v-if=
"item.row3>0"
>
{{
item
.
title3
}}
</td>
<td>
{{
item
.
title
}}
</td>
<td>
{{
item
.
score
}}
</td>
<td>
{{
item
.
meaning
}}
</td>
<td
:rowspan=
"item.row3"
v-if=
"item.row3>0"
><a-input
:maxLength=
"50"
style=
"width: 80%;"
/></td>
</tr>
</table>
</a-form-model>
...
...
@@ -28,6 +28,58 @@ export default {
},
data
()
{
return
{
fromList
:
[
{
meaning
:
"资金预算有总量、强度、结构说明,且与项目实施内容、目标考核指标相关。"
,
score
:
"7-10"
,
title
:
"相关"
,
title3
:
"资金预算应以项目研究开发任务目标为依据,预算的总量、强度:结构等应符合项目任务的规律和特点,项目各任务之间资金分配合理。"
,
row3
:
3
,
title2
:
"目标相关性(10分)"
,
row2
:
3
,
title1
:
"资金预算(40分)"
,
row1
:
12
},
{
meaning
:
"资金预算有总量、强度、结构说明,与项目实施内容、目标考核指标基本相关。"
,
score
:
"1-6"
,
title
:
"基本相关"
,
title3
:
"资金预算应以项目研究开发任务目标为依据,预算的总量、强度:结构等应符合项目任务的规律和特点,项目各任务之间资金分配合理。"
,
row3
:
0
,
title2
:
"目标相关性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"资金预算总量、强度、结构与项目实施内容、目标、考核指不相关。"
,
score
:
"0"
,
title
:
"不相关"
,
title3
:
"资金预算应以项目研究开发任务目标为依据,预算的总量、强度:结构等应符合项目任务的规律和特点,项目各任务之间资金分配合理。"
,
row3
:
0
,
title2
:
"目标相关性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"资金预算有开支范围的依据及标准说明,且与现行相关财务度相符。"
,
score
:
"7-10"
,
title
:
"相符"
,
title3
:
"项目预算科目的开支范围、开支标准等应符合国家和云南省有关财务制度,以及科研经费管理制度的相关规定"
,
row3
:
3
,
title2
:
"政策相符性(10分)"
,
row2
:
3
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"资金预算有开支范围的依据说明,与现行相关财务制度基本相符。"
,
score
:
"1-6"
,
title
:
"基本相符"
,
title3
:
"项目预算科目的开支范围、开支标准等应符合国家和云南省有关财务制度,以及科研经费管理制度的相关规定"
,
row3
:
0
,
title2
:
"政策相符性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"资金预算无开支范围的依据说明。"
,
score
:
"0"
,
title
:
"不相符"
,
title3
:
"项目预算科目的开支范围、开支标准等应符合国家和云南省有关财务制度,以及科研经费管理制度的相关规定"
,
row3
:
0
,
title2
:
"政策相符性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"资金预算有与同类研发活动支出水平的对比分析,资金预算与产出匹配性高。"
,
score
:
"7-10"
,
title
:
"合理"
,
title3
:
"预算应综合考虑国内外同类研究开发活动的状况、相关产业特点、同类研发活动支出水平、技术创新风险等因素,结合项目研究开发的现有基础、前期投入和支撑条件,考量项目预算与同类或相近科研活动支出水平的匹配性。"
,
row3
:
3
,
title2
:
"经济合理性(10分)"
,
row2
:
3
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"资金预算有与同类研发活动支出水平的对比分析,资金预算与产出基本匹配。"
,
score
:
"1-6"
,
title
:
"基本合理"
,
title3
:
"预算应综合考虑国内外同类研究开发活动的状况、相关产业特点、同类研发活动支出水平、技术创新风险等因素,结合项目研究开发的现有基础、前期投入和支撑条件,考量项目预算与同类或相近科研活动支出水平的匹配性。"
,
row3
:
0
,
title2
:
"经济合理性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"资金预算明显高于同类研发活动支出水平,资金预算与产出不匹配。"
,
score
:
"0"
,
title
:
"不合理"
,
title3
:
"预算应综合考虑国内外同类研究开发活动的状况、相关产业特点、同类研发活动支出水平、技术创新风险等因素,结合项目研究开发的现有基础、前期投入和支撑条件,考量项目预算与同类或相近科研活动支出水平的匹配性。"
,
row3
:
0
,
title2
:
"经济合理性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"财政资金预算能保障项目研发任务实施和研发目标实现。"
,
score
:
"7-10"
,
title
:
"可行"
,
title3
:
"财政资金预算应考虑支撑项目研发任务的实施和研发目标的实现,有助于项目技术指标及经济、社会、生态环境和可持续影响指标的完成。"
,
row3
:
3
,
title2
:
"任务完成可行性(10分)"
,
row2
:
3
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"财政资金预算基本能保障项目研发任务实施和研发目标实现。"
,
score
:
"1-6"
,
title
:
"基本可行"
,
title3
:
"财政资金预算应考虑支撑项目研发任务的实施和研发目标的实现,有助于项目技术指标及经济、社会、生态环境和可持续影响指标的完成。"
,
row3
:
0
,
title2
:
"任务完成可行性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"财政资金预算难以保障项目研发任务实施和研发目标实现。"
,
score
:
"0"
,
title
:
"不可行"
,
title3
:
"财政资金预算应考虑支撑项目研发任务的实施和研发目标的实现,有助于项目技术指标及经济、社会、生态环境和可持续影响指标的完成。"
,
row3
:
0
,
title2
:
"任务完成可行性(10分)"
,
row2
:
0
,
title1
:
"资金预算(40分)"
,
row1
:
0
},
{
meaning
:
"绩效目标规范,包括产出指标、效益指标、满意度指标等3个(含)以上指标。"
,
score
:
"3-4"
,
title
:
"完整"
,
title3
:
"绩效目标规范完整性(4分)"
,
row3
:
3
,
title2
:
"完整性(7.5分)"
,
row2
:
6
,
title1
:
"绩效目标(30分)"
,
row1
:
23
},
{
meaning
:
"绩效目标较规范,包括产出指标、效益指标、满意度指标等1-2个指标。"
,
score
:
"1-2"
,
title
:
"基本完整"
,
title3
:
"绩效目标规范完整性(4分)"
,
row3
:
0
,
title2
:
"完整性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标不规范、不完整。"
,
score
:
"0"
,
title
:
"不完整"
,
title3
:
"绩效目标规范完整性(4分)"
,
row3
:
0
,
title2
:
"完整性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标设置清晰,能反映项目实施的主要内容、预期产出和效果,指标值具体可量化。"
,
score
:
"2-3.5"
,
title
:
"清晰"
,
title3
:
"绩效目标明确清晰性.(3.5分)"
,
row3
:
3
,
title2
:
"完整性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标设置基本清晰。"
,
score
:
"1"
,
title
:
"基本清晰"
,
title3
:
"绩效目标明确清晰性.(3.5分)"
,
row3
:
0
,
title2
:
"完整性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标设置不清晰。"
,
score
:
"0"
,
title
:
"不清晰"
,
title3
:
"绩效目标明确清晰性.(3.5分)"
,
row3
:
0
,
title2
:
"完整性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标与项目实施内容和考核指标紧密相关。"
,
score
:
"3-4"
,
title
:
"相关"
,
title3
:
"绩效目标相关性。(4分)"
,
row3
:
3
,
title2
:
"相关性(7.5分)"
,
row2
:
5
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标与项目实施内容和考核指标基本相关。"
,
score
:
"1-2"
,
title
:
"基本相关"
,
title3
:
"绩效目标相关性。(4分)"
,
row3
:
0
,
title2
:
"相关性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标与项目实施内容和考核指标不相关。"
,
score
:
"0"
,
title
:
"不相关"
,
title3
:
"绩效目标相关性。(4分)"
,
row3
:
0
,
title2
:
"相关性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效指标尚未实现,具有实现的可能性。"
,
score
:
"1-3.5"
,
title
:
"科学"
,
title3
:
"绩效指标科学性。(3.5分)"
,
row3
:
2
,
title2
:
"相关性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效指标已实现,或项目实施难以确保绩效指标实现。"
,
score
:
"0"
,
title
:
"不科学"
,
title3
:
"绩效指标科学性。(3.5分)"
,
row3
:
0
,
title2
:
"相关性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标与资金规模匹配。"
,
score
:
"3-4"
,
title
:
"合理"
,
title3
:
"资金匹配性。(4分)"
,
row3
:
3
,
title2
:
"适当性(7.5分)"
,
row2
:
6
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标与资金规模基本匹配。"
,
score
:
"1-2"
,
title
:
"基本合理"
,
title3
:
"资金匹配性。(4分)"
,
row3
:
0
,
title2
:
"适当性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标与资金规模不匹配。"
,
score
:
"0"
,
title
:
"不合理"
,
title3
:
"资金匹配性。(4分)"
,
row3
:
0
,
title2
:
"适当性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标符合正常水平或科研规律。"
,
score
:
"3-4"
,
title
:
"匹配"
,
title3
:
"绩效目标合理性。(3.5分)"
,
row3
:
3
,
title2
:
"适当性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标基本符合正常水平或科研规律。"
,
score
:
"1-2"
,
title
:
"基本匹配"
,
title3
:
"绩效目标合理性。(3.5分)"
,
row3
:
0
,
title2
:
"适当性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标不符合正常水平或科研规律。"
,
score
:
"0"
,
title
:
"不匹配"
,
title3
:
"绩效目标合理性。(3.5分)"
,
row3
:
0
,
title2
:
"适当性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标经过充分论证和合理测算。"
,
score
:
"3-4"
,
title
:
"可行"
,
title3
:
"绩效目标实现可能性:(4分)"
,
row3
:
3
,
title2
:
"可行性(7.5分)"
,
row2
:
6
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标经过论证和测算,但论证的充分性和合理性不够。"
,
score
:
"1-2"
,
title
:
"基本可行"
,
title3
:
"绩效目标实现可能性:(4分)"
,
row3
:
0
,
title2
:
"可行性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"绩效目标未经过论证和测算。"
,
score
:
"0"
,
title
:
"不可行"
,
title3
:
"绩效目标实现可能性:(4分)"
,
row3
:
0
,
title2
:
"可行性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"项目实施方案和具体措施可行,能确保绩效目标实现。"
,
score
:
"3-4"
,
title
:
"匹配"
,
title3
:
"项目实施方案匹配性(3.5分)"
,
row3
:
3
,
title2
:
"可行性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"项目实施方案和具体措施基本可行,能确保绩效目标基本实现。"
,
score
:
"1-2"
,
title
:
"基本匹配"
,
title3
:
"项目实施方案匹配性(3.5分)"
,
row3
:
0
,
title2
:
"可行性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"项目实施方案和具体措施不太可行,难以确保绩效目标实现。"
,
score
:
"0"
,
title
:
"不匹配"
,
title3
:
"项目实施方案匹配性(3.5分)"
,
row3
:
0
,
title2
:
"可行性(7.5分)"
,
row2
:
0
,
title1
:
"绩效目标(30分)"
,
row1
:
0
},
{
meaning
:
"项目申报单位建立了科研项目管理、资金管理等办法制度,并严格执行落实。"
,
score
:
"4-5"
,
title
:
"建立并落实"
,
title3
:
"申报单位是否建立了项目管理制度、资金管理制度,以及以上制度的落实情况。"
,
row3
:
3
,
title2
:
"内控制度健全性(5分)"
,
row2
:
3
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
9
},
{
meaning
:
"项目申报单位建立了科研项目管理、资金管理等办法制度,但执行落实不到位。"
,
score
:
"1-3"
,
title
:
"建立但落实不好"
,
title3
:
"申报单位是否建立了项目管理制度、资金管理制度,以及以上制度的落实情况。"
,
row3
:
0
,
title2
:
"内控制度健全性(5分)"
,
row2
:
0
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"项目申报单位未建立项目管理制度、资金管理制度。"
,
score
:
"0"
,
title
:
"未建立"
,
title3
:
"申报单位是否建立了项目管理制度、资金管理制度,以及以上制度的落实情况。"
,
row3
:
0
,
title2
:
"内控制度健全性(5分)"
,
row2
:
0
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"申报单位有承诺或提供的材料能保障研究所需的条件。"
,
score
:
"1-5"
,
title
:
"是"
,
title3
:
"申报单位是否拥有保璧项目开展所需的设备、场所等设施"
,
row3
:
2
,
title2
:
"配套支撑能力(5分)"
,
row2
:
2
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"申报单位无承诺。"
,
score
:
"0"
,
title
:
"否"
,
title3
:
"申报单位是否拥有保璧项目开展所需的设备、场所等设施"
,
row3
:
0
,
title2
:
"配套支撑能力(5分)"
,
row2
:
0
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"申报单位已聘用科研(财务)助理,已出台科研(财务)助理制度,并严格执行落实。"
,
score
:
"1-5"
,
title
:
"是"
,
title3
:
"申报单位是否设置科研(财务)助理,为科研人员在项目预算编制和调剂、经费支出、财务决算和验收等方面提供专业化服务。"
,
row3
:
2
,
title2
:
"科研服务能力(5分)"
,
row2
:
2
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"申报单位未出台、未执行科研(财务)助理制度。"
,
score
:
"0"
,
title
:
"否"
,
title3
:
"申报单位是否设置科研(财务)助理,为科研人员在项目预算编制和调剂、经费支出、财务决算和验收等方面提供专业化服务。"
,
row3
:
0
,
title2
:
"科研服务能力(5分)"
,
row2
:
0
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"申报单位科研诚信管理符合要求。"
,
score
:
"1-5"
,
title
:
"符合"
,
title3
:
"申报单位科研诚信记录是否符合要求。"
,
row3
:
2
,
title2
:
"科研诚信(5分)"
,
row2
:
2
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"申报单位科研诚信管理不符合要求。"
,
score
:
"0"
,
title
:
"不符合"
,
title3
:
"申报单位科研诚信记录是否符合要求。"
,
row3
:
0
,
title2
:
"科研诚信(5分)"
,
row2
:
0
,
title1
:
"申报单位管理能力(20分)"
,
row1
:
0
},
{
meaning
:
"自筹资金已落实,来源有保障,能确保项目研发任务实施和研发目标实现。"
,
score
:
"5"
,
title
:
"有"
,
title3
:
"自筹资金是否按指南等要求匹配,预算来源是否有保障。"
,
row3
:
2
,
title2
:
"自筹资金保障能力(5分)"
,
row2
:
2
,
title1
:
"预算保障能力(10分)"
,
row1
:
6
},
{
meaning
:
""
,
score
:
"0"
,
title
:
"无"
,
title3
:
"自筹资金是否按指南等要求匹配,预算来源是否有保障。"
,
row3
:
0
,
title2
:
"自筹资金保障能力(5分)"
,
row2
:
0
,
title1
:
"预算保障能力(10分)"
,
row1
:
0
},
{
meaning
:
""
,
score
:
"1-3"
,
title
:
"是"
,
title3
:
"资产负债率是否小于70%。(3分)"
,
row3
:
2
,
title2
:
"申报单位运营风险(5分)"
,
row2
:
4
,
title1
:
"预算保障能力(10分)"
,
row1
:
0
},
{
meaning
:
"项目申报单位提供的财务报告提取数据测算。"
,
score
:
"0"
,
title
:
"否(大于等于 70%)"
,
title3
:
"资产负债率是否小于70%。(3分)"
,
row3
:
0
,
title2
:
"申报单位运营风险(5分)"
,
row2
:
0
,
title1
:
"预算保障能力(10分)"
,
row1
:
0
},
{
meaning
:
"项目申报单位提供的财务报告提取数据测算。"
,
score
:
"1-2"
,
title
:
"是"
,
title3
:
"流动比率、速动比率、现金流等是否在正常范围内(2分)"
,
row3
:
2
,
title2
:
"申报单位运营风险(5分)"
,
row2
:
0
,
title1
:
"预算保障能力(10分)"
,
row1
:
0
},
{
meaning
:
""
,
score
:
"0"
,
title
:
"否"
,
title3
:
"流动比率、速动比率、现金流等是否在正常范围内(2分)"
,
row3
:
0
,
title2
:
"申报单位运营风险(5分)"
,
row2
:
0
,
title1
:
"预算保障能力(10分)"
,
row1
:
0
}],
formdata
:
[],
dataList
:
[
{
...
...
@@ -266,11 +318,7 @@ export default {
]
},
],
formData
:
{
},
rules
:
{
},
rules
:
{},
totalRow
:
0
};
},
...
...
@@ -298,7 +346,6 @@ export default {
})
})
})
this
.
a
=
list
}
},
};
...
...
src/views/query/project/Index.vue
View file @
171a1a43
...
...
@@ -21,7 +21,7 @@
<a-divider
style=
"height: 1px; background-color: #e8e8e8;"
/>
<div
class=
"submit-btn"
>
<a-button
type=
"primary"
@
click=
"exportData"
icon=
"download"
>
Excel
</a-button>
<
!--
<a-button
type=
"primary"
@
click=
"scoreClick"
icon=
"download"
>
评分
</a-button>
--
>
<
a-button
type=
"primary"
@
click=
"scoreClick"
icon=
"download"
>
评分
</a-button
>
</div>
<a-table
:dataSource=
"tableData"
:columns=
"columns"
:scroll=
"
{ x: 'max-content' }" rowKey="id" :pagination="false" :loading="loading">
<template
slot=
"projName"
slot-scope=
"record"
>
...
...
src/views/report/project/components/fileEdit.vue
View file @
171a1a43
...
...
@@ -10,16 +10,16 @@
<a-row
type=
"flex"
>
<a-col
:span=
"24"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<a
href=
"/downloadFile/202412130901.docx"
download=
"临床医学中心承诺书模版.docx"
style=
"margin-right: 20px;"
>
<a-icon
type=
"download"
></a-icon>
<span
style=
"color:green;text-decoration:underline;"
>
临床医学中心承诺书模版
</span>
</a>
<a
href=
"/downloadFile/202412130902.docx"
download=
"个人承诺书模版.docx"
style=
"margin-right: 20px;"
>
<a-icon
type=
"download"
></a-icon>
<span
style=
"color:green;text-decoration:underline;"
>
个人承诺书模版
</span>
</a>
<a
href=
"/downloadFile/202412130903.docx"
download=
"项目资金预算编制说明.docx"
style=
"margin-right: 20px;"
>
<a-icon
type=
"download"
></a-icon>
<span
style=
"color:green;text-decoration:underline;"
>
项目资金预算编制说明
</span>
</a>
</div>
<a
href=
"/downloadFile/202412130901.docx"
download=
"临床医学中心承诺书模版.docx"
style=
"margin-right: 20px;"
>
<a-icon
type=
"download"
></a-icon>
<span
style=
"color:green;text-decoration:underline;"
>
临床医学中心承诺书模版
</span>
</a>
<a
href=
"/downloadFile/202412130902.docx"
download=
"个人承诺书模版.docx"
style=
"margin-right: 20px;"
>
<a-icon
type=
"download"
></a-icon>
<span
style=
"color:green;text-decoration:underline;"
>
个人承诺书模版
</span>
</a>
<a
href=
"/downloadFile/202412130903.docx"
download=
"项目资金预算编制说明.docx"
style=
"margin-right: 20px;"
>
<a-icon
type=
"download"
></a-icon>
<span
style=
"color:green;text-decoration:underline;"
>
项目资金预算编制说明
</span>
</a>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
...
...
@@ -60,23 +60,13 @@
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
style=
"text-align: center;"
><div>
{{
item
.
isRequired
==
true
?
"是"
:
"否"
}}
</div></div>
<div
class=
"special-middle"
style=
"text-align: center;"
>
<div>
{{
item
.
isRequired
==
true
?
"是"
:
"否"
}}
</div>
</div>
</a-col>
<a-col
:span=
"10"
>
<div
class=
"special-middle"
>
<div
v-if=
"item.downloadUrl"
class=
"file-box"
>
<div>
<a-icon
type=
"file"
style=
"margin-right: 8px"
/>
<span
class=
"hover-pointer"
@
click=
"downloadfile(item)"
>
{{
item
.
fileName
}}
</span>
</div>
<a-icon
type=
"delete"
class=
"hover-pointer d-icon"
@
click=
"deletefile(item, index)"
/>
</div>
<div
v-else
>
<a-form-model-item
:prop=
"'fileList.' + index + '.downloadUrl'"
:rules=
"
{required: item.isRequired, message: '请上传附件',trigger: 'blur',}">
<input
type=
"file"
:ref=
"'fileElem' + index"
class=
"visually-hidden"
@
change=
"handleFiles(item, index)"
/>
<a-button
@
click=
"fileSelect(item, index)"
><a-icon
type=
"upload"
/>
选择文件
</a-button>
</a-form-model-item>
</div>
<file-load
:file
.
sync=
"fileList[index]"
:index=
"index"
:name=
"'fileList'"
/>
</div>
</a-col>
<a-col
:span=
"4"
>
...
...
@@ -104,7 +94,7 @@
</
template
>
<
script
>
const
File
=
{
fileName
:
""
,
downloadUrl
:
""
,
fileExplain
:
""
,
downloadId
:
""
,
isRequired
:
false
,
required
:
false
};
const
File
=
{
fileName
:
null
,
downloadUrl
:
null
,
fileExplain
:
null
,
downloadId
:
null
,
isRequired
:
false
,
required
:
false
};
export
default
{
name
:
"fileEdit"
,
...
...
@@ -116,68 +106,13 @@ export default {
},
},
},
created
()
{
},
data
()
{
created
()
{
},
data
()
{
return
{
mustAttachment
:
[
0
,
1
],
mustAttachment
:
[
0
,
1
],
};
},
methods
:
{
downloadfile
()
{
},
deletefile
(
item
,
index
)
{
this
.
$api
.
base
.
deletefile
({
id
:
item
.
downloadId
}).
then
(({
data
=
{}
})
=>
{
if
(
data
)
{
item
.
fileName
=
''
item
.
downloadUrl
=
''
item
.
downloadId
=
''
}
}).
catch
(()
=>
{
this
.
$message
.
error
(
'删除失败'
)
})
},
uploadHandle
(
file
,
fileName
)
{
let
formData
=
new
FormData
()
formData
.
append
(
'file'
,
file
)
formData
.
append
(
'fileName'
,
fileName
)
return
formData
},
handleFiles
(
item
,
index
)
{
let
fileElem
=
this
.
$refs
[
'fileElem'
+
index
][
0
]
let
files
=
fileElem
.
files
if
(
files
.
length
<=
0
)
{
this
.
$message
.
error
(
'未选中文件,请尝试重新选择'
)
return
}
if
(
!
this
.
fileCheck
(
files
[
0
]))
return
this
.
$api
.
base
.
asyncUpload
(
this
.
uploadHandle
(
files
[
0
],
files
[
0
].
name
)).
then
(({
data
=
{}
})
=>
{
if
(
data
)
{
item
.
fileName
=
files
[
0
].
name
item
.
downloadUrl
=
'/'
+
files
[
0
].
name
item
.
downloadId
=
data
.
id
}
else
this
.
$message
.
error
(
'上传失败'
)
}).
catch
(()
=>
{
this
.
$message
.
error
(
'上传失败'
)
})
},
fileSelect
(
item
,
index
)
{
let
fileElem
=
this
.
$refs
[
'fileElem'
+
index
][
0
]
if
(
fileElem
)
{
fileElem
.
click
()
}
},
fileCheck
(
file
)
{
//判断是否小于1M
let
isLtSize
=
file
.
size
<
1024
*
1024
*
15
;
if
(
!
isLtSize
)
{
this
.
$message
.
error
(
'文件大小不能超过15M!'
);
return
false
}
return
true
},
// 添加附件
addfileList
()
{
this
.
fileList
.
push
(
Object
.
assign
({
...
File
},
{
fileExplain
:
''
}))
...
...
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