|
@@ -25,6 +25,7 @@ import org.springframework.stereotype.Service;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.text.DecimalFormat;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
|
|
|
/**
|
|
@@ -54,7 +55,9 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
String farmId = paramsMap.get("farmId");
|
|
|
// QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
|
|
|
// queryWrapper.eq("farm_id", farmId);
|
|
|
- EnergyDataVo energyDataVo = dataMapper.listCount(farmId);
|
|
|
+ Date monthmorning = DataUill.getTimesMonthmorning();
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ EnergyDataVo energyDataVo = dataMapper.listCount(farmId,sdf.format(monthmorning));
|
|
|
// QueryWrapper<EnergyWarningInfo> queryWrapper1 = new QueryWrapper<>();
|
|
|
// queryWrapper1.eq("farm_id", farmId);
|
|
|
// Integer count = warningInfoMapper.selectCount(queryWrapper1);
|
|
@@ -64,6 +67,16 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
//// Float.parseFloat(energyDataVo.getGasValue()) + Float.parseFloat(energyDataVo.getWaterValue()));
|
|
|
//// DecimalFormat df1 = new DecimalFormat("#.00");
|
|
|
// energyDataVo.setCount(count);
|
|
|
+ if (ObjectUtil.isEmpty(energyDataVo)) {
|
|
|
+ EnergyDataVo energyDataVo1 = new EnergyDataVo();
|
|
|
+ energyDataVo1.setCount(0);
|
|
|
+ energyDataVo1.setGasValue("0");
|
|
|
+ energyDataVo1.setFeedValue("0");
|
|
|
+ energyDataVo1.setElectricityValue("0");
|
|
|
+ energyDataVo1.setWaterValue("0");
|
|
|
+ energyDataVo1.setNowTime(sdf.format(new Date()));
|
|
|
+ return new Result(ResultCode.SUCCESS, energyDataVo1);
|
|
|
+ }
|
|
|
return new Result(ResultCode.SUCCESS, energyDataVo);
|
|
|
}
|
|
|
|
|
@@ -82,7 +95,7 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
timeType = "3";
|
|
|
}
|
|
|
|
|
|
- QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyWater> dataQueryWrapper = new QueryWrapper<>();
|
|
|
dataQueryWrapper.eq("farm_id", farmId);
|
|
|
//用水
|
|
|
if ("1".equals(dataType)) {
|
|
@@ -95,9 +108,11 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
}
|
|
|
//全年
|
|
|
if ("3".equals(timeType)) {
|
|
|
+ QueryWrapper<EnergyWater> wrapper = new QueryWrapper<>();
|
|
|
+ wrapper.eq("farm_id", farmId);
|
|
|
DateTime dateTime = DateUtil.beginOfYear(new Date());
|
|
|
- dataQueryWrapper.ge("create_date", dateTime);
|
|
|
- List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listYearWater(dataQueryWrapper);
|
|
|
+ wrapper.ge("create_date", dateTime);
|
|
|
+ List<EnergyAllDataVo> energyWaterDataVos = waterMapper.listYearWater(wrapper);
|
|
|
return new Result(ResultCode.SUCCESS, energyWaterDataVos);
|
|
|
}
|
|
|
//本月
|
|
@@ -117,32 +132,34 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
}
|
|
|
//用电
|
|
|
else if ("2".equals(dataType)) {
|
|
|
+ QueryWrapper<EnergyElectricity> electricityQueryWrapper = new QueryWrapper<>();
|
|
|
+ electricityQueryWrapper.eq("farm_id", farmId);
|
|
|
//自定义
|
|
|
if ("4".equals(timeType)) {
|
|
|
startTime = startTime + " 00:00:00";
|
|
|
endTime = endTime + " 23:59:59";
|
|
|
- dataQueryWrapper.between("create_date", startTime, endTime);
|
|
|
- return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(dataQueryWrapper));
|
|
|
+ electricityQueryWrapper.between("create_date", startTime, endTime);
|
|
|
+ return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(electricityQueryWrapper));
|
|
|
}
|
|
|
//全年
|
|
|
if ("3".equals(timeType)) {
|
|
|
DateTime dateTime = DateUtil.beginOfYear(new Date());
|
|
|
- dataQueryWrapper.ge("create_date", dateTime);
|
|
|
- List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listYearElectricity(dataQueryWrapper);
|
|
|
+ electricityQueryWrapper.ge("create_date", dateTime);
|
|
|
+ List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listYearElectricity(electricityQueryWrapper);
|
|
|
return new Result(ResultCode.SUCCESS, energyElectricityDataVos);
|
|
|
}
|
|
|
//本月
|
|
|
if ("2".equals(timeType)) {
|
|
|
Date timesMonthmorning = DataUill.getTimesMonthmorning();
|
|
|
- dataQueryWrapper.ge("create_date", timesMonthmorning);
|
|
|
- return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(dataQueryWrapper));
|
|
|
+ electricityQueryWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ return new Result(ResultCode.SUCCESS, dataMapper.listDayElectricity(electricityQueryWrapper));
|
|
|
}
|
|
|
//本周
|
|
|
if ("1".equals(timeType)) {
|
|
|
Calendar calendar = Calendar.getInstance();
|
|
|
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
|
|
|
- dataQueryWrapper.ge("create_date", calendar.getTime());
|
|
|
- List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(dataQueryWrapper);
|
|
|
+ electricityQueryWrapper.ge("create_date", calendar.getTime());
|
|
|
+ List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(electricityQueryWrapper);
|
|
|
return new Result(ResultCode.SUCCESS, energyElectricityDataVos);
|
|
|
}
|
|
|
}
|
|
@@ -224,98 +241,88 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
if (timeType == null || timeType == "") {
|
|
|
timeType = "3";
|
|
|
}
|
|
|
- QueryWrapper<BasePigpen> basePigpenQueryWrapper = new QueryWrapper<>();
|
|
|
- basePigpenQueryWrapper.eq("farm_id", farmId);
|
|
|
JSONArray jsonArray = new JSONArray();
|
|
|
- basePigpenQueryWrapper.eq("parent_id", 0);
|
|
|
- List<BasePigpen> basePigpens = basePigpenMapper.selectList(basePigpenQueryWrapper);//得到所有的栋舍
|
|
|
- for (BasePigpen basePigpen : basePigpens) {
|
|
|
- QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.eq("farm_id", farmId).eq("parent_id", basePigpen.getId()).eq("f_type", 2);
|
|
|
- List<BasePigpen> pigpens = basePigpenMapper.selectList(queryWrapper);//得到所有的楼层
|
|
|
- Float value = 0.00f;
|
|
|
- for (BasePigpen pigpen : pigpens) {
|
|
|
- QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
|
|
|
- queryWrapper1.like("other2", pigpen.getId()).eq("farm_id", farmId);
|
|
|
- List<BasePigpen> basePigpens1 = basePigpenMapper.selectList(queryWrapper1);
|
|
|
- List<Integer> idList = new ArrayList<>();
|
|
|
- basePigpens1.forEach(item -> {
|
|
|
- idList.add(item.getId());
|
|
|
- });//某一层所有单元的id
|
|
|
- QueryWrapper<EnergyData> dataQueryWrapper = new QueryWrapper<>();
|
|
|
- if (ObjectUtil.isNotEmpty(idList)) {
|
|
|
- dataQueryWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
- } else {
|
|
|
- dataQueryWrapper.eq("farm_id", farmId);
|
|
|
- }
|
|
|
-
|
|
|
|
|
|
+ QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("farm_id", farmId).eq("f_type", 2);
|
|
|
+ List<BasePigpen> pigpens = basePigpenMapper.selectList(queryWrapper);//得到所有的楼层
|
|
|
+ for (BasePigpen pigpen : pigpens) {
|
|
|
+ Float value = 0.00f;
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
|
|
|
+ queryWrapper1.like("other2", pigpen.getId()).eq("farm_id", farmId).ne("id", pigpen.getId());
|
|
|
+ List<BasePigpen> basePigpens1 = basePigpenMapper.selectList(queryWrapper1);
|
|
|
+ List<Integer> idList = new ArrayList<>();
|
|
|
+ basePigpens1.forEach(item -> {
|
|
|
+ idList.add(item.getId());
|
|
|
+ });//某一层所有单元的id
|
|
|
+
|
|
|
+ QueryWrapper<EnergyWater> waterWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> gasWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyElectricity> electricityWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyData> feedWrapper = new QueryWrapper<>();
|
|
|
+ if (idList.size() != 0) {
|
|
|
+ waterWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ gasWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ electricityWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
+ feedWrapper.eq("farm_id", farmId).in("unit_id", idList);
|
|
|
if ("4".equals(timeType)) {
|
|
|
//自定义
|
|
|
startTime = startTime + " 00:00:00";
|
|
|
endTime = endTime + " 23:59:59";
|
|
|
- dataQueryWrapper.between("create_date", startTime, endTime);
|
|
|
+ waterWrapper.between("create_date", startTime, endTime);
|
|
|
+ gasWrapper.between("create_date", startTime, endTime);
|
|
|
+ electricityWrapper.between("create_date", startTime, endTime);
|
|
|
+ feedWrapper.between("create_date", startTime, endTime);
|
|
|
} else if ("3".equals(timeType)) {
|
|
|
//本年
|
|
|
DateTime dateTime = DateUtil.beginOfYear(new Date());
|
|
|
- dataQueryWrapper.ge("create_date", dateTime);
|
|
|
+ waterWrapper.ge("create_date", dateTime);
|
|
|
+ gasWrapper.ge("create_date", dateTime);
|
|
|
+ electricityWrapper.ge("create_date", dateTime);
|
|
|
+ feedWrapper.ge("create_date", dateTime);
|
|
|
} else if ("2".equals(timeType)) {
|
|
|
//本月
|
|
|
Date timesMonthmorning = DataUill.getTimesMonthmorning();
|
|
|
- dataQueryWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ waterWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ gasWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ electricityWrapper.ge("create_date", timesMonthmorning);
|
|
|
+ feedWrapper.ge("create_date", timesMonthmorning);
|
|
|
} else if ("1".equals(timeType)) {
|
|
|
//本周
|
|
|
Calendar calendar = Calendar.getInstance();
|
|
|
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
|
|
|
- dataQueryWrapper.ge("create_date", calendar.getTime());
|
|
|
+ waterWrapper.ge("create_date", calendar.getTime());
|
|
|
+ gasWrapper.ge("create_date", calendar.getTime());
|
|
|
+ electricityWrapper.ge("create_date", calendar.getTime());
|
|
|
+ feedWrapper.ge("create_date", calendar.getTime());
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- dataQueryWrapper.select(
|
|
|
- "IFNULL(SUM(water_value),0) waterValue,IFNULL(SUM(gas_value),0) gasValue" +
|
|
|
- ",IFNULL(SUM(electricity_value),0) electricityValue" +
|
|
|
- ",IFNULL(SUM(feed_value),0) feedValue "
|
|
|
- );
|
|
|
- EnergyData energyData = dataMapper.selectOne(dataQueryWrapper);
|
|
|
- JSONObject jsonObject = new JSONObject();
|
|
|
-
|
|
|
-
|
|
|
+ waterWrapper.select(" IFNULL(SUM(water_value),0) waterValue ");
|
|
|
+ gasWrapper.select(" IFNULL(SUM(gas_value),0) gasValue ");
|
|
|
+ electricityWrapper.select(" IFNULL(SUM(electricity_value),0) electricityValue ");
|
|
|
+ feedWrapper.select(" IFNULL(SUM(feed_value),0) feedValue ");
|
|
|
if ("1".equals(dataType)) {
|
|
|
- if (Float.parseFloat(energyData.getWaterValue()) != 0.0f) {
|
|
|
- value = value + Float.parseFloat(energyData.getWaterValue());
|
|
|
- jsonObject.put("value", value);
|
|
|
- } else {
|
|
|
- jsonObject.put("value", 0);
|
|
|
- }
|
|
|
+ value = Float.parseFloat(waterMapper.selectOne(waterWrapper).getWaterValue());
|
|
|
+ jsonObject.put("value", value);
|
|
|
}
|
|
|
if ("2".equals(dataType)) {
|
|
|
- if (Float.parseFloat(energyData.getElectricityValue()) != 0.0f) {
|
|
|
- value = value + Float.parseFloat(energyData.getElectricityValue());
|
|
|
- jsonObject.put("value", value);
|
|
|
- } else {
|
|
|
- jsonObject.put("value", 0);
|
|
|
- }
|
|
|
+ value = Float.parseFloat(electricityMapper.selectOne(electricityWrapper).getElectricityValue());
|
|
|
+ jsonObject.put("value", value);
|
|
|
}
|
|
|
if ("3".equals(dataType)) {
|
|
|
- if (Float.parseFloat(energyData.getFeedValue()) != 0.0f) {
|
|
|
- value = value + Float.parseFloat(energyData.getFeedValue());
|
|
|
- jsonObject.put("value", value);
|
|
|
- } else {
|
|
|
- jsonObject.put("value", 0);
|
|
|
- }
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(feedWrapper).getFeedValue());
|
|
|
+ jsonObject.put("value", value);
|
|
|
}
|
|
|
if ("4".equals(dataType)) {
|
|
|
- if (Float.parseFloat(energyData.getGasValue()) != 0.0f) {
|
|
|
- value = value + Float.parseFloat(energyData.getGasValue());
|
|
|
- jsonObject.put("value", value);
|
|
|
- } else {
|
|
|
- jsonObject.put("value", 0);
|
|
|
- }
|
|
|
+ value = Float.parseFloat(dataMapper.selectOne(gasWrapper).getGasValue());
|
|
|
+ jsonObject.put("value", value);
|
|
|
}
|
|
|
- jsonObject.put("buildName", pigpen.getBuildName());
|
|
|
- jsonArray.add(jsonObject);
|
|
|
- value = 0.00f;
|
|
|
+ } else {
|
|
|
+ jsonObject.put("value", 0);
|
|
|
}
|
|
|
+ jsonObject.put("buildName", pigpen.getBuildName());
|
|
|
+ jsonArray.add(jsonObject);
|
|
|
}
|
|
|
|
|
|
JSONArray arraySort = jsonArraySort(jsonArray, "value", true);
|
|
@@ -325,12 +332,14 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
|
|
|
@Override
|
|
|
public Result listDataScreen(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
|
|
|
String farmId = paramsMap.get("farmId");
|
|
|
- QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
|
|
|
+ QueryWrapper<EnergyWater> queryWrapper = new QueryWrapper<>();
|
|
|
queryWrapper.eq("farm_id", farmId);
|
|
|
+ QueryWrapper<EnergyElectricity> queryWrapper2 = new QueryWrapper<>();
|
|
|
+ queryWrapper2.eq("farm_id", farmId);
|
|
|
// List<EnergyAllDataVo> energyGasDataVos = dataMapper.listDayGas(queryWrapper);
|
|
|
// List<EnergyAllDataVo> energyFeedDataVos = dataMapper.listDayFeed(queryWrapper);
|
|
|
List<EnergyAllDataVo> energyWaterDataVos = dataMapper.listDayWater(queryWrapper);
|
|
|
- List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper);
|
|
|
+ List<EnergyAllDataVo> energyElectricityDataVos = dataMapper.listDayElectricity(queryWrapper2);
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
|
// jsonObject.put("gas", energyGasDataVos);
|
|
|
jsonObject.put("water", energyWaterDataVos);
|