/**
 * Copyright 2019 DH
 * All right reserved.
 * 项目名称: 大恒泰山系统
 * 创建日期:2022/8/22
 */
package org.springblade.modules.business.check.order.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/***
 * Date:2022/8/22
 * Title:文件所属模块（必须填写）
 * Description：对本文件的详细描述，原则上不能少于30字
 * @author dylan
 * @version 1.0
 * Remark：认为有必要的其他信息
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("rtu_failure_check_order")
public class CheckOrderInfoEntity extends BaseEntity {
	private static final long serialVersionUID = 1L;
	/**
	 * 租户ID
	 */
	@ApiModelProperty("租户ID")
	private String tenantId;

	/**
	 * 机构ID
	 */
	@ApiModelProperty("机构ID")
	@JsonSerialize(nullsUsing = NullSerializer.class)
	private Long orgId;


	/**
	 * 测站编码
	 */
	@ApiModelProperty("测站编码")
	private String rtuCode;

	/**
	 * 工单类型
	 */
	@ApiModelProperty("工单类型")
	private Integer orderType;

	/**
	 * 工单来源，字典
	 */
	@ApiModelProperty("工单来源")
	private Long orderFromKey;

	/**
	 * 工单状态，字典
	 */
	@ApiModelProperty("工单状态")
	private Long orderStatusKey;

	/**
	 * 工单说明
	 */
	@ApiModelProperty(value = "工单说明")
	private String orderDesc;

	/**
	 * 工单确认人
	 */
	@ApiModelProperty(value = "工单确认人")
	private Long orderConfirmUser;

	/**
	 * 预警ID
	 */
	@ApiModelProperty(value = "预警ID")
	private Long warnId;

	/**
	 * 工单关闭
	 */
	@ApiModelProperty(value = "工单关闭")
	private Integer orderClose;

	/**
	 * 工单确认
	 */
	@ApiModelProperty(value = "工单确认")
	private Integer orderConfirm;

	/**
	 * 工单确认时间
	 */
	@ApiModelProperty(value = "工单确认时间")
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss",
		timezone = "GMT+8"
	)
	private Date orderConfirmTime;

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

	/**
	 * 负责人
	 */
	@ApiModelProperty(value = "负责人")
	private Long contactUser;

	/**
	 * 工单处理ID
	 */
	@ApiModelProperty(value = "工单处理ID")
	private Long orderProcessId;

	/**
	 * 工单照片
	 */
	@ApiModelProperty(value = "工单照片")
	private String orderPhotos;

	/**
	 * 工单视频
	 */
	@ApiModelProperty(value = "工单视频")
	private String orderVideos;

	/**
	 * 批处理ID，防止重复上传
	 */
	@ApiModelProperty(value = "批处理ID")
	private String batchId;

	/**
	 * 工单评分
	 */
	@ApiModelProperty("工单评分")
	private Integer orderRate;

	@ApiModelProperty(value = "工单完成时限时间")
	@DateTimeFormat(
			pattern = "yyyy-MM-dd"
	)
	@JsonFormat(
			pattern = "yyyy-MM-dd",
			timezone = "GMT+8"
	)
	private Date orderCompleteTime;


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

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

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

}
