package com.persagy.dmp.rwd.demand.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.persagy.dmp.common.lang.PsDate;
import com.persagy.dmp.common.lang.PsDateTime;
import com.persagy.dmp.common.model.entity.AuditableEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;

/**
 * 标准字典需求
 * @author Charlie Yu
 * @date 2021-09-16
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "dt_demand",autoResultMap = true)
public class DictionaryDemand extends AuditableEntity {

    /** 编码 - 6位流水号 */
    private String code;
    /** 用户名 */
    @NotNull(message = "用户名不允许为空")
    @Length(max = 40)
    private String userName;
    /** 部门名称 */
    @NotNull(message = "部门名称不允许为空")
    @Length(max = 40)
    private String deptName;
    /** 产线-1:业务 2：研发 3：实施 */
    @NotNull(message = "产线不允许为空")
    private Integer productLine;
    /** 主题 */
    @NotNull(message = "主题不允许为空")
    @Length(max = 200)
    private String subject;
    /** 内容 */
    @NotNull(message = "内容不允许为空")
    @Length(max = 200)
    private String content;
    /** 需求状态 - 0:待提交 1:待回复 2:已接受 3:已拒绝 4:待完善 5:论证中 */
    private Integer billState;
    /** 回复人 */
    private String respondent;
    /** 回复内容 */
    private String reply;
    /** 提交时间 */
    private PsDateTime submitTime;
    /** 预计回复日期 */
    private PsDate estimateTime;
    /** 回复时间 */
    private PsDateTime answerTime;
}
