Subversion Repositories SmartDukaan

Rev

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