#29 zjl

Обединени
juzi обедини 2 ревизии от zjl във master преди 1 година
  1. +0
    -1
      dist/css/2407.1f6aa78f.css
  2. +1
    -0
      dist/css/2873.f6a9fc48.css
  3. +1
    -1
      dist/css/4332.1f231379.css
  4. +0
    -0
      dist/css/4867.c89c63ba.css
  5. +1
    -1
      dist/css/777.85ee10e9.css
  6. +0
    -1
      dist/css/7946.b9ea2f45.css
  7. +1
    -1
      dist/css/app.eea12e50.css
  8. +1
    -0
      dist/css/chunk-vendors.330963ff.css
  9. +4
    -0
      dist/img/iconfont.a13d3be1.svg
  10. +1
    -1
      dist/index.html
  11. +0
    -1
      dist/js/1509.92e10c7c.js
  12. +0
    -1
      dist/js/2407.726f1a94.js
  13. +0
    -2
      dist/js/2629.fbf5892f.js
  14. +1
    -0
      dist/js/2873.59a351a5.js
  15. +0
    -1
      dist/js/3167.ef670731.js
  16. +1
    -0
      dist/js/4332.c5cf652d.js
  17. +2
    -0
      dist/js/4867.bb11ac94.js
  18. +1
    -1
      dist/js/5748.f061a26b.js
  19. +1
    -0
      dist/js/6015.c6917d38.js
  20. +0
    -1
      dist/js/6015.e0415dee.js
  21. +1
    -0
      dist/js/777.46088f37.js
  22. +1
    -0
      dist/js/7789.e0aebf36.js
  23. +0
    -1
      dist/js/7946.40e5c4bb.js
  24. +1
    -1
      dist/js/9707.fb92bd08.js
  25. +1
    -0
      dist/js/app.11e7f529.js
  26. +0
    -1
      dist/js/app.a130481f.js
  27. +312
    -0
      dist/js/chunk-vendors.60a1a666.js
  28. +0
    -312
      dist/js/chunk-vendors.a42f8636.js
  29. +7
    -7
      package-lock.json
  30. +1
    -1
      package.json
  31. +17
    -0
      src/api/reportManagement.js
  32. +0
    -188
      src/views/basicConfig/reportManagement1/reportClassification.vue
  33. +0
    -36
      src/views/basicConfig/reportManagement1/reportDesign.vue
  34. +0
    -149
      src/views/basicConfig/reportManagement1/reportList.vue
  35. +0
    -271
      src/views/basicConfig/reportManagement1/reportListDetail.vue
  36. +0
    -36
      src/views/basicConfig/reportManagement1/reportView.vue
  37. +30
    -10
      src/views/home/components/Product.vue
  38. +1
    -1
      src/views/productionScheduling/components/WorkOrderProgressDetails.vue
  39. +1
    -12
      src/views/productionScheduling/workOrderManagement.vue
  40. +8
    -6
      src/views/reportManagement/components/TableTags.vue
  41. +8
    -8
      src/views/reportManagement/finalInspectionDataReport/glassPackReport.vue
  42. +294
    -433
      src/views/reportManagement/productionReport.vue

+ 0
- 1
dist/css/2407.1f6aa78f.css Целия файл

@@ -1 +0,0 @@
@media screen and (max-width:2104px){.searchStyle[data-v-018c1e50]{width:1000px}}@media screen and (min-width:2105px){.searchStyle[data-v-018c1e50]{width:100%}}

+ 1
- 0
dist/css/2873.f6a9fc48.css Целия файл

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

dist/css/1509.e33f4b04.css → dist/css/4332.1f231379.css Целия файл

@@ -1 +1 @@
.order-detail .title[data-v-4ae8e0c5]{padding:24px;display:inline-block}.order-detail .title[data-v-4ae8e0c5]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}.order-detail .detail-box[data-v-4ae8e0c5]{padding:0 16px}.order-detail .detail-box .column-box .box[data-v-4ae8e0c5]{height:calc(25vh - 60px);padding-top:calc(7.5vh - 18px);padding-left:30px;border-bottom:1px solid #e8e8e8}.order-detail .detail-box .column-box .box .tip-value[data-v-4ae8e0c5]{display:block;font-size:22px;height:18px;margin-bottom:12px}.order-detail .detail-box .column-box .box .tip[data-v-4ae8e0c5]{display:inline-block;font-size:16px;background-color:#cae2ff;border-radius:2px;color:#288aff;padding:4px}.order-detail .detail-box .column-box .clear-border[data-v-4ae8e0c5]{border:none}.order-detail .detail-box .border-right[data-v-4ae8e0c5]{border-right:1px solid #e8e8e8}.main-box[data-v-7e4304c8]{margin-top:8px;padding:0 8px}.main-box .title[data-v-7e4304c8]{display:inline-block}.main-box .title[data-v-7e4304c8]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}.main-box .box[data-v-7e4304c8]{width:100%}.main-box .box .left-top[data-v-7e4304c8]{height:275px;margin-bottom:8px}.main-box .box .left-top .top-title[data-v-7e4304c8]{padding:16px 16px 20px}.main-box .box .left-top .titleStyle[data-v-7e4304c8]{font-size:16px;font-weight:600;color:rgba(0,0,0,.9);vertical-align:top}.main-box .box .left-top .line-order-msg[data-v-7e4304c8]{padding-left:24px;padding-right:24px;width:100%}.main-box .box .left-top .line-order-msg .plan_num[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num[data-v-7e4304c8]{height:118px;width:100%;border-radius:8px}.main-box .box .left-top .line-order-msg .plan_num .left-icon[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num .left-icon[data-v-7e4304c8]{text-align:center;margin-top:34px}.main-box .box .left-top .line-order-msg .plan_num .num[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num .num[data-v-7e4304c8]{font-size:32px;color:rgba(0,0,0,.85);margin-top:28px}.main-box .box .left-top .line-order-msg .plan_num .words[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num .words[data-v-7e4304c8]{font-size:18px;color:rgba(0,0,0,.65)}.main-box .box .left-top .line-order-msg .plan_num[data-v-7e4304c8]{background:#fff8e8}.main-box .box .left-top .line-order-msg .plan_num .left-icon[data-v-7e4304c8]{border-right:1px solid #ff9d50}.main-box .box .left-top .line-order-msg .product_num[data-v-7e4304c8]{background:#e3ffeb}.main-box .box .left-top .line-order-msg .product_num .left-icon[data-v-7e4304c8]{border-right:1px solid #50d277}.main-box .box .left-bottom[data-v-7e4304c8],.main-box .box .left-top[data-v-7e4304c8]{background-color:#fff;border-radius:8px}.main-box .box .left-bottom[data-v-7e4304c8]{height:calc(100vh - 439px);padding:24px 24px 0 24px}.main-box .box .right[data-v-7e4304c8]{height:calc(100vh - 156px);background-color:#fff;border-radius:8px}
.order-detail .title[data-v-1be9dfe2]{padding:24px;display:inline-block}.order-detail .title[data-v-1be9dfe2]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}.order-detail .detail-box[data-v-1be9dfe2]{padding:0 16px}.order-detail .detail-box .column-box .box[data-v-1be9dfe2]{height:calc(25vh - 60px);padding-top:calc(7.5vh - 18px);padding-left:30px;border-bottom:1px solid #e8e8e8}.order-detail .detail-box .column-box .box .tip-value[data-v-1be9dfe2]{display:block;font-size:22px;height:18px;margin-bottom:12px}.order-detail .detail-box .column-box .box .tip[data-v-1be9dfe2]{display:inline-block;font-size:16px;background-color:#cae2ff;border-radius:2px;color:#288aff;padding:4px}.order-detail .detail-box .column-box .clear-border[data-v-1be9dfe2]{border:none}.order-detail .detail-box .border-right[data-v-1be9dfe2]{border-right:1px solid #e8e8e8}.main-box[data-v-7e4304c8]{margin-top:8px;padding:0 8px}.main-box .title[data-v-7e4304c8]{display:inline-block}.main-box .title[data-v-7e4304c8]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}.main-box .box[data-v-7e4304c8]{width:100%}.main-box .box .left-top[data-v-7e4304c8]{height:275px;margin-bottom:8px}.main-box .box .left-top .top-title[data-v-7e4304c8]{padding:16px 16px 20px}.main-box .box .left-top .titleStyle[data-v-7e4304c8]{font-size:16px;font-weight:600;color:rgba(0,0,0,.9);vertical-align:top}.main-box .box .left-top .line-order-msg[data-v-7e4304c8]{padding-left:24px;padding-right:24px;width:100%}.main-box .box .left-top .line-order-msg .plan_num[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num[data-v-7e4304c8]{height:118px;width:100%;border-radius:8px}.main-box .box .left-top .line-order-msg .plan_num .left-icon[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num .left-icon[data-v-7e4304c8]{text-align:center;margin-top:34px}.main-box .box .left-top .line-order-msg .plan_num .num[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num .num[data-v-7e4304c8]{font-size:32px;color:rgba(0,0,0,.85);margin-top:28px}.main-box .box .left-top .line-order-msg .plan_num .words[data-v-7e4304c8],.main-box .box .left-top .line-order-msg .product_num .words[data-v-7e4304c8]{font-size:18px;color:rgba(0,0,0,.65)}.main-box .box .left-top .line-order-msg .plan_num[data-v-7e4304c8]{background:#fff8e8}.main-box .box .left-top .line-order-msg .plan_num .left-icon[data-v-7e4304c8]{border-right:1px solid #ff9d50}.main-box .box .left-top .line-order-msg .product_num[data-v-7e4304c8]{background:#e3ffeb}.main-box .box .left-top .line-order-msg .product_num .left-icon[data-v-7e4304c8]{border-right:1px solid #50d277}.main-box .box .left-bottom[data-v-7e4304c8],.main-box .box .left-top[data-v-7e4304c8]{background-color:#fff;border-radius:8px}.main-box .box .left-bottom[data-v-7e4304c8]{height:calc(100vh - 439px);padding:24px 24px 0 24px}.main-box .box .right[data-v-7e4304c8]{height:calc(100vh - 156px);background-color:#fff;border-radius:8px}

dist/css/2629.c89c63ba.css → dist/css/4867.c89c63ba.css Целия файл


dist/css/3167.3ac910ee.css → dist/css/777.85ee10e9.css Целия файл

@@ -1 +1 @@
.home_module_title[data-v-632946fd]{padding:16px 16px 0}.home_module_title .iconStyle[data-v-632946fd]{margin-right:8px}.home_module_title .titleStyle[data-v-632946fd]{font-weight:600;color:rgba(0,0,0,.9);vertical-align:top}.capacity_box[data-v-4d0dc5dc],.material_box[data-v-7e600a8c]{padding:12px 23px 0}.device_alarm[data-v-8c9c62bc]{display:flex;flex-flow:row wrap}.device_alarm .alarm_item[data-v-8c9c62bc]{width:20%;border-right:1px solid #ccc;border-bottom:1px solid #ccc}.device_alarm .alarm_item .alarm_tip[data-v-8c9c62bc]{color:#000}.device_alarm .alarm_item .alarm_tip .alarm_num[data-v-8c9c62bc]{display:inline-block;color:#fff;margin-left:4px;padding:1px 4px;border-radius:4px}.device_alarm .alarm_item .alarm_tip .class_red[data-v-8c9c62bc]{background:#f55;box-shadow:0 2px 5px 0 hsla(0,97%,71%,.6)}.device_alarm .alarm_item .alarm_tip .class_green[data-v-8c9c62bc]{background:#50d277;box-shadow:0 2px 5px 0 rgba(80,210,119,.6)}.device_alarm .alarm_item .icon-style[data-v-8c9c62bc]{margin:8px 5px 0 0;vertical-align:middle}.device_alarm .alarm_item .alarm_yellow[data-v-8c9c62bc]{color:#ffb750}.device_alarm .alarm_item .alarm_grey[data-v-8c9c62bc]{color:#aaa}.device_alarm .alarm_item .alarm_green[data-v-8c9c62bc]{color:#50d277}.device_alarm .alarm_item .sub_name[data-v-8c9c62bc]{vertical-align:middle;color:#000;opacity:.55}.device_alarm .alarm_item .special_item[data-v-8c9c62bc]{position:relative}.device_alarm .alarm_item .model_style[data-v-8c9c62bc]{display:none;color:#454545;padding:2px;background:#f2f4f9;border-radius:2px;vertical-align:middle}.device_alarm .alarm_item .model_style .separate_color[data-v-8c9c62bc]{color:#dcdfe6}.device_alarm .alarm_item .model_style2[data-v-8c9c62bc]{position:absolute;top:5px;line-height:10px}.device_alarm .alarm_item .model_style2 p[data-v-8c9c62bc]:after{content:"";display:inline-block;height:1px;width:100%;position:relative;top:-3px;background-color:#dcdfe6;margin-left:2px}.device_alarm .alarm_item:hover .model_style[data-v-8c9c62bc]{display:inline-block}.device_alarm[data-v-8c9c62bc] :nth-child(10),.device_alarm[data-v-8c9c62bc] :nth-child(15),.device_alarm[data-v-8c9c62bc] :nth-child(5){border-right:0}.device_alarm[data-v-8c9c62bc] :nth-child(16),.device_alarm[data-v-8c9c62bc] :nth-child(17),.device_alarm[data-v-8c9c62bc] :nth-child(18),.device_alarm[data-v-8c9c62bc] :nth-child(19){border-bottom:0}.device_alarm[data-v-8c9c62bc] :last-child{border-right:0;border-bottom:0}.home_progress .el-progress-bar__inner{background:linear-gradient(270deg,#4bc4ff,#0b58ff)}.product_area[data-v-916c3c62]{display:flex}.product_area .box_left[data-v-916c3c62],.product_area .box_right[data-v-916c3c62]{width:50%;height:calc(50vh - 154px)}.product_area .box_left .title[data-v-916c3c62],.product_area .box_right .title[data-v-916c3c62]{color:#000}.product_area .box_left .title[data-v-916c3c62] :first-child,.product_area .box_right .title[data-v-916c3c62] :first-child{margin-right:24px}.product_area .box_left .title[data-v-916c3c62]:before,.product_area .box_right .title[data-v-916c3c62]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}.product_area .box_left[data-v-916c3c62]{border-right:1px solid #dcdfe6;padding-right:18px}.product_area .box_left .plan_num[data-v-916c3c62],.product_area .box_left .product_num[data-v-916c3c62]{width:100%;border-radius:8px}.product_area .box_left .plan_num .num[data-v-916c3c62],.product_area .box_left .product_num .num[data-v-916c3c62]{color:rgba(0,0,0,.85)}.product_area .box_left .plan_num .words[data-v-916c3c62],.product_area .box_left .product_num .words[data-v-916c3c62]{font-size:14px;color:rgba(0,0,0,.45)}.product_area .box_left .plan_num[data-v-916c3c62]{background:#fff8e8}.product_area .box_left .product_num[data-v-916c3c62]{background:#e3ffeb}.product_area .progress_box[data-v-916c3c62]{color:#000}.product_area .progress_box .blue_color[data-v-916c3c62]{color:#0d5bff;float:right;margin-bottom:8px}.home-container .title-bar[data-v-2d39b76b]{height:52px;background-color:#fff}.home-container .title-bar .tip[data-v-2d39b76b]{font-size:18px;font-weight:600;color:#000;display:inline-block;margin:10px 20px 0 32px}.home-container .kanban-container[data-v-2d39b76b]{padding:8px 16px}.home-container .kanban-container .area1[data-v-2d39b76b],.home-container .kanban-container .area2[data-v-2d39b76b],.home-container .kanban-container .area3[data-v-2d39b76b],.home-container .kanban-container .area4[data-v-2d39b76b]{height:calc(50vh - 84px);border-radius:4px;background-color:#fff}.home-container .kanban-container .area1[data-v-2d39b76b],.home-container .kanban-container .area2[data-v-2d39b76b]{margin-bottom:8px;overflow:scroll}
.home_module_title[data-v-632946fd]{padding:16px 16px 0}.home_module_title .iconStyle[data-v-632946fd]{margin-right:8px}.home_module_title .titleStyle[data-v-632946fd]{font-weight:600;color:rgba(0,0,0,.9);vertical-align:top}.capacity_box[data-v-4d0dc5dc],.material_box[data-v-7e600a8c]{padding:12px 23px 0}.device_alarm[data-v-8c9c62bc]{display:flex;flex-flow:row wrap}.device_alarm .alarm_item[data-v-8c9c62bc]{width:20%;border-right:1px solid #ccc;border-bottom:1px solid #ccc}.device_alarm .alarm_item .alarm_tip[data-v-8c9c62bc]{color:#000}.device_alarm .alarm_item .alarm_tip .alarm_num[data-v-8c9c62bc]{display:inline-block;color:#fff;margin-left:4px;padding:1px 4px;border-radius:4px}.device_alarm .alarm_item .alarm_tip .class_red[data-v-8c9c62bc]{background:#f55;box-shadow:0 2px 5px 0 hsla(0,97%,71%,.6)}.device_alarm .alarm_item .alarm_tip .class_green[data-v-8c9c62bc]{background:#50d277;box-shadow:0 2px 5px 0 rgba(80,210,119,.6)}.device_alarm .alarm_item .icon-style[data-v-8c9c62bc]{margin:8px 5px 0 0;vertical-align:middle}.device_alarm .alarm_item .alarm_yellow[data-v-8c9c62bc]{color:#ffb750}.device_alarm .alarm_item .alarm_grey[data-v-8c9c62bc]{color:#aaa}.device_alarm .alarm_item .alarm_green[data-v-8c9c62bc]{color:#50d277}.device_alarm .alarm_item .sub_name[data-v-8c9c62bc]{vertical-align:middle;color:#000;opacity:.55}.device_alarm .alarm_item .special_item[data-v-8c9c62bc]{position:relative}.device_alarm .alarm_item .model_style[data-v-8c9c62bc]{display:none;color:#454545;padding:2px;background:#f2f4f9;border-radius:2px;vertical-align:middle}.device_alarm .alarm_item .model_style .separate_color[data-v-8c9c62bc]{color:#dcdfe6}.device_alarm .alarm_item .model_style2[data-v-8c9c62bc]{position:absolute;top:5px;line-height:10px}.device_alarm .alarm_item .model_style2 p[data-v-8c9c62bc]:after{content:"";display:inline-block;height:1px;width:100%;position:relative;top:-3px;background-color:#dcdfe6;margin-left:2px}.device_alarm .alarm_item:hover .model_style[data-v-8c9c62bc]{display:inline-block}.device_alarm[data-v-8c9c62bc] :nth-child(10),.device_alarm[data-v-8c9c62bc] :nth-child(15),.device_alarm[data-v-8c9c62bc] :nth-child(5){border-right:0}.device_alarm[data-v-8c9c62bc] :nth-child(16),.device_alarm[data-v-8c9c62bc] :nth-child(17),.device_alarm[data-v-8c9c62bc] :nth-child(18),.device_alarm[data-v-8c9c62bc] :nth-child(19){border-bottom:0}.device_alarm[data-v-8c9c62bc] :last-child{border-right:0;border-bottom:0}.home_progress .el-progress-bar__inner{background:linear-gradient(270deg,#4bc4ff,#0b58ff)}.product_area[data-v-a99e4070]{display:flex}.product_area .box_left[data-v-a99e4070],.product_area .box_right[data-v-a99e4070]{width:50%;height:calc(50vh - 154px)}.product_area .box_left .title[data-v-a99e4070],.product_area .box_right .title[data-v-a99e4070]{color:#000}.product_area .box_left .title[data-v-a99e4070] :first-child,.product_area .box_right .title[data-v-a99e4070] :first-child{margin-right:24px}.product_area .box_left .title[data-v-a99e4070]:before,.product_area .box_right .title[data-v-a99e4070]:before{content:"";display:inline-block;width:4px;height:16px;background:#0b58ff;border-radius:1px;margin-right:8px;vertical-align:middle}.product_area .box_left[data-v-a99e4070]{border-right:1px solid #dcdfe6;padding-right:18px}.product_area .box_left .plan_num[data-v-a99e4070],.product_area .box_left .product_num[data-v-a99e4070]{width:100%;border-radius:8px}.product_area .box_left .plan_num .num[data-v-a99e4070],.product_area .box_left .product_num .num[data-v-a99e4070]{color:rgba(0,0,0,.85)}.product_area .box_left .plan_num .words[data-v-a99e4070],.product_area .box_left .product_num .words[data-v-a99e4070]{font-size:14px;color:rgba(0,0,0,.45)}.product_area .box_left .plan_num[data-v-a99e4070]{background:#fff8e8}.product_area .box_left .product_num[data-v-a99e4070]{background:#e3ffeb}.product_area .progress_box[data-v-a99e4070]{color:#000}.product_area .progress_box .blue_color[data-v-a99e4070]{color:#0d5bff;float:right;margin-bottom:8px}.home-container .title-bar[data-v-2d39b76b]{height:52px;background-color:#fff}.home-container .title-bar .tip[data-v-2d39b76b]{font-size:18px;font-weight:600;color:#000;display:inline-block;margin:10px 20px 0 32px}.home-container .kanban-container[data-v-2d39b76b]{padding:8px 16px}.home-container .kanban-container .area1[data-v-2d39b76b],.home-container .kanban-container .area2[data-v-2d39b76b],.home-container .kanban-container .area3[data-v-2d39b76b],.home-container .kanban-container .area4[data-v-2d39b76b]{height:calc(50vh - 84px);border-radius:4px;background-color:#fff}.home-container .kanban-container .area1[data-v-2d39b76b],.home-container .kanban-container .area2[data-v-2d39b76b]{margin-bottom:8px;overflow:scroll}

+ 0
- 1
dist/css/7946.b9ea2f45.css Целия файл

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

dist/css/app.eea12e50.css
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 1
- 0
dist/css/chunk-vendors.330963ff.css
Файловите разлики са ограничени, защото са твърде много
Целия файл


dist/img/iconfont.b7b2a1fb.svg → dist/img/iconfont.a13d3be1.svg Целия файл

@@ -14,6 +14,10 @@
/>
<missing-glyph />
<glyph glyph-name="downward" unicode="&#58884;" d="M556.942222 144.099556l363.064889 401.806222c24.860444 21.617778 24.860444 56.263111 0 77.880889a68.437333 68.437333 0 0 1-44.942222 16.156444c-16.896 0-33.052444-5.859556-44.885333-16.156444L512 260.949333l-318.236444 362.951111a68.437333 68.437333 0 0 1-44.942223 16.099556c-16.896 0-33.109333-5.802667-44.942222-16.156444-24.746667-21.617778-24.746667-56.206222 0-77.824l363.121778-401.749334c5.973333-5.290667 13.141333-9.443556 21.048889-12.231111 23.722667-8.305778 51.029333-3.527111 68.892444 12.060445z" horiz-adv-x="1024" />
<glyph glyph-name="upward" unicode="&#58885;" d="M556.942222 623.900444l363.064889-401.806222c24.860444-21.617778 24.860444-56.263111 0-77.880889a68.437333 68.437333 0 0 0-44.942222-16.156444c-16.896 0-33.052444 5.859556-44.885333 16.156444L512 507.050667l-318.236444-362.951111a68.437333 68.437333 0 0 0-44.942223-16.099556c-16.896 0-33.109333 5.802667-44.942222 16.156444-24.746667 21.617778-24.746667 56.206222 0 77.824L467.057778 623.729778c5.973333 5.290667 13.141333 9.443556 21.048889 12.231111 23.722667 8.305778 51.029333 3.527111 68.892444-12.060445z" horiz-adv-x="1024" />
<glyph glyph-name="detail" unicode="&#58881;" d="M902.428444 705.251556H332.401778a7.964444 7.964444 0 0 1-7.793778-8.021334v-56.206222a7.964444 7.964444 0 0 1 7.793778-8.078222h570.026666A7.964444 7.964444 0 0 1 910.222222 641.024v56.206222a7.964444 7.964444 0 0 1-7.793778 8.021334z m0-285.127112H332.401778a7.964444 7.964444 0 0 1-7.793778-7.964444v-56.32a7.964444 7.964444 0 0 1 7.793778-7.964444h570.026666a7.964444 7.964444 0 0 1 7.793778 7.964444v56.32a7.964444 7.964444 0 0 1-7.793778 7.964444z m0-285.070222H332.401778a7.964444 7.964444 0 0 1-7.793778-8.078222v-56.206222a7.964444 7.964444 0 0 1 7.793778-8.021334h570.026666a7.964444 7.964444 0 0 1 7.793778 8.021334v56.206222a7.964444 7.964444 0 0 1-7.793778 8.078222zM113.777778 669.127111c0-20.081778 10.410667-38.684444 27.306666-48.696889a53.361778 53.361778 0 0 1 54.670223 0 56.547556 56.547556 0 0 1 27.306666 48.696889 56.547556 56.547556 0 0 1-27.306666 48.696889 53.361778 53.361778 0 0 1-54.613334 0A56.547556 56.547556 0 0 1 113.777778 669.127111zM113.777778 384c0-20.081778 10.410667-38.684444 27.306666-48.696889a53.361778 53.361778 0 0 1 54.670223 0A56.547556 56.547556 0 0 1 223.061333 384a56.547556 56.547556 0 0 1-27.306666 48.696889 53.361778 53.361778 0 0 1-54.613334 0A56.547556 56.547556 0 0 1 113.777778 384z m0-285.127111c0-20.081778 10.410667-38.684444 27.306666-48.696889a53.361778 53.361778 0 0 1 54.670223 0 56.547556 56.547556 0 0 1 27.306666 48.696889 56.547556 56.547556 0 0 1-27.306666 48.696889 53.361778 53.361778 0 0 1-54.613334 0 56.547556 56.547556 0 0 1-27.363555-48.696889z" horiz-adv-x="1024" />
<glyph glyph-name="edit" unicode="&#58882;" d="M873.016889 395.264a32.824889 32.824889 0 0 0 65.649778 0v-273.806222a164.124444 164.124444 0 0 0-164.124445-164.124445h-525.084444A164.124444 164.124444 0 0 0 85.333333 121.457778v525.084444A164.124444 164.124444 0 0 0 249.457778 810.666667h312.32a32.824889 32.824889 0 1 0 0-65.649778h-312.32a98.417778 98.417778 0 0 1-98.474667-98.417778v-525.141333c0-54.385778 44.088889-98.474667 98.417778-98.474667h525.141333a98.417778 98.417778 0 0 1 98.474667 98.417778V395.320889z m-14.222222 362.097778a32.824889 32.824889 0 0 0 48.014222-44.771556L548.750222 328.533333a32.824889 32.824889 0 1 0-48.014222 44.771556l358.115556 384.056889z" horiz-adv-x="1024" />

+ 1
- 1
dist/index.html Целия файл

@@ -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.a130481f.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.60a1a666.js"></script><script defer="defer" src="/js/app.11e7f529.js"></script><link href="/css/chunk-vendors.330963ff.css" rel="stylesheet"><link href="/css/app.eea12e50.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>

+ 0
- 1
dist/js/1509.92e10c7c.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 0
- 1
dist/js/2407.726f1a94.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 0
- 2
dist/js/2629.fbf5892f.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 1
- 0
dist/js/2873.59a351a5.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 0
- 1
dist/js/3167.ef670731.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 1
- 0
dist/js/4332.c5cf652d.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 2
- 0
dist/js/4867.bb11ac94.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


dist/js/5748.f061a26b.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 1
- 0
dist/js/6015.c6917d38.js Целия файл

@@ -0,0 +1 @@
"use strict";(self["webpackChunktft_mes"]=self["webpackChunktft_mes"]||[]).push([[6015],{6015:function(t,r,e){e.r(r),e.d(r,{default:function(){return c}});var o=function(){var t=this,r=t._self._c;return r("div",{staticClass:"reoprtManager"},[r("div",{staticClass:"report"},[t._m(0),r("div",{staticClass:"numBox"},[r("div",[r("div",{staticClass:"reportNum"},[r("div",{staticClass:"num"},[t._v(t._s(t.totalReports))]),t._m(1)]),r("div",{staticClass:"detail",on:{click:function(r){return t.toDetail()}}},[t._v("了解详情")])])])]),t._l(t.reportList,(function(e,o){return r("div",{key:o,staticClass:"reportDesc"},[r("div",[r("div",{staticClass:"reportNum"},[r("div",{staticClass:"num"},[t._v(t._s(e.quantity))]),r("div",{staticClass:"text"},[r("p",{staticClass:"font"},[t._v(t._s(e.name))]),r("p",{staticClass:"letter"},[t._v("Reports")])])]),r("div",{staticClass:"detail",on:{click:function(r){return t.toDetail(e.id)}}},[t._v("了解详情")])])])}))],2)},n=[function(){var t=this,r=t._self._c;return r("div",{staticClass:"imgBox"},[r("img",{attrs:{src:e(5002),alt:"",width:"355px",height:"314px"}})])},function(){var t=this,r=t._self._c;return r("div",{staticClass:"text"},[r("p",{staticClass:"font"},[t._v("全部报表")]),r("p",{staticClass:"letter"},[t._v("Reports")])])}],u=e(6527),s={name:"ReportList",data(){return{totalReports:0,reportList:[]}},mounted(){this.getList()},methods:{getList(){(0,u.J_)({}).then((t=>{0===t.code&&t.data.length>0?this.reportList=t.data:this.reportList=[]})),(0,u.up)({}).then((t=>{0===t.code&&t.data.length>0?this.totalReports=t.data[0].reportNum:this.totalReports=0}))},toDetail(t){this.$router.push({name:"reportListDetail",params:{categoryId:t||""}})}}},a=s,i=e(1001),p=(0,i.Z)(a,o,n,!1,null,null,null),c=p.exports},6527:function(t,r,e){e.d(r,{AT:function(){return C},Hg:function(){return f},J_:function(){return n},Kx:function(){return x},QL:function(){return i},V0:function(){return g},W0:function(){return h},a:function(){return d},an:function(){return y},bu:function(){return Z},fL:function(){return k},gc:function(){return G},kB:function(){return u},m3:function(){return l},oR:function(){return _},sy:function(){return s},uW:function(){return v},uj:function(){return R},up:function(){return c},wF:function(){return m},wy:function(){return a},yk:function(){return p}});var o=e(8859);function n(t){return(0,o.Z)({url:"/report/report-sheet-category/list",method:"post",data:t})}function u(t){return(0,o.Z)({url:"/report/report-sheet/page",method:"post",data:t})}function s(t){return(0,o.Z)({url:"/report/report-sheet/update",method:"post",data:t})}function a(t){return(0,o.Z)({url:"/report/report-sheet/delete",method:"post",data:t})}function i(t){return(0,o.Z)({url:"/report/report-sheet/get",method:"post",data:t})}function p(t){return(0,o.Z)({url:"/report/report-sheet-category/page",method:"post",data:t})}function c(t){return(0,o.Z)({url:"/report/GlassReport/getReportNum",method:"post",data:t})}function l(t){return(0,o.Z)({url:"/report/report-sheet-category/add",method:"post",data:t})}function d(t){return(0,o.Z)({url:"/report/report-sheet-category/update",method:"post",data:t})}function f(t){return(0,o.Z)({url:"/report/report-sheet-category/get",method:"post",data:t})}function h(t){return(0,o.Z)({url:"/report/report-sheet-category/delete",method:"post",data:t})}function m(t){return(0,o.Z)({url:"/order/proReport/getProductReportData",method:"post",data:t})}function g(t){return(0,o.Z)({url:"/order/proReport/exportProductReport",method:"post",responseType:"blob",data:t,timeout:6e4})}function v(t){return(0,o.Z)({url:"/report/GlassReport/listGlass",method:"post",data:t})}function R(t){return(0,o.Z)({url:"/report/GlassReport/qualityReport",method:"post",data:t})}function _(t){return(0,o.Z)({url:"/report/GlassReport/qualityReportexport",method:"post",responseType:"blob",data:t})}function Z(t){return(0,o.Z)({url:"/report/GlassReport/thickReport",method:"post",data:t})}function y(t){return(0,o.Z)({url:"/report/GlassReport/thickReportexport",method:"post",responseType:"blob",data:t})}function C(t){return(0,o.Z)({url:"/quality/finalpackaging/queryGlassData",method:"post",data:t})}function k(t){return(0,o.Z)({url:"/quality/finalpackaging/claGlassData",method:"post",data:t})}function x(t){return(0,o.Z)({url:"/report/GlassReport/getGlassVoid",method:"post",data:t})}function G(t){return(0,o.Z)({url:"/report/GlassReport/getUnitVoid",method:"post",data:t})}},5002:function(t,r,e){t.exports=e.p+"img/report.b2b3c253.png"}}]);

+ 0
- 1
dist/js/6015.e0415dee.js Целия файл

@@ -1 +0,0 @@
"use strict";(self["webpackChunktft_mes"]=self["webpackChunktft_mes"]||[]).push([[6015],{6015:function(t,r,e){e.r(r),e.d(r,{default:function(){return c}});var o=function(){var t=this,r=t._self._c;return r("div",{staticClass:"reoprtManager"},[r("div",{staticClass:"report"},[t._m(0),r("div",{staticClass:"numBox"},[r("div",[r("div",{staticClass:"reportNum"},[r("div",{staticClass:"num"},[t._v(t._s(t.totalReports))]),t._m(1)]),r("div",{staticClass:"detail",on:{click:function(r){return t.toDetail()}}},[t._v("了解详情")])])])]),t._l(t.reportList,(function(e,o){return r("div",{key:o,staticClass:"reportDesc"},[r("div",[r("div",{staticClass:"reportNum"},[r("div",{staticClass:"num"},[t._v(t._s(e.quantity))]),r("div",{staticClass:"text"},[r("p",{staticClass:"font"},[t._v(t._s(e.name))]),r("p",{staticClass:"letter"},[t._v("Reports")])])]),r("div",{staticClass:"detail",on:{click:function(r){return t.toDetail(e.id)}}},[t._v("了解详情")])])])}))],2)},n=[function(){var t=this,r=t._self._c;return r("div",{staticClass:"imgBox"},[r("img",{attrs:{src:e(5002),alt:"",width:"355px",height:"314px"}})])},function(){var t=this,r=t._self._c;return r("div",{staticClass:"text"},[r("p",{staticClass:"font"},[t._v("全部报表")]),r("p",{staticClass:"letter"},[t._v("Reports")])])}],s=e(6527),a={name:"ReportList",data(){return{totalReports:0,reportList:[]}},mounted(){this.getList()},methods:{getList(){(0,s.J_)({}).then((t=>{0===t.code&&t.data.length>0?this.reportList=t.data:this.reportList=[]})),(0,s.up)({}).then((t=>{0===t.code&&t.data.length>0?this.totalReports=t.data[0].reportNum:this.totalReports=0}))},toDetail(t){this.$router.push({name:"reportListDetail",params:{categoryId:t||""}})}}},u=a,i=e(1001),p=(0,i.Z)(u,o,n,!1,null,null,null),c=p.exports},6527:function(t,r,e){e.d(r,{AT:function(){return Z},Hg:function(){return f},J_:function(){return n},Kx:function(){return C},QL:function(){return i},W0:function(){return h},a:function(){return d},an:function(){return R},bu:function(){return _},fL:function(){return y},gc:function(){return k},kB:function(){return s},m3:function(){return l},oR:function(){return v},sy:function(){return a},uW:function(){return m},uj:function(){return g},up:function(){return c},wy:function(){return u},yk:function(){return p}});var o=e(8859);function n(t){return(0,o.Z)({url:"/report/report-sheet-category/list",method:"post",data:t})}function s(t){return(0,o.Z)({url:"/report/report-sheet/page",method:"post",data:t})}function a(t){return(0,o.Z)({url:"/report/report-sheet/update",method:"post",data:t})}function u(t){return(0,o.Z)({url:"/report/report-sheet/delete",method:"post",data:t})}function i(t){return(0,o.Z)({url:"/report/report-sheet/get",method:"post",data:t})}function p(t){return(0,o.Z)({url:"/report/report-sheet-category/page",method:"post",data:t})}function c(t){return(0,o.Z)({url:"/report/GlassReport/getReportNum",method:"post",data:t})}function l(t){return(0,o.Z)({url:"/report/report-sheet-category/add",method:"post",data:t})}function d(t){return(0,o.Z)({url:"/report/report-sheet-category/update",method:"post",data:t})}function f(t){return(0,o.Z)({url:"/report/report-sheet-category/get",method:"post",data:t})}function h(t){return(0,o.Z)({url:"/report/report-sheet-category/delete",method:"post",data:t})}function m(t){return(0,o.Z)({url:"/report/GlassReport/listGlass",method:"post",data:t})}function g(t){return(0,o.Z)({url:"/report/GlassReport/qualityReport",method:"post",data:t})}function v(t){return(0,o.Z)({url:"/report/GlassReport/qualityReportexport",method:"post",responseType:"blob",data:t})}function _(t){return(0,o.Z)({url:"/report/GlassReport/thickReport",method:"post",data:t})}function R(t){return(0,o.Z)({url:"/report/GlassReport/thickReportexport",method:"post",responseType:"blob",data:t})}function Z(t){return(0,o.Z)({url:"/quality/finalpackaging/queryGlassData",method:"post",data:t})}function y(t){return(0,o.Z)({url:"/quality/finalpackaging/claGlassData",method:"post",data:t})}function C(t){return(0,o.Z)({url:"/report/GlassReport/getGlassVoid",method:"post",data:t})}function k(t){return(0,o.Z)({url:"/report/GlassReport/getUnitVoid",method:"post",data:t})}},5002:function(t,r,e){t.exports=e.p+"img/report.b2b3c253.png"}}]);

+ 1
- 0
dist/js/777.46088f37.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 1
- 0
dist/js/7789.e0aebf36.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 0
- 1
dist/js/7946.40e5c4bb.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


dist/js/9707.fb92bd08.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 1
- 0
dist/js/app.11e7f529.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 0
- 1
dist/js/app.a130481f.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 312
- 0
dist/js/chunk-vendors.60a1a666.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 0
- 312
dist/js/chunk-vendors.a42f8636.js
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 7
- 7
package-lock.json Целия файл

@@ -9,7 +9,7 @@
"version": "0.1.0",
"dependencies": {
"axios": "^0.27.2",
"code-brick-zj": "^0.1.0",
"code-brick-zj": "^1.0.2",
"core-js": "^3.8.3",
"echarts": "^5.4.0",
"element-ui": "^2.15.8",
@@ -4103,9 +4103,9 @@
}
},
"node_modules/code-brick-zj": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz",
"integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw=="
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-1.0.2.tgz",
"integrity": "sha512-V8XwYqXjIPMfPCaZMja4I2MJPT45EEnzRmTL1Ps6aMsmUQ/PhZ48OwUvddBFNqNZeVV13aPm1b5K1c3ogfad8Q=="
},
"node_modules/codepage": {
"version": "1.15.0",
@@ -16157,9 +16157,9 @@
}
},
"code-brick-zj": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz",
"integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw=="
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-1.0.2.tgz",
"integrity": "sha512-V8XwYqXjIPMfPCaZMja4I2MJPT45EEnzRmTL1Ps6aMsmUQ/PhZ48OwUvddBFNqNZeVV13aPm1b5K1c3ogfad8Q=="
},
"codepage": {
"version": "1.15.0",


+ 1
- 1
package.json Целия файл

@@ -9,7 +9,7 @@
},
"dependencies": {
"axios": "^0.27.2",
"code-brick-zj": "^0.1.0",
"code-brick-zj": "^1.0.2",
"core-js": "^3.8.3",
"echarts": "^5.4.0",
"element-ui": "^2.15.8",


+ 17
- 0
src/api/reportManagement.js Целия файл

@@ -87,6 +87,23 @@ export function reportCategoryDelete(data) {
data
})
}
// 后工程段日报表
export function getProductReportData(data) {
return request({
url: '/order/proReport/getProductReportData',
method: 'post',
data
})
}
export function exportProductReport(data) {
return request({
url: '/order/proReport/exportProductReport',
method: 'post',
responseType: 'blob',
data,
timeout: 60000
})
}

// 终检数据-获取玻璃列表数据
export function listGlass(data) {


+ 0
- 188
src/views/basicConfig/reportManagement1/reportClassification.vue Целия файл

@@ -1,188 +0,0 @@
<template>
<div class="report-classification">
<search-bar
:formConfigs="formConfig"
ref="searchBarForm"
@headBtnClick="buttonClick"
/>
<base-table
:page="listQuery.current"
:limit="listQuery.size"
:table-props="tableProps"
:table-data="tableData"
:max-height="tableH"
>
<method-btn
v-if="tableBtn.length"
slot="handleBtn"
:width="80"
label="操作"
:method-list="tableBtn"
@clickBtn="handleClick"
/>
</base-table>
<pagination
:page.sync="listQuery.current"
:limit.sync="listQuery.size"
:total="total"
@pagination="getList()"
/>
<!-- 新增 -->
<base-dialog
:dialogTitle="addOrEditTitle"
:dialogVisible="centervisible"
@cancel="handleCancel"
@confirm="handleConfirm"
:before-close="handleCancel"
>
<report-class-add ref="reportClass" @successSubmit="successSubmit" />
</base-dialog>
</div>
</template>
<script>
import { tableHeight } from '@/utils/index'
import ReportClassAdd from './../components/reportClassAdd.vue'
import { getReportCategory, reportCategoryDelete } from '@/api/basicConfig'
const tableProps = [
{
prop: 'name',
label: '报表分类名'
}
]
const tableBtn = [
{
type: 'edit',
btnName: '编辑'
},
{
type: 'delete',
btnName: '删除'
}
]
export default {
name: 'ReportClassification',
components: { ReportClassAdd },
data() {
return {
formConfig: [
{
type: 'input',
label: '关键字',
placeholder: '报表分类名',
param: 'name',
width: 300
},
{
type: 'button',
btnName: '查询',
name: 'search',
color: 'primary'
},
{
type: 'separate'
},
{
type: 'button',
btnName: '新增',
name: 'add',
color: 'success',
plain: true
}
],
tableProps,
tableData: [],
tableBtn,
tableH: tableHeight(330),
total: 0,
listQuery: {
current: 1,
size: 20,
name: ''
},
centervisible: false,
addOrEditTitle: '' //新增编辑弹出框的title
}
},
mounted() {
window.addEventListener('resize', () => {
this.tableH = tableHeight(265)
})
this.getList()
},
methods: {
getList() {
getReportCategory({ ...this.listQuery }).then((res) => {
if (res.code === 0 && res.data) {
this.tableData = res.data.records
this.total = res.data.total
} else {
this.tableData = []
this.total = 0
}
})
},
handleClick(val) {
if (val.type === 'edit') {
this.addOrEditTitle = '编辑'
this.$nextTick(() => {
this.$refs.reportClass.init(val.data.id)
})
this.centervisible = true
} else {
this.$confirm('确认删除报表分类名"' + val.data.name + '"吗?', {
type: 'warning'
})
.then(() => {
reportCategoryDelete({ id: val.data.id }).then(() => {
this.$message({
message: '工单删除成功',
type: 'success',
duration: 1500,
onClose: () => {}
})
this.listQuery.current = 1
this.getList()
})
})
.catch(() => {})
}
},
buttonClick(val) {
switch (val.btnName) {
case 'search':
this.listQuery.name = val.name
this.listQuery.current = 1
this.getList()
break
default:
this.addOrEditTitle = '新增'
this.centervisible = true
this.$nextTick(() => {
this.$refs.reportClass.init()
})
}
},
handleCancel() {
this.$refs.reportClass.formClear()
this.centervisible = false
this.addOrEditTitle = ''
},
handleConfirm() {
this.$refs.reportClass.submitForm()
},
successSubmit() {
this.handleCancel()
this.getList()
}
}
}
</script>
<style lang="scss">
.report-classification {
height: calc(100vh - 203px);
padding: 12px 16px;
margin: 0px 16px;
border-radius: 8px;
background-color: #fff;
}
</style>

+ 0
- 36
src/views/basicConfig/reportManagement1/reportDesign.vue Целия файл

@@ -1,36 +0,0 @@
<template>
<div id="reportDesign" class="reportDesign">
<iframe :src="url" width="100%" height="100%"></iframe>
</div>
</template>
<script>
export default {
name: 'ReportDesign',
data() {
return {
url: process.env.VUE_APP_REPORT_DESIGN_URL
}
},
mounted() {
const vm = this
const { name } = this.$route.params
this.url += name ? '?_u=db:' + this.$route.params.name : ''
const ifream = document.getElementById('reportDesign')
ifream.onload = function () {
console.log('加载完成')
vm.loading = false
}
}
}
</script>
<style lang="scss" scoped>
.reportDesign {
margin: 0px 16px 0 16px;
width: 98.5%;
height: calc(100vh - 205px);
.mainIframe {
width: 100%;
height: 100%;
}
}
</style>

+ 0
- 149
src/views/basicConfig/reportManagement1/reportList.vue Целия файл

@@ -1,149 +0,0 @@
<template>
<div class="reoprtManager">
<div class="report">
<div class="imgBox">
<img
src="./../../../assets/basic/report.png"
alt=""
width="355px"
height="314px"
/>
</div>
<div class="numBox">
<div>
<div class="reportNum">
<div class="num">{{ totalReports }}</div>
<div class="text">
<p class="font">全部报表</p>
<p class="letter">Reports</p>
</div>
</div>
<div class="detail" @click="toDetail()">了解详情</div>
</div>
</div>
</div>
<div class="reportDesc" v-for="(item, i) in reportList" :key="i">
<div>
<div class="reportNum">
<div class="num">{{ item.quantity }}</div>
<div class="text">
<p class="font">{{ item.name }}</p>
<p class="letter">Reports</p>
</div>
</div>
<div class="detail" @click="toDetail(item.id)">了解详情</div>
</div>
</div>
</div>
</template>
<script>
import { getReportCategorylist } from '@/api/basicConfig'
export default {
name: 'ReportList',
data() {
return {
totalReports: 0,
reportList: []
}
},
mounted() {
this.getList()
},
methods: {
getList() {
getReportCategorylist({}).then((res) => {
if (res.code === 0 && res.data.length > 0) {
this.totalReports = 0
for (let i = 0; i < res.data.length; i++) {
this.totalReports += res.data[i].quantity
}
this.reportList = res.data
} else {
this.totalReports = 0
this.reportList = []
}
})
},
toDetail(id) {
this.$router.push({
// path: '/basicConfig/reportManagement/reportListDetail',
name: 'reportListDetail',
params: { categoryId: id ? id : '' }
})
}
}
}
</script>
<style lang="scss">
.reoprtManager {
padding-left: 16px;
padding-top: 8px;
display: flex;
flex-flow: row wrap;
height: calc(100vh - 210px);
align-content: flex-start;
overflow: auto;
.report {
width: 768px;
height: 456px;
background: #fff;
border-radius: 4px;
margin: 0 16px 16px 0;
position: relative;
.imgBox {
display: inline-block;
width: 480px;
height: 100%;
padding: 80px 0 0 80px;
}
.numBox {
position: absolute;
display: inline-block;
height: 100%;
top: 120px;
}
}
.reportDesc {
width: 376px;
height: 456px;
background: #fff;
border-radius: 4px;
text-align: center;
padding-top: 120px;
margin: 0 16px 16px 0;
}
.reportNum {
.num {
display: inline-block;
font-size: 80px;
font-weight: 600;
color: #161616;
margin-right: 36px;
}
.text {
display: inline-block;
.font {
font-size: 18px;
letter-spacing: 2px;
margin-bottom: 5px;
}
.letter {
font-size: 32px;
font-weight: 300;
}
}
}
.detail {
width: 200px;
height: 30px;
font-size: 14px;
line-height: 30px;
text-align: center;
color: #fff;
background: #0b58ff;
border-radius: 4px;
margin: 139px auto 0;
cursor: pointer;
}
}
</style>

+ 0
- 271
src/views/basicConfig/reportManagement1/reportListDetail.vue Целия файл

@@ -1,271 +0,0 @@
<template>
<div class="report-classification">
<search-bar
:formConfigs="formConfig"
ref="searchBarForm"
@headBtnClick="buttonClick"
/>
<base-table
:page="listQuery.current"
:limit="listQuery.size"
:table-props="tableProps"
:table-data="tableData"
:max-height="tableH"
@emitFun="categoryChange"
>
<method-btn
v-if="tableBtn.length"
slot="handleBtn"
:width="180"
label="操作"
:method-list="tableBtn"
@clickBtn="handleClick"
/>
</base-table>
<pagination
:page.sync="listQuery.current"
:limit.sync="listQuery.size"
:total="total"
@pagination="getList()"
/>
<!-- 编辑 -->
<base-dialog
:dialogTitle="addOrEditTitle"
:dialogVisible="centervisible"
@cancel="handleCancel"
@confirm="handleConfirm"
:before-close="handleCancel"
>
<report-name-edit ref="reportNameEdit" @successSubmit="successSubmit" />
</base-dialog>
</div>
</template>
<script>
import ReportNameEdit from './../components/reportNameEdit.vue'
import {
getReportlist,
delReportlist,
getReportCategorylist,
updateReportlist
} from '@/api/basicConfig'
import { tableHeight, timeFormatter } from '@/utils'
import categorySelect from './../components/categorySelect.vue'
const tableProps = [
{
prop: 'fileName',
label: '报表名称'
},
{
prop: 'category',
label: '报表分类',
subcomponent: categorySelect
},
{
prop: 'createTime',
label: '添加时间',
filter: timeFormatter
}
]
const tableBtn = [
{
type: 'view',
btnName: '预览'
},
{
type: 'design',
btnName: '设计'
},
{
type: 'edit',
btnName: '编辑'
},
{
type: 'delete',
btnName: '删除'
}
]
export default {
name: 'ReportListDetail',
components: { ReportNameEdit },
data() {
return {
formConfig: [
{
type: 'input',
label: '关键字',
placeholder: '报表名称',
param: 'name',
width: 200
},
{
type: 'select',
label: '报表分类',
selectOptions: [],
param: 'category',
labelField: 'name',
valueField: 'id',
defaultSelect: '',
width: 200
},
{
type: 'button',
btnName: '查询',
name: 'search',
color: 'primary'
},
{
type: 'separate'
},
{
type: 'button',
btnName: '新增',
name: 'add',
color: 'success',
plain: true
}
],
tableProps,
tableData: [],
tableBtn,
tableH: tableHeight(330),
total: 0,
listQuery: {
current: 1,
size: 20,
name: '',
category: ''
},
typeList: [],
centervisible: false,
addOrEditTitle: '' //新增编辑弹出框的title
}
},
created() {
this.getCategorylist()
},
mounted() {
window.addEventListener('resize', () => {
this.tableH = tableHeight(265)
})
this.formConfig[1].defaultSelect = this.$route.params.categoryId || ''
this.listQuery.category = this.$route.params.categoryId || ''
},
methods: {
getList() {
getReportlist({ ...this.listQuery }).then((res) => {
if (res.code === 0 && res.data) {
this.tableData = res.data.records
this.total = res.data.total
} else {
this.tableData = []
this.total = 0
}
})
},
getCategorylist() {
getReportCategorylist({}).then((res) => {
if (res.code === 0 && res.data.length > 0) {
localStorage.setItem('reportCategory', JSON.stringify(res.data))
this.formConfig[1].selectOptions = res.data
} else {
localStorage.setItem('reportCategory', '')
}
this.getList()
})
},
handleClick(val) {
switch (val.type) {
case 'view':
this.$router.push({
// path: '/basicConfig/reportManagement/reportView',
name: 'reportView',
params: { name: val.data.name }
})
break
case 'design':
this.$router.push({
// path: '/basicConfig/reportManagement/reportDesign',
name: 'reportDesign',
params: { name: val.data.name }
})
break
case 'edit':
this.addOrEditTitle = '编辑'
this.centervisible = true
this.$nextTick(() => {
this.$refs.reportNameEdit.init(val.data.id)
})
break
default:
this.$confirm('确认删除报表"' + val.data.name + '"吗?', {
type: 'warning'
})
.then(() => {
delReportlist({ id: val.data.id }).then(() => {
this.$message({
message: '报表删除成功',
type: 'success',
duration: 1500,
onClose: () => {}
})
this.listQuery.current = 1
this.getList()
})
})
.catch(() => {})
}
},
buttonClick(val) {
switch (val.btnName) {
case 'search':
this.listQuery.name = val.name
this.listQuery.category = val.category
this.listQuery.current = 1
this.getList()
break
default:
this.$router.push({
path: '/basicConfig/reportManagement/reportDesign'
})
}
},
handleCancel() {
this.$refs.reportNameEdit.formClear()
this.centervisible = false
this.addOrEditTitle = ''
},
handleConfirm() {
this.$refs.reportNameEdit.submitForm()
},
successSubmit() {
this.handleCancel()
this.getList()
},
categoryChange(val) {
updateReportlist({
fileName: val.injectData.fileName,
id: val.injectData.id,
category: val.categoryId
}).then((res) => {
if (res.code === 0) {
this.$message({
message: '操作成功',
type: 'success',
duration: 1500
})
this.getList()
}
})
}
}
}
</script>
<style lang="scss">
.report-classification {
height: calc(100vh - 203px);
padding: 12px 16px;
margin: 0px 16px;
border-radius: 8px;
background-color: #fff;
}
</style>

+ 0
- 36
src/views/basicConfig/reportManagement1/reportView.vue Целия файл

@@ -1,36 +0,0 @@
<template>
<div id="reportView" class="reportView">
<iframe :src="url" width="100%" height="100%"></iframe>
</div>
</template>
<script>
export default {
name: 'ReportView',
data() {
return {
url: process.env.VUE_APP_REPORT_VIEW_URL
}
},
mounted() {
const vm = this
const { name } = this.$route.params
this.url += name ? '?_u=db:' + this.$route.params.name : ''
const ifream = document.getElementById('reportView')
ifream.onload = function () {
console.log('加载完成')
vm.loading = false
}
}
}
</script>
<style lang="scss" scoped>
.reportView {
margin: 0px 16px 0 16px;
width: 98.5%;
height: calc(100vh - 205px);
.mainIframe {
width: 100%;
height: 100%;
}
}
</style>

+ 30
- 10
src/views/home/components/Product.vue Целия файл

@@ -186,34 +186,54 @@ export default {
return 16 * this.beilv
},
progressP: function () {
return this.productMsg.process * 100
return this.productMsg.process
? parseFloat((this.productMsg.process * 100).toFixed(2))
: 0
},
progressPercentage: function () {
return this.productMsg.process * 100 + '%'
return this.productMsg.process
? (this.productMsg.process * 100).toFixed(2) + '%'
: '0%'
},
lastHourFpy: function () {
return this.dbMsg.lastHourFpy * 100 + '%'
return this.dbMsg.lastHourFpy
? (this.dbMsg.lastHourFpy * 100).toFixed(2) + '%'
: '0%'
},
lastHourFpyP: function () {
return this.dbMsg.lastHourFpy * 100
return this.dbMsg.lastHourFpy
? parseFloat((this.dbMsg.lastHourFpy * 100).toFixed(2))
: 0
},
todayFpy: function () {
return this.dbMsg.todayFpy * 100 + '%'
return this.dbMsg.todayFpy
? (this.dbMsg.todayFpy * 100).toFixed(2) + '%'
: '0%'
},
todayFpyP: function () {
return this.dbMsg.todayFpy * 100
return this.dbMsg.todayFpy
? parseFloat((this.dbMsg.todayFpy * 100).toFixed(2))
: 0
},
nowFpy: function () {
return this.dbMsg.nowFpy * 100 + '%'
return this.dbMsg.nowFpy
? (this.dbMsg.nowFpy * 100).toFixed(2) + '%'
: '0%'
},
nowFpyP: function () {
return this.dbMsg.nowFpy * 100
return this.dbMsg.nowFpy
? parseFloat((this.dbMsg.nowFpy * 100).toFixed(2))
: 0
},
yesterdayFpy: function () {
return this.dbMsg.yesterdayFpy * 100 + '%'
return this.dbMsg.yesterdayFpy
? (this.dbMsg.yesterdayFpy * 100).toFixed(2) + '%'
: '0%'
},
yesterdayFpyP: function () {
return this.dbMsg.yesterdayFpy * 100
return this.dbMsg.yesterdayFpy
? parseFloat((this.dbMsg.yesterdayFpy * 100).toFixed(2))
: 0
}
}
}


+ 1
- 1
src/views/productionScheduling/components/WorkOrderProgressDetails.vue Целия файл

@@ -18,7 +18,7 @@
</p>
<p class="box clear-border">
<span class="tip-value">{{
detailMsg.sumProcessTime ? detailMsg.sumProcessTime : '-'
detailMsg.sumProcessTime ? detailMsg.sumProcessTime + '分钟' : '-'
}}</span>
<span class="tip">累计加工时长</span>
</p>


+ 1
- 12
src/views/productionScheduling/workOrderManagement.vue Целия файл

@@ -5,6 +5,7 @@
ref="searchBarForm"
@headBtnClick="buttonClick"
class="searchStyle"
:isFold="true"
>
<div style="display: inline-block">
<el-upload
@@ -531,15 +532,3 @@ export default {
}
}
</script>
<style lang="scss" scoped>
@media screen and (max-width: 2104px) {
.searchStyle {
width: 1000px;
}
}
@media screen and (min-width: 2105px) {
.searchStyle {
width: 100%;
}
}
</style>

+ 8
- 6
src/views/reportManagement/components/TableTags.vue Целия файл

@@ -18,12 +18,14 @@ export default {
}
},
mounted() {
console.log(this.injectData)
console.log(this.injectData.prop)
if (this.injectData.prop === 'ct1') {
this.showTotal = this.injectData.ct1
} else if (this.injectData.prop === 'ct2') {
this.showTotal = this.injectData.ct2
// console.log(this.injectData)
// console.log(this.injectData.prop)
if (this.injectData.prop === 'daySum') {
this.showTotal = this.injectData.daySum
} else if (this.injectData.prop === 'nightSum') {
this.showTotal = this.injectData.nightSum
} else if (this.injectData.prop === 'sum') {
this.showTotal = this.injectData.sum
}
}
}


+ 8
- 8
src/views/reportManagement/finalInspectionDataReport/glassPackReport.vue Целия файл

@@ -139,25 +139,25 @@ const tableProps1 = [
const tableProps2 = [
{
prop: 'glassId',
label: '玻璃ID',
label: '项目ID',
minWidth: 120
},
{
prop: 'rackNum',
label: '包装架号',
label: '复投玻璃架ID',
minWidth: 120
},
{
prop: 'rackNum',
label: '玻璃序号',
minWidth: 120
},
{
prop: 'testTime',
label: '包装时间',
label: '时间',
filter: timeFormatter,
minWidth: 160
},
{
prop: 'num',
label: '包装数量',
minWidth: 120
},
{
prop: 'particleSum',
label: '颗粒Sum',


+ 294
- 433
src/views/reportManagement/productionReport.vue Целия файл

@@ -18,14 +18,24 @@
<script>
import { tableHeight } from '@/utils/index'
import TableTags from './components/TableTags.vue'
import moment from 'moment'
import {
exportProductReport,
getProductReportData
} from '@/api/reportManagement'
const tableProp = [
{
prop: 'process',
prop: 'row1',
label: '区域',
fixed: true
},
{
prop: 'equipmentName',
prop: 'row2',
label: '',
fixed: true
},
{
prop: 'row3',
label: '项目指标',
minWidth: 150,
fixed: true
@@ -34,39 +44,44 @@ const tableProp = [
label: '白班(8:00-20:00)',
align: 'center',
children: [
{ prop: 'b1', label: '7-8', width: 60 },
{ prop: 'b2', label: '8-9', width: 60 },
{ prop: 'b3', label: '9-10', width: 60 },
{ prop: 'b4', label: '10-11', width: 60 },
{ prop: 'b5', label: '11-12', width: 60 },
{ prop: 'b6', label: '12-13', width: 60 },
{ prop: 'b7', label: '13-14', width: 60 },
{ prop: 'b8', label: '14-15', width: 60 },
{ prop: 'b9', label: '15-16', width: 60 },
{ prop: 'b10', label: '16-17', width: 60 },
{ prop: 'b11', label: '17-18', width: 60 },
{ prop: 'b12', label: '18-19', width: 60 },
{ prop: 'ct1', label: '合计', subcomponent: TableTags }
{ prop: 'seven', label: '7-8', width: 60 },
{ prop: 'eight', label: '8-9', width: 60 },
{ prop: 'nine', label: '9-10', width: 60 },
{ prop: 'ten', label: '10-11', width: 60 },
{ prop: 'eleven', label: '11-12', width: 60 },
{ prop: 'twelve', label: '12-13', width: 60 },
{ prop: 'thirteen', label: '13-14', width: 60 },
{ prop: 'fourteen', label: '14-15', width: 60 },
{ prop: 'fifteen', label: '15-16', width: 60 },
{ prop: 'sixteen', label: '16-17', width: 60 },
{ prop: 'seventeen', label: '17-18', width: 60 },
{ prop: 'eighteen', label: '18-19', width: 60 },
{ prop: 'daySum', label: '合计', subcomponent: TableTags }
]
},
{
label: '夜班(20:00-8:00)',
align: 'center',
children: [
{ prop: 'y1', label: '19-20', width: 60 },
{ prop: 'y2', label: '20-21', width: 60 },
{ prop: 'y3', label: '21-22', width: 60 },
{ prop: 'y4', label: '22-23', width: 60 },
{ prop: 'y5', label: '23-24', width: 60 },
{ prop: 'y6', label: '0-1', width: 60 },
{ prop: 'y7', label: '1-2', width: 60 },
{ prop: 'y8', label: '2-3', width: 60 },
{ prop: 'y9', label: '3-4', width: 60 },
{ prop: 'y10', label: '4-5', width: 60 },
{ prop: 'y11', label: '5-6', width: 60 },
{ prop: 'y12', label: '6-7', width: 60 },
{ prop: 'ct2', label: '合计', subcomponent: TableTags }
{ prop: 'nineteen', label: '19-20', width: 60 },
{ prop: 'twenty', label: '20-21', width: 60 },
{ prop: 'twentyOne', label: '21-22', width: 60 },
{ prop: 'twentyTwo', label: '22-23', width: 60 },
{ prop: 'twentyThree', label: '23-24', width: 60 },
{ prop: 'zero', label: '0-1', width: 60 },
{ prop: 'one', label: '1-2', width: 60 },
{ prop: 'two', label: '2-3', width: 60 },
{ prop: 'three', label: '3-4', width: 60 },
{ prop: 'four', label: '4-5', width: 60 },
{ prop: 'five', label: '5-6', width: 60 },
{ prop: 'six', label: '6-7', width: 60 },
{ prop: 'nightSum', label: '合计', subcomponent: TableTags }
]
},
{
prop: 'sum',
label: '总计',
subcomponent: TableTags
}
]
export default {
@@ -80,7 +95,8 @@ export default {
selectOptions: JSON.parse(localStorage.getItem('publicList'))
.proLineVoList,
param: 'proLineId',
defaultSelect: '',
defaultSelect: '1',
clearable: false,
width: 120
},
{
@@ -89,7 +105,9 @@ export default {
dateType: 'date',
format: 'yyyy-MM-dd',
valueFormat: 'yyyy-MM-dd',
param: 'timeVal',
param: 'hour',
defaultSelect: '',
clearable: false,
width: 200
},
{
@@ -110,427 +128,164 @@ export default {
}
],
listQuery: {
current: 1,
size: 20
proLineId: '',
hour: ''
},
tableH: tableHeight(300),
tableH: tableHeight(225),
tableProp,
tableData: [],
span: []
span: [],
span2: [],
tableHead: [
{ row1: '综合', row2: '', row3: '上片投入' },
{ row1: '综合', row2: '', row3: '机器人复投' },
{ row1: '综合', row2: '', row3: '再清洗品' },
{ row1: '综合', row2: '', row3: '良品总投入数' },
{ row1: '综合', row2: '', row3: '工序总损耗' },
{ row1: '综合', row2: '', row3: '后清洗输出' },
{ row1: '上片', row2: '', row3: '损失' },
{ row1: '精切', row2: '', row3: '损失' },
{ row1: '精切', row2: '', row3: '抽检' },
{ row1: '磨边', row2: '', row3: '损失' },
{ row1: '磨边', row2: '', row3: '抽检' },
{ row1: '前清洗', row2: '', row3: '损失' },
{ row1: '边检', row2: '', row3: '损失' },
{ row1: '复投', row2: '', row3: '损失' },
{ row1: '贴合压合', row2: '', row3: '贴合损失' },
{ row1: '贴合压合', row2: '', row3: '压合损失' },
{ row1: '面研磨机', row2: '', row3: '输入' },
{ row1: '面研磨机', row2: '', row3: '1#输入' },
{ row1: '面研磨机', row2: '', row3: '2#输入' },
{ row1: '面研磨机', row2: '', row3: '3#输入' },
{ row1: '面研磨机', row2: '', row3: '4#输入' },
{ row1: '面研磨机', row2: '', row3: '5#输入' },
{ row1: '面研磨机', row2: '', row3: '6#输入' },
{ row1: '面研磨机', row2: '', row3: '输出' },
{ row1: '面研磨机', row2: '', row3: '1#输出' },
{ row1: '面研磨机', row2: '', row3: '2#输出' },
{ row1: '面研磨机', row2: '', row3: '3#输出' },
{ row1: '面研磨机', row2: '', row3: '4#输出' },
{ row1: '面研磨机', row2: '', row3: '5#输出' },
{ row1: '面研磨机', row2: '', row3: '6#输出' },
{ row1: '面研磨机', row2: '', row3: '损失' },
{ row1: '剥片', row2: '', row3: '损失' },
{ row1: '预清洗', row2: '', row3: '损失' },
{ row1: '后清洗', row2: '', row3: '损失' },
{ row1: '后清洗', row2: '', row3: '输出' },
{ row1: '检查包装段', row2: '', row3: '检查数' },
{ row1: '检查包装段', row2: '', row3: '抽检数' },
{ row1: '检查包装段', row2: '', row3: 'B1品' },
{ row1: '检查包装段', row2: '', row3: 'B2品' },
{ row1: '检查包装段', row2: '', row3: 'A1品' },
{ row1: '检查包装段', row2: '', row3: 'A2品' },
{ row1: '检查包装段', row2: '', row3: '工耗损失' },
{ row1: '缺陷统计', row2: '前边检不良', row3: '掉片' },
{ row1: '缺陷统计', row2: '前边检不良', row3: '烧边' },
{ row1: '缺陷统计', row2: '前边检不良', row3: '过磨' },
{ row1: '缺陷统计', row2: '前边检不良', row3: '欠磨' },
{ row1: '缺陷统计', row2: '前边检不良', row3: '未磨' },
{ row1: '缺陷统计', row2: '前边检不良', row3: '边裂/裂纹' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'BL数' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'BL尺寸' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'Tin上数' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'Tin上尺寸' },
{ row1: '缺陷统计', row2: '前工程不良', row3: '结瘤' },
{ row1: '缺陷统计', row2: '前工程不良', row3: '结石' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'Tin下数' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'Tin下尺寸' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'PT' },
{ row1: '缺陷统计', row2: '前工程不良', row3: '欠点合计' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'Q聚' },
{ row1: '缺陷统计', row2: '前工程不良', row3: 'ADG' },
{ row1: '缺陷统计', row2: '前工程不良', row3: '其他' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '掉片' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '烧边' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '过磨' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '欠磨' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '未磨' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '边裂/裂纹' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '角尺寸不良' },
{ row1: '缺陷统计', row2: '后工程不良', row3: 'K/Q数' },
{ row1: '缺陷统计', row2: '后工程不良', row3: 'K/Q聚集' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '划伤' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '轮印' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '磨痕' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '气浮擦伤' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '残留' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '污渍' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '纤维' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '水渍' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '异物' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '面磨印记' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '雾面残留' },
{ row1: '缺陷统计', row2: '后工程不良', row3: '其他' }
]
}
},
mounted() {
window.addEventListener('resize', () => {
this.tableH = tableHeight(300)
this.tableH = tableHeight(225)
})
this.formConfig[1].defaultSelect = moment().format('yyyy-MM-DD')
this.listQuery.hour = moment().format('yyyy-MM-DD')
this.getData()
},
methods: {
buttonClick(val) {
console.log(val)
this.listQuery.proLineId = val.proLineId
this.listQuery.hour = val.hour
if (val.btnName === 'search') {
this.getData()
} else if (val.btnName === 'export') {
exportProductReport({ ...this.listQuery }).then((res) => {
let fileName = ''
const contentDisposition = res.headers['content-disposition']
if (contentDisposition) {
fileName = decodeURIComponent(
contentDisposition.slice(
contentDisposition.indexOf('filename=') + 9
)
)
}
const blob = new Blob([res.data])
const reader = new FileReader()
reader.readAsDataURL(blob)
reader.onload = (e) => {
const a = document.createElement('a')
a.download = fileName
a.href = e.target.result
document.body.appendChild(a)
a.click()
document.body.removeChild(a)
}
})
}
},
getData() {
;(this.tableData = [
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 108,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 103,
equipmentName: '上片投入数',
process: '综合'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 102,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 99,
equipmentName: '机器人投入数',
process: '综合'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '良品总投入数',
process: '综合'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '工序损耗',
process: '综合'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '后清洗输出',
process: '综合'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '上片损失',
process: '上片'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '精切损失',
process: '精切'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '精切抽检',
process: '精切'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '磨边损失',
process: '磨边'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '磨边抽检',
process: '磨边'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '前清洗损失',
process: '前清洗'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '边检损失',
process: '边检'
},
{
b1: 1,
b2: 2,
b3: 3,
b4: 4,
b5: 5,
b6: 6,
b7: 7,
b8: 8,
b9: 9,
b10: 10,
b11: 11,
b12: 12,
ct1: 100,
y1: 1,
y2: 2,
y3: 3,
y4: 4,
y5: 5,
y6: 6,
y7: 7,
y8: 8,
y9: 9,
y10: 10,
y11: 11,
y12: 12,
ct2: 100,
equipmentName: '复投损失',
process: '复投'
getProductReportData({ ...this.listQuery }).then((res) => {
let arr = res.data
this.tableData = []
if (arr && arr.length > 0) {
for (let i = 0; i < arr.length; i++) {
arr[i].row1 = this.tableHead[i].row1
arr[i].row2 = this.tableHead[i].row2
arr[i].row3 = this.tableHead[i].row3
}
this.tableData = arr
}
]),
console.log(this.tableData)
this.getSpanArr(this.tableData)
this.getSpanArr2(this.tableData)
})
},
getSpanArr(data) {
this.span = []
for (var i = 0; i < data.length; i++) {
if (i === 0) {
this.span.push(1)
this.index = 0
} else {
if (data[i].process === data[i - 1].process) {
if (data[i].row1 === data[i - 1].row1) {
this.span[this.index] += 1
this.span.push(0)
} else {
@@ -540,14 +295,120 @@ export default {
}
}
},
getSpanArr2(data) {
this.span2 = []
for (var i = 0; i < data.length; i++) {
if (i === 0) {
this.span2.push(1)
this.index = 0
} else {
if (data[i].row2 === data[i - 1].row2) {
this.span2[this.index] += 1
this.span2.push(0)
} else {
this.span2.push(1)
this.index = i
}
}
}
},
spanMethod({ rowIndex, columnIndex }) {
if (columnIndex === 1) {
const _row = this.span[rowIndex]
return {
rowspan: _row,
colspan: 1
if (rowIndex < 42) {
// 表1
if (columnIndex === 0) {
const _row = this.span[rowIndex]
return {
rowspan: _row,
colspan: 2
}
} else if (columnIndex === 1) {
return [0, 0]
}
} else if (rowIndex >= 42 && rowIndex < 82) {
// 表2
if (columnIndex === 0) {
const _row = this.span[rowIndex]
return {
rowspan: _row,
colspan: 1
}
}
if (columnIndex === 1) {
const _row = this.span2[rowIndex]
return {
rowspan: _row,
colspan: 1
}
}
}
// } else if (rowIndex >= 19 && rowIndex < 22) {
// // 表3
// if (columnIndex === 0) {
// return {
// rowspan: 1,
// colspan: 3
// }
// } else if (columnIndex === 1 || columnIndex === 2) {
// return [0, 0]
// } else if (columnIndex === 3) {
// return {
// rowspan: 1,
// colspan: 13
// }
// } else if (columnIndex >= 4 && columnIndex < 16) {
// return [0, 0]
// } else if (columnIndex === 16) {
// return {
// rowspan: 1,
// colspan: 13
// }
// }
// } else if (rowIndex >= 22 && rowIndex < 24) {
// // 表4
// if (columnIndex === 0) {
// const _row = this.span[rowIndex]
// return {
// rowspan: _row,
// colspan: 2
// }
// } else if (columnIndex === 1) {
// return [0, 0]
// } else if (columnIndex === 3) {
// return {
// rowspan: 1,
// colspan: 13
// }
// } else if (columnIndex >= 4 && columnIndex < 16) {
// return [0, 0]
// } else if (columnIndex === 16) {
// return {
// rowspan: 1,
// colspan: 13
// }
// }
// } else if (rowIndex >= 24) {
// // 表5
// if (columnIndex === 0) {
// return {
// rowspan: 1,
// colspan: 3
// }
// } else if (columnIndex === 1 || columnIndex === 2) {
// return [0, 0]
// } else if (columnIndex === 3) {
// return {
// rowspan: 1,
// colspan: 13
// }
// } else if (columnIndex >= 4 && columnIndex < 16) {
// return [0, 0]
// } else if (columnIndex === 16) {
// return {
// rowspan: 1,
// colspan: 13
// }
// }
// }
}
}
}


Зареждане…
Отказ
Запис