package com.ycl.platform.domain.entity; import com.alibaba.excel.annotation.ExcelIgnore; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.ycl.platform.base.CheckIndex; import com.ycl.platform.domain.vo.CheckIndexCarVO; import constant.CheckConstants; import lombok.Data; import org.springframework.lang.NonNull; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.List; /** * 车辆指标概率数据对象 t_check_index_car * * @author ruoyi * @date 2024-04-29 */ @Data @TableName("t_check_index_car") public class CheckIndexCar extends CheckIndex { private static final long serialVersionUID = 1L; /** 视图库对接稳定性 */ @TableField("view_connect_stability") private BigDecimal viewConnectStability; /** 点位在线率 */ @TableField("site_online") private BigDecimal siteOnline; /** 联网卡口设备目录一致率 */ @TableField("device_directory_consistent") private BigDecimal deviceDirectoryConsistent; /** 车辆卡口信息采集准确率 */ @TableField("vehicle_information_collection_accuracy") private BigDecimal vehicleInformationCollectionAccuracy; /** 车辆卡口设备抓拍数据完整性 */ @TableField("vehicle_capture_integrity") private BigDecimal vehicleCaptureIntegrity; /** 车辆卡口设备抓拍数据准确性 */ @TableField("vehicle_capture_accuracy") private BigDecimal vehicleCaptureAccuracy; /** 车辆卡口设备时钟准确性 */ @TableField("vehicle_timing_accuracy") private BigDecimal vehicleTimingAccuracy; /** 车辆卡口设备抓拍数据上传及时性 */ @TableField("vehicle_upload_timeliness") private BigDecimal vehicleUploadTimeliness; /** 车辆卡口设备url可用性 */ @TableField("vehicle_url_availability") private BigDecimal vehicleUrlAvailability; /** 车辆卡口设备抓拍数据大图可用性 */ @TableField("vehicle_picture_availability") private BigDecimal vehiclePictureAvailability; @ExcelIgnore @TableField(exist = false) private List quarter; //转换成字符串用于excel导出 public static CheckIndexCarVO getExcelVo(@NonNull CheckIndexCar checkIndexCar) { CheckIndexCarVO checkIndexCarVo = new CheckIndexCarVO(); checkIndexCarVo.setDeptName(checkIndexCar.getDeptName()); checkIndexCarVo.setCreateTime(checkIndexCar.getCreateTime()); checkIndexCarVo.setExamineTagStr(CheckConstants.Examine_Tag_Province.equals(checkIndexCar.getExamineTag()) ? "省厅考核" : "区县考核"); checkIndexCarVo.setSiteOnlineText(checkIndexCar.getSiteOnline().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setVehicleCaptureAccuracyText(checkIndexCar.getVehicleCaptureAccuracy().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setDeviceDirectoryConsistentText(checkIndexCar.getDeviceDirectoryConsistent().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setVehicleCaptureIntegrityText(checkIndexCar.getVehicleCaptureIntegrity().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setVehicleTimingAccuracyText(checkIndexCar.getSiteOnline().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setVehicleUploadTimelinessText(checkIndexCar.getSiteOnline().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setViewConnectStabilityText(checkIndexCar.getSiteOnline().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setVehicleUrlAvailabilityText(checkIndexCar.getSiteOnline().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setVehiclePictureAvailabilityText(checkIndexCar.getSiteOnline().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); checkIndexCarVo.setVehicleInformationCollectionAccuracyText(checkIndexCar.getVehicleInformationCollectionAccuracy().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP)+"%"); return checkIndexCarVo; } }