Subversion Repositories SmartDukaan

Rev

Rev 22009 | Rev 22532 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
21720 ashik.ali 1
package com.spice.profitmandi.dao.entity.dtr;
21545 ashik.ali 2
 
3
import java.io.Serializable;
4
import java.time.LocalDateTime;
5
 
6
import javax.persistence.Column;
22009 ashik.ali 7
import javax.persistence.Convert;
21545 ashik.ali 8
import javax.persistence.Entity;
9
import javax.persistence.EnumType;
10
import javax.persistence.Enumerated;
11
import javax.persistence.Id;
12
import javax.persistence.NamedQueries;
13
import javax.persistence.NamedQuery;
14
import javax.persistence.Table;
15
import javax.persistence.UniqueConstraint;
16
 
22216 ashik.ali 17
import org.hibernate.annotations.UpdateTimestamp;
18
 
22009 ashik.ali 19
import com.spice.profitmandi.dao.convertor.LocalDateTimeAttributeConverter;
21720 ashik.ali 20
import com.spice.profitmandi.dao.enumuration.dtr.RetailerType;
21
import com.spice.profitmandi.dao.enumuration.dtr.SaleValue;
21545 ashik.ali 22
 
23
/**
24
 * This class basically contains api details
25
 * 
26
 * @author ashikali
27
 *
28
 */
29
@Entity
21720 ashik.ali 30
@Table(name="dtr.retailer", schema = "dtr", uniqueConstraints = {@UniqueConstraint(columnNames = {"number","type"})})
21545 ashik.ali 31
@NamedQueries({
32
	@NamedQuery(name = "Retailer.selectCount", query = "select count(r) from Retailer r"),
33
	@NamedQuery(name = "Retailer.selectAll",query="select r from Retailer r"),
34
	@NamedQuery(name = "Retailer.selectById",query="select r from Retailer r where r.id= :id"),
35
	@NamedQuery(name = "Retailer.selectByName",query="select r from Retailer r where r.name= :name"),
36
	@NamedQuery(name = "Retailer.selectCountByNumberAndType",query="select count(r) from Retailer r where r.number= :number and r.type= :type"),
37
	@NamedQuery(name = "Retailer.selectCountByDocumentId", query="select count(r) from Retailer r where r.documentId= :documentId"),
38
	@NamedQuery(name = "Retailer.selectCountByName", query = "select count(r) from Retailer r where r.name= :name"),
39
	@NamedQuery(name = "Retailer.selectCountById", query = "select count(r) from Retailer r where r.id= :id"),
40
	@NamedQuery(name = "Retailer.deleteById",query="delete from Retailer r where r.id= :id"),
21559 ashik.ali 41
	@NamedQuery(name = "Retailer.selectDocumentById", query = "select d from Retailer r join Document d on d.id = r.documentId where r.id = :id"),
21566 ashik.ali 42
	@NamedQuery(
43
			name = "Retailer.selectFofoIdAndEmailIdByEmailId",
44
			query = "select r.id, u.emailId from User u join UserAccounts ua on ua.user_id = u.id join Retailer r on r.id = ua.account_key where u.emailId = :emailId and ua.account_type = 'saholic' and r.fofo = true")
21545 ashik.ali 45
})
46
public class Retailer implements Serializable{
47
 
48
	private static final long serialVersionUID = 1L;
49
 
50
	public Retailer() {
51
	}
52
 
53
	@Id
54
	@Column(name = "id", unique=true, updatable=false)
55
	private int id;
56
 
57
	@Column(name = "name")
58
	private String name;
59
 
60
	@Column(name = "number", length = 128)
61
	private String number;
62
 
63
	@Column(name = "type")
64
	@Enumerated(EnumType.STRING)
65
	private RetailerType type;
66
 
67
	@Column(name = "monthly_sale_value")
68
	private SaleValue monthlySaleValue;
69
 
70
	@Column(name = "smartphone_sale_value")
71
	private SaleValue smartphoneSaleValue;
72
 
73
	@Column(name = "recharge", columnDefinition="tinyint(1) default 0")
74
	private boolean recharge;
75
 
76
	@Column(name = "mobile", columnDefinition="tinyint(1) default 0")
77
	private boolean mobile;
78
 
79
	@Column(name = "accessories", columnDefinition="tinyint(1) default 0")
80
	private boolean accessories;
81
 
82
	@Column(name = "other1", length = 128)
83
	private String other1;
84
 
85
	@Column(name = "other2", length = 128)
86
	private String other2;
87
 
88
	@Column(name = "self_pickup", columnDefinition="tinyint(1) default 0")
89
	private boolean selfPickup;
90
 
91
	@Column(name = "active", columnDefinition = "tinyint(1) default 0")
92
	private boolean active;
93
 
94
	@Column(name = "migrated", columnDefinition = "tinyint(1) default 0")
95
	private boolean migrated;
96
 
22009 ashik.ali 97
	@Convert(converter = LocalDateTimeAttributeConverter.class)
21545 ashik.ali 98
	@Column(name="create_timestamp", updatable = false)
99
	private LocalDateTime createTimestamp = LocalDateTime.now();
100
 
22009 ashik.ali 101
	@Convert(converter = LocalDateTimeAttributeConverter.class)
21545 ashik.ali 102
	@Column(name="update_timestamp")
22216 ashik.ali 103
	@UpdateTimestamp
21545 ashik.ali 104
	private LocalDateTime updateTimestamp = LocalDateTime.now();
105
 
106
	@Column(name = "document_id")
107
	private int documentId;
108
 
109
	@Column(name = "current_address_id")
110
	private int currentAddressId;
111
 
21688 ashik.ali 112
	@Column(name = "fofo", columnDefinition = "tinyint(1) default 0")
21566 ashik.ali 113
	private boolean fofo;
114
 
21545 ashik.ali 115
	public int getId() {
116
		return id;
117
	}
118
	public void setId(int id) {
119
		this.id = id;
120
	}
121
	public void setName(String name) {
122
        this.name = name;
123
    }
124
    public String getName() {
125
        return name;
126
    }
127
 
128
    public String getNumber() {
129
		return number;
130
	}
131
    public void setNumber(String number) {
132
		this.number = number;
133
	}
134
 
135
    public SaleValue getMonthlySaleValue() {
136
		return monthlySaleValue;
137
	}
138
    public void setMonthlySaleValue(SaleValue monthlySaleValue) {
139
		this.monthlySaleValue = monthlySaleValue;
140
	}
141
    public SaleValue getSmartphoneSaleValue() {
142
		return smartphoneSaleValue;
143
	}
144
    public void setSmartphoneSaleValue(SaleValue smartphoneSaleValue) {
145
		this.smartphoneSaleValue = smartphoneSaleValue;
146
	}
147
 
148
    public boolean isRecharge() {
149
		return recharge;
150
	}
151
    public void setRecharge(boolean recharge) {
152
		this.recharge = recharge;
153
	}
154
    public boolean isMobile() {
155
		return mobile;
156
	}
157
    public void setMobile(boolean mobile) {
158
		this.mobile = mobile;
159
	}
160
    public boolean isAccessories() {
161
		return accessories;
162
	}
163
    public void setAccessories(boolean accessories) {
164
		this.accessories = accessories;
165
	}
166
    public String getOther1() {
167
		return other1;
168
	}
169
    public void setOther1(String other1) {
170
		this.other1 = other1;
171
	}
172
    public String getOther2() {
173
		return other2;
174
	}
175
    public void setOther2(String other2) {
176
		this.other2 = other2;
177
	}
178
    public void setType(RetailerType type) {
179
		this.type = type;
180
	}
181
    public RetailerType getType() {
182
		return type;
183
	}
184
 
185
    public int getDocumentId() {
186
		return documentId;
187
	}
188
    public void setDocumentId(int documentId) {
189
		this.documentId = documentId;
190
	}
191
 
192
    public void setCurrentAddressId(int currentAddressId) {
193
		this.currentAddressId = currentAddressId;
194
	}
195
    public int getCurrentAddressId() {
196
		return currentAddressId;
197
	}
198
 
199
    public boolean isSelfPickup() {
200
		return selfPickup;
201
	}
202
    public void setSelfPickup(boolean selfPickup) {
203
		this.selfPickup = selfPickup;
204
	}
205
 
206
    public boolean isActive() {
207
		return active;
208
	}
209
    public void setActive(boolean active) {
210
		this.active = active;
211
	}
212
 
213
    public boolean isMigrated() {
214
		return migrated;
215
	}
216
    public void setMigrated(boolean migrated) {
217
		this.migrated = migrated;
218
	}
219
 
220
    public void setCreateTimestamp(LocalDateTime createTimestamp) {
221
		this.createTimestamp = createTimestamp;
222
	}
223
    public LocalDateTime getCreateTimestamp() {
224
		return createTimestamp;
225
	}
226
 
227
    public void setUpdateTimestamp(LocalDateTime updateTimestamp) {
228
		this.updateTimestamp = updateTimestamp;
229
	}
230
    public LocalDateTime getUpdateTimestamp() {
231
		return updateTimestamp;
232
	}
233
 
21566 ashik.ali 234
    public boolean isFofo() {
235
		return fofo;
236
	}
237
    public void setFofo(boolean fofo) {
238
		this.fofo = fofo;
239
	}
21924 ashik.ali 240
 
241
 
22009 ashik.ali 242
 
21602 ashik.ali 243
	@Override
21924 ashik.ali 244
	public int hashCode() {
245
		final int prime = 31;
246
		int result = 1;
247
		result = prime * result + id;
248
		return result;
249
	}
250
	@Override
251
	public boolean equals(Object obj) {
252
		if (this == obj)
253
			return true;
254
		if (obj == null)
255
			return false;
256
		if (getClass() != obj.getClass())
257
			return false;
258
		Retailer other = (Retailer) obj;
259
		if (id != other.id)
260
			return false;
261
		return true;
262
	}
263
	@Override
21602 ashik.ali 264
	public String toString() {
265
		return "Retailer [id=" + id + ", name=" + name + ", number=" + number + ", type=" + type + ", monthlySaleValue="
266
				+ monthlySaleValue + ", smartphoneSaleValue=" + smartphoneSaleValue + ", recharge=" + recharge
267
				+ ", mobile=" + mobile + ", accessories=" + accessories + ", other1=" + other1 + ", other2=" + other2
268
				+ ", selfPickup=" + selfPickup + ", active=" + active + ", migrated=" + migrated + ", createTimestamp="
21693 ashik.ali 269
				+ createTimestamp + ", updateTimestamp=" + updateTimestamp + ", documentId="
21602 ashik.ali 270
				+ documentId + ", currentAddressId=" + currentAddressId + ", fofo=" + fofo + "]";
271
	}
21545 ashik.ali 272
 
21602 ashik.ali 273
 
21545 ashik.ali 274
 
275
}