Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-operate-sys-cscec
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
fulixin
dsk-operate-sys-cscec
Commits
f696a587
Commit
f696a587
authored
Mar 01, 2024
by
danfuman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改
parent
136743d3
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
272 additions
and
99 deletions
+272
-99
index.js
dsk-operate-ui/src/api/projectCostLedger/index.js
+17
-2
index.vue
...Ledger/detail/components/EngineeringInformation/index.vue
+58
-17
index.vue
...ojectCostLedger/detail/components/OtherProjects/index.vue
+194
-77
index.vue
dsk-operate-ui/src/views/projectCostLedger/detail/index.vue
+3
-3
No files found.
dsk-operate-ui/src/api/projectCostLedger/index.js
View file @
f696a587
...
...
@@ -185,6 +185,14 @@ export const getFeedSummaryListApi = (params = {}) => request({
params
});
//工程项目信息
export
const
getCbProjectInfo
=
(
relatedId
)
=>
request
({
url
:
'/cbProjectRecord/getCbProjectInfo/'
+
relatedId
,
method
:
"get"
,
});
// 其他项目
//其他项目左侧菜单
...
...
@@ -198,3 +206,10 @@ export const getProjectOtherStatistics = (relatedId) => request({
url
:
'/cb/projectOther/statistics/'
+
relatedId
,
method
:
"get"
,
});
//其他费用-其他费用列表
export
const
getProjectOtherList
=
(
params
=
{})
=>
request
({
url
:
"/cb/projectOther/list"
,
method
:
"get"
,
params
});
dsk-operate-ui/src/views/projectCostLedger/detail/components/EngineeringInformation/index.vue
View file @
f696a587
...
...
@@ -44,33 +44,33 @@
</
template
>
<
script
>
import
InfoTable
from
'../../../../component/infoTable'
;
import
{
getCbProjectInfo
}
from
"@/api/projectCostLedger"
;
export
default
{
name
:
"projectInformation"
,
components
:
{
InfoTable
},
data
()
{
return
{
comProjectId
:
''
,
labelWidth
:
250
,
forInfo
:
{
name
:
'宝安中学(集团)初中部改扩建工程施工总承包(二次公告)'
,
},
forInfo
:
{
},
defaultList1
:
[
// { name: '工程名称', prop: 'name', slot: true },
{
name
:
'工程名称'
,
prop
:
'
n
ame'
,
style
:
true
},
{
name
:
'工程所在地'
,
prop
:
'
creditNo
'
},
{
name
:
'工程详细地址'
,
prop
:
'
operName
'
},
{
name
:
'工程名称'
,
prop
:
'
projectN
ame'
,
style
:
true
},
{
name
:
'工程所在地'
,
prop
:
'
areaName
'
},
{
name
:
'工程详细地址'
,
prop
:
'
projectAddress
'
},
{
name
:
'业态'
,
prop
:
'status'
},
{
name
:
'工程类型'
,
prop
:
'
startDate
'
},
{
name
:
'工程类型'
,
prop
:
'
projectType1
'
},
{
name
:
'计价模式(清单/定额)'
,
prop
:
'registCapi'
},
{
name
:
'承包形式(EPC/DB/EP/PC)'
,
prop
:
'actualCapi'
},
{
name
:
'合同类型'
,
prop
:
'checkDate'
},
{
name
:
'建设单位'
,
prop
:
'orgNo'
},
{
name
:
'设计单位'
,
prop
:
'
regNo
'
},
{
name
:
'设计单位'
,
prop
:
'
designOrgName
'
},
{
name
:
'勘察单位'
,
prop
:
'creditNo'
},
{
name
:
'监理单位'
,
prop
:
'
econKind
'
},
{
name
:
'监理单位'
,
prop
:
'
supervisorOrgName
'
},
{
name
:
'代理公司(或工料测量师)'
,
prop
:
'term'
},
{
name
:
'招标形式'
,
prop
:
'qualification'
},
{
name
:
'承包方式'
,
prop
:
'provinceCode'
},
{
name
:
'资金来源'
,
prop
:
'
belongOrg
'
},
{
name
:
'资金来源'
,
prop
:
'
moneySource
'
},
{
name
:
'分包标准费用项价格库'
,
prop
:
'colleguesNum'
},
{
name
:
'材料机械标准费用价格库'
,
prop
:
'colleguesNum'
},
{
name
:
'专业类别'
,
prop
:
'scope'
},
...
...
@@ -87,9 +87,9 @@ export default {
{
name
:
'结构类型'
,
prop
:
'registCapi'
},
{
name
:
'基础类型'
,
prop
:
'actualCapi'
},
{
name
:
'单体个数'
,
prop
:
'checkDate'
,
style
:
true
},
{
name
:
'地上层数'
,
prop
:
'
orgNo
'
},
{
name
:
'地下层数'
,
prop
:
'
regNo
'
},
{
name
:
'建筑高度'
,
prop
:
'c
reditNo
'
},
{
name
:
'地上层数'
,
prop
:
'
noOfOverfloor
'
},
{
name
:
'地下层数'
,
prop
:
'
noOfUnderfloor
'
},
{
name
:
'建筑高度'
,
prop
:
'c
onstructHeight
'
},
{
name
:
'地下深度'
,
prop
:
'econKind'
},
{
name
:
'首层(m)'
,
prop
:
'term'
},
{
name
:
'标准层(m)'
,
prop
:
'qualification'
},
...
...
@@ -146,9 +146,9 @@ export default {
time
:
'2023-10-20'
},
defaultListYd4
:
[
{
name
:
'计划开工日期'
,
prop
:
'
tim
e'
},
{
name
:
'计划竣工日期'
,
prop
:
'
operNam
e'
},
{
name
:
'总工期(天)'
,
prop
:
'
statu
s'
},
{
name
:
'计划开工日期'
,
prop
:
'
planStartDat
e'
},
{
name
:
'计划竣工日期'
,
prop
:
'
planEndDat
e'
},
{
name
:
'总工期(天)'
,
prop
:
'
contractWorkDay
s'
},
{
name
:
'缺陷责任'
,
prop
:
'startDate'
},
],
forInfoYd5
:{
...
...
@@ -191,9 +191,40 @@ export default {
],
};
},
props
:
{
// 项目ID
// projectId: {
// type: String,
// required: true,
// default: ""
// },
// 详情信息
projectDetailInfo
:
{
type
:
Object
,
default
:
()
=>
({})
}
},
watch
:
{
projectDetailInfo
:
{
handler
(
newValue
)
{
this
.
comProjectDetailInfo
=
newValue
?
newValue
:
{};
// this.getCbProjectInfo(this.comProjectDetailInfo.projectId)
this
.
getCbProjectInfo
(
'1759507630130479106'
)
// this.init(this.comProjectDetailInfo);
},
deep
:
true
,
immediate
:
true
},
projectId
:
{
handler
(
newValue
)
{
this
.
comProjectId
=
newValue
;
},
immediate
:
true
}
},
//可访问data属性
created
()
{
// this.getCbProjectInfo()
},
//计算集
computed
:
{
...
...
@@ -201,7 +232,17 @@ export default {
},
//方法集
methods
:
{
async
getCbProjectInfo
(
params
)
{
try
{
const
result
=
await
getCbProjectInfo
(
params
);
if
(
result
.
code
==
200
)
{
console
.
log
(
result
.
data
)
this
.
forInfo
=
result
.
data
;
}
}
catch
(
error
)
{
}
},
},
}
</
script
>
...
...
dsk-operate-ui/src/views/projectCostLedger/detail/components/OtherProjects/index.vue
View file @
f696a587
...
...
@@ -3,7 +3,7 @@
<div
class=
"otherProjects-cont"
>
<div
class=
"left"
>
<div
class=
"left-side-menu"
>
<project-side-menu
:menuTree=
"menuTreeList"
:menuOptions=
"menuOptions"
:unique-opened=
"false"
:default-active=
"defaultActive"
>
<project-side-menu
:menuTree=
"menuTreeList"
:menuOptions=
"menuOptions"
:unique-opened=
"false"
:default-active=
"defaultActive"
@
select=
"select"
>
<template
slot=
"其他费-1"
>
<img
src=
"@/assets/images/projectCostLedger/icon_cost_detail_5.svg"
alt=
""
>
<div
class=
"project-sub-menu-title-text"
>
其他费
</div>
...
...
@@ -36,10 +36,10 @@
<tables
v-if=
"!isSkeleton"
:tableLoading=
"tableLoading"
:tableData=
"tableData"
:tableData=
"tableData
1
"
:forData=
"forData1"
:MaxPage=
500
:tableDataTotal=
"tableDataTotal"
:tableDataTotal=
"tableDataTotal
1
"
:queryParams=
"queryParams"
@
handle-current-change=
"handleCurrentChange"
@
sort-change=
"sortChange"
...
...
@@ -56,7 +56,7 @@
</div>
<el-dialog
:visible
.
sync=
"dialogVisible"
width=
"720px"
append-to-body
class=
"dialogVisible"
title=
"单位换算"
>
<el-tabs
v-model=
"currentList"
>
<el-tabs
v-model=
"currentList"
@
tab-click=
"handleClickTab"
>
<el-tab-pane
:key=
"index"
v-for=
"(item, index) in toggleTabs"
...
...
@@ -71,8 +71,8 @@
<el-option
v-for=
"(item,index) in typeList"
:label=
"item.dictLabel"
:value=
"item.dictValue"
:key=
"index"
></el-option>
</el-select>
<i
class=
"el-icon-sort icon"
></i>
<el-select
v-model=
"type
1
"
placeholder=
"请选择"
>
<el-option
v-for=
"(item,index) in typeList
1
"
:label=
"item.dictLabel"
:value=
"item.dictValue"
:key=
"index"
></el-option>
<el-select
v-model=
"type
2
"
placeholder=
"请选择"
>
<el-option
v-for=
"(item,index) in typeList"
:label=
"item.dictLabel"
:value=
"item.dictValue"
:key=
"index"
></el-option>
</el-select>
</div>
<el-table
...
...
@@ -106,65 +106,54 @@
<
script
>
import
Tables
from
"../../../../component/Tables"
import
ProjectSideMenu
from
"@/views/projectCostLedger/detail/components/ProjectSideMenu"
;
import
{
getProjectOtherMenuTreeApi
,
getProjectOtherStatistics
}
from
"@/api/projectCostLedger"
;
import
{
getProjectOtherMenuTreeApi
,
getProjectOtherStatistics
,
getProjectOtherList
}
from
"@/api/projectCostLedger"
;
export
default
{
name
:
"directCost"
,
components
:
{
Tables
,
ProjectSideMenu
},
props
:
{
//
//
项目ID
// 项目ID
// projectId: {
// type: String,
// required: true,
// default: ""
// },
//
//
详情信息
//
projectDetailInfo: {
//
type: Object,
//
default: () => ({})
//
}
// 详情信息
projectDetailInfo
:
{
type
:
Object
,
default
:
()
=>
({})
}
},
data
()
{
return
{
comProjectId
:
''
,
isSkeleton
:
false
,
tableLoading
:
false
,
tableData
:[
{
name
:
'技术质量管理类'
,
number
:
'236'
,
proportion
:
'64'
},
{
name
:
'工程保险类'
,
number
:
'336'
,
proportion
:
'64'
},
],
tableData
:[],
tableDataTotal
:
0
,
forData
:
[
{
label
:
'其他项目费用'
,
prop
:
'expenseName'
},
{
label
:
'数量'
,
prop
:
'expenseValue'
},
{
label
:
'占比'
,
prop
:
'proportion'
,
slot
:
true
},
],
forData1
:
[
{
label
:
'清单内容'
,
prop
:
'
name'
,
minWidth
:
'215
'
},
{
label
:
'工作内容、做法/规格型号/施工现场配置说明'
,
prop
:
'
number
'
,
minWidth
:
'302'
},
{
label
:
'单位'
,
prop
:
'
proportion'
,
minWidth
:
'2
15'
},
{
label
:
'不含税单价'
,
prop
:
'
proportion'
,
minWidth
:
'2
15'
},
{
label
:
'不含税合价'
,
prop
:
'
proportion'
,
minWidth
:
'2
15'
},
{
label
:
'税率(%)'
,
prop
:
'
proportion'
,
minWidth
:
'2
15'
},
{
label
:
'含税合价'
,
prop
:
'
proportion'
,
minWidth
:
'2
15'
},
{
label
:
'税金(元)'
,
prop
:
'
proportion'
,
minWidth
:
'2
15'
},
{
label
:
'成本科目'
,
prop
:
'
proportion'
,
minWidth
:
'215
'
},
{
label
:
'税金类型'
,
prop
:
'
proportion'
,
minWidth
:
'2
15'
},
{
label
:
'备注'
,
prop
:
'
proportion'
,
minWidth
:
'215
'
},
{
label
:
'清单内容'
,
prop
:
'
itemContent'
,
minWidth
:
'220
'
},
{
label
:
'工作内容、做法/规格型号/施工现场配置说明'
,
prop
:
'
workContent
'
,
minWidth
:
'302'
},
{
label
:
'单位'
,
prop
:
'
unit'
,
minWidth
:
'1
15'
},
{
label
:
'不含税单价'
,
prop
:
'
unitPriceExcludingTax'
,
minWidth
:
'1
15'
},
{
label
:
'不含税合价'
,
prop
:
'
totalPriceExcludeTax'
,
minWidth
:
'1
15'
},
{
label
:
'税率(%)'
,
prop
:
'
taxRate'
,
minWidth
:
'1
15'
},
{
label
:
'含税合价'
,
prop
:
'
totalPriceIncludingTax'
,
minWidth
:
'1
15'
},
{
label
:
'税金(元)'
,
prop
:
'
taxAmount'
,
minWidth
:
'1
15'
},
{
label
:
'成本科目'
,
prop
:
'
costSubject'
,
minWidth
:
'160
'
},
{
label
:
'税金类型'
,
prop
:
'
taxType'
,
minWidth
:
'1
15'
},
{
label
:
'备注'
,
prop
:
'
remarks'
,
minWidth
:
'200
'
},
],
queryParams
:{
pageNum
:
1
,
pageSize
:
10
,
},
tableDataTotal
:
2
,
defaultActive
:
"费用汇总"
,
menuTreeList
:
[
{
...
...
@@ -177,7 +166,7 @@ export default {
nodeName
:
"itemContent"
,
nodeValue
:
"itemContent"
,
},
dialogVisible
:
fals
e
,
dialogVisible
:
tru
e
,
currentList
:
"type1"
,
toggleTabs
:[
{
...
...
@@ -192,63 +181,69 @@ export default {
value
:
"type3"
,
name
:
"体积"
,
},
// {
// value: "type4",
// name: "质量",
// },
// {
// value: "type5",
// name: "密度",
// },
],
tableData1
:[],
tableDataTotal1
:
0
,
type1
:
''
,
type2
:
''
,
typeList
:[
{
value
:
"type4"
,
name
:
"质量"
,
dictLabel
:
'千米'
,
dictValue
:
'千米'
},
{
value
:
"type5"
,
name
:
"密度"
,
dictLabel
:
'米'
,
dictValue
:
'米'
},
],
tableData1
:[
{
cbkm
:
'标前成本'
,
wlyl
:
'42000KG'
,
hsyl
:
'42T'
dictLabel
:
'分米'
,
dictValue
:
'分米'
},
{
cbkm
:
'标前成本'
,
wlyl
:
'42000KG'
,
hsyl
:
'42T'
dictLabel
:
'厘米'
,
dictValue
:
'厘米'
},
{
cbkm
:
'标前成本'
,
wlyl
:
'42000KG'
,
hsyl
:
'42T'
dictLabel
:
'毫米'
,
dictValue
:
'毫米'
},
{
cbkm
:
'标前成本'
,
wlyl
:
'42000KG'
,
hsyl
:
'42T'
dictLabel
:
'微米'
,
dictValue
:
'微米'
},
],
type1
:
''
,
type2
:
''
,
typeList
:[],
typeList1
:[],
};
},
watch
:
{
// projectDetailInfo: {
// handler(newValue) {
// this.comProjectDetailInfo = newValue ? newValue : {};
// // this.init(this.comProjectDetailInfo);
// },
// deep: true,
// immediate: true
// },
// projectId: {
// handler(newValue) {
// this.comProjectId = newValue;
// },
// immediate: true
// }
projectDetailInfo
:
{
handler
(
newValue
)
{
this
.
comProjectDetailInfo
=
newValue
?
newValue
:
{};
this
.
getProjectOtherStatistics
(
this
.
comProjectDetailInfo
.
projectId
)
// this.getProjectOtherStatistics('1762014527685136385')
// this.init(this.comProjectDetailInfo);
},
deep
:
true
,
immediate
:
true
},
projectId
:
{
handler
(
newValue
)
{
this
.
comProjectId
=
newValue
;
},
immediate
:
true
}
},
//可访问data属性
created
()
{
this
.
getProjectOtherMenuTreeApi
(
'1762014527685136385'
)
this
.
getProjectOtherStatistics
(
'1762014527685136385'
)
},
//计算集
computed
:
{
...
...
@@ -261,6 +256,7 @@ export default {
const
result
=
await
getProjectOtherStatistics
(
params
);
if
(
result
.
code
==
200
)
{
const
_dataArray
=
result
.
data
;
this
.
tableDataTotal
=
_dataArray
.
length
;
this
.
tableData
=
_dataArray
;
}
}
catch
(
error
)
{
...
...
@@ -280,9 +276,18 @@ export default {
}
},
open
(
menuPath
,
menuPathArray
){
select
(
menuPath
,
menuPathArray
){
console
.
log
(
menuPath
)
console
.
log
(
menuPathArray
)
this
.
defaultActive
=
menuPath
;
let
param
=
{
projectId
:
this
.
comProjectDetailInfo
.
projectId
,
parentId
:
menuPathArray
.
originData
.
id
}
getProjectOtherList
(
param
).
then
(
res
=>
{
this
.
tableData1
=
res
.
data
;
this
.
tableDataTotal1
=
res
.
data
.
length
;
})
},
//分页
handleCurrentChange
(
e
){
...
...
@@ -293,8 +298,120 @@ export default {
},
sortChange
(){
},
handleClickTab
(
v
){
this
.
type1
=
''
;
this
.
type2
=
''
;
if
(
v
.
label
===
'长度'
){
this
.
typeList
=
[
{
dictLabel
:
'千米'
,
dictValue
:
'千米'
},
{
dictLabel
:
'米'
,
dictValue
:
'米'
},
{
dictLabel
:
'分米'
,
dictValue
:
'分米'
},
{
dictLabel
:
'厘米'
,
dictValue
:
'厘米'
},
{
dictLabel
:
'毫米'
,
dictValue
:
'毫米'
},
{
dictLabel
:
'微米'
,
dictValue
:
'微米'
},
]
}
if
(
v
.
label
===
'面积'
){
this
.
typeList
=
[
{
dictLabel
:
'平方千米'
,
dictValue
:
'平方千米'
},
{
dictLabel
:
'公顷'
,
dictValue
:
'公顷'
},
{
dictLabel
:
'公亩'
,
dictValue
:
'公亩'
},
{
dictLabel
:
'平方米'
,
dictValue
:
'平方米'
},
{
dictLabel
:
'平方分米'
,
dictValue
:
'平方分米'
},
{
dictLabel
:
'平方厘米'
,
dictValue
:
'平方厘米'
},
{
dictLabel
:
'平方毫米'
,
dictValue
:
'平方毫米'
},
]
}
if
(
v
.
label
===
'体积'
){
this
.
typeList
=
[
{
dictLabel
:
'立方千米'
,
dictValue
:
'立方千米'
},
{
dictLabel
:
'立方米'
,
dictValue
:
'立方米'
},
{
dictLabel
:
'立方分米'
,
dictValue
:
'立方分米'
},
{
dictLabel
:
'立方厘米'
,
dictValue
:
'立方厘米'
},
{
dictLabel
:
'立方毫米'
,
dictValue
:
'立方毫米'
},
{
dictLabel
:
'升'
,
dictValue
:
'升'
},
{
dictLabel
:
'分升'
,
dictValue
:
'分升'
},
{
dictLabel
:
'毫升'
,
dictValue
:
'毫升'
},
{
dictLabel
:
'微升'
,
dictValue
:
'微升'
},
{
dictLabel
:
'厘升'
,
dictValue
:
'厘升'
},
{
dictLabel
:
'公石'
,
dictValue
:
'公石'
},
]
}
},
},
}
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
dsk-operate-ui/src/views/projectCostLedger/detail/index.vue
View file @
f696a587
...
...
@@ -9,10 +9,10 @@
<!-- 放入组件 v-if current == ‘xxxx’ 详情变量 this.detailInfo 需要深度监听-->
<!-- 工程项目信息 -->
<engineering-information
v-if=
"current == 'basicEngineeringInformation'"
></engineering-information>
<engineering-information
v-if=
"current == 'basicEngineeringInformation'"
:project-detail-info=
"detailInfo"
></engineering-information>
<!-- 直接费成本 -->
<direct-cost
v-if=
"current == 'directCost'"
></direct-cost>
<direct-cost
v-if=
"current == 'directCost'"
:project-detail-info=
"detailInfo"
></direct-cost>
<!-- 工料汇总 -->
<feed-summary
v-if=
"current == 'feedSummary'"
:project-id=
"projectID"
:project-detail-info=
"detailInfo"
></feed-summary>
...
...
@@ -21,7 +21,7 @@
<measure-items
v-if=
"current == 'measureItem'"
:project-id=
"projectID"
:project-detail-info=
"detailInfo"
></measure-items>
<!-- 其他项目 -->
<other-projects
v-if=
"current == 'otherItems'"
></other-projects>
<other-projects
v-if=
"current == 'otherItems'"
:project-detail-info=
"detailInfo"
></other-projects>
<!-- 盈亏分析对比 -->
<profit-Loss
v-if=
"current == 'profitAndLoss'"
:project-id=
"projectID"
:project-detail-info=
"detailInfo"
></profit-Loss>
...
...
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