450 |
if (orgAddress == null) |
if (orgAddress == null) |
451 |
continue; |
continue; |
452 |
|
|
453 |
if (orgAddress.daekningsType != DaekningsType.DAEKNING_IKKEDAEKKET) { |
/*if (orgAddress.daekningsType != DaekningsType.DAEKNING_IKKEDAEKKET) { |
454 |
//kan være at adressen er blevet markeret dækket og - find-nærmeste data ikke er opdateret i mellemtiden |
//kan være at adressen er blevet markeret dækket og - find-nærmeste data ikke er opdateret i mellemtiden |
455 |
continue; |
continue; |
456 |
} |
}*/ |
457 |
|
|
458 |
Address targetAddress = idAddressMap.get(eb.targetId); |
Address targetAddress = idAddressMap.get(eb.targetId); |
459 |
if (targetAddress == null) { |
if (targetAddress == null) { |
476 |
|
|
477 |
boolean covered = false; |
boolean covered = false; |
478 |
if (targetAddress.distributor.equals("DAO")) { |
if (targetAddress.distributor.equals("DAO")) { |
479 |
orgAddress.ruteMandag = calculateExtendedDaoRoute(eb, targetAddress); |
orgAddress.routingMandag.rute = calculateExtendedDaoRoute(eb, targetAddress); |
480 |
orgAddress.ruteMandag = ruteHelper.getInstance(orgAddress.ruteMandag); |
orgAddress.routingMandag.rute = ruteHelper.getInstance(orgAddress.routingMandag.rute); |
481 |
|
|
482 |
if (orgAddress.ruteMandag != null) { |
if (orgAddress.routingMandag.rute != null) { |
483 |
orgAddress.korelisteMandag = targetAddress.korelisteMandag; |
orgAddress.routingMandag.koreliste = targetAddress.routingMandag.koreliste; |
484 |
covered = true; |
covered = true; |
485 |
} |
} |
486 |
} |
} |
487 |
|
|
488 |
if (targetAddress.distributor.equals("BK")) { |
if (targetAddress.distributor.equals("BK")) { |
489 |
orgAddress.korelisteMandag = calculateExtendedBkKoreliste(eb, targetAddress); |
orgAddress.routingMandag.koreliste = calculateExtendedBkKoreliste(eb, targetAddress); |
490 |
orgAddress.korelisteMandag = korelisteHelper.getInstance(orgAddress.korelisteMandag); |
orgAddress.routingMandag.koreliste = korelisteHelper.getInstance(orgAddress.routingMandag.koreliste); |
491 |
|
|
492 |
if (orgAddress.korelisteMandag != null) { |
if (orgAddress.routingMandag.koreliste != null) { |
493 |
orgAddress.ruteMandag = targetAddress.ruteMandag; |
orgAddress.routingMandag.rute = targetAddress.routingMandag.rute; |
494 |
covered = true; |
covered = true; |
495 |
} |
} |
496 |
} |
} |
536 |
} |
} |
537 |
|
|
538 |
addr.daekningsType = DaekningsType.DAEKNING_100PCT; |
addr.daekningsType = DaekningsType.DAEKNING_100PCT; |
539 |
addr.ruteMandag = bean.rute; |
addr.routingMandag.rute = bean.rute; |
540 |
addr.korelisteMandag = bean.koreliste; |
addr.routingMandag.koreliste = bean.koreliste; |
541 |
addr.dbkBane = bean.dbkBane; |
addr.dbkBane = bean.dbkBane; |
542 |
addr.distributor = bean.distributor; |
addr.distributor = bean.distributor; |
543 |
} |
} |
602 |
|
|
603 |
|
|
604 |
private String calculateExtendedDaoRoute(ExtendedBean eb, Address targetAddress) { |
private String calculateExtendedDaoRoute(ExtendedBean eb, Address targetAddress) { |
605 |
if (targetAddress.ruteMandag == null) { //hvis targetAdress.rute er null så er adressen ikke dækket alligevel |
if (targetAddress.routingMandag.rute == null) { //hvis targetAdress.rute er null så er adressen ikke dækket alligevel |
606 |
return null; |
return null; |
607 |
} |
} |
608 |
|
|
610 |
switch( eb.transport) { |
switch( eb.transport) { |
611 |
case "cykel": |
case "cykel": |
612 |
if (eb.afstand < 0.151) { |
if (eb.afstand < 0.151) { |
613 |
return "." + targetAddress.ruteMandag; |
return "." + targetAddress.routingMandag.rute; |
614 |
} else if (eb.afstand < 0.501) { |
} else if (eb.afstand < 0.501) { |
615 |
return ".." + targetAddress.ruteMandag; |
return ".." + targetAddress.routingMandag.rute; |
616 |
} else if (eb.afstand < 0.701) { |
} else if (eb.afstand < 0.701) { |
617 |
return "..." + targetAddress.ruteMandag; |
return "..." + targetAddress.routingMandag.rute; |
618 |
} else if (eb.afstand < 1.001) { |
} else if (eb.afstand < 1.001) { |
619 |
return "...." + targetAddress.ruteMandag; |
return "...." + targetAddress.routingMandag.rute; |
620 |
} |
} |
621 |
break; |
break; |
622 |
case "scooter": |
case "scooter": |
623 |
if (eb.afstand < 0.151) { |
if (eb.afstand < 0.151) { |
624 |
return "." + targetAddress.ruteMandag; |
return "." + targetAddress.routingMandag.rute; |
625 |
} else if (eb.afstand < 0.801) { |
} else if (eb.afstand < 0.801) { |
626 |
return ".." + targetAddress.ruteMandag; |
return ".." + targetAddress.routingMandag.rute; |
627 |
} else if (eb.afstand < 1.201) { |
} else if (eb.afstand < 1.201) { |
628 |
return "..." + targetAddress.ruteMandag; |
return "..." + targetAddress.routingMandag.rute; |
629 |
} else if (eb.afstand < 2.101) { |
} else if (eb.afstand < 2.101) { |
630 |
return "...." + targetAddress.ruteMandag; |
return "...." + targetAddress.routingMandag.rute; |
631 |
} |
} |
632 |
break; |
break; |
633 |
case "bil": |
case "bil": |
634 |
if (eb.afstand < 0.151) { |
if (eb.afstand < 0.151) { |
635 |
return "." + targetAddress.ruteMandag; |
return "." + targetAddress.routingMandag.rute; |
636 |
} else if (eb.afstand < 1.001) { |
} else if (eb.afstand < 1.001) { |
637 |
return ".." + targetAddress.ruteMandag; |
return ".." + targetAddress.routingMandag.rute; |
638 |
} else if (eb.afstand < 1.601) { |
} else if (eb.afstand < 1.601) { |
639 |
return "..." + targetAddress.ruteMandag; |
return "..." + targetAddress.routingMandag.rute; |
640 |
} else if (eb.afstand < 2.601) { |
} else if (eb.afstand < 2.601) { |
641 |
return "...." + targetAddress.ruteMandag; |
return "...." + targetAddress.routingMandag.rute; |
642 |
} |
} |
643 |
break; |
break; |
644 |
default: |
default: |
657 |
|
|
658 |
/////////////////////////////////////////////////////////// |
/////////////////////////////////////////////////////////// |
659 |
private String calculateExtendedBkKoreliste(ExtendedBean eb, Address targetAddress) { |
private String calculateExtendedBkKoreliste(ExtendedBean eb, Address targetAddress) { |
660 |
if (targetAddress.ruteMandag == null) { //hvis targetAdress.rute er null så er adressen ikke dækket alligevel |
if (targetAddress.routingMandag.rute == null) { //hvis targetAdress.rute er null så er adressen ikke dækket alligevel |
661 |
return null; |
return null; |
662 |
} |
} |
663 |
|
|
667 |
} else { |
} else { |
668 |
inject = ".."; |
inject = ".."; |
669 |
} |
} |
670 |
return AddressUtils.injectIntoBk(targetAddress.korelisteMandag, inject); |
return AddressUtils.injectIntoBk(targetAddress.routingMandag.koreliste, inject); |
671 |
} |
} |
672 |
|
|
673 |
|
|