Rev 21924 | Rev 22009 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed
package com.spice.profitmandi.dao.entity.fofo;import java.time.LocalDateTime;import javax.persistence.CascadeType;import javax.persistence.Column;import javax.persistence.Convert;import javax.persistence.Entity;import javax.persistence.EnumType;import javax.persistence.Enumerated;import javax.persistence.FetchType;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;import javax.persistence.JoinColumn;import javax.persistence.NamedQueries;import javax.persistence.NamedQuery;import javax.persistence.OneToOne;import javax.persistence.Table;import com.spice.profitmandi.dao.convertor.LocalDateTimeAttributeConverter;import com.spice.profitmandi.dao.entity.catalog.Item;import com.spice.profitmandi.dao.enumuration.fofo.ScanType;@NamedQueries({@NamedQuery(name = "InventoryItem.selectCount", query = "select count(ii) from InventoryItem ii"),@NamedQuery(name = "InventoryItem.selectByItemId", query = "select ii from InventoryItem ii where ii.itemId = :itemId"),@NamedQuery(name = "InventoryItem.selectByFofoId", query = "select ii from InventoryItem ii where ii.fofoId = :fofoId"),//@NamedQuery(name = "InventoryItem.selectBySerialNumber", query = "select ii from InventoryItem ii join Imei i on ii.imeiId = i.id where i.imei = :serialNumber"),//@NamedQuery(name = "InventoryItem.selectQuantitySum", query = "select sum(ii.initialQuantity) as inventoryQuantity from InventoryItem ii where ii.itemId = :itemId and ii.fofoId = :fofoId and ii.purchaseReference = :purchaseReference")@NamedQuery(name = "InventoryItem.selectScannedCount",query = "select ii.itemId, sum(ii.initialQuantity) from InventoryItem ii "+ "where ii.itemId in :itemIds and ii.fofoId = :fofoId and ii.purchaseId = :purchaseId group by ii.itemId"),@NamedQuery(name = "InventoryItem.selectBySerialNumbers",query = "select ii from InventoryItem ii where ii.serialNumber in :serialNumbers"),@NamedQuery(name = "InventoryItem.selectSerialNumberBySerialNumbers",query = "select ii.serialNumber from InventoryItem ii where ii.serialNumber in :serialNumbers"),})@Entity@Table(name="fofo.inventory_item", schema = "fofo")public class InventoryItem {@Overridepublic int hashCode() {final int prime = 31;int result = 1;result = prime * result + badQuantity;result = prime * result + ((createTimestamp == null) ? 0 : createTimestamp.hashCode());result = prime * result + fofoId;result = prime * result + goodQuantity;result = prime * result + id;result = prime * result + initialQuantity;result = prime * result + ((item == null) ? 0 : item.hashCode());result = prime * result + itemId;result = prime * result + ((lastScanType == null) ? 0 : lastScanType.hashCode());result = prime * result + ((priceDropAmount == null) ? 0 : priceDropAmount.hashCode());result = prime * result + purchaseId;result = prime * result + ((serialNumber == null) ? 0 : serialNumber.hashCode());result = prime * result + ((unitPrice == null) ? 0 : unitPrice.hashCode());result = prime * result + ((updateTimestamp == null) ? 0 : updateTimestamp.hashCode());return result;}@Overridepublic boolean equals(Object obj) {if (this == obj)return true;if (obj == null)return false;if (getClass() != obj.getClass())return false;InventoryItem other = (InventoryItem) obj;if (badQuantity != other.badQuantity)return false;if (createTimestamp == null) {if (other.createTimestamp != null)return false;} else if (!createTimestamp.equals(other.createTimestamp))return false;if (fofoId != other.fofoId)return false;if (goodQuantity != other.goodQuantity)return false;if (id != other.id)return false;if (initialQuantity != other.initialQuantity)return false;if (item == null) {if (other.item != null)return false;} else if (!item.equals(other.item))return false;if (itemId != other.itemId)return false;if (lastScanType != other.lastScanType)return false;if (priceDropAmount == null) {if (other.priceDropAmount != null)return false;} else if (!priceDropAmount.equals(other.priceDropAmount))return false;if (purchaseId != other.purchaseId)return false;if (serialNumber == null) {if (other.serialNumber != null)return false;} else if (!serialNumber.equals(other.serialNumber))return false;if (unitPrice == null) {if (other.unitPrice != null)return false;} else if (!unitPrice.equals(other.unitPrice))return false;if (updateTimestamp == null) {if (other.updateTimestamp != null)return false;} else if (!updateTimestamp.equals(other.updateTimestamp))return false;return true;}@Id@Column(name="id", unique=true, updatable=false)@GeneratedValue(strategy = GenerationType.IDENTITY)private int id;@Column(name = "item_id")private int itemId;@Column(name = "fofo_id")private int fofoId;@Column(name = "serial_number", length = 100)private String serialNumber;@Column(name = "initial_quantity")private int initialQuantity;@Column(name = "good_quantity")private int goodQuantity;@Column(name = "bad_quantity")private int badQuantity;@Column(name = "last_scan_type")@Enumerated(EnumType.STRING)private ScanType lastScanType;@Column(name = "purchase_id")private int purchaseId;@Column(name="unit_price")private Float unitPrice;@Column(name = "price_drop_amount")private Float priceDropAmount;@Convert(converter = LocalDateTimeAttributeConverter.class)@Column(name = "create_timestamp")private LocalDateTime createTimestamp = LocalDateTime.now();@Convert(converter = LocalDateTimeAttributeConverter.class)@Column(name = "update_timestamp")private LocalDateTime updateTimestamp = LocalDateTime.now();@OneToOne(cascade=CascadeType.ALL,fetch=FetchType.LAZY)@JoinColumn(name="item_id",insertable=false,updatable=false,nullable=false, referencedColumnName = "id")private Item item;public int getId() {return id;}public void setId(int id) {this.id = id;}public int getItemId() {return itemId;}public void setItemId(int itemId) {this.itemId = itemId;}public void setFofoId(int fofoId) {this.fofoId = fofoId;}public int getFofoId() {return fofoId;}public String getSerialNumber() {return serialNumber;}public void setSerialNumber(String serialNumber) {this.serialNumber = serialNumber;}public int getInitialQuantity() {return initialQuantity;}public Float getUnitPrice() {return unitPrice;}public void setUnitPrice(Float unitPrice) {this.unitPrice = unitPrice;}public void setInitialQuantity(int initialQuantity) {this.initialQuantity = initialQuantity;}public int getGoodQuantity() {return goodQuantity;}public void setGoodQuantity(int goodQuantity) {this.goodQuantity = goodQuantity;}public int getBadQuantity() {return badQuantity;}public void setBadQuantity(int badQuantity) {this.badQuantity = badQuantity;}public ScanType getLastScanType() {return lastScanType;}public void setLastScanType(ScanType lastScanType) {this.lastScanType = lastScanType;}public int getPurchaseId() {return purchaseId;}public void setPurchaseId(int purchaseId) {this.purchaseId = purchaseId;}public Float getPriceDropAmount() {return priceDropAmount;}public void setPriceDropAmount(Float priceDropAmount) {this.priceDropAmount = priceDropAmount;}public LocalDateTime getCreateTimestamp() {return createTimestamp;}public void setCreateTimestamp(LocalDateTime createTimestamp) {this.createTimestamp = createTimestamp;}public LocalDateTime getUpdateTimestamp() {return updateTimestamp;}public void setUpdateTimestamp(LocalDateTime updateTimestamp) {this.updateTimestamp = updateTimestamp;}public Item getItem() {return item;}public void setItem(Item item) {this.item = item;}@Overridepublic String toString() {return "InventoryItem [id=" + id + ", itemId=" + itemId + ", fofoId=" + fofoId + ", serialNumber="+ serialNumber + ", initialQuantity=" + initialQuantity + ", goodQuantity=" + goodQuantity+ ", badQuantity=" + badQuantity + ", lastScanType=" + lastScanType + ", purchaseId=" + purchaseId+ ", unitPrice=" + unitPrice + ", priceDropAmount=" + priceDropAmount + ", createTimestamp="+ createTimestamp + ", updateTimestamp=" + updateTimestamp + ", item=" + item + "]";}}