Search in sources :

Example 1 with PanoramicRealTimeConsumptionGather

use of com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather in project new-cloud by xie-summer.

the class PanoramicDailyInventorySummaryServiceImpl method countUsable.

@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED, rollbackFor = Exception.class)
public Integer countUsable(String code, String date) {
    // 最近7天历史消耗量数据值获取
    List<PanoramicRealTimeConsumptionGather> sum = realTimeConsumptionGatherService.findNumberdayData(code, 7, date);
    double sumSingle = 0.0;
    if (null != sum && sum.size() != 0) {
        // 当前仓库存量值获取
        PanoramicDailyInventorySummary summary = queryByDateAndCode(code, date);
        if (Optional.ofNullable(summary).isPresent()) {
            for (int i = 0; i < sum.size(); i++) {
                sumSingle = MathUtil.add(sumSingle, sum.get(i).getValue());
            }
            return Integer.parseInt(new java.text.DecimalFormat("0").format(summary.getValue() / sumSingle * sum.size()));
        }
        return null;
    } else {
        return null;
    }
}
Also used : PanoramicRealTimeConsumptionGather(com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather) PanoramicDailyInventorySummary(com.monitor.model.dailyinventorysummary.PanoramicDailyInventorySummary) Transactional(org.springframework.transaction.annotation.Transactional)

Example 2 with PanoramicRealTimeConsumptionGather

use of com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather in project new-cloud by xie-summer.

the class PanoramicProductOfflineMeasurementServiceImpl method productOfflineSummaryTask.

/**
 * 产品消耗数据实时汇总
 * @param name
 * @param code
 * @param date
 */
private void productOfflineSummaryTask(String name, String code, String date) {
    // 
    Condition condition = new Condition(PanoramicProductOfflineMeasurement.class, false);
    condition.createCriteria().andCondition("	code = '" + code + "' " + "AND f_id=2 AND delete_flag=1 " + "AND date_format(utime,'%Y%m%d%H') = date_format('" + date + "','%Y%m%d%H')");
    List<PanoramicProductOfflineMeasurement> offlineMeasurementList = panoramicProductOfflineMeasurementMapper.selectByCondition(condition);
    PanoramicProductOfflineMeasurement record = new PanoramicProductOfflineMeasurement();
    record.setCode(code);
    record.setName(name);
    record.setValue(String.valueOf("0.0"));
    record.setCtime(DateUtil.getCurFullTimestamp());
    record.setId(null);
    record.setOperator("auto_task");
    record.setfId("2");
    record.setUnit("吨");
    record.setDeleteFlag(1);
    final double[] sumValue = { 0.0 };
    if (null != offlineMeasurementList && offlineMeasurementList.size() > 0) {
        offlineMeasurementList.forEach(e -> {
            sumValue[0] += Double.valueOf(e.getValue()).doubleValue();
            record.setUtime(e.getUtime());
            record.setDtime(null);
            record.setOperator(e.getOperator());
            record.setfId(e.getfId());
            record.setName(e.getName());
            record.setDeleteFlag(e.getDeleteFlag());
            record.setCtime(e.getCtime());
            record.setId(null);
        });
    }
    PanoramicRealTimeConsumptionGather selectOne = realTimeConsumptionGatherMapper.selectByGatherTime(code, date);
    Optional<PanoramicRealTimeConsumptionGather> one = Optional.ofNullable(selectOne);
    if (one.isPresent()) {
        selectOne.setValue(sumValue[0]);
        selectOne.setUtime(DateUtil.getCurFullTimestamp());
        selectOne.setCtime(selectOne.getUtime());
        selectOne.setOperator("auto_task_update");
        selectOne.setGatherTime(date);
        realTimeConsumptionGatherMapper.updateByPrimaryKeySelective(selectOne);
    } else {
        PanoramicRealTimeConsumptionGather gather = new PanoramicRealTimeConsumptionGather();
        gather.setCode(code);
        gather.setName(name);
        gather.setDeleteFlag(record.getDeleteFlag());
        gather.setfId(record.getfId());
        gather.setGatherTime(date);
        gather.setId(null);
        gather.setCtime(DateUtil.getCurFullTimestamp());
        gather.setName(record.getName());
        gather.setOperator(record.getOperator());
        gather.setUnit(record.getUnit());
        gather.setDtime(record.getDtime());
        gather.setUtime(gather.getCtime());
        gather.setValue(sumValue[0]);
        realTimeConsumptionGatherMapper.insert(gather);
    }
}
Also used : Condition(tk.mybatis.mapper.entity.Condition) PanoramicRealTimeConsumptionGather(com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather) PanoramicProductOfflineMeasurement(com.monitor.model.productofflinemeasurement.PanoramicProductOfflineMeasurement)

Example 3 with PanoramicRealTimeConsumptionGather

use of com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather in project new-cloud by xie-summer.

the class PanoramicRealTimeConsumptionServiceImpl method realtimeConsumptionSummaryTask.

@Override
@Transactional(readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void realtimeConsumptionSummaryTask(String name, String code, String date) {
    // 先查出来,再去更新
    Condition condition = new Condition(PanoramicRealTimeConsumption.class, false);
    condition.createCriteria().andCondition("  substring(code, 1, 12) = '" + code + "' AND f_id=2 AND delete_flag=1 " + " AND date_format(utime,'%Y%m%d%H') = date_format('" + date + "','%Y%m%d%H')");
    List<PanoramicRealTimeConsumption> consumptionList = realTimeConsumptionMapper.selectByCondition(condition);
    PanoramicRealTimeConsumption record = new PanoramicRealTimeConsumption();
    record.setCode(code);
    record.setName(name);
    record.setValue(0.0);
    record.setCtime(DateUtil.getCurFullTimestamp());
    record.setId(null);
    record.setOperator("auto_task");
    record.setfId("2");
    record.setUnit(StringUtils.containsIgnoreCase(code, "0004A4000009") ? "度" : "吨");
    record.setDeleteFlag(1);
    final double[] sumValue = { 0.0 };
    if (null != consumptionList && consumptionList.size() > 0) {
        consumptionList.forEach(e -> {
            sumValue[0] += e.getValue();
            record.setUtime(e.getUtime());
            record.setDtime(null);
            record.setOperator("auto_task");
            record.setfId(e.getfId());
            record.setName(e.getName());
            record.setDeleteFlag(e.getDeleteFlag());
            record.setCtime(e.getCtime());
            record.setId(null);
        });
    }
    PanoramicRealTimeConsumptionGather selectOne = realTimeConsumptionGatherMapper.selectByGatherTime(code, date);
    Optional<PanoramicRealTimeConsumptionGather> one = Optional.ofNullable(selectOne);
    if (one.isPresent()) {
        selectOne.setValue(sumValue[0]);
        selectOne.setUtime(DateUtil.getCurFullTimestamp());
        selectOne.setCtime(selectOne.getUtime());
        selectOne.setOperator("auto_task_update");
        selectOne.setGatherTime(date);
        realTimeConsumptionGatherMapper.updateByPrimaryKeySelective(selectOne);
    } else {
        PanoramicRealTimeConsumptionGather gather = new PanoramicRealTimeConsumptionGather();
        gather.setCode(code);
        gather.setName(name);
        gather.setDeleteFlag(record.getDeleteFlag());
        gather.setfId(record.getfId());
        gather.setGatherTime(date);
        gather.setId(null);
        gather.setCtime(DateUtil.getCurFullTimestamp());
        gather.setName(record.getName());
        gather.setOperator(record.getOperator());
        gather.setUnit(record.getUnit());
        gather.setDtime(record.getDtime());
        gather.setUtime(gather.getCtime());
        gather.setValue(sumValue[0]);
        realTimeConsumptionGatherMapper.insert(gather);
    }
}
Also used : Condition(tk.mybatis.mapper.entity.Condition) PanoramicRealTimeConsumptionGather(com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather) PanoramicRealTimeConsumption(com.monitor.model.realtimeconsumption.PanoramicRealTimeConsumption) Transactional(org.springframework.transaction.annotation.Transactional)

Example 4 with PanoramicRealTimeConsumptionGather

use of com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather in project new-cloud by xie-summer.

the class PanoramicRealTimeConsumptionGatherServiceImpl method listByCodeAndDate.

@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED, rollbackFor = Exception.class)
public List<PanoramicRealTimeConsumptionGather> listByCodeAndDate(String date, String code) {
    Condition condition = new Condition(PanoramicRealTimeConsumptionGather.class, false);
    condition.createCriteria().andCondition(" code ='" + code + "' and f_id=2 and delete_flag=1 and gather_time > '" + DateUtil.parseTimestamp(date.concat(" 07:00"), "yyyy-MM-dd HH:mm") + "' and  gather_time < '" + DateUtil.parseTimestamp(DateUtil.getSpecifiedDayBefor(date, -1).concat(" 08:00"), "yyyy-MM-dd HH:mm") + "'");
    condition.setOrderByClause(" gather_time asc ");
    List<PanoramicRealTimeConsumptionGather> recordList = realTimeConsumptionGatherMapper.selectByCondition(condition);
    return recordList;
}
Also used : Condition(tk.mybatis.mapper.entity.Condition) PanoramicRealTimeConsumptionGather(com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather) Transactional(org.springframework.transaction.annotation.Transactional)

Example 5 with PanoramicRealTimeConsumptionGather

use of com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather in project new-cloud by xie-summer.

the class PanoramicRealTimeConsumptionGatherServiceImpl method queryDayStatisticsByDate.

/**
 * 取得指定时间的消耗值
 */
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED, rollbackFor = Exception.class)
public PanoramicRealTimeConsumptionGatherDto queryDayStatisticsByDate(String date, String code) {
    if (StringUtils.equalsIgnoreCase(code, HG_01_XY_7505) || StringUtils.equalsIgnoreCase(code, HG_01_XY_7504) || StringUtils.equalsIgnoreCase(code, HG_01_XY_7500)) {
        return this.queryStatisticsForDay(date, code);
    }
    Condition condition = new Condition(PanoramicRealTimeConsumptionGather.class, false);
    condition.createCriteria().andCondition(" code ='" + code + "' AND f_id=2 AND delete_flag=1 " + " AND date_format(gather_time,'%Y%m%d') = date_format('" + date + "','%Y%m%d')");
    condition.setOrderByClause(" gather_time asc ");
    List<PanoramicRealTimeConsumptionGather> recordList = realTimeConsumptionGatherMapper.selectByCondition(condition);
    PanoramicRealTimeConsumptionGatherDto gather = new PanoramicRealTimeConsumptionGatherDto();
    gather.setCode(code);
    gather.setValue(0.0);
    gather.setRecordValues(0.0);
    gather.setCtime(DateUtil.parseTimestamp(date, "yyyy-MM-dd"));
    gather.setGatherTime(date);
    if (null != recordList && recordList.size() > 0) {
        recordList.forEach(e -> {
            gather.setValue(e.getValue() + gather.getValue());
            gather.setDeleteFlag(e.getDeleteFlag());
            gather.setfId(e.getfId());
            gather.setId(null);
            gather.setName(e.getName());
            gather.setOperator(e.getOperator());
            gather.setUnit(e.getUnit());
            gather.setDtime(null);
            gather.setUtime(e.getUtime());
        });
    }
    return gather;
}
Also used : Condition(tk.mybatis.mapper.entity.Condition) PanoramicRealTimeConsumptionGather(com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather) PanoramicRealTimeConsumptionGatherDto(com.monitor.dto.realtimeconsumptiongather.PanoramicRealTimeConsumptionGatherDto) Transactional(org.springframework.transaction.annotation.Transactional)

Aggregations

PanoramicRealTimeConsumptionGather (com.monitor.model.realtimeconsumptiongather.PanoramicRealTimeConsumptionGather)7 Transactional (org.springframework.transaction.annotation.Transactional)6 Condition (tk.mybatis.mapper.entity.Condition)6 PanoramicRealTimeConsumptionGatherDto (com.monitor.dto.realtimeconsumptiongather.PanoramicRealTimeConsumptionGatherDto)1 PanoramicDailyInventorySummary (com.monitor.model.dailyinventorysummary.PanoramicDailyInventorySummary)1 PanoramicProductMaterials (com.monitor.model.productmaterials.PanoramicProductMaterials)1 PanoramicProductOfflineMeasurement (com.monitor.model.productofflinemeasurement.PanoramicProductOfflineMeasurement)1 PanoramicRealTimeConsumption (com.monitor.model.realtimeconsumption.PanoramicRealTimeConsumption)1