add:增加看板及报表

This commit is contained in:
zhangzq
2026-03-09 17:25:58 +08:00
parent 5c4ac88b22
commit 8eb4c5889f
6 changed files with 53 additions and 47 deletions

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.nl.wms.biBoard.report.service.dao.mapper.ConsumeReportMapper"> <mapper namespace="org.nl.wms.biBoard.consumptionReport.service.dao.mapper.ConsumeReportMapper">
<!-- 班组焊材消耗报表分页查询 --> <!-- 班组焊材消耗报表分页查询 -->
<select id="queryConsumeReport" resultType="org.nl.wms.biBoard.consumptionReport.dto.ConsumeReportDto"> <select id="queryConsumeReport" resultType="org.nl.wms.biBoard.consumptionReport.dto.ConsumeReportDto">

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.nl.wms.biBoard.iosReport.service.dao.mapper.IosReportMapper"> <mapper namespace="org.nl.wms.biBoard.materialRequisition.service.dao.mapper.IosReportMapper">
<!-- 领料出库及退料入库数据报表分页查询 --> <!-- 领料出库及退料入库数据报表分页查询 -->
<select id="queryIosReport" resultType="org.nl.wms.biBoard.materialRequisition.dto.IosReportDto"> <select id="queryIosReport" resultType="org.nl.wms.biBoard.materialRequisition.dto.IosReportDto">

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

View File

@@ -17,6 +17,12 @@ export const constantRouterMap = [
component: (resolve) => require(['@/views/features/404'], resolve), component: (resolve) => require(['@/views/features/404'], resolve),
hidden: true hidden: true
}, },
{
path: '/screen/fullscreen',
meta: { title: '智慧看板', noCache: true },
component: (resolve) => require(['@/views/wms/biBoard/screen/index'], resolve),
hidden: true
},
{ {
path: '/401', path: '/401',
component: (resolve) => require(['@/views/features/401'], resolve), component: (resolve) => require(['@/views/features/401'], resolve),

View File

@@ -36,12 +36,12 @@
<div class="panel-title">焊材库存占比</div> <div class="panel-title">焊材库存占比</div>
<div class="chart-container"> <div class="chart-container">
<div id="structChart" style="width: 100%; height: 280px;"></div> <div id="structChart" style="width: 100%; height: 280px;" />
</div> </div>
<div class="panel-title">焊材领料Top5</div> <div class="panel-title">焊材领料Top5</div>
<div class="chart-container"> <div class="chart-container">
<div id="materialTop5Chart" style="width: 100%; height: 300px;"></div> <div id="materialTop5Chart" style="width: 100%; height: 300px;" />
</div> </div>
</div> </div>
@@ -76,7 +76,7 @@
<!-- 温湿度监控 --> <!-- 温湿度监控 -->
<div class="temp-monitor"> <div class="temp-monitor">
<div class="monitor-title">温湿度监控</div> <div class="monitor-title">温湿度监控</div>
<div id="tempChart" style="width: 100%; height: 200px;"></div> <div id="tempChart" style="width: 100%; height: 200px;" />
</div> </div>
</div> </div>
</div> </div>
@@ -109,7 +109,7 @@
<div class="panel-title">班组焊材消耗</div> <div class="panel-title">班组焊材消耗</div>
<div class="chart-container"> <div class="chart-container">
<div id="consumeChart" style="width: 100%; height: 250px;"></div> <div id="consumeChart" style="width: 100%; height: 250px;" />
</div> </div>
<div class="panel-title">当日领退明细</div> <div class="panel-title">当日领退明细</div>
@@ -162,32 +162,6 @@ export default {
scrollIndex3: 0 scrollIndex3: 0
} }
}, },
mounted() {
this.updateTime()
this.timer = setInterval(this.updateTime, 1000)
this.loadAllData()
this.dataTimer = setInterval(this.loadAllData, 30000) // 30秒刷新一次
this.startScrolling()
},
beforeDestroy() {
if (this.timer) {
clearInterval(this.timer)
}
if (this.dataTimer) {
clearInterval(this.dataTimer)
}
if (this.scrollTimer1) {
clearInterval(this.scrollTimer1)
}
if (this.scrollTimer2) {
clearInterval(this.scrollTimer2)
}
if (this.scrollTimer3) {
clearInterval(this.scrollTimer3)
}
},
computed: { computed: {
displayIosReportData() { displayIosReportData() {
if (this.iosReportData.length <= 5) { if (this.iosReportData.length <= 5) {
@@ -223,6 +197,32 @@ export default {
return result return result
} }
}, },
mounted() {
this.updateTime()
this.timer = setInterval(this.updateTime, 1000)
this.loadAllData()
this.dataTimer = setInterval(this.loadAllData, 30000) // 30秒刷新一次
this.startScrolling()
},
beforeDestroy() {
if (this.timer) {
clearInterval(this.timer)
}
if (this.dataTimer) {
clearInterval(this.dataTimer)
}
if (this.scrollTimer1) {
clearInterval(this.scrollTimer1)
}
if (this.scrollTimer2) {
clearInterval(this.scrollTimer2)
}
if (this.scrollTimer3) {
clearInterval(this.scrollTimer3)
}
},
methods: { methods: {
updateTime() { updateTime() {
const now = new Date() const now = new Date()
@@ -403,7 +403,7 @@ export default {
} }
} }
] ]
}; }
chart.setOption(option) chart.setOption(option)
}, },
@@ -642,7 +642,7 @@ export default {
} }
.center-left { .center-left {
flex: 0 0 50%; flex: 0 0 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 20px; gap: 20px;