5.22 #19
1
dist/css/1913.db4e9e42.css
vendored
普通文件
1
dist/css/1913.db4e9e42.css
vendored
普通文件
@ -0,0 +1 @@
|
||||
.tableInner .el-input__inner{border:none;padding:0;height:33px}.samplingAdd .form-box[data-v-b1bb2734]{height:100%;padding:0 32px;position:relative}.samplingAdd .form-box .first-line[data-v-b1bb2734]{border-bottom:1px solid #e9e9e9;margin-bottom:23px}.samplingAdd .bottom[data-v-b1bb2734]{position:absolute;bottom:0;right:32px}.standardSetting .form-box[data-v-fbc9d82a]{height:100%;padding:0 32px;position:relative}.standardSetting .bottom[data-v-fbc9d82a]{position:absolute;bottom:0;right:32px}
|
1
dist/css/2125.93591f9e.css
vendored
普通文件
1
dist/css/2125.93591f9e.css
vendored
普通文件
@ -0,0 +1 @@
|
||||
.processMonitoring .bottom-box[data-v-756f88ed],.processMonitoring .top-box[data-v-756f88ed]{margin:8px 16px;background-color:#fff;border-radius:8px}.processMonitoring .bottom-box[data-v-756f88ed]{padding:16px;height:calc(100vh - 218px)}.processMonitoring .bottom-box .title-box[data-v-756f88ed]{margin-bottom:16px}.processMonitoring .bottom-box .title[data-v-756f88ed]:before{content:"";display:inline-block;width:4px;height:16px;background-color:#0b58ff;vertical-align:middle;margin-right:8px}.processMonitoring .top-box[data-v-756f88ed]{padding:10px 16px 1px}.processMonitoring .top-box .top-search1[data-v-756f88ed],.processMonitoring .top-box .top-search2[data-v-756f88ed]{display:inline-block}.processMonitoring .top-box .top-search1[data-v-756f88ed]{height:50px;padding-top:5px;vertical-align:bottom;margin-right:24px}
|
1
dist/css/2581.fa424ad2.css
vendored
1
dist/css/2581.fa424ad2.css
vendored
@ -1 +0,0 @@
|
||||
.tableInner .el-input__inner{border:none;padding:0;height:33px}.samplingAdd .form-box[data-v-2adb9530]{height:100%;padding:0 32px;position:relative}.samplingAdd .form-box .first-line[data-v-2adb9530]{border-bottom:1px solid #e9e9e9;margin-bottom:23px}.samplingAdd .bottom[data-v-2adb9530]{position:absolute;bottom:0;right:32px}.standardSetting .form-box[data-v-fbc9d82a]{height:100%;padding:0 32px;position:relative}.standardSetting .bottom[data-v-fbc9d82a]{position:absolute;bottom:0;right:32px}
|
1
dist/css/293.b914c318.css
vendored
普通文件
1
dist/css/293.b914c318.css
vendored
普通文件
@ -0,0 +1 @@
|
||||
.box[data-v-537468a0]{padding:0 32px}
|
1
dist/css/4750.572b21b0.css
vendored
1
dist/css/4750.572b21b0.css
vendored
@ -1 +0,0 @@
|
||||
.processMonitoring .bottom-box[data-v-bcfbbbf2],.processMonitoring .top-box[data-v-bcfbbbf2]{margin:8px 16px;background-color:#fff;border-radius:8px}.processMonitoring .bottom-box[data-v-bcfbbbf2]{padding:16px;height:calc(100vh - 218px)}.processMonitoring .bottom-box .title-box[data-v-bcfbbbf2]{margin-bottom:16px}.processMonitoring .bottom-box .title[data-v-bcfbbbf2]:before{content:"";display:inline-block;width:4px;height:16px;background-color:#0b58ff;vertical-align:middle;margin-right:8px}.processMonitoring .top-box[data-v-bcfbbbf2]{padding:10px 16px 1px}.processMonitoring .top-box .top-search1[data-v-bcfbbbf2],.processMonitoring .top-box .top-search2[data-v-bcfbbbf2]{display:inline-block}.processMonitoring .top-box .top-search1[data-v-bcfbbbf2]{height:50px;padding-top:5px;vertical-align:bottom;margin-right:24px}
|
1
dist/css/5060.d800e106.css
vendored
1
dist/css/5060.d800e106.css
vendored
@ -1 +0,0 @@
|
||||
.box[data-v-353959df]{padding:0 32px}
|
@ -1 +1 @@
|
||||
.bottom-box[data-v-5624e103]{overflow-x:auto;display:flex}.bottom-box .bottom-left[data-v-5624e103],.bottom-box .bottom-right[data-v-5624e103]{display:inline-block}.bottom-box .bottom-left[data-v-5624e103]{width:290px;margin-right:8px}.bottom-box .bottom-left .dataTab li[data-v-5624e103]{width:65px}.bottom-box .bottom-right[data-v-5624e103]{width:calc(100% - 300px)}.bottom-box .bottom-right .dataTab li[data-v-5624e103]{width:7.7%;min-width:60px}.title[data-v-5624e103]{display:inline-block;height:66px;width:30px;font-size:14px;line-height:14px;font-weight:500;padding:5px 8px 0;color:rgba(0,0,0,.85);background-color:#fafafa;border-top-left-radius:5px;border-bottom-left-radius:5px}.dataTab[data-v-5624e103]{display:flex;flex-flow:row nowrap}.dataTab li[data-v-5624e103]{font-size:14px;border-right:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8}.dataTab li p[data-v-5624e103]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dataTab li .tabHead[data-v-5624e103]{height:31px;background:#e9ebf0}.dataTab li .tabHead[data-v-5624e103],.dataTab li .tabValue[data-v-5624e103]{padding:8px}.dataTab li .tabValue[data-v-5624e103]{height:35px}.box[data-v-51a1dc14]{position:relative}.box .text1[data-v-51a1dc14],.box .text2[data-v-51a1dc14],.box .text3[data-v-51a1dc14],.box .text4[data-v-51a1dc14]{position:absolute}.box .text1[data-v-51a1dc14]{top:30px;left:0}.box .text2[data-v-51a1dc14]{top:30px;right:0}.box .text3[data-v-51a1dc14]{bottom:10px;left:0}.box .text4[data-v-51a1dc14]{bottom:10px;right:0}.defectScatterPlot[data-v-50980432]{height:calc(100vh - 206px);overflow:auto}.defectScatterPlot .split-pane[data-v-50980432]{height:100%;border-radius:8px}.defectScatterPlot .left-box[data-v-50980432]{margin-left:16px;padding:16px 16px 0;background-color:#fff}.defectScatterPlot .right-box[data-v-50980432]{margin-right:16px}.defectScatterPlot .right-box .inner-box[data-v-50980432]{height:100%;margin-left:16px;padding:16px 16px 0;border-radius:8px;overflow:auto;background-color:#fff;font-size:14px}.defectScatterPlot .right-box .inner-box .line1[data-v-50980432]{margin-bottom:18px}.defectScatterPlot .right-box .inner-box .line2[data-v-50980432]{margin-bottom:12px}.defectScatterPlot .right-box .inner-box .line2 .el-checkbox[data-v-50980432]{margin-right:8px}.defectScatterPlot .title[data-v-50980432]{font-size:14px;color:rgba(0,0,0,.85)}.defectScatterPlot .title[data-v-50980432]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;vertical-align:middle;margin-right:8px}
|
||||
.bottom-box[data-v-5624e103]{overflow-x:auto;display:flex}.bottom-box .bottom-left[data-v-5624e103],.bottom-box .bottom-right[data-v-5624e103]{display:inline-block}.bottom-box .bottom-left[data-v-5624e103]{width:290px;margin-right:8px}.bottom-box .bottom-left .dataTab li[data-v-5624e103]{width:65px}.bottom-box .bottom-right[data-v-5624e103]{width:calc(100% - 300px)}.bottom-box .bottom-right .dataTab li[data-v-5624e103]{width:7.7%;min-width:60px}.title[data-v-5624e103]{display:inline-block;height:66px;width:30px;font-size:14px;line-height:14px;font-weight:500;padding:5px 8px 0;color:rgba(0,0,0,.85);background-color:#fafafa;border-top-left-radius:5px;border-bottom-left-radius:5px}.dataTab[data-v-5624e103]{display:flex;flex-flow:row nowrap}.dataTab li[data-v-5624e103]{font-size:14px;border-right:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8}.dataTab li p[data-v-5624e103]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dataTab li .tabHead[data-v-5624e103]{height:31px;background:#e9ebf0}.dataTab li .tabHead[data-v-5624e103],.dataTab li .tabValue[data-v-5624e103]{padding:8px}.dataTab li .tabValue[data-v-5624e103]{height:35px}.box[data-v-52899232]{position:relative}.box .text1[data-v-52899232],.box .text2[data-v-52899232],.box .text3[data-v-52899232],.box .text4[data-v-52899232]{position:absolute}.box .text1[data-v-52899232]{top:30px;left:0}.box .text2[data-v-52899232]{top:30px;right:0}.box .text3[data-v-52899232]{bottom:10px;left:0}.box .text4[data-v-52899232]{bottom:10px;right:0}.defectScatterPlot[data-v-47efdd70]{height:calc(100vh - 206px);overflow:auto}.defectScatterPlot .split-pane[data-v-47efdd70]{height:100%;border-radius:8px}.defectScatterPlot .left-box[data-v-47efdd70]{margin-left:16px;padding:16px 16px 0;background-color:#fff}.defectScatterPlot .right-box[data-v-47efdd70]{margin-right:16px}.defectScatterPlot .right-box .inner-box[data-v-47efdd70]{height:100%;margin-left:16px;padding:16px 16px 0;border-radius:8px;overflow:auto;background-color:#fff;font-size:14px}.defectScatterPlot .right-box .inner-box .line1[data-v-47efdd70]{margin-bottom:18px}.defectScatterPlot .right-box .inner-box .line2[data-v-47efdd70]{margin-bottom:12px}.defectScatterPlot .right-box .inner-box .line2 .el-checkbox[data-v-47efdd70]{margin-right:8px}.defectScatterPlot .title[data-v-47efdd70]{font-size:14px;color:rgba(0,0,0,.85)}.defectScatterPlot .title[data-v-47efdd70]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;vertical-align:middle;margin-right:8px}
|
2
dist/index.html
vendored
2
dist/index.html
vendored
@ -1 +1 @@
|
||||
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/favicon.ico"><title>tft-mes</title><script defer="defer" src="/js/chunk-vendors.a42f8636.js"></script><script defer="defer" src="/js/app.50e71cdc.js"></script><link href="/css/app.68cbc19b.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but tft-mes doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
||||
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/favicon.ico"><title>tft-mes</title><script defer="defer" src="/js/chunk-vendors.a42f8636.js"></script><script defer="defer" src="/js/app.ae91d20e.js"></script><link href="/css/app.68cbc19b.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but tft-mes doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
文件差异因一行或多行过长而隐藏
1
dist/js/2125.35167988.js
vendored
普通文件
1
dist/js/2125.35167988.js
vendored
普通文件
文件差异因一行或多行过长而隐藏
1
dist/js/293.26410775.js
vendored
普通文件
1
dist/js/293.26410775.js
vendored
普通文件
文件差异因一行或多行过长而隐藏
1
dist/js/3813.3001de3b.js
vendored
普通文件
1
dist/js/3813.3001de3b.js
vendored
普通文件
文件差异因一行或多行过长而隐藏
1
dist/js/3813.9ee396fc.js
vendored
1
dist/js/3813.9ee396fc.js
vendored
文件差异因一行或多行过长而隐藏
文件差异因一行或多行过长而隐藏
1
dist/js/4112.bf1953c5.js
vendored
1
dist/js/4112.bf1953c5.js
vendored
文件差异因一行或多行过长而隐藏
1
dist/js/4750.10fe98ea.js
vendored
1
dist/js/4750.10fe98ea.js
vendored
文件差异因一行或多行过长而隐藏
1
dist/js/5060.f685ef99.js
vendored
1
dist/js/5060.f685ef99.js
vendored
文件差异因一行或多行过长而隐藏
1
dist/js/5094.c1fd04cd.js
vendored
普通文件
1
dist/js/5094.c1fd04cd.js
vendored
普通文件
文件差异因一行或多行过长而隐藏
1
dist/js/5096.2f89e25f.js
vendored
1
dist/js/5096.2f89e25f.js
vendored
文件差异因一行或多行过长而隐藏
1
dist/js/5096.fd052dc8.js
vendored
普通文件
1
dist/js/5096.fd052dc8.js
vendored
普通文件
文件差异因一行或多行过长而隐藏
1
dist/js/5633.cd27f4f8.js
vendored
1
dist/js/5633.cd27f4f8.js
vendored
文件差异因一行或多行过长而隐藏
文件差异因一行或多行过长而隐藏
1
dist/js/6729.a676c4bc.js
vendored
普通文件
1
dist/js/6729.a676c4bc.js
vendored
普通文件
文件差异因一行或多行过长而隐藏
文件差异因一行或多行过长而隐藏
文件差异因一行或多行过长而隐藏
文件差异因一行或多行过长而隐藏
1
dist/js/app.50e71cdc.js
vendored
1
dist/js/app.50e71cdc.js
vendored
文件差异因一行或多行过长而隐藏
1
dist/js/app.ae91d20e.js
vendored
普通文件
1
dist/js/app.ae91d20e.js
vendored
普通文件
文件差异因一行或多行过长而隐藏
@ -19,7 +19,7 @@ export function getPageReal(data) {
|
||||
|
||||
export function getPageHistory(data) {
|
||||
return request({
|
||||
url: '/process/processMonitor/history',
|
||||
url: '/process/processMonitor/historyList',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
|
@ -110,6 +110,24 @@ export function queryPointClear(data) {
|
||||
data
|
||||
})
|
||||
}
|
||||
export function pointExport2(data) {
|
||||
return request({
|
||||
url: '/quality/ProcessFull/pointExport2',
|
||||
method: 'post',
|
||||
responseType: 'blob',
|
||||
data,
|
||||
timeout: 60000
|
||||
})
|
||||
}
|
||||
export function pointExport(data) {
|
||||
return request({
|
||||
url: '/quality/ProcessFull/pointExport',
|
||||
method: 'post',
|
||||
responseType: 'blob',
|
||||
data,
|
||||
timeout: 60000
|
||||
})
|
||||
}
|
||||
|
||||
// 颗粒折线图
|
||||
export function getProcessFull(data) {
|
||||
|
@ -162,18 +162,17 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
init() {
|
||||
this.getNameList()
|
||||
},
|
||||
getNameList() {
|
||||
getNameList().then((res) => {
|
||||
init() {},
|
||||
selectName(val) {
|
||||
getNameList({
|
||||
type: val
|
||||
}).then((res) => {
|
||||
this.sparePartsList = res.data
|
||||
this.sparePartsSpecList = []
|
||||
this.form.sparePartName = ''
|
||||
this.form.model = ''
|
||||
})
|
||||
},
|
||||
selectName(val) {
|
||||
console.log(val)
|
||||
},
|
||||
selectModel(val) {
|
||||
getModelList({
|
||||
name: val
|
||||
|
@ -112,7 +112,7 @@
|
||||
</el-form>
|
||||
</template>
|
||||
<script>
|
||||
import { getModelList, getNameList } from '@/api/basicConfig'
|
||||
import { getModelList } from '@/api/basicConfig'
|
||||
import { sparePartStockUpdate, getSparePartStock } from '@/api/deviceManagement'
|
||||
export default {
|
||||
name: 'SparePartsEdit',
|
||||
@ -170,12 +170,6 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
getNameList() {
|
||||
getNameList().then((res) => {
|
||||
this.sparePartsList = res.data
|
||||
this.sparePartsSpecList = []
|
||||
})
|
||||
},
|
||||
selectModel(val) {
|
||||
getModelList({
|
||||
name: val
|
||||
|
@ -128,7 +128,7 @@
|
||||
</el-form>
|
||||
</template>
|
||||
<script>
|
||||
import { getModelList, getNameList } from '@/api/basicConfig'
|
||||
import { getModelList } from '@/api/basicConfig'
|
||||
import {
|
||||
sparePartStockOutStock,
|
||||
getBatchList,
|
||||
@ -207,12 +207,6 @@ export default {
|
||||
this.batchCodeList = res.data
|
||||
})
|
||||
},
|
||||
getNameList() {
|
||||
getNameList().then((res) => {
|
||||
this.sparePartsList = res.data
|
||||
this.sparePartsSpecList = []
|
||||
})
|
||||
},
|
||||
selectModel(val) {
|
||||
getModelList({
|
||||
name: val
|
||||
|
@ -7,16 +7,15 @@
|
||||
<script>
|
||||
import * as echarts from 'echarts'
|
||||
import resize from '@/utils/chartMixins/resize'
|
||||
import moment from 'moment'
|
||||
export default {
|
||||
mixins: [resize],
|
||||
name: 'ProcessMonitoringChart',
|
||||
props: {
|
||||
chartMsg: {
|
||||
type: Object,
|
||||
type: Array,
|
||||
default: () => {
|
||||
return {
|
||||
chart: ''
|
||||
}
|
||||
return []
|
||||
}
|
||||
},
|
||||
beilv: {
|
||||
@ -24,11 +23,11 @@ export default {
|
||||
default: 1
|
||||
}
|
||||
},
|
||||
// mounted() {
|
||||
// this.$nextTick(() => {
|
||||
// this.initChart()
|
||||
// })
|
||||
// },
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.initChart()
|
||||
})
|
||||
},
|
||||
watch: {
|
||||
chartMsg: function () {
|
||||
this.initChart()
|
||||
@ -43,6 +42,15 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
initChart() {
|
||||
const xData = []
|
||||
const yData = []
|
||||
for (let i = 0; i < this.chartMsg.length; i++) {
|
||||
let time = moment(this.chartMsg[i].createTime).format(
|
||||
'yyyy-MM-DD HH:mm:ss'
|
||||
)
|
||||
xData.push(time)
|
||||
yData.push(this.chartMsg[i].value)
|
||||
}
|
||||
if (
|
||||
this.chart !== null &&
|
||||
this.chart !== '' &&
|
||||
@ -64,14 +72,14 @@ export default {
|
||||
},
|
||||
xAxis: {
|
||||
type: 'category',
|
||||
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
|
||||
data: xData
|
||||
},
|
||||
yAxis: {
|
||||
type: 'value'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
data: [150, 230, 224, 218, 135, 147, 260],
|
||||
data: yData,
|
||||
type: 'line'
|
||||
}
|
||||
]
|
||||
|
@ -37,7 +37,7 @@
|
||||
/>
|
||||
</div>
|
||||
<div v-else>
|
||||
<process-monitoring-chart :beilv="beilv" />
|
||||
<process-monitoring-chart :beilv="beilv" :chartMsg="historyList" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -185,7 +185,7 @@ export default {
|
||||
paramName: this.listQuery.paramName
|
||||
}).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.historyList = res
|
||||
this.historyList = res.data
|
||||
}
|
||||
})
|
||||
},
|
||||
|
@ -18,22 +18,60 @@ import resize from '@/utils/chartMixins/resize'
|
||||
export default {
|
||||
name: 'DefectScatterPlotChart',
|
||||
mixins: [resize],
|
||||
props: {
|
||||
defectMsg: {
|
||||
type: Object,
|
||||
default: () => {
|
||||
return {}
|
||||
}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
chartDom: '',
|
||||
chart: '',
|
||||
chartHeight: tableHeight(446)
|
||||
chartHeight: tableHeight(446),
|
||||
list: [
|
||||
{ label: 'S', value: 's' },
|
||||
{ label: 'M', value: 'm' },
|
||||
{ label: 'L', value: 'l' },
|
||||
{ label: 'XL', value: 'xl' },
|
||||
{ label: '气泡', value: 'bl' },
|
||||
{ label: '变形', value: 'distortion' },
|
||||
{ label: '纤维', value: 'fiber' },
|
||||
{ label: '划伤', value: 'scratch' },
|
||||
{ label: '结节', value: 'knot' },
|
||||
{ label: '结石', value: 'stone' },
|
||||
{ label: '铂金', value: 'pt' },
|
||||
{ label: '拖尾', value: 'tail' },
|
||||
{ label: 'ADG', value: 'adg' },
|
||||
{ label: '点状缺陷', value: 'tin' },
|
||||
{ label: '锡缺陷(顶部)', value: 'top' },
|
||||
{ label: '锡缺陷(底部)', value: 'bottom' },
|
||||
{ label: '无法识别', value: 'iisrest' }
|
||||
]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
window.addEventListener('resize', () => {
|
||||
this.chartHeight = tableHeight(446)
|
||||
})
|
||||
setTimeout(() => {
|
||||
},
|
||||
watch: {
|
||||
defectMsg: function () {
|
||||
this.getChart()
|
||||
}, 20)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
transLabel(v) {
|
||||
let label = ''
|
||||
for (let l = 0; l < this.list.length; l++) {
|
||||
if (v === this.list[l].value) {
|
||||
label = this.list[l].label
|
||||
}
|
||||
}
|
||||
return label
|
||||
},
|
||||
getChart() {
|
||||
if (
|
||||
this.chart !== null &&
|
||||
@ -44,105 +82,28 @@ export default {
|
||||
}
|
||||
this.chartDom = document.getElementById('defectScatterPlotChart')
|
||||
this.chart = echarts.init(this.chartDom)
|
||||
const dataS = [
|
||||
[1, 55],
|
||||
[2, 25],
|
||||
[3, 56],
|
||||
[4, 33],
|
||||
[5, 42],
|
||||
[6, 82],
|
||||
[7, 74],
|
||||
[8, 78],
|
||||
[9, 267],
|
||||
[10, 185],
|
||||
[11, 39],
|
||||
[12, 41],
|
||||
[13, 64],
|
||||
[14, 108],
|
||||
[15, 108],
|
||||
[16, 33],
|
||||
[17, 94],
|
||||
[18, 186],
|
||||
[19, 57],
|
||||
[20, 22],
|
||||
[21, 39],
|
||||
[22, 94],
|
||||
[23, 99],
|
||||
[24, 31],
|
||||
[25, 42],
|
||||
[26, 154],
|
||||
[27, 234],
|
||||
[28, 160],
|
||||
[29, 134],
|
||||
[30, 52],
|
||||
[31, 46]
|
||||
]
|
||||
const dataM = [
|
||||
[1, 26],
|
||||
[2, 85],
|
||||
[3, 78],
|
||||
[4, 21],
|
||||
[5, 41],
|
||||
[6, 56],
|
||||
[7, 64],
|
||||
[8, 55],
|
||||
[9, 76],
|
||||
[10, 91],
|
||||
[11, 84],
|
||||
[12, 64],
|
||||
[13, 70],
|
||||
[14, 77],
|
||||
[15, 109],
|
||||
[16, 73],
|
||||
[17, 54],
|
||||
[18, 51],
|
||||
[19, 91],
|
||||
[20, 73],
|
||||
[21, 73],
|
||||
[22, 84],
|
||||
[23, 93],
|
||||
[24, 99],
|
||||
[25, 146],
|
||||
[26, 113],
|
||||
[27, 81],
|
||||
[28, 56],
|
||||
[29, 82],
|
||||
[30, 106],
|
||||
[31, 118]
|
||||
]
|
||||
const dataL = [
|
||||
[1, 91],
|
||||
[2, 65],
|
||||
[3, 83],
|
||||
[4, 109],
|
||||
[5, 106],
|
||||
[6, 109],
|
||||
[7, 106],
|
||||
[8, 89],
|
||||
[9, 53],
|
||||
[10, 80],
|
||||
[11, 117],
|
||||
[12, 99],
|
||||
[13, 95],
|
||||
[14, 116],
|
||||
[15, 108],
|
||||
[16, 134],
|
||||
[17, 79],
|
||||
[18, 71],
|
||||
[19, 97],
|
||||
[20, 84],
|
||||
[21, 87],
|
||||
[22, 104],
|
||||
[23, 87],
|
||||
[24, 168],
|
||||
[25, 65],
|
||||
[26, 39],
|
||||
[27, 39],
|
||||
[28, 93],
|
||||
[29, 188],
|
||||
[30, 174],
|
||||
[31, 187]
|
||||
]
|
||||
console.log(this.defectMsg)
|
||||
let legendList = []
|
||||
let seriesList = []
|
||||
for (let i in this.defectMsg) {
|
||||
console.log(i)
|
||||
console.log(this.transLabel(i))
|
||||
legendList.push(this.transLabel(i))
|
||||
let arr1 = []
|
||||
let obj = {}
|
||||
for (let j of this.defectMsg[i]) {
|
||||
let arr2 = []
|
||||
arr2.push(parseInt(j.xpos))
|
||||
arr2.push(parseInt(j.ypos))
|
||||
arr1.push(arr2)
|
||||
}
|
||||
obj.name = this.transLabel(i)
|
||||
obj.type = 'scatter'
|
||||
obj.data = arr1
|
||||
obj.symbolSize = 5
|
||||
seriesList.push(obj)
|
||||
}
|
||||
console.log(seriesList)
|
||||
var option = {
|
||||
color: [
|
||||
'#5d7ab7',
|
||||
@ -166,7 +127,7 @@ export default {
|
||||
legend: {
|
||||
top: 10,
|
||||
left: 0,
|
||||
data: ['S', 'M', 'L'],
|
||||
data: legendList,
|
||||
textStyle: {
|
||||
fontSize: 9
|
||||
},
|
||||
@ -185,7 +146,6 @@ export default {
|
||||
nameTextStyle: {
|
||||
fontSize: 16
|
||||
},
|
||||
max: 31,
|
||||
splitLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
@ -207,26 +167,27 @@ export default {
|
||||
}
|
||||
}
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'S',
|
||||
type: 'scatter',
|
||||
data: dataS,
|
||||
symbolSize: 5
|
||||
},
|
||||
{
|
||||
name: 'M',
|
||||
type: 'scatter',
|
||||
data: dataM,
|
||||
symbolSize: 5
|
||||
},
|
||||
{
|
||||
name: 'L',
|
||||
type: 'scatter',
|
||||
data: dataL,
|
||||
symbolSize: 5
|
||||
}
|
||||
]
|
||||
series: seriesList
|
||||
// series: [
|
||||
// {
|
||||
// name: 'S',
|
||||
// type: 'scatter',
|
||||
// data: dataS,
|
||||
// symbolSize: 5
|
||||
// },
|
||||
// {
|
||||
// name: 'M',
|
||||
// type: 'scatter',
|
||||
// data: dataM,
|
||||
// symbolSize: 5
|
||||
// },
|
||||
// {
|
||||
// name: 'L',
|
||||
// type: 'scatter',
|
||||
// data: dataL,
|
||||
// symbolSize: 5
|
||||
// }
|
||||
// ]
|
||||
}
|
||||
option && this.chart.setOption(option)
|
||||
}
|
||||
|
@ -107,6 +107,10 @@ const tablePropsP = [
|
||||
{
|
||||
prop: 'currentValue',
|
||||
label: '当前值'
|
||||
},
|
||||
{
|
||||
prop: 'time',
|
||||
label: '参数记录时间'
|
||||
}
|
||||
]
|
||||
const tablePropsD = [
|
||||
|
@ -29,7 +29,6 @@
|
||||
v-model="form.detectTime"
|
||||
type="datetime"
|
||||
placeholder="选择抽检时间"
|
||||
value-format="yyyy-MM-DDTHH:mm:ss"
|
||||
style="width: 100%"
|
||||
>
|
||||
</el-date-picker>
|
||||
@ -168,8 +167,7 @@ export default {
|
||||
this.tableH = tableHeight(250)
|
||||
})
|
||||
this.form.model = 'G8.5'
|
||||
// this.form.detectTime = moment().format('yyyy-MM-DD HH:mm:ss')
|
||||
this.form.detectTime = moment().format('yyyy-MM-DD HH:mm:ss')
|
||||
this.form.detectTime = new Date()
|
||||
},
|
||||
selectItem() {
|
||||
this.getStandard()
|
||||
|
@ -37,7 +37,9 @@
|
||||
@click="drawPic"
|
||||
>绘图</el-button
|
||||
>
|
||||
<el-button type="primary" size="small" plain>导出</el-button>
|
||||
<el-button type="primary" size="small" plain @click="exportExl"
|
||||
>导出</el-button
|
||||
>
|
||||
</div>
|
||||
<div class="line2">
|
||||
<el-checkbox-group v-model="checkList">
|
||||
@ -52,7 +54,10 @@
|
||||
<div>
|
||||
<span class="title">缺陷散点图(1245241242)</span>
|
||||
</div>
|
||||
<defect-scatter-plot-chart ref="poltChart" />
|
||||
<defect-scatter-plot-chart
|
||||
ref="poltChart"
|
||||
:defectMsg="defectList"
|
||||
/>
|
||||
<div class="bottom">
|
||||
<div style="margin-bottom: 10px">
|
||||
<span class="title">合计</span>
|
||||
@ -69,7 +74,13 @@
|
||||
import { tableHeight } from '@/utils/index'
|
||||
import defectScatterPlotTotal from './../components/defectScatterPlotTotal.vue'
|
||||
import defectScatterPlotChart from './../components/defectScatterPlotChart.vue'
|
||||
import { queryPoint, drawPoint, queryPointClear } from '@/api/qualityManagement'
|
||||
import {
|
||||
queryPoint,
|
||||
drawPoint,
|
||||
queryPointClear,
|
||||
pointExport,
|
||||
pointExport2
|
||||
} from '@/api/qualityManagement'
|
||||
import moment from 'moment'
|
||||
import { timeFormatter } from '@/utils'
|
||||
const tableProps = [
|
||||
@ -168,7 +179,8 @@ export default {
|
||||
{ label: '无法识别', value: 'iisrest' }
|
||||
],
|
||||
selectedGlassId: [],
|
||||
detailMsg: {}
|
||||
detailMsg: {},
|
||||
defectList: {}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@ -201,13 +213,29 @@ export default {
|
||||
})
|
||||
return false
|
||||
}
|
||||
if (this.checkList.length === 0) {
|
||||
this.$message({
|
||||
message: '请先勾选缺陷',
|
||||
type: 'error',
|
||||
duration: 1500,
|
||||
onClose: () => {}
|
||||
})
|
||||
return false
|
||||
}
|
||||
this.getDetail()
|
||||
drawPoint({
|
||||
startTime: this.listQuery.startTime,
|
||||
endTime: this.listQuery.endTime,
|
||||
glassId: this.selectedGlassId
|
||||
glassId: this.selectedGlassId,
|
||||
defectType: this.checkList
|
||||
}).then((res) => {
|
||||
console.log(res)
|
||||
if (res.code === 0) {
|
||||
this.defectList = res.data
|
||||
} else {
|
||||
this.defectList = {}
|
||||
}
|
||||
this.$refs.poltChart.getChart()
|
||||
})
|
||||
},
|
||||
getDetail() {
|
||||
@ -266,6 +294,63 @@ export default {
|
||||
},
|
||||
moveEnd() {
|
||||
this.$refs.poltChart.getChart()
|
||||
},
|
||||
// 导出
|
||||
exportExl() {
|
||||
pointExport({
|
||||
startTime: this.listQuery.startTime,
|
||||
endTime: this.listQuery.endTime,
|
||||
glassId: this.selectedGlassId,
|
||||
defectType: this.checkList
|
||||
}).then((response) => {
|
||||
let fileName = ''
|
||||
const contentDisposition = response.headers['content-disposition']
|
||||
if (contentDisposition) {
|
||||
fileName = decodeURIComponent(
|
||||
contentDisposition.slice(
|
||||
contentDisposition.indexOf('filename=') + 9
|
||||
)
|
||||
)
|
||||
}
|
||||
const blob = new Blob([response.data])
|
||||
const reader = new FileReader()
|
||||
reader.readAsDataURL(blob)
|
||||
reader.onload = (e) => {
|
||||
const a = document.createElement('a')
|
||||
a.download = fileName
|
||||
a.href = e.target.result
|
||||
document.body.appendChild(a)
|
||||
a.click()
|
||||
document.body.removeChild(a)
|
||||
}
|
||||
})
|
||||
pointExport2({
|
||||
startTime: this.listQuery.startTime,
|
||||
endTime: this.listQuery.endTime,
|
||||
glassId: this.selectedGlassId,
|
||||
defectType: this.checkList
|
||||
}).then((response) => {
|
||||
let fileName = ''
|
||||
const contentDisposition = response.headers['content-disposition']
|
||||
if (contentDisposition) {
|
||||
fileName = decodeURIComponent(
|
||||
contentDisposition.slice(
|
||||
contentDisposition.indexOf('filename=') + 9
|
||||
)
|
||||
)
|
||||
}
|
||||
const blob = new Blob([response.data])
|
||||
const reader = new FileReader()
|
||||
reader.readAsDataURL(blob)
|
||||
reader.onload = (e) => {
|
||||
const a = document.createElement('a')
|
||||
a.download = fileName
|
||||
a.href = e.target.result
|
||||
document.body.appendChild(a)
|
||||
a.click()
|
||||
document.body.removeChild(a)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
正在加载...
在新工单中引用
屏蔽一个用户