|
@@ -5,17 +5,23 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.huimv.common.utils.Result;
|
|
|
import com.huimv.common.utils.ResultCode;
|
|
|
import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
|
|
|
+import com.huimv.env.common.entity.EnvElectricityDay;
|
|
|
import com.huimv.env.common.entity.EnvElectricityMonth;
|
|
|
import com.huimv.env.common.entity.EnvWaterMonth;
|
|
|
+import com.huimv.env.common.mapper.EnvElectricityDayMapper;
|
|
|
import com.huimv.env.common.mapper.EnvElectricityMonthMapper;
|
|
|
import com.huimv.env.common.service.EnvElectricityMonthService;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.huimv.env.common.utils.DateUtil;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.sql.Timestamp;
|
|
|
+import java.text.ParseException;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
@@ -31,6 +37,8 @@ import java.util.Map;
|
|
|
public class EnvElectricityMonthServiceImpl extends ServiceImpl<EnvElectricityMonthMapper, EnvElectricityMonth> implements EnvElectricityMonthService {
|
|
|
@Resource
|
|
|
private EnvElectricityMonthMapper envElectricityMonthMapper;
|
|
|
+ @Resource
|
|
|
+ private EnvElectricityDayMapper envElectricityDayMapper;
|
|
|
|
|
|
@Override
|
|
|
public EnvElectricityMonth getMonthElectricityConsumption(String farmCode, String deviceCode, String sensorSn, String year, String month) {
|
|
@@ -80,7 +88,43 @@ public class EnvElectricityMonthServiceImpl extends ServiceImpl<EnvElectricityMo
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Result getDayAndMonthElectricity(Map<String, String> paramsMap) {
|
|
|
+ public Result getDayAndMonthElectricityList(Map<String, String> paramsMap) throws ParseException {
|
|
|
+ String months = paramsMap.get("months");
|
|
|
+ String days = paramsMap.get("days");
|
|
|
+ if(StringUtils.isNotBlank(months) && StringUtils.isBlank(days)){
|
|
|
+ //月份历史用电列表
|
|
|
+ return new Result(ResultCode.SUCCESS,_getMonthElectricityList(paramsMap));
|
|
|
+ }else if(StringUtils.isBlank(months) && StringUtils.isNotBlank(days)){
|
|
|
+ //天数历史用电列表
|
|
|
+ return new Result(ResultCode.SUCCESS,_getDayElectricityList(paramsMap));
|
|
|
+ }else{
|
|
|
+ return new Result(ResultCode.FAIL,"months和days参数异常,只能二选一。");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //天数历史用电列表
|
|
|
+ private Object _getDayElectricityList(Map<String, String> paramsMap) throws ParseException {
|
|
|
+ String farmCode = paramsMap.get("farmCode");
|
|
|
+ String days = paramsMap.get("days");
|
|
|
+ QueryWrapper<EnvElectricityDay> queryWrapper = new QueryWrapper();
|
|
|
+ queryWrapper.eq("farm_code", farmCode);
|
|
|
+ queryWrapper.orderByDesc("add_date");
|
|
|
+ queryWrapper.last("LIMIT "+days);
|
|
|
+ List<EnvElectricityDay> envElectricityDayList = envElectricityDayMapper.selectList(queryWrapper);
|
|
|
+ List monthList = new ArrayList();
|
|
|
+ DateUtil dateUtil = new DateUtil();
|
|
|
+ for(int a=envElectricityDayList.size()-1;a>=0;a--){
|
|
|
+ EnvElectricityDay envElectricityDay = envElectricityDayList.get(a);
|
|
|
+ Map<String,Object> map = new HashMap<>();
|
|
|
+ map.put("datetime", dateUtil.formatDateText(envElectricityDay.getAddDate()));
|
|
|
+ map.put("electricity",envElectricityDay.getDayElectricity());
|
|
|
+ monthList.add(map);
|
|
|
+ }
|
|
|
+ return new Result(ResultCode.SUCCESS,monthList);
|
|
|
+ }
|
|
|
+
|
|
|
+ //月份历史用电列表
|
|
|
+ private Object _getMonthElectricityList(Map<String, String> paramsMap) {
|
|
|
String farmCode = paramsMap.get("farmCode");
|
|
|
String months = paramsMap.get("months");
|
|
|
QueryWrapper<EnvElectricityMonth> queryWrapper = new QueryWrapper();
|
|
@@ -90,7 +134,11 @@ public class EnvElectricityMonthServiceImpl extends ServiceImpl<EnvElectricityMo
|
|
|
List<EnvElectricityMonth> envElectricityMonthList = envElectricityMonthMapper.selectList(queryWrapper);
|
|
|
List monthList = new ArrayList();
|
|
|
for(int a=envElectricityMonthList.size()-1;a>=0;a--){
|
|
|
- monthList.add(envElectricityMonthList.get(a));
|
|
|
+ EnvElectricityMonth envElectricityMonth = envElectricityMonthList.get(a);
|
|
|
+ Map<String,Object> map = new HashMap<>();
|
|
|
+ map.put("datetime",envElectricityMonth.getYear()+"-"+envElectricityMonth.getMonth());
|
|
|
+ map.put("electricity",envElectricityMonth.getMonthElectricity());
|
|
|
+ monthList.add(map);
|
|
|
}
|
|
|
return new Result(ResultCode.SUCCESS,monthList);
|
|
|
}
|