package com.inspect.task.domain;

import com.inspect.base.core.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serializable;

@Setter
@Getter
@XmlRootElement(
        name = "Item"
)
@XmlAccessorType(XmlAccessType.FIELD)
public class PatrolTaskXML implements Serializable {
    private static final long serialVersionUID = 1L;
    @Excel(
            name = "变电站名称"
    )
    @XmlAttribute(
            name = "station_name"
    )
    private String stationName;
    @Excel(
            name = "变电站编码"
    )
    @XmlAttribute(
            name = "station_code"
    )
    private String stationCode;
    @Excel(
            name = "巡视类型"
    )
    @XmlAttribute(
            name = "type"
    )
    private String type;
    @Excel(
            name = "任务编码"
    )
    @XmlAttribute(
            name = "task_code"
    )
    private String taskCode;
    @Excel(
            name = "任务名称"
    )
    @XmlAttribute(
            name = "task_name"
    )
    private String taskName;
    @Excel(
            name = "优先级"
    )
    @XmlAttribute(
            name = "priority"
    )
    private String priority;
    @Excel(
            name = "设备层级"
    )
    @XmlAttribute(
            name = "device_level"
    )
    private String deviceLevel;
    @Excel(
            name = "设备列表"
    )
    @XmlAttribute(
            name = "device_list"
    )
    private String deviceList;
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @Excel(
            name = "定期开始时间",
            width = 30.0D,
            dateFormat = "yyyy-MM-dd HH:mm:ss"
    )
    @XmlAttribute(
            name = "fixed_start_time"
    )
    private String fixedStartTime;
    @Excel(
            name = "周期",
            readConverterExp = "月"
    )
    @XmlAttribute(
            name = "cycle_month"
    )
    private String cycleMonth;
    @Excel(
            name = "周期",
            readConverterExp = "周"
    )
    @XmlAttribute(
            name = "cycle_week"
    )
    private String cycleWeek;
    @Excel(
            name = "周期",
            readConverterExp = "执行时间"
    )
    @XmlAttribute(
            name = "cycle_execute_time"
    )
    private String cycleExecuteTime;
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @Excel(
            name = "周期开始时间",
            width = 30.0D,
            dateFormat = "yyyy-MM-dd HH:mm:ss"
    )
    @XmlAttribute(
            name = "cycle_start_time"
    )
    private String cycleStartTime;
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @Excel(
            name = "周期结束时间",
            width = 30.0D,
            dateFormat = "yyyy-MM-dd HH:mm:ss"
    )
    @XmlAttribute(
            name = "cycle_end_time"
    )
    private String cycleEndTime;
    @Excel(
            name = "间隔",
            readConverterExp = "数量"
    )
    @XmlAttribute(
            name = "interval_number"
    )
    private String intervalNumber;
    @Excel(
            name = "间隔",
            readConverterExp = "类型"
    )
    @XmlAttribute(
            name = "interval_type"
    )
    private String intervalType;
    @Excel(
            name = "间隔",
            readConverterExp = "执行时间"
    )
    @XmlAttribute(
            name = "interval_execute_time"
    )
    private String intervalExecuteTime;
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @Excel(
            name = "间隔开始时间",
            width = 30.0D,
            dateFormat = "yyyy-MM-dd HH:mm:ss"
    )
    @XmlAttribute(
            name = "interval_start_time"
    )
    private String intervalStartTime;
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @Excel(
            name = "间隔结束时间",
            width = 30.0D,
            dateFormat = "yyyy-MM-dd HH:mm:ss"
    )
    @XmlAttribute(
            name = "interval_end_time"
    )
    private String intervalEndTime;
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @XmlAttribute(
            name = "invalid_start_time"
    )
    private String invalidStartTime;
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @XmlAttribute(
            name = "invalid_end_time"
    )
    private String invalidEndTime;
    @Excel(
            name = "是否可用"
    )
    @XmlAttribute(
            name = "isenable"
    )
    private String isEnable;
    @Excel(
            name = "编制人"
    )
    @XmlAttribute(
            name = "creator"
    )
    private String creator;
    @XmlAttribute(
            name = "create_time"
    )
    private String createTime;

}
