Browse Source

机械臂分屏

master
han\hanst 2 months ago
parent
commit
fa147a04a8
  1. 12
      src/views/modules/dashboard/robot-picking-container.vue
  2. 12
      src/views/modules/dashboard/robot-picking-material.vue
  3. 30
      src/views/modules/dashboard/warehouse-3d-board.vue

12
src/views/modules/dashboard/robot-picking-container.vue

@ -19,8 +19,8 @@
<div class="header-decoration left"></div> <div class="header-decoration left"></div>
<div class="header-center"> <div class="header-center">
<div class="title-glow"></div> <div class="title-glow"></div>
<h1 class="screen-title">机械臂拣选 - 周转箱</h1>
<div class="title-subtitle">Robot Picking - Container</div>
<h1 class="screen-title">机械臂拣选 - 1</h1>
<div class="title-subtitle">Robot Picking - 1</div>
</div> </div>
<div class="header-decoration right"></div> <div class="header-decoration right"></div>
<div class="header-time"> <div class="header-time">
@ -560,7 +560,7 @@ export default {
} }
td { td {
padding: 8px 6px;
padding: 4px 6px;
color: rgba(255, 255, 255, 0.9); color: rgba(255, 255, 255, 0.9);
font-size: 15px; font-size: 15px;
border-bottom: 1px solid rgba(23, 179, 163, 0.15); border-bottom: 1px solid rgba(23, 179, 163, 0.15);
@ -643,18 +643,18 @@ export default {
.data-table { .data-table {
thead th { thead th {
font-size: 20px; font-size: 20px;
padding: 16px 12px;
padding: 6px 12px;
} }
tbody td { tbody td {
font-size: 20px; font-size: 20px;
padding: 14px 12px;
padding: 4px 12px;
} }
} }
.status-badge { .status-badge {
font-size: 18px; font-size: 18px;
padding: 8px 18px;
padding: 4px 10px;
min-width: 100px; min-width: 100px;
} }
} }

12
src/views/modules/dashboard/robot-picking-material.vue

@ -19,8 +19,8 @@
<div class="header-decoration left"></div> <div class="header-decoration left"></div>
<div class="header-center"> <div class="header-center">
<div class="title-glow"></div> <div class="title-glow"></div>
<h1 class="screen-title">机械臂拣选 - 原材</h1>
<div class="title-subtitle">Robot Picking - Material</div>
<h1 class="screen-title">机械臂拣选 - 2</h1>
<div class="title-subtitle">Robot Picking - 2</div>
</div> </div>
<div class="header-decoration right"></div> <div class="header-decoration right"></div>
<div class="header-time"> <div class="header-time">
@ -561,7 +561,7 @@ export default {
} }
td { td {
padding: 8px 6px;
padding: 4px 6px;
color: rgba(255, 255, 255, 0.9); color: rgba(255, 255, 255, 0.9);
font-size: 15px; font-size: 15px;
border-bottom: 1px solid rgba(23, 179, 163, 0.15); border-bottom: 1px solid rgba(23, 179, 163, 0.15);
@ -644,18 +644,18 @@ export default {
.data-table { .data-table {
thead th { thead th {
font-size: 20px; font-size: 20px;
padding: 16px 12px;
padding: 6px 12px;
} }
tbody td { tbody td {
font-size: 20px; font-size: 20px;
padding: 14px 12px;
padding: 4px 12px;
} }
} }
.status-badge { .status-badge {
font-size: 18px; font-size: 18px;
padding: 8px 18px;
padding: 4px 10px;
min-width: 100px; min-width: 100px;
} }
} }

30
src/views/modules/dashboard/warehouse-3d-board.vue

@ -138,10 +138,10 @@
</div> </div>
<div class="summary-item"> <div class="summary-item">
<span class="summary-label">已使用</span> <span class="summary-label">已使用</span>
<span class="summary-value used">{{ storageData.usedSlots }}</span>
<span class="summary-value rate">{{ storageData.usedSlots }}</span>
</div> </div>
<div class="summary-item"> <div class="summary-item">
<span class="summary-label">利用率</span>
<span class="summary-label">利用率(包含空托盘)</span>
<span class="summary-value rate">{{ storageData.utilizationRate }}%</span> <span class="summary-value rate">{{ storageData.utilizationRate }}%</span>
</div> </div>
</div> </div>
@ -221,8 +221,8 @@
<div class="panel-card inventory-trend"> <div class="panel-card inventory-trend">
<div class="card-header"> <div class="card-header">
<div class="header-icon"></div> <div class="header-icon"></div>
<span class="header-title">原材料库存量趋势</span>
<span class="header-subtitle">Raw Material Inventory Trend</span>
<span class="header-title">原材料库存M²</span>
<span class="header-subtitle">Raw Material Inventory</span>
</div> </div>
<div class="card-body"> <div class="card-body">
<div id="finishedGoodsTrendChart" class="chart-container"></div> <div id="finishedGoodsTrendChart" class="chart-container"></div>
@ -233,8 +233,8 @@
<div class="panel-card inventory-trend"> <div class="panel-card inventory-trend">
<div class="card-header"> <div class="card-header">
<div class="header-icon"></div> <div class="header-icon"></div>
<span class="header-title">规格料库存量趋势</span>
<span class="header-subtitle">Specified Materials Inventory Trend</span>
<span class="header-title">规格料库存M</span>
<span class="header-subtitle">Specified Materials Inventory</span>
</div> </div>
<div class="card-body"> <div class="card-body">
<div id="rawMaterialTrendChart" class="chart-container"></div> <div id="rawMaterialTrendChart" class="chart-container"></div>
@ -245,8 +245,8 @@
<div class="panel-card stagnant-analysis"> <div class="panel-card stagnant-analysis">
<div class="card-header"> <div class="card-header">
<div class="header-icon"></div> <div class="header-icon"></div>
<span class="header-title">产成品库存趋势</span>
<span class="header-subtitle">Finished Goods Inventory Trend</span>
<span class="header-title">产成品库存PCS</span>
<span class="header-subtitle">Finished Goods Inventory</span>
</div> </div>
<div class="card-body"> <div class="card-body">
<div id="stagnantChart" class="chart-container"></div> <div id="stagnantChart" class="chart-container"></div>
@ -333,8 +333,8 @@ export default {
// //
robotData: [ robotData: [
{ id: 1, name: '机器人#1', status: 'working', statusText: '工作中', efficiency: 95, tasks: 2 },
{ id: 2, name: '机器人#2', status: 'working', statusText: '工作中', efficiency: 92, tasks: 4 }
{ id: 1, name: '机械臂#1', status: 'working', statusText: '工作中', efficiency: 95, tasks: 1 },
{ id: 2, name: '机械臂#2', status: 'working', statusText: '工作中', efficiency: 92, tasks: 1 }
], ],
// AGVTUSK // AGVTUSK
@ -388,7 +388,7 @@ export default {
mounted() { mounted() {
// //
this.currentTime = '等待服务器时间同步...' this.currentTime = '等待服务器时间同步...'
// //
this.timeInterval = setInterval(() => { this.timeInterval = setInterval(() => {
this.updateTime() this.updateTime()
@ -480,7 +480,7 @@ export default {
/** /**
* 更新服务器时间偏移量 * 更新服务器时间偏移量
*
*
* @param {string} serverTimeString - 服务器时间字符串 * @param {string} serverTimeString - 服务器时间字符串
*/ */
updateServerTimeOffset(serverTimeString) { updateServerTimeOffset(serverTimeString) {
@ -489,7 +489,7 @@ export default {
const timeStr = serverTimeString.split(' ')[0] + ' ' + serverTimeString.split(' ')[1] const timeStr = serverTimeString.split(' ')[0] + ' ' + serverTimeString.split(' ')[1]
const serverTime = new Date(timeStr).getTime() const serverTime = new Date(timeStr).getTime()
const localTime = new Date().getTime() const localTime = new Date().getTime()
if (!isNaN(serverTime)) { if (!isNaN(serverTime)) {
this.serverTimeOffset = serverTime - localTime this.serverTimeOffset = serverTime - localTime
console.log('服务器时间偏移量更新:', this.serverTimeOffset, 'ms') console.log('服务器时间偏移量更新:', this.serverTimeOffset, 'ms')
@ -498,7 +498,7 @@ export default {
console.warn('解析服务器时间失败:', error) console.warn('解析服务器时间失败:', error)
} }
}, },
/** /**
* 更新时间显示使用服务器时间偏移量 * 更新时间显示使用服务器时间偏移量
*/ */
@ -564,7 +564,7 @@ export default {
handleWebSocketMessage(message) { handleWebSocketMessage(message) {
if (message && message.code === 0) { if (message && message.code === 0) {
console.log('[智能立体仓库看板] 收到WebSocket推送数据:', message.data) console.log('[智能立体仓库看板] 收到WebSocket推送数据:', message.data)
// //
if (message.serverTime) { if (message.serverTime) {
this.updateServerTimeOffset(message.serverTime) this.updateServerTimeOffset(message.serverTime)

Loading…
Cancel
Save