package com.bs.ct.domain;

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

import com.bs.cm.domain.CmAttach;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.bs.common.annotation.Excel;
import com.bs.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;

/**
 * 任务反馈对象 ct_task_feedback
 *
 * @author bs
 * @date 2025-02-22
 */
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("ct_task_feedback")
@Data
public class CtTaskFeedback extends BaseEntity{
    private static final long serialVersionUID = 1L;

    /** id */
    @TableId(value = "id",type = IdType.AUTO)
    @ApiModelProperty(value = "id")
    private Long id;

    /** 任务id */

    @Excel(name = "任务id")
    @ApiModelProperty(value = "任务id")
    private Long taskId;

    /** 任务标签id */

    @Excel(name = "任务标签id")
    @ApiModelProperty(value = "任务标签id")
    private Long taskTagId;

    /** 任务id */

    @Excel(name = "任务id")
    @TableField(exist = false)
    private List<Long> taskIds;

    /** 图片id */

    @Excel(name = "图片id")
    @TableField(exist = false)
    private List<Long> imageIds;

    /** 机构任务id */

    @Excel(name = "机构任务id")
    @ApiModelProperty(value = "机构任务id")
    private Long taskBranchId;

    /** 机构代码 */

    @Excel(name = "机构代码")
    @ApiModelProperty(value = "机构代码")
    private String branchCode;

    /** 任务反馈时间 */

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "任务反馈时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "任务反馈时间")
    private Date feedbackTime;

    /** 任务完成情况 */

    @Excel(name = "任务完成情况")
    @ApiModelProperty(value = "任务完成情况")
    private String taskDesc;

    /** 操作人员工号 */

    @Excel(name = "操作人员工号")
    @ApiModelProperty(value = "操作人员工号")
    private String userId;

    /** 人员ids */

    @Excel(name = "人员ids")
    @TableField(exist = false)
    private List<String> userIds;

    /** 操作人员姓名 */

    @Excel(name = "操作人员姓名")
    @ApiModelProperty(value = "操作人员姓名")
    private String userName;

    /** 操作人员部门 */

    @Excel(name = "操作人员部门")
    @ApiModelProperty(value = "操作人员部门")
    private String userDept;

    /** 是否已拍照留存 */

    @Excel(name = "是否已拍照留存")
    @ApiModelProperty(value = "是否已拍照留存")
    private String isPhoto;

    /** 附件id */

    @Excel(name = "附件id")
    @ApiModelProperty(value = "附件id")
    private Long fileId;

    /** 审核人员id */

    @Excel(name = "审核人员id")
    @ApiModelProperty(value = "审核人员id")
    private String checkUserId;

    /** 审核人员姓名 */

    @Excel(name = "审核人员姓名")
    @ApiModelProperty(value = "审核人员姓名")
    private String checkUserName;

    /** 审核人员部门 */

    @Excel(name = "审核人员部门")
    @ApiModelProperty(value = "审核人员部门")
    private String checkUserDept;

    /** 审核时间 */

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "审核时间")
    private Date checkDate;

    /** 审核状态 */

    @Excel(name = "审核状态")
    @ApiModelProperty(value = "审核状态")
    private String status;

    /** 审核信息 */

    @Excel(name = "审核信息")
    @ApiModelProperty(value = "审核信息")
    private String checkInfo;

    /** 备注 */

    @Excel(name = "备注")
    @ApiModelProperty(value = "备注")
    private String remarks;


    /** 附件id */

    @ApiModelProperty(value = "附件")
    @TableField(exist = false)
    private List<CmAttach> file;

}
