package com.ffii.lioner.modules.lioner.req;

import java.util.List;

import jakarta.validation.constraints.Size;

import java.time.LocalDate;

public class UpdateEventReq {
    
    private Long id;

    @Size(max = 255)
    String name;

    @Size(max = 255)
    String nameCht;

    @Size(max = 500)
    String description;

    @Size(max = 50)
    String region;

    @Size(max = 255)
    String organization;

    @Size(max = 50)
    String eventType;

    @Size(max = 50)
    String frequency;
    
    @Size(max = 50)
    String series;

    LocalDate startDate;
    
    LocalDate applicationDeadline;

    LocalDate nextApplicationDate;

    LocalDate announcementDate;

    LocalDate awardDate;

    LocalDate eventFrom;

    LocalDate eventTo;
    
    Boolean reminderFlag;

    Long reminderThreshold;

    Long reminderInterval;

    Long reminderLimit;

    List<Long> subDivisionIds;

    List<Long> subDivisionRemoveIds;
    
    public Long getId() {
        return this.id;
    }

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

    public String getName() {
        return this.name;
    }

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

    public String getNameCht() {
        return this.nameCht;
    }

    public void setNameCht(String nameCht) {
        this.nameCht = nameCht;
    }

    public String getDescription() {
        return this.description;
    }

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

    public List<Long> getSubDivisionIds() {
        return this.subDivisionIds;
    }

    public void setSubDivisionIds(List<Long> subDivisionIds) {
        this.subDivisionIds = subDivisionIds;
    }

    public List<Long> getSubDivisionRemoveIds() {
        return this.subDivisionRemoveIds;
    }

    public void setSubDivisionRemoveIds(List<Long> subDivisionRemoveIds) {
        this.subDivisionRemoveIds = subDivisionRemoveIds;
    }

    public String getRegion() {
        return this.region;
    }

    public void setRegion(String region) {
        this.region = region;
    }

    public String getOrganization() {
        return this.organization;
    }

    public void setOrganization(String organization) {
        this.organization = organization;
    }

    public String getEventType() {
        return this.eventType;
    }

    public void setEventType(String eventType) {
        this.eventType = eventType;
    }

    public String getFrequency() {
        return this.frequency;
    }

    public void setFrequency(String frequency) {
        this.frequency = frequency;
    }

    public String getSeries() {
        return this.series;
    }

    public void setSeries(String series) {
        this.series = series;
    }

    public LocalDate getStartDate() {
        return this.startDate;
    }

    public void setStartDate(LocalDate startDate) {
        this.startDate = startDate;
    }

    public LocalDate getApplicationDeadline() {
        return this.applicationDeadline;
    }

    public void setApplicationDeadline(LocalDate applicationDeadline) {
        this.applicationDeadline = applicationDeadline;
    }

    public LocalDate getNextApplicationDate() {
        return this.nextApplicationDate;
    }

    public void setNextApplicationDate(LocalDate nextApplicationDate) {
        this.nextApplicationDate = nextApplicationDate;
    }

    public LocalDate getAnnouncementDate() {
        return this.announcementDate;
    }

    public void setAnnouncementDate(LocalDate announcementDate) {
        this.announcementDate = announcementDate;
    }

    public LocalDate getAwardDate() {
        return this.awardDate;
    }

    public void setAwardDate(LocalDate awardDate) {
        this.awardDate = awardDate;
    }

    public Boolean isReminderFlag() {
        return this.reminderFlag;
    }

    public Boolean getReminderFlag() {
        return this.reminderFlag;
    }

    public void setReminderFlag(Boolean reminderFlag) {
        this.reminderFlag = reminderFlag;
    }

    public Long getReminderThreshold() {
        return this.reminderThreshold;
    }

    public void setReminderThreshold(Long reminderThreshold) {
        this.reminderThreshold = reminderThreshold;
    }

    public Long getReminderInterval() {
        return this.reminderInterval;
    }

    public void setReminderInterval(Long reminderInterval) {
        this.reminderInterval = reminderInterval;
    }

    public Long getReminderLimit() {
        return this.reminderLimit;
    }

    public void setReminderLimit(Long reminderLimit) {
        this.reminderLimit = reminderLimit;
    }

    public LocalDate getEventFrom() {
        return this.eventFrom;
    }

    public void setEventFrom(LocalDate eventFrom) {
        this.eventFrom = eventFrom;
    }

    public LocalDate getEventTo() {
        return this.eventTo;
    }

    public void setEventTo(LocalDate eventTo) {
        this.eventTo = eventTo;
    }

}
