package com.zcxk.order.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@ApiModel(value = "工单管理表")
@Data
public class WorkOrderManage implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    private Integer id;

    @ApiModelProperty(value = "工单编号")
    private String taskNo;

    @ApiModelProperty(value = "工单描述")
    private String taskDesc;

    @ApiModelProperty(value = "接单人编号")
    private String orderUserId;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ApiModelProperty(value = "派单时间")
    private Date sendTime;

    @ApiModelProperty(value = "派单人")
    private String sendBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ApiModelProperty(value = "预计完成时间")
    private Date planFinishDate;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ApiModelProperty(value = "完成时间")
    private Date finishDate;

    @ApiModelProperty(value = "时限")
    private String dateLimit;

    @ApiModelProperty(value = "紧急程度")
    private String urgency;

    @ApiModelProperty(value = "地址")
    private String address;

    @ApiModelProperty(value = "联系人")
    private String contactUser;

    @ApiModelProperty(value = "联系电话")
    private String contactPhone;

    @ApiModelProperty(value = "报警时间")
    private String orderTime;

    @ApiModelProperty(value = "公司机构id")
    private String companyOrgId;

    @ApiModelProperty(value = "部门机构id")
    private String departmentOrgId;

    @ApiModelProperty(value = "0未接单、1进行中、2完成")
    private Integer orderStatus;

    @ApiModelProperty(value = "1运维上报、2用户上报、3设备告警")
    private Integer eventType;

    @ApiModelProperty(value = "1运维上报、2用户上报、3设备告警")
    private String eventTypeName;

    @ApiModelProperty(value = "工单类型编号")
    private Integer orderTypeId;

    @ApiModelProperty(value = "父单编号")
    private Integer orderPid;

    @ApiModelProperty(value = "租户id")
    private String tenantId;

    @ApiModelProperty(value = "流程实例id")
    private String processInstanceId;

    @ApiModelProperty(value = "流程定义id")
    private String processDefId;

    @ApiModelProperty(value = "任务id")
    private String currentTaskId;

    @ApiModelProperty(value = "当前处理人")
    private String currentUsers;

    @ApiModelProperty(value = "当前处理人名称")
    private String currentUsersName;

    @ApiModelProperty(value = "当前名称")
    private String currentTaskName;

    @ApiModelProperty(value = "经纬度")
    private String geo;

    @ApiModelProperty(value = "视频地址，多个以逗号隔开")
    private String videos;

    @ApiModelProperty(value = "图片地址，多个以逗号隔开")
    private String pictures;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date dateCreate;

    @ApiModelProperty(value = "修改人")
    private String updateBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date dateUpdate;

    @ApiModelProperty(value = "设备ID")
    private Integer deviceId;

    @ApiModelProperty(value = "场景ID")
    private Integer scenesId;

    @ApiModelProperty(value = "设备名称")
    private String deviceName;

    @ApiModelProperty(value = "场景名称")
    private String scenesName;

    @ApiModelProperty(value = "处理中状态（null未接单、1已接单、2已提交、3已审核）")
    private Integer inProcessStatus;
}