package com.iailab.module.data.influxdb.common.utils;
|
|
import com.iailab.module.data.common.enums.TagValueTypeConstant;
|
import com.iailab.module.data.channel.tag.dto.TagValueDTO;
|
import com.iailab.module.data.influxdb.pojo.*;
|
import com.iailab.module.data.influxdb.common.enums.DataMeasurement;
|
|
/**
|
* @author PanZhibao
|
* @Description
|
* @createTime 2023年05月03日 23:00:00
|
*/
|
public class TagValueUtils {
|
|
public static Object getByTagType(String type, String value) {
|
switch (type) {
|
case TagValueTypeConstant.BOOLEAN:
|
return Double.parseDouble(value);
|
case TagValueTypeConstant.INT8:
|
return Integer.parseInt(value);
|
case TagValueTypeConstant.INT16:
|
return Integer.parseInt(value);
|
case TagValueTypeConstant.INT32:
|
return Integer.parseInt(value);
|
case TagValueTypeConstant.INT64:
|
return Integer.parseInt(value);
|
case TagValueTypeConstant.UINT8:
|
return Integer.parseInt(value);
|
case TagValueTypeConstant.UINT16:
|
return Double.parseDouble(value);
|
case TagValueTypeConstant.UINT32:
|
return Integer.parseInt(value);
|
case TagValueTypeConstant.UINT64:
|
return Integer.parseInt(value);
|
case TagValueTypeConstant.FLOAT:
|
return Double.parseDouble(value);
|
case TagValueTypeConstant.DOUBLE:
|
return Double.parseDouble(value);
|
default:
|
break;
|
}
|
return value;
|
}
|
|
public static String getMeasurement(String type) {
|
switch (type) {
|
case TagValueTypeConstant.BOOLEAN:
|
return DataMeasurement.t_tag_bool_value.name();
|
case TagValueTypeConstant.INT8:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.INT16:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.INT32:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.INT64:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.UINT8:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.UINT16:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.UINT32:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.UINT64:
|
return DataMeasurement.t_tag_int_value.name();
|
case TagValueTypeConstant.FLOAT:
|
return DataMeasurement.t_tag_float_value.name();
|
case TagValueTypeConstant.DOUBLE:
|
return DataMeasurement.t_tag_float_value.name();
|
default:
|
return DataMeasurement.t_tag_str_value.name();
|
}
|
}
|
|
public static InfluxTagValuePOJO getByTag(TagValueDTO dto, String value) {
|
switch (dto.getType()) {
|
case TagValueTypeConstant.BOOLEAN:
|
InfluxTagValuePOJO boolPojo = new InfluxTagValueBoolPOJO();
|
((InfluxTagValueBoolPOJO) boolPojo).setValue(Boolean.parseBoolean(value.toString()));
|
return boolPojo;
|
case TagValueTypeConstant.INT8:
|
InfluxTagValuePOJO int8Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) int8Pojo).setValue(Integer.parseInt(value.toString()));
|
return int8Pojo;
|
case TagValueTypeConstant.INT16:
|
InfluxTagValuePOJO int16Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) int16Pojo).setValue(Integer.parseInt(value.toString()));
|
return int16Pojo;
|
case TagValueTypeConstant.INT32:
|
InfluxTagValuePOJO int32Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) int32Pojo).setValue(Integer.parseInt(value.toString()));
|
return int32Pojo;
|
case TagValueTypeConstant.INT64:
|
InfluxTagValuePOJO int64Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) int64Pojo).setValue(Integer.parseInt(value.toString()));
|
return int64Pojo;
|
case TagValueTypeConstant.UINT8:
|
InfluxTagValuePOJO uint8Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) uint8Pojo).setValue(Integer.parseInt(value.toString()));
|
return uint8Pojo;
|
case TagValueTypeConstant.UINT16:
|
InfluxTagValuePOJO uint16Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) uint16Pojo).setValue(Integer.parseInt(value.toString()));
|
return uint16Pojo;
|
case TagValueTypeConstant.UINT32:
|
InfluxTagValuePOJO uint32Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) uint32Pojo).setValue(Integer.parseInt(value.toString()));
|
return uint32Pojo;
|
case TagValueTypeConstant.UINT64:
|
InfluxTagValuePOJO uint64Pojo = new InfluxTagValueIntPOJO();
|
((InfluxTagValueIntPOJO) uint64Pojo).setValue(Integer.parseInt(value.toString()));
|
return uint64Pojo;
|
case TagValueTypeConstant.FLOAT:
|
InfluxTagValuePOJO floatPojo = new InfluxTagValueFloatPOJO();
|
((InfluxTagValueFloatPOJO) floatPojo).setValue(Double.parseDouble(value.toString()));
|
return floatPojo;
|
case TagValueTypeConstant.DOUBLE:
|
InfluxTagValuePOJO doublePojo = new InfluxTagValueFloatPOJO();
|
((InfluxTagValueFloatPOJO) doublePojo).setValue(Double.parseDouble(value.toString()));
|
return doublePojo;
|
default:
|
InfluxTagValuePOJO strPojo = new InfluxTagValueStrPOJO();
|
((InfluxTagValueStrPOJO) strPojo).setValue(value.toString());
|
return strPojo;
|
}
|
}
|
}
|