package com.gci.boot.modules.gis.vo;

import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.gci.boot.common.dict.annotation.Dict;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * @author 24642
 */
@Data
public class StatisGisVo {


    private Integer index;

    /**
     * 项目id
     */
    @JsonPropertyDescription("项目id")
    @Dict(dictTable = "tb_projects", dicText = "project_name", dicCode = "id")
    private String projectId;

    /**
     * 车牌号
     */
    @JsonPropertyDescription("车牌号")
    private String plateNumber;

    /**
     * 车辆种类
     */
    @JsonPropertyDescription("车辆种类")
    @Dict(dicCode = "vehicle_type")
    private String vehicleType;

    /**
     * 车辆品牌
     */
    @JsonPropertyDescription("车辆品牌")
    @Dict(dicCode = "vehicle_brand")
    private String vehicleBrand;

    /**
     * 车辆型号
     */
    @JsonPropertyDescription("车辆型号")
    private String vehicleModel;

    /**
     * 统计时间
     */
    @JsonPropertyDescription("统计时间")
    private String statisTime;

    /**
     * 行驶里程 km
     */
    @JsonPropertyDescription("行驶里程 km")
    private BigDecimal totalMile;

    /**
     * 作业里程 km
     */
    @JsonPropertyDescription("作业里程 km")
    private BigDecimal workMile;

    /**
     * 行驶时长 h
     */
    @JsonPropertyDescription("行驶时长 h")
    private BigDecimal totalTime;

    /**
     * 作业时长 h
     */
    @JsonPropertyDescription("作业时长 h")
    private BigDecimal workTime;

    /**
     * 行驶作业时长 h
     */
    @JsonPropertyDescription("行驶作业时长 h")
    private BigDecimal travelWorkTime;

    /**
     * 停靠作业时长 h
     */
    @JsonPropertyDescription("停靠作业时长 h")
    private BigDecimal stopWorkTime;

    /**
     * 平均行驶速度 km/h
     */
    @JsonPropertyDescription("平均行驶速度 km/h")
    private BigDecimal avgSpeed = BigDecimal.ZERO;

    /**
     * 平均作业速度 km/h
     */
    @JsonPropertyDescription("平均作业速度 km/h")
    private BigDecimal avgWorkSpeed = BigDecimal.ZERO;

    /**
     * 在线时长 h
     */
    @JsonPropertyDescription("在线时长 h")
    private BigDecimal onlineTime;

    /**
     * 通电停靠时长 h
     */
    @JsonPropertyDescription("通电停靠时长 h")
    private BigDecimal onlineStopTime;

    /**
     * 应出勤天数
     */
    @JsonPropertyDescription("应出勤天数")
    private Integer requiredAttendanceDays;
    /**
     * 实际出勤天数
     */
    @JsonPropertyDescription("实际出勤天数")
    private Integer actualAttendanceDays;
    /**
     * 未出勤天数
     */
    @JsonPropertyDescription("未出勤天数")
    private Integer notAttendanceDays;
    /**
     * 作业线路效率 %
     */
    @JsonPropertyDescription("作业线路效率 %")
    private BigDecimal mileEfficiency = new BigDecimal("0.00");
    /**
     * 日均有效使用率 %
     */
    @JsonPropertyDescription("日均有效使用率 %")
    private BigDecimal timeEfficiency = new BigDecimal("0.00");
}
