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
d65714cc
Commit
d65714cc
authored
Dec 16, 2024
by
wangxl
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
33333
parent
526fb8dc
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
497 additions
and
247 deletions
+497
-247
deviceEdit.vue
src/views/report/project/components/deviceEdit.vue
+103
-0
equipmentsEdit.vue
src/views/report/project/components/equipmentsEdit.vue
+10
-227
equipmentsEdit.vue
...s/report/project/components/keyProject/equipmentsEdit.vue
+358
-0
managementRuleEdit.vue
src/views/report/project/components/managementRuleEdit.vue
+4
-4
projectEdit.vue
src/views/report/project/components/projectEdit.vue
+12
-6
projectResearchEdit.vue
src/views/report/project/components/projectResearchEdit.vue
+4
-4
projectSubEdit.vue
src/views/report/project/components/projectSubEdit.vue
+4
-4
unitPaymentEdit.vue
src/views/report/project/components/unitPaymentEdit.vue
+2
-2
No files found.
src/views/report/project/components/deviceEdit.vue
0 → 100644
View file @
d65714cc
<
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=
"20"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
名称
</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 deviceList"
:key=
"'deviceList'+index"
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
>
<div>
{{
index
+
1
}}
</div>
</div>
</a-col>
<a-col
:span=
"20"
>
<div
class=
"special-middle"
>
<div>
<a-form-model-item
:prop=
"'deviceList.' + index + '.name'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.name"
: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
>
const
Device
=
{
name
:
null
,
}
export
default
{
name
:
'deviceEdit'
,
data
()
{
return
{
}
},
props
:
{
deviceList
:
{
type
:
Array
,
default
:
()
=>
{
return
[]
}
},
},
components
:
{
},
created
()
{
},
methods
:
{
addArray
()
{
//添加成员
this
.
deviceList
.
push
({
...
Device
})
},
removeArray
(
item
)
{
//移除成员
let
index
=
this
.
deviceList
.
indexOf
(
item
)
if
(
index
!==
-
1
)
{
this
.
deviceList
.
splice
(
index
,
1
)
}
},
},
}
</
script
>
src/views/report/project/components/equipmentsEdit.vue
View file @
d65714cc
...
...
@@ -8,7 +8,7 @@
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"
1
"
class=
"bg-gray"
>
<a-col
:span=
"
2
"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
序号
</div>
</div>
...
...
@@ -18,239 +18,22 @@
<div>
设备名称
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
功能和技术指标
</div>
</div>
</a-col>
<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>
数量(套台)
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
金额(万元)
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
购置单位
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
存放单位(地点)
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
设备类型
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
主要生产
<br
/>
厂家及国别
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
规格型号
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
拟开发共享范围
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
购置必要性及
<br
/>
对项目研究的
<br
/>
作用和用途
</div>
</div>
</a-col>
</a-row>
<div>
<a-row
v-for=
"(item, index) in equipments"
:key=
"'equipments'+index"
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><a-button
icon=
"close"
type=
"primary"
shape=
"circle"
size=
"small"
@
click=
"deleteEquipment(item)"
></a-button>
{{
index
+
1
}}
</div>
</a-col>
<a-col
:span=
"2"
>
<a-col
:span=
"2
0
"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.name'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.name"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.functionTarget'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.functionTarget"
:maxLength=
"200"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.unitPrice'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input-number
v-model=
"item.unitPrice"
@
change=
"outUnitPriceChange(index)"
:min=
"0"
:step=
"0.01"
style=
"width: 90%"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"1"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.quantity'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input-number
v-model=
"item.quantity"
@
change=
"outNumberChange(index)"
:min=
"1"
:step=
"1"
style=
"width: 90%"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
>
<div>
{{
parseFloat
(
item
.
totalBudget
).
toFixed
(
2
)
}}
</div>
</div>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.buyUnit'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.buyUnit"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.storageLocation'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.storageLocation"
:maxLength=
"200"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.equipmentType'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.equipmentType"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.manufacturer'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.manufacturer"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.specificationType'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.specificationType"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.sharedScope'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.sharedScope"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.useFrom'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.useFrom"
:maxLength=
"200"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
</a-row>
</div>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
><div>
单价50万元及以上购置设备合计
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><div>
{{
fiftyUpNumber
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
{{
parseFloat
(
fiftyUpAmount
).
toFixed
(
2
)
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
><div>
单价50万元以下购置设备合计
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><div>
{{
fiftyDownNumber
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
{{
parseFloat
(
fiftyDownAmount
).
toFixed
(
2
)
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
><div>
累计
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><div>
{{
totalNumber
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
{{
parseFloat
(
totalAmount
).
toFixed
(
2
)
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
</a-row>
<div></div>
<a-row
type=
"flex"
>
<a-col
:span=
"24"
style=
"text-align: center"
>
<div
class=
"special-middle"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
e
y()"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
a
y()"
>
<a-icon
type=
"plus"
/>
添加
<span
style=
"color:red;margin-left:10px"
></span>
</a-button>
</div>
...
...
@@ -285,7 +68,7 @@ const Equipment = {
export
default
{
name
:
"EquipmentEdit"
,
data
()
{
data
()
{
return
{
fiftyUpNumber
:
0
,
fiftyUpAmount
:
0.00
,
...
...
@@ -307,7 +90,7 @@ export default {
console
.
log
(
this
.
equipments
)
},
methods
:
{
calNumberAmount
()
{
calNumberAmount
()
{
this
.
fiftyUpAmount
=
0.00
this
.
fiftyDownAmount
=
0.00
this
.
fiftyUpNumber
=
0
...
...
@@ -324,20 +107,20 @@ export default {
this
.
totalNumber
=
this
.
fiftyUpNumber
+
this
.
fiftyDownNumber
this
.
totalAmount
=
this
.
fiftyUpAmount
+
this
.
fiftyDownAmount
},
outUnitPriceChange
(
index
)
{
outUnitPriceChange
(
index
)
{
this
.
equipments
[
index
].
totalBudget
=
this
.
equipments
[
index
].
unitPrice
*
this
.
equipments
[
index
].
quantity
this
.
calNumberAmount
()
},
outNumberChange
(
index
)
{
outNumberChange
(
index
)
{
this
.
equipments
[
index
].
totalBudget
=
this
.
equipments
[
index
].
unitPrice
*
this
.
equipments
[
index
].
quantity
this
.
calNumberAmount
()
},
addArr
ey
()
{
addArr
ay
()
{
this
.
equipments
.
push
({
...
Equipment
})
console
.
log
(
this
.
equipments
)
//this.calNumberAmount()
},
deleteEquipment
(
item
)
{
deleteEquipment
(
item
)
{
let
index
=
this
.
equipments
.
indexOf
(
item
)
if
(
index
!==
-
1
)
{
this
.
equipments
.
splice
(
index
,
1
)
...
...
src/views/report/project/components/keyProject/equipmentsEdit.vue
0 → 100644
View file @
d65714cc
<
template
>
<div>
<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=
"1"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
序号
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
设备名称
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
功能和技术指标
</div>
</div>
</a-col>
<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>
数量(套台)
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
金额(万元)
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
购置单位
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
存放单位(地点)
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
设备类型
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
主要生产
<br
/>
厂家及国别
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
规格型号
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
拟开发共享范围
</div>
</div>
</a-col>
<a-col
:span=
"2"
class=
"bg-gray"
>
<div
class=
"special-middle"
>
<div>
购置必要性及
<br
/>
对项目研究的
<br
/>
作用和用途
</div>
</div>
</a-col>
</a-row>
<div>
<a-row
v-for=
"(item, index) in equipments"
:key=
"'equipments'+index"
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><a-button
icon=
"close"
type=
"primary"
shape=
"circle"
size=
"small"
@
click=
"deleteEquipment(item)"
></a-button>
{{
index
+
1
}}
</div>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.name'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.name"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.functionTarget'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.functionTarget"
:maxLength=
"200"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.unitPrice'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input-number
v-model=
"item.unitPrice"
@
change=
"outUnitPriceChange(index)"
:min=
"0"
:step=
"0.01"
style=
"width: 90%"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"1"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.quantity'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input-number
v-model=
"item.quantity"
@
change=
"outNumberChange(index)"
:min=
"1"
:step=
"1"
style=
"width: 90%"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
>
<div>
{{
parseFloat
(
item
.
totalBudget
).
toFixed
(
2
)
}}
</div>
</div>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.buyUnit'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.buyUnit"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.storageLocation'"
:rules=
"
{required: true, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.storageLocation"
:maxLength=
"200"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.equipmentType'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.equipmentType"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.manufacturer'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.manufacturer"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.specificationType'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.specificationType"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.sharedScope'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.sharedScope"
:maxLength=
"100"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"2"
>
<a-form-model-item
:prop=
"'equipments.' + index + '.useFrom'"
:rules=
"
{required: false, message: '*', trigger: 'blur',}">
<a-input
v-model=
"item.useFrom"
:maxLength=
"200"
style=
"width: 90%;"
/>
</a-form-model-item>
</a-col>
</a-row>
</div>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
><div>
单价50万元及以上购置设备合计
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><div>
{{
fiftyUpNumber
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
{{
parseFloat
(
fiftyUpAmount
).
toFixed
(
2
)
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
><div>
单价50万元以下购置设备合计
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><div>
{{
fiftyDownNumber
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
{{
parseFloat
(
fiftyDownAmount
).
toFixed
(
2
)
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"row_center"
>
<a-col
:span=
"5"
>
<div
class=
"special-middle"
><div>
累计
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"1"
>
<div
class=
"special-middle"
><div>
{{
totalNumber
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
{{
parseFloat
(
totalAmount
).
toFixed
(
2
)
}}
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></div>
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
><div>
/
</div></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: 20%"
@
click=
"addArray()"
>
<a-icon
type=
"plus"
/>
添加
<span
style=
"color:red;margin-left:10px"
></span>
</a-button>
</div>
</a-col>
</a-row>
<a-row
type=
"flex"
class=
"item_inner"
>
<a-col
:span=
"24"
>
<span
style=
"color: red;"
>
注:1.本表只填写省级财政科技资金购置的设备;涉及自筹经费购买的设备,请在资金预算编制说明中说明。
<br
/>
2.单价50万元以下的设备不填写明细。
</span>
</a-col>
</a-row>
</div>
</
template
>
<
script
>
const
Equipment
=
{
id
:
""
,
objectId
:
""
,
name
:
""
,
functionTarget
:
""
,
specificationType
:
""
,
quantity
:
1
,
totalBudget
:
0.00
,
useFrom
:
""
,
buyUnit
:
""
,
storageLocation
:
""
,
equipmentType
:
""
,
manufacturer
:
""
,
sharedScope
:
""
,
unitPrice
:
0.00
,
};
export
default
{
name
:
"EquipmentEdit"
,
data
()
{
return
{
fiftyUpNumber
:
0
,
fiftyUpAmount
:
0.00
,
fiftyDownNumber
:
0
,
fiftyDownAmount
:
0.00
,
totalNumber
:
0
,
totalAmount
:
0.00
,
};
},
props
:
{
equipments
:
{
type
:
Array
,
default
:
()
=>
{
return
[];
},
},
},
created
()
{
console
.
log
(
this
.
equipments
)
},
methods
:
{
calNumberAmount
()
{
this
.
fiftyUpAmount
=
0.00
this
.
fiftyDownAmount
=
0.00
this
.
fiftyUpNumber
=
0
this
.
fiftyDownNumber
=
0
this
.
equipments
.
forEach
(
e
=>
{
if
(
e
.
unitPrice
>=
50
)
{
this
.
fiftyUpAmount
+=
e
.
unitPrice
*
e
.
quantity
this
.
fiftyUpNumber
+=
e
.
quantity
}
else
{
this
.
fiftyDownAmount
+=
e
.
unitPrice
*
e
.
quantity
this
.
fiftyDownNumber
+=
e
.
quantity
}
})
this
.
totalNumber
=
this
.
fiftyUpNumber
+
this
.
fiftyDownNumber
this
.
totalAmount
=
this
.
fiftyUpAmount
+
this
.
fiftyDownAmount
},
outUnitPriceChange
(
index
)
{
this
.
equipments
[
index
].
totalBudget
=
this
.
equipments
[
index
].
unitPrice
*
this
.
equipments
[
index
].
quantity
this
.
calNumberAmount
()
},
outNumberChange
(
index
)
{
this
.
equipments
[
index
].
totalBudget
=
this
.
equipments
[
index
].
unitPrice
*
this
.
equipments
[
index
].
quantity
this
.
calNumberAmount
()
},
addArray
()
{
this
.
equipments
.
push
({
...
Equipment
})
console
.
log
(
this
.
equipments
)
//this.calNumberAmount()
},
deleteEquipment
(
item
)
{
let
index
=
this
.
equipments
.
indexOf
(
item
)
if
(
index
!==
-
1
)
{
this
.
equipments
.
splice
(
index
,
1
)
}
this
.
calNumberAmount
()
},
},
watch
:
{
equipments
:
{
handler
(
equipments
)
{
if
(
!!
equipments
)
this
.
calNumberAmount
()
},
},
}
};
</
script
>
\ No newline at end of file
src/views/report/project/components/managementRuleEdit.vue
View file @
d65714cc
...
...
@@ -77,7 +77,7 @@
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
>
<a-popconfirm
title=
"确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteArr
e
y(item)"
>
<a-popconfirm
title=
"确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteArr
a
y(item)"
>
<a-button
type=
"link"
size=
"small"
>
删除
</a-button>
</a-popconfirm>
</div>
...
...
@@ -86,7 +86,7 @@
<a-row
type=
"flex"
>
<a-col
:span=
"24"
style=
"text-align: center"
>
<div
class=
"special-middle"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
e
y()"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
a
y()"
>
<a-icon
type=
"plus"
/>
添加
<span
style=
"color:red;margin-left:10px"
></span>
</a-button>
</div>
...
...
@@ -126,10 +126,10 @@ export default {
},
methods
:
{
addArr
e
y
()
{
//添加成员
addArr
a
y
()
{
//添加成员
this
.
managementRuleList
.
push
({
...
ManagementRule
})
},
deleteArr
e
y
(
item
)
{
//移除成员
deleteArr
a
y
(
item
)
{
//移除成员
let
index
=
this
.
managementRuleList
.
indexOf
(
item
)
if
(
index
!==
-
1
)
{
this
.
managementRuleList
.
splice
(
index
,
1
)
...
...
src/views/report/project/components/projectEdit.vue
View file @
d65714cc
...
...
@@ -583,8 +583,11 @@
</a-col>
</a-row>
<!-- 购置设备预算明细表 -->
<equipments-edit
:equipments
.
sync=
"formData.equipments"
></equipments-edit>
<!-- 设备费-购置设备预算明细表 -->
<!--
<equipments-edit
:equipments
.
sync=
"formData.equipments"
/>
-->
<device-edit
:deviceList
.
sync=
"formData.deviceList"
/>
<!-- 附件 -->
<file-edit
:fileList
.
sync=
"formData.fileList"
/>
...
...
@@ -598,6 +601,9 @@ import previewFile from '@/views/components/common/previewFile'
import
{
getType
}
from
'@/views/utils/auth'
import
projectMemberEdit
from
'@/views/report/project/components/projectMemberEdit'
import
cooperativeUnitsEdit
from
'@/views/report/project/components/cooperativeUnitsEdit'
import
deviceEdit
from
'@/views/report/project/components/deviceEdit'
import
budgetEdit
from
'@/views/report/project/components/budgetEdit'
import
fundPlanEdit
from
'@/views/report/project/components/fundPlanEdit'
import
projectKpiEdit
from
'@/views/report/project/components/projectKpiEdit'
...
...
@@ -654,7 +660,7 @@ import cascaderSelect from '@/views/components/common/cascaderSelect'
export
default
{
name
:
'projectEdit'
,
components
:
{
projectMemberEdit
,
cooperativeUnitsEdit
,
budgetEdit
,
fundPlanEdit
,
projectKpiEdit
,
fileEdit
,
previewFile
,
documentView
,
cascaderSelect
,
equipmentsEdit
projectMemberEdit
,
cooperativeUnitsEdit
,
budgetEdit
,
fundPlanEdit
,
projectKpiEdit
,
fileEdit
,
previewFile
,
documentView
,
cascaderSelect
,
equipmentsEdit
,
deviceEdit
},
props
:
{
value
:
{
...
...
@@ -715,7 +721,7 @@ export default {
members
:
[],
budget
:
[],
fundPlan
:
[],
equipments
:
[],
deviceList
:
[],
fileList
:
[],
auditList
:
[],
managerDept
:
""
,
...
...
@@ -791,8 +797,8 @@ export default {
if
(
!!!
this
.
formData
.
members
||
this
.
formData
.
members
.
length
==
0
)
this
.
formData
.
members
=
[]
if
(
!!!
this
.
formData
.
equipments
||
this
.
formData
.
equipments
.
length
==
0
)
this
.
formData
.
equipments
=
[]
if
(
!!!
this
.
formData
.
deviceList
||
this
.
formData
.
deviceList
.
length
==
0
)
this
.
formData
.
deviceList
=
[]
if
(
!!!
this
.
formData
.
fileList
||
!
this
.
formData
.
fileList
.
length
||
this
.
formData
.
fileList
.
length
==
0
)
{
this
.
formData
.
fileList
=
[]
...
...
src/views/report/project/components/projectResearchEdit.vue
View file @
d65714cc
...
...
@@ -80,7 +80,7 @@
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
>
<a-popconfirm
title=
"确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteArr
e
y(item)"
>
<a-popconfirm
title=
"确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteArr
a
y(item)"
>
<a-button
type=
"link"
size=
"small"
>
删除
</a-button>
</a-popconfirm>
</div>
...
...
@@ -89,7 +89,7 @@
<a-row
type=
"flex"
>
<a-col
:span=
"24"
style=
"text-align: center"
>
<div
class=
"special-middle"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
e
y()"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
a
y()"
>
<a-icon
type=
"plus"
/>
添加
<span
style=
"color:red;margin-left:10px"
></span>
</a-button>
</div>
...
...
@@ -128,10 +128,10 @@ export default {
},
methods
:
{
addArr
e
y
()
{
//添加成员
addArr
a
y
()
{
//添加成员
this
.
projectResearchList
.
push
({
...
ProjResearch
})
},
deleteArr
e
y
(
item
)
{
//移除成员
deleteArr
a
y
(
item
)
{
//移除成员
let
index
=
this
.
projectResearchList
.
indexOf
(
item
)
if
(
index
!==
-
1
)
{
this
.
projectResearchList
.
splice
(
index
,
1
)
...
...
src/views/report/project/components/projectSubEdit.vue
View file @
d65714cc
...
...
@@ -107,7 +107,7 @@
</a-col>
<a-col
:span=
"2"
>
<div
class=
"special-middle"
>
<a-popconfirm
title=
"确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteArr
e
y(item)"
>
<a-popconfirm
title=
"确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteArr
a
y(item)"
>
<a-button
type=
"link"
size=
"small"
>
删除
</a-button>
</a-popconfirm>
</div>
...
...
@@ -116,7 +116,7 @@
<a-row
type=
"flex"
>
<a-col
:span=
"24"
style=
"text-align: center"
>
<div
class=
"special-middle"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
e
y()"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
a
y()"
>
<a-icon
type=
"plus"
/>
添加
<span
style=
"color:red;margin-left:10px"
></span>
</a-button>
</div>
...
...
@@ -156,10 +156,10 @@ export default {
},
methods
:
{
addArr
e
y
()
{
//添加成员
addArr
a
y
()
{
//添加成员
this
.
projectSubList
.
push
({
...
ProjectSub
})
},
deleteArr
e
y
(
item
)
{
//移除成员
deleteArr
a
y
(
item
)
{
//移除成员
let
index
=
this
.
projectSubList
.
indexOf
(
item
)
if
(
index
!==
-
1
)
{
this
.
projectSubList
.
splice
(
index
,
1
)
...
...
src/views/report/project/components/unitPaymentEdit.vue
View file @
d65714cc
...
...
@@ -135,7 +135,7 @@
<a-row
type=
"flex"
>
<a-col
:span=
"24"
style=
"text-align: center"
>
<div
class=
"special-middle"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
e
y()"
>
<a-button
type=
"dashed"
style=
"width: 20%"
@
click=
"addArr
a
y()"
>
<a-icon
type=
"plus"
/>
添加
<span
style=
"color:red;margin-left:10px"
></span>
</a-button>
</div>
...
...
@@ -192,7 +192,7 @@ export default {
created
()
{
},
methods
:
{
addArr
e
y
()
{
addArr
a
y
()
{
this
.
unitPayment
.
push
(
Object
.
assign
({
...
Payment
}))
},
deleteUnitPayment
(
item
)
{
...
...
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