报表样式修改 #24

Merged
juzi merged 1 commits from zjl into master 2023-06-26 16:04:13 +08:00
23 changed files with 947 additions and 98 deletions

View File

@ -1 +0,0 @@
.production-report-box[data-v-7865de37]{height:calc(100vh - 203px);padding:12px 16px;margin:0 16px;border-radius:8px;background-color:#fff}

View File

@ -1 +1 @@
.glassWasteReport .el-table{display:flex;flex-direction:column}.glassWasteReport .el-table__body-wrapper{order:1}.glassWasteReport .el-table__fixed-body-wrapper{top:116px!important}.glassWasteReport .el-table__fixed-footer-wrapper{z-index:0;top:81px!important}.wasteMachineReport .el-table thead.is-group tr:first-of-type th:first-of-type{border-bottom:none}.wasteMachineReport .el-table thead.is-group tr:first-of-type th:first-of-type div.cell{text-align:right}.wasteMachineReport .el-table th.el-table__cell{height:28px}.wasteMachineReport .el-table thead.is-group tr:first-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:60px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.wasteMachineReport .el-table thead.is-group tr:last-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:80px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.wasteLocationReport .el-table thead.is-group tr:first-of-type th:first-of-type{border-bottom:none}.wasteLocationReport .el-table thead.is-group tr:first-of-type th:first-of-type div.cell{text-align:right}.wasteLocationReport .el-table th.el-table__cell{height:28px}.wasteLocationReport .el-table thead.is-group tr:first-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:48px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.wasteLocationReport .el-table thead.is-group tr:last-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:68px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.glassDefectReport .baseMsg{font-size:14px;height:40px;line-height:40px;display:flex;border:1px solid #e8e8e8;border-radius:4px;margin-bottom:20px}.glassDefectReport .baseMsg li{width:25%;text-align:center;padding:0 10px;border-right:1px solid #e8e8e8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.glassDefectReport .baseMsg li span{font-weight:600}.glassDefectReport .el-table thead.is-group tr:first-of-type th:first-of-type{border-bottom:none}.glassDefectReport .el-table thead.is-group tr:first-of-type th:first-of-type div.cell{text-align:right}.glassDefectReport .el-table th.el-table__cell{height:28px}.glassDefectReport .el-table thead.is-group tr:first-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:48px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.glassDefectReport .el-table thead.is-group tr:last-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:68px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.finalInspectionData[data-v-4f3b2616]{width:100%}.finalInspectionData .box-top[data-v-4f3b2616]{width:100%;padding:8px 16px 0}.finalInspectionData .box-top .search-box[data-v-4f3b2616]{height:62px;padding:10px 16px;box-sizing:border-box;border-radius:8px;background-color:#fff}.finalInspectionData .box[data-v-4f3b2616]{width:100%;padding:8px 8px 0 16px}.finalInspectionData .box .left-box[data-v-4f3b2616],.finalInspectionData .box .right-box[data-v-4f3b2616]{height:calc(100vh - 220px);padding:16px;border-radius:8px;background-color:#fff}.finalInspectionData .box .left-box .table-box[data-v-4f3b2616],.finalInspectionData .box .right-box .table-box[data-v-4f3b2616]{margin-top:16px;height:calc(100vh - 290px);overflow:auto}.finalInspectionData .box .left-box .table-button[data-v-4f3b2616]{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-4f3b2616]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle} .glassWasteReport .el-table{display:flex;flex-direction:column}.glassWasteReport .el-table__body-wrapper{order:1}.glassWasteReport .el-table__fixed-body-wrapper{top:116px!important}.glassWasteReport .el-table__fixed-footer-wrapper{z-index:0;top:81px!important}.wasteMachineReport .el-table thead.is-group tr:first-of-type th:first-of-type{border-bottom:none}.wasteMachineReport .el-table thead.is-group tr:first-of-type th:first-of-type div.cell{text-align:right}.wasteMachineReport .el-table th.el-table__cell{height:28px}.wasteMachineReport .el-table thead.is-group tr:first-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:60px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.wasteMachineReport .el-table thead.is-group tr:last-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:80px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.wasteLocationReport .el-table thead.is-group tr:first-of-type th:first-of-type{border-bottom:none}.wasteLocationReport .el-table thead.is-group tr:first-of-type th:first-of-type div.cell{text-align:right}.wasteLocationReport .el-table th.el-table__cell{height:28px}.wasteLocationReport .el-table thead.is-group tr:first-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:48px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.wasteLocationReport .el-table thead.is-group tr:last-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:68px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.glassDefectReport .baseMsg{font-size:14px;height:40px;line-height:40px;display:flex;border:1px solid #e8e8e8;border-radius:4px;margin-bottom:20px}.glassDefectReport .baseMsg li{width:25%;text-align:center;padding:0 10px;border-right:1px solid #e8e8e8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.glassDefectReport .baseMsg li span{font-weight:600}.glassDefectReport .el-table thead.is-group tr:first-of-type th:first-of-type{border-bottom:none}.glassDefectReport .el-table thead.is-group tr:first-of-type th:first-of-type div.cell{text-align:right}.glassDefectReport .el-table th.el-table__cell{height:28px}.glassDefectReport .el-table thead.is-group tr:first-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:48px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.glassDefectReport .el-table thead.is-group tr:last-of-type th:first-of-type:before{content:"";position:absolute;height:35px;top:0;left:68px;background-color:#ebeef5;transform:rotate(-35deg);transform-origin:top;width:1px}.thicknessReport .baseMsg{font-size:14px;height:40px;line-height:40px;display:flex;border:1px solid #e8e8e8;border-radius:4px;margin-bottom:20px}.thicknessReport .baseMsg li{width:25%;text-align:center;padding:0 10px;border-right:1px solid #e8e8e8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.thicknessReport .baseMsg li span{font-weight:600}.finalInspectionData[data-v-b9fcebd8]{width:100%}.finalInspectionData .box-top[data-v-b9fcebd8]{width:100%;padding:8px 16px 0}.finalInspectionData .box-top .search-box[data-v-b9fcebd8]{height:62px;padding:10px 16px;box-sizing:border-box;border-radius:8px;background-color:#fff}.finalInspectionData .box[data-v-b9fcebd8]{height:calc(100vh - 215px);margin:8px 16px 0 16px}.finalInspectionData .box .split-pane[data-v-b9fcebd8]{height:100%;border-radius:8px}.finalInspectionData .box .left-box[data-v-b9fcebd8]{padding:16px;background-color:#fff}.finalInspectionData .box .left-box .table-button[data-v-b9fcebd8]{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 .inner-box[data-v-b9fcebd8]{height:100%;margin-left:16px;padding:16px 16px 0;border-radius:8px;overflow:auto;background-color:#fff}.finalInspectionData .box .right-box .inner-box .table-box[data-v-b9fcebd8]{margin-top:16px;height:calc(100vh - 290px);overflow:auto}.finalInspectionData .box .right-box .title[data-v-b9fcebd8]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}

1
dist/css/7946.b9ea2f45.css vendored Normal file
View File

@ -0,0 +1 @@
.production-report-box[data-v-91f89a88]{height:calc(100vh - 145px);padding:12px 16px;margin:8px 16px;border-radius:8px;background-color:#fff}

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

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.26ea233c.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.82d493da.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/6619.63b9b495.js vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/js/7077.59191632.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/9498.46292c6f.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

169
package-lock.json generated
View File

@ -13,12 +13,14 @@
"core-js": "^3.8.3", "core-js": "^3.8.3",
"echarts": "^5.4.0", "echarts": "^5.4.0",
"element-ui": "^2.15.8", "element-ui": "^2.15.8",
"file-saver": "^2.0.5",
"js-cookie": "^3.0.1", "js-cookie": "^3.0.1",
"moment": "^2.29.4", "moment": "^2.29.4",
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"vue": "^2.6.14", "vue": "^2.6.14",
"vue-router": "^3.5.1", "vue-router": "^3.5.1",
"vuex": "^3.6.2" "vuex": "^3.6.2",
"xlsx": "^0.18.5"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.12.16", "@babel/core": "^7.12.16",
@ -3075,6 +3077,14 @@
"node": ">= 10.0.0" "node": ">= 10.0.0"
} }
}, },
"node_modules/adler-32": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz",
"integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==",
"engines": {
"node": ">=0.8"
}
},
"node_modules/ajv": { "node_modules/ajv": {
"version": "6.12.6", "version": "6.12.6",
"resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz",
@ -3754,6 +3764,18 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/cfb": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz",
"integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==",
"dependencies": {
"adler-32": "~1.3.0",
"crc-32": "~1.2.0"
},
"engines": {
"node": ">=0.8"
}
},
"node_modules/chalk": { "node_modules/chalk": {
"version": "2.4.2", "version": "2.4.2",
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
@ -4085,6 +4107,14 @@
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz", "resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz",
"integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw==" "integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw=="
}, },
"node_modules/codepage": {
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz",
"integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==",
"engines": {
"node": ">=0.8"
}
},
"node_modules/collection-visit": { "node_modules/collection-visit": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmmirror.com/collection-visit/-/collection-visit-1.0.0.tgz", "resolved": "https://registry.npmmirror.com/collection-visit/-/collection-visit-1.0.0.tgz",
@ -4370,6 +4400,17 @@
"node": ">=10" "node": ">=10"
} }
}, },
"node_modules/crc-32": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz",
"integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==",
"bin": {
"crc32": "bin/crc32.njs"
},
"engines": {
"node": ">=0.8"
}
},
"node_modules/cross-spawn": { "node_modules/cross-spawn": {
"version": "6.0.5", "version": "6.0.5",
"resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-6.0.5.tgz", "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-6.0.5.tgz",
@ -6143,6 +6184,11 @@
"node": "^10.12.0 || >=12.0.0" "node": "^10.12.0 || >=12.0.0"
} }
}, },
"node_modules/file-saver": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz",
"integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA=="
},
"node_modules/fill-range": { "node_modules/fill-range": {
"version": "7.0.1", "version": "7.0.1",
"resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz", "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
@ -6278,6 +6324,14 @@
"node": ">= 0.6" "node": ">= 0.6"
} }
}, },
"node_modules/frac": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz",
"integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==",
"engines": {
"node": ">=0.8"
}
},
"node_modules/fraction.js": { "node_modules/fraction.js": {
"version": "4.2.0", "version": "4.2.0",
"resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.2.0.tgz", "resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.2.0.tgz",
@ -10808,6 +10862,17 @@
"integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
"dev": true "dev": true
}, },
"node_modules/ssf": {
"version": "0.11.2",
"resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz",
"integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==",
"dependencies": {
"frac": "~1.1.2"
},
"engines": {
"node": ">=0.8"
}
},
"node_modules/ssri": { "node_modules/ssri": {
"version": "8.0.1", "version": "8.0.1",
"resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz", "resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz",
@ -12691,6 +12756,22 @@
"integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==",
"dev": true "dev": true
}, },
"node_modules/wmf": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wmf/-/wmf-1.0.2.tgz",
"integrity": "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==",
"engines": {
"node": ">=0.8"
}
},
"node_modules/word": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/word/-/word-0.3.0.tgz",
"integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==",
"engines": {
"node": ">=0.8"
}
},
"node_modules/word-wrap": { "node_modules/word-wrap": {
"version": "1.2.3", "version": "1.2.3",
"resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz", "resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz",
@ -12771,6 +12852,26 @@
} }
} }
}, },
"node_modules/xlsx": {
"version": "0.18.5",
"resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz",
"integrity": "sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==",
"dependencies": {
"adler-32": "~1.3.0",
"cfb": "~1.2.1",
"codepage": "~1.15.0",
"crc-32": "~1.2.1",
"ssf": "~0.11.2",
"wmf": "~1.0.1",
"word": "~0.3.0"
},
"bin": {
"xlsx": "bin/xlsx.njs"
},
"engines": {
"node": ">=0.8"
}
},
"node_modules/y18n": { "node_modules/y18n": {
"version": "5.0.8", "version": "5.0.8",
"resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz",
@ -15227,6 +15328,11 @@
"integrity": "sha512-tNEZYz5G/zYunxFm7sfhAxkXEuLj3K6BKwv6ZURlsF6yiUQ65z0Q2wZW9L5cPUl9ocofGvXOdFYbFHp0+6MOig==", "integrity": "sha512-tNEZYz5G/zYunxFm7sfhAxkXEuLj3K6BKwv6ZURlsF6yiUQ65z0Q2wZW9L5cPUl9ocofGvXOdFYbFHp0+6MOig==",
"dev": true "dev": true
}, },
"adler-32": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz",
"integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A=="
},
"ajv": { "ajv": {
"version": "6.12.6", "version": "6.12.6",
"resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz",
@ -15783,6 +15889,15 @@
"integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==",
"dev": true "dev": true
}, },
"cfb": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz",
"integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==",
"requires": {
"adler-32": "~1.3.0",
"crc-32": "~1.2.0"
}
},
"chalk": { "chalk": {
"version": "2.4.2", "version": "2.4.2",
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
@ -16046,6 +16161,11 @@
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz", "resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz",
"integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw==" "integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw=="
}, },
"codepage": {
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz",
"integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA=="
},
"collection-visit": { "collection-visit": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmmirror.com/collection-visit/-/collection-visit-1.0.0.tgz", "resolved": "https://registry.npmmirror.com/collection-visit/-/collection-visit-1.0.0.tgz",
@ -16290,6 +16410,11 @@
"yaml": "^1.10.0" "yaml": "^1.10.0"
} }
}, },
"crc-32": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz",
"integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ=="
},
"cross-spawn": { "cross-spawn": {
"version": "6.0.5", "version": "6.0.5",
"resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-6.0.5.tgz", "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-6.0.5.tgz",
@ -17685,6 +17810,11 @@
"flat-cache": "^3.0.4" "flat-cache": "^3.0.4"
} }
}, },
"file-saver": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz",
"integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA=="
},
"fill-range": { "fill-range": {
"version": "7.0.1", "version": "7.0.1",
"resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz", "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
@ -17790,6 +17920,11 @@
"integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
"dev": true "dev": true
}, },
"frac": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz",
"integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA=="
},
"fraction.js": { "fraction.js": {
"version": "4.2.0", "version": "4.2.0",
"resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.2.0.tgz", "resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.2.0.tgz",
@ -21357,6 +21492,14 @@
"integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
"dev": true "dev": true
}, },
"ssf": {
"version": "0.11.2",
"resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz",
"integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==",
"requires": {
"frac": "~1.1.2"
}
},
"ssri": { "ssri": {
"version": "8.0.1", "version": "8.0.1",
"resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz", "resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz",
@ -22861,6 +23004,16 @@
"integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==",
"dev": true "dev": true
}, },
"wmf": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wmf/-/wmf-1.0.2.tgz",
"integrity": "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw=="
},
"word": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/word/-/word-0.3.0.tgz",
"integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA=="
},
"word-wrap": { "word-wrap": {
"version": "1.2.3", "version": "1.2.3",
"resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz", "resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz",
@ -22917,6 +23070,20 @@
"dev": true, "dev": true,
"requires": {} "requires": {}
}, },
"xlsx": {
"version": "0.18.5",
"resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz",
"integrity": "sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==",
"requires": {
"adler-32": "~1.3.0",
"cfb": "~1.2.1",
"codepage": "~1.15.0",
"crc-32": "~1.2.1",
"ssf": "~0.11.2",
"wmf": "~1.0.1",
"word": "~0.3.0"
}
},
"y18n": { "y18n": {
"version": "5.0.8", "version": "5.0.8",
"resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz",

View File

@ -13,12 +13,14 @@
"core-js": "^3.8.3", "core-js": "^3.8.3",
"echarts": "^5.4.0", "echarts": "^5.4.0",
"element-ui": "^2.15.8", "element-ui": "^2.15.8",
"file-saver": "^2.0.5",
"js-cookie": "^3.0.1", "js-cookie": "^3.0.1",
"moment": "^2.29.4", "moment": "^2.29.4",
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"vue": "^2.6.14", "vue": "^2.6.14",
"vue-router": "^3.5.1", "vue-router": "^3.5.1",
"vuex": "^3.6.2" "vuex": "^3.6.2",
"xlsx": "^0.18.5"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.12.16", "@babel/core": "^7.12.16",

View File

@ -149,18 +149,26 @@ export default {
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.tableH = tableHeight(330) this.tableH = tableHeight(330)
}) })
const { listQuery } = this.$route.params
if (listQuery) {
let obj = JSON.parse(listQuery)
this.listQuery = obj
this.formConfig[0].defaultSelect = obj.glassId
this.formConfig[1].defaultSelect = obj.grindType
this.formConfig[2].defaultSelect = [obj.startTime, obj.endTime]
} else {
this.formConfig[2].defaultSelect = [ this.formConfig[2].defaultSelect = [
moment().format('yyyy-MM-DD') + 'T00:00:00', moment().format('yyyy-MM-DD') + 'T00:00:00',
moment().format('yyyy-MM-DD') + 'T23:59:59' moment().format('yyyy-MM-DD') + 'T23:59:59'
] ]
this.listQuery.startTime = moment().format('yyyy-MM-DD') + 'T00:00:00' this.listQuery.startTime = moment().format('yyyy-MM-DD') + 'T00:00:00'
this.listQuery.endTime = moment().format('yyyy-MM-DD') + 'T23:59:59' this.listQuery.endTime = moment().format('yyyy-MM-DD') + 'T23:59:59'
}
this.getList() this.getList()
}, },
methods: { methods: {
getList() { getList() {
processCompleteInspetion({ ...this.listQuery }).then((res) => { processCompleteInspetion({ ...this.listQuery }).then((res) => {
console.log(res)
if (res.code === 0 && res.data) { if (res.code === 0 && res.data) {
this.tableData = res.data.records this.tableData = res.data.records
this.total = res.data.total this.total = res.data.total
@ -207,11 +215,13 @@ export default {
console.log(val) console.log(val)
if (val.type === 'detail') { if (val.type === 'detail') {
this.$router.push({ this.$router.push({
path: '/qualityManagement/processFullInspection/fullInspectionDetail', // path: '/qualityManagement/processFullInspection/fullInspectionDetail',
query: { name: 'fullInspectionDetail',
params: {
virtualcode: val.data.virtualcode, virtualcode: val.data.virtualcode,
filetype: encodeURIComponent(val.data.filetype), filetype: encodeURIComponent(val.data.filetype),
time: val.data.time time: val.data.time,
listQuery: JSON.stringify(this.listQuery)
} }
}) })
} }

View File

@ -106,6 +106,13 @@ export default {
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg' 'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg'
], ],
formConfig: [ formConfig: [
{
type: 'input',
label: '玻璃ID',
param: 'glassId',
defaultSelect: '',
disabled: true
},
{ {
type: 'select', type: 'select',
label: '缺陷类型', label: '缺陷类型',
@ -147,12 +154,15 @@ export default {
defectType: '' defectType: ''
}, },
// //
centervisible: false centervisible: false,
beforeListQuery: ''
} }
}, },
mounted() { mounted() {
const { virtualcode, filetype, time } = this.$route.query const { virtualcode, filetype, time, listQuery } = this.$route.params
this.beforeListQuery = listQuery
this.listQuery.glassId = virtualcode this.listQuery.glassId = virtualcode
this.formConfig[0].defaultSelect = virtualcode
this.getDetail(virtualcode, filetype, time) this.getDetail(virtualcode, filetype, time)
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.tableH = tableHeight(425) this.tableH = tableHeight(425)
@ -179,7 +189,7 @@ export default {
size: 500, size: 500,
current: 1 current: 1
}).then((res) => { }).then((res) => {
this.formConfig[0].selectOptions = res.data this.formConfig[1].selectOptions = res.data
}) })
}, },
getList() { getList() {
@ -200,7 +210,11 @@ export default {
break break
default: default:
this.$router.push({ this.$router.push({
path: '/qualityManagement/processFullInspection/fullInspection' // path: '/qualityManagement/processFullInspection/fullInspection',
name: 'fullInspection',
params: {
listQuery: this.beforeListQuery
}
}) })
} }
}, },

View File

@ -5,15 +5,17 @@
<div class="search-box"> <div class="search-box">
<search-bar <search-bar
:formConfigs="formConfig" :formConfigs="formConfig"
ref="searchBarForm"
@headBtnClick="buttonClick" @headBtnClick="buttonClick"
@select-changed="selectChanged" @select-changed="selectChanged"
/> />
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="8" class="box"> <div class="box">
<el-col :span="9"> <split-pane v-model="split1">
<div class="left-box"> <template #left>
<div class="split-pane left-box">
<span class="table-button" @click="generateReport">生成表格</span> <span class="table-button" @click="generateReport">生成表格</span>
<base-table <base-table
:selectWidth="40" :selectWidth="40"
@ -23,9 +25,10 @@
@selection-change="selectChange" @selection-change="selectChange"
/> />
</div> </div>
</el-col> </template>
<el-col :span="15"> <template #right>
<div class="right-box"> <div class="split-pane right-box">
<div class="inner-box">
<div v-if="reportTitle"> <div v-if="reportTitle">
<span class="title">{{ reportTitle }}</span> <span class="title">{{ reportTitle }}</span>
</div> </div>
@ -53,9 +56,14 @@
<div class="table-box" v-if="reportTitle === '玻璃基板缺陷报表'"> <div class="table-box" v-if="reportTitle === '玻璃基板缺陷报表'">
<glass-defect-report :tableData="glassDefectArr" /> <glass-defect-report :tableData="glassDefectArr" />
</div> </div>
<div class="table-box" v-if="reportTitle === '厚度检查机报表'">
<thickness-report :tableData="glassDefectArr" />
</div>
</div>
</div>
</template>
</split-pane>
</div> </div>
</el-col>
</el-row>
</div> </div>
</template> </template>
<script> <script>
@ -76,6 +84,7 @@ import glassWasteReport from './finalInspectionDataReport/glassWasteReport.vue'
import wasteMachineReport from './finalInspectionDataReport/wasteMachineReport.vue' import wasteMachineReport from './finalInspectionDataReport/wasteMachineReport.vue'
import wasteLocationReport from './finalInspectionDataReport/wasteLocationReport.vue' import wasteLocationReport from './finalInspectionDataReport/wasteLocationReport.vue'
import glassDefectReport from './finalInspectionDataReport/glassDefectReport.vue' import glassDefectReport from './finalInspectionDataReport/glassDefectReport.vue'
import thicknessReport from './finalInspectionDataReport/thicknessReport.vue'
import moment from 'moment' import moment from 'moment'
import { timeFormatter } from '@/utils' import { timeFormatter } from '@/utils'
const tablePropsL = [ const tablePropsL = [
@ -94,6 +103,16 @@ const tablePropsL = [
prop: 'grindtype', prop: 'grindtype',
label: '研磨类型', label: '研磨类型',
minWidth: 80 minWidth: 80
},
{
prop: 'rackId',
label: '玻璃架',
minWidth: 80
},
{
prop: 'glassNum',
label: '数量',
minWidth: 80
} }
] ]
export default { export default {
@ -105,11 +124,31 @@ export default {
glassWasteReport, glassWasteReport,
wasteMachineReport, wasteMachineReport,
wasteLocationReport, wasteLocationReport,
glassDefectReport glassDefectReport,
thicknessReport
}, },
data() { data() {
return { return {
split1: 0.3,
formConfig: [ formConfig: [
{
type: 'select',
label: '报表类型',
selectOptions: [
{ id: '玻璃基板品质报表', name: '玻璃基板品质报表' },
{ id: '终检下片包装', name: '终检下片包装' },
{ id: '厚度汇总报表', name: '厚度汇总报表' },
{ id: '玻璃判废统计表', name: '玻璃判废统计表' },
{ id: '判废机组统计表', name: '判废机组统计表' },
{ id: '判废位置统计表', name: '判废位置统计表' },
{ id: '玻璃基板缺陷报表', name: '玻璃基板缺陷报表' },
{ id: '厚度检查机报表', name: '厚度检查机报表' }
],
param: 'fullInspectionType',
defaultSelect: '',
onchange: true,
width: 150
},
{ {
type: 'datePicker', type: 'datePicker',
label: '检验时间', label: '检验时间',
@ -133,21 +172,21 @@ export default {
clearable: false clearable: false
}, },
{ {
type: 'select', type: '',
label: '报表类型', label: '',
selectOptions: [ selectOptions: [
{ id: '玻璃基板品质报表', name: '玻璃基板品质报表' }, { id: '1', name: '1' },
{ id: '终检下片包装', name: '终检下片包装' }, { id: '2', name: '2' },
{ id: '厚度汇总报表', name: '厚度汇总报表' }, { id: '3', name: '3' },
{ id: '玻璃判废统计表', name: '玻璃判废统计表' }, { id: '4', name: '4' },
{ id: '判废机组统计表', name: '判废机组统计表' }, { id: '5', name: '5' },
{ id: '判废位置统计表', name: '判废位置统计表' }, { id: '6', name: '6' },
{ id: '玻璃基板缺陷报表', name: '玻璃基板缺陷报表' } { id: '全部', name: '全部' }
], ],
param: 'fullInspectionType1', param: 'glassFrame1',
defaultSelect: '', defaultSelect: '全部',
onchange: true, width: 150,
width: 150 clearable: false
}, },
{ {
type: 'button', type: 'button',
@ -205,7 +244,7 @@ export default {
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.tableHL = tableHeight(300) this.tableHL = tableHeight(300)
}) })
this.formConfig[0].defaultSelect = [ this.formConfig[1].defaultSelect = [
moment().format('yyyy-MM-DD') + 'T00:00:00', moment().format('yyyy-MM-DD') + 'T00:00:00',
moment().format('yyyy-MM-DD') + 'T23:59:59' moment().format('yyyy-MM-DD') + 'T23:59:59'
] ]
@ -233,7 +272,7 @@ export default {
name: item.dataName name: item.dataName
})) }))
newArr.push({ id: '全部', name: '全部' }, { id: '废片', name: '废片' }) newArr.push({ id: '全部', name: '全部' }, { id: '废片', name: '废片' })
this.formConfig[1].selectOptions = newArr this.formConfig[2].selectOptions = newArr
console.log(newArr) console.log(newArr)
}, },
buttonClick(val) { buttonClick(val) {
@ -272,11 +311,24 @@ export default {
} }
}, },
selectChanged(val) { selectChanged(val) {
//
this.reportTitle = val.value this.reportTitle = val.value
this.glassQualityArr = [] this.glassQualityArr = []
this.thickReportArr = [] this.thickReportArr = []
this.packReportArr = [] this.packReportArr = []
this.packClaReportArr = [] this.packClaReportArr = []
console.log(val)
if (val.value === '判废位置统计表') {
this.formConfig[3].type = 'select'
this.formConfig[3].label = '研磨类型'
} else {
this.formConfig[3].type = ''
this.formConfig[3].label = ''
}
this.formConfig[1].defaultSelect =
this.$refs.searchBarForm.formInline.timeVal
this.formConfig[2].defaultSelect =
this.$refs.searchBarForm.formInline.glassFrame
}, },
selectChange(val) { selectChange(val) {
this.selectArr = val this.selectArr = val
@ -424,21 +476,15 @@ export default {
} }
} }
.box { .box {
width: 100%; height: calc(100vh - 215px);
padding: 8px 8px 0 16px; margin: 8px 16px 0 16px;
.left-box, .split-pane {
.right-box { height: 100%;
height: calc(100vh - 220px);
padding: 16px;
border-radius: 8px; border-radius: 8px;
background-color: #fff;
.table-box {
margin-top: 16px;
height: calc(100vh - 290px);
overflow: auto;
}
} }
.left-box { .left-box {
padding: 16px;
background-color: #fff;
.table-button { .table-button {
display: inline-block; display: inline-block;
height: 30px; height: 30px;
@ -454,6 +500,19 @@ export default {
} }
} }
.right-box { .right-box {
.inner-box {
height: 100%;
margin-left: 16px;
padding: 16px 16px 0;
border-radius: 8px;
overflow: auto;
background-color: #fff;
.table-box {
margin-top: 16px;
height: calc(100vh - 290px);
overflow: auto;
}
}
.title::before { .title::before {
content: ''; content: '';
display: inline-block; display: inline-block;

View File

@ -43,6 +43,10 @@ const tableProps = [
prop: 'sums', prop: 'sums',
label: '颗粒总数' label: '颗粒总数'
}, },
{
prop: 'tin',
label: '点状缺陷'
},
{ {
prop: 'distortion', prop: 'distortion',
label: '变形' label: '变形'

View File

@ -0,0 +1,396 @@
<template>
<div class="thicknessReport">
<ul class="baseMsg">
<li><span>厚度检查机报表(此表接口还未调试)</span></li>
<li :title="glassId"><span>玻璃ID:</span>{{ glassId }}</li>
<li><span>检测时间:</span>2022.12.24 14:45:34</li>
<li><span>研磨类型:</span>4ABC</li>
</ul>
<base-table
:table-props="tableProps"
:table-data="tableDD"
:max-height="tableH"
:show-header="false"
/>
</div>
</template>
<script>
import { tableHeight } from '@/utils'
let tableProps = []
for (let j = 0; j < 21; j++) {
let obj = {}
obj.prop = 'a' + (j + 1)
obj.label = 'a' + (j + 1)
obj.minWidth = 75
tableProps.push(obj)
}
export default {
name: 'thickReport',
data() {
return {
tableProps,
tableH: tableHeight(292),
exportDD: [],
tableDD: [],
glassId: ''
}
},
mounted() {
window.addEventListener('resize', () => {
this.tableH = tableHeight(292)
})
this.getList()
},
props: {
tableData: {
type: Array,
required: true,
default: () => {
return []
}
}
},
methods: {
getList() {
let exportD = Array(7)
.fill()
.map(() => Array(21))
let tableD = []
for (let j = 0; j < 7; j++) {
let obj = {
a1: '',
a2: '',
a3: '',
a4: '',
a5: '',
a6: '',
a7: '',
a8: '',
a9: '',
a10: '',
a11: '',
a12: '',
a13: '',
a14: '',
a15: '',
a16: '',
a17: '',
a18: '',
a19: '',
a20: '',
a21: ''
}
tableD.push(obj)
}
let mockData = [
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
},
{
glassId: '1212121212',
testTime: '2022-06-24T16:59:55',
grindType: '2AB',
thickOne: '502.457',
thickTwo: '503.226',
thickThree: '503.203',
thickFour: '502.220',
thickFive: '503.411',
thickSix: '500.904',
thickSeven: '499.810'
}
]
this.glassId = mockData[0].glassId
exportD.unshift(Array.from({ length: 21 }, () => null))
exportD[0][0] = '厚度检查机报表'
exportD[0][6] = '玻璃ID:'
exportD[0][8] = mockData[0].glassId
exportD[0][11] = '检测时间:'
exportD[0][13] = mockData[0].testTime
exportD[0][16] = '研磨类型:'
exportD[0][18] = mockData[0].grindType
for (let i = 0; i < mockData.length; i++) {
exportD[1][i] = mockData[i].thickOne
exportD[2][i] = mockData[i].thickTwo
exportD[3][i] = mockData[i].thickThree
exportD[4][i] = mockData[i].thickFour
exportD[5][i] = mockData[i].thickFive
exportD[6][i] = mockData[i].thickSix
exportD[7][i] = mockData[i].thickSeven
tableD[0]['a' + (i + 1)] = mockData[i].thickOne
tableD[1]['a' + (i + 1)] = mockData[i].thickTwo
tableD[2]['a' + (i + 1)] = mockData[i].thickThree
tableD[3]['a' + (i + 1)] = mockData[i].thickFour
tableD[4]['a' + (i + 1)] = mockData[i].thickFive
tableD[5]['a' + (i + 1)] = mockData[i].thickSix
tableD[6]['a' + (i + 1)] = mockData[i].thickSeven
}
console.log(exportD)
console.log(tableD)
this.exportDD = exportD
this.tableDD = tableD
}
}
}
</script>
<style lang="scss">
.thicknessReport {
.baseMsg {
font-size: 14px;
height: 40px;
line-height: 40px;
display: flex;
border: 1px solid #e8e8e8;
border-radius: 4px;
margin-bottom: 20px;
li {
width: 25%;
text-align: center;
padding: 0 10px;
border-right: 1px solid #e8e8e8;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
span {
font-weight: 600;
}
}
}
}
</style>

View File

@ -5,10 +5,13 @@
:table-data="tableData" :table-data="tableData"
:max-height="tableH" :max-height="tableH"
/> />
<button @click="exportD">导出,开发自测用后续会删除</button>
</div> </div>
</template> </template>
<script> <script>
import { tableHeight } from '@/utils' import { tableHeight } from '@/utils'
import * as XLSX from 'xlsx/xlsx.mjs'
import FileSaver from 'file-saver'
const tableProps = [ const tableProps = [
{ {
label: '研磨机组', label: '研磨机组',
@ -54,7 +57,170 @@ export default {
data() { data() {
return { return {
tableProps, tableProps,
tableH: tableHeight(292) tableH: tableHeight(292),
tData: [
[
'厚度检查机报表',
null,
null,
null,
null,
null,
'玻璃ID:',
null,
'132334530057',
null,
null,
'检测时间',
null,
'2023/5/12 12:01:16',
null,
null,
'研磨类型',
null,
'4ABC',
null,
null
],
[
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443'
],
[
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443'
],
[
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443'
],
[
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443'
],
[
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443'
],
[
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443',
'494.105',
'498.234',
'345.654',
'345.654',
'234.567',
'234.567',
'556.443'
]
]
} }
}, },
mounted() { mounted() {
@ -70,6 +236,36 @@ export default {
return [] return []
} }
} }
},
methods: {
exportD() {
// debugger
const filename = '厚度表.xlsx'
const ws_name = 'Sheet1'
const wb = XLSX.utils.book_new()
const ws = XLSX.utils.aoa_to_sheet(this.tData)
XLSX.utils.book_append_sheet(wb, ws, ws_name)
ws['!merges'] = [
{ s: { r: 0, c: 0 }, e: { r: 0, c: 5 } },
{ s: { r: 0, c: 6 }, e: { r: 0, c: 7 } },
{ s: { r: 0, c: 8 }, e: { r: 0, c: 10 } },
{ s: { r: 0, c: 11 }, e: { r: 0, c: 12 } },
{ s: { r: 0, c: 13 }, e: { r: 0, c: 15 } },
{ s: { r: 0, c: 16 }, e: { r: 0, c: 17 } },
{ s: { r: 0, c: 18 }, e: { r: 0, c: 20 } }
]
let wbout = XLSX.write(wb, {
bookType: 'xlsx',
bookSST: false,
type: 'array'
})
FileSaver.saveAs(
new Blob([wbout], {
type: 'application/octet-stream'
}),
filename
)
}
} }
} }
</script> </script>

View File

@ -554,9 +554,9 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.production-report-box { .production-report-box {
height: calc(100vh - 203px); height: calc(100vh - 145px);
padding: 12px 16px; padding: 12px 16px;
margin: 0px 16px; margin: 8px 16px;
border-radius: 8px; border-radius: 8px;
background-color: #fff; background-color: #fff;
} }