/*
 * Author: Zev
 * 生成entity
 */
package com.tofly.pojo.plan;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;


/**
 * 巡查统计计算表：TF_YWPN_GPSCALCULATE_W
 *
 * @author admin
 * @date Thu Mar 18 00:00:00 CST 2021
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "TF_YWPN_GPSCALCULATE_W", resultMap = "gpscalculateMap")
@KeySequence("TF_YWPN_GPSCALCULATE_W")
@ApiModel
public class Gpscalculate extends Model<Gpscalculate> {
    private static final long serialVersionUID = 1L;

    /**
     * $column.comments
     */
    @TableId(value = "ID", type = IdType.INPUT)
    @ApiModelProperty(value = "$column.comments")
    private Long id;

    /**
     * 有效耗时
     */
    @ApiModelProperty(value = "有效耗时")
    private Double vaildTotalTime=0D;
    /**
     * 有效里程
     */
    @ApiModelProperty(value = "有效里程")
    private Double vaildTotalDistance=0D;
    /**
     * 有效速度
     */
    @ApiModelProperty(value = "有效速度")
    private Double vaildSpeed=0D;

    /**
     * 统计GPS日期
     */
    @ApiModelProperty(value = "统计GPS日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date gpsDate;
    /**
     * 巡查用户ID
     */
    @ApiModelProperty(value = "巡查用户ID")
    @TableField(value = "USER_ID", fill = FieldFill.INSERT)
    private Long userId;
    @TableField(exist = false)
    private String userName;
    @ApiModelProperty(value = "巡查部门名称")
    @TableField(exist = false)
    private String deptName;
    /**
     * 签到时间段
     */
    @ApiModelProperty(value = "签到时间段")
    private String signRange;
    /**
     * 巡检里程
     */
    @ApiModelProperty(value = "巡检里程")
    private Double planTotalDistance=0D;
    /**
     * 巡检时长,秒数
     */
    @ApiModelProperty(value = "巡检时长,秒数")
    private Double planTotalTime=0D;
    /**
     * 巡检平均时速
     */
    @ApiModelProperty(value = "巡检平均时速")
    private Double planTotalAverage=0D;
    /**
     * 车巡里程
     */
    @ApiModelProperty(value = "车巡里程")
    private Double carTotalDistance=0D;
    /**
     * 车巡耗时
     */
    @ApiModelProperty(value = "车巡耗时")
    private Double carTotalTime=0D;
    /**
     * 车巡平均时速
     */
    @ApiModelProperty(value = "车巡平均时速")
    private Double carTotalAverage=0D;

    @ApiModelProperty(value = "巡检计划任务数")
    private Long planNum=0L;
    @ApiModelProperty(value = "巡检计划完成任务数")
    private Long planCompleteNum=0L;
    /**
     * 计划巡检点个数
     */
    @ApiModelProperty(value = "计划巡检点个数")
    private Long pointinplan=0L;
    /**
     * 实际巡检点个数
     */
    @ApiModelProperty(value = "实际巡检点个数")
    private Long pointpatroled=0L;
    /**
     * 计划巡检线长度
     */
    @ApiModelProperty(value = "计划巡检线长度")
    private BigDecimal pathinplan=BigDecimal.ZERO;
    /**
     * 实际巡检线长度
     */
    @ApiModelProperty(value = "实际巡检线长度")
    private BigDecimal pathpatroled=BigDecimal.ZERO;
    /**
     * 工地发现个数
     */
    @ApiModelProperty(value = "工地发现个数")
    private Long buildingsitefinded=0L;
    /**
     * 工地监护个数
     */
    @ApiModelProperty(value = "工地监护个数")
    private Long buildingsitemonitor=0L;
    /**
     * 实际工地监护个数
     */
    @ApiModelProperty(value = "实际工地监护个数")
    private Long buildingpatroled=0L;
    /**
     * 发现隐患数量
     */
    @ApiModelProperty(value = "发现隐患数量")
    private Long findTroubleNum=0L;
    /**
     * 计划巡检隐患个数
     */
    @ApiModelProperty(value = "计划巡检隐患个数")
    private Long troubleinplan=0L;
    /**
     * 实际巡检隐患个数
     */
    @ApiModelProperty(value = "实际巡检隐患个数")
    private Long troubleipatroled=0L;

    @ApiModelProperty(value = "计划工单个数")
    private Long repairOrderNum=0L;

    @ApiModelProperty(value = "实际完成工单个数")
    private Long completeOrderNum=0L;
    /**
     * 个人完成巡检点数
     */
    @ApiModelProperty(value = "个人完成巡检点数")
    private Long overCount=0L;

    /**
     * 个人完成巡检长度
     */
    @ApiModelProperty(value = "个人完成巡检长度")
    private BigDecimal overLen=BigDecimal.ZERO;
}
