package com.mosty.base.model.dto.qwzx;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author dw
 * @since 2022/8/3
 * 巡防排班新增和修改DTO
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "TbQwXfpbAddAndEditDto对象", description = "巡防排班新增和修改DTO")
public class TbQwXfpbAddAndEditDto implements Serializable, Cloneable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "唯一标识ID")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty(value = "排班名称")
    private String pbmc;

    @ApiModelProperty(value = "排班描述")
    private String pbms;

    @ApiModelProperty(value = "排班开始日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date pbksrq;

    @ApiModelProperty(value = "结束日期类型（0-无期限，1-固定结束日期）")
    private String jsrqlx;

    @ApiModelProperty(value = "排班结束日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date pbjsrq;

    @ApiModelProperty(value = "循环周期")
    private Integer xhzq;

    @ApiModelProperty(value = "0-每天循环，1-工作日循环，2-休息日循环")
    private String xhlx;

    @ApiModelProperty(value = "每日班次数")
    private Integer mrbc;

    @ApiModelProperty(value = "所属部门")
    private String ssbm;

    @ApiModelProperty(value = "所属部门代码")
    private String ssbmid;


    @ApiModelProperty(value = "所属部门代码")
    private String ssbmdm;

    @ApiModelProperty(value = "备注")
    private String bz;

    @ApiModelProperty(value = "排班周期列表")
    private List<TbQwXfpbZqDto> zqList;
}
