/[projects]/dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/beans/Address.java
ViewVC logotype

Contents of /dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/beans/Address.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2940 - (show annotations) (download)
Sat Feb 13 06:29:18 2016 UTC (8 years, 3 months ago) by torben
File size: 3964 byte(s)
PMD
1 package dk.daoas.adressevedligehold.beans;
2
3
4 public class Address implements Comparable<Address> {
5
6 public enum AddressState {
7 NOT_CHANGED, CREATED, OPENED, MODIFIED, CLOSED, CREATE_FAIL
8 }
9
10
11
12 public int id;
13 public short postnr;
14 public String vejnavn;
15 public int gadeid;// GadeID kan godt være i en alm 32bit int
16 public short kommunekode;
17 public short vejkode;
18 public short husnr;
19
20 public String husnrbogstav;
21
22 public String distributor;
23
24 public short dbkBane;
25
26 public String ruteMandag;
27 public String korelisteMandag;
28
29 public String ruteTirsdag;
30 public String korelisteTirsdag;
31
32 public String ruteOnsdag;
33 public String korelisteOnsdag;
34
35 public String ruteTorsdag;
36 public String korelisteTorsdag;
37
38 public String ruteFredag;
39 public String korelisteFredag;
40
41 public String ruteLordag;
42 public String korelisteLordag;
43
44 public String ruteSondag;
45 public String korelisteSondag;
46
47
48 public float latitude;
49 public float longitude;
50
51 public double xyz[];
52
53
54 //book keeping
55 //public boolean visited = false;
56 public boolean visitedMan = false;
57 public boolean visitedTir = false;
58 public boolean visitedOns = false;
59 public boolean visitedTor = false;
60 public boolean visitedFre = false;
61 public boolean visitedLor = false;
62 public boolean visitedSon = false;
63
64 public AddressState state = AddressState.NOT_CHANGED;
65 public AddressState stateMan = AddressState.NOT_CHANGED;
66 public AddressState stateTir = AddressState.NOT_CHANGED;
67 public AddressState stateOns = AddressState.NOT_CHANGED;
68 public AddressState stateTor = AddressState.NOT_CHANGED;
69 public AddressState stateFre = AddressState.NOT_CHANGED;
70 public AddressState stateLor = AddressState.NOT_CHANGED;
71 public AddressState stateSon = AddressState.NOT_CHANGED;
72
73 public short ho; //Bruges til afstandandenrute
74
75
76 public Address() {
77 }
78
79 public Address(double latitude, double longitude) {
80
81 this.latitude = (float)latitude;
82 this.longitude = (float)longitude;
83
84 updateXyz();
85 }
86
87 @Override
88 public String toString() {
89 return String.format("Address{id=%d gadeid=%d kom=%d vejk=%d postnr=%d vejnavn=%s husnr=%d litra=%s}", id, gadeid, kommunekode, vejkode, postnr, vejnavn, husnr, husnrbogstav);
90 }
91
92
93 public String toStringExtended() {
94 return String.format("Address{id=%d gadeid=%d postnr=%d vejnavn=%s husnr=%d litra=%s ma=%s ti=%s on=%s to=%s fr=%s lo=%s so=%s }", id, gadeid, postnr, vejnavn, husnr, husnrbogstav, stateMan, stateTir, stateOns, stateTor, stateFre, stateLor, stateSon);
95 }
96
97 public String getRuteString() {
98 return String.format("rMa=%s kMa=%s rTi=%s kTi=%s rOn=%s kOn=%s rTo=%s kTo=%s rFr=%s kFr=%s rLo=%s kLo=%s rSo=%s kSo=%s", ruteMandag, korelisteMandag, ruteTirsdag, korelisteTirsdag, ruteOnsdag, korelisteOnsdag, ruteTorsdag, korelisteTorsdag, ruteFredag, korelisteFredag, ruteLordag, korelisteLordag, ruteSondag, korelisteSondag);
99 }
100
101
102 @Override
103 public int compareTo(Address arg0) {
104 if (this.postnr != arg0.postnr)
105 return Integer.compare(this.postnr, arg0.postnr);
106
107 if (this.gadeid != arg0.gadeid)
108 return Long.compare(this.gadeid, arg0.gadeid);
109
110 if (this.husnr != arg0.husnr)
111 return Integer.compare(this.husnr, arg0.husnr);
112
113 return this.husnrbogstav.compareTo( arg0.husnrbogstav );
114 }
115
116 @Override
117 public int hashCode() {
118 return this.id;
119 }
120
121 @Override
122 public boolean equals(Object o) {
123 if (! (o instanceof Address) )
124 return false;
125
126 Address a = (Address) o;
127 return this.id == a.id; //we rely on uniqueness of DB primary key
128 }
129
130 //Bruges ved afstand anden rute
131 public void updateXyz() {
132 xyz = new double[3];
133
134 xyz[0] = Math.cos(Math.toRadians(latitude)) * Math.cos(Math.toRadians(longitude));
135 xyz[1] = Math.cos(Math.toRadians(latitude)) * Math.sin(Math.toRadians(longitude));
136 xyz[2] = Math.sin(Math.toRadians(latitude));
137 }
138 }

  ViewVC Help
Powered by ViewVC 1.1.20