Subversion Repositories SmartDukaan

Rev

Rev 35777 | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.spice.profitmandi.dao.model;

import java.util.List;

public class ContentPojo extends HeaderInfoPojo {

        public ContentPojo(String title, List<String> keySpecs, List<SpecificationGroup> detailedSpecs, String warranty) {
                super();
                super.setTitle(title);
                this.keySpecs = keySpecs;
                this.detailedSpecs = detailedSpecs;
                this.warranty = warranty;
        }

        public ContentPojo(Long id) {
                this.id = id;
        }

        // Content
        private Long id;
        private String introduction;

        public String getIntroduction() {
                return introduction;
        }

        public void setIntroduction(String introduction) {
                this.introduction = introduction;
        }

        private String url;
        private List<String> keySpecs;
        private List<SpecificationGroup> detailedSpecs;
        private String warranty;
        private String name;
        private String categoryName;
        private String categoryUrl;
        private String breadCrumb;
        private float price;
    private String description;

        public float getPrice() {
                return price;
        }

        public void setPrice(float price) {
                this.price = price;
        }

        // To be set at runtime
        private List<ProductPojo> reocmmendedAccessories;

        public String getDefaultImageUrl() {
                return defaultImageUrl;
        }

        public void setDefaultImageUrl(String defaultImageUrl) {
                this.defaultImageUrl = defaultImageUrl;
        }

        public String getIconImageUrl() {
                return iconImageUrl;
        }

        public void setIconImageUrl(String iconImageUrl) {
                this.iconImageUrl = iconImageUrl;
        }

        private String defaultImageUrl;
        private String iconImageUrl;
        private String thumbnailImageUrl;
        private List<MediaPojo> images;
        private List<VideoUrlsContentPojo> videoUrls;
        private List<String> packageContents;

        private String offerText;
        // private EmiPojo bankEmis;

        public List<String> getKeySpecs() {
                return keySpecs;
        }

        public void setKeySpecs(List<String> keySpecs) {
                this.keySpecs = keySpecs;
        }

        public List<SpecificationGroup> getDetailedSpecs() {
                return detailedSpecs;
        }

        public void setDetailedSpecs(List<SpecificationGroup> detailedSpecs) {
                this.detailedSpecs = detailedSpecs;
        }

        public String getWarranty() {
                return warranty;
        }

        public void setWarranty(String warranty) {
                this.warranty = warranty;
        }

        public List<MediaPojo> getImages() {
                return images;
        }

        public void setImages(List<MediaPojo> images) {
                this.images = images;
        }

        public void setId(Long id) {
                this.id = id;
        }

        public Long getId() {
                return id;
        }

        public String getOfferText() {
                return offerText;
        }

        public void setOfferText(String offerText) {
                this.offerText = offerText;
        }

        public void setPackageContents(List<String> packageContents) {
                this.packageContents = packageContents;
        }

        public List<String> getPackageContents() {
                return packageContents;
        }

        public String getThumbnailImageUrl() {
                return thumbnailImageUrl;
        }

        public void setThumbnailImageUrl(String thumbnailImageUrl) {
                this.thumbnailImageUrl = thumbnailImageUrl;
        }

        public void setUrl(String url) {
                this.url = url;
        }

        public String getUrl() {
                return url;
        }

        public void setReocmmendedAccessories(List<ProductPojo> reocmmendedAccessories) {
                this.reocmmendedAccessories = reocmmendedAccessories;
        }

        public List<ProductPojo> getReocmmendedAccessories() {
                return reocmmendedAccessories;
        }

        public void setCategoryName(String categoryName) {
                this.categoryName = categoryName;
        }

        public String getCategoryName() {
                return categoryName;
        }

        public void setCategoryUrl(String categoryUrl) {
                this.categoryUrl = categoryUrl;
        }

        public String getCategoryUrl() {
                return categoryUrl;
        }

        public void setBreadCrumb(String breadCrumb) {
                this.breadCrumb = breadCrumb;
        }

        public String getBreadCrumb() {
                return breadCrumb;
        }

        public void setName(String name) {
                this.name = name;
        }

        public String getName() {
                return name;
        }

        public List<VideoUrlsContentPojo> getVideoUrls() {
                return videoUrls;
        }

        public void setVideoUrls(List<VideoUrlsContentPojo> videoUrls) {
                this.videoUrls = videoUrls;
        }

        public String getDescription() {
        return description;
    }

    public void generateDescription() {
        StringBuilder desc = new StringBuilder();

        if (this.introduction != null && !this.introduction.trim().isEmpty()) {
            desc.append(this.introduction.trim()).append("<br><br>");
        }

        if (keySpecs != null && !keySpecs.isEmpty()) {
            desc.append("Key Specifications: <br>");
            for (String spec : keySpecs) {
                if (spec != null && !spec.trim().isEmpty()) {
                    desc.append("• ").append(spec.trim()).append(" <br>");
                }
            }
            desc.append(" <br>");
        }

        if (detailedSpecs != null && !detailedSpecs.isEmpty()) {
            desc.append("Detailed Specifications: <br>");
            for (SpecificationGroup group : detailedSpecs) {
                if (group == null || group.getTitle() == null) continue;
                desc.append(" <br><strong>").append(group.getTitle().toUpperCase().replace(" N ", " & ").replace(" AND ", " & ")).append(":</strong> <br>");

                List<Specification> specs = group.getSpecs();
                if (specs != null && !specs.isEmpty()) {
                    for (Specification spec : specs) {
                        if (spec == null) continue;
                        String name = spec.getName() != null ? spec.getName().trim() : "";
                        String value = spec.getString() != null ? spec.getString().trim() : "";
                        if (!name.isEmpty() && !value.isEmpty()) {
                            desc.append(" - ").append(name).append(": ").append(value).append(" <br>");
                        }
                    }
                }
            }
            desc.append(" <br>");
        }

        if (packageContents != null && !packageContents.isEmpty()) {
            desc.append("<strong>Package Contents:</strong> <br>");
            for (String item : packageContents) {
                if (item != null && !item.trim().isEmpty()) {
                    desc.append("• ").append(item.trim()).append(" <br>");
                }
            }
            desc.append(" <br>");
        }

        if (this.offerText != null && !this.offerText.trim().isEmpty()) {
            desc.append("<strong>Offers: </strong>").append(this.offerText.trim()).append("<br><br>");
        }

        if (this.warranty != null && !this.warranty.trim().isEmpty()) {
            desc.append("<strong>Warranty:</strong> ").append(this.warranty.trim()).append(" <br>");
        }

        this.description = desc.toString().trim();
        }

    @Override
        public String toString() {
                return "ContentPojo [id=" + id + ", introduction=" + introduction + ", url=" + url + ", keySpecs=" + keySpecs
                                + ", detailedSpecs=" + detailedSpecs + ", warranty=" + warranty + ", name=" + name + ", categoryName="
                                + categoryName + ", categoryUrl=" + categoryUrl + ", breadCrumb=" + breadCrumb + ", price=" + price
                                + ", reocmmendedAccessories=" + reocmmendedAccessories + ", defaultImageUrl=" + defaultImageUrl
                                + ", iconImageUrl=" + iconImageUrl + ", thumbnailImageUrl=" + thumbnailImageUrl + ", images=" + images
                                + ", videoUrls=" + videoUrls + ", packageContents=" + packageContents + ", offerText=" + offerText + "]";
        }

}