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
170ce7ae
Commit
170ce7ae
authored
Dec 20, 2024
by
wangxl
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
333323
parent
fc57327f
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
95 additions
and
67 deletions
+95
-67
economy.vue
src/views/evaluation/components/economy.vue
+85
-55
score.vue
src/views/evaluation/components/score.vue
+9
-2
Index.vue
src/views/query/project/Index.vue
+1
-10
No files found.
src/views/evaluation/components/economy.vue
View file @
170ce7ae
<
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"
>
<
!--
<a-form-model
ref=
"form"
:model=
"value"
:rules=
"rules"
class=
"from-table font-line-space"
>
--
>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
...
...
@@ -9,7 +9,7 @@
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
{{
}}
</div>
<div>
{{
value
.
projName
}}
</div>
</div>
</a-col>
</a-row>
...
...
@@ -21,7 +21,7 @@
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
}}
</div>
<div>
{{
value
.
appUnitName
}}
</div>
</div>
</a-col>
<a-col
:span=
"4"
class=
"bg-gray"
>
...
...
@@ -31,7 +31,7 @@
</a-col>
<a-col
:span=
"8"
>
<div
class=
"special-middle"
>
<div>
{{
Count
()
}}
</div>
<div>
{{
value
.
appPersonName
}}
</div>
</div>
</a-col>
</a-row>
...
...
@@ -56,61 +56,61 @@
<td>
{{
item
.
meaning
}}
</td>
<td
style=
"text-align: center;"
:rowspan=
"item.row3"
v-if=
"item.row3>0"
>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==1"
>
<a-input-number
v-model=
"formData
.score1"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score1"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==2"
>
<a-input-number
v-model=
"formData
.score2"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score2"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==3"
>
<a-input-number
v-model=
"formData
.score3"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score3"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==4"
>
<a-input-number
v-model=
"formData
.score4"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score4"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==5"
>
<a-input-number
v-model=
"formData
.score5"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score5"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==6"
>
<a-input-number
v-model=
"formData
.score6"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score6"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==7"
>
<a-input-number
v-model=
"formData
.score7"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score7"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==8"
>
<a-input-number
v-model=
"formData
.score8"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score8"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==9"
>
<a-input-number
v-model=
"formData
.score9"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score9"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==10"
>
<a-input-number
v-model=
"formData
.score10"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score10"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==11"
>
<a-input-number
v-model=
"formData
.score11"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score11"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==12"
>
<a-input-number
v-model=
"formData
.score12"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score12"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==13"
>
<a-input-number
v-model=
"formData
.score13"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score13"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==14"
>
<a-input-number
v-model=
"formData
.score14"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score14"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==15"
>
<a-input-number
v-model=
"formData
.score15"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score15"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==16"
>
<a-input-number
v-model=
"formData
.score16"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score16"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==17"
>
<a-input-number
v-model=
"formData
.score17"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score17"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==18"
>
<a-input-number
v-model=
"formData
.score18"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score18"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
<a-form-model-item
:prop=
"'score' + item.order"
v-if=
"item.order==19"
>
<a-input-number
v-model=
"formData
.score19"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.score19"
:min=
"0"
:max=
"item.max"
style=
"width: 60%"
/>
</a-form-model-item>
</td>
</tr>
...
...
@@ -122,18 +122,50 @@
<td
colspan=
"3"
>
未发现问题,则该指标不适用;发现问题的,每涉及一个项目扣3分
</td>
<td
style=
"text-align: center;"
>
<a-form-model-item
:prop=
"'additionalScore'"
>
<a-input-number
v-model=
"formData
.additionalScore"
:max=
"0"
style=
"width: 60%"
/>
<a-input-number
v-model=
"value
.additionalScore"
:max=
"0"
style=
"width: 60%"
/>
</a-form-model-item>
</td>
</tr>
<tr>
<td
style=
"text-align: center;"
colspan=
"7"
>
总得分
</td>
<td
style=
"text-align: center;"
>
{{
0
}}
{{
Count
()
}}
</td>
</tr>
<tr>
<td
colspan=
"4"
style=
"text-align: right;"
>
项目申报财政支持金额(万元)
</td>
<td
colspan=
"4"
style=
"text-align: left;"
>
{{
value
.
applyFunding
}}
</td>
</tr>
<tr>
<td
colspan=
"4"
style=
"text-align: right;"
>
项目预算评审建议财政支持金额(万元)
</td>
<td
colspan=
"4"
style=
"text-align: left;"
>
<a-form-model-item
:prop=
"'recommendFunding'"
>
<a-input-number
v-model=
"value.recommendFunding"
:min=
"0"
style=
"width:100px"
/>
</a-form-model-item>
</td>
</tr>
<tr>
<td
colspan=
"4"
style=
"text-align: right;"
>
意见与建议
</td>
<td
colspan=
"4"
style=
"text-align: left;"
>
<a-form-model-item
prop=
"remark"
>
<a-textarea
placeholder=
"评审意见"
v-model=
"value.remark"
:maxLength=
"1000"
style=
"width: 80%; height: 120px; margin-top: 6px"
/>
</a-form-model-item>
</td>
</tr>
<tr>
<td
colspan=
"4"
class=
"bg-title"
style=
"text-align: right;"
>
评审结果
</td>
<td
colspan=
"4"
>
<a-form-model-item
prop=
"evaluationType"
>
<a-radio-group
v-model=
"value.evaluationType"
disabled
>
<a-radio
:value=
"1"
>
A类(通过)
</a-radio>
<a-radio
:value=
"2"
>
B类(建议修改)
</a-radio>
<a-radio
:value=
"3"
>
C类(不通过)
</a-radio>
</a-radio-group>
</a-form-model-item>
</td>
</tr>
</table>
<
/a-form-model
>
<
!--
</a-form-model>
--
>
</div>
</
template
>
...
...
@@ -153,7 +185,7 @@ export default {
data
()
{
return
{
fromList
:
standardList
,
formData
:
{
w
:
{
score1
:
null
,
score2
:
null
,
score3
:
null
,
...
...
@@ -174,6 +206,11 @@ export default {
score18
:
null
,
score19
:
null
,
additionalScore
:
null
,
totalScore
:
null
,
applyFunding
:
null
,
recommendFunding
:
null
,
remark
:
null
,
evaluationType
:
null
,
},
rules
:
{
score1
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
...
...
@@ -196,6 +233,9 @@ export default {
score18
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
score19
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
additionalScore
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
recommendFunding
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
remark
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
evaluationType
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"change"
},
},
};
},
...
...
@@ -204,39 +244,29 @@ export default {
},
methods
:
{
Count
()
{
var
s
=
0.0
;
for
(
var
i
=
1
;
i
<=
19
;
i
++
)
{
console
.
log
(
this
.
formData
[
'score'
+
i
])
if
(
this
.
value
[
'score'
+
i
])
{
s
+=
parseFloat
(
this
.
value
[
'score'
+
i
])
}
return
0.00
// if (!source || !source.length) {
// return 0.00
// }
// let applyFunds = 0.00
// let selfFunds = 0.00
// source.forEach(i => {
// applyFunds = parseFloat(applyFunds + this.budget[i].applyFunds)
// selfFunds = parseFloat(selfFunds + this.budget[i].selfFunds)
// })
// if (type === 'applyFunds') {
// this.budget[index].applyFunds = applyFunds.toFixed(2)
// return applyFunds.toFixed(2)
// } else if (type === 'selfFunds') {
// this.budget[index].selfFunds = selfFunds.toFixed(2)
// return selfFunds.toFixed(2)
// } else {
// this.budget[index].totalBudget = (applyFunds + selfFunds).toFixed(2)
// return parseFloat(applyFunds + selfFunds).toFixed(2)
// }
}
if
(
!!
this
.
value
.
additionalScore
)
{
s
+=
parseFloat
(
this
.
value
.
additionalScore
)
}
s
=
s
.
toFixed
(
1
)
*
10
/
10
this
.
value
.
totalScore
=
s
this
.
determineType
()
return
s
},
determineType
()
{
if
(
this
.
value
.
totalScore
>=
80
)
this
.
value
.
evaluationType
=
1
else
if
(
this
.
value
.
totalScore
<
80
&&
this
.
value
.
totalScore
>=
60
)
this
.
value
.
evaluationType
=
2
else
this
.
value
.
evaluationType
=
3
},
watch
:
{
formData
:
{
handler
(
value
)
{
console
.
log
(
value
)
},
deep
:
true
}
}
};
</
script
>
<
style
scoped
lang=
"less"
>
...
...
src/views/evaluation/components/score.vue
View file @
170ce7ae
...
...
@@ -11,9 +11,8 @@
<div
v-show=
"tabsActive==='1'"
style=
"height:100%;"
>
<div
style=
"height:calc(100% - 40px);overflow: auto;"
>
<a-form-model
ref=
"form"
:model=
"formData"
:rules=
"rules"
class=
"from-table font-line-space"
>
<economy
v-model=
"formData"
v-if=
"false"
/>
<technology-evalucation
v-if=
"totalFunding >= 50"
v-model=
"formData"
></technology-evalucation>
<economy
v-if=
"totalFunding
<
50
"
v-model=
"formData"
/>
<div
v-else
>
<a-row
type=
"flex"
>
<a-col
:span=
"4"
class=
"bg-gray"
>
...
...
@@ -191,6 +190,10 @@ export default {
remark
:
[{
required
:
true
,
message
:
'请填写评审意见'
,
trigger
:
'blur'
},],
supportState
:
{
required
:
true
,
message
:
"请选择是否支持立项"
,
trigger
:
"blur"
},
evaluationType
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
score18
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
score19
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
additionalScore
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
recommendFunding
:
{
required
:
true
,
message
:
"*"
,
trigger
:
"blur"
},
},
projectInfo
:
{
projName
:
''
,
...
...
@@ -287,6 +290,10 @@ export default {
if
(
this
.
projectInfo
.
fileList
[
i
].
fileExplain
.
indexOf
(
"项目申报简要信息首页"
)
==
-
1
&&
this
.
projectInfo
.
fileList
[
i
].
fileExplain
.
indexOf
(
"项目组成员签字"
)
==
-
1
)
fileArr
.
push
(
this
.
projectInfo
.
fileList
[
i
])
}
this
.
formData
.
projName
=
data
.
projName
this
.
formData
.
appUnitName
=
data
.
appUnitName
this
.
formData
.
appPersonName
=
data
.
appPersonName
this
.
formData
.
applyFunding
=
data
.
govFunding
this
.
projectInfo
.
fileList
=
fileArr
this
.
isProjectInfoLoad
=
true
this
.
loading
=
false
...
...
src/views/query/project/Index.vue
View file @
170ce7ae
...
...
@@ -21,7 +21,6 @@
<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>
-->
</div>
<a-table
:dataSource=
"tableData"
:columns=
"columns"
:scroll=
"
{ x: 'max-content' }" rowKey="id" :pagination="false" :loading="loading">
<template
slot=
"projName"
slot-scope=
"record"
>
...
...
@@ -40,9 +39,6 @@
<a-modal
v-model=
"visibleView"
v-if=
"visibleView"
title=
"项目详情"
width=
"94%"
:footer=
"null"
:dialog-style=
"{ top: '8%' }"
destroyOnClose
:maskClosable=
"false"
>
<project-view
v-model=
"id"
@
close=
"closeWindow"
></project-view>
</a-modal>
<a-modal
v-model=
"visibleScore"
v-if=
"visibleScore"
title=
"评分"
width=
"94%"
:footer=
"null"
:dialog-style=
"{ top: '8%' }"
destroyOnClose
:maskClosable=
"false"
>
<score-edit
/>
</a-modal>
</div>
</template>
...
...
@@ -51,11 +47,10 @@ import { getType } from '@/views/utils/auth'
import
moment
from
'moment'
import
{
isEmptyParams
,
filterExportExcelData
,
tableColumnsName
}
from
"@/views/utils/common"
;
import
projectView
from
'@/views/report/project/components/projectView'
import
scoreEdit
from
'@/views/evaluation/components/economy'
export
default
{
name
:
'queryProject'
,
components
:
{
projectView
,
scoreEdit
projectView
},
data
()
{
return
{
...
...
@@ -79,7 +74,6 @@ export default {
loading
:
false
,
// 弹窗标志
visibleView
:
false
,
visibleScore
:
false
,
id
:
null
,
loadState
:
false
}
...
...
@@ -87,9 +81,6 @@ export default {
created
()
{
},
methods
:
{
scoreClick
()
{
this
.
visibleScore
=
true
},
search
()
{
this
.
pagination
.
pageIndex
=
1
this
.
getListByPage
()
...
...
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