Rev 34433 | 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.catalog;import javax.persistence.*;import java.time.LocalDateTime;@Entity@Table(name = "catalog.customer_offers")@NamedQueries({@NamedQuery(name = "CustomerOffer.getOfferItemsByBrand", query = "select new com.spice.profitmandi.service.pricecircular.PriceCircularItemModel("+ " i.id, i.catalogItemId, cast(sum(coi.schemePayout - coi.dealerPayout) as long),coi.offerType,coi.additionalInfo)"+ " from CustomerOfferItem coi join Item i on coi.catalogId = i.catalogItemId"+ " join CustomerOffer co on co.id=coi.customerOfferId where "+ " :date between coi.startDate and coi.endDate and "+ " :dateTime between co.startDate and co.endDate" + " and i.brand in :brands group by i.id"),@NamedQuery(name = "CustomerOffer.getUpgradeOfferItemsByBrand", query = "select new com.spice.profitmandi.service.pricecircular.PriceCircularItemModel("+ " i.id, i.catalogItemId, cast(max(coi.schemePayout) as long),coi.offerType,coi.additionalInfo)"+ " from CustomerOfferItem coi join Item i on coi.catalogId = i.catalogItemId"+ " join CustomerOffer co on co.id=coi.customerOfferId where "+ " :date between coi.startDate and coi.endDate and "+ " :dateTime between co.startDate and co.endDate" + " and i.brand in :brands group by i.catalogItemId,coi.offerType"),@NamedQuery(name = "CustomerOffer.getMaxOfferItemsByBrand", query = "select new com.spice.profitmandi.service.pricecircular.PriceCircularItemModel("+ " i.id, i.catalogItemId, cast(max(coi.schemePayout) as long),coi.offerType,coi.additionalInfo)"+ " from CustomerOfferItem coi join Item i on coi.catalogId = i.catalogItemId"+ " join CustomerOffer co on co.id=coi.customerOfferId where "+ " :date between coi.startDate and coi.endDate and "+ " :dateTime between co.startDate and co.endDate" + " and i.brand in :brands group by i.id"),})public class CustomerOffer {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private int id;@Column(name = "offer_name")private String offerName;@Column(name = "start_date")private LocalDateTime startDate;@Column(name = "end_date")private LocalDateTime endDate;@Column(name = "partner_criteria")private String partnerCriteria;@Column(name = "created_timestamp")private LocalDateTime createdTimestamp;@Column(name = "updated_timestamp")private LocalDateTime updatedTimestamp;@Transientprivate String partnerCriteriaString;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getOfferName() {return offerName;}public void setOfferName(String offerName) {this.offerName = offerName;}public String getPartnerCriteria() {return partnerCriteria;}public void setPartnerCriteria(String partnerCriteria) {this.partnerCriteria = partnerCriteria;}public LocalDateTime getStartDate() {return startDate;}public void setStartDate(LocalDateTime startDate) {this.startDate = startDate;}public LocalDateTime getEndDate() {return endDate;}public void setEndDate(LocalDateTime endDate) {this.endDate = endDate;}public LocalDateTime getCreatedTimestamp() {return createdTimestamp;}public void setCreatedTimestamp(LocalDateTime createdTimestamp) {this.createdTimestamp = createdTimestamp;}public LocalDateTime getUpdatedTimestamp() {return updatedTimestamp;}public void setUpdatedTimestamp(LocalDateTime updatedTimestamp) {this.updatedTimestamp = updatedTimestamp;}public String getPartnerCriteriaString() {return partnerCriteriaString;}public void setPartnerCriteriaString(String partnerCriteriaString) {this.partnerCriteriaString = partnerCriteriaString;}@Overridepublic String toString() {return "CustomerOffer [id=" + id + ", offerName=" + offerName + ", startDate=" + startDate + ", endDate="+ endDate + ", partnerCriteria=" + partnerCriteria + ", createdTimestamp=" + createdTimestamp+ ", updatedTimestamp=" + updatedTimestamp + ", partnerCriteriaString=" + partnerCriteriaString + "]";}}