鞍钢鲅鱼圈能源管控系统后端代码
dongyukun
昨天 d75701adae7a2bc5d8c1383164ea85dfa038a8f9
ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingOverviewTask.java
@@ -6,6 +6,8 @@
import com.iailab.module.ansteel.coking.service.*;
import com.iailab.module.ansteel.common.enums.ProcessConfDataTypeEnum;
import com.iailab.module.ansteel.common.enums.ProcessTypeEnum;
import com.iailab.module.data.api.arc.ArcDataApi;
import com.iailab.module.data.api.arc.dto.ApiArcDataDTO;
import com.iailab.module.data.api.ind.IndItemApi;
import com.iailab.module.data.api.ind.dto.ApiIndItemQueryDTO;
import com.iailab.module.data.api.ind.dto.ApiIndItemValueDTO;
@@ -46,6 +48,8 @@
    private DataPointApi dataPointApi;
    @Resource
    private IndItemApi indItemApi;
    @Resource
    private ArcDataApi arcDataApi;
    @Resource
    private CokingTraceReportService cokingTraceReportService;
    @Resource
@@ -115,7 +119,7 @@
                        // 异常数据处理
                        String content = null;
                        if (value != null) {
                        if (value != null && !value.equals(-2.0)) {
                            if (value.equals(0.0)) {
                                content = clock + " " + conf.getIndName() + "数据异常(数据为0)";
                            }else if (value.compareTo(Double.valueOf(conf.getExt3())) > 0) {
@@ -177,9 +181,7 @@
                    entity.setIndCode(conf.getIndCode());
                    entity.setIndName(conf.getIndName());
                    entity.setIndUnit(conf.getIndUnit());
                    if (value != null) {
                        entity.setIndValue(BigDecimal.valueOf(value));
                    }
                    entity.setIndValue(BigDecimal.valueOf(value));
                    entity.setCreateDate(new Date());
                    overviewIndEntities.add(entity);
                }
@@ -195,23 +197,36 @@
        Double value = null;
        switch (ProcessConfDataTypeEnum.getEumByCode(conf.getDataType())) {
            case DATAPOINT:
                List<String> points = new ArrayList<>();
                points.add(conf.getPointNo());
                Map<String, Object> pointsRealValue = dataPointApi.queryPointsRealValue(points);
                value = Double.valueOf(pointsRealValue.get(conf.getPointNo()).toString());
                ApiPointValueQueryDTO queryDTO = new ApiPointValueQueryDTO();
                queryDTO.setPointNo(conf.getPointNo());
                Calendar calendar = Calendar.getInstance();
                queryDTO.setEnd(calendar.getTime());
                calendar.add(Calendar.DAY_OF_YEAR,-1);
                queryDTO.setStart(calendar.getTime());
                List<ApiPointValueDTO> values = dataPointApi.queryPointHistoryValue(queryDTO);
                if (!CollectionUtils.isEmpty(values)) {
                    value = values.get(values.size() - 1).getV();
                }
                break;
            case IND:
                List<ApiIndItemValueDTO> indValues = indItemApi.queryIndItemDefaultValue(conf.getPointNo());
                if (!CollectionUtils.isEmpty(indValues)) {
                    value = Double.valueOf(indValues.get(indValues.size() - 1).getDataValue().toString());
                    value = Double.valueOf(indValues.get(0).getDataValue().toString());
                }
                break;
            case MODEL:
            case ARC:
                ApiArcDataDTO apiArcDataDTO = arcDataApi.queryArcLastValue(conf.getPointNo());
                if (apiArcDataDTO != null) {
                    value = apiArcDataDTO.getArcValue().doubleValue();
                }
                break;
            default:
                break;
        }
        return value;
        if (value != null && StringUtils.isNotBlank(conf.getExt5())) {
            value = value * Double.valueOf(conf.getExt5());
        }
        return value == null ? -2.0 : value;
    }
}