diff --git a/hw-ui/src/api/board/fifthFloorProduction.js b/hw-ui/src/api/board/fifthFloorProduction.js index 0bd505cc..125ecfde 100644 --- a/hw-ui/src/api/board/fifthFloorProduction.js +++ b/hw-ui/src/api/board/fifthFloorProduction.js @@ -3,7 +3,7 @@ import request from '@/utils/request2' // 工单生产进度 export function workOrderProgress(query) { return request({ - url: '/fifthMesBorder/workOrderProgress', + url: 'fifthMesBorder/workOrderProgress', method: 'get', params: query }) @@ -12,7 +12,7 @@ export function workOrderProgress(query) { // 楼层生产数据 export function productProgress(query) { return request({ - url: '/fifthMesBorder/productProgress', + url: 'fifthMesBorder/productProgress', method: 'get', params: query }) @@ -21,7 +21,7 @@ export function productProgress(query) { // 组员生产合格率 export function productionQualified(query) { return request({ - url: '/fifthMesBorder/productionQualified', + url: 'fifthMesBorder/productionQualified', method: 'get', params: query }) @@ -30,7 +30,7 @@ export function productionQualified(query) { // 工时统计 export function orderTime(query) { return request({ - url: '/fifthMesBorder/orderTime', + url: 'fifthMesBorder/orderTime', method: 'get', params: query }) diff --git a/hw-ui/src/assets/board/energy.jpg b/hw-ui/src/assets/board/energy.jpg new file mode 100644 index 00000000..3f07194a Binary files /dev/null and b/hw-ui/src/assets/board/energy.jpg differ diff --git a/hw-ui/src/assets/board/productionBg4.jpg b/hw-ui/src/assets/board/productionBg4.jpg new file mode 100644 index 00000000..2eb92efb Binary files /dev/null and b/hw-ui/src/assets/board/productionBg4.jpg differ diff --git a/hw-ui/src/views/board/production/firstFloor.vue b/hw-ui/src/views/board/production/firstFloor.vue index a77f31aa..fa48787a 100644 --- a/hw-ui/src/views/board/production/firstFloor.vue +++ b/hw-ui/src/views/board/production/firstFloor.vue @@ -2,14 +2,15 @@
京源生产监控平台
-
{{ - time - }} +
当前楼层:3F
+
状态: + 出库中
-
- 3F - 上升 - 出库 +
起始楼层: + 1F +
+
目标楼层: + 3F
{{ i }}
-
- -
-
-
人员{{ k }}
-
工序:切割
-
产品计划数量:10000
-
8888
-
88%
-
- +
+
+ 任务编号 +
+
+ 销售订单 +
+
+ 产线 +
+
+ 成品名称 +
+
+ 成品规格 +
+
+ 数量 +
+
+ 状态
-
-
- -
-
- + +
+
+
+ {{ item.processId }} +
+
+ {{ item.processName }} +
+
+ {{ item.planAmount }} +
+
+ {{ item.completeAmount }} +
+
+ {{ item.quantityAmount }} +
+
+ {{ item.finishingRate }}% +
+
+ {{ item.finishingRate }}% +
+
+
+
@@ -72,8 +126,8 @@ export default { time: parseTime(new Date(), '{y}-{m}-{d} 星期{a} {h}:{i}:{s}'), title: [ '工序生产进度', - '工序名称对比', - '七日产量对比', + '提升机状态', + ' ', ' ', ' ', ' ', @@ -83,12 +137,12 @@ export default { ], titlePosition: [ { - top: 11.3, + top: 19.3, left: 5.5 }, { - top: 11.3, - left: 75 + top: 19.3, + left: 52.4 }, { top: 70.3, @@ -139,8 +193,6 @@ export default { this.getData() window.onresize = () => { - this.$refs.chart1.chart.resize() - this.$refs.chart3.chart.resize() } }, methods: { @@ -157,134 +209,6 @@ export default { } }) }) - this.$refs.chart1.setData({ - tooltip: {}, - radar: { - indicator: [ - { name: '打磨', max: 6500 }, - { name: '折弯', max: 16000 }, - { name: '组装', max: 30000 }, - { name: '下料', max: 38000 }, - { name: '机加', max: 52000 }, - { name: '1', max: 25000 } - ] - }, - series: [ - { - name: '时间', - type: 'radar', - // areaStyle: {normal: {}}, - data: [ - { - value: [4300, 10000, 28000, 35000, 50000, 19000], - name: '时间' - } - ] - } - ] - }) - this.$refs.chart3.setData({ - grid: { - top: 30, - left: '2%', - right: '5%', - bottom: '2%', - containLabel: true - }, - legend: { - textStyle: { - color: '#fff' - } - }, - - tooltip: { - trigger: 'axis' - }, - xAxis: { - type: 'category', - data: [1, 2, 3], - axisLabel: { - margin: 10, - color: '#ffffff63' - }, - axisLine: { - show: false - }, - axisTick: { - show: true, - lineStyle: { - color: '#ffffff1f' - } - }, - splitLine: { - show: true, - lineStyle: { - type: 'dashed', - color: '#ffffff1f' - } - } - }, - yAxis: [ - { - type: 'value', - axisLabel: { - margin: 10, - color: '#ffffff63' - }, - - axisTick: { - show: true, - lineStyle: { - color: '#ffffff1f' - } - }, - splitLine: { - show: true, - lineStyle: { - type: 'dashed', - color: '#ffffff1f' - } - }, - axisLine: { - lineStyle: { - color: '#fff', - width: 2 - } - } - } - ], - series: [ - { - name: '1', - type: 'line', - smooth: true, //是否平滑曲线显示 - showAllSymbol: true, - symbol: 'circle', - symbolSize: 6, - lineStyle: { - normal: { - color: '#fff' // 线条颜色 - } - }, - label: { - show: true, - position: 'top', - textStyle: { - color: '#fff' - } - }, - itemStyle: { - color: 'red', - borderColor: '#fff', - borderWidth: 3 - }, - tooltip: { - // show: false, - }, - data: [1, 2, 3] - } - ] - }) } } @@ -293,7 +217,7 @@ export default { diff --git a/hw-ui/src/views/board/production/fourthFloor.vue b/hw-ui/src/views/board/production/fourthFloor.vue index 31a958dc..9fecf29e 100644 --- a/hw-ui/src/views/board/production/fourthFloor.vue +++ b/hw-ui/src/views/board/production/fourthFloor.vue @@ -29,8 +29,23 @@
-
- +
+ + +
10%
良率
+
+
+ + +
10%
不良率
+
+
+ + +
10%
物料利用率
+
+
+
@@ -57,6 +72,7 @@ export default { }, data() { return { + vw:(window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth)/100, LineStatus: true, topData: { planAmount: [0, 0, 0, 0], @@ -135,6 +151,7 @@ export default { window.onresize = () => { this.$refs.chart1.chart.resize() this.$refs.chart3.chart.resize() + this.$refs.chart5.chart.resize() } }, methods: { @@ -178,25 +195,46 @@ export default { ] }) this.$refs.chart3.setData({ - grid: { - top: 30, - left: '2%', - right: '5%', - bottom: '2%', - containLabel: true - }, - legend: { - textStyle: { - color: '#fff' - } - }, - tooltip: { - trigger: 'axis' + trigger: 'item' + }, + grid: { + borderWidth: 0, + top: '10%', + left: '10%', + right: '10%', + bottom: '10%' + }, + yAxis: { + type: 'category', + axisLabel: { + margin: 10, + color: '#ffffff63' + }, + + axisTick: { + show: true, + lineStyle: { + color: '#ffffff1f' + } + }, + splitLine: { + show: true, + lineStyle: { + type: 'dashed', + color: '#ffffff1f' + } + }, + axisLine: { + lineStyle: { + color: '#fff3', + width: 2 + } + }, + data: [1,2,3] }, xAxis: { - type: 'category', - data: [1, 2, 3], + type: 'value', axisLabel: { margin: 10, color: '#ffffff63' @@ -218,67 +256,188 @@ export default { } } }, - yAxis: [ - { - type: 'value', - axisLabel: { - margin: 10, - color: '#ffffff63' - }, - - axisTick: { - show: true, - lineStyle: { - color: '#ffffff1f' - } - }, - splitLine: { - show: true, - lineStyle: { - type: 'dashed', - color: '#ffffff1f' - } - }, - axisLine: { - lineStyle: { - color: '#fff', - width: 2 - } - } - } - ], series: [ { - name: '1', - type: 'line', - smooth: true, //是否平滑曲线显示 - showAllSymbol: true, - symbol: 'circle', - symbolSize: 6, - lineStyle: { - normal: { - color: '#fff' // 线条颜色 - } - }, - label: { - show: true, - position: 'top', - textStyle: { - color: '#fff' - } - }, + name: '', + type: 'bar', + barMaxWidth: '40px', + barWidth: '40%', itemStyle: { - color: 'red', - borderColor: '#fff', - borderWidth: 3 + + color: new echarts.graphic.LinearGradient( + 0, + 0, + 1, + 0, + [ + { + offset: 0, + color: '#0a2ad7' + }, + { + offset: 1, + color: '#138dd7' + } + ], + false + ) }, - tooltip: { - // show: false, + data:[11,22,3] + }, + { + name: '', + type: 'pictorialBar', + barWidth: '40%', + barMaxWidth: '40px', + symbolSize: [5, '100%'], + symbolPosition: 'end', + symbolOffset: [3, 0], + barGap: '-100%', + itemStyle: { + color: '#138dd7' }, - data: [1, 2, 3] + data:[11,22,3] } ] }) + this.$refs.chart5.setData({ + color: ["#EAEA26", "#906BF9", "#FE5656", "#01E17E", "#3DD1F9", "#FFAD05"], + grid: { + left: -100, + top: 50, + bottom: 10, + right: 10, + containLabel: true, + }, + tooltip: { + trigger: "item", + formatter: "{b} : {c} ({d}%)", + }, + legend: { + type: "scroll", + orient: "vartical", + // x: "right", + top: "center", + right: "15", + // bottom: "0%", + itemWidth: 16, + itemHeight: 8, + itemGap: 16, + textStyle: { + color: "#A3E2F4", + fontSize: 12, + fontWeight: 0, + }, + }, + polar: {}, + angleAxis: { + interval: 1, + type: "category", + data: [], + z: 10, + axisLine: { + show: false, + lineStyle: { + color: "#0B4A6B", + width: 1, + type: "solid", + }, + }, + axisLabel: { + interval: 0, + show: true, + color: "#0B4A6B", + margin: 8, + fontSize: 16, + }, + }, + radiusAxis: { + min: 40, + max: 120, + interval: 20, + axisLine: { + show: false, + lineStyle: { + color: "#0B3E5E", + width: 1, + type: "solid", + }, + }, + axisLabel: { + formatter: "{value} %", + show: false, + padding: [0, 0, 20, 0], + color: "#0B3E5E", + fontSize: 16, + }, + splitLine: { + lineStyle: { + color: "#0B3E5E", + width: 2, + type: "solid", + }, + }, + }, + calculable: true, + series: [ + { + stack: "a", + type: "pie", + radius: ["20%", "80%"], + roseType: "area", + zlevel: 10, + label: { + normal: { + show: true, + formatter: "{c}", + textStyle: { + fontSize: 12, + }, + position: "outside", + }, + emphasis: { + show: true, + }, + }, + labelLine: { + normal: { + show: true, + length: 20, + length2: 55, + }, + emphasis: { + show: false, + }, + }, + data: [ + { + value: 10, + name: "设备1", + }, + { + value: 5, + name: "设备2", + }, + { + value: 15, + name: "设备3", + }, + { + value: 25, + name: "设备4", + }, + { + value: 20, + name: "设备5", + }, + { + value: 35, + name: "设备6", + }, + ], + }, + ], + }) } } @@ -287,7 +446,7 @@ export default { diff --git a/hw-ui/src/views/board/warehouse/fourthFloor.vue b/hw-ui/src/views/board/warehouse/fourthFloor.vue index 3bb96971..3d13227f 100644 --- a/hw-ui/src/views/board/warehouse/fourthFloor.vue +++ b/hw-ui/src/views/board/warehouse/fourthFloor.vue @@ -8,11 +8,12 @@ {{ i }}
- -
-
- + +
+ + +
@@ -262,88 +263,110 @@ export default { num3_1 = parseFloat(((num3 / num1) * 100).toFixed(2)) } this.$refs.chart1.setData({ - title: { - text: '原料库存占比', - style: { - color: '#fff' - } + tooltip: { + trigger: 'item' }, - credits: { - enabled: false + grid: { + borderWidth: 0, + top: '10%', + left: '10%', + right: '10%', + bottom: '10%' }, - chart: { - type: 'pie', - animation: false, - backgroundColor: null, - events: { - load: function() { - let each = Highcharts.each, - points = this.series[0].points - each(points, function(p, i) { - p.graphic.attr({ - translateY: -p.shapeArgs.ran - }) - p.graphic.side1.attr({ - translateY: -p.shapeArgs.ran - }) - p.graphic.side2.attr({ - translateY: -p.shapeArgs.ran - }) - }) + yAxis: { + type: 'category', + axisLabel: { + margin: 10, + color: '#ffffff63' + }, + + axisTick: { + show: true, + lineStyle: { + color: '#ffffff1f' } }, - options3d: { - enabled: true, - alpha: 60, - beta: 0 - } + splitLine: { + show: true, + lineStyle: { + type: 'dashed', + color: '#ffffff1f' + } + }, + axisLine: { + lineStyle: { + color: '#fff3', + width: 2 + } + }, + data: [1,2,3] }, - legend: { - reversed: true, - itemStyle: { - color: '#fff' - } - }, - plotOptions: { - pie: { - allowPointSelect: false, - cursor: 'pointer', - depth: 35, - startAngle: 45, - size: 200, - dataLabels: { - enabled: true, - formatter: function() { - return this.point.options.name + '
' + this.point.options.h + '%' - } - }, - showInLegend: false, - point: { - events: { - legendItemClick: function(e) { - return false // 直接 return false 即可禁用图例点击事件 - } - } + xAxis: { + type: 'value', + axisLabel: { + margin: 10, + color: '#ffffff63' + }, + axisLine: { + show: false + }, + axisTick: { + show: true, + lineStyle: { + color: '#ffffff1f' + } + }, + splitLine: { + show: true, + lineStyle: { + type: 'dashed', + color: '#ffffff1f' } } }, series: [ { - type: 'pie', - name: '占比', - data: [ - { - 'name': '已使用', - y: num2_1, - h: Math.min(num2_1, 50) - }, - { - name: '未使用', - y: num3_1, - h: Math.min(num3_1, 50) - } - ].sort((a, b) => a.y - b.y) - }] + name: '', + type: 'bar', + barMaxWidth: '40px', + barWidth: '40%', + itemStyle: { + + color: new echarts.graphic.LinearGradient( + 0, + 0, + 1, + 0, + [ + { + offset: 0, + color: '#0a2ad7' + }, + { + offset: 1, + color: '#138dd7' + } + ], + false + ) + }, + data:[11,22,3] + }, + { + name: '', + type: 'pictorialBar', + barWidth: '40%', + barMaxWidth: '40px', + symbolSize: [5, '100%'], + symbolPosition: 'end', + symbolOffset: [3, 0], + barGap: '-100%', + itemStyle: { + color: '#138dd7' + }, + data:[11,22,3] + } + ] }) let num11 = e.data.noProductstockAmount + e.data.productstockAmount let num12 = e.data.productstockAmount @@ -610,7 +633,7 @@ export default { position: absolute; top: 22.5%; left: 3.4%; - width: 23%; + width: 46%; height: 32%; }