Browse Source

【埃驰看板】暂存

master
安虹睿 11 months ago
parent
commit
ab67fbd291
  1. 22
      PC/IAC_LargeScreen/src/router/index.js
  2. 11
      PC/IAC_LargeScreen/src/styles/index.css
  3. 12
      PC/IAC_LargeScreen/src/styles/index.less
  4. 6
      PC/IAC_LargeScreen/src/views/Home.vue
  5. 325
      PC/IAC_LargeScreen/src/views/reserveBoard.vue
  6. 271
      PC/IAC_LargeScreen/src/views/shippingBoard.vue
  7. 21
      PC/IAC_LargeScreen/src/views/stockBoard.vue

22
PC/IAC_LargeScreen/src/router/index.js

@ -2,6 +2,8 @@ import Vue from 'vue'
import VueRouter from 'vue-router' import VueRouter from 'vue-router'
import Home from '../views/Home.vue' import Home from '../views/Home.vue'
import stockBoard from '../views/stockBoard' import stockBoard from '../views/stockBoard'
import reserveBoard from '../views/reserveBoard'
import shippingBoard from '../views/shippingBoard'
import dateUtil from '../utils/dateUtil' import dateUtil from '../utils/dateUtil'
Vue.use(VueRouter) Vue.use(VueRouter)
@ -12,7 +14,7 @@ const routes = [
name: 'Home', name: 'Home',
component: Home component: Home
}, },
// 纳入计划与实际看板 // 备料看板
{ {
path: '/stockBoard', path: '/stockBoard',
name: 'stockBoard', name: 'stockBoard',
@ -21,6 +23,24 @@ const routes = [
title:"备料看板" title:"备料看板"
} }
}, },
// 收货看板
{
path: '/reserveBoard',
name: 'reserveBoard',
component: reserveBoard,
meta:{
title:"收货看板"
}
},
// 发运看板
{
path: '/shippingBoard',
name: 'shippingBoard',
component: shippingBoard,
meta:{
title:"发运看板"
}
},
] ]
const router = new VueRouter({ const router = new VueRouter({

11
PC/IAC_LargeScreen/src/styles/index.css

@ -173,3 +173,14 @@
font-size: 1.6rem; font-size: 1.6rem;
padding-top: 0.3rem; padding-top: 0.3rem;
} }
.statusBlockItem {
padding: 0.5rem 1.5rem;
color: #fff;
border-radius: 0.1rem;
}
.statusBlockItem_warning {
background: #ff2626;
}
.statusBlockItem_normal {
background: #28b119;
}

12
PC/IAC_LargeScreen/src/styles/index.less

@ -198,3 +198,15 @@
} }
} }
} }
// 状态
.statusBlockItem{
padding:0.5rem 1.5rem;
color:#fff;
border-radius:0.1rem
}
.statusBlockItem_warning{
background:#ff2626
}
.statusBlockItem_normal{
background:#28b119
}

6
PC/IAC_LargeScreen/src/views/Home.vue

@ -1,5 +1,7 @@
<template> <template>
<div class="nav"> <div class="nav">
<div class="item"><el-button type="warning" plain><a href="/#/reserveBoard">收货看板</a></el-button></div>
<div class="item"><el-button type="success" plain><a href="/#/shippingBoard">发运看板</a></el-button></div>
<div class="item"><el-button type="primary" plain><a href="/#/stockBoard">备料看板</a></el-button></div> <div class="item"><el-button type="primary" plain><a href="/#/stockBoard">备料看板</a></el-button></div>
</div> </div>
</template> </template>
@ -14,7 +16,7 @@
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.nav{ .nav{
padding-top: 1rem; padding-top: 1rem;
.item{ .item{
margin: 0 auto 1rem; margin: 0 auto 1rem;
@ -26,5 +28,5 @@
color: inherit; color: inherit;
} }
} }
} }
</style> </style>

325
PC/IAC_LargeScreen/src/views/reserveBoard.vue

@ -0,0 +1,325 @@
<template>
<div class="boardFullPage reserveBoardPage">
<boardHeader
ref="boardHeader_Ref"
:title="'收货看板'"
></boardHeader>
<dv-loading v-show="dataLoading">Loading...</dv-loading>
<div class="lineContain">
<dv-scroll-board :config="config" ref="reserveBoard_Ref" style="height:100%"/>
<div class="hasNoData" v-if="config.data.length <= 0 && !dataLoading">暂无数据</div>
</div>
</div>
</template>
<script>
import axiosUtil from '../utils/request'
import boardHeader from '../components/boardHeader'
import util from '../utils/util'
export default {
name: 'reserveBoard',
components:{boardHeader},
data () {
return {
dataLoading: true,
// config
configDefult:{
header:['供应商', '供应商代码', '到货单号', '到货日期', '到货时间窗口','提醒','状态' ],
waitTime: util.waitTime,//20d
carousel: 'page',
// index: true,
// indexHeader: '',
columnWidth: [350],
align: ['left','center','center','center','center','center','center',],
hoverPause: false, //
rowNum: 10,
headerBGC: '#1981f6',
headerHeight: 65,
evenRowBGC: 'rgba(0, 44, 81, 0.9)',
oddRowBGC: 'rgba(10, 29, 50, 0.9)'
},
config: {}
}
},
created() {
this.initConfig()
this.getList()
clearInterval(this.intervalId)
this.intervalId = setInterval(() => {
this.getList()
}, 60000)//
util.addEventResizeFlesh()
},
destroyed() {
clearInterval(this.intervalId)
},
methods: {
init(){
this.initConfig()
this.getList()
util.addEventResizeFlesh()
},
initConfig(data){
this.config = {
header: this.configDefult.header,
data: data || [],
waitTime: this.configDefult.waitTime,//20d
carousel: this.configDefult.carousel,
index: this.configDefult.index,
indexHeader: this.configDefult.indexHeader,
columnWidth: this.configDefult.columnWidth,
align: this.configDefult.align,
hoverPause: this.configDefult.hoverPause, //
rowNum: this.configDefult.rowNum,
headerBGC: this.configDefult.headerBGC,
headerHeight: this.configDefult.headerHeight,
oddRowBGC: this.configDefult.oddRowBGC,
evenRowBGC: this.configDefult.evenRowBGC
}
},
async getList(){
this.dataLoading = true
this.initConfig()
// axiosUtil.ajax_get('/api/dashboard/plan-and-actual/plan-actual-list').then(res => {
this.dataLoading = false
// if(res.length <= 0){
// return
// }
let rows = []
//
let _res = [
{
"supplier": "1SHANGHAI ZUNDAR TECHNOLOGY C",
"supplierCode": "02000373",
"arrivalNumber": "AVN202312250001",
"arrivalTime": '2023-12-25 16:50:14',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "2CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311160001",
"arrivalTime": '2023-11-16 16:26:48',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "3SHANGHAI PRET COMPOSITES CO",
"supplierCode": "02000305",
"arrivalNumber": "AVN202309280039",
"arrivalTime": '2023-11-10 00:00:00',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "4CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311090001",
"arrivalTime": '2023-11-09 15:06:08',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "5BENECKE CHANGSHUN AUTO TRIM",
"supplierCode": "02000285",
"arrivalNumber": "AVN202310250012",
"arrivalTime": '2023-11-06 00:00:00',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "6SHANGHAI ZUNDAR TECHNOLOGY C",
"supplierCode": "02000373",
"arrivalNumber": "AVN202312250001",
"arrivalTime": '2023-12-25 16:50:14',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "7CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311160001",
"arrivalTime": '2023-11-16 16:26:48',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "8SHANGHAI ZUNDAR TECHNOLOGY C",
"supplierCode": "02000373",
"arrivalNumber": "AVN202312250001",
"arrivalTime": '2023-12-25 16:50:14',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "9CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311160001",
"arrivalTime": '2023-11-16 16:26:48',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "10SHANGHAI PRET COMPOSITES CO",
"supplierCode": "02000305",
"arrivalNumber": "AVN202309280039",
"arrivalTime": '2023-11-10 00:00:00',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "11CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311090001",
"arrivalTime": '2023-11-09 15:06:08',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "12BENECKE CHANGSHUN AUTO TRIM",
"supplierCode": "02000285",
"arrivalNumber": "AVN202310250012",
"arrivalTime": '2023-11-06 00:00:00',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "13SHANGHAI ZUNDAR TECHNOLOGY C",
"supplierCode": "02000373",
"arrivalNumber": "AVN202312250001",
"arrivalTime": '2023-12-25 16:50:14',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "14CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311160001",
"arrivalTime": '2023-11-16 16:26:48',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "15SHANGHAI ZUNDAR TECHNOLOGY C",
"supplierCode": "02000373",
"arrivalNumber": "AVN202312250001",
"arrivalTime": '2023-12-25 16:50:14',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "16CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311160001",
"arrivalTime": '2023-11-16 16:26:48',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "17SHANGHAI PRET COMPOSITES CO",
"supplierCode": "02000305",
"arrivalNumber": "AVN202309280039",
"arrivalTime": '2023-11-10 00:00:00',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
{
"supplier": "18CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311090001",
"arrivalTime": '2023-11-09 15:06:08',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "19BENECKE CHANGSHUN AUTO TRIM",
"supplierCode": "02000285",
"arrivalNumber": "AVN202310250012",
"arrivalTime": '2023-11-06 00:00:00',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "20SHANGHAI ZUNDAR TECHNOLOGY C",
"supplierCode": "02000373",
"arrivalNumber": "AVN202312250001",
"arrivalTime": '2023-12-25 16:50:14',
"timeSlot": '10~11',
"remind":"",
"status":'延迟'
},
{
"supplier": "21CANGZHOU JINFU AUTO PARTS CO",
"supplierCode": "02000414",
"arrivalNumber": "AVN202311160001",
"arrivalTime": '2023-11-16 16:26:48',
"timeSlot": '10~11',
"remind":"",
"status":'准时'
},
]
_res.forEach(item=>{
let _item = []
_item[0] = item.supplier;//
_item[1] = item.supplierCode;//
_item[2] = item.arrivalNumber;//
_item[3] = item.arrivalTime;//
_item[4] = item.timeSlot;//
_item[5] = item.remind;//
_item[6] = item.status;//
if(item.status == '延迟'){
_item[6] = `<span class="statusBlockItem statusBlockItem_warning">${item.status}</span>`;//
}else{
_item[6] = `<span class="statusBlockItem statusBlockItem_normal">${item.status}</span>`;//
}
rows.push(_item)
})
this.initConfig(rows)
// this_.$refs['reserveBoard_Ref'].updateRows(rows,0) //
// }).catch(error => {
// this.dataLoading = false
// console.log(error)
// })
},
}
}
</script>
<style lang="less">
.reserveBoardPage{
.header-item{
font-size: 1rem;
font-weight: bold;
}
.ceil{
font-size: 1rem;
}
.dv-loading{
color: #fff;
}
.lineContain{
margin: 2rem;
height: calc(100vh - 10rem);
}
}
</style>

271
PC/IAC_LargeScreen/src/views/shippingBoard.vue

@ -0,0 +1,271 @@
<template>
<div class="boardFullPage shippingBoardPage">
<boardHeader
ref="boardHeader_Ref"
:title="'发运看板'"
></boardHeader>
<dv-loading v-show="dataLoading">Loading...</dv-loading>
<div class="lineContain">
<dv-scroll-board :config="config" ref="shippingBoard_Ref" style="height:100%"/>
<div class="hasNoData" v-if="config.data.length <= 0 && !dataLoading">暂无数据</div>
</div>
</div>
</template>
<script>
import axiosUtil from '../utils/request'
import boardHeader from '../components/boardHeader'
import util from '../utils/util'
export default {
name: 'shippingBoard',
components:{boardHeader},
data () {
return {
dataLoading: true,
// config
configDefult:{
header:['客户', '客户渎职', '计划发运单号', '计划发运日期', '计划发运时间','提醒','状态' ],
waitTime: util.waitTime,//20d
carousel: 'page',
// index: true,
// indexHeader: '',
// columnWidth: [200],
align: ['center','left','center','center','center','center','center',],
hoverPause: false, //
rowNum: 10,
headerBGC: '#1981f6',
headerHeight: 65,
evenRowBGC: 'rgba(0, 44, 81, 0.9)',
oddRowBGC: 'rgba(10, 29, 50, 0.9)'
},
config: {}
}
},
created() {
this.initConfig()
this.getList()
clearInterval(this.intervalId)
this.intervalId = setInterval(() => {
this.getList()
}, 60000)//
util.addEventResizeFlesh()
},
destroyed() {
clearInterval(this.intervalId)
},
methods: {
init(){
this.initConfig()
this.getList()
util.addEventResizeFlesh()
},
initConfig(data){
this.config = {
header: this.configDefult.header,
data: data || [],
waitTime: this.configDefult.waitTime,//20d
carousel: this.configDefult.carousel,
index: this.configDefult.index,
indexHeader: this.configDefult.indexHeader,
columnWidth: this.configDefult.columnWidth,
align: this.configDefult.align,
hoverPause: this.configDefult.hoverPause, //
rowNum: this.configDefult.rowNum,
headerBGC: this.configDefult.headerBGC,
headerHeight: this.configDefult.headerHeight,
oddRowBGC: this.configDefult.oddRowBGC,
evenRowBGC: this.configDefult.evenRowBGC
}
},
async getList(){
this.dataLoading = true
this.initConfig()
// axiosUtil.ajax_get('/api/dashboard/plan-and-actual/plan-actual-list').then(res => {
this.dataLoading = false
// if(res.length <= 0){
// return
// }
let rows = []
//
let _res = [
{
"customer": "IACCOTDA",
"customerAddressCode": "北美Topper库位",
"number": "DLP202311230001",
"planDate": '2023-12-25',
"planTime": '16:50:14',
"remind":"",
"status":'延迟'
},
{
"customer": "IACCOTDA",
"customerAddressCode": "上海起帆恺瑞国际物流有限公司",
"number": "DLP202312200001",
"planDate": '2023-12-20',
"planTime": '09:10:00',
"remind":"",
"status":'准时'
},
{
"customer": "10000054",
"customerAddressCode": "Hongxiang",
"number": "DLP202311240002",
"planDate": '2023-11-24',
"planTime": '10:11:00',
"remind":"",
"status":'准时'
},
{
"customer": "10000059",
"customerAddressCode": "上海起帆恺瑞国际物流有限公司",
"number": "DLP202311230001",
"planDate": '2023-11-23',
"planTime": '16:04:00',
"remind":"",
"status":'延迟'
},
{
"customer": "10000058",
"customerAddressCode": "Hongxiang",
"number": "DLP202311060003",
"planDate": '2023-11-19',
"planTime": '02:00:00',
"remind":"",
"status":'延迟'
},
{
"customer": "IACCOTDA",
"customerAddressCode": "北美Topper库位",
"number": "DLP202311230001",
"planDate": '2023-12-25',
"planTime": '16:50:14',
"remind":"",
"status":'延迟'
},
{
"customer": "IACCOTDA",
"customerAddressCode": "上海起帆恺瑞国际物流有限公司",
"number": "DLP202312200001",
"planDate": '2023-12-20',
"planTime": '09:10:00',
"remind":"",
"status":'准时'
},
{
"customer": "10000054",
"customerAddressCode": "Hongxiang",
"number": "DLP202311240002",
"planDate": '2023-11-24',
"planTime": '10:11:00',
"remind":"",
"status":'准时'
},
{
"customer": "10000059",
"customerAddressCode": "上海起帆恺瑞国际物流有限公司",
"number": "DLP202311230001",
"planDate": '2023-11-23',
"planTime": '16:04:00',
"remind":"",
"status":'延迟'
},
{
"customer": "10000058",
"customerAddressCode": "Hongxiang",
"number": "DLP202311060003",
"planDate": '2023-11-19',
"planTime": '02:00:00',
"remind":"",
"status":'延迟'
},
{
"customer": "IACCOTDA",
"customerAddressCode": "北美Topper库位",
"number": "DLP202311230001",
"planDate": '2023-12-25',
"planTime": '16:50:14',
"remind":"",
"status":'延迟'
},
{
"customer": "IACCOTDA",
"customerAddressCode": "上海起帆恺瑞国际物流有限公司",
"number": "DLP202312200001",
"planDate": '2023-12-20',
"planTime": '09:10:00',
"remind":"",
"status":'准时'
},
{
"customer": "10000054",
"customerAddressCode": "Hongxiang",
"number": "DLP202311240002",
"planDate": '2023-11-24',
"planTime": '10:11:00',
"remind":"",
"status":'准时'
},
{
"customer": "10000059",
"customerAddressCode": "上海起帆恺瑞国际物流有限公司",
"number": "DLP202311230001",
"planDate": '2023-11-23',
"planTime": '16:04:00',
"remind":"",
"status":'延迟'
},
{
"customer": "10000058",
"customerAddressCode": "Hongxiang",
"number": "DLP202311060003",
"planDate": '2023-11-19',
"planTime": '02:00:00',
"remind":"",
"status":'延迟'
},
]
_res.forEach(item=>{
let _item = []
_item[0] = item.customer;//
_item[1] = item.customerAddressCode;//
_item[2] = item.number;//
_item[3] = item.planDate;//
_item[4] = item.planTime;//
_item[5] = item.remind;//
_item[6] = item.status;//
if(item.status == '延迟'){
_item[6] = `<span class="statusBlockItem statusBlockItem_warning">${item.status}</span>`;//
}else{
_item[6] = `<span class="statusBlockItem statusBlockItem_normal">${item.status}</span>`;//
}
rows.push(_item)
})
this.initConfig(rows)
// this_.$refs['shippingBoard_Ref'].updateRows(rows,0) //
// }).catch(error => {
// this.dataLoading = false
// console.log(error)
// })
},
}
}
</script>
<style lang="less">
.shippingBoardPage{
.header-item{
font-size: 1rem;
font-weight: bold;
}
.ceil{
font-size: 1rem;
}
.dv-loading{
color: #fff;
}
.lineContain{
margin: 2rem;
height: calc(100vh - 10rem);
}
}
</style>

21
PC/IAC_LargeScreen/src/views/stockBoard.vue

@ -6,7 +6,7 @@
></boardHeader> ></boardHeader>
<dv-loading v-show="dataLoading">Loading...</dv-loading> <dv-loading v-show="dataLoading">Loading...</dv-loading>
<div class="lineContain"> <div class="lineContain">
<dv-scroll-board :config="config" ref="PAAscrollBoard" style="height:100%"/> <dv-scroll-board :config="config" ref="stockBoard_Ref" style="height:100%"/>
<div class="hasNoData" v-if="config.data.length <= 0 && !dataLoading">暂无数据</div> <div class="hasNoData" v-if="config.data.length <= 0 && !dataLoading">暂无数据</div>
</div> </div>
</div> </div>
@ -285,14 +285,14 @@ export default {
_item[2] = item.qty;// _item[2] = item.qty;//
_item[3] = item.locationCode;// _item[3] = item.locationCode;//
if(item.status == '紧急'){ if(item.status == '紧急'){
_item[4] = `<span class="statusItem statusItem_warning">${item.status}</span>`;// _item[4] = `<span class="statusBlockItem statusBlockItem_warning">${item.status}</span>`;//
}else{ }else{
_item[4] = `<span class="statusItem statusItem_normal">${item.status}</span>`;// _item[4] = `<span class="statusBlockItem statusBlockItem_normal">${item.status}</span>`;//
} }
rows.push(_item) rows.push(_item)
}) })
this.initConfig(rows) this.initConfig(rows)
// this_.$refs['PAAscrollBoard'].updateRows(rows,0) // // this_.$refs['stockBoard_Ref'].updateRows(rows,0) //
// }).catch(error => { // }).catch(error => {
// this.dataLoading = false // this.dataLoading = false
// console.log(error) // console.log(error)
@ -304,8 +304,6 @@ export default {
<style lang="less"> <style lang="less">
.stockBoardPage{ .stockBoardPage{
background: rgba(0, 44, 81, 1);
.header-item{ .header-item{
font-size: 1rem; font-size: 1rem;
font-weight: bold; font-weight: bold;
@ -320,16 +318,5 @@ export default {
margin: 2rem; margin: 2rem;
height: calc(100vh - 10rem); height: calc(100vh - 10rem);
} }
.statusItem{
padding:0.5rem 1.5rem;
color:#fff;
border-radius:0.1rem
}
.statusItem_warning{
background:#ff2626
}
.statusItem_normal{
background:#28b119
}
} }
</style> </style>
Loading…
Cancel
Save