修改bug #16

Yhdistetty
juzi yhdistetty 1 committia lähteestä zjl kohteeseen master 2023-05-15 17:26:00 +08:00
35 muutettua tiedostoa jossa 468 lisäystä ja 66 poistoa

Näytä tiedosto

@ -1 +1 @@
.plan-maintenance[data-v-d279e1c8]{height:calc(100vh - 203px);padding:12px 16px;margin:0 16px;border-radius:8px;background-color:#fff}
.plan-maintenance[data-v-bf7ad0ae]{height:calc(100vh - 203px);padding:12px 16px;margin:0 16px;border-radius:8px;background-color:#fff}

Näytä tiedosto

@ -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}.full-inspection-detail[data-v-444ed842]{margin:0 16px;padding:16px;border-radius:8px;height:calc(100vh - 205px);background-color:#fff}.full-inspection-detail .plot-total[data-v-444ed842]{position:relative;height:115px}.full-inspection-detail .plot-total .plot-total-box[data-v-444ed842]{position:absolute;width:100%;top:25px;left:0}
.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}.full-inspection-detail[data-v-7f728e52]{margin:0 16px;padding:16px;border-radius:8px;height:calc(100vh - 205px);background-color:#fff}.full-inspection-detail .plot-total[data-v-7f728e52]{position:relative;height:115px}.full-inspection-detail .plot-total .plot-total-box[data-v-7f728e52]{position:absolute;width:100%;top:25px;left:0}

1
dist/css/4941.cb8dd88e.css vendored Normal file
Näytä tiedosto

@ -0,0 +1 @@
.finalInspectionData[data-v-1932e535]{width:100%}.finalInspectionData .box-top[data-v-1932e535]{width:100%;padding:8px 16px 0}.finalInspectionData .box-top .search-box[data-v-1932e535]{height:62px;padding:10px 16px;box-sizing:border-box;border-radius:8px;background-color:#fff}.finalInspectionData .box[data-v-1932e535]{width:100%;padding:8px 8px 0 16px}.finalInspectionData .box .left-box[data-v-1932e535],.finalInspectionData .box .right-box[data-v-1932e535]{height:calc(100vh - 220px);padding:16px;border-radius:8px;background-color:#fff}.finalInspectionData .box .left-box .table-box[data-v-1932e535],.finalInspectionData .box .right-box .table-box[data-v-1932e535]{margin-top:16px;height:calc(100vh - 290px);overflow:auto}.finalInspectionData .box .left-box .table-button[data-v-1932e535]{display:inline-block;height:30px;width:100%;text-align:center;padding-top:4px;margin-bottom:16px;font-size:14px;color:#0b58ff;border-radius:4px;border:1px dotted #0b58ff;cursor:pointer}.finalInspectionData .box .right-box .title[data-v-1932e535]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}

Näytä tiedosto

@ -1 +0,0 @@
.finalInspectionData[data-v-22462100]{width:100%}.finalInspectionData .box-top[data-v-22462100]{width:100%;padding:8px 16px 0}.finalInspectionData .box-top .search-box[data-v-22462100]{height:62px;padding:10px 16px;box-sizing:border-box;border-radius:8px;background-color:#fff}.finalInspectionData .box[data-v-22462100]{width:100%;padding:8px 8px 0 16px}.finalInspectionData .box .left-box[data-v-22462100],.finalInspectionData .box .right-box[data-v-22462100]{height:calc(100vh - 220px);padding:16px;border-radius:8px;background-color:#fff}.finalInspectionData .box .left-box .table-box[data-v-22462100],.finalInspectionData .box .right-box .table-box[data-v-22462100]{margin-top:16px;height:calc(100vh - 290px);overflow:auto}.finalInspectionData .box .left-box .table-button[data-v-22462100]{display:inline-block;height:30px;width:100%;text-align:center;padding-top:4px;margin-bottom:16px;font-size:14px;color:#0b58ff;border-radius:4px;border:1px dotted #0b58ff;cursor:pointer}.finalInspectionData .box .right-box .title[data-v-22462100]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}

2
dist/index.html vendored
Näytä tiedosto

@ -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.5a7cbcdc.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.8c6c63a4.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

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/3813.ab202fcc.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/js/3899.665c3a49.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/4941.49331b44.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/js/5096.25cdde84.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/6746.c7b86dac.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/9705.2f82f16f.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/9796.d66f9ab1.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

Näytä tiedosto

@ -71,7 +71,7 @@ export function processCompleteInspetionListType(data) {
// 全检导出
export function completeInspetionExport(data) {
return request({
url: '/quality/processCompleteInspetion/export',
url: '/quality/processCompleteInspetion/export2',
method: 'post',
responseType: 'blob',
data
@ -180,3 +180,19 @@ export function thickReportexport(data) {
data
})
}
// 终检数据-终检下片包装报表查询
export function queryGlassData(data) {
return request({
url: '/quality/finalpackaging/queryGlassData',
method: 'post',
data
})
}
// 终检数据-终检下片包装报表计算
export function claGlassData(data) {
return request({
url: '/quality/finalpackaging/claGlassData',
method: 'post',
data
})
}

Näytä tiedosto

@ -134,7 +134,7 @@ const tableProps = [
minWidth: 180
},
{
prop: 'executiveStaff',
prop: 'executeStaff',
label: '执行人员',
minWidth: 140
},

Näytä tiedosto

@ -2,7 +2,7 @@
<el-form ref="form" :rules="rules" label-width="110px" :model="form">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="产线1" prop="proLineId">
<el-form-item label="产线" prop="proLineId">
<el-select
v-model="form.proLineId"
placeholder="产线"

Näytä tiedosto

@ -106,7 +106,7 @@ export default {
productionLineList: JSON.parse(localStorage.getItem('publicList'))
.proLineVoList,
regrindList: JSON.parse(localStorage.getItem('publicList')).regrindVoList,
isAllow: 1 // 123
isAllow: 1 // 12
}
},
methods: {
@ -129,27 +129,36 @@ export default {
submitForm() {
this.$refs['form'].validate((valid) => {
if (valid) {
if (this.form.id) {
unloadPalletUpdate({ ...this.form }).then((res) => {
if (res.code === 0) {
this.$message({
message: '操作成功',
type: 'success',
duration: 1500
})
this.$emit('successSubmit')
}
})
if (this.isAllow === 1) {
if (this.form.id) {
unloadPalletUpdate({ ...this.form }).then((res) => {
if (res.code === 0) {
this.$message({
message: '操作成功',
type: 'success',
duration: 1500
})
this.$emit('successSubmit')
}
})
} else {
unloadPalletAdd({ ...this.form }).then((res) => {
if (res.code === 0) {
this.$message({
message: '操作成功',
type: 'success',
duration: 1500
})
this.$emit('successSubmit')
}
})
}
} else {
unloadPalletAdd({ ...this.form }).then((res) => {
if (res.code === 0) {
this.$message({
message: '操作成功',
type: 'success',
duration: 1500
})
this.$emit('successSubmit')
}
this.$message({
message:
'玻璃架ID与目前是包装或者复投状态的玻璃架ID重复请重新编辑输入',
type: 'error',
duration: 1500
})
}
} else {
@ -158,16 +167,18 @@ export default {
})
},
formClear() {
this.isAllow = 1
this.$refs.form.resetFields()
},
checkGlassRackId() {
unloadPalletVerify(this.form.glassRackId)
.then((res) => {
console.log(res)
this.isAllow = 1
})
.catch((err) => {
console.log(err)
this.isAllow
this.isAllow = 2
})
}
}

Näytä tiedosto

@ -32,6 +32,7 @@
<base-dialog
:dialogTitle="addOrEditTitle"
:dialogVisible="centervisible"
:close-on-click-modal="false"
@cancel="handleCancel"
@confirm="handleConfirm"
:before-close="handleCancel"
@ -47,6 +48,7 @@
<base-dialog
dialogTitle="请选择上架的玻璃架工位"
:dialogVisible="centervisible2"
:close-on-click-modal="false"
@cancel="handleCancel2"
@confirm="handleConfirm2"
:before-close="handleCancel2"

Näytä tiedosto

@ -35,6 +35,12 @@
<div class="table-box" v-if="reportTitle === '厚度汇总报表'">
<glass-thick-report :tableData="thickReportArr" />
</div>
<div class="table-box" v-if="reportTitle === '终检下片包装'">
<glass-pack-report
:tableData1="packClaReportArr"
:tableData2="packReportArr"
/>
</div>
</div>
</el-col>
</el-row>
@ -47,10 +53,13 @@ import {
qualityReport,
thickReport,
qualityReportexport,
thickReportexport
thickReportexport,
queryGlassData,
claGlassData
} from '@/api/qualityManagement'
import glassQualityReport from './finalInspectionDataReport/glassQualityReport.vue'
import glassThickReport from './finalInspectionDataReport/glassThickReport.vue'
import glassPackReport from './finalInspectionDataReport/glassPackReport.vue'
import moment from 'moment'
import { timeFormatter } from '@/utils'
const tablePropsL = [
@ -73,7 +82,7 @@ const tablePropsL = [
]
export default {
name: 'FinalInspectionData',
components: { glassQualityReport, glassThickReport },
components: { glassQualityReport, glassThickReport, glassPackReport },
data() {
return {
formConfig: [
@ -142,7 +151,9 @@ export default {
},
selectArr: [], //
glassQualityArr: [], //
thickReportArr: [] //
thickReportArr: [], //
packReportArr: [], //
packClaReportArr: []
}
},
mounted() {
@ -220,6 +231,8 @@ export default {
this.reportTitle = val.value
this.glassQualityArr = []
this.thickReportArr = []
this.packReportArr = []
this.packClaReportArr = []
},
selectChange(val) {
this.selectArr = val
@ -252,6 +265,7 @@ export default {
this.getThickReport(arr)
break
default:
this.getGlassData(arr)
}
},
getGlassReport(arr) {
@ -332,6 +346,21 @@ export default {
document.body.removeChild(a)
}
})
},
//
getGlassData(arr) {
queryGlassData({
glassId: arr
}).then((res) => {
console.log(res)
this.packReportArr = res.data
})
claGlassData({
glassId: arr
}).then((res) => {
console.log(res)
this.packClaReportArr = res.data
})
}
}
}

Näytä tiedosto

@ -0,0 +1,298 @@
<template>
<div>
<base-table
:table-props="tableProps1"
:table-data="tableData1"
:max-height="tableH"
/>
<base-table
:table-props="tableProps2"
:table-data="tableData2"
:max-height="tableH"
/>
</div>
</template>
<script>
import { timeFormatter, tableHeight } from '@/utils'
const tableProps1 = [
{
prop: 'grindType',
label: '研磨类型',
minWidth: 120
},
{
prop: 'glassNum',
label: '数量',
minWidth: 160
},
{
prop: 'surfaceAvg',
label: '颗粒均值',
minWidth: 120
},
{
prop: 'surfaceMin',
label: '最小值',
minWidth: 120
},
{
prop: 'surfaceMax',
label: '最大值',
minWidth: 120
},
{
prop: 'savg',
label: 'S均值<1um',
minWidth: 120
},
{
prop: 'mavg',
label: 'M均值1-3um',
minWidth: 120
},
{
prop: 'lavg',
label: 'L均值3-5um',
minWidth: 120
},
{
prop: 'xlAvg',
label: 'XL均值5-10um',
minWidth: 120
},
{
prop: 'defectAvg',
label: '缺陷均值',
minWidth: 120
},
{
prop: 'defectMin',
label: '最小值',
minWidth: 120
},
{
prop: 'defectMax',
label: '最大值',
minWidth: 120
},
{
prop: 'blAvg',
label: '气泡均值',
minWidth: 120
},
{
prop: 'distortionAvg',
label: '变形均值',
minWidth: 120
},
{
prop: 'fiberAvg',
label: '纤维均值',
minWidth: 120
},
{
prop: 'iisrestAvg',
label: '无法识别均值',
minWidth: 120
},
{
prop: 'knotAvg',
label: '结节均值',
minWidth: 120
},
{
prop: 'ptAvg',
label: '铂金欠点均值',
minWidth: 120
},
{
prop: 'scratchAvg',
label: '划伤均值',
minWidth: 120
},
{
prop: 'stoneAvg',
label: '结石均值',
minWidth: 120
},
{
prop: 'tailAvg',
label: '拖尾均值',
minWidth: 120
},
{
prop: 'tinAvg',
label: '点状缺陷均值',
minWidth: 120
},
{
prop: 'bottomAvg',
label: '锡(锡面)均值',
minWidth: 120
},
{
prop: 'topAvg',
label: '锡(空气面)均值',
minWidth: 120
}
]
const tableProps2 = [
{
prop: 'glassId',
label: '玻璃ID',
minWidth: 120
},
{
prop: 'rackNum',
label: '包装架号',
minWidth: 120
},
{
prop: 'testTime',
label: '包装时间',
filter: timeFormatter,
minWidth: 160
},
{
prop: 'num',
label: '包装数量',
minWidth: 120
},
{
prop: 'particleSum',
label: '颗粒Sum',
minWidth: 120
},
{
prop: 's',
label: 'S<1um',
minWidth: 120
},
{
prop: 'm',
label: 'M1-3um',
minWidth: 120
},
{
prop: 'l',
label: 'L3-5um',
minWidth: 120
},
{
prop: 'xl',
label: 'XL5-10um',
minWidth: 120
},
{
prop: 'defectSum',
label: '缺陷Sum',
minWidth: 120
},
{
prop: 'bl',
label: '气泡',
minWidth: 120
},
{
prop: 'distortion',
label: '变形',
minWidth: 120
},
{
prop: 'fiber',
label: '纤维',
minWidth: 120
},
{
prop: 'iisrest',
label: '无法识别',
minWidth: 120
},
{
prop: 'knot',
label: '结节',
minWidth: 120
},
{
prop: 'pt',
label: '铂金欠点',
minWidth: 120
},
{
prop: 'scratch',
label: '划伤',
minWidth: 120
},
{
prop: 'stone',
label: '结石',
minWidth: 120
},
{
prop: 'tail',
label: '拖尾',
minWidth: 120
},
{
prop: 'tin',
label: '点状缺陷',
minWidth: 120
},
{
prop: 'bottom',
label: '锡(锡面)',
minWidth: 120
},
{
prop: 'top',
label: '锡(空气面)',
minWidth: 120
},
{
prop: 'adg',
label: 'ADG',
minWidth: 120
},
{
prop: 'allSum',
label: '合计',
minWidth: 120
},
{
prop: 'grindType',
label: '研磨类型',
minWidth: 120
}
]
export default {
name: 'glassPackReport',
data() {
return {
tableProps1,
tableProps2,
tableH: tableHeight(292)
}
},
mounted() {
window.addEventListener('resize', () => {
this.tableH = tableHeight(292)
})
},
props: {
tableData1: {
type: Array,
required: true,
default: () => {
return []
}
},
tableData2: {
type: Array,
required: true,
default: () => {
return []
}
}
}
}
</script>

Näytä tiedosto

@ -22,7 +22,12 @@
@clickBtn="handleClick"
/>
</base-table>
<pagination :limit="listQuery.size" :total="total" />
<pagination
:page.sync="listQuery.current"
:limit.sync="listQuery.size"
:total="total"
@pagination="getList()"
/>
</div>
</template>
<script>
@ -154,7 +159,6 @@ export default {
},
methods: {
getList() {
console.log('getList')
processCompleteInspetion({ ...this.listQuery }).then((res) => {
console.log(res)
if (res.code === 0 && res.data) {

Näytä tiedosto

@ -29,7 +29,32 @@
@clickBtn="handleClick"
/>
</base-table>
<pagination :limit="listQuery.size" :total="total" />
<pagination
:page.sync="listQuery.current"
:limit.sync="listQuery.size"
:total="total"
@pagination="getList()"
/>
<BaseDialog
dialogTitle="查看图片"
:dialogVisible="centervisible"
:close-on-click-modal="false"
:before-close="handleCancel"
>
<el-image
style="width: 100px; height: 100px"
src="https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg"
:preview-src-list="arr"
>
</el-image>
<el-row slot="footer" type="flex" justify="end">
<el-col :span="12">
<el-button size="small" class="btnTextStyle" @click="handleCancel"
>关闭</el-button
>
</el-col>
</el-row>
</BaseDialog>
</div>
</template>
<script>
@ -42,37 +67,33 @@ import {
import defectScatterPlotTotal from './../components/defectScatterPlotTotal.vue'
const tableProps = [
{
prop: 'virtualcode',
label: '缺陷编号'
},
{
prop: 'filetype',
prop: 'ypos',
label: 'Y轴位置(mm)'
},
{
prop: 'glassLength',
prop: 'xpos',
label: 'X轴位置(mm)'
},
{
prop: 'glassWidth',
prop: 'defectclass',
label: '缺陷尺寸等级'
},
{
prop: 'glassHeight',
prop: 'defecttype',
label: '缺陷类型'
},
{
prop: 'grade',
prop: 'length',
label: '长度(mm)'
},
{
prop: 'line',
prop: 'width',
label: '宽度(mm)'
}
]
const tableBtn = [
{
type: 'detail',
type: 'viewPic',
btnName: '查看图片'
}
]
@ -81,6 +102,9 @@ export default {
components: { defectScatterPlotTotal },
data() {
return {
arr: [
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg'
],
formConfig: [
{
type: 'select',
@ -113,14 +137,17 @@ export default {
detailObj: {},
tableProps,
tableData: [],
tableH: tableHeight(330),
tableH: tableHeight(425),
tableBtn,
total: 0,
listQuery: {
current: 1,
size: 20,
glassId: ''
}
glassId: '',
defectType: ''
},
//
centervisible: false
}
},
mounted() {
@ -128,9 +155,10 @@ export default {
this.listQuery.glassId = virtualcode
this.getDetail(virtualcode, filetype, time)
window.addEventListener('resize', () => {
this.tableH = tableHeight(330)
this.tableH = tableHeight(425)
})
this.getListType()
this.getList()
},
methods: {
getDetail(virtualcode, filetype, time) {
@ -142,7 +170,7 @@ export default {
console.log(res)
this.detailObj = res.data
this.$nextTick(() => {
this.$refs.fullInspectionDetailPlot.init()
this.$refs.fullInspectionDetailPlot.init(this.detailObj)
})
})
},
@ -151,13 +179,16 @@ export default {
size: 500,
current: 1
}).then((res) => {
console.log(res)
this.formConfig[0].selectOptions = res.data
})
},
getList() {
pageIIS({ ...this.listQuery }).then((res) => {
console.log(res)
if (res.code === 0) {
this.tableData = res.data.records
this.total = res.data.total
}
})
},
buttonClick(val) {
@ -174,8 +205,19 @@ export default {
}
},
handleClick(val) {
console.log(val)
alert('图片详情')
if (val.type === 'viewPic') {
if (val.data.defectid) {
this.centervisible = true
} else {
this.$message({
message: '暂无图片',
type: 'warning'
})
}
}
},
handleCancel() {
this.centervisible = false
}
}
}