Merge branch 'anhui-mall-ui-test' of http://192.168.30.2:3000/bonus/bonus-ui into anhui-mall-ui-test
This commit is contained in:
commit
2aea4d8d69
|
|
@ -10,6 +10,30 @@ export function listUser(query) {
|
|||
})
|
||||
}
|
||||
|
||||
export function getOwnEquipmentList(query) {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/getOwnEquipmentList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
export function getSharingEquipmentList(query) {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/getSharingEquipmentList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
export function getRentalEquipmentList(query) {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/getRentalEquipmentList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
export function selectResourceList(query) {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/selectResourceList',
|
||||
|
|
@ -26,6 +50,41 @@ export function selectInventoryList(query) {
|
|||
})
|
||||
}
|
||||
|
||||
export function saveInstanceSelection(data) {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/saveInstanceSelection',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function getConfigurationTotal() {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/getConfigurationTotal',
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
export function getConfigurationDetails(data) {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/getConfigurationDetails',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
export function exportStatsData() {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/exportStatsData',
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export function insertResource(data) {
|
||||
return request({
|
||||
url: '/material-mall/deptConfig/insertResource',
|
||||
|
|
|
|||
|
|
@ -60,6 +60,12 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button
|
||||
icon="el-icon-refresh"
|
||||
size="mini"
|
||||
@click="resetQuery"
|
||||
>重置</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-search"
|
||||
|
|
@ -67,12 +73,7 @@
|
|||
@click="handleQuery"
|
||||
>查询</el-button
|
||||
>
|
||||
<el-button
|
||||
icon="el-icon-refresh"
|
||||
size="mini"
|
||||
@click="resetQuery"
|
||||
>重置</el-button
|
||||
>
|
||||
|
||||
<el-button
|
||||
size="mini"
|
||||
@click="exportList"
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ export default {
|
|||
props: {
|
||||
columns: {
|
||||
type: Array,
|
||||
required: true,
|
||||
default: () => [],
|
||||
},
|
||||
gutter: {
|
||||
type: Number,
|
||||
|
|
@ -94,9 +94,10 @@ export default {
|
|||
immediate: true,
|
||||
deep: true,
|
||||
handler(val) {
|
||||
// 复用你原来 transfer 逻辑的“本地副本”思想
|
||||
this.innerColumns = val.map((c) => ({ ...c }))
|
||||
this.backupColumns = val.map((c) => ({ ...c }))
|
||||
const safeCols = Array.isArray(val) ? val : []
|
||||
|
||||
this.innerColumns = safeCols.map((c) => ({ ...c }))
|
||||
this.backupColumns = safeCols.map((c) => ({ ...c }))
|
||||
},
|
||||
},
|
||||
},
|
||||
|
|
|
|||
|
|
@ -2,7 +2,12 @@
|
|||
<div>
|
||||
<div class="navbar">
|
||||
<div class="app-title">
|
||||
<img src="@/assets/images/logo-home.png" style="width: 135px; height: 27px" alt="" />
|
||||
<img
|
||||
src="@/assets/images/logo-home.png"
|
||||
style="width: 135px; height: 27px; cursor: pointer"
|
||||
alt=""
|
||||
@click="goHome"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div class="menus" @mouseleave="handleMenuLeave">
|
||||
|
|
@ -47,7 +52,7 @@
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div class="right-menu-item hover-effect bar-item" @click="goCollection">
|
||||
<div class="right-menu-item hover-effect bar-item">
|
||||
<span class="bar-text">收藏</span>
|
||||
</div>
|
||||
|
||||
|
|
@ -182,54 +187,49 @@
|
|||
<!-- 列表区域 -->
|
||||
<div class="user-list">
|
||||
<div class="user-item">
|
||||
<!-- <i class="el-icon-mobile-phone" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/phone.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-mobile-phone" style="font-size: 19px; color: #000"></i>
|
||||
<span>手机号</span>
|
||||
<span class="right">138****8251</span>
|
||||
</div>
|
||||
<div class="user-item">
|
||||
<!-- <i class="el-icon-lock" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/changePwd.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-lock" style="font-size: 19px; color: #000"></i>
|
||||
<span>修改密码</span>
|
||||
</div>
|
||||
<div class="user-item">
|
||||
<!-- <i class="el-icon-house" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/setHome.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-house" style="font-size: 19px; color: #000"></i>
|
||||
<span>设置默认首页</span>
|
||||
</div>
|
||||
<div class="user-item" @click="downloadUserManual">
|
||||
<!-- <i class="el-icon-download" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/download.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-download" style="font-size: 19px; color: #000"></i>
|
||||
<span>操作手册下载</span>
|
||||
</div>
|
||||
<div class="user-item">
|
||||
<!-- <i class="el-icon-t-shirt" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/changeSkin.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-t-shirt" style="font-size: 19px; color: #000"></i>
|
||||
<span>一键换肤</span>
|
||||
</div>
|
||||
<div class="user-item" @click="clearCacheSimple">
|
||||
<!-- <i class="el-icon-delete" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/claer.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-delete" style="font-size: 19px; color: #000"></i>
|
||||
<span>清除缓存</span>
|
||||
</div>
|
||||
<div class="user-item">
|
||||
<!-- <i class="el-icon-data-analysis" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/testSpeed.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-data-analysis" style="font-size: 19px; color: #000"></i>
|
||||
<span>测试网络速度</span>
|
||||
</div>
|
||||
<div class="user-item" @click="gotoFeedback">
|
||||
<!-- <i class="el-icon-edit-outline" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/feedback.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-edit-outline" style="font-size: 19px; color: #000"></i>
|
||||
<span>意见反馈/闭环</span>
|
||||
</div>
|
||||
<div class="user-item" @click="showContactDialog">
|
||||
<!-- <i class="el-icon-phone-outline" style="font-size: 19px; color: #000"></i> -->
|
||||
<img src="../../assets/images/sysIcon/contact.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<i class="el-icon-phone-outline" style="font-size: 19px; color: #000"></i>
|
||||
<span>联系我们</span>
|
||||
</div>
|
||||
<div class="user-item logout" @click="logout">
|
||||
<!-- <i class="el-icon-refresh-left" style="font-size: 19px; color: #000;"></i> -->
|
||||
<img src="../../assets/images/sysIcon/loginOutIcon.png" style="width: 23px; height: 23px; margin-right: 4px;" alt=""/>
|
||||
<img
|
||||
src="../../assets/images/loginOutIcon.png"
|
||||
style="width: 16px; height: 16px; margin-right: 10px"
|
||||
alt=""
|
||||
/>
|
||||
<span>退出</span>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -254,13 +254,14 @@
|
|||
<div class="menu-box" v-show="showMenuBox" @mouseenter="handleBoxEnter">
|
||||
<div class="menu-warp" @mouseleave="handleBoxLeave">
|
||||
<div class="menu-list">
|
||||
<div class="list-box">
|
||||
<div class="list-box" v-for="(item, i) in currentMenu.children || []" :key="i" v-if="!item.hidden">
|
||||
<div class="menu-title-top" v-if="currentMenu && currentMenu.meta">
|
||||
<div class="title-tip"></div>
|
||||
<span class="title-text">{{ currentMenu.meta.title }}</span>
|
||||
<span class="title-text">{{ item.meta.title }}</span>
|
||||
</div>
|
||||
|
||||
<div v-for="(child, i) in currentMenu.children || []" :key="i" class="sub-menu-item" v-if="!child.hidden">
|
||||
<!-- <div v-for="(child, i) in currentMenu.children || []" :key="i" class="sub-menu-item" v-if="!child.hidden"> -->
|
||||
<div class="sub-menu-item" v-for="(child, i) in item.children" :key="i" v-if="!child.hidden">
|
||||
<div v-if="child.children && child.children.length">
|
||||
<div class="menu-title" @click="toggleLevel1(child)">
|
||||
<div class="children-title-tip"></div>
|
||||
|
|
@ -273,7 +274,7 @@
|
|||
/>
|
||||
<img v-else src="@/assets/images/down.png" style="width: 14px; height: 14px" />
|
||||
</span>
|
||||
<span class="menu-star">
|
||||
<span class="menu-star" v-if="!child.children.length">
|
||||
<img src="@/assets/images/star.png" style="width: 10px; height: 9px" />
|
||||
</span>
|
||||
</div>
|
||||
|
|
@ -369,9 +370,6 @@
|
|||
</div>
|
||||
</div> -->
|
||||
|
||||
</div>
|
||||
</el-drawer>
|
||||
|
||||
<el-dialog
|
||||
:visible.sync="contactDialogVisible"
|
||||
width="400px"
|
||||
|
|
@ -404,7 +402,6 @@
|
|||
import { mapGetters } from 'vuex'
|
||||
import Search from '@/components/HeaderSearch'
|
||||
import { getUserProfile } from '@/api/system/user'
|
||||
import { color } from 'echarts';
|
||||
|
||||
export default {
|
||||
components: { Search },
|
||||
|
|
@ -457,7 +454,7 @@ export default {
|
|||
desc: '您有5条待办事项未处理,预计截止时间2026-01-30',
|
||||
},
|
||||
],
|
||||
contactDialogVisible: false, // 控制联系我们弹窗显示
|
||||
contactDialogVisible: false, // 控制联系我们弹窗显示
|
||||
contactPhone: '田经理15212781264,刘经理19855530627', // 联系电话
|
||||
drawerShow:false,
|
||||
isEdit:false,
|
||||
|
|
@ -488,6 +485,9 @@ export default {
|
|||
console.log('🚀 ~ this.menuList:', this.menuList)
|
||||
},
|
||||
methods: {
|
||||
goHome() {
|
||||
this.$router.push({ path: '/' })
|
||||
},
|
||||
goWarningDetail(item) {
|
||||
this.$refs.warningPopover.doClose() // 关闭弹窗
|
||||
// this.$router.push({ path: '/warning/detail', query: { id: item.id } });
|
||||
|
|
@ -501,15 +501,6 @@ export default {
|
|||
goTodo() {
|
||||
// this.$router.push({ path: '/todo' }) // 替换为实际的待办页路由
|
||||
},
|
||||
goCollection(){
|
||||
this.isEdit=false
|
||||
this.drawerShow=true
|
||||
},
|
||||
gotoPage(item){
|
||||
this.drawerShow=false
|
||||
this.isEdit=false
|
||||
this.$router.push({ path: item.url })
|
||||
},
|
||||
goMessageDetail(item) {
|
||||
this.$refs.messagePopover.doClose() // 关闭消息弹窗
|
||||
// this.$router.push({ path: '/message/detail', query: { id: item.id } }); // 跳消息详情
|
||||
|
|
@ -596,12 +587,19 @@ export default {
|
|||
const level1 = []
|
||||
const level2 = []
|
||||
|
||||
children.forEach((l1) => {
|
||||
if (l1.children && l1.children.length) {
|
||||
level1.push(l1.path)
|
||||
l1.children.forEach((l2) => {
|
||||
if (l2.children && l2.children.length) {
|
||||
level2.push(l2.path)
|
||||
children.forEach((item) => {
|
||||
if (item.children && item.children.length) {
|
||||
// 👉 child 这一层(控制 openLevel1)
|
||||
item.children.forEach((child) => {
|
||||
if (child.children && child.children.length) {
|
||||
level1.push(child.path)
|
||||
|
||||
// 👉 c2 这一层(控制 openLevel2)
|
||||
child.children.forEach((c2) => {
|
||||
if (c2.children && c2.children.length) {
|
||||
level2.push(c2.path)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
@ -638,47 +636,6 @@ export default {
|
|||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.custom-drawer{
|
||||
::v-deep.el-drawer.rtl{
|
||||
border-top-left-radius: 10px;
|
||||
border-bottom-left-radius: 10px;
|
||||
}
|
||||
}
|
||||
.myCollect-box{
|
||||
width: 100%;height: 100%;background: #FAFAFA;overflow-y: auto;
|
||||
}
|
||||
.myCollect-box-title{
|
||||
width: 100%;height: 66px;display: flex;align-items: center;padding:0 20px;justify-content: space-between;background: #FFF;margin-bottom: 10px;
|
||||
}
|
||||
.myCollect-box-zhineng{
|
||||
padding: 16px;
|
||||
margin-bottom: 10px;
|
||||
background-color: #fff;
|
||||
}
|
||||
.myCollect-box-zhineng-title{
|
||||
font-size: 18px;
|
||||
color: #333;
|
||||
font-weight: 600;
|
||||
text-align: left;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.myCollect-box-zhineng-item{
|
||||
padding: 8px 5px;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
border-radius: 5px;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
font-size: 12px;
|
||||
}
|
||||
.itemActive{
|
||||
background-color: #e8f8f6;
|
||||
color: #33c2ac;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.navbar {
|
||||
|
|
@ -849,21 +806,29 @@ export default {
|
|||
min-height: 287px;
|
||||
background: #f8fdfc;
|
||||
border-radius: 16px;
|
||||
// font-family: Microsoft YaHei, Microsoft YaHei;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
color: #095a4d;
|
||||
line-height: 30px;
|
||||
|
||||
display: grid;
|
||||
|
||||
/* 关键:一行 6 等分,自动沾满容器 */
|
||||
grid-template-columns: repeat(6, 1fr);
|
||||
|
||||
/* 横向 & 纵向间距完全一致 */
|
||||
column-gap: 16px;
|
||||
row-gap: 16px;
|
||||
|
||||
.list-box {
|
||||
/* Grid 下不需要再算宽度 */
|
||||
width: 100%;
|
||||
min-width: 0;
|
||||
|
||||
padding: 16px;
|
||||
width: 290px;
|
||||
height: 100%;
|
||||
// background: linear-gradient(0deg, rgba(44, 186, 178, 0) 0%, rgba(44, 186, 178, 0.1) 100%);
|
||||
|
||||
background: linear-gradient(180deg, #e6ffff, rgba(233, 255, 255, 0) 90px);
|
||||
border-radius: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.menu-title-top {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
|
|
|
|||
|
|
@ -63,15 +63,16 @@
|
|||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24" style="text-align: right;">
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-refresh" @click="resetForm">
|
||||
重置
|
||||
</el-button>
|
||||
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-search" type="primary"
|
||||
@click="getEquipmentApplyList"
|
||||
>
|
||||
查询
|
||||
</el-button>
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-refresh" @click="resetForm">
|
||||
重置
|
||||
</el-button>
|
||||
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
|
|
|
|||
|
|
@ -25,12 +25,13 @@
|
|||
</el-col>
|
||||
<el-col :span="6" style="text-align: right;">
|
||||
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-search" style="margin-right: 0;" type="primary" @click="getEquipmentApplyList">
|
||||
查询
|
||||
</el-button>
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-refresh" @click="resetForm">
|
||||
重置
|
||||
</el-button>
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-search" style="margin-right: 0;" type="primary" @click="getEquipmentApplyList">
|
||||
查询
|
||||
</el-button>
|
||||
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@
|
|||
|
||||
<el-col :span="5" style="float: right">
|
||||
<el-form-item>
|
||||
<el-button class="primary-lease" type="primary" @click="queryTableList"> 查询 </el-button>
|
||||
<el-button class="primary-lease" type="primary" @click="resetTableList"> 重置 </el-button>
|
||||
<el-button class="primary-lease" type="primary" @click="queryTableList"> 查询 </el-button>
|
||||
<el-button class="primary-lease" type="primary" @click="equipmentDeployment" v-show="!isAddVisible">
|
||||
新增装备
|
||||
</el-button>
|
||||
|
|
|
|||
|
|
@ -134,14 +134,15 @@
|
|||
|
||||
<!-- <el-col :span="18" style="text-align: right;"> -->
|
||||
<el-form-item style="display: flex; justify-content: flex-end">
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-refresh" @click="resetForm">
|
||||
重置
|
||||
</el-button>
|
||||
<el-button class="primary-lease" size="mini" type="primary" icon="el-icon-search"
|
||||
@click="getEquipmentApplyList"
|
||||
>
|
||||
查询
|
||||
</el-button>
|
||||
<el-button class="primary-lease" size="mini" icon="el-icon-refresh" @click="resetForm">
|
||||
重置
|
||||
</el-button>
|
||||
|
||||
</el-form-item>
|
||||
<!-- </el-col> -->
|
||||
</el-row>
|
||||
|
|
|
|||
|
|
@ -37,10 +37,11 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="14" style="text-align:right;">
|
||||
<el-button icon="el-icon-refresh" size="mini" class="primary-lease" @click="resetForm">
|
||||
重置</el-button>
|
||||
<el-button icon="el-icon-search" size="mini" class="primary-lease" type="primary" @click="getEquipmentApplyList">
|
||||
查询</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" class="primary-lease" @click="resetForm">
|
||||
重置</el-button>
|
||||
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
|
|
|
|||
|
|
@ -133,12 +133,13 @@
|
|||
|
||||
|
||||
<el-form-item>
|
||||
<el-button class="primary-lease" type="primary" @click="getEquipmentApplyList">
|
||||
查询
|
||||
</el-button>
|
||||
<el-button class="primary-lease" type="primary" @click="resetForm">
|
||||
重置
|
||||
</el-button>
|
||||
<el-button class="primary-lease" type="primary" @click="getEquipmentApplyList">
|
||||
查询
|
||||
</el-button>
|
||||
|
||||
|
||||
<el-button class="primary-lease" type="primary" @click="allApproved()"
|
||||
v-if="!isAddVisible && orderStatus =='0'"
|
||||
|
|
|
|||
|
|
@ -71,8 +71,8 @@
|
|||
|
||||
<el-col :span="6">
|
||||
<el-form-item>
|
||||
<el-button size="mini" type="primary" @click="onHandleAddEquipmentQuery">查询</el-button>
|
||||
<el-button size="mini" plain @click="onHandleAddEquipmentReset">重置</el-button>
|
||||
<el-button size="mini" type="primary" @click="onHandleAddEquipmentQuery">查询</el-button>
|
||||
<el-button size="mini" type="primary" @click="onHandleAddEquipmentConfirm">
|
||||
确定添加
|
||||
</el-button>
|
||||
|
|
|
|||
|
|
@ -474,14 +474,14 @@ export default {
|
|||
if (approvalRes && approvalRes.data) {
|
||||
this.$modal.msgSuccess('申请已提交,请等待审批')
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger'
|
||||
path: '/equipment/manage/equipment-ledger'
|
||||
})
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('查询审批实例失败:', error)
|
||||
this.$modal.msgSuccess('申请已提交,请等待审批')
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger'
|
||||
path: '/equipment/manage/equipment-ledger'
|
||||
})
|
||||
}
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -301,7 +301,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/business/EquipmentRetireApply/EquipmentRetireApply' })
|
||||
this.$router.push({ path: '/all/business/EquipmentRetireApply/EquipmentRetireApply' })
|
||||
},
|
||||
async getAuditDetail() {
|
||||
const id = this.$route.query.id
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/business/EquipmentRetireApply/equipment/retire-apply' })
|
||||
this.$router.push({ path: '/all/business/EquipmentRetireApply/equipment/retire-apply' })
|
||||
},
|
||||
async getInfo() {
|
||||
try {
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="19" style="text-align: right;">
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="onHandleReset">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="onHandleQuery">
|
||||
查询
|
||||
</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="onHandleReset">重置</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
|
|
|
|||
|
|
@ -39,8 +39,8 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="onHandleQuery"> 查询</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="onHandleReset">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="onHandleQuery"> 查询</el-button>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item class="button-group">
|
||||
|
|
|
|||
|
|
@ -312,10 +312,10 @@
|
|||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item style="text-align: right;">
|
||||
<el-button icon="el-icon-refresh" size="small" class="primary-lease" @click="onResetInDialog">重置</el-button>
|
||||
<el-button type="primary" size="small" icon="el-icon-search" class="primary-lease" @click="getLeaseListDataInDialog">
|
||||
查询
|
||||
</el-button>
|
||||
<el-button icon="el-icon-refresh" size="small" class="primary-lease" @click="onResetInDialog">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
|
|
|||
|
|
@ -444,7 +444,7 @@ export default {
|
|||
},
|
||||
|
||||
handleBack() {
|
||||
this.$router.push({ path: '/business/outbound/index' })
|
||||
this.$router.push({ path: '/all/business/outbound/index' })
|
||||
},
|
||||
|
||||
handleOutAll() {
|
||||
|
|
|
|||
|
|
@ -225,8 +225,8 @@
|
|||
<el-input v-model="searchParams.code" placeholder="输入内容" clearable style="width: 100%"/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button size="small" type="primary" @click="getListDownEquipment">查询</el-button>
|
||||
<el-button size="small" @click="handleReset">重置</el-button>
|
||||
<el-button size="small" type="primary" @click="getListDownEquipment">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
</el-form>
|
||||
|
|
|
|||
|
|
@ -219,9 +219,8 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
<el-form-item style="text-align: right">
|
||||
<el-button size="small" type="primary" @click="getListNumberTool">查询</el-button>
|
||||
<el-button size="small" @click="handleNumberReset">重置</el-button>
|
||||
|
||||
<el-button size="small" type="primary" @click="getListNumberTool">查询</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="danger"
|
||||
|
|
@ -357,8 +356,8 @@
|
|||
</el-form-item>
|
||||
|
||||
<el-form-item style="float: right; width: 220px">
|
||||
<el-button size="small" type="primary" @click="getListCodeTool">查询</el-button>
|
||||
<el-button size="small" @click="handleCodeReset">重置</el-button>
|
||||
<el-button size="small" type="primary" @click="getListCodeTool">查询</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="danger"
|
||||
|
|
|
|||
|
|
@ -476,7 +476,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/business/outbound/applyList' })
|
||||
this.$router.push({ path: '/all/business/outbound/addApply' })
|
||||
},
|
||||
// 获取使用项目的下拉选
|
||||
async getUseProjectList() {
|
||||
|
|
|
|||
|
|
@ -369,7 +369,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/business/outbound/auditList' })
|
||||
this.$router.push({ path: '/all/business/outbound/auditList' })
|
||||
},
|
||||
// 获取使用项目的下拉选
|
||||
async getUseProjectList() {
|
||||
|
|
|
|||
|
|
@ -284,7 +284,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/business/outbound/index' })
|
||||
this.$router.push({ path: '/all/business/outbound/index' })
|
||||
},
|
||||
// 输入出库数量时校验(实时拦截超限)
|
||||
handleOutNumInput(row) {
|
||||
|
|
@ -439,7 +439,7 @@ export default {
|
|||
},
|
||||
|
||||
handleBack() {
|
||||
this.$router.push({ path: '/business/outbound/index' })
|
||||
this.$router.push({ path: '/all/business/outbound/index' })
|
||||
},
|
||||
|
||||
handleOutAll() {
|
||||
|
|
|
|||
|
|
@ -375,7 +375,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/business/warehouse/auditList' })
|
||||
this.$router.push({ path: '/all/business/warehouse/auditList' })
|
||||
},
|
||||
// 获取使用项目的下拉选
|
||||
async getUseProjectList() {
|
||||
|
|
@ -520,7 +520,7 @@ export default {
|
|||
},
|
||||
|
||||
handleBack() {
|
||||
this.$router.push({ path: '/business/warehouse/auditList' })
|
||||
this.$router.push({ path: '/all/business/warehouse/auditList' })
|
||||
},
|
||||
|
||||
handleCancel() {
|
||||
|
|
|
|||
|
|
@ -317,7 +317,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/business/warehouse/index' })
|
||||
this.$router.push({ path: '/all/business/warehouse/index' })
|
||||
},
|
||||
getDeptTreeSelect() {
|
||||
deptTreeSelect().then((res) => {
|
||||
|
|
|
|||
|
|
@ -90,8 +90,8 @@
|
|||
<!-- </el-form-item>-->
|
||||
|
||||
<el-form-item style="float: right">
|
||||
<el-button type="primary" @click="handleQuery">查询</el-button>
|
||||
<el-button @click="resetQuery">重置</el-button>
|
||||
<el-button type="primary" @click="handleQuery">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
|
|
|||
|
|
@ -290,7 +290,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/equipmentRepair/repairList' })
|
||||
this.$router.push({ path: '/all/equipmentRepair/repairList' })
|
||||
},
|
||||
// 判断退役数量字段是否禁用
|
||||
// 判断退役数量字段是否禁用
|
||||
|
|
|
|||
|
|
@ -264,7 +264,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/equipmentRepair/repairAuditList' })
|
||||
this.$router.push({ path: '/all/equipmentRepair/repairAuditList' })
|
||||
},
|
||||
async loadApprovalInfo() {
|
||||
try {
|
||||
|
|
|
|||
|
|
@ -221,8 +221,8 @@
|
|||
|
||||
<!-- 查询/重置按钮 -->
|
||||
<el-form-item style="float: right; margin-top: 15px;">
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="handleReset">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
|
|
|
|||
|
|
@ -23,8 +23,8 @@
|
|||
|
||||
<!-- 表单按钮 -->
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" style="background: #2CBAB2;" @click="handleQuery">查询</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="handleReset">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" style="background: #2CBAB2;" @click="handleQuery">查询</el-button>
|
||||
</el-form-item>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList" />
|
||||
</el-form>
|
||||
|
|
@ -70,7 +70,7 @@
|
|||
|
||||
<!-- 分页 -->
|
||||
<pagination
|
||||
|
||||
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
|
|
@ -187,7 +187,7 @@ export default {
|
|||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
<style lang="scss" scoped>
|
||||
|
||||
// --
|
||||
.btn {
|
||||
|
|
@ -202,7 +202,7 @@ export default {
|
|||
&:active {
|
||||
background-color: rgba(16, 37, 81, 0.5);
|
||||
}
|
||||
}
|
||||
}
|
||||
.dlg-box {
|
||||
// position: absolute;
|
||||
.close-btn {
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ export default {
|
|||
equipTotal: rowData.maNum
|
||||
});
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger',
|
||||
path: '/equipment/manage/equipment-ledger',
|
||||
// query: { company: rowData.companyName, total: rowData.maNum },
|
||||
query: { parentId: rowData.parentId, deptId: rowData.companyId }
|
||||
});
|
||||
|
|
@ -257,12 +257,12 @@ export default {
|
|||
toolTotal: rowData.toolNum
|
||||
});
|
||||
this.$router.push({
|
||||
path: '/equipment/codeToolsLedger',
|
||||
path: '/equipment/manage/tools/codeToolsLedger',
|
||||
query: { parentId: rowData.parentId, deptId: rowData.companyId }
|
||||
});
|
||||
} else if (type === 'toolNum') {
|
||||
this.$router.push({
|
||||
path: '/equipment/toolsLedger',
|
||||
path: '/equipment/manage/tools/toolsLedger',
|
||||
query: { parentId: rowData.parentId, deptId: rowData.companyId }
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -168,8 +168,8 @@
|
|||
|
||||
<!-- 表单按钮 -->
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="handleReset" class="btn">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
|
@ -221,7 +221,7 @@
|
|||
|
||||
<!-- 分页 -->
|
||||
<pagination
|
||||
|
||||
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
|
|
|
|||
|
|
@ -29,8 +29,8 @@
|
|||
|
||||
<!-- 表单按钮 -->
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="handleReset" class="btn">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
|
@ -79,7 +79,7 @@
|
|||
|
||||
<!-- 分页 -->
|
||||
<pagination
|
||||
|
||||
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
|
|
|
|||
|
|
@ -21,8 +21,8 @@
|
|||
|
||||
<!-- 表单按钮 -->
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="handleReset" class="btn">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
|
@ -55,7 +55,7 @@
|
|||
|
||||
<!-- 分页 -->
|
||||
<pagination
|
||||
|
||||
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
|
|
|
|||
|
|
@ -366,7 +366,7 @@ export default {
|
|||
console.log('🚀 ~ initChart ~ params.data-->>:', params.data)
|
||||
if (!params.data) return
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger',
|
||||
path: '/equipment/manage/equipment-ledger',
|
||||
query: {
|
||||
parentId: params.data.parentId,
|
||||
deptId: params.data.deptId,
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -2655,83 +2655,79 @@ export default {
|
|||
// 对于有多个出线的节点,默认高亮第一条线
|
||||
if (nodeId === 'equipmentLedger') {
|
||||
// 装备台账
|
||||
this.$router.push({ path: '/equipment/equipment-ledger' })
|
||||
} else if (nodeId === 'equipmentShelf') {
|
||||
this.$router.push({ path: '/equipment/equipment-ledger' })
|
||||
this.$router.push({ path: '/equipment/manage/equipment-ledger' })
|
||||
} else if (nodeId === 'equipmentRepair') {
|
||||
// 维修申请
|
||||
this.$router.push({ path: '/equipmentRepair/repairList' })
|
||||
this.$router.push({ path: '/all/equipmentRepair/repairList' })
|
||||
} else if (nodeId === 'equipmentEntry') {
|
||||
// 装备录入
|
||||
this.$router.push({ path: '/equipment/equipment-entry-apply' })
|
||||
} else if (nodeId === 'entryAudit') {
|
||||
// 装备录入审核
|
||||
this.$router.push({ path: '/equipment/equipment-entry-approval' })
|
||||
} else if (nodeId === 'equipmentOffShelf') {
|
||||
this.$router.push({ path: '/equipment/equipment-ledger' })
|
||||
} else if (nodeId === 'selfUseOut') {
|
||||
this.$router.push({ path: '/equipment/euq-out' })
|
||||
} else if (nodeId === 'retire-apply') {
|
||||
// 退役申请
|
||||
this.$router.push({ path: '/business/EquipmentRetireApply/equipment/retire-apply' })
|
||||
this.$router.push({ path: '/all/business/EquipmentRetireApply/equipment/retire-apply' })
|
||||
} else if (nodeId === 'equipmentReturn' || nodeId === 'shareReturn') {
|
||||
this.$router.push({ path: '/equipment/equ-repair' })
|
||||
} else if (nodeId === 'rentalHall') {
|
||||
// 共享大厅
|
||||
this.$router.push({ path: '/equipmentShared/MallIframe' })
|
||||
this.$router.push({ path: '/equipmentShared/app/MallIframe' })
|
||||
} else if (nodeId === 'shareOut') {
|
||||
// 共享出库
|
||||
this.$router.push({ path: '/equipmentShared/order/equipment-shared-lessor' })
|
||||
this.$router.push({ path: '/equipmentShared/app/order/equipment-shared-lessor' })
|
||||
} else if (nodeId === 'equStore') {
|
||||
this.$router.push({ path: '/equipment/equStore' })
|
||||
} else if (nodeId === 'sharedLessor') {
|
||||
// 共享订单
|
||||
this.$router.push({ path: '/equipmentShared/order/equipment-shared-order' })
|
||||
this.$router.push({ path: '/equipmentShared/app/order/equipment-shared-order' })
|
||||
} else if (nodeId === 'warehouse') {
|
||||
// 退库申请
|
||||
this.$router.push({ path: '/business/warehouse/index' })
|
||||
this.$router.push({ path: '/all/business/warehouse/index' })
|
||||
} else if (nodeId === 'outbound') {
|
||||
// 自用出库
|
||||
this.$router.push({ path: '/business/outbound/index' })
|
||||
this.$router.push({ path: '/all/business/outbound/index' })
|
||||
} else if (nodeId === 'toolsLedger') {
|
||||
// 工具台账
|
||||
this.$router.push({ path: '/equipment/toolsLedger' })
|
||||
this.$router.push({ path: '/equipment/manage/tools/toolsLedger' })
|
||||
} else if (nodeId === 'equipmen') {
|
||||
// 装备上架
|
||||
this.$router.push({ path: '/equipmentShared/euqipmentUpOrDown/equipmen' })
|
||||
this.$router.push({ path: '/equipmentShared/shareManage/euqipmentUpOrDown/equipmen' })
|
||||
} else if (nodeId === 'tool') {
|
||||
// 工具上架
|
||||
this.$router.push({ path: '/equipmentShared/euqipmentUpOrDown/tool' })
|
||||
this.$router.push({ path: '/equipmentShared/shareManage/euqipmentUpOrDown/tool' })
|
||||
} else if (nodeId === 'auditList') {
|
||||
// 自用审核
|
||||
this.$router.push({ path: '/business/outbound/auditList' })
|
||||
this.$router.push({ path: '/all/business/outbound/auditList' })
|
||||
} else if (nodeId === 'applyList') {
|
||||
// 自用申请
|
||||
this.$router.push({ path: '/business/outbound/applyList' })
|
||||
this.$router.push({ path: '/all/business/outbound/addApply' })
|
||||
} else if (nodeId === 'approveList') {
|
||||
// 工具录入审核
|
||||
this.$router.push({ path: '/toolsManage/approveList' })
|
||||
} else if (nodeId === 'EquipmentRetireApply') {
|
||||
// 退役审核
|
||||
this.$router.push({ path: '/business/EquipmentRetireApply/EquipmentRetireApply' })
|
||||
this.$router.push({ path: '/all/business/EquipmentRetireApply/EquipmentRetireApply' })
|
||||
} else if (nodeId === 'repairAuditList') {
|
||||
// 维修审核
|
||||
this.$router.push({ path: '/equipmentRepair/repairAuditList' })
|
||||
this.$router.push({ path: '/all/equipmentRepair/repairAuditList' })
|
||||
} else if (nodeId === 'warehouse-auditList') {
|
||||
// 退库审核
|
||||
this.$router.push({ path: '/business/warehouse/auditList' })
|
||||
this.$router.push({ path: '/all/business/warehouse/auditList' })
|
||||
} else if (nodeId === 'applicantList') {
|
||||
// 工具录入申请
|
||||
this.$router.push({ path: '/toolsManage/applicantList' })
|
||||
} else if (nodeId === 'codeToolsLedger') {
|
||||
// 编码工具台账
|
||||
this.$router.push({ path: '/equipment/codeToolsLedger'})
|
||||
this.$router.push({ path: '/equipment/manage/tools/codeToolsLedger'})
|
||||
} else if (nodeId === 'inventoryAudit') {
|
||||
// 入库审核
|
||||
this.$router.push({ path: '/stockManagement/inventoryAudit' })
|
||||
this.$router.push({ path: '/all/stockManagement/inventoryAudit' })
|
||||
} else if (nodeId == 'entryApply') {
|
||||
// 入库申请
|
||||
this.$router.push({ path: '/stockManagement/entryApply'})
|
||||
this.$router.push({ path: '/all/stockManagement/entryApply'})
|
||||
}
|
||||
},
|
||||
},
|
||||
|
|
|
|||
|
|
@ -19,10 +19,10 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button @click="onReset" icon="el-icon-refresh" style="margin-left: 8px">重置</el-button>
|
||||
<el-button @click="handleQuery" icon="el-icon-search" type="primary">
|
||||
查询
|
||||
</el-button>
|
||||
<el-button @click="onReset" icon="el-icon-refresh" style="margin-left: 8px">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -59,10 +59,11 @@
|
|||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button @click="onReset" icon="el-icon-refresh" style="margin-left: 8px">重置</el-button>
|
||||
<el-button @click="getProjectListData" icon="el-icon-search" type="primary">
|
||||
查询
|
||||
</el-button>
|
||||
<el-button @click="onReset" icon="el-icon-refresh" style="margin-left: 8px">重置</el-button>
|
||||
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -17,6 +17,12 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button
|
||||
icon="el-icon-refresh"
|
||||
size="mini"
|
||||
@click="resetQuery"
|
||||
>重置</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-search"
|
||||
|
|
@ -24,12 +30,6 @@
|
|||
@click="handleQuery"
|
||||
>查询</el-button
|
||||
>
|
||||
<el-button
|
||||
icon="el-icon-refresh"
|
||||
size="mini"
|
||||
@click="resetQuery"
|
||||
>重置</el-button
|
||||
>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
|
@ -123,7 +123,7 @@
|
|||
</el-table>
|
||||
|
||||
<pagination
|
||||
|
||||
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
|
|
|
|||
|
|
@ -1,227 +1,389 @@
|
|||
<template>
|
||||
<div class="equipment-table">
|
||||
<h2 class="title" v-if="!showSecondPage">机械化机械化施工装备配置率 </h2>
|
||||
<el-card class="content-box" style="height: 800px" v-if="!showSecondPage">
|
||||
<div v-if="!showSecondPage">
|
||||
<el-table
|
||||
:data="tableData"
|
||||
border
|
||||
stripe
|
||||
:header-cell-style="headerCellStyle"
|
||||
show-overflow-tooltip
|
||||
:cell-style="{ textAlign: 'center' }"
|
||||
class="custom-table"
|
||||
height="800"
|
||||
>
|
||||
<el-table-column width="240" align="center">
|
||||
<template slot="header">
|
||||
<div class="diagonal-header">
|
||||
<div class="diagonal-line"></div>
|
||||
<div class="header-top">指标项</div>
|
||||
<div class="header-bottom">公司</div>
|
||||
</div>
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.companyName }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column prop="valueA" label="线路设备配置率">
|
||||
<template slot-scope="scope">
|
||||
<span class="link" @click="handleDrill(scope.row, 0)">{{ scope.row.valueA + scope.row.newValueA }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="valueB" label="电缆设备配置率">
|
||||
<template slot-scope="scope">
|
||||
<span class="link" @click="handleDrill(scope.row, 1)">{{ scope.row.valueB+scope.row.newValueB }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="valueC" label="变电设备配置率">
|
||||
<template slot-scope="scope">
|
||||
<span class="link" @click="handleDrill(scope.row, 2)">{{ scope.row.valueC+scope.row.newValueC }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="app-container">
|
||||
<!-- 图表卡片:纯div布局,保留核心ref和样式类 -->
|
||||
<div class="chart-card">
|
||||
<div class="chart-container" ref="chartContainer">
|
||||
<div ref="chartRef" class="echarts echarts-box"></div>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
|
||||
<LineDetail
|
||||
v-if="showSecondPage"
|
||||
:key="secondPageTitleId + '_' + secondPageTitle"
|
||||
:title="secondPageTitle"
|
||||
:secondPageTitleId="secondPageTitleId"
|
||||
:table-data="detailTableData"
|
||||
@back="handleBack"
|
||||
/>
|
||||
<div class="table-card">
|
||||
<div class="table-header">
|
||||
<el-button
|
||||
type="primary"
|
||||
style="float: right"
|
||||
icon="el-icon-download"
|
||||
@click="exportTableData"
|
||||
>
|
||||
导出数据
|
||||
</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
:data="tableData"
|
||||
border
|
||||
stripe
|
||||
:fit="true"
|
||||
class="stats-table"
|
||||
v-loading="tableLoading"
|
||||
>
|
||||
<el-table-column label="序号" type="index" width="60" align="center"/>
|
||||
<el-table-column label="公司" prop="deptName" min-width="150" align="center"/>
|
||||
<el-table-column
|
||||
label="线路设备配置率"
|
||||
prop="lineNum"
|
||||
min-width="120"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span class="link" @click="handleCellClick(scope.row.deptId, 0)">{{ scope.row.lineNum }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="电缆设备配置率"
|
||||
prop="cableNum"
|
||||
min-width="120"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span class="link" @click="handleCellClick(scope.row.deptId, 2)">{{ scope.row.cableNum }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="变电设备配置率"
|
||||
prop="substationNum"
|
||||
min-width="120"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span class="link" @click="handleCellClick(scope.row.deptId, 1)">{{ scope.row.substationNum }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="总配置率" prop="num" min-width="100" align="center"/>
|
||||
</el-table>
|
||||
</div>
|
||||
|
||||
<!-- 配置率详情弹窗 -->
|
||||
<el-dialog
|
||||
title="装备配置率明细"
|
||||
:visible.sync="detailDialogVisible"
|
||||
width="90%"
|
||||
top="20px"
|
||||
:close-on-click-modal="false"
|
||||
>
|
||||
<el-table
|
||||
:data="detailTableData"
|
||||
border
|
||||
stripe
|
||||
|
||||
v-loading="detailTableLoading"
|
||||
max-height="600px"
|
||||
>
|
||||
<!-- 明细表格列(匹配用户提供的表格结构) -->
|
||||
<el-table-column label="序号" type="index" width="60" align="center"/>
|
||||
<el-table-column label="装备名称" prop="typeName" min-width="120" align="center"/>
|
||||
<el-table-column label="电压等级" prop="vol" min-width="100" align="center"/>
|
||||
<el-table-column label="地理特征" prop="type" min-width="100" align="center"/>
|
||||
<el-table-column label="配置标准(台)" prop="configValue" min-width="100" align="center"/>
|
||||
<el-table-column label="装备种类" prop="jijuType" min-width="100" align="center"/>
|
||||
<el-table-column label="配置说明" prop="configDescription" min-width="120" align="center"/>
|
||||
<el-table-column label="装备配置率赋值" prop="configRate" min-width="120" align="center"/>
|
||||
<el-table-column label="自有装配数量" prop="ownNum" min-width="120" align="center"/>
|
||||
<el-table-column label="共享装备数量" prop="shareNum" min-width="120" align="center"/>
|
||||
<el-table-column label="外租装备数量" prop="rentOutNum" min-width="120" align="center"/>
|
||||
<el-table-column label="装备实际配置率" prop="baseAddNum" min-width="120" align="center"/>
|
||||
<el-table-column label="特殊装备配备原因" prop="remark" min-width="150" align="center"/>
|
||||
</el-table>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="detailDialogVisible = false">关闭</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listRate, getDetailList } from '@/api/rent-facility/index'
|
||||
import LineDetail from '@/views/rent-facility/line.vue'
|
||||
import * as echarts from 'echarts'
|
||||
import { getConfigurationTotal, exportStatsData, getConfigurationDetails } from '@/api/system/equipmentNew'
|
||||
|
||||
export default {
|
||||
components: { LineDetail },
|
||||
|
||||
name: 'ConfigStatsPage',
|
||||
data() {
|
||||
return {
|
||||
// 表格数据
|
||||
showSearch: true,
|
||||
searchForm: {
|
||||
companyName: '',
|
||||
voltageLevel: '',
|
||||
terrainType: ''
|
||||
},
|
||||
tableData: [],
|
||||
showSecondPage: false,
|
||||
secondPageTitle: '',
|
||||
secondPageTitleId: '',
|
||||
detailTableData: []
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
// 表头样式
|
||||
headerCellStyle() {
|
||||
return {
|
||||
background: '#2CBAB2 !important',
|
||||
color: '#fff',
|
||||
textAlign: 'center'
|
||||
}
|
||||
tableLoading: false,
|
||||
tableHeight: 'auto',
|
||||
chartInstance: null,
|
||||
chartOption: {
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
axisPointer: { type: 'shadow' },
|
||||
formatter: function(params) {
|
||||
let res = params[0].name
|
||||
params.forEach((item) => {
|
||||
const nameMap = {
|
||||
xianlu: '线路配置率',
|
||||
dianlan: '电缆配置率',
|
||||
biandian: '变电配置率'
|
||||
}
|
||||
res += `<br/>${nameMap[item.seriesName] || item.seriesName}:${item.value}`
|
||||
})
|
||||
return res
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
data: ['xianlu', 'dianlan', 'biandian'],
|
||||
formatter: function(name) {
|
||||
const nameMap = { xianlu: '线路', dianlan: '电缆', biandian: '变电' }
|
||||
return nameMap[name] || name
|
||||
},
|
||||
right: '10%'
|
||||
},
|
||||
grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true },
|
||||
xAxis: {
|
||||
type: 'category',
|
||||
data: [],
|
||||
axisLabel: {
|
||||
rotate: 0,
|
||||
fontSize: 12,
|
||||
interval: 0,
|
||||
width: 80,
|
||||
lineHeight: 20,
|
||||
align: 'center',
|
||||
formatter: function(value) {
|
||||
let str = ''
|
||||
for (let i = 0; i < value.length; i++) {
|
||||
str += value[i]
|
||||
if ((i + 1) % 6 === 0) str += '\n'
|
||||
}
|
||||
return str
|
||||
}
|
||||
}
|
||||
},
|
||||
yAxis: { type: 'value', axisLabel: { formatter: '{value}' } },
|
||||
series: [
|
||||
{ name: 'xianlu', type: 'bar', data: [], itemStyle: { color: '#409EFF' } },
|
||||
{ name: 'dianlan', type: 'bar', data: [], itemStyle: { color: '#67C23A' } },
|
||||
{ name: 'biandian', type: 'bar', data: [], itemStyle: { color: '#E6A23C' } }
|
||||
]
|
||||
},
|
||||
resizeTimer: null,
|
||||
// 新增:弹窗相关数据
|
||||
detailDialogVisible: false,
|
||||
detailTableData: [],
|
||||
detailTableLoading: false,
|
||||
// 记录当前点击的行数据和列类型
|
||||
currentClickRow: null,
|
||||
currentClickType: '' // line(线路)/cable(电缆)/substation(变电)
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.fetchData()
|
||||
this.$nextTick(async() => {
|
||||
await this.initPage()
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
// 获取数据函数
|
||||
async fetchData() {
|
||||
// 初始化页面数据:请求成功后再初始化图表
|
||||
async initPage() {
|
||||
this.tableLoading = true
|
||||
try {
|
||||
const response = await listRate()
|
||||
if (response.code === 200 && response.rows) {
|
||||
this.tableData = response.rows || []
|
||||
} else {
|
||||
console.error('API返回数据格式错误:', response)
|
||||
const res = await getConfigurationTotal(this.searchForm)
|
||||
if (res.code === 200) {
|
||||
const statsData = res.data || []
|
||||
this.tableData = statsData
|
||||
this.$nextTick(() => {
|
||||
this.initChart()
|
||||
this.updateChartData(statsData)
|
||||
})
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取数据失败:', error)
|
||||
} catch (err) {
|
||||
console.error('获取统计数据失败:', err)
|
||||
this.$message.error('获取统计数据失败,请稍后重试')
|
||||
} finally {
|
||||
this.tableLoading = false
|
||||
}
|
||||
},
|
||||
|
||||
// 钻取详情
|
||||
async handleDrill(row, type) {
|
||||
// 1. 先清空旧数据并隐藏旧页面,避免组件未刷新
|
||||
this.showSecondPage = true
|
||||
this.detailTableData = []
|
||||
// 初始化ECharts:增加DOM宽高校验+兜底
|
||||
initChart() {
|
||||
const chartDom = this.$refs.chartRef
|
||||
if (!chartDom || this.chartInstance) return
|
||||
|
||||
// 2. 调接口拿到详情数据
|
||||
const res = await getDetailList({ companyId: row.companyId, configType: type })
|
||||
if (res.code === 200) {
|
||||
this.secondPageTitle = `${row.companyName}详情页面`
|
||||
this.secondPageTitleId = row.companyId
|
||||
this.detailTableData = res.rows
|
||||
const clientWidth = chartDom.clientWidth || 800
|
||||
const clientHeight = chartDom.clientHeight || 400
|
||||
if (clientWidth === 0 || clientHeight === 0) {
|
||||
chartDom.style.width = '100%'
|
||||
chartDom.style.height = '450px'
|
||||
}
|
||||
|
||||
// 3. 等组件清理完后再显示
|
||||
this.$nextTick(() => {
|
||||
this.showSecondPage = true
|
||||
})
|
||||
if (this.chartInstance) {
|
||||
this.chartInstance.dispose()
|
||||
this.chartInstance = null
|
||||
}
|
||||
|
||||
this.chartInstance = echarts.init(chartDom)
|
||||
this.chartInstance.setOption(this.chartOption, true)
|
||||
},
|
||||
|
||||
// 更新图表数据:数据同步后强制重绘
|
||||
updateChartData(data) {
|
||||
if (!this.chartInstance || !Array.isArray(data) || data.length === 0) return
|
||||
|
||||
const xAxisData = []
|
||||
const xianluData = []
|
||||
const dianlanData = []
|
||||
const biandianData = []
|
||||
|
||||
data.forEach((item) => {
|
||||
xAxisData.push(item.deptName || '')
|
||||
xianluData.push(item.lineNum || 0)
|
||||
dianlanData.push(item.cableNum || 0)
|
||||
biandianData.push(item.substationNum || 0)
|
||||
})
|
||||
|
||||
const allData = [...xianluData, ...dianlanData, ...biandianData]
|
||||
const maxValue = Math.max(...allData)
|
||||
const dynamicYmax = Math.ceil(maxValue * 1.1)
|
||||
|
||||
this.chartInstance.setOption({
|
||||
xAxis: { data: xAxisData },
|
||||
yAxis: { max: dynamicYmax },
|
||||
series: [
|
||||
{ name: 'xianlu', data: xianluData },
|
||||
{ name: 'dianlan', data: dianlanData },
|
||||
{ name: 'biandian', data: biandianData }
|
||||
]
|
||||
})
|
||||
|
||||
this.chartInstance.resize()
|
||||
},
|
||||
|
||||
// 导出数据:保持原有逻辑,增加loading
|
||||
async exportTableData() {
|
||||
this.$loading({ text: '正在导出,请稍候...' })
|
||||
try {
|
||||
let fileName = `装备配置率统计_${new Date().getTime()}.xLsx`
|
||||
let url = '/material-mall/deptConfig/exportStatsData'
|
||||
this.download(url, {}, fileName)
|
||||
this.$message.success('导出成功')
|
||||
} catch (err) {
|
||||
console.error('导出失败:', err)
|
||||
this.$message.error('导出失败,请稍后重试')
|
||||
} finally {
|
||||
this.$loading().close()
|
||||
}
|
||||
},
|
||||
|
||||
// 返回主页面
|
||||
handleBack() {
|
||||
this.showSecondPage = false
|
||||
// 新增:单元格点击事件处理
|
||||
handleCellClick(deptId, configType) {
|
||||
// 打开弹窗并加载明细数据
|
||||
this.detailDialogVisible = true
|
||||
this.loadConfigDetail(deptId, configType)
|
||||
},
|
||||
|
||||
// 新增:加载配置率明细数据
|
||||
async loadConfigDetail(deptId, configType) {
|
||||
this.detailTableLoading = true
|
||||
try {
|
||||
// 构造请求参数(公司名称+配置类型+搜索条件)
|
||||
const params = {
|
||||
deptId: deptId,
|
||||
configType: configType
|
||||
}
|
||||
const res = await getConfigurationDetails(params)
|
||||
if (res.code === 200) {
|
||||
this.detailTableData = res.data || []
|
||||
}
|
||||
} catch (err) {
|
||||
console.error('获取配置率明细失败:', err)
|
||||
this.$message.error('获取配置率明细失败,请稍后重试')
|
||||
this.detailTableData = []
|
||||
} finally {
|
||||
this.detailTableLoading = false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.equipment-table {
|
||||
padding: 20px;
|
||||
background: #fff;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
|
||||
<!-- 非scoped样式:ECharts容器+全局滚动条(保留) -->
|
||||
<style lang="scss">
|
||||
.echarts-box {
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
min-width: 300px;
|
||||
min-height: 300px;
|
||||
}
|
||||
|
||||
.title {
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
font-size: 18px;
|
||||
margin-bottom: 20px;
|
||||
color: #2CBAB2;
|
||||
::-webkit-scrollbar {
|
||||
width: 6px;
|
||||
height: 6px;
|
||||
}
|
||||
|
||||
.diagonal-header {
|
||||
::-webkit-scrollbar-thumb {
|
||||
border-radius: 3px;
|
||||
background: #dcdfe6;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track {
|
||||
background: #f5f7fa;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- scoped样式:核心调整,适配纯div布局 -->
|
||||
<style scoped lang="scss">
|
||||
.app-container {
|
||||
width: 100%;
|
||||
// background-color: #00a288;
|
||||
// color: white;
|
||||
position: relative;
|
||||
height: 40px;
|
||||
font-size: 12px;
|
||||
height: calc(99vh - 84px);
|
||||
padding: 16px;
|
||||
box-sizing: border-box;
|
||||
background: #f5f7fa;
|
||||
overflow: auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 16px;
|
||||
}
|
||||
|
||||
.diagonal-line {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
.chart-card {
|
||||
background: #fff;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
padding: 16px;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
height: 450px;
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
|
||||
.chart-container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: linear-gradient(
|
||||
to top right,
|
||||
transparent 49.5%,
|
||||
white 49.5%,
|
||||
white 50.5%,
|
||||
transparent 50.5%
|
||||
);
|
||||
}
|
||||
|
||||
.header-top {
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 6px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.header-bottom {
|
||||
position: absolute;
|
||||
bottom: 4px;
|
||||
left: 8px;
|
||||
z-index: 1;
|
||||
.table-card {
|
||||
background: #fff;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
padding: 16px;
|
||||
height: 99vh;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
.link {
|
||||
color: #2CBAB2 ;
|
||||
color: #2CBAB2;
|
||||
cursor: pointer;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.link:hover {
|
||||
color: #23b8b1;
|
||||
}
|
||||
|
||||
.custom-table :deep(th),
|
||||
.custom-table :deep(td) {
|
||||
border: 1px solid #ebeef5;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
::v-deep .el-table {
|
||||
// 启用斑马纹
|
||||
&.el-table--striped .el-table__body {
|
||||
tr.el-table__row--striped td {
|
||||
background-color: #F6FBFA !important; // 浅紫色
|
||||
}
|
||||
}
|
||||
|
||||
.el-table__header {
|
||||
background: #E9F0EE;
|
||||
|
||||
th {
|
||||
background: #E9F0EE !important;
|
||||
color: #606266;
|
||||
font-weight: 600;
|
||||
height: 50px;
|
||||
}
|
||||
}
|
||||
|
||||
&.el-table--striped .el-table__body tr.el-table__row:hover > td.el-table__cell {
|
||||
background-color: #CCF1E9 !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
|
|
|
|||
|
|
@ -416,7 +416,7 @@ export default {
|
|||
console.log('🚀 ~ initChart ~ params.data-->>:', params.data)
|
||||
if (!params.data) return
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger',
|
||||
path: '/equipment/manage/equipment-ledger',
|
||||
query: {
|
||||
parentId: params.data.parentId,
|
||||
deptId: params.data.deptId,
|
||||
|
|
|
|||
|
|
@ -423,7 +423,7 @@ export default {
|
|||
console.log('🚀 ~ initChart ~ params.data-->>:', params.data)
|
||||
if (!params.data) return
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger',
|
||||
path: '/equipment/manage/equipment-ledger',
|
||||
query: {
|
||||
parentId: params.data.parentId,
|
||||
deptId: params.data.deptId,
|
||||
|
|
|
|||
|
|
@ -416,7 +416,7 @@ export default {
|
|||
console.log('🚀 ~ initChart ~ params.data-->>:', params.data)
|
||||
if (!params.data) return
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger',
|
||||
path: '/equipment/manage/equipment-ledger',
|
||||
query: {
|
||||
parentId: params.data.parentId,
|
||||
deptId: params.data.deptId,
|
||||
|
|
|
|||
|
|
@ -423,7 +423,7 @@ export default {
|
|||
console.log('🚀 ~ initChart ~ params.data-->>:', params.data)
|
||||
if (!params.data) return
|
||||
this.$router.push({
|
||||
path: '/equipment/equipment-ledger',
|
||||
path: '/equipment/manage/equipment-ledger',
|
||||
query: {
|
||||
parentId: params.data.parentId,
|
||||
deptId: params.data.deptId,
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
goBack() {
|
||||
this.$router.push({ path: '/stockManagement/entryApply' }).then(() => {
|
||||
this.$router.push({ path: '/all/stockManagement/entryApply' }).then(() => {
|
||||
this.$tab.closePage({ path: '/stockManagement/entryApply/apply' })
|
||||
})
|
||||
},
|
||||
|
|
|
|||
|
|
@ -75,8 +75,8 @@
|
|||
/>
|
||||
</el-form-item> -->
|
||||
<el-form-item style="float: right">
|
||||
<el-button icon="el-icon-search" type="primary" @click="queryTableList" size="mini" style="background: #2CBAB2;"> 查询</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetTableList" size="mini"> 重置</el-button>
|
||||
<el-button icon="el-icon-search" type="primary" @click="queryTableList" size="mini" style="background: #2CBAB2;"> 查询</el-button>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-row>
|
||||
|
|
@ -1051,7 +1051,7 @@ export default {
|
|||
// 返回上一页
|
||||
goBack() {
|
||||
// this.$router.go(-1)
|
||||
this.$router.push({ path: '/stockManagement/entryApply' })
|
||||
this.$router.push({ path: '/all/stockManagement/entryApply' })
|
||||
},
|
||||
async approval(row, status) {
|
||||
equipmentPassAndRejectApiNew({ devIds: row.maId, status: status, id: this.orderId }).then((res) => {
|
||||
|
|
|
|||
|
|
@ -223,7 +223,7 @@ export default {
|
|||
query: { isAddVisible: false, isApprovalVisible: false }
|
||||
})
|
||||
.then(() => {
|
||||
this.$tab.closePage({ path: '/stockManagement/entryApply' })
|
||||
this.$tab.closePage({ path: '/all/stockManagement/entryApply' })
|
||||
})
|
||||
},
|
||||
// 编辑
|
||||
|
|
@ -241,7 +241,7 @@ export default {
|
|||
}
|
||||
})
|
||||
.then(() => {
|
||||
this.$tab.closePage({ path: '/stockManagement/entryApply' })
|
||||
this.$tab.closePage({ path: '/all/stockManagement/entryApply' })
|
||||
})
|
||||
},
|
||||
// 删除
|
||||
|
|
|
|||
|
|
@ -217,7 +217,7 @@ export default {
|
|||
},
|
||||
})
|
||||
.then(() => {
|
||||
this.$tab.closePage({ path: '/stockManagement/entryApply' })
|
||||
this.$tab.closePage({ path: '/all/stockManagement/entryApply' })
|
||||
})
|
||||
},
|
||||
// 提交
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -33,7 +33,7 @@
|
|||
<el-row :gutter="10" class="mb8" style="padding: 10px 20px;margin-bottom: 15px;border-bottom: 1px solid #F0F0F0;">
|
||||
<el-col :span="6" style="display: flex;align-items: center;">
|
||||
<span style="font-size: 20px; font-weight: 800;margin-right: 48px;">菜单管理列表</span>
|
||||
<span style="font-size: 16px;color: #808080;">共{{total}}条记录</span>
|
||||
<!-- <span style="font-size: 16px;color: #808080;">共{{total}}条记录</span> -->
|
||||
</el-col>
|
||||
<el-col :span="18" style="display: flex; justify-content: flex-end">
|
||||
<div class="action-bar">
|
||||
|
|
|
|||
Loading…
Reference in New Issue