Compare commits

...

2 Commits

Author SHA1 Message Date
b054cd476a Merge pull request '报表样式修改' (#24) from zjl into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #24
2023-06-26 16:04:13 +08:00
a11ef7da48 报表样式修改 2023-06-26 16:03:30 +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)
}) })
this.formConfig[2].defaultSelect = [ const { listQuery } = this.$route.params
moment().format('yyyy-MM-DD') + 'T00:00:00', if (listQuery) {
moment().format('yyyy-MM-DD') + 'T23:59:59' let obj = JSON.parse(listQuery)
] this.listQuery = obj
this.listQuery.startTime = moment().format('yyyy-MM-DD') + 'T00:00:00' this.formConfig[0].defaultSelect = obj.glassId
this.listQuery.endTime = moment().format('yyyy-MM-DD') + 'T23:59:59' this.formConfig[1].defaultSelect = obj.grindType
this.formConfig[2].defaultSelect = [obj.startTime, obj.endTime]
} else {
this.formConfig[2].defaultSelect = [
moment().format('yyyy-MM-DD') + 'T00:00:00',
moment().format('yyyy-MM-DD') + 'T23:59:59'
]
this.listQuery.startTime = moment().format('yyyy-MM-DD') + 'T00:00:00'
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,57 +5,65 @@
<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>
<span class="table-button" @click="generateReport">生成表格</span> <div class="split-pane left-box">
<base-table <span class="table-button" @click="generateReport">生成表格</span>
:selectWidth="40" <base-table
:table-props="tablePropsL" :selectWidth="40"
:table-data="tableDataL" :table-props="tablePropsL"
:max-height="tableHL" :table-data="tableDataL"
@selection-change="selectChange" :max-height="tableHL"
/> @selection-change="selectChange"
</div>
</el-col>
<el-col :span="15">
<div class="right-box">
<div v-if="reportTitle">
<span class="title">{{ reportTitle }}</span>
</div>
<div class="table-box" v-if="reportTitle === '玻璃基板品质报表'">
<glass-quality-report :tableData="glassQualityArr" />
</div>
<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>
<div class="table-box" v-if="reportTitle === '玻璃判废统计表'"> </template>
<glass-waste-report :tableData="wasteReportArr" /> <template #right>
<div class="split-pane right-box">
<div class="inner-box">
<div v-if="reportTitle">
<span class="title">{{ reportTitle }}</span>
</div>
<div class="table-box" v-if="reportTitle === '玻璃基板品质报表'">
<glass-quality-report :tableData="glassQualityArr" />
</div>
<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 class="table-box" v-if="reportTitle === '玻璃判废统计表'">
<glass-waste-report :tableData="wasteReportArr" />
</div>
<div class="table-box" v-if="reportTitle === '判废机组统计表'">
<waste-machine-report :tableData="wasteMachineArr" />
</div>
<div class="table-box" v-if="reportTitle === '判废位置统计表'">
<waste-location-report :tableData="wasteLocationArr" />
</div>
<div class="table-box" v-if="reportTitle === '玻璃基板缺陷报表'">
<glass-defect-report :tableData="glassDefectArr" />
</div>
<div class="table-box" v-if="reportTitle === '厚度检查机报表'">
<thickness-report :tableData="glassDefectArr" />
</div>
</div>
</div> </div>
<div class="table-box" v-if="reportTitle === '判废机组统计表'"> </template>
<waste-machine-report :tableData="wasteMachineArr" /> </split-pane>
</div> </div>
<div class="table-box" v-if="reportTitle === '判废位置统计表'">
<waste-location-report :tableData="wasteLocationArr" />
</div>
<div class="table-box" v-if="reportTitle === '玻璃基板缺陷报表'">
<glass-defect-report :tableData="glassDefectArr" />
</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;
} }