1
2
3
4
5
6
7 package org.weda.domain;
8
9 import java.io.Serializable;
10 import javax.persistence.Basic;
11 import javax.persistence.Column;
12 import javax.persistence.Entity;
13 import javax.persistence.FetchType;
14 import javax.persistence.GeneratedValue;
15 import javax.persistence.GenerationType;
16 import javax.persistence.Id;
17 import javax.persistence.ManyToOne;
18 import javax.persistence.Lob;
19 import org.hibernate.annotations.Columns;
20 import org.weda.property.annotations.ConstraintId;
21 import org.weda.property.annotations.Constraints;
22 import org.weda.property.annotations.Description;
23 import org.weda.store.Auditable;
24
25 /**
26 *
27 * @author Mikhail Titov
28 */
29 @Entity
30 @org.hibernate.annotations.Entity(dynamicUpdate=true)
31 public class Employee implements Serializable, Auditable {
32 public enum Sex {мужской, женский};
33
34 private Long id;
35 private String name;
36 private Sex sex;
37 private byte[] photo;
38 private byte[] photo2;
39 private Company company;
40 private Post post;
41
42 @Id @GeneratedValue(strategy=GenerationType.AUTO)
43 @Description(displayName="s/n")
44 public Long getId() {
45 return id;
46 }
47
48 public void setId(Long id) {
49 this.id = id;
50 }
51
52 @Description(displayName="Инициалы")
53 public String getName() {
54 return name;
55 }
56
57 public void setName(String name) {
58 this.name = name;
59 }
60
61 @ManyToOne
62 public Company getCompany() {
63 return company;
64 }
65
66 public void setCompany(Company company) {
67 this.company = company;
68 }
69
70 @Description(displayName="Фотография", mimeType="image/jpeg")
71 @Basic(fetch=FetchType.LAZY)
72 public byte[] getPhoto() {
73 return photo;
74 }
75
76 public void setPhoto(byte[] photo) {
77 this.photo = photo;
78 }
79
80 @Description(displayName="Фотография 2", mimeType="image/jpeg")
81 public byte[] getPhoto2() {
82 return photo2;
83 }
84
85 public void setPhoto2(byte[] photo2) {
86 this.photo2 = photo2;
87 }
88
89 @ManyToOne()
90 @Description(displayName="Занимаемая должность")
91 @Constraints({
92 @ConstraintId("post")
93 })
94 public Post getPost() {
95 return post;
96 }
97
98 public void setPost(Post post) {
99 this.post = post;
100 }
101
102 @Description(displayName="Пол")
103
104
105
106 public Sex getSex() {
107 return sex;
108 }
109
110 public void setSex(Sex sex) {
111 this.sex = sex;
112 }
113 }