openatc-components 0.0.47 → 0.0.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -162,24 +162,27 @@ export default {
162
162
  controlData: {
163
163
  type: Object
164
164
  },
165
- phaseList: {
166
- type: Array
167
- },
168
- overlap: {
169
- type: Array
165
+ patternStatus: {
166
+ type: Object
170
167
  },
171
- allPatternList: {
168
+ phaseList: {
172
169
  type: Array
173
- },
170
+ }
171
+ // overlap: {
172
+ // type: Array
173
+ // },
174
+ // allPatternList: {
175
+ // type: Array
176
+ // },
174
177
  // phaseRings: {
175
178
  // type: Array
176
179
  // }
177
- planPattern: {
178
- type: Object
179
- },
180
- patternSelect: {
181
- type: Array
182
- }
180
+ // planPattern: {
181
+ // type: Object
182
+ // },
183
+ // patternSelect: {
184
+ // type: Array
185
+ // }
183
186
  },
184
187
  computed: {
185
188
  rings () {
@@ -204,975 +207,976 @@ export default {
204
207
  data () {
205
208
  return {
206
209
  stagesList: [],
207
- // patternSelect: [{
208
- // value: 1
209
- // }, {
210
- // value: 2
211
- // }, {
212
- // value: 3
213
- // }],
214
- // options: {
215
- // group: 'pattern'
216
- // },
217
- // overlap: [
218
- // {
219
- // 'id': 1,
220
- // 'desc': '东方向南半测行人相位',
221
- // 'includedphases': [
222
- // 1,
223
- // 8
224
- // ],
225
- // 'peddirection': [
226
- // 6
227
- // ]
228
- // },
229
- // {
230
- // 'id': 2,
231
- // 'desc': '东方向北半测行人相位',
232
- // 'includedphases': [
233
- // 1,
234
- // 2
235
- // ],
236
- // 'peddirection': [
237
- // 5
238
- // ]
239
- // },
240
- // {
241
- // 'id': 3,
242
- // 'desc': '西方向南半测行人相位',
243
- // 'includedphases': [
244
- // 5,
245
- // 6
246
- // ],
247
- // 'peddirection': [
248
- // 8
249
- // ]
250
- // },
251
- // {
252
- // 'id': 4,
253
- // 'desc': '西方向北半测行人相位',
254
- // 'includedphases': [
255
- // 4,
256
- // 5
257
- // ],
258
- // 'peddirection': [
259
- // 7
260
- // ]
261
- // },
262
- // {
263
- // 'id': 5,
264
- // 'desc': '南方向东半测行人相位',
265
- // 'includedphases': [
266
- // 7,
267
- // 8
268
- // ],
269
- // 'peddirection': [
270
- // 10
271
- // ]
272
- // },
273
- // {
274
- // 'id': 6,
275
- // 'desc': '南方向西半测行人相位',
276
- // 'includedphases': [
277
- // 6,
278
- // 7
279
- // ],
280
- // 'peddirection': [
281
- // 9
282
- // ]
283
- // },
284
- // {
285
- // 'id': 7,
286
- // 'desc': '北方向东半测行人相位',
287
- // 'includedphases': [
288
- // 2,
289
- // 3
290
- // ],
291
- // 'peddirection': [
292
- // 12
293
- // ]
294
- // },
295
- // {
296
- // 'id': 8,
297
- // 'desc': '北方向西半测行人相位',
298
- // 'includedphases': [
299
- // 3,
300
- // 4
301
- // ],
302
- // 'peddirection': [
303
- // 11
304
- // ]
305
- // }
306
- // ],
210
+ phaseRings: [],
211
+ patternSelect: [{
212
+ value: 1
213
+ }, {
214
+ value: 2
215
+ }, {
216
+ value: 3
217
+ }],
218
+ options: {
219
+ group: 'pattern'
220
+ },
221
+ overlap: [
222
+ {
223
+ 'id': 1,
224
+ 'desc': '东方向南半测行人相位',
225
+ 'includedphases': [
226
+ 1,
227
+ 8
228
+ ],
229
+ 'peddirection': [
230
+ 6
231
+ ]
232
+ },
233
+ {
234
+ 'id': 2,
235
+ 'desc': '东方向北半测行人相位',
236
+ 'includedphases': [
237
+ 1,
238
+ 2
239
+ ],
240
+ 'peddirection': [
241
+ 5
242
+ ]
243
+ },
244
+ {
245
+ 'id': 3,
246
+ 'desc': '西方向南半测行人相位',
247
+ 'includedphases': [
248
+ 5,
249
+ 6
250
+ ],
251
+ 'peddirection': [
252
+ 8
253
+ ]
254
+ },
255
+ {
256
+ 'id': 4,
257
+ 'desc': '西方向北半测行人相位',
258
+ 'includedphases': [
259
+ 4,
260
+ 5
261
+ ],
262
+ 'peddirection': [
263
+ 7
264
+ ]
265
+ },
266
+ {
267
+ 'id': 5,
268
+ 'desc': '南方向东半测行人相位',
269
+ 'includedphases': [
270
+ 7,
271
+ 8
272
+ ],
273
+ 'peddirection': [
274
+ 10
275
+ ]
276
+ },
277
+ {
278
+ 'id': 6,
279
+ 'desc': '南方向西半测行人相位',
280
+ 'includedphases': [
281
+ 6,
282
+ 7
283
+ ],
284
+ 'peddirection': [
285
+ 9
286
+ ]
287
+ },
288
+ {
289
+ 'id': 7,
290
+ 'desc': '北方向东半测行人相位',
291
+ 'includedphases': [
292
+ 2,
293
+ 3
294
+ ],
295
+ 'peddirection': [
296
+ 12
297
+ ]
298
+ },
299
+ {
300
+ 'id': 8,
301
+ 'desc': '北方向西半测行人相位',
302
+ 'includedphases': [
303
+ 3,
304
+ 4
305
+ ],
306
+ 'peddirection': [
307
+ 11
308
+ ]
309
+ }
310
+ ],
307
311
  activeList: 'ring',
308
312
  ringCount: 1,
309
313
  ringCounts: 1,
310
314
  coordphaseOption: [],
311
315
  patternOne: [],
312
- // planPattern: {
313
- // cycle: 120,
314
- // offset: 0,
315
- // rings: [
316
- // [
317
- // {
318
- // 'name': 'Phase 1',
319
- // 'desc': [
320
- // {
321
- // 'id': 13,
322
- // 'color': '#454545'
323
- // }
324
- // ],
325
- // 'id': 1,
326
- // 'value': 30,
327
- // 'mode': 2,
328
- // 'options': [],
329
- // 'delaystart': 0,
330
- // 'advanceend': 0
331
- // },
332
- // {
333
- // 'name': 'Phase 2',
334
- // 'desc': [
335
- // {
336
- // 'id': 3,
337
- // 'color': '#454545'
338
- // },
339
- // {
340
- // 'id': 12,
341
- // 'color': '#454545'
342
- // }
343
- // ],
344
- // 'id': 2,
345
- // 'value': 30,
346
- // 'mode': 2,
347
- // 'options': [],
348
- // 'delaystart': 0,
349
- // 'advanceend': 0
350
- // },
351
- // {
352
- // 'name': 'Phase 3',
353
- // 'desc': [
354
- // {
355
- // 'id': 1,
356
- // 'color': '#454545'
357
- // }
358
- // ],
359
- // 'id': 3,
360
- // 'value': 30,
361
- // 'mode': 2,
362
- // 'options': [],
363
- // 'delaystart': 0,
364
- // 'advanceend': 0
365
- // },
366
- // {
367
- // 'name': 'Phase 4',
368
- // 'desc': [
369
- // {
370
- // 'id': 6,
371
- // 'color': '#454545'
372
- // },
373
- // {
374
- // 'id': 8,
375
- // 'color': '#454545'
376
- // }
377
- // ],
378
- // 'id': 4,
379
- // 'value': 30,
380
- // 'mode': 2,
381
- // 'options': [],
382
- // 'delaystart': 0,
383
- // 'advanceend': 0
384
- // }
385
- // ],
386
- // [
387
- // {
388
- // 'name': 'Phase 5',
389
- // 'desc': [
390
- // {
391
- // 'id': 9,
392
- // 'color': '#454545'
393
- // }
394
- // ],
395
- // 'id': 5,
396
- // 'value': 30,
397
- // 'mode': 2,
398
- // 'options': [],
399
- // 'delaystart': 0,
400
- // 'advanceend': 0
401
- // },
402
- // {
403
- // 'name': 'Phase 6',
404
- // 'desc': [
405
- // {
406
- // 'id': 14,
407
- // 'color': '#454545'
408
- // },
409
- // {
410
- // 'id': 16,
411
- // 'color': '#454545'
412
- // }
413
- // ],
414
- // 'id': 6,
415
- // 'value': 30,
416
- // 'mode': 2,
417
- // 'options': [],
418
- // 'delaystart': 0,
419
- // 'advanceend': 0
420
- // },
421
- // {
422
- // 'name': 'Phase 7',
423
- // 'desc': [],
424
- // 'id': 7,
425
- // 'value': 30,
426
- // 'mode': 2,
427
- // 'options': [],
428
- // 'delaystart': 0,
429
- // 'advanceend': 0
430
- // },
431
- // {
432
- // 'name': 'Phase 8',
433
- // 'desc': [
434
- // {
435
- // 'id': 2,
436
- // 'color': '#454545'
437
- // },
438
- // {
439
- // 'id': 4,
440
- // 'color': '#454545'
441
- // }
442
- // ],
443
- // 'id': 8,
444
- // 'value': 30,
445
- // 'mode': 2,
446
- // 'options': [],
447
- // 'delaystart': 0,
448
- // 'advanceend': 0
449
- // }
450
- // ],
451
- // [],
452
- // []
453
- // ]
454
- // },
455
- // allPatternList: [
456
- // {
457
- // 'id': 1,
458
- // 'desc': '',
459
- // 'offset': 10,
460
- // 'cycle': 120,
461
- // 'rings': [
462
- // [
463
- // {
464
- // 'name': 'phase1',
465
- // 'id': 1,
466
- // 'value': 30,
467
- // 'mode': 2,
468
- // 'options': [],
469
- // 'minSplit': 20,
470
- // 'desc': [
471
- // {
472
- // 'id': 13,
473
- // 'color': '#454545'
474
- // }
475
- // ]
476
- // },
477
- // {
478
- // 'name': 'phase2',
479
- // 'id': 2,
480
- // 'value': 30,
481
- // 'mode': 2,
482
- // 'options': [],
483
- // 'minSplit': 20,
484
- // 'desc': [
485
- // {
486
- // 'id': 10,
487
- // 'color': '#454545'
488
- // },
489
- // {
490
- // 'id': 12,
491
- // 'color': '#454545'
492
- // }
493
- // ]
494
- // },
495
- // {
496
- // 'name': 'phase3',
497
- // 'id': 3,
498
- // 'value': 30,
499
- // 'mode': 2,
500
- // 'options': [],
501
- // 'minSplit': 20,
502
- // 'desc': [
503
- // {
504
- // 'id': 1,
505
- // 'color': '#454545'
506
- // }
507
- // ]
508
- // },
509
- // {
510
- // 'name': 'phase4',
511
- // 'id': 4,
512
- // 'value': 30,
513
- // 'mode': 2,
514
- // 'options': [],
515
- // 'minSplit': 20,
516
- // 'desc': [
517
- // {
518
- // 'id': 6,
519
- // 'color': '#454545'
520
- // },
521
- // {
522
- // 'id': 8,
523
- // 'color': '#454545'
524
- // }
525
- // ]
526
- // }
527
- // ],
528
- // [
529
- // {
530
- // 'name': 'phase5',
531
- // 'id': 5,
532
- // 'value': 30,
533
- // 'mode': 2,
534
- // 'options': [],
535
- // 'minSplit': 20,
536
- // 'desc': [
537
- // {
538
- // 'id': 9,
539
- // 'color': '#454545'
540
- // }
541
- // ]
542
- // },
543
- // {
544
- // 'name': 'phase6',
545
- // 'id': 6,
546
- // 'value': 30,
547
- // 'mode': 2,
548
- // 'options': [],
549
- // 'minSplit': 20,
550
- // 'desc': [
551
- // {
552
- // 'id': 14,
553
- // 'color': '#454545'
554
- // },
555
- // {
556
- // 'id': 16,
557
- // 'color': '#454545'
558
- // }
559
- // ]
560
- // },
561
- // {
562
- // 'name': 'phase7',
563
- // 'id': 7,
564
- // 'value': 30,
565
- // 'mode': 2,
566
- // 'options': [],
567
- // 'minSplit': 20,
568
- // 'desc': [
569
- // {
570
- // 'id': 5,
571
- // 'color': '#454545'
572
- // }
573
- // ]
574
- // },
575
- // {
576
- // 'name': 'phase8',
577
- // 'id': 8,
578
- // 'value': 30,
579
- // 'mode': 2,
580
- // 'options': [],
581
- // 'minSplit': 20,
582
- // 'desc': [
583
- // {
584
- // 'id': 2,
585
- // 'color': '#454545'
586
- // },
587
- // {
588
- // 'id': 4,
589
- // 'color': '#454545'
590
- // }
591
- // ]
592
- // }
593
- // ],
594
- // [],
595
- // []
596
- // ],
597
- // 'barriers': [
598
- // {
599
- // 'barrier': 1,
600
- // 'length': 60,
601
- // 'items': [
602
- // {
603
- // 'ring': 2,
604
- // 'data': [
605
- // 5,
606
- // 6
607
- // ]
608
- // },
609
- // {
610
- // 'ring': 1,
611
- // 'data': [
612
- // 1,
613
- // 2
614
- // ]
615
- // }
616
- // ]
617
- // },
618
- // {
619
- // 'barrier': 2,
620
- // 'length': 60,
621
- // 'items': [
622
- // {
623
- // 'ring': 2,
624
- // 'data': [
625
- // 7,
626
- // 8
627
- // ]
628
- // },
629
- // {
630
- // 'ring': 1,
631
- // 'data': [
632
- // 3,
633
- // 4
634
- // ]
635
- // }
636
- // ]
637
- // }
638
- // ],
639
- // 'stagesList': [
640
- // {
641
- // 'split': 30,
642
- // 'stages': [
643
- // 1,
644
- // 5
645
- // ]
646
- // },
647
- // {
648
- // 'split': 30,
649
- // 'stages': [
650
- // 2,
651
- // 6
652
- // ]
653
- // },
654
- // {
655
- // 'split': 30,
656
- // 'stages': [
657
- // 3,
658
- // 7
659
- // ]
660
- // },
661
- // {
662
- // 'split': 30,
663
- // 'stages': [
664
- // 4,
665
- // 8
666
- // ]
667
- // }
668
- // ],
669
- // 'stages': [
670
- // [
671
- // 1,
672
- // 5
673
- // ],
674
- // [
675
- // 2,
676
- // 6
677
- // ],
678
- // [
679
- // 3,
680
- // 7
681
- // ],
682
- // [
683
- // 4,
684
- // 8
685
- // ]
686
- // ]
687
- // },
688
- // {
689
- // 'id': 2,
690
- // 'desc': '方案2',
691
- // 'offset': 0,
692
- // 'cycle': 110,
693
- // 'rings': [
694
- // [
695
- // {
696
- // 'name': 'phase1',
697
- // 'id': 1,
698
- // 'value': 20,
699
- // 'mode': 2,
700
- // 'options': [
701
- // 0,
702
- // 0,
703
- // 0
704
- // ],
705
- // 'minSplit': 13,
706
- // 'delaystart': 0,
707
- // 'advanceend': 0
708
- // },
709
- // {
710
- // 'name': 'phase2',
711
- // 'id': 2,
712
- // 'value': 35,
713
- // 'mode': 2,
714
- // 'options': [
715
- // 0,
716
- // 0,
717
- // 0
718
- // ],
719
- // 'minSplit': 13,
720
- // 'delaystart': 0,
721
- // 'advanceend': 0
722
- // },
723
- // {
724
- // 'name': 'phase3',
725
- // 'id': 3,
726
- // 'value': 30,
727
- // 'mode': 2,
728
- // 'options': [
729
- // 0,
730
- // 0,
731
- // 0
732
- // ],
733
- // 'minSplit': 13,
734
- // 'delaystart': 0,
735
- // 'advanceend': 0
736
- // },
737
- // {
738
- // 'name': 'phase4',
739
- // 'id': 4,
740
- // 'value': 25,
741
- // 'mode': 2,
742
- // 'options': [
743
- // 0,
744
- // 0,
745
- // 0
746
- // ],
747
- // 'minSplit': 13,
748
- // 'delaystart': 0,
749
- // 'advanceend': 0
750
- // }
751
- // ],
752
- // [
753
- // {
754
- // 'name': 'Phase 5',
755
- // 'id': 5,
756
- // 'value': 27,
757
- // 'mode': 2,
758
- // 'options': [
759
- // 0,
760
- // 0,
761
- // 0
762
- // ],
763
- // 'minSplit': 13,
764
- // 'delaystart': 0,
765
- // 'advanceend': 0
766
- // },
767
- // {
768
- // 'name': 'Phase 6',
769
- // 'id': 6,
770
- // 'value': 28,
771
- // 'mode': 2,
772
- // 'options': [
773
- // 0,
774
- // 0,
775
- // 0
776
- // ],
777
- // 'minSplit': 13,
778
- // 'delaystart': 0,
779
- // 'advanceend': 0
780
- // },
781
- // {
782
- // 'name': 'Phase 7',
783
- // 'id': 7,
784
- // 'value': 35,
785
- // 'mode': 2,
786
- // 'options': [
787
- // 0,
788
- // 0,
789
- // 0
790
- // ],
791
- // 'minSplit': 13,
792
- // 'delaystart': 0,
793
- // 'advanceend': 0
794
- // },
795
- // {
796
- // 'name': 'Phase 8',
797
- // 'id': 8,
798
- // 'value': 20,
799
- // 'mode': 2,
800
- // 'options': [
801
- // 0,
802
- // 0,
803
- // 0
804
- // ],
805
- // 'minSplit': 13,
806
- // 'delaystart': 0,
807
- // 'advanceend': 0
808
- // }
809
- // ],
810
- // [],
811
- // []
812
- // ],
813
- // 'stagesList': [
814
- // {
815
- // 'split': 20,
816
- // 'stages': [
817
- // 1,
818
- // 5
819
- // ],
820
- // 'delaystart': 0,
821
- // 'advanceend': 0
822
- // },
823
- // {
824
- // 'split': 7,
825
- // 'stages': [
826
- // 2,
827
- // 5
828
- // ],
829
- // 'delaystart': 0,
830
- // 'advanceend': 0
831
- // },
832
- // {
833
- // 'split': 28,
834
- // 'stages': [
835
- // 2,
836
- // 6
837
- // ],
838
- // 'delaystart': 0,
839
- // 'advanceend': 0
840
- // },
841
- // {
842
- // 'split': 30,
843
- // 'stages': [
844
- // 3,
845
- // 7
846
- // ],
847
- // 'delaystart': 0,
848
- // 'advanceend': 0
849
- // },
850
- // {
851
- // 'split': 5,
852
- // 'stages': [
853
- // 4,
854
- // 7
855
- // ],
856
- // 'delaystart': 0,
857
- // 'advanceend': 0
858
- // },
859
- // {
860
- // 'split': 20,
861
- // 'stages': [
862
- // 4,
863
- // 8
864
- // ],
865
- // 'delaystart': 0,
866
- // 'advanceend': 0
867
- // }
868
- // ],
869
- // 'stages': [
870
- // [
871
- // 1,
872
- // 5
873
- // ],
874
- // [
875
- // 2,
876
- // 5
877
- // ],
878
- // [
879
- // 2,
880
- // 6
881
- // ],
882
- // [
883
- // 3,
884
- // 7
885
- // ],
886
- // [
887
- // 4,
888
- // 7
889
- // ],
890
- // [
891
- // 4,
892
- // 8
893
- // ]
894
- // ],
895
- // 'barriers': [
896
- // {
897
- // 'barrier': 1,
898
- // 'length': 55,
899
- // 'items': [
900
- // {
901
- // 'ring': 2,
902
- // 'data': [
903
- // 5,
904
- // 6
905
- // ]
906
- // },
907
- // {
908
- // 'ring': 1,
909
- // 'data': [
910
- // 1,
911
- // 2
912
- // ]
913
- // }
914
- // ]
915
- // },
916
- // {
917
- // 'barrier': 2,
918
- // 'length': 55,
919
- // 'items': [
920
- // {
921
- // 'ring': 2,
922
- // 'data': [
923
- // 7,
924
- // 8
925
- // ]
926
- // },
927
- // {
928
- // 'ring': 1,
929
- // 'data': [
930
- // 3,
931
- // 4
932
- // ]
933
- // }
934
- // ]
935
- // }
936
- // ]
937
- // },
938
- // {
939
- // 'id': 3,
940
- // 'desc': '方案3',
941
- // 'offset': 0,
942
- // 'cycle': 120,
943
- // 'rings': [
944
- // [
945
- // {
946
- // 'name': 'phase1',
947
- // 'id': 1,
948
- // 'value': 40,
949
- // 'mode': 2,
950
- // 'options': [
951
- // 0,
952
- // 0,
953
- // 0
954
- // ],
955
- // 'minSplit': 13,
956
- // 'delaystart': 0,
957
- // 'advanceend': 0
958
- // },
959
- // {
960
- // 'name': 'phase2',
961
- // 'id': 2,
962
- // 'value': 20,
963
- // 'mode': 2,
964
- // 'options': [
965
- // 0,
966
- // 0,
967
- // 0
968
- // ],
969
- // 'minSplit': 13,
970
- // 'delaystart': 0,
971
- // 'advanceend': 0
972
- // },
973
- // {
974
- // 'name': 'phase3',
975
- // 'id': 3,
976
- // 'value': 30,
977
- // 'mode': 2,
978
- // 'options': [
979
- // 0,
980
- // 0,
981
- // 0
982
- // ],
983
- // 'minSplit': 13,
984
- // 'delaystart': 0,
985
- // 'advanceend': 0
986
- // },
987
- // {
988
- // 'name': 'phase4',
989
- // 'id': 4,
990
- // 'value': 30,
991
- // 'mode': 2,
992
- // 'options': [
993
- // 0,
994
- // 0,
995
- // 0
996
- // ],
997
- // 'minSplit': 13,
998
- // 'delaystart': 0,
999
- // 'advanceend': 0
1000
- // }
1001
- // ],
1002
- // [
1003
- // {
1004
- // 'name': 'Phase 5',
1005
- // 'id': 5,
1006
- // 'value': 20,
1007
- // 'mode': 2,
1008
- // 'options': [
1009
- // 0,
1010
- // 0,
1011
- // 0
1012
- // ],
1013
- // 'minSplit': 13,
1014
- // 'delaystart': 0,
1015
- // 'advanceend': 0
1016
- // },
1017
- // {
1018
- // 'name': 'Phase 6',
1019
- // 'id': 6,
1020
- // 'value': 40,
1021
- // 'mode': 2,
1022
- // 'options': [
1023
- // 0,
1024
- // 0,
1025
- // 0
1026
- // ],
1027
- // 'minSplit': 13,
1028
- // 'delaystart': 0,
1029
- // 'advanceend': 0
1030
- // },
1031
- // {
1032
- // 'name': 'Phase 7',
1033
- // 'id': 7,
1034
- // 'value': 30,
1035
- // 'mode': 2,
1036
- // 'options': [
1037
- // 0,
1038
- // 0,
1039
- // 0
1040
- // ],
1041
- // 'minSplit': 13,
1042
- // 'delaystart': 0,
1043
- // 'advanceend': 0
1044
- // },
1045
- // {
1046
- // 'name': 'Phase 8',
1047
- // 'id': 8,
1048
- // 'value': 30,
1049
- // 'mode': 2,
1050
- // 'options': [
1051
- // 0,
1052
- // 0,
1053
- // 0
1054
- // ],
1055
- // 'minSplit': 13,
1056
- // 'delaystart': 0,
1057
- // 'advanceend': 0
1058
- // }
1059
- // ],
1060
- // [],
1061
- // []
1062
- // ],
1063
- // 'stagesList': [
1064
- // {
1065
- // 'split': 20,
1066
- // 'stages': [
1067
- // 1,
1068
- // 5
1069
- // ],
1070
- // 'delaystart': 0,
1071
- // 'advanceend': 0
1072
- // },
1073
- // {
1074
- // 'split': 20,
1075
- // 'stages': [
1076
- // 1,
1077
- // 6
1078
- // ],
1079
- // 'delaystart': 0,
1080
- // 'advanceend': 0
1081
- // },
1082
- // {
1083
- // 'split': 20,
1084
- // 'stages': [
1085
- // 2,
1086
- // 6
1087
- // ],
1088
- // 'delaystart': 0,
1089
- // 'advanceend': 0
1090
- // },
1091
- // {
1092
- // 'split': 30,
1093
- // 'stages': [
1094
- // 3,
1095
- // 7
1096
- // ],
1097
- // 'delaystart': 0,
1098
- // 'advanceend': 0
1099
- // },
1100
- // {
1101
- // 'split': 30,
1102
- // 'stages': [
1103
- // 4,
1104
- // 8
1105
- // ],
1106
- // 'delaystart': 0,
1107
- // 'advanceend': 0
1108
- // }
1109
- // ],
1110
- // 'stages': [
1111
- // [
1112
- // 1,
1113
- // 5
1114
- // ],
1115
- // [
1116
- // 1,
1117
- // 6
1118
- // ],
1119
- // [
1120
- // 2,
1121
- // 6
1122
- // ],
1123
- // [
1124
- // 3,
1125
- // 7
1126
- // ],
1127
- // [
1128
- // 4,
1129
- // 8
1130
- // ]
1131
- // ],
1132
- // 'barriers': [
1133
- // {
1134
- // 'barrier': 1,
1135
- // 'length': 60,
1136
- // 'items': [
1137
- // {
1138
- // 'ring': 2,
1139
- // 'data': [
1140
- // 5,
1141
- // 6
1142
- // ]
1143
- // },
1144
- // {
1145
- // 'ring': 1,
1146
- // 'data': [
1147
- // 1,
1148
- // 2
1149
- // ]
1150
- // }
1151
- // ]
1152
- // },
1153
- // {
1154
- // 'barrier': 2,
1155
- // 'length': 60,
1156
- // 'items': [
1157
- // {
1158
- // 'ring': 2,
1159
- // 'data': [
1160
- // 7,
1161
- // 8
1162
- // ]
1163
- // },
1164
- // {
1165
- // 'ring': 1,
1166
- // 'data': [
1167
- // 3,
1168
- // 4
1169
- // ]
1170
- // }
1171
- // ]
1172
- // }
1173
- // ]
1174
- // }
1175
- // ],
316
+ planPattern: {
317
+ cycle: 120,
318
+ offset: 0,
319
+ rings: [
320
+ [
321
+ {
322
+ 'name': 'Phase 1',
323
+ 'desc': [
324
+ {
325
+ 'id': 13,
326
+ 'color': '#454545'
327
+ }
328
+ ],
329
+ 'id': 1,
330
+ 'value': 30,
331
+ 'mode': 2,
332
+ 'options': [],
333
+ 'delaystart': 0,
334
+ 'advanceend': 0
335
+ },
336
+ {
337
+ 'name': 'Phase 2',
338
+ 'desc': [
339
+ {
340
+ 'id': 3,
341
+ 'color': '#454545'
342
+ },
343
+ {
344
+ 'id': 12,
345
+ 'color': '#454545'
346
+ }
347
+ ],
348
+ 'id': 2,
349
+ 'value': 30,
350
+ 'mode': 2,
351
+ 'options': [],
352
+ 'delaystart': 0,
353
+ 'advanceend': 0
354
+ },
355
+ {
356
+ 'name': 'Phase 3',
357
+ 'desc': [
358
+ {
359
+ 'id': 1,
360
+ 'color': '#454545'
361
+ }
362
+ ],
363
+ 'id': 3,
364
+ 'value': 30,
365
+ 'mode': 2,
366
+ 'options': [],
367
+ 'delaystart': 0,
368
+ 'advanceend': 0
369
+ },
370
+ {
371
+ 'name': 'Phase 4',
372
+ 'desc': [
373
+ {
374
+ 'id': 6,
375
+ 'color': '#454545'
376
+ },
377
+ {
378
+ 'id': 8,
379
+ 'color': '#454545'
380
+ }
381
+ ],
382
+ 'id': 4,
383
+ 'value': 30,
384
+ 'mode': 2,
385
+ 'options': [],
386
+ 'delaystart': 0,
387
+ 'advanceend': 0
388
+ }
389
+ ],
390
+ [
391
+ {
392
+ 'name': 'Phase 5',
393
+ 'desc': [
394
+ {
395
+ 'id': 9,
396
+ 'color': '#454545'
397
+ }
398
+ ],
399
+ 'id': 5,
400
+ 'value': 30,
401
+ 'mode': 2,
402
+ 'options': [],
403
+ 'delaystart': 0,
404
+ 'advanceend': 0
405
+ },
406
+ {
407
+ 'name': 'Phase 6',
408
+ 'desc': [
409
+ {
410
+ 'id': 14,
411
+ 'color': '#454545'
412
+ },
413
+ {
414
+ 'id': 16,
415
+ 'color': '#454545'
416
+ }
417
+ ],
418
+ 'id': 6,
419
+ 'value': 30,
420
+ 'mode': 2,
421
+ 'options': [],
422
+ 'delaystart': 0,
423
+ 'advanceend': 0
424
+ },
425
+ {
426
+ 'name': 'Phase 7',
427
+ 'desc': [],
428
+ 'id': 7,
429
+ 'value': 30,
430
+ 'mode': 2,
431
+ 'options': [],
432
+ 'delaystart': 0,
433
+ 'advanceend': 0
434
+ },
435
+ {
436
+ 'name': 'Phase 8',
437
+ 'desc': [
438
+ {
439
+ 'id': 2,
440
+ 'color': '#454545'
441
+ },
442
+ {
443
+ 'id': 4,
444
+ 'color': '#454545'
445
+ }
446
+ ],
447
+ 'id': 8,
448
+ 'value': 30,
449
+ 'mode': 2,
450
+ 'options': [],
451
+ 'delaystart': 0,
452
+ 'advanceend': 0
453
+ }
454
+ ],
455
+ [],
456
+ []
457
+ ]
458
+ },
459
+ allPatternList: [
460
+ {
461
+ 'id': 1,
462
+ 'desc': '',
463
+ 'offset': 10,
464
+ 'cycle': 120,
465
+ 'rings': [
466
+ [
467
+ {
468
+ 'name': 'phase1',
469
+ 'id': 1,
470
+ 'value': 30,
471
+ 'mode': 2,
472
+ 'options': [],
473
+ 'minSplit': 20,
474
+ 'desc': [
475
+ {
476
+ 'id': 13,
477
+ 'color': '#454545'
478
+ }
479
+ ]
480
+ },
481
+ {
482
+ 'name': 'phase2',
483
+ 'id': 2,
484
+ 'value': 30,
485
+ 'mode': 2,
486
+ 'options': [],
487
+ 'minSplit': 20,
488
+ 'desc': [
489
+ {
490
+ 'id': 10,
491
+ 'color': '#454545'
492
+ },
493
+ {
494
+ 'id': 12,
495
+ 'color': '#454545'
496
+ }
497
+ ]
498
+ },
499
+ {
500
+ 'name': 'phase3',
501
+ 'id': 3,
502
+ 'value': 30,
503
+ 'mode': 2,
504
+ 'options': [],
505
+ 'minSplit': 20,
506
+ 'desc': [
507
+ {
508
+ 'id': 1,
509
+ 'color': '#454545'
510
+ }
511
+ ]
512
+ },
513
+ {
514
+ 'name': 'phase4',
515
+ 'id': 4,
516
+ 'value': 30,
517
+ 'mode': 2,
518
+ 'options': [],
519
+ 'minSplit': 20,
520
+ 'desc': [
521
+ {
522
+ 'id': 6,
523
+ 'color': '#454545'
524
+ },
525
+ {
526
+ 'id': 8,
527
+ 'color': '#454545'
528
+ }
529
+ ]
530
+ }
531
+ ],
532
+ [
533
+ {
534
+ 'name': 'phase5',
535
+ 'id': 5,
536
+ 'value': 30,
537
+ 'mode': 2,
538
+ 'options': [],
539
+ 'minSplit': 20,
540
+ 'desc': [
541
+ {
542
+ 'id': 9,
543
+ 'color': '#454545'
544
+ }
545
+ ]
546
+ },
547
+ {
548
+ 'name': 'phase6',
549
+ 'id': 6,
550
+ 'value': 30,
551
+ 'mode': 2,
552
+ 'options': [],
553
+ 'minSplit': 20,
554
+ 'desc': [
555
+ {
556
+ 'id': 14,
557
+ 'color': '#454545'
558
+ },
559
+ {
560
+ 'id': 16,
561
+ 'color': '#454545'
562
+ }
563
+ ]
564
+ },
565
+ {
566
+ 'name': 'phase7',
567
+ 'id': 7,
568
+ 'value': 30,
569
+ 'mode': 2,
570
+ 'options': [],
571
+ 'minSplit': 20,
572
+ 'desc': [
573
+ {
574
+ 'id': 5,
575
+ 'color': '#454545'
576
+ }
577
+ ]
578
+ },
579
+ {
580
+ 'name': 'phase8',
581
+ 'id': 8,
582
+ 'value': 30,
583
+ 'mode': 2,
584
+ 'options': [],
585
+ 'minSplit': 20,
586
+ 'desc': [
587
+ {
588
+ 'id': 2,
589
+ 'color': '#454545'
590
+ },
591
+ {
592
+ 'id': 4,
593
+ 'color': '#454545'
594
+ }
595
+ ]
596
+ }
597
+ ],
598
+ [],
599
+ []
600
+ ],
601
+ 'barriers': [
602
+ {
603
+ 'barrier': 1,
604
+ 'length': 60,
605
+ 'items': [
606
+ {
607
+ 'ring': 2,
608
+ 'data': [
609
+ 5,
610
+ 6
611
+ ]
612
+ },
613
+ {
614
+ 'ring': 1,
615
+ 'data': [
616
+ 1,
617
+ 2
618
+ ]
619
+ }
620
+ ]
621
+ },
622
+ {
623
+ 'barrier': 2,
624
+ 'length': 60,
625
+ 'items': [
626
+ {
627
+ 'ring': 2,
628
+ 'data': [
629
+ 7,
630
+ 8
631
+ ]
632
+ },
633
+ {
634
+ 'ring': 1,
635
+ 'data': [
636
+ 3,
637
+ 4
638
+ ]
639
+ }
640
+ ]
641
+ }
642
+ ],
643
+ 'stagesList': [
644
+ {
645
+ 'split': 30,
646
+ 'stages': [
647
+ 1,
648
+ 5
649
+ ]
650
+ },
651
+ {
652
+ 'split': 30,
653
+ 'stages': [
654
+ 2,
655
+ 6
656
+ ]
657
+ },
658
+ {
659
+ 'split': 30,
660
+ 'stages': [
661
+ 3,
662
+ 7
663
+ ]
664
+ },
665
+ {
666
+ 'split': 30,
667
+ 'stages': [
668
+ 4,
669
+ 8
670
+ ]
671
+ }
672
+ ],
673
+ 'stages': [
674
+ [
675
+ 1,
676
+ 5
677
+ ],
678
+ [
679
+ 2,
680
+ 6
681
+ ],
682
+ [
683
+ 3,
684
+ 7
685
+ ],
686
+ [
687
+ 4,
688
+ 8
689
+ ]
690
+ ]
691
+ },
692
+ {
693
+ 'id': 2,
694
+ 'desc': '方案2',
695
+ 'offset': 0,
696
+ 'cycle': 110,
697
+ 'rings': [
698
+ [
699
+ {
700
+ 'name': 'phase1',
701
+ 'id': 1,
702
+ 'value': 20,
703
+ 'mode': 2,
704
+ 'options': [
705
+ 0,
706
+ 0,
707
+ 0
708
+ ],
709
+ 'minSplit': 13,
710
+ 'delaystart': 0,
711
+ 'advanceend': 0
712
+ },
713
+ {
714
+ 'name': 'phase2',
715
+ 'id': 2,
716
+ 'value': 35,
717
+ 'mode': 2,
718
+ 'options': [
719
+ 0,
720
+ 0,
721
+ 0
722
+ ],
723
+ 'minSplit': 13,
724
+ 'delaystart': 0,
725
+ 'advanceend': 0
726
+ },
727
+ {
728
+ 'name': 'phase3',
729
+ 'id': 3,
730
+ 'value': 30,
731
+ 'mode': 2,
732
+ 'options': [
733
+ 0,
734
+ 0,
735
+ 0
736
+ ],
737
+ 'minSplit': 13,
738
+ 'delaystart': 0,
739
+ 'advanceend': 0
740
+ },
741
+ {
742
+ 'name': 'phase4',
743
+ 'id': 4,
744
+ 'value': 25,
745
+ 'mode': 2,
746
+ 'options': [
747
+ 0,
748
+ 0,
749
+ 0
750
+ ],
751
+ 'minSplit': 13,
752
+ 'delaystart': 0,
753
+ 'advanceend': 0
754
+ }
755
+ ],
756
+ [
757
+ {
758
+ 'name': 'Phase 5',
759
+ 'id': 5,
760
+ 'value': 27,
761
+ 'mode': 2,
762
+ 'options': [
763
+ 0,
764
+ 0,
765
+ 0
766
+ ],
767
+ 'minSplit': 13,
768
+ 'delaystart': 0,
769
+ 'advanceend': 0
770
+ },
771
+ {
772
+ 'name': 'Phase 6',
773
+ 'id': 6,
774
+ 'value': 28,
775
+ 'mode': 2,
776
+ 'options': [
777
+ 0,
778
+ 0,
779
+ 0
780
+ ],
781
+ 'minSplit': 13,
782
+ 'delaystart': 0,
783
+ 'advanceend': 0
784
+ },
785
+ {
786
+ 'name': 'Phase 7',
787
+ 'id': 7,
788
+ 'value': 35,
789
+ 'mode': 2,
790
+ 'options': [
791
+ 0,
792
+ 0,
793
+ 0
794
+ ],
795
+ 'minSplit': 13,
796
+ 'delaystart': 0,
797
+ 'advanceend': 0
798
+ },
799
+ {
800
+ 'name': 'Phase 8',
801
+ 'id': 8,
802
+ 'value': 20,
803
+ 'mode': 2,
804
+ 'options': [
805
+ 0,
806
+ 0,
807
+ 0
808
+ ],
809
+ 'minSplit': 13,
810
+ 'delaystart': 0,
811
+ 'advanceend': 0
812
+ }
813
+ ],
814
+ [],
815
+ []
816
+ ],
817
+ 'stagesList': [
818
+ {
819
+ 'split': 20,
820
+ 'stages': [
821
+ 1,
822
+ 5
823
+ ],
824
+ 'delaystart': 0,
825
+ 'advanceend': 0
826
+ },
827
+ {
828
+ 'split': 7,
829
+ 'stages': [
830
+ 2,
831
+ 5
832
+ ],
833
+ 'delaystart': 0,
834
+ 'advanceend': 0
835
+ },
836
+ {
837
+ 'split': 28,
838
+ 'stages': [
839
+ 2,
840
+ 6
841
+ ],
842
+ 'delaystart': 0,
843
+ 'advanceend': 0
844
+ },
845
+ {
846
+ 'split': 30,
847
+ 'stages': [
848
+ 3,
849
+ 7
850
+ ],
851
+ 'delaystart': 0,
852
+ 'advanceend': 0
853
+ },
854
+ {
855
+ 'split': 5,
856
+ 'stages': [
857
+ 4,
858
+ 7
859
+ ],
860
+ 'delaystart': 0,
861
+ 'advanceend': 0
862
+ },
863
+ {
864
+ 'split': 20,
865
+ 'stages': [
866
+ 4,
867
+ 8
868
+ ],
869
+ 'delaystart': 0,
870
+ 'advanceend': 0
871
+ }
872
+ ],
873
+ 'stages': [
874
+ [
875
+ 1,
876
+ 5
877
+ ],
878
+ [
879
+ 2,
880
+ 5
881
+ ],
882
+ [
883
+ 2,
884
+ 6
885
+ ],
886
+ [
887
+ 3,
888
+ 7
889
+ ],
890
+ [
891
+ 4,
892
+ 7
893
+ ],
894
+ [
895
+ 4,
896
+ 8
897
+ ]
898
+ ],
899
+ 'barriers': [
900
+ {
901
+ 'barrier': 1,
902
+ 'length': 55,
903
+ 'items': [
904
+ {
905
+ 'ring': 2,
906
+ 'data': [
907
+ 5,
908
+ 6
909
+ ]
910
+ },
911
+ {
912
+ 'ring': 1,
913
+ 'data': [
914
+ 1,
915
+ 2
916
+ ]
917
+ }
918
+ ]
919
+ },
920
+ {
921
+ 'barrier': 2,
922
+ 'length': 55,
923
+ 'items': [
924
+ {
925
+ 'ring': 2,
926
+ 'data': [
927
+ 7,
928
+ 8
929
+ ]
930
+ },
931
+ {
932
+ 'ring': 1,
933
+ 'data': [
934
+ 3,
935
+ 4
936
+ ]
937
+ }
938
+ ]
939
+ }
940
+ ]
941
+ },
942
+ {
943
+ 'id': 3,
944
+ 'desc': '方案3',
945
+ 'offset': 0,
946
+ 'cycle': 120,
947
+ 'rings': [
948
+ [
949
+ {
950
+ 'name': 'phase1',
951
+ 'id': 1,
952
+ 'value': 40,
953
+ 'mode': 2,
954
+ 'options': [
955
+ 0,
956
+ 0,
957
+ 0
958
+ ],
959
+ 'minSplit': 13,
960
+ 'delaystart': 0,
961
+ 'advanceend': 0
962
+ },
963
+ {
964
+ 'name': 'phase2',
965
+ 'id': 2,
966
+ 'value': 20,
967
+ 'mode': 2,
968
+ 'options': [
969
+ 0,
970
+ 0,
971
+ 0
972
+ ],
973
+ 'minSplit': 13,
974
+ 'delaystart': 0,
975
+ 'advanceend': 0
976
+ },
977
+ {
978
+ 'name': 'phase3',
979
+ 'id': 3,
980
+ 'value': 30,
981
+ 'mode': 2,
982
+ 'options': [
983
+ 0,
984
+ 0,
985
+ 0
986
+ ],
987
+ 'minSplit': 13,
988
+ 'delaystart': 0,
989
+ 'advanceend': 0
990
+ },
991
+ {
992
+ 'name': 'phase4',
993
+ 'id': 4,
994
+ 'value': 30,
995
+ 'mode': 2,
996
+ 'options': [
997
+ 0,
998
+ 0,
999
+ 0
1000
+ ],
1001
+ 'minSplit': 13,
1002
+ 'delaystart': 0,
1003
+ 'advanceend': 0
1004
+ }
1005
+ ],
1006
+ [
1007
+ {
1008
+ 'name': 'Phase 5',
1009
+ 'id': 5,
1010
+ 'value': 20,
1011
+ 'mode': 2,
1012
+ 'options': [
1013
+ 0,
1014
+ 0,
1015
+ 0
1016
+ ],
1017
+ 'minSplit': 13,
1018
+ 'delaystart': 0,
1019
+ 'advanceend': 0
1020
+ },
1021
+ {
1022
+ 'name': 'Phase 6',
1023
+ 'id': 6,
1024
+ 'value': 40,
1025
+ 'mode': 2,
1026
+ 'options': [
1027
+ 0,
1028
+ 0,
1029
+ 0
1030
+ ],
1031
+ 'minSplit': 13,
1032
+ 'delaystart': 0,
1033
+ 'advanceend': 0
1034
+ },
1035
+ {
1036
+ 'name': 'Phase 7',
1037
+ 'id': 7,
1038
+ 'value': 30,
1039
+ 'mode': 2,
1040
+ 'options': [
1041
+ 0,
1042
+ 0,
1043
+ 0
1044
+ ],
1045
+ 'minSplit': 13,
1046
+ 'delaystart': 0,
1047
+ 'advanceend': 0
1048
+ },
1049
+ {
1050
+ 'name': 'Phase 8',
1051
+ 'id': 8,
1052
+ 'value': 30,
1053
+ 'mode': 2,
1054
+ 'options': [
1055
+ 0,
1056
+ 0,
1057
+ 0
1058
+ ],
1059
+ 'minSplit': 13,
1060
+ 'delaystart': 0,
1061
+ 'advanceend': 0
1062
+ }
1063
+ ],
1064
+ [],
1065
+ []
1066
+ ],
1067
+ 'stagesList': [
1068
+ {
1069
+ 'split': 20,
1070
+ 'stages': [
1071
+ 1,
1072
+ 5
1073
+ ],
1074
+ 'delaystart': 0,
1075
+ 'advanceend': 0
1076
+ },
1077
+ {
1078
+ 'split': 20,
1079
+ 'stages': [
1080
+ 1,
1081
+ 6
1082
+ ],
1083
+ 'delaystart': 0,
1084
+ 'advanceend': 0
1085
+ },
1086
+ {
1087
+ 'split': 20,
1088
+ 'stages': [
1089
+ 2,
1090
+ 6
1091
+ ],
1092
+ 'delaystart': 0,
1093
+ 'advanceend': 0
1094
+ },
1095
+ {
1096
+ 'split': 30,
1097
+ 'stages': [
1098
+ 3,
1099
+ 7
1100
+ ],
1101
+ 'delaystart': 0,
1102
+ 'advanceend': 0
1103
+ },
1104
+ {
1105
+ 'split': 30,
1106
+ 'stages': [
1107
+ 4,
1108
+ 8
1109
+ ],
1110
+ 'delaystart': 0,
1111
+ 'advanceend': 0
1112
+ }
1113
+ ],
1114
+ 'stages': [
1115
+ [
1116
+ 1,
1117
+ 5
1118
+ ],
1119
+ [
1120
+ 1,
1121
+ 6
1122
+ ],
1123
+ [
1124
+ 2,
1125
+ 6
1126
+ ],
1127
+ [
1128
+ 3,
1129
+ 7
1130
+ ],
1131
+ [
1132
+ 4,
1133
+ 8
1134
+ ]
1135
+ ],
1136
+ 'barriers': [
1137
+ {
1138
+ 'barrier': 1,
1139
+ 'length': 60,
1140
+ 'items': [
1141
+ {
1142
+ 'ring': 2,
1143
+ 'data': [
1144
+ 5,
1145
+ 6
1146
+ ]
1147
+ },
1148
+ {
1149
+ 'ring': 1,
1150
+ 'data': [
1151
+ 1,
1152
+ 2
1153
+ ]
1154
+ }
1155
+ ]
1156
+ },
1157
+ {
1158
+ 'barrier': 2,
1159
+ 'length': 60,
1160
+ 'items': [
1161
+ {
1162
+ 'ring': 2,
1163
+ 'data': [
1164
+ 7,
1165
+ 8
1166
+ ]
1167
+ },
1168
+ {
1169
+ 'ring': 1,
1170
+ 'data': [
1171
+ 3,
1172
+ 4
1173
+ ]
1174
+ }
1175
+ ]
1176
+ }
1177
+ ]
1178
+ }
1179
+ ],
1176
1180
  manualInfo: {
1177
1181
  tempPatternid: '',
1178
1182
  offset: 0,
@@ -1271,72 +1275,75 @@ export default {
1271
1275
  this.handleStageData(this.patternOne[0].rings)
1272
1276
  },
1273
1277
  handleStageData (rings) { // stagesList
1274
- let phaseList = []
1275
- let stagesList = []
1276
- // rings = JSON.parse(JSON.stringify(rings))
1277
- if (rings.length === 0) return
1278
- let mapAdd = rings.map(item => {
1279
- return item.map(val => {
1280
- return val.value + (val.sum ? val.sum : 0)
1281
- })
1282
- })
1283
- let maxCycle = mapAdd.length > 0 ? mapAdd.map(item => {
1284
- return item.length > 0 ? item.reduce((a, b) => {
1285
- return a + b
1286
- }) : 0
1287
- }) : 0
1288
- this.max = Math.max(...maxCycle)// 每个环的周期最大值
1289
- this.stateList = [0]
1290
- this.narr = []
1291
- let currentIds = ''
1292
- let lastCurrentIds = ''
1293
- for (let j = 0; j <= this.max; j++) { // 指针长度
1294
- for (let i = 0; i < rings.length; i++) { // 环列表
1295
- let ring = rings[i]// 每个环对象
1296
- let sum = 0
1297
- for (let n = 0; n < ring.length; n++) { // 相位累计长度
1298
- if (ring[n].mode !== 7) {
1299
- sum = sum + ring[n].value + (ring[n].sum ? ring[n].sum : 0)
1300
- if (j < sum) {
1301
- let phaseId = ring[n].id
1302
- currentIds = currentIds + '-' + phaseId
1303
- break
1278
+ for (let i = 0; i < rings.length; i++) {
1279
+ if (rings[i].length > 0) {
1280
+ let phaseList = []
1281
+ let stagesList = []
1282
+ // rings = JSON.parse(JSON.stringify(rings))
1283
+ let mapAdd = rings.map(item => {
1284
+ return item.map(val => {
1285
+ return val.value + (val.sum ? val.sum : 0)
1286
+ })
1287
+ })
1288
+ let maxCycle = mapAdd.length > 0 ? mapAdd.map(item => {
1289
+ return item.length > 0 ? item.reduce((a, b) => {
1290
+ return a + b
1291
+ }) : 0
1292
+ }) : 0
1293
+ this.max = Math.max(...maxCycle)// 每个环的周期最大值
1294
+ this.stateList = [0]
1295
+ this.narr = []
1296
+ let currentIds = ''
1297
+ let lastCurrentIds = ''
1298
+ for (let j = 0; j <= this.max; j++) { // 指针长度
1299
+ for (let i = 0; i < rings.length; i++) { // 环列表
1300
+ let ring = rings[i]// 每个环对象
1301
+ let sum = 0
1302
+ for (let n = 0; n < ring.length; n++) { // 相位累计长度
1303
+ if (ring[n].mode !== 7) {
1304
+ sum = sum + ring[n].value + (ring[n].sum ? ring[n].sum : 0)
1305
+ if (j < sum) {
1306
+ let phaseId = ring[n].id
1307
+ currentIds = currentIds + '-' + phaseId
1308
+ break
1309
+ }
1310
+ }
1304
1311
  }
1305
1312
  }
1313
+ if (lastCurrentIds !== currentIds && lastCurrentIds !== '') { // 当前相位id和上一个相比不同说明相位变化了
1314
+ phaseList.push(lastCurrentIds)
1315
+ this.stateList.push(j)// 阶段累计长度的集合
1316
+ }
1317
+ lastCurrentIds = currentIds
1318
+ currentIds = ''
1306
1319
  }
1320
+ let newPhaselist = []
1321
+ phaseList.forEach(i => {
1322
+ let rangeArr = i.split('-').map(Number)
1323
+ if (rangeArr.length > 2) {
1324
+ newPhaselist.push([
1325
+ JSON.parse(JSON.stringify(rangeArr[1])),
1326
+ JSON.parse(JSON.stringify(rangeArr[2]))
1327
+ ])
1328
+ } else {
1329
+ newPhaselist.push([
1330
+ JSON.parse(JSON.stringify(rangeArr[1]))
1331
+ ])
1332
+ }
1333
+ })
1334
+ for (let i = this.stateList.length - 1; i >= 1; i--) {
1335
+ this.narr.push(this.stateList[i] - this.stateList[i - 1])
1336
+ }
1337
+ // newPhaselist
1338
+ this.narr.reverse()// 阶段差
1339
+ for (let i = 0; i < newPhaselist.length; i++) {
1340
+ let stage = JSON.parse(JSON.stringify(newPhaselist[i]))
1341
+ let stageItem = this.getStageItem(stage, rings, i)
1342
+ stagesList.push(JSON.parse(JSON.stringify(stageItem)))
1343
+ }
1344
+ this.stagesList = JSON.parse(JSON.stringify(stagesList))
1307
1345
  }
1308
- if (lastCurrentIds !== currentIds && lastCurrentIds !== '') { // 当前相位id和上一个相比不同说明相位变化了
1309
- phaseList.push(lastCurrentIds)
1310
- this.stateList.push(j)// 阶段累计长度的集合
1311
- }
1312
- lastCurrentIds = currentIds
1313
- currentIds = ''
1314
- }
1315
- let newPhaselist = []
1316
- phaseList.forEach(i => {
1317
- let rangeArr = i.split('-').map(Number)
1318
- if (rangeArr.length > 2) {
1319
- newPhaselist.push([
1320
- JSON.parse(JSON.stringify(rangeArr[1])),
1321
- JSON.parse(JSON.stringify(rangeArr[2]))
1322
- ])
1323
- } else {
1324
- newPhaselist.push([
1325
- JSON.parse(JSON.stringify(rangeArr[1]))
1326
- ])
1327
- }
1328
- })
1329
- for (let i = this.stateList.length - 1; i >= 1; i--) {
1330
- this.narr.push(this.stateList[i] - this.stateList[i - 1])
1331
- }
1332
- // newPhaselist
1333
- this.narr.reverse()// 阶段差
1334
- for (let i = 0; i < newPhaselist.length; i++) {
1335
- let stage = JSON.parse(JSON.stringify(newPhaselist[i]))
1336
- let stageItem = this.getStageItem(stage, rings, i)
1337
- stagesList.push(JSON.parse(JSON.stringify(stageItem)))
1338
1346
  }
1339
- this.stagesList = JSON.parse(JSON.stringify(stagesList))
1340
1347
  },
1341
1348
  getStageItem (stageArr, ringsList, i) {
1342
1349
  let res = {