Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

package com.spice.profitmandi.dao.entity.scratch;

import java.time.LocalDateTime;

public class ScratchResponse {
    private int offerId;
    private int scratchOfferId;
    private String offerName;
    private String offerImage;
    private String termsCondition;
    private int giftId;
    private String giftName;
    private String thumbnailUrl;
    private LocalDateTime createdTimestamp;
    private LocalDateTime expiredTimestamp;
    private boolean scratched;
    private int remainingValidityDays;
    private String status;

    public ScratchResponse() {
    }

    public ScratchResponse(int offerId, int scratchOfferId, String offerName, String offerImage,
                           String termsCondition, int giftId, String giftName,
                           String thumbnailUrl, LocalDateTime createdTimestamp,
                           LocalDateTime expiredTimestamp, boolean scratched,
                           int remainingValidityDays
    ) {
        this.offerId = offerId;
        this.scratchOfferId = scratchOfferId;
        this.offerName = offerName;
        this.offerImage = offerImage;
        this.termsCondition = termsCondition;
        this.giftId = giftId;
        this.giftName = giftName;
        this.thumbnailUrl = thumbnailUrl;
        this.createdTimestamp = createdTimestamp;
        this.expiredTimestamp = expiredTimestamp;
        this.scratched = scratched;
        this.remainingValidityDays = remainingValidityDays;
        this.status = calculateStatus();
    }

    // Helper method to determine display status
    private String calculateStatus() {
        if (createdTimestamp != null && remainingValidityDays == 0 && !scratched) {
            return "EXPIRED";
        }
        if (scratched) {
            return "SCRATCHED";
        }
        return "ACTIVE";
    }

    // Getters and Setters
    public int getOfferId() {
        return offerId;
    }

    public void setOfferId(int offerId) {
        this.offerId = offerId;
    }

    public int getScratchOfferId() {
        return scratchOfferId;
    }

    public void setScratchOfferId(int scratchOfferId) {
        this.scratchOfferId = scratchOfferId;
    }

    public String getOfferName() {
        return offerName;
    }

    public void setOfferName(String offerName) {
        this.offerName = offerName;
    }

    public String getOfferImage() {
        return offerImage;
    }

    public void setOfferImage(String offerImage) {
        this.offerImage = offerImage;
    }

    public String getTermsCondition() {
        return termsCondition;
    }

    public void setTermsCondition(String termsCondition) {
        this.termsCondition = termsCondition;
    }

    public int getGiftId() {
        return giftId;
    }

    public void setGiftId(int giftId) {
        this.giftId = giftId;
    }

    public String getGiftName() {
        return giftName;
    }

    public void setGiftName(String giftName) {
        this.giftName = giftName;
    }

    public String getThumbnailUrl() {
        return thumbnailUrl;
    }

    public void setThumbnailUrl(String thumbnailUrl) {
        this.thumbnailUrl = thumbnailUrl;
    }

    public LocalDateTime getCreatedTimestamp() {
        return createdTimestamp;
    }

    public void setCreatedTimestamp(LocalDateTime createdTimestamp) {
        this.createdTimestamp = createdTimestamp;
    }

    public LocalDateTime getExpiredTimestamp() {
        return expiredTimestamp;
    }

    public void setExpiredTimestamp(LocalDateTime expiredTimestamp) {
        this.expiredTimestamp = expiredTimestamp;
        this.status = calculateStatus();
    }

    public boolean isScratched() {
        return scratched;
    }

    public void setScratched(boolean scratched) {
        this.scratched = scratched;
        this.status = calculateStatus();
    }

    public int getRemainingValidityDays() {
        return remainingValidityDays;
    }

    public void setRemainingValidityDays(int remainingValidityDays) {
        this.remainingValidityDays = remainingValidityDays;
    }

    public String getStatus() {
        return status;
    }

    @Override
    public String toString() {
        return "ScratchResponse{" +
                "offerId=" + offerId +
                ", scratchOfferId='" + scratchOfferId + '\'' +
                ", offerName='" + offerName + '\'' +
                ", offerImage='" + offerImage + '\'' +
                ", termsCondition='" + termsCondition + '\'' +
                ", giftId=" + giftId +
                ", giftName='" + giftName + '\'' +
                ", thumbnailUrl='" + thumbnailUrl + '\'' +
                ", createdTimestamp=" + createdTimestamp +
                ", expiredTimestamp=" + expiredTimestamp +
                ", scratched=" + scratched +
                ", remainingValidityDays=" + remainingValidityDays +
                ", status='" + status + '\'' +
                '}';
    }
}