package com.mosty.base.model.entity.yjzl;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mosty.base.model.BaseEntity;
import com.vividsolutions.jts.geom.Point;
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.math.BigDecimal;
import java.util.Date;

/**
 * @author dw
 * @since 2022-10-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tb_zlxx_zxr")
@ApiModel(value = "TbZlxxZxr 对象", description = "指令-执行人或部门或巡组表")
public class TbZlxxZxr extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

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

    @ApiModelProperty(value = "指令ID")
    private String zlId;

    @ApiModelProperty(value = "业务id")
    private String ywId;

    @ApiModelProperty(value = "指令类型--D_BZ_ZLLX(01-巡防指令、02-人员预警核查指令、03-车辆预警核查指令、" +
            "04-事件预警处置指令、05-警情处置指令、06-人工指令、07-人员管控指令")
    private String zllx;

    @ApiModelProperty(value = "指令来源--D_BZ_ZLLY（01-巡逻方案，02-人员预警，03-车辆预警，04-事件预警，" +
            "05-警情，06-人工，07-人员管控）")
    private String zlly;

    @ApiModelProperty(value = "指令执行类型--D_BZ_ZLZXLX（1-单人执行，2-多人执行）")
    private String zlzxlx;

    @ApiModelProperty(value = "指令执行状态--D_BZ_ZXZTAI（01-待签收，02-正常签收，03-超时签收；04-已转发；11-巡逻中，" +
            "21-待到达现场，22-自动确认到达现场，23-手动确认到达现场，24-手动确认到达现场(实际未到达)；25-超时到达现场 ，" +
            "26-已研判，27-已反馈，31-待处置，32-处置完成；91-未完成，92-已完成，93-超时完成，94-已结束未完成）")
    private String zlzxzt;

    @ApiModelProperty(value = "指令标题")
    private String zlbt;

    @ApiModelProperty(value = "指令内容")
    private String zlnr;

    @ApiModelProperty(value = "指令执行情况")
    private String zlzxqk;

    @ApiModelProperty(value = "指令发起日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date zlfqrq;

    @ApiModelProperty(value = "指令发起时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date zlfqsj;

    @ApiModelProperty(value = "指令等级--D_BZ_TYJB（10-红色,20-橙色,30-黄色,40-蓝色）")
    private String zldj;

    @ApiModelProperty(value = "指令接收对象--D_BZ_ZLJSDX，如：01：人员，02：部门，03-巡组")
    private String zljsdx;

    @ApiModelProperty(value = "指令发生地址行政区划代码--D_BZ_XZQHDM")
    private String zlfsddxzqh;

    @ApiModelProperty(value = "指令发生地址")
    private String zlfsdd;

    @ApiModelProperty(value = "指令发起人ID")
    private String zlfqrId;

    @ApiModelProperty(value = "指令发起人姓名")
    private String zlfqr;

    @ApiModelProperty(value = "指令发起人身份证")
    private String zlfqrSfzh;

    @ApiModelProperty(value = "指令发起人电话")
    private String zlfqrDh;

    @ApiModelProperty(value = "附件ID")
    private String fjId;

    @ApiModelProperty(value = "指令接收人数")
    private Integer zljsrs;

    @ApiModelProperty(value = "指令图片")
    private String zltp;

    @ApiModelProperty(value = "指令接收对象类型，如：01：人员，02：部门，03-巡组--D_BZ_ZLJSDX")
    private String zxrLx;

    @ApiModelProperty(value = "指令执行巡组id-存报备id")
    private String zxrXzid;

    @ApiModelProperty(value = "指令执行人ID")
    private String zxrId;

    @ApiModelProperty(value = "指令执行人警力类型 01 民警  02 辅警")
    private String zxrJllx;

    @ApiModelProperty(value = "指令执行人姓名")
    private String zxrXm;

    @ApiModelProperty(value = "指令执行人身份证")
    private String zxrSfz;

    @ApiModelProperty(value = "指令执行人电话")
    private String zxrDh;

    @ApiModelProperty(value = "指令执行状态--D_BZ_ZXZTAI（01-待签收，02-正常签收，03-超时签收；04-已转发；11-巡逻中，" +
            "21-待到达现场，22-自动确认到达现场，23-手动确认到达现场，24-手动确认到达现场(实际未到达)；25-超时到达现场 ，" +
            "26-已研判，27-已反馈，31-待处置，32-处置完成；91-未完成，92-已完成，93-超时完成，94-已结束未完成）")
    private String dqzt;

    @ApiModelProperty(value = "当前状态时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date dqztSj;

    @ApiModelProperty(value = "当前状态说明（如：此指令为单人执行指令，因XXXX签收指令结束）")
    private String dqztsm;

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

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

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

    @ApiModelProperty(value = "所属县公安局")
    private String ssxgaj;

    @ApiModelProperty(value = "所属县公安局代码")
    private String ssxgajdm;

    @ApiModelProperty(value = "所属县公安局ID")
    private String ssxgajid;

    @ApiModelProperty(value = "所属市公安局")
    private String sssgaj;

    @ApiModelProperty(value = "所属市公安局代码")
    private String sssgajdm;

    @ApiModelProperty(value = "所属市公安局id")
    private String sssgajid;
}
