Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
21714 ashik.ali 1
package com.spice.profitmandi.dao.entity.fofo;
21552 ashik.ali 2
 
3
import java.time.LocalDateTime;
4
 
21653 ashik.ali 5
import javax.persistence.CascadeType;
21552 ashik.ali 6
import javax.persistence.Column;
21639 kshitij.so 7
import javax.persistence.Convert;
21552 ashik.ali 8
import javax.persistence.Entity;
9
import javax.persistence.EnumType;
10
import javax.persistence.Enumerated;
21653 ashik.ali 11
import javax.persistence.FetchType;
21552 ashik.ali 12
import javax.persistence.GeneratedValue;
13
import javax.persistence.GenerationType;
14
import javax.persistence.Id;
21653 ashik.ali 15
import javax.persistence.JoinColumn;
21552 ashik.ali 16
import javax.persistence.NamedQueries;
17
import javax.persistence.NamedQuery;
21653 ashik.ali 18
import javax.persistence.OneToOne;
21552 ashik.ali 19
import javax.persistence.Table;
20
 
22216 ashik.ali 21
import org.hibernate.annotations.UpdateTimestamp;
22
 
21639 kshitij.so 23
import com.spice.profitmandi.dao.convertor.LocalDateTimeAttributeConverter;
21714 ashik.ali 24
import com.spice.profitmandi.dao.entity.catalog.Item;
25
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
21552 ashik.ali 26
 
27
@NamedQueries({
28
	@NamedQuery(name = "InventoryItem.selectCount", query = "select count(ii) from InventoryItem ii"), 
29
	@NamedQuery(name = "InventoryItem.selectByItemId", query = "select ii from InventoryItem ii where ii.itemId = :itemId"),
21567 ashik.ali 30
	@NamedQuery(name = "InventoryItem.selectByFofoId", query = "select ii from InventoryItem ii where ii.fofoId = :fofoId"),
21585 ashik.ali 31
	@NamedQuery(
21589 ashik.ali 32
		name = "InventoryItem.selectScannedCount",
21596 ashik.ali 33
		query = "select ii.itemId, sum(ii.initialQuantity) from InventoryItem ii "
21640 kshitij.so 34
				+ "where ii.itemId in :itemIds and ii.fofoId = :fofoId and ii.purchaseId = :purchaseId group by ii.itemId"),
21633 ashik.ali 35
 
36
	@NamedQuery(
37
		name = "InventoryItem.selectBySerialNumbers",
21640 kshitij.so 38
		query = "select ii from InventoryItem ii where ii.serialNumber in :serialNumbers"),
21633 ashik.ali 39
 
21640 kshitij.so 40
	@NamedQuery(
41
			name = "InventoryItem.selectSerialNumberBySerialNumbers",
42
			query = "select ii.serialNumber from InventoryItem ii where ii.serialNumber in :serialNumbers"),
43
 
21552 ashik.ali 44
})
45
@Entity
46
@Table(name="fofo.inventory_item", schema = "fofo")
47
public class InventoryItem {
21984 kshitij.so 48
 
21552 ashik.ali 49
	@Id
50
	@Column(name="id", unique=true, updatable=false)
51
	@GeneratedValue(strategy = GenerationType.IDENTITY)
52
	private int id;
53
 
54
	@Column(name = "item_id")
55
	private int itemId; 
56
 
57
	@Column(name = "fofo_id")
58
	private int fofoId; 
59
 
21609 ashik.ali 60
	@Column(name = "serial_number", length = 100)
61
	private String serialNumber; 
21552 ashik.ali 62
 
21613 kshitij.so 63
	@Column(name = "initial_quantity")
21552 ashik.ali 64
	private int initialQuantity;
65
 
66
	@Column(name = "good_quantity")
67
	private int goodQuantity; 
68
 
69
	@Column(name = "bad_quantity")
70
	private int badQuantity;
71
 
72
	@Column(name = "last_scan_type")
73
	@Enumerated(EnumType.STRING)
74
	private ScanType lastScanType;
75
 
21633 ashik.ali 76
	@Column(name = "purchase_id")
77
	private int purchaseId;
21552 ashik.ali 78
 
21662 kshitij.so 79
	@Column(name="unit_price")
21984 kshitij.so 80
	private Float unitPrice;
21662 kshitij.so 81
 
21710 ashik.ali 82
	@Column(name = "price_drop_amount")
21984 kshitij.so 83
	private Float priceDropAmount;
21710 ashik.ali 84
 
22352 ashik.ali 85
	@Column(name = "buy_back", columnDefinition = "tinyint(1) default 1")
86
	private boolean buyBack;
87
 
22859 ashik.ali 88
	@Column(name = "igst_rate")
89
	private float igstRate;
90
 
91
	@Column(name = "cgst_rate")
92
	private float cgstRate;
93
 
94
	@Column(name = "sgst_rate")
95
	private float sgstRate;
96
 
97
	@Column(name = "hsn_code")
98
	private String hsnCode;
99
 
21639 kshitij.so 100
	@Convert(converter = LocalDateTimeAttributeConverter.class)
21552 ashik.ali 101
	@Column(name = "create_timestamp")
21640 kshitij.so 102
	private LocalDateTime createTimestamp = LocalDateTime.now();
21653 ashik.ali 103
 
21710 ashik.ali 104
	@Convert(converter = LocalDateTimeAttributeConverter.class)
105
	@Column(name = "update_timestamp")
22216 ashik.ali 106
	@UpdateTimestamp
21710 ashik.ali 107
	private LocalDateTime updateTimestamp = LocalDateTime.now();
108
 
21653 ashik.ali 109
	@OneToOne(cascade=CascadeType.ALL,fetch=FetchType.LAZY)
110
	@JoinColumn(name="item_id",insertable=false,updatable=false,nullable=false, referencedColumnName = "id")
111
	private Item item;
23019 ashik.ali 112
 
113
	@OneToOne(cascade=CascadeType.ALL,fetch=FetchType.LAZY)
114
	@JoinColumn(name="purchase_id",insertable=false,updatable=false,nullable=false, referencedColumnName = "id")
115
	private Purchase purchase;
21552 ashik.ali 116
 
117
	public int getId() {
118
		return id;
119
	}
120
 
121
	public void setId(int id) {
122
		this.id = id;
123
	}
124
 
125
	public int getItemId() {
126
		return itemId;
127
	}
128
 
129
	public void setItemId(int itemId) {
130
		this.itemId = itemId;
131
	}
21984 kshitij.so 132
 
133
	public void setFofoId(int fofoId) {
134
		this.fofoId = fofoId;
135
	}
21552 ashik.ali 136
 
137
	public int getFofoId() {
138
		return fofoId;
139
	}
140
 
21609 ashik.ali 141
	public String getSerialNumber() {
142
		return serialNumber;
21552 ashik.ali 143
	}
21609 ashik.ali 144
	public void setSerialNumber(String serialNumber) {
145
		this.serialNumber = serialNumber;
21552 ashik.ali 146
	}
21567 ashik.ali 147
 
21552 ashik.ali 148
	public int getInitialQuantity() {
149
		return initialQuantity;
150
	}
151
 
21984 kshitij.so 152
	public Float getUnitPrice() {
153
		return unitPrice;
154
	}
155
 
156
	public void setUnitPrice(Float unitPrice) {
157
		this.unitPrice = unitPrice;
158
	}
159
 
21552 ashik.ali 160
	public void setInitialQuantity(int initialQuantity) {
161
		this.initialQuantity = initialQuantity;
162
	}
163
 
164
	public int getGoodQuantity() {
165
		return goodQuantity;
166
	}
167
 
168
	public void setGoodQuantity(int goodQuantity) {
169
		this.goodQuantity = goodQuantity;
170
	}
171
 
172
	public int getBadQuantity() {
173
		return badQuantity;
174
	}
175
 
176
	public void setBadQuantity(int badQuantity) {
177
		this.badQuantity = badQuantity;
178
	}
179
 
180
	public ScanType getLastScanType() {
181
		return lastScanType;
182
	}
183
 
184
	public void setLastScanType(ScanType lastScanType) {
185
		this.lastScanType = lastScanType;
186
	}
21633 ashik.ali 187
 
188
	public int getPurchaseId() {
189
		return purchaseId;
21552 ashik.ali 190
	}
21633 ashik.ali 191
	public void setPurchaseId(int purchaseId) {
192
		this.purchaseId = purchaseId;
21552 ashik.ali 193
	}
21710 ashik.ali 194
 
21984 kshitij.so 195
	public Float getPriceDropAmount() {
21710 ashik.ali 196
		return priceDropAmount;
197
	}
21984 kshitij.so 198
	public void setPriceDropAmount(Float priceDropAmount) {
21710 ashik.ali 199
		this.priceDropAmount = priceDropAmount;
200
	}
22859 ashik.ali 201
 
202
	public float getIgstRate() {
203
		return igstRate;
204
	}
205
	public void setIgstRate(float igstRate) {
206
		this.igstRate = igstRate;
207
	}
208
	public float getCgstRate() {
209
		return cgstRate;
210
	}
211
	public void setCgstRate(float cgstRate) {
212
		this.cgstRate = cgstRate;
213
	}
214
	public float getSgstRate() {
215
		return sgstRate;
216
	}
217
	public void setSgstRate(float sgstRate) {
218
		this.sgstRate = sgstRate;
219
	}
220
	public String getHsnCode() {
221
		return hsnCode;
222
	}
223
	public void setHsnCode(String hsnCode) {
224
		this.hsnCode = hsnCode;
225
	}
21552 ashik.ali 226
 
227
	public LocalDateTime getCreateTimestamp() {
228
		return createTimestamp;
229
	}
230
 
231
	public void setCreateTimestamp(LocalDateTime createTimestamp) {
232
		this.createTimestamp = createTimestamp;
233
	}
21653 ashik.ali 234
 
21710 ashik.ali 235
	public LocalDateTime getUpdateTimestamp() {
236
		return updateTimestamp;
237
	}
238
	public void setUpdateTimestamp(LocalDateTime updateTimestamp) {
239
		this.updateTimestamp = updateTimestamp;
240
	}
241
 
21653 ashik.ali 242
	public Item getItem() {
243
		return item;
244
	}
245
	public void setItem(Item item) {
246
		this.item = item;
247
	}
21602 ashik.ali 248
 
22352 ashik.ali 249
	public boolean isBuyBack() {
250
		return buyBack;
251
	}
22009 ashik.ali 252
 
22352 ashik.ali 253
	public void setBuyBack(boolean buyBack) {
254
		this.buyBack = buyBack;
255
	}
256
 
23019 ashik.ali 257
	public Purchase getPurchase() {
258
		return purchase;
259
	}
260
 
261
	public void setPurchase(Purchase purchase) {
262
		this.purchase = purchase;
263
	}
264
 
21602 ashik.ali 265
	@Override
22009 ashik.ali 266
	public int hashCode() {
267
		final int prime = 31;
268
		int result = 1;
269
		result = prime * result + id;
270
		return result;
271
	}
272
 
273
	@Override
274
	public boolean equals(Object obj) {
275
		if (this == obj)
276
			return true;
277
		if (obj == null)
278
			return false;
279
		if (getClass() != obj.getClass())
280
			return false;
281
		InventoryItem other = (InventoryItem) obj;
282
		if (id != other.id)
283
			return false;
284
		return true;
285
	}
286
 
287
	@Override
21602 ashik.ali 288
	public String toString() {
21662 kshitij.so 289
		return "InventoryItem [id=" + id + ", itemId=" + itemId + ", fofoId=" + fofoId + ", serialNumber="
290
				+ serialNumber + ", initialQuantity=" + initialQuantity + ", goodQuantity=" + goodQuantity
291
				+ ", badQuantity=" + badQuantity + ", lastScanType=" + lastScanType + ", purchaseId=" + purchaseId
22352 ashik.ali 292
				+ ", unitPrice=" + unitPrice + ", priceDropAmount=" + priceDropAmount + ", buyBack=" + buyBack
22859 ashik.ali 293
				+ ", igstRate=" + igstRate + ", cgstRate=" + cgstRate + ", sgstRate=" + sgstRate + ", hsnCode="
294
				+ hsnCode + ", createTimestamp=" + createTimestamp + ", updateTimestamp=" + updateTimestamp + ", item="
23019 ashik.ali 295
				+ item + ", purchase=" + purchase + "]";
21602 ashik.ali 296
	}
21552 ashik.ali 297
 
298
}