Subversion Repositories SmartDukaan

Rev

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