projects/mesxc-zjl #291
@ -1,12 +1,12 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<svg width="22px" height="22px" viewBox="0 0 22 22" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
<svg width="32px" height="32px" viewBox="0 0 22 22" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
<title>编组 54</title>
|
<title>编组 54</title>
|
||||||
<g id="驾驶舱" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
<g id="驾驶舱" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
<g id="运营总览_生产线监控驾驶舱" transform="translate(-1866.000000, -36.000000)">
|
<g id="运营总览_生产线监控驾驶舱" transform="translate(-1866.000000, -36.000000)">
|
||||||
<g id="编组-54" transform="translate(1866.000000, 36.000000)">
|
<g id="编组-54" transform="translate(1866.000000, 36.000000)">
|
||||||
<rect id="矩形" stroke="#979797" fill="#D8D8D8" opacity="0" x="0.5" y="0.5" width="21" height="21"></rect>
|
<rect id="矩形" stroke="#979797" fill="#D8D8D8" opacity="0" x="0.5" y="0.5" width="32" height="32"></rect>
|
||||||
<path d="M18.4001211,1 L18.574731,1.00571398 C18.8641421,1.02474925 19.1451559,1.09128771 19.4122178,1.20447947 C19.7221027,1.33395436 19.9991094,1.52058631 20.2392616,1.76073844 C20.4776764,1.99915325 20.6652172,2.27804627 20.7953442,2.58736464 C20.9313506,2.90825642 21,3.24882158 21,3.59987893 L21,3.59987893 L21,18.4001211 L20.994286,18.574731 C20.9752507,18.8641421 20.9087123,19.1451559 20.7955205,19.4122178 C20.6660456,19.7221027 20.4794137,19.9991094 20.2392616,20.2392616 C20.0008468,20.4776764 19.7219537,20.6652172 19.4126354,20.7953442 C19.0917436,20.9313506 18.7511784,21 18.4001211,21 L18.4001211,21 L3.59987893,21 L3.42526905,20.994286 C3.13585794,20.9752507 2.85484405,20.9087123 2.58778224,20.7955205 C2.2778973,20.6660456 2.00089057,20.4794137 1.76073844,20.2392616 C1.52232363,20.0008468 1.33478285,19.7219537 1.20465581,19.4126354 C1.06864936,19.0917436 1,18.7511784 1,18.4001211 L1,18.4001211 L1,3.59987893 L1.00571398,3.42526905 C1.02474925,3.13585794 1.09128771,2.85484405 1.20447947,2.58778224 C1.33395436,2.2778973 1.52058631,2.00089057 1.76073844,1.76073844 C1.99915325,1.52232363 2.27804627,1.33478285 2.58736464,1.20465581 C2.90825642,1.06864936 3.24882158,1 3.59987893,1 L3.59987893,1 L18.4001211,1 Z M18.4001211,2.29539952 L3.59987893,2.29539952 L3.49797651,2.2993263 C2.82542992,2.35136056 2.29539952,2.9140495 2.29539952,3.59987893 L2.29539952,3.59987893 L2.29539952,18.4001211 L2.2993263,18.5020235 C2.35136056,19.1745701 2.9140495,19.7046005 3.59987893,19.7046005 L3.59987893,19.7046005 L18.4001211,19.7046005 L18.5020235,19.7006737 C19.1745701,19.6486394 19.7046005,19.0859505 19.7046005,18.4001211 L19.7046005,18.4001211 L19.7046005,3.59987893 L19.7006737,3.49797651 C19.6486394,2.82542992 19.0859505,2.29539952 18.4001211,2.29539952 L18.4001211,2.29539952 Z M4.56580299,11.8731508 L4.63987359,11.8789244 C4.95620444,11.9219442 5.20096852,12.1943435 5.20096852,12.5208838 L5.20096852,12.5208838 L5.20096852,15.8606113 L8.39814764,12.6634321 L8.45892035,12.6098356 C8.71226443,12.4133149 9.08161636,12.4311804 9.3138681,12.6634321 C9.56547415,12.9150382 9.56547415,13.3275466 9.3138681,13.5791526 L9.3138681,13.5791526 L6.09149511,16.7990315 L9.4155569,16.7990315 L9.49368756,16.8035151 C9.82695229,16.8420028 10.0864105,17.123441 10.081435,17.4601165 C10.0742517,17.8119637 9.78624591,18.094431 9.43371671,18.094431 L9.43371671,18.094431 L4.5691586,18.094431 L4.49163938,18.0899766 C4.16113157,18.051728 3.90556901,17.7718105 3.90556901,17.4308414 L3.90556901,17.4308414 L3.90556901,12.5367736 L3.91007171,12.4587841 C3.94871707,12.1260764 4.23118526,11.8665247 4.56580299,11.8731508 L4.56580299,11.8731508 Z M17.4353814,3.90556901 L17.512257,3.91000958 C17.8400885,3.94813523 18.094431,4.22707005 18.094431,4.56461864 L18.094431,4.56461864 L18.094431,9.46095642 L18.0899283,9.53894589 C18.0512829,9.87165361 17.7688147,10.1312053 17.434197,10.1245792 C17.0828999,10.1173731 16.7990315,9.82850504 16.7990315,9.47684625 L16.7990315,9.47684625 L16.7990315,6.13938874 L13.6018524,9.33656786 L13.5410796,9.39016441 C13.2877356,9.58668512 12.9183836,9.5688196 12.6861319,9.33656786 C12.4345258,9.08496181 12.4345258,8.67245345 12.6861319,8.4208474 L12.6861319,8.4208474 L15.9060108,5.20096852 L12.5821731,5.20096852 L12.5040246,5.19648608 C12.170734,5.1580095 11.9119308,4.876675 11.9185506,4.54071802 C11.9257483,4.18803625 12.2137541,3.90556901 12.5662833,3.90556901 L12.5662833,3.90556901 L17.4353814,3.90556901 Z" id="形状结合" fill="#52FFF1" fill-rule="nonzero" opacity="0.79078311"></path>
|
<path d="M18.4001211,1 L18.574731,1.00571398 C18.8641421,1.02474925 19.1451559,1.09128771 19.4122178,1.20447947 C19.7221027,1.33395436 19.9991094,1.52058631 20.2392616,1.76073844 C20.4776764,1.99915325 20.6652172,2.27804627 20.7953442,2.58736464 C20.9313506,2.90825642 21,3.24882158 21,3.59987893 L21,3.59987893 L21,18.4001211 L20.994286,18.574731 C20.9752507,18.8641421 20.9087123,19.1451559 20.7955205,19.4122178 C20.6660456,19.7221027 20.4794137,19.9991094 20.2392616,20.2392616 C20.0008468,20.4776764 19.7219537,20.6652172 19.4126354,20.7953442 C19.0917436,20.9313506 18.7511784,21 18.4001211,21 L18.4001211,21 L3.59987893,21 L3.42526905,20.994286 C3.13585794,20.9752507 2.85484405,20.9087123 2.58778224,20.7955205 C2.2778973,20.6660456 2.00089057,20.4794137 1.76073844,20.2392616 C1.52232363,20.0008468 1.33478285,19.7219537 1.20465581,19.4126354 C1.06864936,19.0917436 1,18.7511784 1,18.4001211 L1,18.4001211 L1,3.59987893 L1.00571398,3.42526905 C1.02474925,3.13585794 1.09128771,2.85484405 1.20447947,2.58778224 C1.33395436,2.2778973 1.52058631,2.00089057 1.76073844,1.76073844 C1.99915325,1.52232363 2.27804627,1.33478285 2.58736464,1.20465581 C2.90825642,1.06864936 3.24882158,1 3.59987893,1 L3.59987893,1 L18.4001211,1 Z M18.4001211,2.29539952 L3.59987893,2.29539952 L3.49797651,2.2993263 C2.82542992,2.35136056 2.29539952,2.9140495 2.29539952,3.59987893 L2.29539952,3.59987893 L2.29539952,18.4001211 L2.2993263,18.5020235 C2.35136056,19.1745701 2.9140495,19.7046005 3.59987893,19.7046005 L3.59987893,19.7046005 L18.4001211,19.7046005 L18.5020235,19.7006737 C19.1745701,19.6486394 19.7046005,19.0859505 19.7046005,18.4001211 L19.7046005,18.4001211 L19.7046005,3.59987893 L19.7006737,3.49797651 C19.6486394,2.82542992 19.0859505,2.29539952 18.4001211,2.29539952 L18.4001211,2.29539952 Z M4.56580299,11.8731508 L4.63987359,11.8789244 C4.95620444,11.9219442 5.20096852,12.1943435 5.20096852,12.5208838 L5.20096852,12.5208838 L5.20096852,15.8606113 L8.39814764,12.6634321 L8.45892035,12.6098356 C8.71226443,12.4133149 9.08161636,12.4311804 9.3138681,12.6634321 C9.56547415,12.9150382 9.56547415,13.3275466 9.3138681,13.5791526 L9.3138681,13.5791526 L6.09149511,16.7990315 L9.4155569,16.7990315 L9.49368756,16.8035151 C9.82695229,16.8420028 10.0864105,17.123441 10.081435,17.4601165 C10.0742517,17.8119637 9.78624591,18.094431 9.43371671,18.094431 L9.43371671,18.094431 L4.5691586,18.094431 L4.49163938,18.0899766 C4.16113157,18.051728 3.90556901,17.7718105 3.90556901,17.4308414 L3.90556901,17.4308414 L3.90556901,12.5367736 L3.91007171,12.4587841 C3.94871707,12.1260764 4.23118526,11.8665247 4.56580299,11.8731508 L4.56580299,11.8731508 Z M17.4353814,3.90556901 L17.512257,3.91000958 C17.8400885,3.94813523 18.094431,4.22707005 18.094431,4.56461864 L18.094431,4.56461864 L18.094431,9.46095642 L18.0899283,9.53894589 C18.0512829,9.87165361 17.7688147,10.1312053 17.434197,10.1245792 C17.0828999,10.1173731 16.7990315,9.82850504 16.7990315,9.47684625 L16.7990315,9.47684625 L16.7990315,6.13938874 L13.6018524,9.33656786 L13.5410796,9.39016441 C13.2877356,9.58668512 12.9183836,9.5688196 12.6861319,9.33656786 C12.4345258,9.08496181 12.4345258,8.67245345 12.6861319,8.4208474 L12.6861319,8.4208474 L15.9060108,5.20096852 L12.5821731,5.20096852 L12.5040246,5.19648608 C12.170734,5.1580095 11.9119308,4.876675 11.9185506,4.54071802 C11.9257483,4.18803625 12.2137541,3.90556901 12.5662833,3.90556901 L12.5662833,3.90556901 L17.4353814,3.90556901 Z" id="形状结合" fill="#52FFF1" fill-rule="nonzero" opacity="0.79078311"></path>
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
@ -7,4 +7,4 @@
|
|||||||
<path d="M18.4001211,1 L18.574731,1.00571398 C18.8641421,1.02474925 19.1451559,1.09128771 19.4122178,1.20447947 C19.7221027,1.33395436 19.9991094,1.52058631 20.2392616,1.76073844 C20.4776764,1.99915325 20.6652172,2.27804627 20.7953442,2.58736464 C20.9313506,2.90825642 21,3.24882158 21,3.59987893 L21,3.59987893 L21,18.4001211 L20.994286,18.574731 C20.9752507,18.8641421 20.9087123,19.1451559 20.7955205,19.4122178 C20.6660456,19.7221027 20.4794137,19.9991094 20.2392616,20.2392616 C20.0008468,20.4776764 19.7219537,20.6652172 19.4126354,20.7953442 C19.0917436,20.9313506 18.7511784,21 18.4001211,21 L18.4001211,21 L3.59987893,21 L3.42526905,20.994286 C3.13585794,20.9752507 2.85484405,20.9087123 2.58778224,20.7955205 C2.2778973,20.6660456 2.00089057,20.4794137 1.76073844,20.2392616 C1.52232363,20.0008468 1.33478285,19.7219537 1.20465581,19.4126354 C1.06864936,19.0917436 1,18.7511784 1,18.4001211 L1,18.4001211 L1,3.59987893 L1.00571398,3.42526905 C1.02474925,3.13585794 1.09128771,2.85484405 1.20447947,2.58778224 C1.33395436,2.2778973 1.52058631,2.00089057 1.76073844,1.76073844 C1.99915325,1.52232363 2.27804627,1.33478285 2.58736464,1.20465581 C2.90825642,1.06864936 3.24882158,1 3.59987893,1 L3.59987893,1 L18.4001211,1 Z M18.4001211,2.29539952 L3.59987893,2.29539952 L3.49797651,2.2993263 C2.82542992,2.35136056 2.29539952,2.9140495 2.29539952,3.59987893 L2.29539952,3.59987893 L2.29539952,18.4001211 L2.2993263,18.5020235 C2.35136056,19.1745701 2.9140495,19.7046005 3.59987893,19.7046005 L3.59987893,19.7046005 L18.4001211,19.7046005 L18.5020235,19.7006737 C19.1745701,19.6486394 19.7046005,19.0859505 19.7046005,18.4001211 L19.7046005,18.4001211 L19.7046005,3.59987893 L19.7006737,3.49797651 C19.6486394,2.82542992 19.0859505,2.29539952 18.4001211,2.29539952 L18.4001211,2.29539952 Z M9.43538136,11.905569 L9.512257,11.9100096 C9.84008849,11.9481352 10.094431,12.2270701 10.094431,12.5646186 L10.094431,12.5646186 L10.094431,17.4609564 L10.0899283,17.5389459 C10.0512829,17.8716536 9.76881474,18.1312053 9.43419701,18.1245792 C9.08289988,18.1173731 8.79903148,17.828505 8.79903148,17.4768462 L8.79903148,17.4768462 L8.79903148,14.1393887 L5.60185236,17.3365679 L5.54107965,17.3901644 C5.28773557,17.5866851 4.91838364,17.5688196 4.6861319,17.3365679 C4.43452585,17.0849618 4.43452585,16.6724534 4.6861319,16.4208474 L4.6861319,16.4208474 L7.90601077,13.2009685 L4.58217312,13.2009685 L4.50402457,13.1964861 C4.17073404,13.1580095 3.9119308,12.876675 3.91855064,12.540718 C3.92574827,12.1880363 4.21375409,11.905569 4.56628329,11.905569 L4.56628329,11.905569 L9.43538136,11.905569 Z M12.565803,3.8731508 L12.6398736,3.87892442 C12.9562044,3.92194416 13.2009685,4.19434347 13.2009685,4.52088378 L13.2009685,4.52088378 L13.2009685,7.86061126 L16.3981476,4.66343214 L16.4589204,4.60983559 C16.7122644,4.41331488 17.0816164,4.4311804 17.3138681,4.66343214 C17.5654742,4.91503819 17.5654742,5.32754655 17.3138681,5.5791526 L17.3138681,5.5791526 L14.0914951,8.79903148 L17.4155569,8.79903148 L17.4936876,8.80351509 C17.8269523,8.84200281 18.0864105,9.12344101 18.081435,9.46011654 C18.0742517,9.81196375 17.7862459,10.094431 17.4337167,10.094431 L17.4337167,10.094431 L12.5691586,10.094431 L12.4916394,10.0899766 C12.1611316,10.051728 11.905569,9.77181051 11.905569,9.4308414 L11.905569,9.4308414 L11.905569,4.53677361 L11.9100717,4.45878413 C11.9487171,4.12607641 12.2311853,3.86652471 12.565803,3.8731508 L12.565803,3.8731508 Z" id="形状结合" fill="#52FFF1" fill-rule="nonzero" opacity="0.79078311"></path>
|
<path d="M18.4001211,1 L18.574731,1.00571398 C18.8641421,1.02474925 19.1451559,1.09128771 19.4122178,1.20447947 C19.7221027,1.33395436 19.9991094,1.52058631 20.2392616,1.76073844 C20.4776764,1.99915325 20.6652172,2.27804627 20.7953442,2.58736464 C20.9313506,2.90825642 21,3.24882158 21,3.59987893 L21,3.59987893 L21,18.4001211 L20.994286,18.574731 C20.9752507,18.8641421 20.9087123,19.1451559 20.7955205,19.4122178 C20.6660456,19.7221027 20.4794137,19.9991094 20.2392616,20.2392616 C20.0008468,20.4776764 19.7219537,20.6652172 19.4126354,20.7953442 C19.0917436,20.9313506 18.7511784,21 18.4001211,21 L18.4001211,21 L3.59987893,21 L3.42526905,20.994286 C3.13585794,20.9752507 2.85484405,20.9087123 2.58778224,20.7955205 C2.2778973,20.6660456 2.00089057,20.4794137 1.76073844,20.2392616 C1.52232363,20.0008468 1.33478285,19.7219537 1.20465581,19.4126354 C1.06864936,19.0917436 1,18.7511784 1,18.4001211 L1,18.4001211 L1,3.59987893 L1.00571398,3.42526905 C1.02474925,3.13585794 1.09128771,2.85484405 1.20447947,2.58778224 C1.33395436,2.2778973 1.52058631,2.00089057 1.76073844,1.76073844 C1.99915325,1.52232363 2.27804627,1.33478285 2.58736464,1.20465581 C2.90825642,1.06864936 3.24882158,1 3.59987893,1 L3.59987893,1 L18.4001211,1 Z M18.4001211,2.29539952 L3.59987893,2.29539952 L3.49797651,2.2993263 C2.82542992,2.35136056 2.29539952,2.9140495 2.29539952,3.59987893 L2.29539952,3.59987893 L2.29539952,18.4001211 L2.2993263,18.5020235 C2.35136056,19.1745701 2.9140495,19.7046005 3.59987893,19.7046005 L3.59987893,19.7046005 L18.4001211,19.7046005 L18.5020235,19.7006737 C19.1745701,19.6486394 19.7046005,19.0859505 19.7046005,18.4001211 L19.7046005,18.4001211 L19.7046005,3.59987893 L19.7006737,3.49797651 C19.6486394,2.82542992 19.0859505,2.29539952 18.4001211,2.29539952 L18.4001211,2.29539952 Z M9.43538136,11.905569 L9.512257,11.9100096 C9.84008849,11.9481352 10.094431,12.2270701 10.094431,12.5646186 L10.094431,12.5646186 L10.094431,17.4609564 L10.0899283,17.5389459 C10.0512829,17.8716536 9.76881474,18.1312053 9.43419701,18.1245792 C9.08289988,18.1173731 8.79903148,17.828505 8.79903148,17.4768462 L8.79903148,17.4768462 L8.79903148,14.1393887 L5.60185236,17.3365679 L5.54107965,17.3901644 C5.28773557,17.5866851 4.91838364,17.5688196 4.6861319,17.3365679 C4.43452585,17.0849618 4.43452585,16.6724534 4.6861319,16.4208474 L4.6861319,16.4208474 L7.90601077,13.2009685 L4.58217312,13.2009685 L4.50402457,13.1964861 C4.17073404,13.1580095 3.9119308,12.876675 3.91855064,12.540718 C3.92574827,12.1880363 4.21375409,11.905569 4.56628329,11.905569 L4.56628329,11.905569 L9.43538136,11.905569 Z M12.565803,3.8731508 L12.6398736,3.87892442 C12.9562044,3.92194416 13.2009685,4.19434347 13.2009685,4.52088378 L13.2009685,4.52088378 L13.2009685,7.86061126 L16.3981476,4.66343214 L16.4589204,4.60983559 C16.7122644,4.41331488 17.0816164,4.4311804 17.3138681,4.66343214 C17.5654742,4.91503819 17.5654742,5.32754655 17.3138681,5.5791526 L17.3138681,5.5791526 L14.0914951,8.79903148 L17.4155569,8.79903148 L17.4936876,8.80351509 C17.8269523,8.84200281 18.0864105,9.12344101 18.081435,9.46011654 C18.0742517,9.81196375 17.7862459,10.094431 17.4337167,10.094431 L17.4337167,10.094431 L12.5691586,10.094431 L12.4916394,10.0899766 C12.1611316,10.051728 11.905569,9.77181051 11.905569,9.4308414 L11.905569,9.4308414 L11.905569,4.53677361 L11.9100717,4.45878413 C11.9487171,4.12607641 12.2311853,3.86652471 12.565803,3.8731508 L12.565803,3.8731508 Z" id="形状结合" fill="#52FFF1" fill-rule="nonzero" opacity="0.79078311"></path>
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
Binary file not shown.
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-07-19 15:18:30
|
* @Date: 2021-07-19 15:18:30
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-27 15:42:39
|
* @LastEditTime: 2024-03-28 15:28:07
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -16,35 +16,32 @@
|
|||||||
许昌安彩AGV原片周转看板
|
许昌安彩AGV原片周转看板
|
||||||
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
||||||
<h3 class="time">{{ times }}</h3>
|
<h3 class="time">{{ times }}</h3>
|
||||||
<el-button
|
<el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px', fontSize: '32px' }"
|
||||||
type="text"
|
@click="changeFullScreen">
|
||||||
class="title-button"
|
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
||||||
:style="{ right: 33 + 'px', top: 37 + 'px' }"
|
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
||||||
@click="changeFullScreen"
|
|
||||||
>
|
|
||||||
<svg-icon v-if="isFullScreen" icon-class="unFullScreenView" />
|
|
||||||
<svg-icon v-else icon-class="fullScreenView" />
|
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row class="container-main flex-col" type="flex">
|
<el-row class="container-main flex-col" type="flex">
|
||||||
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15 * beilv" type="flex" class="flex-1">
|
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15 * beilv" type="flex" class="flex-1">
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
||||||
<base-container :beilv="1" :size="'middle'" :title="'搬运任务'" :title-icon="'task'" :back="'energy'">
|
<base-container :beilv="1" :size="'eqStatus'" :title="'搬运任务'" :title-icon="'task'" :back="'energy'">
|
||||||
<base-table1 :page="1" :limit="999" :show-index="false" :beilv="1" :table-config="qualityYearTableProps"
|
<!-- <base-table1 :page="1" :limit="999" :show-index="false" :beilv="1" :table-config="qualityYearTableProps"
|
||||||
:table-data="qualityYearList" />
|
:table-data="qualityYearList" /> -->
|
||||||
|
<dv-scroll-board :config="taskConfig" style="width:100%;height:350px" ref='taskScrollBoard' />
|
||||||
</base-container>
|
</base-container>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
||||||
<base-container :beilv="1" :size="'middle'" :title="'周转进度'" :title-icon="'order'" :back="'energy'">
|
<base-container :beilv="1" :size="'eqStatus'" :title="'周转进度'" :title-icon="'order'" :back="'energy'">
|
||||||
<div style="width:100%; overflow: hidden scroll;">
|
<div class="order" style="width:100%; overflow: hidden scroll;height: 350px;">
|
||||||
<el-row v-for="op in orderProcessList" :key="op.id" style="margin-bottom: 1em">
|
<el-row v-for="op in orderProcessList" :key="op.id" style="margin-bottom: 1em">
|
||||||
<p v-if="op.outRate === 1" class="now-secondary-title" style="color:#4679FD">
|
<p v-if="op.outRate === 1" class="now-secondary-title" style="color:#4679FD">
|
||||||
<i class="el-icon-check" />
|
<i class="el-icon-check" />
|
||||||
{{ op.name }}
|
{{ op.name }}
|
||||||
</p>
|
</p>
|
||||||
<p v-else class="now-secondary-title">{{ op.name }}</p>
|
<p v-else class="now-secondary-title">{{ op.name }}</p>
|
||||||
<el-progress define-back-color="rgba(32, 57, 96, 1)" text-color="white" :percentage="op.outRate * 100"
|
<el-progress :stroke-width="10" define-back-color="rgba(32, 57, 96, 1)" text-color="white"
|
||||||
class="custom-progress-bar" />
|
:percentage="op.outRate * 100" class="custom-progress-bar" />
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
</base-container>
|
</base-container>
|
||||||
@ -53,17 +50,19 @@
|
|||||||
|
|
||||||
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="12 * beilv" type="flex" class="flex-1">
|
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="12 * beilv" type="flex" class="flex-1">
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
||||||
<base-container :beilv="1" :height="256" :size="'middle'" :title="'库存管理'" :title-icon="'productLine'"
|
<base-container :beilv="1" :height="280" :size="'eqStatus'" :title="'库存管理'" :title-icon="'productLine'"
|
||||||
:back="'energy'">
|
:back="'energy'">
|
||||||
<base-table :page="1" :limit="999" :show-index="false" :beilv="1" :table-config="inventoryTableProps"
|
<!-- <base-table :page="1" :limit="999" :show-index="false" :beilv="1" :table-config="inventoryTableProps"
|
||||||
:table-data="inventoryList" />
|
:table-data="inventoryList" /> -->
|
||||||
|
<dv-scroll-board :config="inventoryConfig" style="width:100%;height:380px" ref='inventoryScrollBoard' />
|
||||||
</base-container>
|
</base-container>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
||||||
<base-container :beilv="1" :height="318 + 338 + 16" :size="'middle'" :title="'库位信息'" :title-icon="'info'"
|
<base-container :beilv="1" :height="318 + 338 + 16" :size="'eqStatus'" :title="'库位信息'" :title-icon="'info'"
|
||||||
:back="'energy'">
|
:back="'energy'">
|
||||||
<base-table2 :page="1" :limit="999" :show-index="false" :beilv="1" :table-config="locationTableProps"
|
<!-- <base-table2 :page="1" :limit="999" :show-index="false" :beilv="1" :table-config="locationTableProps"
|
||||||
:table-data="locationList" />
|
:table-data="locationList" /> -->
|
||||||
|
<dv-scroll-board :config="locationConfig" style="width:100%;height:380px" ref='locationScrollBoard' />
|
||||||
</base-container>
|
</base-container>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -191,6 +190,15 @@ const inventoryList = [
|
|||||||
{
|
{
|
||||||
eqName: ' 螺丝刀', eqCode: '备件库', level: '', product: ' 123', productCode: 'WLXX20220919000147', unit: '个', time: '2023年9月10日'
|
eqName: ' 螺丝刀', eqCode: '备件库', level: '', product: ' 123', productCode: 'WLXX20220919000147', unit: '个', time: '2023年9月10日'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
eqName: ' 清洗剂', eqCode: '备件库', level: '200mm', product: ' 123', productCode: 'WLXX20220919000147', unit: '瓶', time: '2023年9月10日'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
eqName: ' 清洗剂', eqCode: '备件库', level: '200mm', product: ' 123', productCode: 'WLXX20220919000147', unit: '瓶', time: '2023年9月10日'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
eqName: ' 清洗剂', eqCode: '备件库', level: '200mm', product: ' 123', productCode: 'WLXX20220919000147', unit: '瓶', time: '2023年9月10日'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
eqName: ' 清洗剂', eqCode: '备件库', level: '200mm', product: ' 123', productCode: 'WLXX20220919000147', unit: '瓶', time: '2023年9月10日'
|
eqName: ' 清洗剂', eqCode: '备件库', level: '200mm', product: ' 123', productCode: 'WLXX20220919000147', unit: '瓶', time: '2023年9月10日'
|
||||||
}
|
}
|
||||||
@ -267,6 +275,39 @@ export default {
|
|||||||
inventoryTableProps,
|
inventoryTableProps,
|
||||||
inventoryList,
|
inventoryList,
|
||||||
locationList,
|
locationList,
|
||||||
|
taskConfig: {
|
||||||
|
header: ['序号', '作业号', '执行叉车', '库位', '成品规格', '成品编码', '时间'],
|
||||||
|
headerBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
|
oddRowBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
|
evenRowBGC: 'rgba(14, 32, 62, 0.8)',
|
||||||
|
columnWidth: [80, 120, 90, 140, 140, 150,130],
|
||||||
|
align: ['center'],
|
||||||
|
data: [],
|
||||||
|
// index:true,
|
||||||
|
rowNum: 10
|
||||||
|
},
|
||||||
|
inventoryConfig: {
|
||||||
|
header: ['序号', '物件名称', '存放区域', '规格', '数量', '单位', '编码', '入库时间'],
|
||||||
|
headerBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
|
oddRowBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
|
evenRowBGC: 'rgba(14, 32, 62, 0.8)',
|
||||||
|
columnWidth: [80, 100, 90, 140, 80, 70, 180, 120],
|
||||||
|
align: ['center'],
|
||||||
|
data: [],
|
||||||
|
// index:true,
|
||||||
|
rowNum: 10
|
||||||
|
},
|
||||||
|
locationConfig: {
|
||||||
|
header: ['序号', '库位名称', '存放物件名称', '数量', '存放位置', '编码', '单位', '入库时间'],
|
||||||
|
headerBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
|
oddRowBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
|
evenRowBGC: 'rgba(14, 32, 62, 0.8)',
|
||||||
|
columnWidth: [80, 100, 120, 80, 100, 180, 70, 120],
|
||||||
|
align: ['center'],
|
||||||
|
data: [],
|
||||||
|
// index:true,
|
||||||
|
rowNum: 10
|
||||||
|
},
|
||||||
locationTableProps,
|
locationTableProps,
|
||||||
qualityYearList,
|
qualityYearList,
|
||||||
isFullScreen: false,
|
isFullScreen: false,
|
||||||
@ -294,6 +335,20 @@ export default {
|
|||||||
{
|
{
|
||||||
name: '作业号RQ20230911',
|
name: '作业号RQ20230911',
|
||||||
outRate: '0.4'
|
outRate: '0.4'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '作业号RQ20230911',
|
||||||
|
outRate: '0.4'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '作业号RQ20230911',
|
||||||
|
outRate: '0.4'
|
||||||
|
}, {
|
||||||
|
name: '作业号RQ20230911',
|
||||||
|
outRate: '0.4'
|
||||||
|
}, {
|
||||||
|
name: '作业号RQ20230911',
|
||||||
|
outRate: '0.4'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
// qualityTableProps1,
|
// qualityTableProps1,
|
||||||
@ -316,6 +371,16 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
|
isFullScreen: function (val) {
|
||||||
|
if (val) {
|
||||||
|
const _this = this;
|
||||||
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
|
console.log(_this.beilv2);
|
||||||
|
} else {
|
||||||
|
const _this = this;
|
||||||
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
|
}
|
||||||
|
},
|
||||||
clientWidth(val) {
|
clientWidth(val) {
|
||||||
if (!this.timer) {
|
if (!this.timer) {
|
||||||
this.clientWidth = val
|
this.clientWidth = val
|
||||||
@ -343,6 +408,9 @@ export default {
|
|||||||
}, 86400000)
|
}, 86400000)
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
this.getTask()
|
||||||
|
this.getInventoryData()
|
||||||
|
this.getLocationData()
|
||||||
const _this = this;
|
const _this = this;
|
||||||
window.onresize = () => {
|
window.onresize = () => {
|
||||||
return (() => {
|
return (() => {
|
||||||
@ -355,6 +423,60 @@ export default {
|
|||||||
getTimes() {
|
getTimes() {
|
||||||
setInterval(this.getTimesInterval, 1000);
|
setInterval(this.getTimesInterval, 1000);
|
||||||
},
|
},
|
||||||
|
getTask() {
|
||||||
|
let eqArr = this.qualityYearList.map((item, index) => [
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
|
</span>`,
|
||||||
|
// formatDate(item.planStartTime) || '',
|
||||||
|
`
|
||||||
|
<span style="color:rgba(255,255,255,0.5)" >${item.eqName || ''}
|
||||||
|
</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.eqCode || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.level || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.product || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.productCode || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.time || ''}</span>`,
|
||||||
|
|
||||||
|
])
|
||||||
|
this.taskConfig.data = eqArr
|
||||||
|
this.$refs['taskScrollBoard'].updateRows(eqArr)
|
||||||
|
},
|
||||||
|
getInventoryData() {
|
||||||
|
let eqArr = this.inventoryList.map((item, index) => [
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
|
</span>`,
|
||||||
|
// formatDate(item.planStartTime) || '',
|
||||||
|
`
|
||||||
|
<span style="color:rgba(255,255,255,0.5)" >${item.eqName || ''}
|
||||||
|
</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.eqCode || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.level || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.product || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.unit || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.productCode || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.time || ''}</span>`,
|
||||||
|
])
|
||||||
|
this.inventoryConfig.data = eqArr
|
||||||
|
this.$refs['inventoryScrollBoard'].updateRows(eqArr)
|
||||||
|
},
|
||||||
|
getLocationData() {
|
||||||
|
let eqArr = this.locationList.map((item, index) => [
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
|
</span>`,
|
||||||
|
// formatDate(item.planStartTime) || '',
|
||||||
|
`
|
||||||
|
<span style="color:rgba(255,255,255,0.5)" >${item.eqName || ''}
|
||||||
|
</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.eqCode || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.product || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.level || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.productCode || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.unit || ''}</span>`,
|
||||||
|
`<span style="color:rgba(255,255,255,0.5)">${item.time || ''}</span>`,
|
||||||
|
])
|
||||||
|
this.locationConfig.data = eqArr
|
||||||
|
this.$refs['locationScrollBoard'].updateRows(eqArr)
|
||||||
|
},
|
||||||
getTimesInterval: function () {
|
getTimesInterval: function () {
|
||||||
let _this = this;
|
let _this = this;
|
||||||
let year = new Date().getFullYear(); //获取当前时间的年份
|
let year = new Date().getFullYear(); //获取当前时间的年份
|
||||||
@ -401,7 +523,7 @@ export default {
|
|||||||
})
|
})
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
screenfull.toggle(this.$refs.container)
|
screenfull.toggle()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -428,22 +550,22 @@ export default {
|
|||||||
letter-spacing: 8px;
|
letter-spacing: 8px;
|
||||||
// word-spacing: 8px;
|
// word-spacing: 8px;
|
||||||
position: relative;
|
position: relative;
|
||||||
.unit{
|
.unit {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 240px;
|
left: 240px;
|
||||||
top:25px;
|
top: 25px;
|
||||||
color: rgba($color: #ffffff, $alpha: 8);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: 0px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
.time{
|
.time {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 1400px;
|
left: 1400px;
|
||||||
top:25px;
|
top: 25px;
|
||||||
color: rgba($color: #ffffff, $alpha: 8);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: 0px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
.title-button {
|
.title-button {
|
||||||
color: #00fff0;
|
color: #00fff0;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
@ -495,7 +617,9 @@ export default {
|
|||||||
// .container-main {
|
// .container-main {
|
||||||
// padding: 5px;
|
// padding: 5px;
|
||||||
// }
|
// }
|
||||||
|
.order::-webkit-scrollbar{
|
||||||
|
display: none
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style lang="scss" >
|
<style lang="scss" >
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2024-01-29 16:50:26
|
* @Date: 2024-01-29 16:50:26
|
||||||
* @LastEditTime: 2024-03-27 17:02:27
|
* @LastEditTime: 2024-03-28 16:35:49
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
@ -17,10 +17,10 @@
|
|||||||
许昌安彩冷端看板
|
许昌安彩冷端看板
|
||||||
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
||||||
<h3 class="time">{{ times }}</h3>
|
<h3 class="time">{{ times }}</h3>
|
||||||
<el-button type="text" class="title-button" :style="{ right: 33 + 'px', top: 37 + 'px' }"
|
<el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px',fontSize:'32px'}"
|
||||||
@click="changeFullScreen">
|
@click="changeFullScreen">
|
||||||
<svg-icon v-if="isFullScreen" icon-class="unFullScreenView" />
|
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
||||||
<svg-icon v-else icon-class="fullScreenView" />
|
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row class="container-main flex-col" type="flex">
|
<el-row class="container-main flex-col" type="flex">
|
||||||
@ -97,21 +97,21 @@
|
|||||||
</div> -->
|
</div> -->
|
||||||
<!-- 像下面这样表格里的limit值,也许可以用js动态计算出来 -->
|
<!-- 像下面这样表格里的limit值,也许可以用js动态计算出来 -->
|
||||||
<el-col :span="8" style="">
|
<el-col :span="8" style="">
|
||||||
<div style="font-size:20px;margin: 5px 0 10px 0">熔化风机</div>
|
<div style="color:rgba(82, 255, 248, 1);font-size:20px;margin: 5px 0 10px 0">熔化风机</div>
|
||||||
<!-- <base-table1 :page="1" :limit="999" :show-index="false" :table-config="EqMonitoringPropsFun"
|
<!-- <base-table1 :page="1" :limit="999" :show-index="false" :table-config="EqMonitoringPropsFun"
|
||||||
:table-data="funList" /> -->
|
:table-data="funList" /> -->
|
||||||
<dv-scroll-board :config="funConfig" style="width:100%;height:310px" ref='funScrollBoard' />
|
<dv-scroll-board :config="funConfig" style="width:100%;height:310px" ref='funScrollBoard' />
|
||||||
</el-col>
|
</el-col>
|
||||||
<span class="eqLine"></span>
|
<span class="eqLine"></span>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<div style="font-size:20px;margin: 5px 0 10px 0;">退火风机</div>
|
<div style="color:rgba(82, 255, 248, 1);font-size:20px;margin: 5px 0 10px 0;">退火风机</div>
|
||||||
<!-- <base-table1 :page="1" :limit="999" :show-index="false" :table-config="EqMonitoringPropsFun"
|
<!-- <base-table1 :page="1" :limit="999" :show-index="false" :table-config="EqMonitoringPropsFun"
|
||||||
:table-data="annealFunList" /> -->
|
:table-data="annealFunList" /> -->
|
||||||
<dv-scroll-board :config="annealFunConfig" style="width:100%;height:310px" ref='annealFunScrollBoard' />
|
<dv-scroll-board :config="annealFunConfig" style="width:100%;height:310px" ref='annealFunScrollBoard' />
|
||||||
</el-col>
|
</el-col>
|
||||||
<span class="eqLineTwo"></span>
|
<span class="eqLineTwo"></span>
|
||||||
<el-col :span="8" style="float: right;">
|
<el-col :span="8" style="float: right;">
|
||||||
<div style="font-size:20px;margin: 5px 0 10px 0;">产线设备</div>
|
<div style="color:rgba(82, 255, 248, 1);font-size:20px;margin: 5px 0 10px 0;">产线设备</div>
|
||||||
<!-- <base-table1 :page="1" :limit="999" :show-index="false" :table-config="EqMonitoringProps"
|
<!-- <base-table1 :page="1" :limit="999" :show-index="false" :table-config="EqMonitoringProps"
|
||||||
:table-data="realEqList" /> -->
|
:table-data="realEqList" /> -->
|
||||||
<dv-scroll-board :config="realEqConfig" style="width:100%;height:310px" ref='realEqScrollBoard' />
|
<dv-scroll-board :config="realEqConfig" style="width:100%;height:310px" ref='realEqScrollBoard' />
|
||||||
@ -272,11 +272,14 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
isFullScreen: function (val) {
|
isFullScreen:function (val) {
|
||||||
if (val) {
|
if (val) {
|
||||||
this.beilv = document.body.offsetWidth / 1920
|
const _this = this;
|
||||||
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
|
console.log(_this.beilv2);
|
||||||
} else {
|
} else {
|
||||||
this.beilv = document.getElementById('container').offsetWidth / 1920
|
const _this = this;
|
||||||
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
clientWidth(val) {
|
clientWidth(val) {
|
||||||
@ -298,6 +301,7 @@ export default {
|
|||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
window.location.reload()
|
window.location.reload()
|
||||||
}, 86400000)
|
}, 86400000)
|
||||||
|
// this.getData()
|
||||||
},
|
},
|
||||||
destroyed() {
|
destroyed() {
|
||||||
this.CutWebsocketClose()
|
this.CutWebsocketClose()
|
||||||
@ -310,81 +314,85 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
// let nameList = []
|
let nameList = []
|
||||||
// let nameWasteList = []
|
let nameWasteList = []
|
||||||
// let topNameList = []
|
let topNameList = []
|
||||||
// let productList = []
|
let productList = []
|
||||||
// let wasteList = []
|
let wasteList = []
|
||||||
// // let sumAreaList = []
|
let yieldList = []
|
||||||
// // let yieldList = []
|
// let sumAreaList = []
|
||||||
// // this.cutTableDataList =
|
// let yieldList = []
|
||||||
// let coldDetData = [
|
// this.cutTableDataList =
|
||||||
// {
|
let coldDetData = [
|
||||||
// "first": 0.8834,
|
{
|
||||||
// "lineName": "Y61",
|
"first": 0.8834,
|
||||||
// "product": 0.8834,
|
"lineName": "Y61",
|
||||||
// "productArea": 35069.28,
|
"product": 0.8834,
|
||||||
// "second": 0,
|
"productArea": 35069.28,
|
||||||
// 'sumArea': 38400,
|
"second": 0,
|
||||||
// 'wastArea': 3330.72,
|
'sumArea': 38400,
|
||||||
// "waste": 0.1166
|
'wastArea': 3330.72,
|
||||||
// },
|
"yield": 0.9133
|
||||||
// {
|
},
|
||||||
// "first": 0.847,
|
{
|
||||||
// "lineName": "Y62",
|
"first": 0.847,
|
||||||
// "product": 0.847,
|
"lineName": "Y62",
|
||||||
// "productArea": 26765.46,
|
"product": 0.847,
|
||||||
// "second": 0,
|
"productArea": 26765.46,
|
||||||
// 'sumArea': 1111111,
|
"second": 0,
|
||||||
// 'wastArea': 22222,
|
'sumArea': 1111111,
|
||||||
// "waste": 0.153
|
'wastArea': 22222,
|
||||||
// },
|
"yield": 0.9133
|
||||||
// {
|
},
|
||||||
// "first": 0.8668,
|
{
|
||||||
// "lineName": "Y63",
|
"first": 0.8668,
|
||||||
// "product": 0.8668,
|
"lineName": "Y63",
|
||||||
// "productArea": 26448.46,
|
"product": 0.8668,
|
||||||
// "second": 0,
|
"productArea": 26448.46,
|
||||||
// 'sumArea': 1111111,
|
"second": 0,
|
||||||
// 'wastArea': 22222,
|
'sumArea': 1111111,
|
||||||
// "waste": 0.1332
|
'wastArea': 22222,
|
||||||
// },
|
"yield": 0.9133
|
||||||
// {
|
},
|
||||||
// "first": 0.9064,
|
{
|
||||||
// "lineName": "Y64",
|
"first": 0.9064,
|
||||||
// "product": 0.9064,
|
"lineName": "Y64",
|
||||||
// "productArea": 26667.32,
|
"product": 0.9064,
|
||||||
// "second": 0,
|
"productArea": 26667.32,
|
||||||
// 'sumArea': 1111111,
|
"second": 0,
|
||||||
// 'wastArea': 22222,
|
'sumArea': 1111111,
|
||||||
// "waste": 0.0936
|
'wastArea': 22222,
|
||||||
// },
|
"yield": 0.9133
|
||||||
// {
|
},
|
||||||
// "first": 0.8838,
|
{
|
||||||
// "lineName": "Y65",
|
"first": 0.8838,
|
||||||
// "product": 0.8838,
|
"lineName": "Y65",
|
||||||
// "productArea": 26554.32,
|
"product": 0.8838,
|
||||||
// "second": 0,
|
"productArea": 26554.32,
|
||||||
// 'sumArea': 1111111,
|
"second": 0,
|
||||||
// 'wastArea': 22222,
|
'sumArea': 1111111,
|
||||||
// "waste": 0.1162
|
'wastArea': 22222,
|
||||||
// }
|
"yield": 0.9133
|
||||||
// ]
|
}
|
||||||
// coldDetData.forEach((ele, index) => {
|
]
|
||||||
// nameList.push(ele.lineName)
|
coldDetData.forEach((ele, index) => {
|
||||||
// topNameList.push('产线: ' + ele.lineName + ' ' + '总面积:' + ele.sumArea)
|
nameList.push(ele.lineName)
|
||||||
// productList.push(ele.productArea)
|
topNameList.push('产线: ' + ele.lineName + ' ' + '总面积:' + ele.sumArea)
|
||||||
// wasteList.push(ele.wastArea)
|
productList.push(ele.productArea)
|
||||||
// nameWasteList.push('缺陷面积:' + ele.wastArea)
|
wasteList.push(ele.wastArea)
|
||||||
// // sumAreaList.push(ele.sumArea)
|
nameWasteList.push('缺陷面积:' + ele.wastArea)
|
||||||
// // yieldList.push((ele.yield * 100).toFixed(3))
|
yieldList.push({
|
||||||
// })
|
name: '良品',
|
||||||
// this.$refs.firstPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
yield:ele.yield
|
||||||
// this.$refs.secondPileChart.initChart(nameList, [topNameList[1]], [nameWasteList[1]], [productList[1]], [wasteList[1]])
|
})
|
||||||
// this.$refs.thirdPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
// sumAreaList.push(ele.sumArea)
|
||||||
// this.$refs.fourthPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
// yieldList.push((ele.yield * 100).toFixed(3))
|
||||||
// this.$refs.fifthPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
})
|
||||||
|
this.$refs.firstPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
||||||
|
this.$refs.secondPileChart.initChart(nameList, [topNameList[1]], [nameWasteList[1]], [productList[1]], [wasteList[1]])
|
||||||
|
this.$refs.thirdPileChart.initChart(nameList, [topNameList[2]], [nameWasteList[2]], [productList[2]], [wasteList[2]])
|
||||||
|
this.$refs.fourthPileChart.initChart(nameList, [topNameList[3]], [nameWasteList[3]], [productList[3]], [wasteList[3]])
|
||||||
|
this.$refs.fifthPileChart.initChart(nameList, [topNameList[4]], [nameWasteList[4]], [productList[4]], [wasteList[4]])
|
||||||
// this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
// this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
||||||
this.getTimes()
|
this.getTimes()
|
||||||
// console.log(moment(this.logoutTime - 28800000).format('HH:mm:ss'));
|
// console.log(moment(this.logoutTime - 28800000).format('HH:mm:ss'));
|
||||||
@ -406,6 +414,39 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// getData() {
|
||||||
|
// let detData = [
|
||||||
|
// {
|
||||||
|
// name: '1',
|
||||||
|
// run: '运行',
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: '2',
|
||||||
|
// run: '未运行',
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: '3',
|
||||||
|
// run: '运行',
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: '4',
|
||||||
|
// run: '未运行',
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: '1',
|
||||||
|
// run: '运行',
|
||||||
|
// },
|
||||||
|
// ]
|
||||||
|
// this.realEqList = detData.map((item, index) => [
|
||||||
|
// // console.log(item)
|
||||||
|
// `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
|
// </span>`,
|
||||||
|
// `<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</span>`,
|
||||||
|
// `<span style="color:rgba(255,255,255,0.5)"><div style="${item.run == '运行' ? 'box-shadow: 0px 0px 2px 1px #2760FF;width:6px;height:6px;border-radius: 50%;background-color: #2760FF;float:left;margin:10px 10px 0 0 ' : 'box-shadow: 0px 0px 2px 1px #FFBD02;width:6px;height:6px;border-radius: 50%; background-color: #FFBD02;float:left;margin:10px 10px 0 0 '}"></div> ${item.run || ''}</span>`,
|
||||||
|
// ])
|
||||||
|
// this.realEqConfig.data = this.realEqList
|
||||||
|
// this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
||||||
|
// },
|
||||||
CutWebsocketClose(e) {
|
CutWebsocketClose(e) {
|
||||||
this.Cutws.ws.onclose = (event) => { console.log(event );}
|
this.Cutws.ws.onclose = (event) => { console.log(event );}
|
||||||
},
|
},
|
||||||
@ -480,11 +521,14 @@ export default {
|
|||||||
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
</span>`,
|
</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.run || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)"><div style="${item.run == '运行' ? 'box-shadow: 0px 0px 2px 1px #2760FF;width:6px;height:6px;border-radius: 50%;background-color: #2760FF;float:left;margin:10px 10px 0 0 ' : 'box-shadow: 0px 0px 2px 1px #FFBD02;width:6px;height:6px;border-radius: 50%; background-color: #FFBD02;float:left;margin:10px 10px 0 0 '}"></div> ${item.run || ''}</span>`,
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
this.realEqConfig.data = this.realEqList
|
this.realEqConfig.data = this.realEqList
|
||||||
this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
this.$nextTick(() => {
|
||||||
|
this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
||||||
|
|
||||||
|
})
|
||||||
};
|
};
|
||||||
// if (typeof (WebSocket) === 'undefined') {
|
// if (typeof (WebSocket) === 'undefined') {
|
||||||
// alert('您的浏览器不支持WebSocket')
|
// alert('您的浏览器不支持WebSocket')
|
||||||
@ -545,7 +589,7 @@ export default {
|
|||||||
wasteList.push(ele.wastArea)
|
wasteList.push(ele.wastArea)
|
||||||
nameWasteList.push('缺陷面积:' + ele.wastArea)
|
nameWasteList.push('缺陷面积:' + ele.wastArea)
|
||||||
sumAreaList.push(ele.sumArea)
|
sumAreaList.push(ele.sumArea)
|
||||||
yieldList.push((ele.yield * 100).toFixed(3))
|
yieldList.push(parseFloat((ele.yield * 100).toFixed(3)))
|
||||||
})
|
})
|
||||||
this.$refs.firstPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
this.$refs.firstPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
||||||
this.$refs.secondPileChart.initChart(nameList, [topNameList[1]], [nameWasteList[1]], [productList[1]], [wasteList[1]])
|
this.$refs.secondPileChart.initChart(nameList, [topNameList[1]], [nameWasteList[1]], [productList[1]], [wasteList[1]])
|
||||||
@ -593,8 +637,8 @@ export default {
|
|||||||
</span>`,
|
</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${i || ''}
|
`<span style="color:rgba(255,255,255,0.5)" >${i || ''}
|
||||||
</span>`,
|
</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)"><div style="${this.funWsData.data.annealFanInfo[i] == '3片' ? 'width:10px;height:10px;border-radius: 50%; background-color: blue;float:left;margin:12px 10px 0 0 ' : 'width:10px;height:10px;border-radius: 50%; background-color: yellow;float:left;margin:12px 10px 0 0 '}"></div> ${this.funWsData.data.annealFanInfo[i] || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</span>`,
|
||||||
// `<span style="color:rgba(255,255,255,0.5)"> ${this.funWsData.data.annealFanInfo[i] || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)"><div style="${item.run == '运行' ? 'box-shadow: 0px 0px 2px 1px #2760FF;width:6px;height:6px;border-radius: 50%;background-color: #2760FF;float:left;margin:10px 10px 0 0 ' : 'box-shadow: 0px 0px 2px 1px #FFBD02;width:6px;height:6px;border-radius: 50%; background-color: #FFBD02;float:left;margin:10px 10px 0 0 '}"></div> ${item.run || ''}</span>`,
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
this.annealFunConfig.data = arr
|
this.annealFunConfig.data = arr
|
||||||
@ -608,8 +652,8 @@ export default {
|
|||||||
arr.push([
|
arr.push([
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${index || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)" >${index || ''}</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${i || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)" >${i || ''}</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)"><div style="${this.funWsData.data.fanInfo[i] == '3片' ? 'width:10px;height:10px;border-radius: 50%; background-color: blue;float:left;margin:12px 10px 0 0 ' : 'width:10px;height:10px;border-radius: 50%; background-color: yellow;float:left;margin:12px 10px 0 0 '}"></div> ${this.funWsData.data.fanInfo[i] || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</span>`,
|
||||||
// `<span style="color:rgba(255,255,255,0.5)">${this.funWsData.data.fanInfo[i] || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)"><div style="${item.run == '运行' ? 'box-shadow: 0px 0px 2px 1px #2760FF;width:6px;height:6px;border-radius: 50%;background-color: #2760FF;float:left;margin:10px 10px 0 0 ' : 'box-shadow: 0px 0px 2px 1px #FFBD02;width:6px;height:6px;border-radius: 50%; background-color: #FFBD02;float:left;margin:10px 10px 0 0 '}"></div> ${item.run || ''}</span>`,
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
this.funConfig.data = arr
|
this.funConfig.data = arr
|
||||||
@ -694,79 +738,6 @@ export default {
|
|||||||
// console.log(size[0] + '*' + size[1] + '*' + size[2]);
|
// console.log(size[0] + '*' + size[1] + '*' + size[2]);
|
||||||
return size[0] + '*' + size[1] + '*' + size[2]
|
return size[0] + '*' + size[1] + '*' + size[2]
|
||||||
},
|
},
|
||||||
// 数据接收
|
|
||||||
// cutWebsocketOnMessage(e) {
|
|
||||||
// this.cutWsData = e?.data ? JSON.parse(e?.data) : {}
|
|
||||||
// if (this.cutWsData.type === 'cutting' && this.cutWsData.name === 'table') {
|
|
||||||
// let cutArr = this.cutWsData.productHourData.map((item, index) => [
|
|
||||||
// `<span style="color:rgba(255,255,255,0.7)" >${index + 1 || ''}
|
|
||||||
// </span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.7)" >${item.lineName || ''}
|
|
||||||
// </span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.7)">${this.formatTime(item.time) || ''}</span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.7)">${this.getSize(item.size) || ''}</span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.7)">${item.productArea + '㎡' || ''}</span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.7)">${item.wasteArea + '㎡' || ''}</span>`,
|
|
||||||
// `<div style = "${(item.product * 100).toFixed(2) > 91 ? 'display:block;color:#00FFF7' : 'display:none;'}">${(item.product * 100).toFixed(2) + '%' || ''}</div>
|
|
||||||
// <div style = "${(item.product * 100).toFixed(2) < 91 ? 'display:block; color:rgba(255, 209, 96, 1)' : 'display:none;'}">${(item.product * 100).toFixed(2) + '%' || ''}</div>`
|
|
||||||
// ])
|
|
||||||
// this.cutConfig.data = cutArr
|
|
||||||
// this.$refs['cutScrollBoard'].updateRows(cutArr)
|
|
||||||
// } else if (this.cutWsData.type === 'cutting' && this.cutWsData.name === 'chart' && this.cutWsData.dateType === 'day') {
|
|
||||||
// let nameList = []
|
|
||||||
// let nameWasteList = []
|
|
||||||
// let topNameList = []
|
|
||||||
// let productList = []
|
|
||||||
// let wasteList = []
|
|
||||||
// let sumAreaList = []
|
|
||||||
// let yieldList = []
|
|
||||||
// // this.cutTableDataList =
|
|
||||||
// this.cutWsData.coldDetData.forEach((ele, index) => {
|
|
||||||
// nameList.push(ele.lineName)
|
|
||||||
// topNameList.push('产线: ' + ele.lineName + ' ' + '总面积:' + ele.sumArea)
|
|
||||||
// productList.push(ele.productArea)
|
|
||||||
// wasteList.push(ele.wastArea)
|
|
||||||
// nameWasteList.push('缺陷面积:' + ele.wastArea)
|
|
||||||
// sumAreaList.push(ele.sumArea)
|
|
||||||
// yieldList.push((ele.yield *100).toFixed(3))
|
|
||||||
// })
|
|
||||||
// this.$refs.pileChart.initChart(nameList, topNameList, nameWasteList, productList, wasteList)
|
|
||||||
// this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
// SJGWebsocketOnOpen() {
|
|
||||||
// console.log('socket连接成功')
|
|
||||||
// this.SJGWebsocket.onmessage()
|
|
||||||
// },
|
|
||||||
// 连接建立失败重连
|
|
||||||
// SJGWebsocketOnError(e) {
|
|
||||||
// this.SJGInitWebSocket()
|
|
||||||
// },
|
|
||||||
// 数据接收
|
|
||||||
// SJGWebsocketOnMessage(e) {
|
|
||||||
// this.SJGWsData = e?.data ? JSON.parse(e?.data) : {}
|
|
||||||
// if (this.SJGWsData.type === 'isra') {
|
|
||||||
// console.log('222222', this.SJGWsData.detData)
|
|
||||||
// console.log(this.SJGWsData.detData);
|
|
||||||
// let chartData = this.SJGWsData.detData.map((item, index) => {
|
|
||||||
// return {
|
|
||||||
// name: item.type,
|
|
||||||
// num:item.num
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
// this.$refs['ISRAChart'].updateChart(chartData)
|
|
||||||
// } else if (this.SJGWsData.type === 'equipment') {
|
|
||||||
// this.realEqList = this.SJGWsData.detData.map((ele, index) =>[
|
|
||||||
// // console.log(item)
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
|
||||||
// </span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)">${ele.name || ''}</span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)">${ele.run || ''}</span>`,
|
|
||||||
// ])
|
|
||||||
// }
|
|
||||||
// this.realEqConfig.data = this.realEqList
|
|
||||||
// this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
|
||||||
// },
|
|
||||||
windowWidth(value) {
|
windowWidth(value) {
|
||||||
this.clientWidth = value
|
this.clientWidth = value
|
||||||
this.beilv2 = this.clientWidth / 1920
|
this.beilv2 = this.clientWidth / 1920
|
||||||
@ -786,7 +757,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
changeFullScreen() {
|
changeFullScreen() {
|
||||||
this.containerWidth = 223223223
|
// this.containerWidth = 223223223
|
||||||
if (!screenfull.isEnabled) {
|
if (!screenfull.isEnabled) {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: 'you browser can not work',
|
message: 'you browser can not work',
|
||||||
@ -794,7 +765,7 @@ export default {
|
|||||||
})
|
})
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
screenfull.toggle(this.$refs.container)
|
screenfull.toggle()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -884,6 +855,10 @@ export default {
|
|||||||
top: 2em;
|
top: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.screen-btn {
|
||||||
|
color: #00fff0;
|
||||||
|
font-size: 32px;
|
||||||
|
}
|
||||||
// .container-main {
|
// .container-main {
|
||||||
// padding: 5px;
|
// padding: 5px;
|
||||||
// }
|
// }
|
||||||
@ -972,6 +947,7 @@ background: linear-gradient(to bottom,rgba(60,
|
|||||||
margin-left: 3em;
|
margin-left: 3em;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
@ -1030,4 +1006,5 @@ background: linear-gradient(to bottom,rgba(60,
|
|||||||
.tooltip:hover .tooltiptext {
|
.tooltip:hover .tooltiptext {
|
||||||
visibility: visible;
|
visibility: visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-01-21 14:43:06
|
* @Date: 2022-01-21 14:43:06
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2022-01-24 13:27:41
|
* @LastEditTime: 2024-03-28 16:30:54
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -61,7 +61,7 @@ export default {
|
|||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.initChart()
|
// this.initChart()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-01-21 14:43:06
|
* @Date: 2022-01-21 14:43:06
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-01-25 17:41:44
|
* @LastEditTime: 2024-03-28 16:45:24
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -90,6 +90,7 @@ export default {
|
|||||||
bottom: 0,
|
bottom: 0,
|
||||||
itemHeight: 10,
|
itemHeight: 10,
|
||||||
itemWidth: 10,
|
itemWidth: 10,
|
||||||
|
icon:'roundRect',
|
||||||
formatter: function(name) {
|
formatter: function(name) {
|
||||||
let pieLegendVale = {}
|
let pieLegendVale = {}
|
||||||
lData.filter((item, index) => {
|
lData.filter((item, index) => {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2023-09-21 09:06:28
|
* @Date: 2023-09-21 09:06:28
|
||||||
* @LastEditTime: 2024-03-27 14:37:35
|
* @LastEditTime: 2024-03-28 16:31:20
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
@ -78,7 +78,7 @@ export default {
|
|||||||
this.$el.addEventListener('resize', () => {
|
this.$el.addEventListener('resize', () => {
|
||||||
console.log('resziing.....');
|
console.log('resziing.....');
|
||||||
});
|
});
|
||||||
this.initChart()
|
// this.initChart()
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
if (!this.chart) {
|
if (!this.chart) {
|
||||||
@ -112,7 +112,7 @@ export default {
|
|||||||
}
|
}
|
||||||
// barBorderRadius: this.borderRadius
|
// barBorderRadius: this.borderRadius
|
||||||
},
|
},
|
||||||
barWidth: 12,
|
barWidth: 18,
|
||||||
data: outputNumList
|
data: outputNumList
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -166,7 +166,7 @@ export default {
|
|||||||
type: 'cross'
|
type: 'cross'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
grid: { top: 90, right: 60, bottom: 20, left: 90, containLabel: true },
|
grid: { top: 90, right: 60, bottom: 20, left: 20, containLabel: true },
|
||||||
legend: {
|
legend: {
|
||||||
itemWidth: 10,
|
itemWidth: 10,
|
||||||
itemHeight: 10,
|
itemHeight: 10,
|
||||||
|
@ -70,7 +70,7 @@ export default {
|
|||||||
// this.dataList.forEach(ele => {
|
// this.dataList.forEach(ele => {
|
||||||
// console.log(ele);
|
// console.log(ele);
|
||||||
// this.series = []
|
// this.series = []
|
||||||
this.initChart()
|
// this.initChart()
|
||||||
// this.$nextTick(() => {
|
// this.$nextTick(() => {
|
||||||
// // this.initChart()
|
// // this.initChart()
|
||||||
// })
|
// })
|
||||||
@ -118,7 +118,7 @@ export default {
|
|||||||
}
|
}
|
||||||
// barBorderRadius: this.borderRadius
|
// barBorderRadius: this.borderRadius
|
||||||
},
|
},
|
||||||
barWidth: 12,
|
barWidth: 18,
|
||||||
}]
|
}]
|
||||||
// }
|
// }
|
||||||
// if (nameList.length !== 0) {
|
// if (nameList.length !== 0) {
|
||||||
@ -132,7 +132,7 @@ export default {
|
|||||||
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
grid: { top: 90, right: 60, bottom: 20, left: 90, containLabel: true },
|
grid: { top: 90, right: 60, bottom: 20, left: 30, containLabel: true },
|
||||||
// legend: {
|
// legend: {
|
||||||
// itemWidth: 10,
|
// itemWidth: 10,
|
||||||
// itemHeight: 10,
|
// itemHeight: 10,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2023-12-27 13:54:52
|
* @Date: 2023-12-27 13:54:52
|
||||||
* @LastEditTime: 2024-03-27 16:50:04
|
* @LastEditTime: 2024-03-28 16:30:14
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
@ -15,6 +15,7 @@
|
|||||||
import * as echarts from 'echarts';
|
import * as echarts from 'echarts';
|
||||||
import 'echarts/theme/macarons' // echarts theme
|
import 'echarts/theme/macarons' // echarts theme
|
||||||
import resize from './mixins/resize'
|
import resize from './mixins/resize'
|
||||||
|
import { raw } from 'body-parser';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'OverviewBar',
|
name: 'OverviewBar',
|
||||||
@ -77,7 +78,7 @@ export default {
|
|||||||
// this.dataList.forEach(ele => {
|
// this.dataList.forEach(ele => {
|
||||||
// console.log(ele);
|
// console.log(ele);
|
||||||
// this.series = []
|
// this.series = []
|
||||||
this.initChart()
|
// this.initChart()
|
||||||
// this.$nextTick(() => {
|
// this.$nextTick(() => {
|
||||||
// // this.initChart()
|
// // this.initChart()
|
||||||
// })
|
// })
|
||||||
@ -94,7 +95,8 @@ export default {
|
|||||||
let rawData = []
|
let rawData = []
|
||||||
let colors = ['#0fdedb', '#2359ec']
|
let colors = ['#0fdedb', '#2359ec']
|
||||||
rawData.push(passRateList, wasteList)
|
rawData.push(passRateList, wasteList)
|
||||||
const totalData = [];
|
const totalData = [];
|
||||||
|
// if (rawData.length != 0 && raw,Data,length != 0) {
|
||||||
for (let i = 0; i < rawData[0].length; ++i) {
|
for (let i = 0; i < rawData[0].length; ++i) {
|
||||||
let sum = 0;
|
let sum = 0;
|
||||||
for (let j = 0; j < rawData.length; ++j) {
|
for (let j = 0; j < rawData.length; ++j) {
|
||||||
@ -102,7 +104,8 @@ export default {
|
|||||||
}
|
}
|
||||||
totalData.push(sum);
|
totalData.push(sum);
|
||||||
}
|
}
|
||||||
console.log('total', totalData);
|
// }
|
||||||
|
console.log('total', totalData)
|
||||||
this.chart = echarts.init(document.getElementById(this.id))
|
this.chart = echarts.init(document.getElementById(this.id))
|
||||||
const series = [
|
const series = [
|
||||||
'良品',
|
'良品',
|
||||||
@ -116,11 +119,11 @@ export default {
|
|||||||
name,
|
name,
|
||||||
type: 'bar',
|
type: 'bar',
|
||||||
stack: 'total',
|
stack: 'total',
|
||||||
barWidth: 10,
|
barWidth: 12,
|
||||||
label: {
|
// label: {
|
||||||
show: true,
|
// show: true,
|
||||||
formatter: (params) => Math.round(params.value * 1000) / 10 + '%'
|
// formatter: (params) => Math.round(params.value * 1000) / 10 + '%'
|
||||||
},
|
// },
|
||||||
color:colors[sid],
|
color:colors[sid],
|
||||||
data: rawData.length != 0 ? rawData[sid].map((d, did) =>
|
data: rawData.length != 0 ? rawData[sid].map((d, did) =>
|
||||||
totalData[did] <= 0 ? 0 : d / totalData[did]
|
totalData[did] <= 0 ? 0 : d / totalData[did]
|
||||||
@ -136,6 +139,13 @@ export default {
|
|||||||
// })
|
// })
|
||||||
this.chart.setOption({
|
this.chart.setOption({
|
||||||
legend: {
|
legend: {
|
||||||
|
formatter: function (name) {
|
||||||
|
//通过name获取到数组对象中的单个对象
|
||||||
|
let singleData = series.filter(function (item) {
|
||||||
|
return item.name == name
|
||||||
|
})
|
||||||
|
return name + parseFloat((singleData[0].data * 100).toFixed(3)) + '%'
|
||||||
|
},
|
||||||
itemWidth: 12,
|
itemWidth: 12,
|
||||||
itemHeight: 12,
|
itemHeight: 12,
|
||||||
bottom: '20',
|
bottom: '20',
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-07-19 15:18:30
|
* @Date: 2021-07-19 15:18:30
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-27 16:13:14
|
* @LastEditTime: 2024-03-28 16:10:47
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -16,10 +16,10 @@
|
|||||||
许昌安彩深加工看板
|
许昌安彩深加工看板
|
||||||
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
||||||
<h3 class="time">{{ times }}</h3>
|
<h3 class="time">{{ times }}</h3>
|
||||||
<el-button type="text" class="title-button" :style="{ right: 33 + 'px', top: 37 + 'px' }"
|
<el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px',fontSize:'32px'}"
|
||||||
@click="changeFullScreen">
|
@click="changeFullScreen">
|
||||||
<svg-icon v-if="isFullScreen" icon-class="unFullScreenView" />
|
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
||||||
<svg-icon v-else icon-class="fullScreenView" />
|
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row class="container-main flex-col" type="flex">
|
<el-row class="container-main flex-col" type="flex">
|
||||||
@ -27,10 +27,8 @@
|
|||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
||||||
<base-container :title="'设备报警'" :size="'small'" :height="318" :title-icon="'eqAlarm'">
|
<base-container :title="'设备报警'" :size="'small'" :height="318" :title-icon="'eqAlarm'">
|
||||||
<dv-scroll-board class="eqTable" :config="eqConfig" style="width:100%;height:350px" ref='eqScrollBoard' />
|
<dv-scroll-board class="eqTable" :config="eqConfig" style="width:100%;height:350px" ref='eqScrollBoard' />
|
||||||
|
|
||||||
</base-container>
|
</base-container>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
||||||
<base-container :title="'各工序缺陷汇总'" :size="'small'" :title-icon="'scrap'">
|
<base-container :title="'各工序缺陷汇总'" :size="'small'" :title-icon="'scrap'">
|
||||||
<dv-scroll-board :config="processConfig" style="width:100%;height:350px" ref='processScrollBoard' />
|
<dv-scroll-board :config="processConfig" style="width:100%;height:350px" ref='processScrollBoard' />
|
||||||
@ -39,11 +37,12 @@
|
|||||||
|
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
||||||
<base-container :height="318" :size="'small'" :title="'工单监控'" :title-icon="'eqMonitoring'">
|
<base-container :height="318" :size="'small'" :title="'工单监控'" :title-icon="'eqMonitoring'">
|
||||||
<div style="width:100%; overflow: hidden scroll;">
|
<div class="order" style="width:100%; overflow: hidden scroll;height: 350px;">
|
||||||
<el-row v-for="op in orderList" :key="op.id" style="margin-bottom: 1em">
|
<el-row v-for="op in orderList" :key="op.id" style="margin-bottom: 1em">
|
||||||
<!-- <el-col :span="12"> -->
|
<!-- <el-col :span="12"> -->
|
||||||
|
|
||||||
<p class="now-secondary-title">{{ op.name }}</p>
|
<p class="now-secondary-title">{{ op.name }}</p>
|
||||||
<el-progress define-back-color="rgba(32, 57, 96, 1)" text-color="white"
|
<el-progress :stroke-width="10" define-back-color="rgba(32, 57, 96, 1)" text-color="white"
|
||||||
:percentage="op.progressRate" class="custom-progress-bar" />
|
:percentage="op.progressRate" class="custom-progress-bar" />
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
@ -239,7 +238,6 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
// ...mapGetters(['sidebar']),
|
|
||||||
styles() {
|
styles() {
|
||||||
const v = Math.floor(this.value * this.beilv2 * 100) / 10000
|
const v = Math.floor(this.value * this.beilv2 * 100) / 10000
|
||||||
return {
|
return {
|
||||||
@ -248,8 +246,17 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
|
isFullScreen: function (val) {
|
||||||
|
if (val) {
|
||||||
|
const _this = this;
|
||||||
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
|
console.log(_this.beilv2);
|
||||||
|
} else {
|
||||||
|
const _this = this;
|
||||||
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
|
}
|
||||||
|
},
|
||||||
clientWidth(val) {
|
clientWidth(val) {
|
||||||
if (!this.timer) {
|
if (!this.timer) {
|
||||||
this.clientWidth = val
|
this.clientWidth = val
|
||||||
@ -260,12 +267,10 @@ export default {
|
|||||||
_this.timer = false
|
_this.timer = false
|
||||||
}, 500)
|
}, 500)
|
||||||
}
|
}
|
||||||
// 这里可以添加修改时的方法
|
|
||||||
this.windowWidth(val);
|
this.windowWidth(val);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getData()
|
|
||||||
this.init()
|
this.init()
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
window.location.reload()
|
window.location.reload()
|
||||||
@ -276,66 +281,67 @@ export default {
|
|||||||
this.SJGWebsocketClose()
|
this.SJGWebsocketClose()
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
let detData = [
|
// let detData = [
|
||||||
{
|
// {
|
||||||
id:'1',
|
// id:'1',
|
||||||
name: '测试工单',
|
// name: '测试工单',
|
||||||
progressRate:0.933333
|
// progressRate:0.933333
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
id: '2',
|
// id: '2',
|
||||||
name: '测试工单2',
|
// name: '测试工单2',
|
||||||
progressRate: 0.932323
|
// progressRate: 0.932323
|
||||||
}, {
|
// }, {
|
||||||
id: '3',
|
// id: '3',
|
||||||
name: '测试工单3',
|
// name: '测试工单3',
|
||||||
progressRate: 0.23232
|
// progressRate: 0.23232
|
||||||
}, {
|
// }, {
|
||||||
id: '4',
|
// id: '4',
|
||||||
name: '测试工单4',
|
// name: '测试工单4',
|
||||||
progressRate: 0.32323
|
// progressRate: 0.32323
|
||||||
}, {
|
// }
|
||||||
id: '5',
|
// // {
|
||||||
name: '测试工单',
|
// // id: '5',
|
||||||
progressRate: 0.5555
|
// // name: '测试工单',
|
||||||
}, {
|
// // progressRate: 0.5555
|
||||||
id: '6',
|
// // }, {
|
||||||
name: '测试工单',
|
// // id: '6',
|
||||||
progressRate: 0.66564
|
// // name: '测试工单',
|
||||||
},
|
// // progressRate: 0.66564
|
||||||
]
|
// // },
|
||||||
this.orderList = detData.map((ele, index) => {
|
// ]
|
||||||
if (ele.progressRate && ele.progressRate != 1) {
|
// this.orderList = detData.map((ele, index) => {
|
||||||
return {
|
// if (ele.progressRate && ele.progressRate != 1) {
|
||||||
id: ele.id,
|
// return {
|
||||||
name: ele.name,
|
// id: ele.id,
|
||||||
progressRate: parseFloat((ele.progressRate * 100).toFixed(3))
|
// name: ele.name,
|
||||||
}
|
// progressRate: parseFloat((ele.progressRate * 100).toFixed(3))
|
||||||
}
|
// }
|
||||||
});
|
// }
|
||||||
let EnergyNameList = ['Y61', 'Y62', 'Y63', 'Y64', 'Y65',]
|
// });
|
||||||
this.EnergyMonitoringNameList = EnergyNameList
|
// let EnergyNameList = ['Y61', 'Y62', 'Y63', 'Y64', 'Y65',]
|
||||||
let EnergyDataList = [1, 2, 3, 4, 5]
|
// this.EnergyMonitoringNameList = EnergyNameList
|
||||||
// this.wsData.data.forEach((ele) => {
|
// let EnergyDataList = [1, 2, 3, 4, 5]
|
||||||
// EnergyDataList.push(ele.useQuantity)
|
// // this.wsData.data.forEach((ele) => {
|
||||||
// })
|
// // EnergyDataList.push(ele.useQuantity)
|
||||||
this.EnergyMonitoringList = EnergyDataList
|
// // })
|
||||||
// console.log(EnergyDataList)
|
// this.EnergyMonitoringList = EnergyDataList
|
||||||
this.$refs.EnergyMonitoringChart.initChart(this.EnergyMonitoringNameList, this.EnergyMonitoringList)
|
// // console.log(EnergyDataList)
|
||||||
let eqArr = this.qualityYearList.map((item, index) => [
|
// this.$refs.EnergyMonitoringChart.initChart(this.EnergyMonitoringNameList, this.EnergyMonitoringList)
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
// let eqArr = this.qualityYearList.map((item, index) => [
|
||||||
</span>`,
|
// `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
// formatDate(item.planStartTime) || '',
|
// </span>`,
|
||||||
`
|
// // formatDate(item.planStartTime) || '',
|
||||||
<span style="color:rgba(255,255,255,0.5)" >${item.name || ''}
|
// `
|
||||||
</span>`,
|
// <span style="color:rgba(255,255,255,0.5)" >${item.name || ''}
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.code || ''}</span>`,
|
// </span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.status || ''}</span>`,
|
// `<span style="color:rgba(255,255,255,0.5)">${item.code || ''}</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.error || ''}</span>`,
|
// `<span style="color:rgba(255,255,255,0.5)">${item.status || ''}</span>`,
|
||||||
])
|
// `<span style="color:rgba(255,255,255,0.5)">${item.error || ''}</span>`,
|
||||||
this.eqConfig.data = eqArr
|
// ])
|
||||||
this.$refs['eqScrollBoard'].updateRows(eqArr)
|
// this.eqConfig.data = eqArr
|
||||||
this.$refs.productLineChart.initChart(['D61', 'D62', 'D63', 'D64', 'D65',], [98, 97, 98.7, 98.5, 98.3,], [3134, 2323, 3232, 3233, 2321])
|
// this.$refs['eqScrollBoard'].updateRows(eqArr)
|
||||||
|
// this.$refs.productLineChart.initChart(['D61', 'D62', 'D63', 'D64', 'D65',], [98, 97, 98.7, 98.5, 98.3,], [3134, 2323, 3232, 3233, 2321])
|
||||||
// this.getList()
|
// this.getList()
|
||||||
this.initWebSocket()
|
this.initWebSocket()
|
||||||
this.SJGInitWebSocket()
|
this.SJGInitWebSocket()
|
||||||
@ -349,7 +355,9 @@ export default {
|
|||||||
this.beilv2 = _this.clientWidth / 1920
|
this.beilv2 = _this.clientWidth / 1920
|
||||||
})()
|
})()
|
||||||
}
|
}
|
||||||
|
this.getData()
|
||||||
},
|
},
|
||||||
|
|
||||||
// beforeDestroy() {
|
// beforeDestroy() {
|
||||||
// //离开页面删除检测器和所有侦听器
|
// //离开页面删除检测器和所有侦听器
|
||||||
// // erd.uninstall(document); //这里用ref是因为vue离开页面后获取不到dom
|
// // erd.uninstall(document); //这里用ref是因为vue离开页面后获取不到dom
|
||||||
@ -540,122 +548,10 @@ export default {
|
|||||||
} else if (this.SJGInitWebSocket === 'inspection') {
|
} else if (this.SJGInitWebSocket === 'inspection') {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
// if (typeof (WebSocket) === 'undefined') {
|
|
||||||
// alert('您的浏览器不支持WebSocket')
|
|
||||||
// } else {
|
|
||||||
// let date = new Date().valueOf()
|
|
||||||
// // console.log(date);
|
|
||||||
// console.log(process.env);
|
|
||||||
// const SJGWsUrl = process.env.VUE_APP_Socket_API + `/websocket/message?userId=SJG${date}`
|
|
||||||
// this.SJGWebsocket = new WebSocket(SJGWsUrl)
|
|
||||||
// // 监听 WebSocket 连接
|
|
||||||
// this.SJGWebsocket.onopen = this.SJGWebsocketOnOpen
|
|
||||||
// // 监听 WebSocket 错误信息
|
|
||||||
// this.SJGWebsocket.onerror = this.SJGWebsocketOnError
|
|
||||||
// // 监听 WebSocket 消息
|
|
||||||
// this.SJGWebsocket.onmessage = this.SJGWebsocketOnMessage
|
|
||||||
// // 监听 webSocket 断开信息
|
|
||||||
// this.SJGWebsocket.onclose = this.SJGWebsocketClose
|
|
||||||
// }
|
|
||||||
},
|
},
|
||||||
// SJGWebsocketOnOpen() {
|
|
||||||
// console.log('socket连接成功')
|
|
||||||
// // console.log(this.SJGWebsocket.onmessage);
|
|
||||||
// this.SJGWebsocket.onmessage()
|
|
||||||
// },
|
|
||||||
// // 连接建立失败重连
|
|
||||||
// SJGWebsocketOnError(e) {
|
|
||||||
// // console.log('11111', e)
|
|
||||||
// this.SJGInitWebSocket()
|
|
||||||
// },
|
|
||||||
// 数据接收
|
|
||||||
// SJGWebsocketOnMessage(e) {
|
|
||||||
// console.log(1111, e)
|
|
||||||
// this.SJGWsData = e?.data ? JSON.parse(e?.data) : {}
|
|
||||||
// // console.log(this.wsData.detData);
|
|
||||||
// // console.log('22222', this.wsData.data)
|
|
||||||
// if (this.SJGWsData.type === 'order') {
|
|
||||||
// this.orderList = this.SJGWsData.detData.map((ele, index) => {
|
|
||||||
// if (ele.progressRate != 1) {
|
|
||||||
// return {
|
|
||||||
// id: ele.id,
|
|
||||||
// name: ele.name,
|
|
||||||
// progressRate: ele.progressRate.toFixed(3)
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
// console.log(this.orderList)
|
|
||||||
// } else if (this.SJGWsData.type === 'equipment') {
|
|
||||||
// let eqArr = this.SJGWsData.detData.map((item, index) => [
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
|
||||||
// </span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)" >${item.name || ''}
|
|
||||||
// </span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)">${item.code || ''}</span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)">${item.status || ''}</span>`,
|
|
||||||
// `<span style="color:rgba(255,255,255,0.5)">${item.error || ''}</span>`,
|
|
||||||
// ])
|
|
||||||
// this.eqConfig.data = eqArr
|
|
||||||
// this.$refs['eqScrollBoard'].updateRows(eqArr)
|
|
||||||
// // console.log(SJGWsData.orderList)
|
|
||||||
// } else if (this.SJGWsData.type === 'productline') {
|
|
||||||
// console.log('aaaaaaaaaaaaaaaaaaa', this.SJGWsData);
|
|
||||||
// let nameList = []
|
|
||||||
// let passRateList = []
|
|
||||||
// let outputNumList = []
|
|
||||||
// this.SJGWsData.detData.forEach((ele) => {
|
|
||||||
// // if (item.id == ele.productionLineId) {
|
|
||||||
// // if (item.name.substr(0, 1) == "D") {
|
|
||||||
// // console.log(ele)
|
|
||||||
// nameList.push(ele.lineName)
|
|
||||||
// outputNumList.push(ele.outputNum)
|
|
||||||
// passRateList.push(ele.passRate)
|
|
||||||
// // }
|
|
||||||
// // }
|
|
||||||
// })
|
|
||||||
// this.$refs.productLineChart.initChart(nameList, passRateList, outputNumList)
|
|
||||||
// } else if (this.SJGInitWebSocket === 'inspection') {
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
SJGWebsocketClose(e) {
|
SJGWebsocketClose(e) {
|
||||||
this.SJGws.ws.onclose = (event) => { console.log(event); }
|
this.SJGws.ws.onclose = (event) => { console.log(event); }
|
||||||
},
|
},
|
||||||
// // 连接建立之后执行send方法发送数据
|
|
||||||
// websocketOnOpen() {
|
|
||||||
// console.log('socket连接成功')
|
|
||||||
// this.websocket.onmessage()
|
|
||||||
// },
|
|
||||||
// 连接建立失败重连
|
|
||||||
// websocketOnError(e) {
|
|
||||||
// console.log('11111', e)
|
|
||||||
// this.initWebSocket()
|
|
||||||
// },
|
|
||||||
// 数据接收
|
|
||||||
// websocketOnMessage(e) {
|
|
||||||
// // console.log(1111, e)
|
|
||||||
// this.wsData = e?.data ? JSON.parse(e?.data) : {}
|
|
||||||
// // console.log('22222', this.wsData.data)
|
|
||||||
// if (this.wsData.type === 'EnergyMonitoring') {
|
|
||||||
// let EnergyNameList = []
|
|
||||||
// this.wsData.data.forEach((ele) => {
|
|
||||||
// EnergyNameList.push(ele.lineName)
|
|
||||||
// })
|
|
||||||
// this.EnergyMonitoringNameList = EnergyNameList
|
|
||||||
// let EnergyDataList = []
|
|
||||||
// this.wsData.data.forEach((ele) => {
|
|
||||||
// EnergyDataList.push(ele.useQuantity
|
|
||||||
// )
|
|
||||||
// })
|
|
||||||
// this.EnergyMonitoringList = EnergyDataList
|
|
||||||
// console.log(EnergyDataList)
|
|
||||||
// this.$refs.EnergyMonitoringChart.initChart(this.EnergyMonitoringNameList, this.EnergyMonitoringList)
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
// 数据发送
|
|
||||||
// websocketSend() {
|
|
||||||
// this.websocket.send('11111')
|
|
||||||
// },
|
|
||||||
// // 关闭
|
|
||||||
websocketClose(e) {
|
websocketClose(e) {
|
||||||
this.wsHeartbeat.ws.onclose = (event) => { console.log(event); }
|
this.wsHeartbeat.ws.onclose = (event) => { console.log(event); }
|
||||||
},
|
},
|
||||||
@ -664,10 +560,14 @@ export default {
|
|||||||
this.beilv2 = this.clientWidth / 1920
|
this.beilv2 = this.clientWidth / 1920
|
||||||
},
|
},
|
||||||
change() {
|
change() {
|
||||||
|
console.log(this.isFullScreen);
|
||||||
|
debugger;
|
||||||
this.isFullScreen = screenfull.isFullscreen
|
this.isFullScreen = screenfull.isFullscreen
|
||||||
},
|
},
|
||||||
init() {
|
init() {
|
||||||
|
console.log(screenfull.isEnabled);
|
||||||
if (screenfull.isEnabled) {
|
if (screenfull.isEnabled) {
|
||||||
|
debugger;
|
||||||
screenfull.on('change', this.change)
|
screenfull.on('change', this.change)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -677,7 +577,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
changeFullScreen() {
|
changeFullScreen() {
|
||||||
this.containerWidth = 223223223
|
// this.containerWidth = 223223223
|
||||||
if (!screenfull.isEnabled) {
|
if (!screenfull.isEnabled) {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: 'you browser can not work',
|
message: 'you browser can not work',
|
||||||
@ -685,7 +585,7 @@ export default {
|
|||||||
})
|
})
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
screenfull.toggle(this.$refs.container)
|
screenfull.toggle()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -712,18 +612,17 @@ export default {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
left: 290px;
|
left: 290px;
|
||||||
top: 25px;
|
top: 25px;
|
||||||
letter-spacing: 0px;
|
color: rgba(255, 255, 255, 0.80);
|
||||||
color: rgba($color: #ffffff, $alpha: 8);
|
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.time {
|
.time {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 1360px;
|
left: 1360px;
|
||||||
|
color: rgba(255, 255, 255, 0.80);
|
||||||
top: 25px;
|
top: 25px;
|
||||||
letter-spacing: 0px;
|
|
||||||
color: rgba($color: #ffffff, $alpha: 8);
|
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
.title-button {
|
.title-button {
|
||||||
color: #00fff0;
|
color: #00fff0;
|
||||||
@ -836,6 +735,9 @@ export default {
|
|||||||
margin-left: 3em;
|
margin-left: 3em;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.order::-webkit-scrollbar {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
@ -91,13 +91,13 @@
|
|||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
},
|
},
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('base:core-equipment-attr:update')
|
this.$auth.hasPermi('base:core-equipment-attr:update') // ('se:firefight-attr:update') // TODO 此处需用firefight-attr权限还是core-equipment-attr 权限?
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment-attr:delete')
|
this.$auth.hasPermi('base:core-equipment-attr:delete') // ('se:firefight-attr:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -142,19 +142,19 @@ export default {
|
|||||||
return {
|
return {
|
||||||
searchBarKeys: ['name', 'code'],
|
searchBarKeys: ['name', 'code'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi(`base:core-equipment:update`)
|
this.$auth.hasPermi(`se:firefight:update`)
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '详情',
|
btnName: '详情',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment:update')
|
this.$auth.hasPermi('se:firefight:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment:delete')
|
this.$auth.hasPermi('se:firefight:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -208,18 +208,14 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:core-equipment:export')
|
type: this.$auth.hasPermi('se:firefight:export') ? 'button' : '',
|
||||||
? 'button'
|
|
||||||
: '',
|
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
name: 'export',
|
name: 'export',
|
||||||
plain: true,
|
plain: true,
|
||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:core-equipment:create')
|
type: this.$auth.hasPermi('se:firefight:create') ? 'button' : '',
|
||||||
? 'button'
|
|
||||||
: '',
|
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
name: 'add',
|
name: 'add',
|
||||||
plain: true,
|
plain: true,
|
||||||
@ -350,9 +346,6 @@ export default {
|
|||||||
mounted() {
|
mounted() {
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
activated() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
/** 查询列表 */
|
/** 查询列表 */
|
||||||
getList() {
|
getList() {
|
||||||
|
@ -142,19 +142,19 @@ export default {
|
|||||||
return {
|
return {
|
||||||
searchBarKeys: ['name', 'code'],
|
searchBarKeys: ['name', 'code'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi(`base:core-equipment:update`)
|
this.$auth.hasPermi(`se:manage:update`)
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '详情',
|
btnName: '详情',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment:update')
|
this.$auth.hasPermi('se:manage:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment:delete')
|
this.$auth.hasPermi('se:manage:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -207,7 +207,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:core-equipment:export')
|
type: this.$auth.hasPermi('se:manage:export')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
@ -216,7 +216,7 @@ export default {
|
|||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:core-equipment:create')
|
type: this.$auth.hasPermi('se:manage:create')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
@ -340,9 +340,6 @@ export default {
|
|||||||
mounted() {
|
mounted() {
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
activated() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
/** 查询列表 */
|
/** 查询列表 */
|
||||||
getList() {
|
getList() {
|
||||||
|
@ -91,13 +91,13 @@
|
|||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
},
|
},
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('base:core-equipment-attr:update')
|
this.$auth.hasPermi('se:safety-attr:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment-attr:delete')
|
this.$auth.hasPermi('se:safety-attr:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -130,7 +130,7 @@ import AssetsUpload from '../components/AssetsUpload.vue';
|
|||||||
import BaseDialogWrapper from '../components/BaseDialogWrapper.vue';
|
import BaseDialogWrapper from '../components/BaseDialogWrapper.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SpecialEquipmentForSafety',
|
name: 'specialEquipmentForSafety',
|
||||||
components: {
|
components: {
|
||||||
Editor,
|
Editor,
|
||||||
EquipmentDrawer,
|
EquipmentDrawer,
|
||||||
@ -141,19 +141,19 @@ export default {
|
|||||||
return {
|
return {
|
||||||
searchBarKeys: ['name', 'code'],
|
searchBarKeys: ['name', 'code'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi(`base:core-equipment:update`)
|
this.$auth.hasPermi(`se:safety:update`)
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '详情',
|
btnName: '详情',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment:update')
|
this.$auth.hasPermi('se:safety:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('base:core-equipment:delete')
|
this.$auth.hasPermi('se:safety:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -206,7 +206,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:core-equipment:export')
|
type: this.$auth.hasPermi('se:safety:export')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
@ -215,7 +215,7 @@ export default {
|
|||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:core-equipment:create')
|
type: this.$auth.hasPermi('se:safety:create')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
@ -338,9 +338,6 @@ export default {
|
|||||||
mounted() {
|
mounted() {
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
activated() {
|
|
||||||
this.getList();
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
/** 查询列表 */
|
/** 查询列表 */
|
||||||
getList() {
|
getList() {
|
||||||
|
@ -46,7 +46,10 @@
|
|||||||
@close="cancel"
|
@close="cancel"
|
||||||
@cancel="cancel"
|
@cancel="cancel"
|
||||||
@confirm="handleConfirm">
|
@confirm="handleConfirm">
|
||||||
<add ref="add" v-if="open" @refreshDataList="successSubmit" />
|
<add
|
||||||
|
ref="add"
|
||||||
|
v-if="open"
|
||||||
|
@refreshDataList="successSubmit" />
|
||||||
</base-dialog>
|
</base-dialog>
|
||||||
<!-- 添加巡检,查看详情 -->
|
<!-- 添加巡检,查看详情 -->
|
||||||
<addOrUpdata
|
<addOrUpdata
|
||||||
@ -75,26 +78,20 @@ export default {
|
|||||||
addOrEditTitle: '',
|
addOrEditTitle: '',
|
||||||
searchBarKeys: ['name'],
|
searchBarKeys: ['name'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('equipment:check-setting:addInsp')
|
this.$auth.hasPermi('se:check:add-item')
|
||||||
? {
|
? {
|
||||||
type: 'add',
|
type: 'add',
|
||||||
btnName: '添加',
|
btnName: '添加',
|
||||||
showTip: '添加巡检',
|
showTip: '添加巡检',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('equipment:check-setting:update')
|
this.$auth.hasPermi('se:check:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
// this.$auth.hasPermi('equipment:check-setting:update')
|
this.$auth.hasPermi('se:check:delete')
|
||||||
// ? {
|
|
||||||
// type: 'detail',
|
|
||||||
// btnName: '查看详情',
|
|
||||||
// }
|
|
||||||
// : undefined,
|
|
||||||
this.$auth.hasPermi('equipment:check-setting:delete')
|
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -170,16 +167,14 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:check-setting:create')
|
type: this.$auth.hasPermi('se:check:create') ? 'button' : '',
|
||||||
? 'button'
|
|
||||||
: '',
|
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
name: 'add',
|
name: 'add',
|
||||||
plain: true,
|
plain: true,
|
||||||
color: 'success',
|
color: 'success',
|
||||||
},
|
},
|
||||||
// {
|
// {
|
||||||
// type: this.$auth.hasPermi('equipment:check-setting:export')
|
// type: this.$auth.hasPermi('se:check:export')
|
||||||
// ? 'button'
|
// ? 'button'
|
||||||
// : '',
|
// : '',
|
||||||
// btnName: '导出',
|
// btnName: '导出',
|
||||||
|
@ -69,7 +69,7 @@ import AddCheckDet from './Content-add_detail.vue';
|
|||||||
import BaseDialogWrapperVue from '../components/BaseDialogWrapper.vue';
|
import BaseDialogWrapperVue from '../components/BaseDialogWrapper.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SpecialEquipmentCheckConfig',
|
name: 'SpecialEquipmentCheckContent',
|
||||||
components: {
|
components: {
|
||||||
addOrUpdata,
|
addOrUpdata,
|
||||||
add,
|
add,
|
||||||
@ -92,7 +92,7 @@ export default {
|
|||||||
btnName: '确认',
|
btnName: '确认',
|
||||||
showTip: '确认',
|
showTip: '确认',
|
||||||
},
|
},
|
||||||
this.$auth.hasPermi('equipment:check-setting:update')
|
this.$auth.hasPermi('se:check-unconfirm:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
@ -102,7 +102,7 @@ export default {
|
|||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '巡检内容详情',
|
btnName: '巡检内容详情',
|
||||||
},
|
},
|
||||||
this.$auth.hasPermi('equipment:check-setting:delete')
|
this.$auth.hasPermi('se:check-unconfirm:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -158,7 +158,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:check-setting:create')
|
type: this.$auth.hasPermi('se:check-unconfirm:create')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
@ -167,14 +167,18 @@ export default {
|
|||||||
color: 'success',
|
color: 'success',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: this.$auth.hasPermi('se:check-unconfirm:export')
|
||||||
|
? 'button'
|
||||||
|
: '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
name: 'export',
|
name: 'export',
|
||||||
plain: true,
|
plain: true,
|
||||||
color: 'warning',
|
color: 'warning',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: this.$auth.hasPermi('se:check-unconfirm:confirm-all')
|
||||||
|
? 'button'
|
||||||
|
: '',
|
||||||
btnName: '批量确认',
|
btnName: '批量确认',
|
||||||
name: 'batch-confirm',
|
name: 'batch-confirm',
|
||||||
plain: true,
|
plain: true,
|
||||||
|
@ -71,19 +71,19 @@ export default {
|
|||||||
addOrUpdateVisible: false,
|
addOrUpdateVisible: false,
|
||||||
searchBarKeys: ['name', 'actualCheckTime'],
|
searchBarKeys: ['name', 'actualCheckTime'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('equipment:check-record:detail')
|
this.$auth.hasPermi('se:check-record:detail')
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '详情',
|
btnName: '详情',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
// this.$auth.hasPermi('equipment:check-record:update')
|
// this.$auth.hasPermi('se:check-record:update')
|
||||||
// ? {
|
// ? {
|
||||||
// type: 'edit',
|
// type: 'edit',
|
||||||
// btnName: '修改',
|
// btnName: '修改',
|
||||||
// }
|
// }
|
||||||
// : undefined,
|
// : undefined,
|
||||||
// this.$auth.hasPermi('equipment:check-record:delete')
|
// this.$auth.hasPermi('se:check-record:delete')
|
||||||
// ? {
|
// ? {
|
||||||
// type: 'delete',
|
// type: 'delete',
|
||||||
// btnName: '删除',
|
// btnName: '删除',
|
||||||
@ -161,7 +161,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:check-record:export')
|
type: this.$auth.hasPermi('se:check-record:export')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
@ -170,7 +170,7 @@ export default {
|
|||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
// {
|
// {
|
||||||
// type: this.$auth.hasPermi('equipment:check-record:create')
|
// type: this.$auth.hasPermi('se:check-record:create')
|
||||||
// ? 'button'
|
// ? 'button'
|
||||||
// : '',
|
// : '',
|
||||||
// btnName: '新增',
|
// btnName: '新增',
|
||||||
|
@ -63,7 +63,7 @@ import MonitorDetail from './Monitor--detail.vue';
|
|||||||
import { RemainBox, TableBtn } from '@/components/tableInnerComponents';
|
import { RemainBox, TableBtn } from '@/components/tableInnerComponents';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SpecialEquipmentMaintainMonitor',
|
name: 'SpecialEquipmentMonitoring',
|
||||||
components: { MonitorDetail },
|
components: { MonitorDetail },
|
||||||
mixins: [basicPageMixin, tableHeightMixin],
|
mixins: [basicPageMixin, tableHeightMixin],
|
||||||
data() {
|
data() {
|
||||||
@ -135,62 +135,6 @@ export default {
|
|||||||
subcomponent: RemainBox,
|
subcomponent: RemainBox,
|
||||||
minWidth: 210,
|
minWidth: 210,
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// prop: 'createTime',
|
|
||||||
// label: '添加时间',
|
|
||||||
// fixed: true,
|
|
||||||
// width: 180,
|
|
||||||
// filter: parseTime(createTime),
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'equipmentCategory',
|
|
||||||
// label: '设备大类',
|
|
||||||
// minWidth: 100,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// filter: (val) =>
|
|
||||||
// val != null ? ['-', '安全设备', '消防设备', '特种设备'][val] : '-',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'equipmentName',
|
|
||||||
// label: '设备名称',
|
|
||||||
// minWidth: 100,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// { prop: 'maintenancePeriod', label: '保养频率' },
|
|
||||||
// {
|
|
||||||
// prop: 'maintainType',
|
|
||||||
// label: '保养类型',
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// filter: publicFormatter(this.DICT_TYPE.MAINTAIN_TYPE),
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'lastMaintainTime',
|
|
||||||
// label: '上次保养时间',
|
|
||||||
// filter: parseTime,
|
|
||||||
// minWidth: 150,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'remainDays',
|
|
||||||
// label: '距离保养时间(天)',
|
|
||||||
// subcomponent: remainBox,
|
|
||||||
// minWidth: 150,
|
|
||||||
// // showOverflowtooltip: true
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'opt1',
|
|
||||||
// label: '设备保养',
|
|
||||||
// name: '操作',
|
|
||||||
// subcomponent: btn,
|
|
||||||
// width: 100,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'opt2',
|
|
||||||
// label: '保养记录',
|
|
||||||
// name: '查看详情',
|
|
||||||
// subcomponent: btn,
|
|
||||||
// width: 100,
|
|
||||||
// },
|
|
||||||
],
|
],
|
||||||
searchBarFormConfig: [
|
searchBarFormConfig: [
|
||||||
{
|
{
|
||||||
@ -200,26 +144,6 @@ export default {
|
|||||||
param: 'planId',
|
param: 'planId',
|
||||||
filterable: true,
|
filterable: true,
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// type: 'select',
|
|
||||||
// label: '设备大类',
|
|
||||||
// placeholder: '请选择设备大类',
|
|
||||||
// param: 'specialType',
|
|
||||||
// onchange: true,
|
|
||||||
// selectOptions: [
|
|
||||||
// { id: 1, name: '安全设备' },
|
|
||||||
// { id: 2, name: '消防设备' },
|
|
||||||
// { id: 3, name: '特种设备' },
|
|
||||||
// ],
|
|
||||||
// filterable: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// type: 'select',
|
|
||||||
// label: '设备名',
|
|
||||||
// placeholder: '请选择设备',
|
|
||||||
// param: 'equipmentId',
|
|
||||||
// filterable: true,
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
btnName: '查询',
|
btnName: '查询',
|
||||||
@ -230,7 +154,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('base:quality-inspection-type:export')
|
type: this.$auth.hasPermi('se:maintain-plan:export')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
|
@ -70,7 +70,7 @@ import PlanConfigAddContent from './PlanConfig--addContent.vue';
|
|||||||
import BaseDialogWrapper from '../components/BaseDialogWrapper.vue';
|
import BaseDialogWrapper from '../components/BaseDialogWrapper.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SpecialEquipmentPlanConfig',
|
name: 'SpecialEquipmentMaintainPlanConfig',
|
||||||
components: {
|
components: {
|
||||||
BaseDialog: BaseDialogWrapper,
|
BaseDialog: BaseDialogWrapper,
|
||||||
DialogForm: PlanConfigAdd,
|
DialogForm: PlanConfigAdd,
|
||||||
@ -81,23 +81,21 @@ export default {
|
|||||||
const t = new Date();
|
const t = new Date();
|
||||||
const [y, m, d] = [t.getFullYear(), t.getMonth(), t.getDate()];
|
const [y, m, d] = [t.getFullYear(), t.getMonth(), t.getDate()];
|
||||||
return {
|
return {
|
||||||
searchBarKeys: ['planName'], // 'specialType', 'equipmentName', 'createTime'],
|
searchBarKeys: ['planName'],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
// {
|
this.$auth.hasPermi('se:maintain:update')
|
||||||
// type: 'detail',
|
? {
|
||||||
// btnName: '保养记录',
|
type: 'addContent',
|
||||||
// },
|
btnName: '添加内容',
|
||||||
{
|
}
|
||||||
type: 'addContent',
|
: undefined,
|
||||||
btnName: '添加内容',
|
this.$auth.hasPermi('se:maintain:update')
|
||||||
},
|
|
||||||
this.$auth.hasPermi('equipment:plan-config:update')
|
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('equipment:plan-config:delete')
|
this.$auth.hasPermi('se:maintain:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -171,9 +169,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:plan-config:create')
|
type: this.$auth.hasPermi('se:maintain:create') ? 'button' : '',
|
||||||
? 'button'
|
|
||||||
: '',
|
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
name: 'add',
|
name: 'add',
|
||||||
plain: true,
|
plain: true,
|
||||||
|
@ -30,8 +30,12 @@
|
|||||||
<div class="drawer-body__content">
|
<div class="drawer-body__content">
|
||||||
<section>
|
<section>
|
||||||
<!-- <SmallTitle>保养信息</SmallTitle> -->
|
<!-- <SmallTitle>保养信息</SmallTitle> -->
|
||||||
<div class="form-part" style="margin-bottom: 32px">
|
<div
|
||||||
<el-skeleton v-if="!showForm" animated />
|
class="form-part"
|
||||||
|
style="margin-bottom: 32px">
|
||||||
|
<el-skeleton
|
||||||
|
v-if="!showForm"
|
||||||
|
animated />
|
||||||
<el-form
|
<el-form
|
||||||
v-else
|
v-else
|
||||||
ref="form"
|
ref="form"
|
||||||
@ -40,14 +44,18 @@
|
|||||||
v-loading="formLoading">
|
v-loading="formLoading">
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="计划保养人员" prop="planMaintainWorker">
|
<el-form-item
|
||||||
<span>{{ form.planMaintainWorker }}</span>
|
label="计划保养人员"
|
||||||
|
prop="planMaintainWorker">
|
||||||
|
<span>{{ form.planMaintainWorker || '---' }}</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="实际保养人员" prop="maintainWorker">
|
<el-form-item
|
||||||
<span>{{ form.maintainWorker }}</span>
|
label="实际保养人员"
|
||||||
|
prop="maintainWorker">
|
||||||
|
<span>{{ form.maintainWorker || '---' }}</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
@ -21,15 +21,7 @@
|
|||||||
:limit="queryParams.pageSize"
|
:limit="queryParams.pageSize"
|
||||||
:max-height="tableH"
|
:max-height="tableH"
|
||||||
:table-data="list"
|
:table-data="list"
|
||||||
@emitFun="handleEmitFun">
|
@emitFun="handleEmitFun"></base-table>
|
||||||
<!-- <method-btn
|
|
||||||
v-if="tableBtn.length"
|
|
||||||
slot="handleBtn"
|
|
||||||
label="操作"
|
|
||||||
:width="120"
|
|
||||||
:method-list="tableBtn"
|
|
||||||
@clickBtn="handleTableBtnClick" /> -->
|
|
||||||
</base-table>
|
|
||||||
|
|
||||||
<!-- 分页组件 -->
|
<!-- 分页组件 -->
|
||||||
<pagination
|
<pagination
|
||||||
@ -106,28 +98,21 @@ export default {
|
|||||||
|
|
||||||
return {
|
return {
|
||||||
recordDetailVisible: false,
|
recordDetailVisible: false,
|
||||||
searchBarKeys: [
|
searchBarKeys: ['maintainPlanId', 'startTime', 'special'],
|
||||||
'maintainPlanId',
|
|
||||||
'startTime',
|
|
||||||
'special',
|
|
||||||
// 'relatePlan',
|
|
||||||
// 'equipmentId',
|
|
||||||
// 'specialType',
|
|
||||||
],
|
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('equipment:maintain-record:update')
|
this.$auth.hasPermi('se:maintain-record:update')
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '详情',
|
btnName: '详情',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('equipment:maintain-record:update')
|
this.$auth.hasPermi('se:maintain-record:update')
|
||||||
? {
|
? {
|
||||||
type: 'edit',
|
type: 'edit',
|
||||||
btnName: '修改',
|
btnName: '修改',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('equipment:maintain-record:delete')
|
this.$auth.hasPermi('se:maintain-record:delete')
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -135,13 +120,6 @@ export default {
|
|||||||
: undefined,
|
: undefined,
|
||||||
].filter((v) => v),
|
].filter((v) => v),
|
||||||
tableProps: [
|
tableProps: [
|
||||||
// {
|
|
||||||
// prop: 'createTime',
|
|
||||||
// label: '添加时间',
|
|
||||||
// fixed: true,
|
|
||||||
// width: 150,
|
|
||||||
// filter: timeFilter,
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
prop: 'maintainOrderNumber',
|
prop: 'maintainOrderNumber',
|
||||||
label: '设备保养单号',
|
label: '设备保养单号',
|
||||||
@ -246,7 +224,7 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:maintain-record:export')
|
type: this.$auth.hasPermi('se:maintain-record:export')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
@ -254,15 +232,6 @@ export default {
|
|||||||
plain: true,
|
plain: true,
|
||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// type: this.$auth.hasPermi('equipment:maintain-record:create')
|
|
||||||
// ? 'button'
|
|
||||||
// : '',
|
|
||||||
// btnName: '新增',
|
|
||||||
// name: 'add',
|
|
||||||
// plain: true,
|
|
||||||
// color: 'success',
|
|
||||||
// },
|
|
||||||
],
|
],
|
||||||
rows: [
|
rows: [
|
||||||
[
|
[
|
||||||
|
@ -88,25 +88,19 @@ export default {
|
|||||||
'specialType',
|
'specialType',
|
||||||
],
|
],
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi('equipment:repair:finish')
|
this.$auth.hasPermi('se:repair:finish')
|
||||||
? {
|
? {
|
||||||
type: 'finish',
|
type: 'finish',
|
||||||
btnName: '完成',
|
btnName: '完成',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
this.$auth.hasPermi('equipment:repair:update')
|
this.$auth.hasPermi('se:repair:update')
|
||||||
? {
|
? {
|
||||||
type: 'detail',
|
type: 'detail',
|
||||||
btnName: '详情',
|
btnName: '详情',
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
// this.$auth.hasPermi('equipment:repair:update')
|
this.$auth.hasPermi('se:repair:delete')
|
||||||
// ? {
|
|
||||||
// type: 'edit',
|
|
||||||
// btnName: '修改',
|
|
||||||
// }
|
|
||||||
// : undefined,
|
|
||||||
this.$auth.hasPermi('equipment:repair:delete')
|
|
||||||
? {
|
? {
|
||||||
type: 'delete',
|
type: 'delete',
|
||||||
btnName: '删除',
|
btnName: '删除',
|
||||||
@ -114,13 +108,6 @@ export default {
|
|||||||
: undefined,
|
: undefined,
|
||||||
].filter((v) => v),
|
].filter((v) => v),
|
||||||
tableProps: [
|
tableProps: [
|
||||||
// {
|
|
||||||
// prop: 'createTime',
|
|
||||||
// label: '添加时间',
|
|
||||||
// fixed: true,
|
|
||||||
// width: 150,
|
|
||||||
// filter: parseTime,
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
prop: 'repairOrderNumber',
|
prop: 'repairOrderNumber',
|
||||||
label: '设备维修单号',
|
label: '设备维修单号',
|
||||||
@ -186,52 +173,8 @@ export default {
|
|||||||
minWidth: 120,
|
minWidth: 120,
|
||||||
showOverflowtooltip: true,
|
showOverflowtooltip: true,
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// prop: 'maintenanceStatus',
|
|
||||||
// label: '维修状态',
|
|
||||||
// filter: (v) => (v != null ? ['未完成', '完成', '进行中'][v] : ''),
|
|
||||||
// },
|
|
||||||
// { prop: 'maintenanceDuration', label: '维修时长(h)', width: 110 },
|
|
||||||
// {
|
|
||||||
// prop: 'equipmentName',
|
|
||||||
// label: '设备名称',
|
|
||||||
// minWidth: 100,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'maintenanceDetail',
|
|
||||||
// label: '维修明细',
|
|
||||||
// subcomponent: htmls,
|
|
||||||
// minWidth: 100,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'repairman',
|
|
||||||
// label: '维修工',
|
|
||||||
// minWidth: 100,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'repairmanPhone',
|
|
||||||
// label: '联系方式',
|
|
||||||
// minWidth: 100,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
],
|
],
|
||||||
searchBarFormConfig: [
|
searchBarFormConfig: [
|
||||||
// {
|
|
||||||
// type: 'select',
|
|
||||||
// label: '设备大类',
|
|
||||||
// placeholder: '请选择设备大类',
|
|
||||||
// param: 'specialType',
|
|
||||||
// onchange: true,
|
|
||||||
// selectOptions: [
|
|
||||||
// { id: 1, name: '安全设备' },
|
|
||||||
// { id: 2, name: '消防设备' },
|
|
||||||
// { id: 3, name: '特种设备' },
|
|
||||||
// ],
|
|
||||||
// filterable: true,
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: '设备',
|
label: '设备',
|
||||||
@ -256,7 +199,6 @@ export default {
|
|||||||
dateType: 'daterange', // datetimerange
|
dateType: 'daterange', // datetimerange
|
||||||
format: 'yyyy-MM-dd',
|
format: 'yyyy-MM-dd',
|
||||||
valueFormat: 'yyyy-MM-dd HH:mm:ss',
|
valueFormat: 'yyyy-MM-dd HH:mm:ss',
|
||||||
// valueFormat: 'timestamp',
|
|
||||||
rangeSeparator: '-',
|
rangeSeparator: '-',
|
||||||
startPlaceholder: '开始日期',
|
startPlaceholder: '开始日期',
|
||||||
endPlaceholder: '结束日期',
|
endPlaceholder: '结束日期',
|
||||||
@ -273,14 +215,14 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:repair:export') ? 'button' : '',
|
type: this.$auth.hasPermi('se:repair:export') ? 'button' : '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
name: 'export',
|
name: 'export',
|
||||||
plain: true,
|
plain: true,
|
||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:repair:create') ? 'button' : '',
|
type: this.$auth.hasPermi('se:repair:create') ? 'button' : '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
name: 'add',
|
name: 'add',
|
||||||
plain: true,
|
plain: true,
|
||||||
|
@ -14,22 +14,6 @@
|
|||||||
@select-changed="handleSearchBarChange"
|
@select-changed="handleSearchBarChange"
|
||||||
@headBtnClick="handleSearchBarBtnClick" />
|
@headBtnClick="handleSearchBarBtnClick" />
|
||||||
|
|
||||||
<!-- 列表 -->
|
|
||||||
<!-- <base-table
|
|
||||||
:table-props="tableProps"
|
|
||||||
:page="queryParams.pageNo"
|
|
||||||
:limit="queryParams.pageSize"
|
|
||||||
:table-data="list"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
@emitFun="handleEmitFun">
|
|
||||||
<method-btn
|
|
||||||
v-if="tableBtn.length"
|
|
||||||
slot="handleBtn"
|
|
||||||
label="操作"
|
|
||||||
:width="120"
|
|
||||||
:method-list="tableBtn"
|
|
||||||
@clickBtn="handleTableBtnClick" />
|
|
||||||
</base-table> -->
|
|
||||||
<WaitingListTable
|
<WaitingListTable
|
||||||
ref="waiting-list-table"
|
ref="waiting-list-table"
|
||||||
:table-data="list"
|
:table-data="list"
|
||||||
@ -61,9 +45,16 @@
|
|||||||
ref="form"
|
ref="form"
|
||||||
v-model="form"
|
v-model="form"
|
||||||
:disabled="mode == 'detail'" />
|
:disabled="mode == 'detail'" />
|
||||||
<el-row v-if="mode === 'detail'" slot="footer" type="flex" justify="end">
|
<el-row
|
||||||
|
v-if="mode === 'detail'"
|
||||||
|
slot="footer"
|
||||||
|
type="flex"
|
||||||
|
justify="end">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-button size="small" class="btnTextStyle" @click="cancel">
|
<el-button
|
||||||
|
size="small"
|
||||||
|
class="btnTextStyle"
|
||||||
|
@click="cancel">
|
||||||
关闭
|
关闭
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -107,32 +98,8 @@ import WaitingListTable from './WaitingListTable.vue';
|
|||||||
import RecordDetail from './Record--detail.vue';
|
import RecordDetail from './Record--detail.vue';
|
||||||
import BaseDialogWrapper from '../components/BaseDialogWrapper.vue';
|
import BaseDialogWrapper from '../components/BaseDialogWrapper.vue';
|
||||||
|
|
||||||
// const timeFilter = (val) => moment(val).format('yyyy-MM-DD HH:mm:ss');
|
|
||||||
// const btn = {
|
|
||||||
// name: 'tableBtn',
|
|
||||||
// props: ['injectData'],
|
|
||||||
// data() {
|
|
||||||
// return {};
|
|
||||||
// },
|
|
||||||
// methods: {
|
|
||||||
// handleClick() {
|
|
||||||
// this.$emit('emitData', {
|
|
||||||
// action: this.injectData.label,
|
|
||||||
// value: this.injectData,
|
|
||||||
// });
|
|
||||||
// },
|
|
||||||
// },
|
|
||||||
// render: function (h) {
|
|
||||||
// return (
|
|
||||||
// <el-button type="text" onClick={this.handleClick}>
|
|
||||||
// {this.injectData.name}
|
|
||||||
// </el-button>
|
|
||||||
// );
|
|
||||||
// },
|
|
||||||
// };
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SpecialEquipmentMaintainRecord',
|
name: 'SpecialEquipmentMaintainRecordUnconfirmed',
|
||||||
components: {
|
components: {
|
||||||
DialogFormUnplanned,
|
DialogFormUnplanned,
|
||||||
WaitingListTable,
|
WaitingListTable,
|
||||||
@ -146,235 +113,9 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
recordDetailVisible: false,
|
recordDetailVisible: false,
|
||||||
searchBarKeys: [
|
searchBarKeys: ['maintainPlanId', 'startTime', 'special'],
|
||||||
'maintainPlanId',
|
|
||||||
'startTime',
|
|
||||||
'special',
|
|
||||||
// 'relatePlan',
|
|
||||||
// 'equipmentId',
|
|
||||||
// 'specialType',
|
|
||||||
],
|
|
||||||
tobeConfirmedIdList: [],
|
tobeConfirmedIdList: [],
|
||||||
// tableBtn: [
|
|
||||||
// // this.$auth.hasPermi('equipment:maintain-record:update')
|
|
||||||
// // ? {
|
|
||||||
// // type: 'detail',
|
|
||||||
// // btnName: '详情',
|
|
||||||
// // }
|
|
||||||
// // : undefined,
|
|
||||||
// {
|
|
||||||
// type: 'confirm',
|
|
||||||
// btnName: '确认',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// type: 'edit',
|
|
||||||
// btnName: '编辑',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// type: 'delete',
|
|
||||||
// btnName: '删除',
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// tableProps: [
|
|
||||||
// // {
|
|
||||||
// // prop: 'createTime',
|
|
||||||
// // label: '添加时间',
|
|
||||||
// // fixed: true,
|
|
||||||
// // width: 150,
|
|
||||||
// // filter: timeFilter,
|
|
||||||
// // },
|
|
||||||
// {
|
|
||||||
// type: 'selection',
|
|
||||||
// // prop: '_selection',
|
|
||||||
// // label: '批量选择',
|
|
||||||
// width: 48,
|
|
||||||
// subcomponent: {
|
|
||||||
// props: ['injectData'],
|
|
||||||
// data() {
|
|
||||||
// return {
|
|
||||||
// outside: false,
|
|
||||||
// selected: false,
|
|
||||||
// };
|
|
||||||
// },
|
|
||||||
// watch: {
|
|
||||||
// selected(val) {
|
|
||||||
// if (!this.outside) {
|
|
||||||
// console.log('emit row-selected...');
|
|
||||||
// this.$emit('emitData', {
|
|
||||||
// action: 'row-selected',
|
|
||||||
// value: {
|
|
||||||
// row: this.injectData,
|
|
||||||
// selected: val,
|
|
||||||
// },
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
// injectData: {
|
|
||||||
// deep: true,
|
|
||||||
// immediate: true,
|
|
||||||
// handler: function (val) {
|
|
||||||
// this.outside = true;
|
|
||||||
// this.selected = !!((val._selection & 0b01) != 0);
|
|
||||||
// this.$nextTick(() => {
|
|
||||||
// this.outside = false;
|
|
||||||
// });
|
|
||||||
// },
|
|
||||||
// },
|
|
||||||
// },
|
|
||||||
// render(h) {
|
|
||||||
// const enabled = 0b10 & this.injectData._selection;
|
|
||||||
// // return this.injectData?._selection ? h('h1', null, 'hello') : h('h1', null, '1');
|
|
||||||
// return (
|
|
||||||
// <div>
|
|
||||||
// <span>{this.selected}</span>
|
|
||||||
// <el-checkbox disabled={!enabled} v-model={this.selected} />
|
|
||||||
// </div>
|
|
||||||
// );
|
|
||||||
// },
|
|
||||||
// },
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'maintainOrderNumber',
|
|
||||||
// label: '设备保养单号',
|
|
||||||
// width: 110,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'planName',
|
|
||||||
// label: '保养计划名称',
|
|
||||||
// width: 110,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'departmentName',
|
|
||||||
// label: '部门',
|
|
||||||
// width: 110,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'lineName',
|
|
||||||
// label: '产线名',
|
|
||||||
// width: 110,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'planStartTime',
|
|
||||||
// label: '计划开始时间',
|
|
||||||
// filter: timeFilter,
|
|
||||||
// minWidth: 150,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'planEndTime',
|
|
||||||
// label: '计划结束时间',
|
|
||||||
// filter: timeFilter,
|
|
||||||
// minWidth: 150,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'startTime',
|
|
||||||
// label: '实际开始时间',
|
|
||||||
// filter: timeFilter,
|
|
||||||
// minWidth: 150,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'endTime',
|
|
||||||
// label: '实际结束时间',
|
|
||||||
// filter: timeFilter,
|
|
||||||
// minWidth: 150,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'confirmDueTime',
|
|
||||||
// label: '确认截止时间',
|
|
||||||
// filter: timeFilter,
|
|
||||||
// minWidth: 150,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: 'relatePlan',
|
|
||||||
// label: '保养计划类型',
|
|
||||||
// minWidth: 150,
|
|
||||||
// showOverflowtooltip: true,
|
|
||||||
// filter: (val) =>
|
|
||||||
// val != null ? ['-', '计划型', '非计划型'][val] : '-',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// prop: '_detail',
|
|
||||||
// label: '详情',
|
|
||||||
// name: '详情',
|
|
||||||
// minWidth: 60,
|
|
||||||
// subcomponent: btn,
|
|
||||||
// },
|
|
||||||
// // {
|
|
||||||
// // prop: 'equipmentCategory',
|
|
||||||
// // label: '设备大类',
|
|
||||||
// // minWidth: 100,
|
|
||||||
// // showOverflowtooltip: true,
|
|
||||||
// // filter: (val) =>
|
|
||||||
// // val != null ? ['-', '安全设备', '消防设备', '特种设备'][val] : '-',
|
|
||||||
// // },
|
|
||||||
// // {
|
|
||||||
// // prop: 'equipmentName',
|
|
||||||
// // label: '设备名称',
|
|
||||||
// // minWidth: 100,
|
|
||||||
// // showOverflowtooltip: true,
|
|
||||||
// // },
|
|
||||||
// // {
|
|
||||||
// // prop: 'maintainWorker',
|
|
||||||
// // label: '保养人员',
|
|
||||||
// // minWidth: 100,
|
|
||||||
// // showOverflowtooltip: true,
|
|
||||||
// // },
|
|
||||||
// // {
|
|
||||||
// // prop: 'relatePlan',
|
|
||||||
// // label: '是否计划保养',
|
|
||||||
// // width: 120,
|
|
||||||
// // filter: (v) => (v != null ? ['', '是', '否'][v] : ''),
|
|
||||||
// // },
|
|
||||||
// // {
|
|
||||||
// // prop: 'planName',
|
|
||||||
// // label: '保养计划名称',
|
|
||||||
// // minWidth: 120,
|
|
||||||
// // showOverflowtooltip: true,
|
|
||||||
// // },
|
|
||||||
// // {
|
|
||||||
// // prop: 'maintainDuration',
|
|
||||||
// // label: '计划保养用时(h)',
|
|
||||||
// // minWidth: 130,
|
|
||||||
// // showOverflowtooltip: true,
|
|
||||||
// // },
|
|
||||||
// // { prop: 'timeUsed', label: '实际保养用时(h)', minWidth: 130 },
|
|
||||||
// // {
|
|
||||||
// // prop: 'remark',
|
|
||||||
// // label: '备注',
|
|
||||||
// // minWidth: 100,
|
|
||||||
// // showOverflowtooltip: true,
|
|
||||||
// // },
|
|
||||||
// ],
|
|
||||||
searchBarFormConfig: [
|
searchBarFormConfig: [
|
||||||
// {
|
|
||||||
// type: 'select',
|
|
||||||
// label: '设备大类',
|
|
||||||
// placeholder: '请选择设备大类',
|
|
||||||
// param: 'specialType',
|
|
||||||
// onchange: true,
|
|
||||||
// selectOptions: [
|
|
||||||
// { id: 1, name: '安全设备' },
|
|
||||||
// { id: 2, name: '消防设备' },
|
|
||||||
// { id: 3, name: '特种设备' },
|
|
||||||
// ],
|
|
||||||
// filterable: true,
|
|
||||||
// defaultSelect: null
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// type: 'select',
|
|
||||||
// label: '设备',
|
|
||||||
// placeholder: '请选择设备',
|
|
||||||
// param: 'equipmentId',
|
|
||||||
// defaultSelect: null
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: '保养计划名称',
|
label: '保养计划名称',
|
||||||
@ -399,16 +140,6 @@ export default {
|
|||||||
defaultSelect: null,
|
defaultSelect: null,
|
||||||
// width: 350,
|
// width: 350,
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// type: 'select',
|
|
||||||
// label: '是否计划保养',
|
|
||||||
// selectOptions: [
|
|
||||||
// { name: '是', id: 1 },
|
|
||||||
// { name: '否', id: 2 },
|
|
||||||
// ],
|
|
||||||
// defaultSelect: null,
|
|
||||||
// param: 'relatePlan',
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
btnName: '查询',
|
btnName: '查询',
|
||||||
@ -419,21 +150,25 @@ export default {
|
|||||||
type: 'separate',
|
type: 'separate',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: this.$auth.hasPermi('se:maintain-record-pre:create')
|
||||||
|
? 'button'
|
||||||
|
: '',
|
||||||
btnName: '新增',
|
btnName: '新增',
|
||||||
name: 'add',
|
name: 'add',
|
||||||
plain: true,
|
plain: true,
|
||||||
color: 'success',
|
color: 'success',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: this.$auth.hasPermi('se:maintain-record-pre:confirm-all')
|
||||||
|
? 'button'
|
||||||
|
: '',
|
||||||
btnName: '批量确认',
|
btnName: '批量确认',
|
||||||
name: 'batchConfirm',
|
name: 'batchConfirm',
|
||||||
color: 'primary',
|
color: 'primary',
|
||||||
plain: true,
|
plain: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: this.$auth.hasPermi('equipment:maintain-record:export')
|
type: this.$auth.hasPermi('se:maintain-record-pre:export')
|
||||||
? 'button'
|
? 'button'
|
||||||
: '',
|
: '',
|
||||||
btnName: '导出',
|
btnName: '导出',
|
||||||
@ -441,15 +176,6 @@ export default {
|
|||||||
plain: true,
|
plain: true,
|
||||||
color: 'primary',
|
color: 'primary',
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// type: this.$auth.hasPermi('equipment:maintain-record:create')
|
|
||||||
// ? 'button'
|
|
||||||
// : '',
|
|
||||||
// btnName: '新增',
|
|
||||||
// name: 'add',
|
|
||||||
// plain: true,
|
|
||||||
// color: 'success',
|
|
||||||
// },
|
|
||||||
],
|
],
|
||||||
// 是否显示弹出层
|
// 是否显示弹出层
|
||||||
open: false,
|
open: false,
|
||||||
@ -483,30 +209,7 @@ export default {
|
|||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.initSearchBar();
|
this.initSearchBar();
|
||||||
// if (this.$route.query) {
|
|
||||||
// this.queryParams.specialType =
|
|
||||||
// this.$route.query?.specialType ?? undefined;
|
|
||||||
// this.queryParams.equipmentId =
|
|
||||||
// this.$route.query?.equipmentId ?? undefined;
|
|
||||||
// this.queryParams.maintainPlanId =
|
|
||||||
// this.$route.query?.maintainPlanId ?? undefined;
|
|
||||||
// this.queryParams.relatePlan = this.$route.query?.relatePlan ?? undefined;
|
|
||||||
// this.queryParams.startTime = this.$route.query?.createTime ?? undefined;
|
|
||||||
// this.searchBarFormConfig[0].defaultSelect =
|
|
||||||
// this.$route.query.specialType ?? undefined;
|
|
||||||
// this.searchBarFormConfig[1].defaultSelect =
|
|
||||||
// this.$route.query.equipmentId ?? undefined;
|
|
||||||
// this.searchBarFormConfig[2].defaultSelect =
|
|
||||||
// this.$route.query.maintainPlanId ?? undefined;
|
|
||||||
// this.searchBarFormConfig[3].defaultSelect =
|
|
||||||
// this.$route.query?.createTime ?? undefined;
|
|
||||||
// this.searchBarFormConfig[4].defaultSelect =
|
|
||||||
// Number(this.$route.query.relatePlan) ?? undefined;
|
|
||||||
// }
|
|
||||||
this.getList();
|
this.getList();
|
||||||
// if (this.$route.query.addRecord) {
|
|
||||||
// this.handleAdd();
|
|
||||||
// }
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
/** 批量确认 */
|
/** 批量确认 */
|
||||||
@ -531,60 +234,6 @@ export default {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleSelectionChange(list) {
|
|
||||||
if (this.tobeConfirmedIdList.length) {
|
|
||||||
this.tobeConfirmedIdList = [];
|
|
||||||
this.list.forEach((item) => {
|
|
||||||
this.handleEmitFun({
|
|
||||||
action: 'row-selected',
|
|
||||||
value: { row: item, selected: false },
|
|
||||||
});
|
|
||||||
});
|
|
||||||
console.log(
|
|
||||||
'清空选择列表',
|
|
||||||
this.list.map((item) => item._selection)
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
this.tobeConfirmedIdList = list.map((item) => item.id);
|
|
||||||
this.list.forEach((item) => {
|
|
||||||
this.handleEmitFun({
|
|
||||||
action: 'row-selected',
|
|
||||||
value: { row: item, selected: true },
|
|
||||||
});
|
|
||||||
});
|
|
||||||
console.log(
|
|
||||||
'全选',
|
|
||||||
this.list.map((item) => item._selection)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
handleEmitFun({ action, value }) {
|
|
||||||
switch (action) {
|
|
||||||
case '详情':
|
|
||||||
this.recordDetailVisible = true;
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$refs.recordDetailDrawer.show({
|
|
||||||
id: value.id,
|
|
||||||
planMaintainWorker: value.planMaintainWorker,
|
|
||||||
maintainWorker: value.maintainWorker,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case 'row-selected':
|
|
||||||
if (value.selected) {
|
|
||||||
this.tobeConfirmedIdList.push(value.row.id);
|
|
||||||
value.row._selection = 0b11;
|
|
||||||
} else {
|
|
||||||
const index = this.tobeConfirmedIdList.indexOf(value.row.id);
|
|
||||||
if (index != -1) {
|
|
||||||
this.tobeConfirmedIdList.splice(index, 1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
console.log('tobeConfirmedIdList', this.tobeConfirmedIdList);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
handleSearchBarChange({ param, value }) {
|
handleSearchBarChange({ param, value }) {
|
||||||
if ('specialType' === param) {
|
if ('specialType' === param) {
|
||||||
@ -598,10 +247,6 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
initSearchBar() {
|
initSearchBar() {
|
||||||
// this.http('/base/core-equipment/listAll', 'get').then(({ data }) => {
|
|
||||||
// this.allSpecialEquipments = data.filter((item) => item.special);
|
|
||||||
// this.setSearchBarEquipmentList(data.filter((item) => item.special));
|
|
||||||
// });
|
|
||||||
this.http('/base/equipment-maintain-plan/page', 'get', {
|
this.http('/base/equipment-maintain-plan/page', 'get', {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 100,
|
pageSize: 100,
|
||||||
@ -609,7 +254,6 @@ export default {
|
|||||||
}).then(({ data }) => {
|
}).then(({ data }) => {
|
||||||
this.$set(
|
this.$set(
|
||||||
this.searchBarFormConfig[0],
|
this.searchBarFormConfig[0],
|
||||||
// this.searchBarFormConfig[2],
|
|
||||||
'selectOptions',
|
'selectOptions',
|
||||||
(data?.list || []).map((item) => ({
|
(data?.list || []).map((item) => ({
|
||||||
name: item.name,
|
name: item.name,
|
||||||
@ -625,7 +269,6 @@ export default {
|
|||||||
this.recv({
|
this.recv({
|
||||||
...this.queryParams,
|
...this.queryParams,
|
||||||
special: true,
|
special: true,
|
||||||
// relatePlan: 2,
|
|
||||||
confirmed: false,
|
confirmed: false,
|
||||||
}).then((response) => {
|
}).then((response) => {
|
||||||
this.list = response.data.list;
|
this.list = response.data.list;
|
||||||
@ -730,35 +373,6 @@ export default {
|
|||||||
}, 450);
|
}, 450);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 添加的提交
|
|
||||||
// this.getConfirmed()
|
|
||||||
// .then((confirmed) => {
|
|
||||||
// this.post({
|
|
||||||
// ...this.form,
|
|
||||||
// maintainWorker: this.form.maintainWorker.join(','),
|
|
||||||
// special: true,
|
|
||||||
// relatePlan: 2,
|
|
||||||
// confirmed: true,
|
|
||||||
// }).then((response) => {
|
|
||||||
// this.$modal.msgSuccess('新增成功');
|
|
||||||
// this.open = false;
|
|
||||||
// this.getList();
|
|
||||||
// });
|
|
||||||
// })
|
|
||||||
// .catch((err) => {
|
|
||||||
// this.post({
|
|
||||||
// ...this.form,
|
|
||||||
// maintainWorker: this.form.maintainWorker.join(','),
|
|
||||||
// special: true,
|
|
||||||
// relatePlan: 2,
|
|
||||||
// confirmed: false,
|
|
||||||
// }).then((response) => {
|
|
||||||
// this.$modal.msgSuccess('新增成功');
|
|
||||||
// this.open = false;
|
|
||||||
// this.getList();
|
|
||||||
// });
|
|
||||||
// });
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
/** 确认 */
|
/** 确认 */
|
||||||
|
@ -144,6 +144,7 @@
|
|||||||
label="操作">
|
label="操作">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tooltip
|
<el-tooltip
|
||||||
|
v-if="$auth.hasPermi('se:maintain-record-pre:confirm')"
|
||||||
content="确认"
|
content="确认"
|
||||||
placement="top">
|
placement="top">
|
||||||
<el-button
|
<el-button
|
||||||
@ -155,8 +156,13 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
<!-- line -->
|
<!-- line -->
|
||||||
<span style="margin: 0 4px; font-size: 18px; color: #e5e7eb">|</span>
|
<span
|
||||||
|
style="margin: 0 4px; font-size: 18px; color: #e5e7eb"
|
||||||
|
v-if="$auth.hasPermi('se:maintain-record-pre:update')">
|
||||||
|
|
|
||||||
|
</span>
|
||||||
<el-tooltip
|
<el-tooltip
|
||||||
|
v-if="$auth.hasPermi('se:maintain-record-pre:update')"
|
||||||
content="查看详情"
|
content="查看详情"
|
||||||
placement="top">
|
placement="top">
|
||||||
<el-button
|
<el-button
|
||||||
@ -167,8 +173,13 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
<!-- line -->
|
<!-- line -->
|
||||||
<span style="margin: 0 4px; font-size: 18px; color: #e5e7eb">|</span>
|
<span
|
||||||
|
style="margin: 0 4px; font-size: 18px; color: #e5e7eb"
|
||||||
|
v-if="$auth.hasPermi('se:maintain-record-pre:update')">
|
||||||
|
|
|
||||||
|
</span>
|
||||||
<el-tooltip
|
<el-tooltip
|
||||||
|
v-if="$auth.hasPermi('se:maintain-record-pre:update')"
|
||||||
content="编辑"
|
content="编辑"
|
||||||
placement="top">
|
placement="top">
|
||||||
<el-button
|
<el-button
|
||||||
|
Loading…
Reference in New Issue
Block a user