package com.ruoyi.system.domain.complaintSuggestion;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.system.domain.suggestionFj.SuggestionFj;

import java.util.Date;
import java.util.List;

/**
 * 投诉建议对象 complaint_suggestion
 * 
 * @author boman
 * @date 2025-02-14
 */
public class ComplaintSuggestion extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 投诉建议ID */
    private Long suggestionId;
    /**
     * 用户id
     */
    private Long userId;

    /** 投诉建议标题，简要描述投诉或建议内容 */
    @Excel(name = "投诉建议标题，简要描述投诉或建议内容")
    private String title;

    /** 投诉建议的具体内容，详细描述问题或建议 */
    @Excel(name = "投诉建议的具体内容，详细描述问题或建议")
    private String content;

    /** 投诉照片，存储图片路径或URL（可多张，建议用JSON格式存储） */
    @Excel(name = "投诉照片，存储图片路径或URL", readConverterExp = "可=多张，建议用JSON格式存储")
    private String images;

    /** 投诉建议提交时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "投诉建议提交时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdTime;

    /** 投诉建议状态：pending（待回复）、replied（已回复） */
    @Excel(name = "投诉建议状态：pending", readConverterExp = "待=回复")
    private String status;

    /** 投诉建议的回复内容，记录管理员或相关人员的回复 */
    @Excel(name = "投诉建议的回复内容，记录管理员或相关人员的回复")
    private String replyContent;

    /** 投诉建议类型 1投诉建议 2*/
    @Excel(name = "投诉建议类型")
    private String type;

    /** 投诉建议是否公开：Y（公开）、N（不公开） */
    @Excel(name = "投诉建议是否公开", readConverterExp = "Y=公开,N=不公开")
    private String isPublic;

    /** 是否删除：Y（删除）、N（不删除） */
    private String isDel;
    /**
     * 回复附件表
     */
    private List<SuggestionFj> suggestionFjList;

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public List<SuggestionFj> getSuggestionFjList() {
        return suggestionFjList;
    }

    public void setSuggestionFjList(List<SuggestionFj> suggestionFjList) {
        this.suggestionFjList = suggestionFjList;
    }

    public void setSuggestionId(Long suggestionId)
    {
        this.suggestionId = suggestionId;
    }

    public Long getSuggestionId() 
    {
        return suggestionId;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }
    public void setImages(String images) 
    {
        this.images = images;
    }

    public String getImages() 
    {
        return images;
    }
    public void setCreatedTime(Date createdTime) 
    {
        this.createdTime = createdTime;
    }

    public Date getCreatedTime() 
    {
        return createdTime;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setReplyContent(String replyContent) 
    {
        this.replyContent = replyContent;
    }

    public String getReplyContent() 
    {
        return replyContent;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setIsPublic(String isPublic) 
    {
        this.isPublic = isPublic;
    }

    public String getIsPublic() 
    {
        return isPublic;
    }
    public void setIsDel(String isDel) 
    {
        this.isDel = isDel;
    }

    public String getIsDel() 
    {
        return isDel;
    }

    @Override
    public String toString() {
        return "ComplaintSuggestion{" +
                "suggestionId=" + suggestionId +
                ", userId=" + userId +
                ", title='" + title + '\'' +
                ", content='" + content + '\'' +
                ", images='" + images + '\'' +
                ", createdTime=" + createdTime +
                ", status='" + status + '\'' +
                ", replyContent='" + replyContent + '\'' +
                ", type='" + type + '\'' +
                ", isPublic='" + isPublic + '\'' +
                ", isDel='" + isDel + '\'' +
                ", suggestionFjList=" + suggestionFjList +
                '}';
    }
}
