Browse Source

看板

master
han\hanst 3 months ago
parent
commit
fbfdb2ef32
  1. 3
      src/router/index.js
  2. 52
      src/views/modules/dashboard/picking-board.vue
  3. 2
      static/config/index-prod.js

3
src/router/index.js

@ -20,7 +20,8 @@ const _import = require('./import-' + process.env.NODE_ENV)
const globalRoutes = [ const globalRoutes = [
{ path: '/404', component: _import('common/404'), name: '404', meta: { title: '404未找到' } }, { path: '/404', component: _import('common/404'), name: '404', meta: { title: '404未找到' } },
{ path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } }, { path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } },
{ path: '/dashboard-picking-board', component: _import('modules/dashboard/picking-board'), name: 'dashboard-picking-board', meta: { title: '人工拣选看板' } }
{ path: '/dashboard-picking-board', component: _import('modules/dashboard/picking-board'), name: 'dashboard-picking-board', meta: { title: '人工拣选看板' } },
{ path: '/dashboard-inventory-board', component: _import('modules/dashboard/inventory-board'), name: 'dashboard-inventory-board', meta: { title: '库存分析看板' } }
] ]
// 主入口路由(需嵌套上左右整体布局) // 主入口路由(需嵌套上左右整体布局)

52
src/views/modules/dashboard/picking-board.vue

@ -41,7 +41,9 @@
<span class="title-divider">|</span> <span class="title-divider">|</span>
<span class="title-sub">工单号码: <strong>{{ order.workOrderNo }}</strong></span> <span class="title-sub">工单号码: <strong>{{ order.workOrderNo }}</strong></span>
<span class="title-divider">|</span> <span class="title-divider">|</span>
<span class="title-sub">物料名称: <strong>{{ order.materialName }}</strong></span>
<span class="title-sub">产品名称: <strong>{{ order.materialName }}</strong></span>
<span class="title-divider"></span>
<span class="title-sub">工单时间: <strong>{{ order.workOrderTime }}</strong></span>
</div> </div>
</div> </div>
<!-- <div class="title-right"> <!-- <div class="title-right">
@ -69,11 +71,11 @@
<table class="data-table"> <table class="data-table">
<thead> <thead>
<tr> <tr>
<th style="width: 15px;">No.</th>
<th style="width: 10px;">No.</th>
<th style="width: 110px;">拣选托盘码</th> <th style="width: 110px;">拣选托盘码</th>
<th style="width: 180px;">拣选物料名称</th> <th style="width: 180px;">拣选物料名称</th>
<th style="width: 80px;">拣选数量</th> <th style="width: 80px;">拣选数量</th>
<th style="width: 100px;">状态</th>
<th style="width: 130px;">状态</th>
<th style="width: 110px;">存放托盘码</th> <th style="width: 110px;">存放托盘码</th>
<th style="width: 80px;">存放位置</th> <th style="width: 80px;">存放位置</th>
</tr> </tr>
@ -121,6 +123,7 @@ export default {
{ {
workOrderNo: '3020124', workOrderNo: '3020124',
materialName: '80506561', materialName: '80506561',
workOrderTime: '2025-01-20 08:30:00',
completedCount: 2, completedCount: 2,
totalCount: 5, totalCount: 5,
details: [ details: [
@ -169,6 +172,7 @@ export default {
{ {
workOrderNo: '3020125', workOrderNo: '3020125',
materialName: '80506562', materialName: '80506562',
workOrderTime: '2025-01-20 10:00:00',
completedCount: 1, completedCount: 1,
totalCount: 5, totalCount: 5,
details: [ details: [
@ -281,7 +285,7 @@ export default {
.picking-board-screen { .picking-board-screen {
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
background: linear-gradient(135deg, #1a1f35 0%, #2d3548 100%);
background: linear-gradient(135deg, #5f8cc3 0%, #749cc8 100%);
position: relative; position: relative;
overflow: hidden; overflow: hidden;
font-family: 'Microsoft YaHei', 'PingFang SC', Arial, sans-serif; font-family: 'Microsoft YaHei', 'PingFang SC', Arial, sans-serif;
@ -322,7 +326,7 @@ export default {
position: relative; position: relative;
font-size: 28px; font-size: 28px;
font-weight: bold; font-weight: bold;
color: #17B3A3;
color: #ffffff;
margin: 0; margin: 0;
letter-spacing: 3px; letter-spacing: 3px;
text-shadow: 0 0 20px rgba(23, 179, 163, 0.5); text-shadow: 0 0 20px rgba(23, 179, 163, 0.5);
@ -330,7 +334,7 @@ export default {
.title-subtitle { .title-subtitle {
font-size: 10px; font-size: 10px;
color: rgba(23, 179, 163, 0.8);
color: rgba(255, 255, 255, 0.8);
letter-spacing: 2px; letter-spacing: 2px;
margin-top: 3px; margin-top: 3px;
font-family: Arial, sans-serif; font-family: Arial, sans-serif;
@ -358,8 +362,8 @@ export default {
} }
.time-text { .time-text {
font-size: 11px;
color: #64D8CB;
font-size: 16px;
color: #ffffff;
font-family: 'Consolas', 'Courier New', monospace; font-family: 'Consolas', 'Courier New', monospace;
font-weight: 500; font-weight: 500;
letter-spacing: 1px; letter-spacing: 1px;
@ -397,9 +401,9 @@ export default {
.picking-panel { .picking-panel {
margin-left: 5px; margin-left: 5px;
flex: 1; flex: 1;
background: rgba(35, 45, 65, 0.8);
background: rgba(70, 90, 120, 0.9);
backdrop-filter: blur(10px); backdrop-filter: blur(10px);
border: 1px solid rgba(23, 179, 163, 0.3);
border: 1px solid rgba(23, 179, 163, 0.5);
border-radius: 12px; border-radius: 12px;
box-shadow: box-shadow:
0 8px 32px rgba(0, 0, 0, 0.4), 0 8px 32px rgba(0, 0, 0, 0.4),
@ -448,9 +452,9 @@ export default {
} }
.title-main { .title-main {
font-size: 13px;
font-size: 18px;
font-weight: bold; font-weight: bold;
color: #64D8CB;
color: #ffffff;
text-shadow: 0 0 10px rgba(100, 216, 203, 0.5); text-shadow: 0 0 10px rgba(100, 216, 203, 0.5);
} }
@ -460,7 +464,7 @@ export default {
} }
.title-sub { .title-sub {
font-size: 11px;
font-size: 16px;
color: rgba(255, 255, 255, 0.8); color: rgba(255, 255, 255, 0.8);
strong { strong {
@ -570,8 +574,8 @@ export default {
} }
th { th {
padding: 8px 10px;
color: #64D8CB;
padding: 8px 2px;
color: #fcfdfd;
font-size: 10px; font-size: 10px;
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
@ -591,11 +595,11 @@ export default {
tbody { tbody {
tr { tr {
background: rgba(25, 33, 50, 0.4);
background: rgba(60, 80, 105, 0.6);
transition: all 0.3s ease; transition: all 0.3s ease;
&:nth-child(even) { &:nth-child(even) {
background: rgba(35, 43, 60, 0.5);
background: rgba(70, 90, 115, 0.7);
} }
&:hover { &:hover {
@ -615,9 +619,9 @@ export default {
} }
td { td {
padding: 7px 10px;
padding: 7px 2px;
color: rgba(255, 255, 255, 0.9); color: rgba(255, 255, 255, 0.9);
font-size: 10px;
font-size: 12px;
border-bottom: 1px solid rgba(23, 179, 163, 0.15); border-bottom: 1px solid rgba(23, 179, 163, 0.15);
&.text-center { &.text-center {
@ -679,11 +683,11 @@ export default {
} }
.title-main { .title-main {
font-size: 12px;
font-size: 18px;
} }
.title-sub { .title-sub {
font-size: 10px;
font-size: 16px;
} }
.progress-numbers { .progress-numbers {
@ -701,17 +705,17 @@ export default {
} }
.title-main { .title-main {
font-size: 15px;
font-size: 18px;
} }
.data-table { .data-table {
thead th { thead th {
font-size: 12px; font-size: 12px;
padding: 9px 12px;
padding: 9px 5px;
} }
tbody td { tbody td {
font-size: 12px;
font-size: 14px;
padding: 8px 12px; padding: 8px 12px;
} }
} }

2
static/config/index-prod.js

@ -5,7 +5,7 @@
window.SITE_CONFIG = {}; window.SITE_CONFIG = {};
// api接口请求地址 // api接口请求地址
window.SITE_CONFIG['baseUrl'] = 'http://192.168.1.2:9096';
window.SITE_CONFIG['baseUrl'] = 'api';
// cdn地址 = 域名 + 版本号 // cdn地址 = 域名 + 版本号
window.SITE_CONFIG['domain'] = './'; // 域名 window.SITE_CONFIG['domain'] = './'; // 域名

Loading…
Cancel
Save