package com.bs.ct.vo;

import com.baomidou.mybatisplus.annotation.*;
import com.bs.common.annotation.Excel;
import com.bs.common.core.domain.BaseEntity;
import com.bs.ct.domain.CtTaskBranch;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

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

/**
 * 任务信息对象 ct_task_info
 *
 * @author bs
 * @date 2025-02-22
 */
@Data
public class CtTaskInfoVO {


    /** 任务类型 */

    @Excel(name = "任务类型")
    @ApiModelProperty(value = "任务类型")
    private String taskType;

    /** 任务标题 */

    @Excel(name = "任务标题")
    @ApiModelProperty(value = "任务标题")
    private String taskTitle;

    /** 任务编号 */

    @Excel(name = "任务编号")
    @ApiModelProperty(value = "任务编号")
    private String taskCode;


    //@Excel(name = "任务要求")
    @ApiModelProperty(value = "任务期限")
    @TableField(exist = false)
    private String startToEndDate;

    /** 任务要求 */

    @Excel(name = "任务内容")
    @ApiModelProperty(value = "任务内容")
    private String taskContent;

    /** 完成状态 */

    @Excel(name = "完成状态")
    @ApiModelProperty(value = "完成状态")
    private String status;


    /** 任务发起人 */

    @Excel(name = "任务发起人")
    @ApiModelProperty(value = "任务发起人")
    private String taskInitiator;


    /** 任务发起单位 */

    @Excel(name = "任务发起单位")
    @ApiModelProperty(value = "任务发起单位")
    private String branchName;


    /** 任务发起部门 */

    @Excel(name = "任务发起部门")
    @ApiModelProperty(value = "任务发起部门")
    @TableField(exist = false)
    private String deptName;

    /** 任务发布日期 */

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "任务发布日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "任务发布日期")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Date taskDate;

    @Excel(name = "办理单位")
    @ApiModelProperty(value = "办理单位")
    @TableField(exist = false)
    private String transactBranchName;

    @Excel(name = "办理部门")
    @ApiModelProperty(value = "办理部门")
    @TableField(exist = false)
    private String transactDeptName;

    @Excel(name = "办理人")
    @ApiModelProperty(value = "办理人")
    @TableField(exist = false)
    private String transactInitiator;

    /** 备注 */

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


}
