Commit df13e2b9 authored by tianhongyang's avatar tianhongyang

merge

parent afabbaf0
...@@ -4,7 +4,14 @@ ...@@ -4,7 +4,14 @@
:min-width="item.minWidth" :align="item.align?item.align:'left'" :fixed="item.fixed" :min-width="item.minWidth" :align="item.align?item.align:'left'" :fixed="item.fixed"
:sortable="item.sortable ?item.sortable=='custom'? 'custom':true : false" :resizable="false" :show-overflow-tooltip="item.showOverflowTooltip"> :sortable="item.sortable ?item.sortable=='custom'? 'custom':true : false" :resizable="false" :show-overflow-tooltip="item.showOverflowTooltip">
<template v-for="(child,index) of item.children"> <template v-for="(child,index) of item.children">
<table-list-column :key="child.uid ? child.uid : index" :item="child"></table-list-column> <table-list-column :key="child.uid ? child.uid : index" :item="child">
<template v-for="(index, name) in $slots" :slot="name">
<slot :name="name" />
</template>
<template v-for="(index, name) in $scopedSlots" :slot="name" slot-scope="{row,$index}">
<slot :name="name" :data="child" :row="row" :index="$index"></slot>
</template>
</table-list-column>
</template> </template>
</el-table-column> </el-table-column>
<!-- 复选框列 --> <!-- 复选框列 -->
...@@ -18,9 +25,9 @@ ...@@ -18,9 +25,9 @@
<template slot-scope="scope">{{pagingHandler(hasQueryParams,queryParams,scope)}}</template> <template slot-scope="scope">{{pagingHandler(hasQueryParams,queryParams,scope)}}</template>
</el-table-column> </el-table-column>
<!-- 正常列 --> <!-- 正常列 -->
<el-table-column v-else :label="item.label" :prop="item.prop" :width="item.width" :min-width="item.minWidth" :align="item.align?item.align:'left'" <el-table-column v-else :label="item.label" :prop="item.prop" :width="item.width ? item.width : 'auto'" :min-width="item.minWidth"
:fixed="item.fixed" :sortable="item.sortable ?item.sortable=='custom'? 'custom':true : false" :resizable="false" :align="item.align?item.align:'left'" :fixed="item.fixed" :sortable="item.sortable ?item.sortable=='custom'? 'custom':true : false"
:show-overflow-tooltip="item.showOverflowTooltip"> :resizable="false" :show-overflow-tooltip="item.showOverflowTooltip">
<!-- 自定义表头 --> <!-- 自定义表头 -->
<template v-if="item.slotHeader" slot="header"> <template v-if="item.slotHeader" slot="header">
<slot :name="item.slotName"></slot> <slot :name="item.slotName"></slot>
...@@ -28,12 +35,15 @@ ...@@ -28,12 +35,15 @@
<!-- 非自定义表头 --> <!-- 非自定义表头 -->
<template slot-scope="scope"> <template slot-scope="scope">
<!-- 有自定义插槽 --> <!-- 有自定义插槽 -->
<slot v-if="item.slot" :name="item.prop" :row="scope.row" :index="scope.$index" :data="item"></slot> <slot v-if="item.slot" :name="item.prop" :row="scope.row" :index="scope.$index" :data="item">
<!-- 操作栏 --> <!-- 默认取值 -->
{{ scope.row[item.prop] || scope.row[item.prop] == '0' ? scope.row[item.prop] : '-' }}
</slot>
<!-- 操作栏 不需要设置slot-->
<slot v-else-if="item.prop == 'action-field-bar'" name="action-field-bar" :row="scope.row" :index="scope.$index" :data="item"></slot> <slot v-else-if="item.prop == 'action-field-bar'" name="action-field-bar" :row="scope.row" :index="scope.$index" :data="item"></slot>
<!-- 没有插槽 --> <!-- 没有插槽 -->
<div v-else> <div v-else>
{{ scope.row[item.prop] || '-' }} {{ scope.row[item.prop] || scope.row[item.prop] == '0' ? scope.row[item.prop] : '-' }}
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
......
...@@ -13,8 +13,15 @@ ...@@ -13,8 +13,15 @@
</el-table-column> </el-table-column>
<!-- 列二次封装 --> <!-- 列二次封装 -->
<template v-for="(item,index) of formColum"> <template v-for="(item,index) of formColum">
<table-list-column v-if="item.use !== false" :key="item.uid ? item.uid : index" :tableData="tableData" :item="item" <table-list-column v-if="item.use !== false" :key="item.uid ? item.uid : index" :tableData="tableData" :item="item">
:queryParams="queryParams" :hasQueryParams="hasQueryParams"></table-list-column> <!-- 根据透传属性创建插槽 -->
<template v-for="(index, name) in $slots" :slot="name">
<slot :name="name" />
</template>
<template v-for="(index, name) in $scopedSlots" :slot="name" slot-scope="{row,index}">
<slot :name="name" :data="item" :row="row" :index="index"></slot>
</template>
</table-list-column>
</template> </template>
<!-- <template v-for="(item,index) in formColum"> <!-- <template v-for="(item,index) in formColum">
......
...@@ -38,7 +38,11 @@ ...@@ -38,7 +38,11 @@
<dsk-skeleton v-if="tableLoading"></dsk-skeleton> <dsk-skeleton v-if="tableLoading"></dsk-skeleton>
<table-list-com :tableData="tableDataList" :formColum="formColum" v-else-if="!tableLoading" :maxHeight="true" :tableDataTotal="total" <table-list-com :tableData="tableDataList" :formColum="formColum" v-else-if="!tableLoading" :maxHeight="true" :tableDataTotal="total"
:paging="false"> :paging="false">
<template slot="action-field-bar" slot-scope="scope">
<div class="project-action-field-bar">
<span class="push-project">推送工程量</span>
</div>
</template>
</table-list-com> </table-list-com>
</div> </div>
</div> </div>
...@@ -104,7 +108,7 @@ export default { ...@@ -104,7 +108,7 @@ export default {
// 列表表头 // 列表表头
formColum: [ formColum: [
{ label: '序号', prop: "staticSerialNumber", type: "index", lock: true, width: "53", fixed: false, uid: v4() }, { label: '序号', prop: "staticSerialNumber", type: "index", lock: true, width: "53", fixed: false, uid: v4() },
{ label: '成本科目', prop: "cbSubjectName", width: "137", uid: v4() }, { label: '成本科目', prop: "cbSubjectName", width: "137", uid: v4(),slot : true },
{ label: '公司编码', prop: "companyNo", width: "137", uid: v4() }, { label: '公司编码', prop: "companyNo", width: "137", uid: v4() },
{ label: '集团编码', prop: "orgNo", width: "137", uid: v4() }, { label: '集团编码', prop: "orgNo", width: "137", uid: v4() },
{ label: '名称', prop: "cbName", width: "232", uid: v4() }, { label: '名称', prop: "cbName", width: "232", uid: v4() },
...@@ -113,10 +117,28 @@ export default { ...@@ -113,10 +117,28 @@ export default {
{ label: '单位', prop: "unit", width: "57", uid: v4() }, { label: '单位', prop: "unit", width: "57", uid: v4() },
{ label: '甲供材料说明', prop: "materialDescription", width: "137", uid: v4() }, { label: '甲供材料说明', prop: "materialDescription", width: "137", uid: v4() },
{ {
label: '计划成本', prop: "jhcb", width: "809", align: "center", uid: v4(), children: [ label: '计划成本', prop: "jhcb", align: "center", uid: v4(), children: [
{ label: '指导价格', prop: "guidePrice", width: "81", uid: v4() } { label: '指导价格', prop: "guidePrice", minWidth: "81", uid: v4() },
{ label: '投标选用单价(不含税)', prop: "bidUnitPrice", minWidth: "179", uid: v4() },
{ label: '单价差额', prop: "unitPriceDifference", minWidth: "81", uid: v4() },
{ label: '数量', prop: "quantity", minWidth: "53", uid: v4() },
{ label: '合价(不含税)', prop: "combinedPrice", minWidth: "123", uid: v4() },
{ label: '合价(含税)', prop: "combinedPriceTax", minWidth: "109", uid: v4() },
{ label: '品牌名称', prop: "brandName", minWidth: "81", uid: v4() },
{ label: '投标选用来源', prop: "bidSource", minWidth: "109", uid: v4() },
] ]
}, },
{
label: '实际成本', prop: "sjcb", align: "center", uid: v4(), children: [
{ label: '本月工程量', prop: "quantities", minWidth: "95", uid: v4() },
{ label: '截止本月工程量', prop: "totalQuantities", minWidth: "123", uid: v4() },
{ label: '本月采购单价', prop: "purchaseUnitPrice", minWidth: "109", uid: v4() },
{ label: '填写时间', prop: "createTime", minWidth: "109", uid: v4() },
]
},
{ label: '推送工程量', prop: "pushQuantities", width: "95", uid: v4() },
{ label: '备注', prop: "remark", width: "115", uid: v4(), slot: true },
{ label: '操作', prop: "action-field-bar", width: "99", uid: v4() },
], ],
// 已记录月份集合 // 已记录月份集合
monthList: [], monthList: [],
...@@ -415,7 +437,7 @@ export default { ...@@ -415,7 +437,7 @@ export default {
.table-item { .table-item {
.el-table { .el-table {
th { th {
height: 80px; height: 40px;
} }
.cell { .cell {
font-size: 14px; font-size: 14px;
...@@ -424,6 +446,18 @@ export default { ...@@ -424,6 +446,18 @@ export default {
} }
} }
} }
.project-action-field-bar {
display: flex;
align-items: center;
.push-project {
color: #0081ff;
font-size: 14px;
font-weight: 350;
cursor: pointer;
}
}
} }
} }
} }
......
...@@ -90,6 +90,10 @@ export default { ...@@ -90,6 +90,10 @@ export default {
}, },
//方法集 //方法集
methods: { methods: {
// 展开所有指定层级的菜单 默认二级
openTargetAllSubMenu() {
},
// 事件订阅 // 事件订阅
subMenuOpen(menuPath, menuPathArray) { subMenuOpen(menuPath, menuPathArray) {
this.$emit("open", menuPath, menuPathArray); this.$emit("open", menuPath, menuPathArray);
......
<template>
<div class="app-container enterprise_contatiner">
<!--<div class="header">-->
<!--<div class="title_wrap">-->
<!--<div class="enterprise_title">-->
<!--评标助手-->
<!--</div>-->
<!--</div>-->
<!--<el-tabs v-model="activeName" >-->
<!--<el-tab-pane label="查资质" name="first"></el-tab-pane>-->
<!--<el-tab-pane label="现行资质标准" name="second"></el-tab-pane>-->
<!--<el-tab-pane label="历史批量查询结果" name="third"></el-tab-pane>-->
<!--</el-tabs>-->
<!--</div>-->
<!--<SearchAptitude @changeActiveName="activeName = 'third'" v-if="activeName === 'first'"></SearchAptitude>-->
<AptitudeStandard></AptitudeStandard>
<!--<SearchResult v-if="activeName === 'third'"></SearchResult>-->
</div>
</template>
<script>
import AptitudeStandard from '../components/AptitudeStandard'
export default {
name: 'AptitudeStandard',
components: {
AptitudeStandard
},
data() {
return {
activeName: 'first'
}
},
}
</script>
<style lang="scss" scoped>
.header{
justify-content: space-between;
background: #FFFFFF;
border-radius: 4px 4px 0 0 ;
border-bottom: 1px solid #EEEEEE;
color: #232323;
position: sticky;
top: -16px;
z-index: 999;
::v-deep .el-tabs{
height: 48px;
line-height: 48px;
.el-tabs__nav-wrap::after {
position: static !important;
}
.el-tabs__header{
margin: 0;
.el-tabs__item{
padding: 0 16px;
font-size: 16px;
}
.is-active{
font-weight: bold;
}
}
.el-tabs__content{
width: 100%;
}
}
.location{
font-size: 14px;
color: #0081FF;
i{
margin-right: 6px;
font-size: 16px;
}
}
}
</style>
<template>
<div class="app-container enterprise_contatiner">
<!--<div class="header">-->
<!--<div class="title_wrap">-->
<!--<div class="enterprise_title">-->
<!--评标助手-->
<!--</div>-->
<!--</div>-->
<!--<el-tabs v-model="activeName" >-->
<!--<el-tab-pane label="查资质" name="first"></el-tab-pane>-->
<!--<el-tab-pane label="现行资质标准" name="second"></el-tab-pane>-->
<!--<el-tab-pane label="历史批量查询结果" name="third"></el-tab-pane>-->
<!--</el-tabs>-->
<!--</div>-->
<SearchAptitude @changeActiveName="activeName = 'third'" v-if="activeName === 'first'"></SearchAptitude>
<!--<AptitudeStandard v-if="activeName === 'second'"></AptitudeStandard>-->
<!--<SearchResult v-if="activeName === 'third'"></SearchResult>-->
</div>
</template>
<script>
import SearchAptitude from '../components/SearchAptitude'
export default {
name: 'SearchAptitude',
components: {
SearchAptitude
},
data() {
return {
activeName: 'first'
}
},
}
</script>
<style lang="scss" scoped>
.header{
justify-content: space-between;
background: #FFFFFF;
border-radius: 4px 4px 0 0 ;
border-bottom: 1px solid #EEEEEE;
color: #232323;
position: sticky;
top: -16px;
z-index: 999;
::v-deep .el-tabs{
height: 48px;
line-height: 48px;
.el-tabs__nav-wrap::after {
position: static !important;
}
.el-tabs__header{
margin: 0;
.el-tabs__item{
padding: 0 16px;
font-size: 16px;
}
.is-active{
font-weight: bold;
}
}
.el-tabs__content{
width: 100%;
}
}
.location{
font-size: 14px;
color: #0081FF;
i{
margin-right: 6px;
font-size: 16px;
}
}
}
</style>
<template>
<div class="app-container enterprise_contatiner">
<!--<div class="header">-->
<!--<div class="title_wrap">-->
<!--<div class="enterprise_title">-->
<!--评标助手-->
<!--</div>-->
<!--</div>-->
<!--<el-tabs v-model="activeName" >-->
<!--<el-tab-pane label="查资质" name="first"></el-tab-pane>-->
<!--<el-tab-pane label="现行资质标准" name="second"></el-tab-pane>-->
<!--<el-tab-pane label="历史批量查询结果" name="third"></el-tab-pane>-->
<!--</el-tabs>-->
<!--</div>-->
<!--<SearchAptitude @changeActiveName="activeName = 'third'" v-if="activeName === 'first'"></SearchAptitude>-->
<!--<AptitudeStandard></AptitudeStandard>-->
<SearchResult></SearchResult>
</div>
</template>
<script>
import SearchResult from '../components/SearchResult'
export default {
name: 'SearchAptitude',
components: {
SearchResult
},
data() {
return {
activeName: 'first'
}
},
}
</script>
<style lang="scss" scoped>
.header{
justify-content: space-between;
background: #FFFFFF;
border-radius: 4px 4px 0 0 ;
border-bottom: 1px solid #EEEEEE;
color: #232323;
position: sticky;
top: -16px;
z-index: 999;
::v-deep .el-tabs{
height: 48px;
line-height: 48px;
.el-tabs__nav-wrap::after {
position: static !important;
}
.el-tabs__header{
margin: 0;
.el-tabs__item{
padding: 0 16px;
font-size: 16px;
}
.is-active{
font-weight: bold;
}
}
.el-tabs__content{
width: 100%;
}
}
.location{
font-size: 14px;
color: #0081FF;
i{
margin-right: 6px;
font-size: 16px;
}
}
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment