Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

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

import javax.persistence.*;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * A business-level grouping that owns one or more notification_campaign rows.
 * Same concept the mockup calls a "Campaign" (Monsoon Restock Drive, Diwali Preview…) —
 * every notification an admin publishes can optionally point at one of these to enable
 * grouped analytics, bulk cancel, calendar filtering, and duplication.
 */
@SuppressWarnings("serial")
@Entity
@Table(name = "dtr.campaign_group")
public class CampaignGroup implements Serializable {

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        @Column(name = "id", unique = true, updatable = false)
        private int id;

        @Column(name = "name")
        private String name;

        @Column(name = "description")
        private String description;

        @Column(name = "starts_on")
        private LocalDate startsOn;

        @Column(name = "ends_on")
        private LocalDate endsOn;

        /**
         * ACTIVE / PAUSED / COMPLETED / ARCHIVED
         */
        @Column(name = "status")
        private String status;

        @Column(name = "created_by")
        private String createdBy;

        @Column(name = "created_at", updatable = false)
        private LocalDateTime createdAt = LocalDateTime.now();

        public int getId() {
                return id;
        }

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

        public String getName() {
                return name;
        }

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

        public String getDescription() {
                return description;
        }

        public void setDescription(String description) {
                this.description = description;
        }

        public LocalDate getStartsOn() {
                return startsOn;
        }

        public void setStartsOn(LocalDate startsOn) {
                this.startsOn = startsOn;
        }

        public LocalDate getEndsOn() {
                return endsOn;
        }

        public void setEndsOn(LocalDate endsOn) {
                this.endsOn = endsOn;
        }

        public String getStatus() {
                return status;
        }

        public void setStatus(String status) {
                this.status = status;
        }

        public String getCreatedBy() {
                return createdBy;
        }

        public void setCreatedBy(String createdBy) {
                this.createdBy = createdBy;
        }

        public LocalDateTime getCreatedAt() {
                return createdAt;
        }

        public void setCreatedAt(LocalDateTime createdAt) {
                this.createdAt = createdAt;
        }

        @Override
        public String toString() {
                return "CampaignGroup [id=" + id + ", name=" + name + ", status=" + status
                                + ", startsOn=" + startsOn + ", endsOn=" + endsOn + "]";
        }
}