Compare commits

24 Commits

Author SHA1 Message Date
zwq
4f60cbdd52 更新驾驶舱叉车 2022-12-01 10:32:30 +08:00
f3cab73116 Merge pull request '11-wms-zjl' (#22) from 11-wms-zjl into master
Reviewed-on: #22
2022-11-28 16:49:46 +08:00
864bdac590 merge master 2022-11-28 16:48:38 +08:00
bdf53317c3 品名 2022-11-28 16:44:07 +08:00
1d50fbde4b Merge pull request '更新驾驶舱' (#21) from zwq into master
Reviewed-on: #21
2022-11-28 16:10:28 +08:00
zwq
9c14efef55 更新驾驶舱 2022-11-28 16:09:53 +08:00
bc114666e5 Merge pull request '更新' (#20) from zwq into master
Reviewed-on: #20
2022-11-28 15:05:40 +08:00
zwq
326300566f 更新 2022-11-28 15:05:00 +08:00
3c34e31711 Merge pull request '地址' (#19) from 11-wms-zjl into master
Reviewed-on: #19
2022-11-28 14:36:16 +08:00
988b4ce47b 地址 2022-11-28 14:34:50 +08:00
c3127d4066 Merge pull request '更新驾驶舱' (#18) from zwq into master
Reviewed-on: #18
2022-11-24 16:20:46 +08:00
zwq
10e7ec7268 更新驾驶舱 2022-11-24 16:19:58 +08:00
dfa7206e41 Merge pull request '11.23修改' (#17) from 11-wms-zjl into master
Reviewed-on: #17
2022-11-24 08:41:15 +08:00
d027ff4d64 11.23修改 2022-11-24 08:40:39 +08:00
57159bec8d Merge pull request '11-wms-zjl' (#16) from 11-wms-zjl into master
Reviewed-on: #16
2022-11-18 11:09:49 +08:00
93ea975af5 数据修改 2022-11-18 11:08:23 +08:00
0cd98e9e40 merge master 2022-11-18 09:01:03 +08:00
6f5607a841 Merge pull request '更新驾驶舱' (#15) from zwq into master
Reviewed-on: #15
2022-11-17 16:41:53 +08:00
zwq
ced84a73ec 更新驾驶舱 2022-11-17 16:41:15 +08:00
fcd63d5059 wms数据 2022-11-17 10:37:59 +08:00
2d586c19de Merge pull request '11.14修改样式' (#14) from 11-wms-zjl into master
Reviewed-on: #14
2022-11-14 16:51:20 +08:00
a595bc46bd 11.14修改样式 2022-11-14 16:50:39 +08:00
19fd321a4e Merge pull request '更新驾驶舱' (#13) from zwq into master
Reviewed-on: #13
2022-11-14 14:48:32 +08:00
zwq
ab8848b6e3 更新驾驶舱 2022-11-14 14:47:57 +08:00
19 changed files with 685 additions and 305 deletions

View File

@@ -1,3 +1,10 @@
<!--
* @Author: zwq
* @Date: 2022-10-20 09:22:39
* @LastEditors: zwq
* @LastEditTime: 2022-11-24 10:37:57
* @Description:
-->
<template> <template>
<div id="app"> <div id="app">
<router-view /> <router-view />
@@ -7,7 +14,18 @@
<script> <script>
export default { export default {
name: 'App', name: 'App',
data() {
return {
beilv: 1
}
},
mounted() { mounted() {
this.beilv = document.body.offsetWidth / 1920
document.documentElement.style.setProperty('--beilv', this.beilv)
window.addEventListener('resize', () => {
this.beilv = document.body.offsetWidth / 1920
document.documentElement.style.setProperty('--beilv', this.beilv)
})
} }
} }
</script> </script>

View File

@@ -219,7 +219,7 @@ export default {
// this.$router.push('/') // this.$router.push('/')
if (sessionStorage.getItem('param')) { if (sessionStorage.getItem('param')) {
const param = JSON.parse(window.atob(sessionStorage.getItem('param'))) const param = JSON.parse(window.atob(sessionStorage.getItem('param')))
window.location = 'https://www.baidu.com/?' + param window.location = 'http://192.168.1.103:9527/#/?' + param
} }
}, },
handleAlarm() {}, handleAlarm() {},

View File

@@ -69,8 +69,8 @@ export default {
width: 100%; width: 100%;
& .sidebar-logo { & .sidebar-logo {
width: 36px; width: 26px;
height: 36px; height: 26px;
vertical-align: middle; vertical-align: middle;
margin-right: 12px; margin-right: 12px;
} }

View File

@@ -230,7 +230,7 @@ export const routes = [
path: 'goodsData', path: 'goodsData',
name: 'goodsData', name: 'goodsData',
meta: { meta: {
title: '物数据', title: '物数据',
icon: 'form' icon: 'form'
}, },
component: () => import('@/views/wmsBasicData/goodsData.vue') component: () => import('@/views/wmsBasicData/goodsData.vue')

View File

@@ -27,17 +27,15 @@ export function getCustomerCodeList() {
// 成品规格List // 成品规格List
export function getProductSpecList() { export function getProductSpecList() {
const list = ['50*50mm', '70*50mm', '70*70mm', '100*50mm', '100*70mm', '100*100mm', '100*120mm', '120*120mm'] const list = ['2.0-1128*1716', '2.0-1128*2251', '2.0-1128*2272', '3.2-1128*1716', '3.2-1128*1718', '3.2-1032*1747', '3.2-1033*2089']
const spec = list[parseInt(Math.random() * (list.length))] const spec = list[parseInt(Math.random() * (list.length))]
return spec return spec
} }
// 批次List // 批次List
export function getBatchList() { export function getBatchList() {
let batch = '2022' const sj = parseInt(Math.random() * 100 + 1)
for (let i = 0; i < 8; i++) { const batch = moment().subtract(sj, 'days').format('YYYYMMDD')
batch += parseInt(Math.random() * 89 + 10)
}
return batch return batch
} }
@@ -94,7 +92,7 @@ export function getOperationCode2List() {
} }
// 仓库 // 仓库
const storeList = ['1号立体库', '2号立体库', '3号立体库', '4号立体库', '5号立体库', '6号立体库', '7号立体库', '8号立体库'] const storeList = ['成品库A', '成品库B', '成品库C', '成品库D', '备件库', '辅材库']
export function getStoreList() { export function getStoreList() {
let store = '' let store = ''
store += storeList[parseInt(Math.random() * storeList.length)] store += storeList[parseInt(Math.random() * storeList.length)]
@@ -102,7 +100,7 @@ export function getStoreList() {
} }
// 库区 // 库区
const KQList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N'] const KQList = ['A', 'B', 'C', 'D']
export function getKQList() { export function getKQList() {
let KQ = '' let KQ = ''
KQ += KQList[parseInt(Math.random() * KQList.length)] KQ += KQList[parseInt(Math.random() * KQList.length)]
@@ -153,10 +151,8 @@ export function getTimeArr() {
// 物料编码List // 物料编码List
export function getMaterialCodeList() { export function getMaterialCodeList() {
let materialCode = 'WL' const sj = parseInt(Math.random() * 365)
for (let i = 0; i < 4; i++) { const materialCode = 'M' + (sj % 2 ? 'G' : 'F') + moment().subtract(sj, 'days').subtract(sj, 'hour').subtract(sj, 'minutes').subtract(sj, 'seconds').format('YYYYMMDDhhmmss')
materialCode += parseInt(Math.random() * 89 + 10)
}
return materialCode return materialCode
} }
@@ -169,7 +165,7 @@ export function getNameList() {
} }
// 客户数据 // 客户数据
const compList = ['台玻', 'FUYAO福耀', 'SG南玻', 'XYG信义玻璃', '耀皮', '福莱特玻璃', 'CLFG洛玻', 'SHABO沙玻', 'KIBING旗滨', '金晶玻璃', '济南金昊', '东莞佳美特', '汇中矿产', '文盛新材料', '西点化学', '开源塑胶', '奥驰商贸', '竹中科技', '程龙玻璃'] const compList = ['隆基绿能科技股份有限公司', '天合光能股份有限公司', '晶澳太阳能科技股份有限公司', '晶科能源股份有限公司', '阿特斯阳光电力集团', '东方日升新能源股份有限公司', '尚德集团', '浙江正泰新能源开发有限公司', '环晟光伏(江苏)有限公司', '江苏赛拉弗光伏系统有限公司', '唐山海泰新能科技股份有限公司', '阳光能源控股有限公司', '横店集团东磁股份有限公司', '常州亿晶光电科技有限公司', '协鑫集成科技股份有限公司', '苏州中来光伏新材股份有限公司', '中节能太阳能科技(镇江)有限公司', '苏州腾晖光伏技术有限公司', '英利绿色能源控股有限公司', '湖南红太阳新能源科技有限公司']
export function getCompTyleList() { export function getCompTyleList() {
let comp = '' let comp = ''
comp = compList[parseInt(Math.random() * (compList.length))] comp = compList[parseInt(Math.random() * (compList.length))]
@@ -193,7 +189,7 @@ export function getPhoneList() {
} }
// 物品名称 // 物品名称
const goodsList = ['钢化玻璃', '磨砂玻璃', '喷砂玻璃', '压花玻璃', '夹丝玻璃', '夹层玻璃'] const goodsList = ['盖板玻璃', '背板玻璃']
export function getGoodsList() { export function getGoodsList() {
let name = '' let name = ''
name = goodsList[parseInt(Math.random() * (goodsList.length))] name = goodsList[parseInt(Math.random() * (goodsList.length))]

View File

@@ -2,7 +2,7 @@
* @Author: zwq * @Author: zwq
* @Date: 2022-01-21 14:43:06 * @Date: 2022-01-21 14:43:06
* @LastEditors: zwq * @LastEditors: zwq
* @LastEditTime: 2022-11-08 15:09:11 * @LastEditTime: 2022-11-28 15:03:58
* @Description: * @Description:
--> -->
<template> <template>
@@ -93,6 +93,7 @@ export default {
// 默认的legend配置 // 默认的legend配置
legend: { legend: {
orient: 'vertical', orient: 'vertical',
show: false,
bottom: 0, bottom: 0,
itemHeight: 10, itemHeight: 10,
itemWidth: 10, itemWidth: 10,
@@ -112,16 +113,17 @@ export default {
rich: { rich: {
a: { a: {
align: 'center', align: 'center',
fontSize: 13, fontSize: 12,
fontWeight: 400,
color: 'rgba(255, 255, 255, 0.7)', color: 'rgba(255, 255, 255, 0.7)',
padding: [0, 4], padding: [0, 1],
lineHeight: 16 lineHeight: 16
}, },
b: { b: {
// verticalAlign: 'top', // verticalAlign: 'top',
align: 'center', align: 'center',
padding: [0, 4], fontSize: 12,
fontSize: 13, fontWeight: 400,
color: 'rgba(255, 255, 255)' color: 'rgba(255, 255, 255)'
}, },
c: { c: {
@@ -169,7 +171,6 @@ export default {
}, },
// 默认的series配置 // 默认的series配置
series: { series: {
center: ['60%', '55%'],
radius: ['50%', '70%'], radius: ['50%', '70%'],
silent: true, silent: true,
avoidLabelOverlap: false, avoidLabelOverlap: false,
@@ -194,8 +195,18 @@ export default {
} }
}, },
mounted() { mounted() {
window.addEventListener('resize', () => {
if (this.chart) {
this.chart.resize()
this.$nextTick(() => {
// 重新绘制文本大小
this.initChart()
})
}
})
this.$nextTick(() => { this.$nextTick(() => {
this.initChart() this.initChart()
this.chart.resize()
}) })
}, },
beforeDestroy() { beforeDestroy() {
@@ -211,22 +222,24 @@ export default {
this.chart.setOption({ this.chart.setOption({
title: this.showCenterTitle title: this.showCenterTitle
? { ? {
text: this.seriesData.reduce((pre, cur) => pre + cur.value, 0), text: `${this.seriesData.reduce((pre, cur) => pre + cur.value, 0)}\n{name|总共}`,
subtext: '总共', top: '44%',
top: '45%', left: '49%',
left: '59%',
textAlign: 'center', textAlign: 'center',
itemGap: 5,
textStyle: { textStyle: {
color: '#fff', color: '#fff',
fontSize: 22, fontSize: 26 * this.beilv,
fontWeight: 'lighter', fontWeight: 400,
lineHeight: 15 lineHeight: 15 * this.beilv,
}, rich: {
subtextStyle: { name: {
color: '#c0c0c0', color: 'rgba(255, 255, 255, 0.7)',
fontSize: 12, fontWeight: 400,
lineHeight: 20 textAlign: 'center',
fontSize: 14 * this.beilv,
lineHeight: 20 * this.beilv
}
}
} }
} }
: {}, : {},
@@ -257,6 +270,18 @@ export default {
...this.seriesConfig, ...this.seriesConfig,
itemStyle: { itemStyle: {
normal: { normal: {
label: {
show: true,
fontSize: 15 * this.beilv,
lineHeight: 18,
formatter: '{d}%\n{name|{b}}',
rich: {
name: {
color: 1,
fontSize: 10 * this.beilv
}
}
},
color: (list) => { color: (list) => {
var colorList = [ var colorList = [
{ {
@@ -290,10 +315,10 @@ export default {
} }
} }
}, },
label: { labelLine: {
formatter: [ length: 8,
'{d}%' length2: 15,
].join('\n') maxSurfaceAngle: 80
}, },
data: this.seriesData.map((item, index) => { data: this.seriesData.map((item, index) => {
item.label = { item.label = {

View File

@@ -2,42 +2,109 @@
* @Author: zwq * @Author: zwq
* @Date: 2020-12-29 16:37:56 * @Date: 2020-12-29 16:37:56
* @LastEditors: zwq * @LastEditors: zwq
* @LastEditTime: 2022-11-08 16:06:39 * @LastEditTime: 2022-11-24 15:47:14
* @Description: * @Description:
--> -->
<template> <template>
<div class="container"> <div class="container">
<div <div>
v-for="i in areaArr" <div
:key="i" v-for="i in areaArr"
:style="{ height: 135 * beilv + 'px',width: 730 * beilv + 'px', marginTop: 11 * beilv + 'px' }" :key="i.title"
class="area" :style="{ height: 145 * beilv + 'px', width: 730 * beilv + 'px' }"
> class="box"
<el-row> >
<el-col :span="1"> <div
<div class="areaName" :style="{ fontSize: 24 * beilv + 'px',lineHeight: 40 * beilv + 'px', marginTop: 20 * beilv + 'px' }">{{ i }}</div> :style="{ fontSize: 22 * beilv + 'px', width: 40 * beilv + 'px' }"
</el-col> class="box-name title"
<el-col :span="23"> :class="titleClick === i.title ? 'title-click' : ''"
@click="titleClick = i.title"
>
{{ i.title }}
</div>
<div class="bg" :style="{ height: 145 * beilv + 'px', width: 685 * beilv + 'px' }">
<div
:style="{ fontSize: 22 * beilv + 'px', height: 116 * beilv + 'px', width: 26 * beilv + 'px' }"
class="box-name subtitle"
>
{{ i.subtitle }}
</div>
<div class="locationFlex"> <div class="locationFlex">
<div <div v-for="j in 4" :key="j + 'div1'" class="finished">
v-for="l in 72" <div
:key="l" v-for="(l, index) in 19"
:class="l > Math.round(Math.random() * 100) ? 'waring' : ''" :key="l + 'box1'"
:style="{ :class="l > Math.round(Math.random() * 80) ? 'waring' : ''"
marginRight: 6 * beilv + 'px', :style="{
marginTop: 2 * beilv + 'px', marginRight: 2 * beilv + 'px',
marginBottom: 1 * beilv + 'px', marginTop: 2 * beilv + 'px',
height: 28 * beilv + 'px', marginBottom: 1 * beilv + 'px',
lineHeight: 28 * beilv + 'px', height: 26 * beilv + 'px',
fontSize: 12 * beilv + 'px' lineHeight: 28 * beilv + 'px',
}" fontSize: 12 * beilv + 'px'
class="location" }"
> class="location"
{{ l }} >
{{ j + 4 * index }}
</div>
</div> </div>
</div> </div>
</el-col> </div>
</el-row> </div>
</div>
<!-- 辅材库 -->
<div
v-for="i in areaArr1"
:key="i + 'div2'"
:style="{ width: 730 * beilv + 'px', padding: 9 * beilv + 'px' + ' 0' }"
class="box2"
>
<div :style="{ fontSize: 22 * beilv + 'px', width: 40 * beilv + 'px', color: '#fff' }" class="box-name title">
{{ i }}
</div>
<div v-if="i === '辅材库'" class="locationFlex" style="margin-left:0">
<div v-for="j in 4" :key="j + 'div3'" class="Auxiliary">
<div
v-for="(l, index) in 19"
:key="l + 'box5'"
:class="[num.indexOf(j + 4 * index) > 0 ? 'waring' : '', l === 10 ? 'interlayer' : '']"
:style="{
marginRight: 2 * beilv + 'px',
marginTop: 2 * beilv + 'px',
height: 26 * beilv + 'px',
lineHeight: 28 * beilv + 'px',
fontSize: 12 * beilv + 'px'
}"
class="location"
>
{{ j + 4 * index }}
</div>
</div>
</div>
<div v-else class="locationFlex" style="margin-left:0">
<div v-for="j in [3, 2, 1]" :key="j + 'div4'">
<div
v-for="l in 20"
:key="l + 'box9'"
:class="num.indexOf(l + 4 * j) > 0 ? 'waring' : ''"
:style="{
marginRight: 2 * beilv + 'px',
marginTop: 2 * beilv + 'px',
marginBottom: 1 * beilv + 'px',
height: 38 * beilv + 'px',
width: '4.5%',
lineHeight: 19 * beilv + 'px',
fontSize: 12 * beilv + 'px'
}"
class="location"
>
<div style="border-bottom:1px dotted rgba(255,255,255,0.5);">
{{ j }}
</div>
<div>{{ l }}</div>
</div>
</div>
</div>
</div> </div>
</div> </div>
</template> </template>
@@ -55,7 +122,36 @@ export default {
}, },
data() { data() {
return { return {
areaArr: ['A区', 'B区', 'C区', 'D区', 'E区', 'F区'] areaArr: [
{
title: '成品库 A',
subtitle: 'A 区'
},
{
title: '成品库 B',
subtitle: 'B 区'
},
{
title: '成品库 C',
subtitle: 'C 区'
},
{
title: '成品库 D',
subtitle: 'D 区'
}
],
titleClick: '成品库 A',
locationArr: [1, 5, 9],
areaArr1: ['辅材库', '备件库'],
num: []
}
},
created() {
for (let i = 0; i <= 30; i++) {
this.num.push(Math.round(Math.random() * 90))
if (i === 30) {
console.log(this.num)
}
} }
}, },
methods: {} methods: {}
@@ -63,30 +159,97 @@ export default {
</script> </script>
<style scoped> <style scoped>
.area { .container {
background-image: linear-gradient(to right, rgba(59, 76, 118, 0.6), transparent); display: flex;
background-size: 100% 100%; flex-flow: row wrap;
padding: 5px 0; align-content: space-between;
padding-left: 15px; margin: calc(16px * var(--beilv));
text-align: center; gap: calc(16px * var(--beilv));
border-radius: 4px; position: absolute;
border: 1px dotted #5ec3d8; height: 95%;
top: 0;
left: 0;
overflow:hidden;
} }
.areaName { .box {
border: 1px dotted rgba(94, 195, 216, 0.6);
display: flex;
align-items: center;
justify-content: left;
}
.box::after {
width: 95%;
height: 10px;
display: block;
margin: 0 auto;
border-bottom: 1px solid red;
}
.box:first-child {
border-radius: 4px 4px 0 0;
}
.box:last-child {
border-radius: 0 0 4px 4px;
}
.bg {
background-image: linear-gradient(to right, rgba(48, 112, 125, 0.6), transparent);
background-size: 100% 100%;
display: flex;
align-items: center;
justify-content: left;
}
.box-name {
text-align: center;
display: flex;
align-items: center;
justify-content: center;
}
.title {
font-weight: 600; font-weight: 600;
height: 100%;
cursor: pointer;
color: #afb8c5;
background-color: transparent;
}
.title-click {
color: #fff;
background-color: rgba(48, 112, 125, 0.6);
}
.subtitle {
font-weight: 400;
margin-left: 8px;
border-radius: 4px;
border: 1px dotted rgba(94, 195, 216, 0.6);
} }
.locationFlex { .locationFlex {
margin-left: 25px; width: 100%;
display: flex; margin-left: 10px;
flex-wrap: wrap; text-align: center;
align-content: space-between;
} }
.location { .location {
display: inline-block;
background: #63cf74; background: #63cf74;
width: 4.5%; width: 4.7%;
border-radius: 4px; border-radius: 4px;
} }
.waring { .waring {
background: #ff5d6b; background: #ff5d6b;
} }
.box2 {
background-image: linear-gradient(to right, rgba(48, 112, 125, 0.6), transparent);
background-size: 100% 100%;
border: 1px dotted rgba(94, 195, 216, 0.6);
border-radius: 4px;
display: flex;
align-items: center;
justify-content: left;
}
.finished:nth-child(2) {
margin-bottom: 8px;
}
.Auxiliary:nth-child(2) {
margin-bottom: 8px;
}
.interlayer {
margin-left: 8px;
}
</style> </style>

View File

@@ -2,7 +2,7 @@
* @Author: zwq * @Author: zwq
* @Date: 2021-07-19 15:18:30 * @Date: 2021-07-19 15:18:30
* @LastEditors: zwq * @LastEditors: zwq
* @LastEditTime: 2022-11-08 15:50:35 * @LastEditTime: 2022-12-01 10:31:37
* @Description: * @Description:
--> -->
<template> <template>
@@ -20,7 +20,7 @@
<el-button <el-button
type="text" type="text"
class="title-button" class="title-button"
:style="{ right: 9 * beilv + 'px', top: 37 * beilv + 'px',fontSize: 35 * beilv + 'px' }" :style="{ right: 9 * beilv + 'px', top: 37 * beilv + 'px', fontSize: 35 * beilv + 'px' }"
@click="changeFullScreen" @click="changeFullScreen"
> >
<svg-icon v-if="isFullScreen" icon-class="unFullScreenView" /> <svg-icon v-if="isFullScreen" icon-class="unFullScreenView" />
@@ -29,75 +29,150 @@
</el-row> </el-row>
<el-row class="container-main"> <el-row class="container-main">
<el-row :style="{ padding: '0 ' + 9 * beilv + 'px' }" :gutter="9 * beilv"> <el-row :style="{ padding: '0 ' + 9 * beilv + 'px' }" :gutter="16 * beilv">
<el-col :span="8"> <el-col :span="8">
<el-row type="flex" class="h-full flex-col"> <el-row type="flex" class="h-full flex-col">
<el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24"> <div class="div-box-left">
<base-container :beilv="beilv" :height="190" :title="'成品入库作业'" :title-icon="'入库管理'"> <el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24">
<div :style="{ fontSize: 13 * beilv + 'px' }"> <base-container :beilv="beilv" :height="190" :title="'成品入库作业'" :title-icon="'入库管理'">
<el-row :style="{ marginBottom: 15 * beilv + 'px'}"> <div :style="{ fontSize: 13 * beilv + 'px' }">
<el-col :span="12"><div class="inTest" :style="{ padding: 9 * beilv + 'px'}"><span class="leftText">时间:</span><span class="rightText">2022.12.12 13:12:45</span></div></el-col> <el-row :style="{ marginBottom: 15 * beilv + 'px' }">
<el-col :span="12"><div class="inTest" :style="{ padding: 9 * beilv + 'px'}"><span class="leftText">成品编码:</span><span class="rightText">34394233442</span></div></el-col> <el-col :span="12">
</el-row> <div class="inTest" :style="{ padding: 9 * beilv + 'px' }">
<el-row :style="{ marginBottom: 15 * beilv + 'px'}"> <span class="leftText">时间:</span>
<el-col :span="12"><div class="inTest" :style="{ padding: 9 * beilv + 'px'}"><span class="leftText">入库作业号:</span><span class="rightText">347384734</span></div></el-col> <span class="rightText">2022.12.12 13:12:45</span>
<el-col :span="12"><div class="inTest" :style="{ padding: 9 * beilv + 'px'}"><span class="leftText">成品规格:</span><span class="rightText">234*345*34</span></div></el-col> </div>
</el-row> </el-col>
<el-row> <el-col :span="12">
<el-col :span="12"><div class="inTest" :style="{ padding: 9 * beilv + 'px'}"><span class="leftText">执行叉车:</span><span class="rightText">叉车</span></div></el-col> <div class="inTest" :style="{ padding: 9 * beilv + 'px' }">
<el-col :span="12"><div class="inTest" :style="{ padding: 9 * beilv + 'px'}"><span class="leftText">库位:</span><span class="rightText">A区34货位3层</span></div></el-col> <span class="leftText">成品编码:</span>
</el-row> <span class="rightText">CP5651696250</span>
</div> </div>
</base-container> </el-col>
</el-col> </el-row>
<el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24"> <el-row :style="{ marginBottom: 15 * beilv + 'px' }">
<!-- 成品入库列队 --> <el-col :span="12">
<base-container :beilv="beilv" :height="190" :title="'成品入库列队'" :title-icon="'编组'"> <div class="inTest" :style="{ padding: 9 * beilv + 'px' }">
<div style="background:rgba(14, 32, 62, 1);border-radius:5px"> <span class="leftText">入库作业号:</span>
<base-table <span class="rightText">RQ5055348160</span>
:limit="10" </div>
:beilv="beilv" </el-col>
:table-config="inAndOutOfEachLine.tableProps" <el-col :span="12">
:table-data="inAndOutOfEachLine.list" <div class="inTest" :style="{ padding: 9 * beilv + 'px' }">
/> <span class="leftText">成品规格:</span>
</div> <span class="rightText">3.2-1033*2089</span>
</base-container> </div>
</el-col> </el-col>
<el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24"> </el-row>
<base-container :beilv="beilv" :height="190" :title="'成品出库作业'" :title-icon="'出库管理'"> <el-row>
<div :style="{ fontSize: 13 * beilv + 'px' }"> <el-col :span="12">
<el-row :style="{ marginBottom: 10 * beilv + 'px'}"> <div class="inTest" :style="{ padding: 9 * beilv + 'px' }">
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">时间:</span><span class="rightText">2022.12.12 13:12:45</span></div></el-col> <span class="leftText">执行叉车:</span>
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">ERP订单:</span><span class="rightText">34394233442</span></div></el-col> <span class="rightText">2-03</span>
</el-row> </div>
<el-row :style="{ marginBottom: 10 * beilv + 'px'}"> </el-col>
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">成品编码:</span><span class="rightText">34394233442</span></div></el-col> <el-col :span="12">
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">出库作业号:</span><span class="rightText">347384734</span></div></el-col> <div class="inTest" :style="{ padding: 9 * beilv + 'px' }">
</el-row> <span class="leftText">库位:</span>
<el-row :style="{ marginBottom: 10 * beilv + 'px'}"> <span class="rightText">成品库D-D区-14</span>
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">成品规格:</span><span class="rightText">234*345*34</span></div></el-col> </div>
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">执行叉车:</span><span class="rightText">叉车</span></div></el-col> </el-col>
</el-row> </el-row>
<el-row> </div>
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">库位:</span><span class="rightText">A区34货位3层</span></div></el-col> </base-container>
<el-col :span="12"><div class="outTest" :style="{ padding: 7 * beilv + 'px'}"><span class="leftText">库位前置区:</span><span class="rightText">A区34货位3层</span></div></el-col> </el-col>
</el-row> <el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24">
</div> <!-- 成品入库列队 -->
</base-container> <base-container :beilv="beilv" :height="190" :title="'成品入库列队'" :title-icon="'编组'">
</el-col> <div style="background:rgba(14, 32, 62, 1);border-radius:5px;opacity: 0.8;">
<el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24"> <base-table
<!-- 成品入库列队 --> :limit="10"
<base-container :beilv="beilv" :height="190" :title="'成品出库列队'" :title-icon="'编组备份 2'"> :beilv="beilv"
<div style="background:rgba(14, 32, 62, 1);border-radius:5px"> :show-index="false"
<base-table :table-config="inAndOutOfEachLine.tableProps"
:limit="10" :table-data="inAndOutOfEachLine.list"
:beilv="beilv" />
:table-config="inAndOutOfEachLine.tableProps" </div>
:table-data="inAndOutOfEachLine.list" </base-container>
/> </el-col>
</div> <el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24">
</base-container> <base-container :beilv="beilv" :height="190" :title="'成品出库作业'" :title-icon="'出库管理'">
</el-col> <div :style="{ fontSize: 13 * beilv + 'px' }">
<el-row :style="{ marginBottom: 10 * beilv + 'px' }">
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">时间:</span>
<span class="rightText">2022.12.12 13:12:45</span>
</div>
</el-col>
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">ERP订单:</span>
<span class="rightText">TCP203</span>
</div>
</el-col>
</el-row>
<el-row :style="{ marginBottom: 10 * beilv + 'px' }">
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">成品编码:</span>
<span class="rightText">CP3212128221</span>
</div>
</el-col>
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">出库作业号:</span>
<span class="rightText">CQ3727367699</span>
</div>
</el-col>
</el-row>
<el-row :style="{ marginBottom: 10 * beilv + 'px' }">
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">成品规格:</span>
<span class="rightText">3.2-1128*1716</span>
</div>
</el-col>
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">执行叉车:</span>
<span class="rightText">1-01</span>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">库位:</span>
<span class="rightText">成品库C-C区-1</span>
</div>
</el-col>
<el-col :span="12">
<div class="outTest" :style="{ padding: 7 * beilv + 'px' }">
<span class="leftText">库位前置区:</span>
<span class="rightText">A区34货位3层</span>
</div>
</el-col>
</el-row>
</div>
</base-container>
</el-col>
<el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24">
<!-- 成品出库列队 -->
<base-container :beilv="beilv" :height="190" :title="'成品出库列队'" :title-icon="'编组备份 2'">
<div style="background:rgba(14, 32, 62, 1);border-radius:5px;opacity: 0.8;">
<base-table
:limit="10"
:beilv="beilv"
:show-index="false"
:table-config="OutOfEachLine.tableProps"
:table-data="OutOfEachLine.list"
/>
</div>
</base-container>
</el-col>
</div>
</el-row> </el-row>
</el-col> </el-col>
@@ -105,7 +180,7 @@
<!-- 中间栏 --> <!-- 中间栏 -->
<el-row type="flex" class="h-full flex-col"> <el-row type="flex" class="h-full flex-col">
<el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24"> <el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24">
<base-container :beilv="beilv"> <base-container :beilv="beilv" :height="958">
<storage-cockpit-area :beilv="beilv" /> <storage-cockpit-area :beilv="beilv" />
</base-container> </base-container>
</el-col> </el-col>
@@ -116,50 +191,77 @@
<!-- 右边栏 设备工单管理 --> <!-- 右边栏 设备工单管理 -->
<el-row type="flex" class="h-full flex-col"> <el-row type="flex" class="h-full flex-col">
<el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24"> <el-col :style="{ margin: 8 * beilv + 'px' + ' 0' }" :span="24">
<base-container :beilv="beilv" :title="'设备工单管理'" :title-icon="'编组(1)'"> <base-container :beilv="beilv" :title="'库存总览'" :title-icon="'编组(1)'">
<div class="div-box" :style="{textAlign: 'center', padding: 8 * beilv + 'px', paddingTop: 15 * beilv + 'px',marginBottom: 12 * beilv + 'px'}"> <div class="div-box-main">
<span v-html="titleLeftSVG" /> <div
<span style="color: #01CFCC; line-height: 18px;" :style="{ fontSize: 15 * beilv + 'px' }"> class="div-box"
成品库存一览1 :style="{
</span> textAlign: 'center',
<div style="transform: rotateY(180deg); display: inline-block;" v-html="titleLeftSVG" /> padding: 8 * beilv + 'px',
<new-pie paddingTop: 15 * beilv + 'px',
:id="'pie-chart1'" }"
:show-center-title="true" >
:legend-config="{ left: '2%', top: '30%', itemGap: 10 }" <span v-html="titleLeftSVG" />
:series-data="legendData1" <span style="color: #01CFCC; line-height: 18px;" :style="{ fontSize: 15 * beilv + 'px' }">
:beilv="beilv" 成品库存一览
:height="226" </span>
/> <div style="transform: rotateY(180deg); display: inline-block;" v-html="titleLeftSVG" />
</div> <new-pie
<div class="div-box" :style="{textAlign: 'center', position: 'relative', padding: 8 * beilv + 'px', paddingTop: 15 * beilv + 'px', marginBottom: 12 * beilv + 'px'}"> :id="'pie-chart1'"
<span v-html="titleLeftSVG" /> :show-center-title="true"
<span style="color: #01CFCC; line-height: 18px;" :style="{ fontSize: 15 * beilv + 'px' }"> :legend-config="{ left: '0%', top: '30%', itemGap: 5 }"
成品库存一览2 :series-data="legendData1"
</span> :beilv="beilv"
<div style="transform: rotateY(180deg); display: inline-block;" v-html="titleLeftSVG" /> :height="226"
<new-bar />
</div>
<div
class="div-box"
:style="{
textAlign: 'center',
padding: 8 * beilv + 'px',
paddingTop: 15 * beilv + 'px',
}"
>
<span v-html="titleLeftSVG" />
<span style="color: #01CFCC; line-height: 18px;" :style="{ fontSize: 15 * beilv + 'px' }">
辅材库存一览
</span>
<div style="transform: rotateY(180deg); display: inline-block;" v-html="titleLeftSVG" />
<new-pie
:id="'pie-chart2'"
:show-center-title="true"
:legend-config="{ left: '0%', top: '30%', itemGap: 5 }"
:series-data="legendData2"
:beilv="beilv"
:height="226"
/>
<!-- <new-bar
:name-list="clNameList" :name-list="clNameList"
:data-list="clDataList" :data-list="clDataList"
:height="226" :height="226"
:beilv="beilv" :beilv="beilv"
/> />
<div class="barDiv" :style="{width: 355* beilv + 'px'}" /> <div class="barDiv" :style="{width: 355* beilv + 'px'}" /> -->
</div> </div>
<div class="div-box" :style="{textAlign: 'center', padding: 8 * beilv + 'px', paddingTop: 15 * beilv + 'px'}"> <div
<span v-html="titleLeftSVG" /> class="div-box"
<span style="color: #01CFCC; line-height: 18px;" :style="{ fontSize: 15 * beilv + 'px' }"> :style="{ textAlign: 'center', padding: 8 * beilv + 'px', paddingTop: 15 * beilv + 'px' }"
成品库存一览3 >
</span> <span v-html="titleLeftSVG" />
<div style="transform: rotateY(180deg); display: inline-block;" v-html="titleLeftSVG" /> <span style="color: #01CFCC; line-height: 18px;" :style="{ fontSize: 15 * beilv + 'px' }">
<new-pie 备件库存一览
:id="'pie-chart3'" </span>
:show-center-title="true" <div style="transform: rotateY(180deg); display: inline-block;" v-html="titleLeftSVG" />
:legend-config="{ left: '2%', top: '30%', itemGap: 10 }" <new-pie
:series-data="legendData3" :id="'pie-chart3'"
:beilv="beilv" :show-center-title="true"
:height="226" :legend-config="{ left: '0%', top: '30%', itemGap: 5 }"
/> :series-data="legendData3"
:beilv="beilv"
:height="226"
/>
</div>
</div> </div>
</base-container> </base-container>
</el-col> </el-col>
@@ -174,7 +276,7 @@
import baseContainer from './components/baseContainer' import baseContainer from './components/baseContainer'
import baseTable from './components/baseTable' import baseTable from './components/baseTable'
import newPie from './components/newPie' import newPie from './components/newPie'
import newBar from './components/newBar' // import newBar from './components/newBar'
import storageCockpitArea from './components/storageCockpitArea' import storageCockpitArea from './components/storageCockpitArea'
// import LineChart1 from './components/LineChart' // import LineChart1 from './components/LineChart'
// import LineChart2 from './components/LineChart' // import LineChart2 from './components/LineChart'
@@ -185,58 +287,80 @@ import screenfull from 'screenfull'
import axios from '@/utils/request' import axios from '@/utils/request'
import moment from 'moment' import moment from 'moment'
const legendData3 = [ const legendData1 = [
{ {
name: 'A', name: '2.0-1128*1716',
icon: 'circle', icon: 'circle',
value: 196 value: 128
}, },
{ {
name: 'B', name: '2.0-1128*2251',
icon: 'circle', icon: 'circle',
value: 111 value: 225
}, },
{ {
name: 'C', name: '2.0-1128*2272',
icon: 'circle', icon: 'circle',
value: 89 value: 24
}, },
{ {
name: 'D', name: '3.2-1128*1716',
icon: 'circle', icon: 'circle',
value: 77 value: 77
}, },
{ {
name: 'E', name: '3.2-1128*1716',
icon: 'circle',
value: 93
}
]
const legendData2 = [
{
name: '丝印类',
icon: 'circle',
value: 128
},
{
name: '磨边类',
icon: 'circle',
value: 104
},
{
name: '镀膜类',
icon: 'circle',
value: 80
},
{
name: '包装类',
icon: 'circle', icon: 'circle',
value: 77 value: 77
} }
] ]
const legendData1 = [ const legendData3 = [
{ {
name: 'A', name: '磨边机备件',
icon: 'circle', icon: 'circle',
value: 134 value: 128
}, },
{ {
name: 'B', name: '打孔机备件',
icon: 'circle', icon: 'circle',
value: 125 value: 96
}, },
{ {
name: 'C', name: '丝印机备件',
icon: 'circle', icon: 'circle',
value: 107 value: 201
}, },
{ {
name: 'D', name: '固化机备件',
icon: 'circle', icon: 'circle',
value: 61 value: 77
}, },
{ {
name: 'E', name: '钢化机备件',
icon: 'circle', icon: 'circle',
value: 153 value: 66
} }
] ]
const clDataList = [ const clDataList = [
@@ -303,8 +427,8 @@ export default {
baseContainer, baseContainer,
baseTable, baseTable,
storageCockpitArea, storageCockpitArea,
newPie, newPie
newBar // newBar
// LineChart1, // LineChart1,
// LineChart2, // LineChart2,
// LinearBarChart // LinearBarChart
@@ -313,6 +437,7 @@ export default {
data() { data() {
return { return {
legendData1, legendData1,
legendData2,
legendData3, legendData3,
clNameList, clNameList,
clDataList, clDataList,
@@ -327,25 +452,58 @@ export default {
total: 0, total: 0,
list: [ list: [
{ {
test1: '392849829', test1: 'RQ5055348178',
test2: '叉车1', test2: '1-01',
test3: '392849829', test3: 'CP5651696263',
test4: '322*234*12', test4: '3.2-1033*2089',
test5: '库位1' test5: '成品库D-D区-15'
}, },
{ {
test1: '392849829', test1: 'RQ3722771932',
test2: '叉车2', test2: '1-02',
test3: '392849829', test3: 'CP4140258231',
test4: '322*234*12', test4: '2.0-1128*2272',
test5: '库位2' test5: '成品库B-A区-13'
}, },
{ {
test1: '392849829', test1: 'RQ1342208728',
test2: '叉车3', test2: '2-03',
test3: '392849829', test3: 'CP5284407553',
test4: '322*234*12', test4: '2.0-1128*1716',
test5: '库位3' test5: '成品库A-B区-9'
}
]
},
OutOfEachLine: {
tableProps: [
{ prop: 'test1', label: '作业号', align: 'center' },
{ prop: 'test2', label: 'ERP订单', align: 'center' },
{ prop: 'test3', label: '成品编码', align: 'center' },
{ prop: 'test4', label: '成品规格', align: 'center' },
{ prop: 'test5', label: '库位', align: 'center' }
],
total: 0,
list: [
{
test1: 'CQ3727367714',
test2: 'TCP231',
test3: 'CP3212128336',
test4: '3.2-1128*1716',
test5: '成品库C-C区-4'
},
{
test1: 'CQ7080508785',
test2: 'TCP186',
test3: 'CP2760242729',
test4: '3.2-1128*1718',
test5: '成品库D-D区-1'
},
{
test1: 'CQ8843212447',
test2: 'TCP67',
test3: 'CP1569191519',
test4: '3.2-1032*1747',
test5: '成品库C-B区-12'
} }
] ]
}, },
@@ -613,14 +771,14 @@ export default {
background: url('../../assets/img/OperationalOverview/title (2).png') no-repeat; background: url('../../assets/img/OperationalOverview/title (2).png') no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
color: #fff; color: #fff;
text-align: center; padding-left: 41%;
.title-button { .title-button {
color: #00fff0; color: #00fff0;
position: absolute; position: absolute;
} }
} }
.container-main { .container-main {
padding: 16px; padding: 16px 8px;
} }
} }
.inTest { .inTest {
@@ -631,18 +789,44 @@ export default {
background: url('../../assets/img/OperationalOverview/矩形@2x(1).png') no-repeat; background: url('../../assets/img/OperationalOverview/矩形@2x(1).png') no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
} }
.leftText{ .leftText {
display: inline-block; display: inline-block;
width: 40%; width: 40%;
text-align: right; text-align: right;
} }
.rightText{ .rightText {
color:rgba(255, 255, 255, 0.6) color: rgba(255, 255, 255, 0.6);
}
.div-box-left{
display: flex;
flex-flow: row wrap;
align-content: space-between;
position: absolute;
height: 100%;
top: 0;
right: 0;
bottom: 0;
left: 0;
overflow:hidden;
}
.div-box-main {
display: flex;
flex-flow: row wrap;
align-content: space-between;
margin: calc(16px * var(--beilv));
gap: calc(16px * var(--beilv));
padding-top: 4em;
position: absolute;
height: 95%;
top: 0;
right: 0;
bottom: 0;
left: 0;
overflow:hidden;
} }
.div-box { .div-box {
background: transparent; background: transparent;
box-shadow: inset 0 0 16px 1px rgba(255, 255, 255, 0.5); box-shadow: inset 0 0 16px 1px rgba(255, 255, 255, 0.2);
display: inline-block;
width: 100%; width: 100%;
border-radius: 4px; border-radius: 4px;
} }
@@ -651,7 +835,7 @@ export default {
opacity: 0.5; opacity: 0.5;
position: absolute; position: absolute;
bottom: 40px; bottom: 40px;
left:55px; left: 55px;
transform: skewX(-30deg); transform: skewX(-30deg);
background: linear-gradient(180deg, rgba(59, 76, 118, 0) 0%, #49fbd6 100%); background: linear-gradient(180deg, rgba(59, 76, 118, 0) 0%, #49fbd6 100%);
} }
@@ -726,7 +910,7 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.h-full { .h-full {
height: calc(100vh - 150px); height: calc(100vh - 110px * var(--beilv));
} }
.flex-col { .flex-col {

View File

@@ -43,7 +43,7 @@ import BaseTable from '@/components/BaseTable'
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn' import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
import i18n from '@/lang' import i18n from '@/lang'
import { getHWList } from '@/utils/wmsDic' import { getStoreList, getKQList } from '@/utils/wmsDic'
import moment from 'moment' import moment from 'moment'
/** /**
* 表格表头配置项 TypeScript接口注释 * 表格表头配置项 TypeScript接口注释
@@ -201,8 +201,9 @@ export default {
const obj = {} const obj = {}
const sj = Math.floor(Math.random() * 720 + 10) const sj = Math.floor(Math.random() * 720 + 10)
obj.createTime = moment().subtract(sj, 'days').subtract(sj, 'hour').subtract(sj, 'minutes').subtract(sj, 'seconds').format('YYYY-MM-DD hh:mm:ss') obj.createTime = moment().subtract(sj, 'days').subtract(sj, 'hour').subtract(sj, 'minutes').subtract(sj, 'seconds').format('YYYY-MM-DD hh:mm:ss')
obj.name2 = getHWList() obj.store = getStoreList()
obj.name1 = obj.name2[2] + '区' obj.name1 = (obj.store === '辅材库' || obj.store === '备件库') ? '' : getKQList() + '区'
obj.name2 = obj.store + (obj.name1 ? '-' + obj.name1 : '') + '-' + (obj.store === '备件库' ? (parseInt(Math.random() * 19 + 1) + '-' + parseInt(Math.random() * 2 + 1)) : parseInt(Math.random() * 16))
obj.name3 = obj.name2 obj.name3 = obj.name2
obj.name4 = parseInt(Math.random() * 2) ? '有货' : '无货' obj.name4 = parseInt(Math.random() * 2) ? '有货' : '无货'
obj.name5 = parseInt(Math.random() * 2) ? 'Y' : 'N' obj.name5 = parseInt(Math.random() * 2) ? 'Y' : 'N'

View File

@@ -179,7 +179,7 @@ export default {
const sj = Math.floor(Math.random() * 720 + 10) const sj = Math.floor(Math.random() * 720 + 10)
obj.createTime = moment().subtract(sj, 'days').subtract(sj, 'hour').subtract(sj, 'minutes').subtract(sj, 'seconds').format('YYYY-MM-DD hh:mm:ss') obj.createTime = moment().subtract(sj, 'days').subtract(sj, 'hour').subtract(sj, 'minutes').subtract(sj, 'seconds').format('YYYY-MM-DD hh:mm:ss')
obj.name1 = getStoreList() obj.name1 = getStoreList()
obj.name2 = getKQList() + '区' obj.name2 = (obj.name1 === '辅材库' || obj.name1 === '备件库') ? '' : getKQList() + '区'
obj.name3 = '成品仓' obj.name3 = '成品仓'
obj.name4 = 'TCP' + sj obj.name4 = 'TCP' + sj
temp.push(obj) temp.push(obj)

View File

@@ -50,7 +50,7 @@ const tableProps = [
}, },
{ {
prop: 'internalControlCode', prop: 'internalControlCode',
label: '成品内控码' label: '成品内控码/商品条码'
}, },
{ {
prop: 'customerCode', prop: 'customerCode',
@@ -67,10 +67,6 @@ const tableProps = [
{ {
prop: 'batch', prop: 'batch',
label: '批次' label: '批次'
},
{
prop: 'packCode',
label: '包装机号'
} }
] ]
const tableBtn = [ const tableBtn = [
@@ -92,7 +88,7 @@ export default {
{ {
type: 'input', type: 'input',
label: '关键字', label: '关键字',
placeholder: '托盘号或成品内控码', placeholder: '托盘号或成品内控码/商品条码',
param: 'name', param: 'name',
width: 300 width: 300
}, },
@@ -133,8 +129,8 @@ export default {
obj.trayID = getTrayList() obj.trayID = getTrayList()
obj.internalControlCode = getProductList() obj.internalControlCode = getProductList()
obj.customerCode = getCustomerCodeList() obj.customerCode = getCustomerCodeList()
obj.num = parseInt(Math.random() * 1000)
obj.productDpec = getProductSpecList() obj.productDpec = getProductSpecList()
obj.num = obj.productDpec.substring(0, 1) === '3' ? parseInt(Math.random() * 100 + 100) : parseInt(Math.random() * 100 + 200)
obj.batch = getBatchList() obj.batch = getBatchList()
obj.packCode = getPackList() obj.packCode = getPackList()
temp.push(obj) temp.push(obj)

View File

@@ -5,11 +5,11 @@
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
width="50%" width="50%"
> >
<el-form ref="formList" label-position="right" label-width="80px" :model="formList"> <el-form ref="formList" label-position="right" label-width="140px" :model="formList">
<el-form-item label="托盘号" prop="trayID"> <el-form-item label="托盘号" prop="trayID">
<el-input v-model="formList.trayID" /> <el-input v-model="formList.trayID" />
</el-form-item> </el-form-item>
<el-form-item label="成品内控码" prop="internalControlCode"> <el-form-item label="成品内控码/商品条码" prop="internalControlCode">
<el-input v-model="formList.internalControlCode" /> <el-input v-model="formList.internalControlCode" />
</el-form-item> </el-form-item>
<el-form-item label="客户标签号" prop="customerCode"> <el-form-item label="客户标签号" prop="customerCode">
@@ -24,9 +24,6 @@
<el-form-item label="批次" prop="batch"> <el-form-item label="批次" prop="batch">
<el-input v-model="formList.batch" /> <el-input v-model="formList.batch" />
</el-form-item> </el-form-item>
<el-form-item label="包装机号" prop="packCode">
<el-input v-model="formList.packCode" />
</el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="resetForm('formList')"> </el-button> <el-button @click="resetForm('formList')"> </el-button>
@@ -53,8 +50,7 @@ export default {
customerCode: '', customerCode: '',
productDpec: '', productDpec: '',
num: '', num: '',
batch: '', batch: ''
packCode: ''
} }
} }
}, },
@@ -70,7 +66,6 @@ export default {
this.formList.productDpec = val.productDpec this.formList.productDpec = val.productDpec
this.formList.num = val.num this.formList.num = val.num
this.formList.batch = val.batch this.formList.batch = val.batch
this.formList.packCode = val.packCode
}) })
} }
this.dialogVisible = true this.dialogVisible = true

View File

@@ -5,14 +5,14 @@
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
width="50%" width="50%"
> >
<el-form ref="formList" label-position="right" label-width="80px" :model="formList"> <el-form ref="formList" label-position="right" label-width="140px" :model="formList">
<el-form-item label="入库单号" prop="receiptNo"> <el-form-item label="入库单号" prop="receiptNo">
<el-input v-model="formList.receiptNo" /> <el-input v-model="formList.receiptNo" />
</el-form-item> </el-form-item>
<el-form-item label="托盘号" prop="trayID"> <el-form-item label="托盘号" prop="trayID">
<el-input v-model="formList.trayID" /> <el-input v-model="formList.trayID" />
</el-form-item> </el-form-item>
<el-form-item label="成品内控码" prop="internalControlCode"> <el-form-item label="成品内控码/商品条码" prop="internalControlCode">
<el-input v-model="formList.internalControlCode" /> <el-input v-model="formList.internalControlCode" />
</el-form-item> </el-form-item>
<el-form-item label="客户标签号" prop="customerCode"> <el-form-item label="客户标签号" prop="customerCode">
@@ -27,9 +27,6 @@
<el-form-item label="批次" prop="batch"> <el-form-item label="批次" prop="batch">
<el-input v-model="formList.batch" /> <el-input v-model="formList.batch" />
</el-form-item> </el-form-item>
<el-form-item label="包装机号" prop="packCode">
<el-input v-model="formList.packCode" />
</el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="resetForm('formList')"> </el-button> <el-button @click="resetForm('formList')"> </el-button>
@@ -57,8 +54,7 @@ export default {
customerCode: '', customerCode: '',
productDpec: '', productDpec: '',
num: '', num: '',
batch: '', batch: ''
packCode: ''
} }
} }
}, },
@@ -75,7 +71,6 @@ export default {
this.formList.productDpec = val.productDpec this.formList.productDpec = val.productDpec
this.formList.num = val.num this.formList.num = val.num
this.formList.batch = val.batch this.formList.batch = val.batch
this.formList.packCode = val.packCode
}) })
} }
this.dialogVisible = true this.dialogVisible = true

View File

@@ -52,9 +52,13 @@ const tableProps = [
prop: 'trayID', prop: 'trayID',
label: '托盘号' label: '托盘号'
}, },
{
prop: 'type',
label: '类型'
},
{ {
prop: 'internalControlCode', prop: 'internalControlCode',
label: '成品内控码' label: '成品内控码/商品条码'
}, },
{ {
prop: 'customerCode', prop: 'customerCode',
@@ -71,10 +75,6 @@ const tableProps = [
{ {
prop: 'batch', prop: 'batch',
label: '批次' label: '批次'
},
{
prop: 'packCode',
label: '包装机号'
} }
] ]
const tableBtn = [ const tableBtn = [
@@ -96,7 +96,7 @@ export default {
{ {
type: 'input', type: 'input',
label: '关键字', label: '关键字',
placeholder: '入库单号,托盘号或成品内控码', placeholder: '入库单号,托盘号或成品内控码/商品条码',
param: 'name', param: 'name',
width: 300 width: 300
}, },
@@ -132,13 +132,17 @@ export default {
getList() { getList() {
const temp = [] const temp = []
const num = 20 const num = 20
const typeList = ['成品', '辅料', '备件']
for (let i = 0; i < num; i++) { for (let i = 0; i < num; i++) {
const obj = {} const obj = {}
const sj = parseInt(Math.random() * 3 + 1)
console.log(sj)
obj.receiptNo = getReceiptNoList() obj.receiptNo = getReceiptNoList()
obj.trayID = getTrayList() obj.trayID = getTrayList()
obj.internalControlCode = getProductList() obj.type = typeList[sj - 1]
obj.internalControlCode = sj === 1 ? getProductList() : ''
obj.customerCode = getCustomerCodeList() obj.customerCode = getCustomerCodeList()
obj.num = parseInt(Math.random() * 1000) obj.num = parseInt(Math.random() * 180 + 100)
obj.productDpec = getProductSpecList() obj.productDpec = getProductSpecList()
obj.batch = getBatchList() obj.batch = getBatchList()
obj.packCode = getPackList() obj.packCode = getPackList()

View File

@@ -134,7 +134,7 @@ export default {
obj.outboundOrderNo = getOutboundNoList() obj.outboundOrderNo = getOutboundNoList()
obj.customerName = getCompTyleList() obj.customerName = getCompTyleList()
obj.shipmentCacheArea = getHCQList() obj.shipmentCacheArea = getHCQList()
obj.num = parseInt(Math.random() * 1000) obj.num = parseInt(Math.random() * 40 + 20) + '(箱)'
obj.spec = getProductSpecList() obj.spec = getProductSpecList()
const sj = Math.floor(Math.random() * 100) const sj = Math.floor(Math.random() * 100)
obj.deliveryTime = moment().add(sj, 'days').add(sj, 'hour').add(sj, 'minutes').add(sj, 'seconds').format('YYYY-MM-DD hh:mm:ss') obj.deliveryTime = moment().add(sj, 'days').add(sj, 'hour').add(sj, 'minutes').add(sj, 'seconds').format('YYYY-MM-DD hh:mm:ss')

View File

@@ -34,7 +34,7 @@ import Pagination from '@/components/Pagination'
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn' import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
import { tableHeight } from '@/utils/index' import { tableHeight } from '@/utils/index'
import outStoreDocumentsAdd from './components/outStoreDocumentsAdd.vue' import outStoreDocumentsAdd from './components/outStoreDocumentsAdd.vue'
import { getOperationCode2List, getOutboundNoList, getHWList, getHCQList, getTimeArr, getDriverCodeList } from '@/utils/wmsDic' import { getOperationCode2List, getOutboundNoList, getStoreList, getTimeArr, getDriverCodeList } from '@/utils/wmsDic'
const tableProps = [ const tableProps = [
{ {
prop: 'operationCode', prop: 'operationCode',
@@ -110,7 +110,7 @@ export default {
current: 1, current: 1,
size: 20 size: 20
}, },
tableH: tableHeight(275), tableH: tableHeight(290),
tableProps, tableProps,
list: [], list: [],
listLoading: false, listLoading: false,
@@ -122,29 +122,45 @@ export default {
}, },
mounted() { mounted() {
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.tableH = tableHeight(275) this.tableH = tableHeight(290)
}) })
this.getList() this.getList()
}, },
methods: { methods: {
getList() { getList() {
const temp = [] const temp = []
const num = 20 const temp2 = []
const num = 17
for (let i = 0; i < num; i++) { for (let i = 0; i < num; i++) {
const obj = {} const obj = {}
const timeArrList = getTimeArr() const timeArrList = getTimeArr()
obj.operationCode = getOperationCode2List() obj.operationCode = 'CQ1510433590'
obj.outboundOrderNo = getOutboundNoList() obj.outboundOrderNo = getOutboundNoList()
obj.goodsArea = getHWList() obj.store = getStoreList()
obj.shipmentCacheArea = getHCQList() obj.goodsArea = '成品库C-C区-' + (i + 8)
obj.shipmentCacheArea = 'HCQC' + (2631 - i)
obj.startTime = timeArrList[0] obj.startTime = timeArrList[0]
obj.endTime = timeArrList[1] obj.endTime = timeArrList[1]
obj.driverCode = getDriverCodeList() obj.driverCode = getDriverCodeList()
temp.push(obj) temp.push(obj)
} }
this.list = temp const arr = ['备件库-13-2', '辅材库-14', '备件库-13-4']
for (let i = 0; i < 3; i++) {
const obj = {}
const timeArrList = getTimeArr()
obj.operationCode = getOperationCode2List()
obj.outboundOrderNo = getOutboundNoList()
obj.store = getStoreList()
obj.goodsArea = arr[i]
obj.shipmentCacheArea = 'HCQC' + (2897 - i)
obj.startTime = timeArrList[0]
obj.endTime = timeArrList[1]
obj.driverCode = getDriverCodeList()
temp2.push(obj)
}
this.list = temp.concat(temp2)
console.log(this.list) console.log(this.list)
this.total = num this.total = 20
}, },
btnClick(val) { btnClick(val) {
console.log(val) console.log(val)

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<head-form :form-config="headFormConfig" @headBtnClick="btnClick" /> <head-form :form-config="headFormConfig" @headBtnClick="btnClick" />
<div style="text-align:right"> <div style="text-align:left">
<span>合计 265395</span> <span>合计 265395</span>
</div> </div>
<base-table <base-table
@@ -26,7 +26,7 @@ import HeadForm from '@/components/basicData/HeadForm'
import BaseTable from '@/components/BaseTable' import BaseTable from '@/components/BaseTable'
import Pagination from '@/components/Pagination' import Pagination from '@/components/Pagination'
import { tableHeight } from '@/utils/index' import { tableHeight } from '@/utils/index'
import { getReceiptNoList, getProductSpecList, getMaterialCodeList, getGoodsList } from '@/utils/wmsDic' import { getReceiptNoList, getProductSpecList, getMaterialCodeList } from '@/utils/wmsDic'
import moment from 'moment' import moment from 'moment'
const tableProps = [ const tableProps = [
{ {
@@ -37,10 +37,6 @@ const tableProps = [
prop: 'type', prop: 'type',
label: '类型' label: '类型'
}, },
{
prop: 'productName',
label: '品名'
},
{ {
prop: 'spec', prop: 'spec',
label: '规格' label: '规格'
@@ -115,7 +111,6 @@ export default {
const obj = {} const obj = {}
obj.orderCode = getReceiptNoList() obj.orderCode = getReceiptNoList()
obj.type = '深加工玻璃' obj.type = '深加工玻璃'
obj.productName = getGoodsList()
const sj = Math.floor(Math.random() * 100) const sj = Math.floor(Math.random() * 100)
obj.spec = getProductSpecList() obj.spec = getProductSpecList()
obj.materialCode = getMaterialCodeList() obj.materialCode = getMaterialCodeList()

View File

@@ -9,7 +9,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<head-form :form-config="headFormConfig" @headBtnClick="btnClick" /> <head-form :form-config="headFormConfig" @headBtnClick="btnClick" />
<div style="text-align:right"> <div style="text-align:left">
<span>合计 265395</span> <span>合计 265395</span>
</div> </div>
<base-table <base-table
@@ -34,7 +34,7 @@ import HeadForm from '@/components/basicData/HeadForm'
import BaseTable from '@/components/BaseTable' import BaseTable from '@/components/BaseTable'
import Pagination from '@/components/Pagination' import Pagination from '@/components/Pagination'
import { tableHeight } from '@/utils/index' import { tableHeight } from '@/utils/index'
import { getOutboundNoList, getProductSpecList, getMaterialCodeList, getGoodsList } from '@/utils/wmsDic' import { getOutboundNoList, getProductSpecList, getMaterialCodeList } from '@/utils/wmsDic'
import moment from 'moment' import moment from 'moment'
const tableProps = [ const tableProps = [
{ {
@@ -45,10 +45,6 @@ const tableProps = [
prop: 'type', prop: 'type',
label: '类型' label: '类型'
}, },
{
prop: 'productName',
label: '品名'
},
{ {
prop: 'spec', prop: 'spec',
label: '规格' label: '规格'
@@ -123,7 +119,6 @@ export default {
const obj = {} const obj = {}
obj.orderCode = getOutboundNoList() obj.orderCode = getOutboundNoList()
obj.type = '深加工玻璃' obj.type = '深加工玻璃'
obj.productName = getGoodsList()
const sj = Math.floor(Math.random() * 5) const sj = Math.floor(Math.random() * 5)
obj.spec = getProductSpecList() obj.spec = getProductSpecList()
obj.materialCode = getMaterialCodeList() obj.materialCode = getMaterialCodeList()

View File

@@ -61,12 +61,10 @@ const tableProps = [{
align: 'center' align: 'center'
}, { }, {
prop: 'name', prop: 'name',
label: i18n.t('roleManage.roleName'), label: i18n.t('roleManage.roleName')
align: 'center'
}, { }, {
prop: 'enabled', prop: 'enabled',
label: i18n.t('roleManage.status'), label: i18n.t('roleManage.status')
align: 'center'
}, },
// { // {
// prop: 'category', // prop: 'category',
@@ -76,8 +74,7 @@ const tableProps = [{
// }, // },
{ {
prop: 'remark', prop: 'remark',
label: i18n.t('roleManage.remark'), label: i18n.t('roleManage.remark')
align: 'center'
}] }]
import AddForm from './AddForm' import AddForm from './AddForm'
import EditForm from './EditForm' import EditForm from './EditForm'