package com.fs.provider.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;

import java.time.LocalTime;
import java.util.Date;

/**
 * 任务生成配置对象 service_gen_config
 *
 * @author fs
 * @date 2026-01-27
 */
@Data
public class ServiceGenConfig
{
    private static final long serialVersionUID = 1L;

    /** 主键，自增 */
    private Long id;


    /** 公司id */
    @Excel(name = "公司id")
    private Long companyId;

    /** 公司id */
    @Excel(name = "公司名称")
    private String companyName;

    /** 部门ID，关联部门表 */
    @Excel(name = "部门ID，关联部门表")
    private Long departmentId;

    @Excel(name = "部门名称")
    private String departmentName;

    /** 任务类型，逗号分隔字符串 */
    @Excel(name = "任务类型，逗号分隔字符串")
    private String taskTypes;

    /** 频率单位，1=天，2=周，3=月 */
    @Excel(name = "频率单位，1=天，2=周，3=月")
    private Integer frequencyUnit;

    /** 频率数值，必须大于0 */
    @Excel(name = "频率数值，必须大于0")
    private Integer frequencyValue;

    /** 具体任务生成时间点 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "执行时间", width = 20)
    private LocalTime generateTime;


    /**
     * {@link com.fs.provider.enums.ServiceOrderConfigNeedAuditEnum}
     * 是否需要审核 (0-否,1-是)
     * */
    @Excel(name = "是否需要审核 (0-否,1-是)")
    private Integer needAudit;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updatedAt;

    /**
     * 审核实例id
     */
    private Long  auditInstanceId;
    /**
     *  {@link com.fs.provider.enums.ServiceOrderConfigAuditStatusEnum}
     * 审核状态
     */
    private Integer auditStatus;


}
