Merge pull request '5.22' (#19) from zjl into master
All checks were successful
continuous-integration/drone/push Build is passing

Reviewed-on: #19
This commit is contained in:
朱菊兰 2023-05-22 14:21:50 +08:00
commit dead1e5a40
40 changed files with 247 additions and 186 deletions

1
dist/css/1913.db4e9e42.css vendored Normal file
View File

@ -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 Normal file
View File

@ -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}

View File

@ -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 Normal file
View File

@ -0,0 +1 @@
.box[data-v-537468a0]{padding:0 32px}

View File

@ -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}

View File

@ -1 +0,0 @@
.box[data-v-353959df]{padding:0 32px}

View File

@ -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
View File

@ -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>

File diff suppressed because one or more lines are too long

1
dist/js/2125.35167988.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/js/293.26410775.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/js/3813.3001de3b.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
dist/js/5094.c1fd04cd.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
dist/js/5096.fd052dc8.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
dist/js/6729.a676c4bc.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
dist/js/app.ae91d20e.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -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
})

View File

@ -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) {

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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'
}
]

View File

@ -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
}
})
},

View File

@ -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)
}

View File

@ -107,6 +107,10 @@ const tablePropsP = [
{
prop: 'currentValue',
label: '当前值'
},
{
prop: 'time',
label: '参数记录时间'
}
]
const tablePropsD = [

View File

@ -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()

View File

@ -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)
}
})
}
}
}