1 package net.sumaris.core.vo.data;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import lombok.Data;
26 import lombok.experimental.FieldNameConstants;
27 import net.sumaris.core.model.data.IWithObserversEntity;
28 import net.sumaris.core.model.data.IWithVesselSnapshotEntity;
29 import net.sumaris.core.vo.administration.programStrategy.ProgramVO;
30 import net.sumaris.core.vo.administration.user.DepartmentVO;
31 import net.sumaris.core.vo.administration.user.PersonVO;
32 import net.sumaris.core.vo.referential.LocationVO;
33 import org.apache.commons.lang3.builder.ToStringBuilder;
34 import org.apache.commons.lang3.builder.ToStringStyle;
35
36 import java.util.Date;
37 import java.util.List;
38 import java.util.Map;
39 import java.util.Set;
40
41 @Data
42 @FieldNameConstants
43 public class LandingVO implements IRootDataVO<Integer>,
44 IWithVesselSnapshotEntity<Integer, VesselSnapshotVO>,
45 IWithObserversEntity<Integer, PersonVO> {
46
47 private Integer id;
48 private String comments;
49 private Date creationDate;
50 private Date updateDate;
51 private Date controlDate;
52 private Date validationDate;
53 private Integer qualityFlagId;
54 private Date qualificationDate;
55 private String qualificationComments;
56 private DepartmentVO recorderDepartment;
57 private PersonVO recorderPerson;
58
59 private VesselSnapshotVO vesselSnapshot;
60
61 private Date dateTime;
62 private LocationVO location;
63 private Integer rankOrder;
64
65 private Set<PersonVO> observers;
66 private List<SampleVO> samples;
67
68 private ProgramVO program;
69
70 private List<MeasurementVO> measurements;
71 private Map<Integer, String> measurementValues;
72
73 private ObservedLocationVO observedLocation;
74 private Integer observedLocationId;
75
76 private TripVO trip;
77 private Integer tripId;
78
79
80 public String toString() {
81 return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE);
82 }
83
84 @Override
85 public Date getVesselDateTime() {
86 return dateTime;
87 }
88 }