Compare commits

..

No commits in common. "2304fe94ae27306ef8ee73a2bab566fcf6cbd7f4" and "8ceb47038d9c513f2d86e3ea46ea335f9c261746" have entirely different histories.

41 changed files with 1486 additions and 699 deletions

View File

@ -1 +1 @@
.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} .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}

1
dist/css/2407.1f6aa78f.css vendored Normal file
View File

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

View File

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

View File

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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -14,10 +14,6 @@
/> />
<missing-glyph /> <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="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" /> <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" />

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

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.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> <!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>

1
dist/js/1509.92e10c7c.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/js/2407.726f1a94.js vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/js/2629.fbf5892f.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/3167.ef670731.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

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

1
dist/js/6015.e0415dee.js vendored Normal file
View File

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

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/7946.40e5c4bb.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
dist/js/app.a130481f.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

312
dist/js/chunk-vendors.a42f8636.js vendored Normal file

File diff suppressed because one or more lines are too long

14
package-lock.json generated
View File

@ -9,7 +9,7 @@
"version": "0.1.0", "version": "0.1.0",
"dependencies": { "dependencies": {
"axios": "^0.27.2", "axios": "^0.27.2",
"code-brick-zj": "^1.0.2", "code-brick-zj": "^0.1.0",
"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",
@ -4103,9 +4103,9 @@
} }
}, },
"node_modules/code-brick-zj": { "node_modules/code-brick-zj": {
"version": "1.0.2", "version": "0.1.0",
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-1.0.2.tgz", "resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz",
"integrity": "sha512-V8XwYqXjIPMfPCaZMja4I2MJPT45EEnzRmTL1Ps6aMsmUQ/PhZ48OwUvddBFNqNZeVV13aPm1b5K1c3ogfad8Q==" "integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw=="
}, },
"node_modules/codepage": { "node_modules/codepage": {
"version": "1.15.0", "version": "1.15.0",
@ -16157,9 +16157,9 @@
} }
}, },
"code-brick-zj": { "code-brick-zj": {
"version": "1.0.2", "version": "0.1.0",
"resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-1.0.2.tgz", "resolved": "https://registry.npmjs.org/code-brick-zj/-/code-brick-zj-0.1.0.tgz",
"integrity": "sha512-V8XwYqXjIPMfPCaZMja4I2MJPT45EEnzRmTL1Ps6aMsmUQ/PhZ48OwUvddBFNqNZeVV13aPm1b5K1c3ogfad8Q==" "integrity": "sha512-vEymEN/28lEJP3045DCE/7143SXjdNyNmWZuy3/NcIUP/e9YOjhm46itzjNWCjJZCI6vWvQkCD1EfmA4hPknuw=="
}, },
"codepage": { "codepage": {
"version": "1.15.0", "version": "1.15.0",

View File

@ -9,7 +9,7 @@
}, },
"dependencies": { "dependencies": {
"axios": "^0.27.2", "axios": "^0.27.2",
"code-brick-zj": "^1.0.2", "code-brick-zj": "^0.1.0",
"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",

View File

@ -87,23 +87,6 @@ export function reportCategoryDelete(data) {
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) { export function listGlass(data) {

View File

@ -0,0 +1,188 @@
<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>

View File

@ -0,0 +1,36 @@
<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>

View File

@ -0,0 +1,149 @@
<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>

View File

@ -0,0 +1,271 @@
<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>

View File

@ -0,0 +1,36 @@
<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>

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -18,24 +18,14 @@
<script> <script>
import { tableHeight } from '@/utils/index' import { tableHeight } from '@/utils/index'
import TableTags from './components/TableTags.vue' import TableTags from './components/TableTags.vue'
import moment from 'moment'
import {
exportProductReport,
getProductReportData
} from '@/api/reportManagement'
const tableProp = [ const tableProp = [
{ {
prop: 'row1', prop: 'process',
label: '区域', label: '区域',
fixed: true fixed: true
}, },
{ {
prop: 'row2', prop: 'equipmentName',
label: '',
fixed: true
},
{
prop: 'row3',
label: '项目指标', label: '项目指标',
minWidth: 150, minWidth: 150,
fixed: true fixed: true
@ -44,44 +34,39 @@ const tableProp = [
label: '白班(8:00-20:00)', label: '白班(8:00-20:00)',
align: 'center', align: 'center',
children: [ children: [
{ prop: 'seven', label: '7-8', width: 60 }, { prop: 'b1', label: '7-8', width: 60 },
{ prop: 'eight', label: '8-9', width: 60 }, { prop: 'b2', label: '8-9', width: 60 },
{ prop: 'nine', label: '9-10', width: 60 }, { prop: 'b3', label: '9-10', width: 60 },
{ prop: 'ten', label: '10-11', width: 60 }, { prop: 'b4', label: '10-11', width: 60 },
{ prop: 'eleven', label: '11-12', width: 60 }, { prop: 'b5', label: '11-12', width: 60 },
{ prop: 'twelve', label: '12-13', width: 60 }, { prop: 'b6', label: '12-13', width: 60 },
{ prop: 'thirteen', label: '13-14', width: 60 }, { prop: 'b7', label: '13-14', width: 60 },
{ prop: 'fourteen', label: '14-15', width: 60 }, { prop: 'b8', label: '14-15', width: 60 },
{ prop: 'fifteen', label: '15-16', width: 60 }, { prop: 'b9', label: '15-16', width: 60 },
{ prop: 'sixteen', label: '16-17', width: 60 }, { prop: 'b10', label: '16-17', width: 60 },
{ prop: 'seventeen', label: '17-18', width: 60 }, { prop: 'b11', label: '17-18', width: 60 },
{ prop: 'eighteen', label: '18-19', width: 60 }, { prop: 'b12', label: '18-19', width: 60 },
{ prop: 'daySum', label: '合计', subcomponent: TableTags } { prop: 'ct1', label: '合计', subcomponent: TableTags }
] ]
}, },
{ {
label: '夜班(20:00-8:00)', label: '夜班(20:00-8:00)',
align: 'center', align: 'center',
children: [ children: [
{ prop: 'nineteen', label: '19-20', width: 60 }, { prop: 'y1', label: '19-20', width: 60 },
{ prop: 'twenty', label: '20-21', width: 60 }, { prop: 'y2', label: '20-21', width: 60 },
{ prop: 'twentyOne', label: '21-22', width: 60 }, { prop: 'y3', label: '21-22', width: 60 },
{ prop: 'twentyTwo', label: '22-23', width: 60 }, { prop: 'y4', label: '22-23', width: 60 },
{ prop: 'twentyThree', label: '23-24', width: 60 }, { prop: 'y5', label: '23-24', width: 60 },
{ prop: 'zero', label: '0-1', width: 60 }, { prop: 'y6', label: '0-1', width: 60 },
{ prop: 'one', label: '1-2', width: 60 }, { prop: 'y7', label: '1-2', width: 60 },
{ prop: 'two', label: '2-3', width: 60 }, { prop: 'y8', label: '2-3', width: 60 },
{ prop: 'three', label: '3-4', width: 60 }, { prop: 'y9', label: '3-4', width: 60 },
{ prop: 'four', label: '4-5', width: 60 }, { prop: 'y10', label: '4-5', width: 60 },
{ prop: 'five', label: '5-6', width: 60 }, { prop: 'y11', label: '5-6', width: 60 },
{ prop: 'six', label: '6-7', width: 60 }, { prop: 'y12', label: '6-7', width: 60 },
{ prop: 'nightSum', label: '合计', subcomponent: TableTags } { prop: 'ct2', label: '合计', subcomponent: TableTags }
] ]
},
{
prop: 'sum',
label: '总计',
subcomponent: TableTags
} }
] ]
export default { export default {
@ -95,8 +80,7 @@ export default {
selectOptions: JSON.parse(localStorage.getItem('publicList')) selectOptions: JSON.parse(localStorage.getItem('publicList'))
.proLineVoList, .proLineVoList,
param: 'proLineId', param: 'proLineId',
defaultSelect: '1', defaultSelect: '',
clearable: false,
width: 120 width: 120
}, },
{ {
@ -105,9 +89,7 @@ export default {
dateType: 'date', dateType: 'date',
format: 'yyyy-MM-dd', format: 'yyyy-MM-dd',
valueFormat: 'yyyy-MM-dd', valueFormat: 'yyyy-MM-dd',
param: 'hour', param: 'timeVal',
defaultSelect: '',
clearable: false,
width: 200 width: 200
}, },
{ {
@ -128,164 +110,427 @@ export default {
} }
], ],
listQuery: { listQuery: {
proLineId: '', current: 1,
hour: '' size: 20
}, },
tableH: tableHeight(225), tableH: tableHeight(300),
tableProp, tableProp,
tableData: [], 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() { mounted() {
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.tableH = tableHeight(225) this.tableH = tableHeight(300)
}) })
this.formConfig[1].defaultSelect = moment().format('yyyy-MM-DD')
this.listQuery.hour = moment().format('yyyy-MM-DD')
this.getData() this.getData()
}, },
methods: { methods: {
buttonClick(val) { buttonClick(val) {
this.listQuery.proLineId = val.proLineId console.log(val)
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() { getData() {
getProductReportData({ ...this.listQuery }).then((res) => { ;(this.tableData = [
let arr = res.data {
this.tableData = [] b1: 1,
if (arr && arr.length > 0) { b2: 2,
for (let i = 0; i < arr.length; i++) { b3: 3,
arr[i].row1 = this.tableHead[i].row1 b4: 4,
arr[i].row2 = this.tableHead[i].row2 b5: 5,
arr[i].row3 = this.tableHead[i].row3 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: '复投'
} }
this.tableData = arr ]),
}
console.log(this.tableData)
this.getSpanArr(this.tableData) this.getSpanArr(this.tableData)
this.getSpanArr2(this.tableData)
})
}, },
getSpanArr(data) { getSpanArr(data) {
this.span = []
for (var i = 0; i < data.length; i++) { for (var i = 0; i < data.length; i++) {
if (i === 0) { if (i === 0) {
this.span.push(1) this.span.push(1)
this.index = 0 this.index = 0
} else { } else {
if (data[i].row1 === data[i - 1].row1) { if (data[i].process === data[i - 1].process) {
this.span[this.index] += 1 this.span[this.index] += 1
this.span.push(0) this.span.push(0)
} else { } else {
@ -295,121 +540,15 @@ 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 }) { spanMethod({ rowIndex, columnIndex }) {
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) { if (columnIndex === 1) {
const _row = this.span2[rowIndex] const _row = this.span[rowIndex]
return { return {
rowspan: _row, rowspan: _row,
colspan: 1 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
// }
// }
// }
}
} }
} }
</script> </script>