package com.ruoyi.tc.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 任务主表(AssetTask)实体类
 *
 * @author makejava
 * @since 2024-11-18 13:23:05
 */
@Data
@ApiModel("任务主表实体类")
public class AssetTask implements Serializable {
    private static final long serialVersionUID = -32109581884572792L;
    /**
     * 主键id
     */
    @ApiModelProperty("主键id")
    private Integer id;
    /**
     * 任务编号
     */
    @ApiModelProperty("任务编号")
    private String taskId;
    /**
     * 任务名称
     */
    @ApiModelProperty("任务名称")
    private String taskName;
    /**
     * 任务下发时间
     */
    @ApiModelProperty("任务下发时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime taskTime;
    /**
     * 任务截至时间
     */
    @ApiModelProperty("任务截至时间")
    private String taskDeadline;
    /**
     * 任务完成时间
     */
    @ApiModelProperty("任务完成时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime taskFinishTime;
    /**
     * 任务状态1：进行中，2：正常完成，3：超期完成，
     */
    @ApiModelProperty("任务状态1：进行中，2：正常完成，3：超期完成，4：审核驳回")
    private Integer taskStatus=1;
    /**
     * 单位名称
     */
    @ApiModelProperty("单位名称")
    private String dwmc;
    /**
     * 创建者id
     */
    /**
     * 用户id
     */
    @ApiModelProperty("用户id")
    private Integer userId;
    /**
     * 部门id
     */
    @ApiModelProperty("部门id")
    private Integer deptId;
    /**
     * 创建者id
     */
    @ApiModelProperty("创建者id")
    private Integer createId;
    /**
     * 创建人
     */
    @ApiModelProperty("创建人")
    private String createBy;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * 更新着id
     */
    @ApiModelProperty("更新着id")
    private Integer updateId;
    /**
     * 更新者
     */
    @ApiModelProperty("更新者")
    private String updateBy;
    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    /**
     * 版本
     */
    @ApiModelProperty("版本")
    private String version;
    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String reamark;


    /**
     * 资产类型
     */
    @ApiModelProperty("0:web资产，1:小程序资产，2：公众号资产，3：电子邮件资产，4：移动应用程序资产")
    private String type;


    /**
     * 单位全部资产数量
     */
    @ApiModelProperty("单位全部资产数量")
    private Integer totalCount;


    /**
     * 通过数量
     */
    @ApiModelProperty("通过数量")
    private Integer count;

    /**
     * 超期数量
     */
    @ApiModelProperty("超期数量")
    private Integer deadlineCount;

    /**
     * 超期数量
     */
    @ApiModelProperty("已关停")
    private Integer ygt;
}

