|
@@ -5,16 +5,22 @@ 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.EnvWaterDay;
|
|
|
import com.huimv.env.common.entity.EnvWaterMonth;
|
|
|
+import com.huimv.env.common.mapper.EnvWaterDayMapper;
|
|
|
import com.huimv.env.common.mapper.EnvWaterMonthMapper;
|
|
|
import com.huimv.env.common.service.EnvWaterMonthService;
|
|
|
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;
|
|
|
|
|
@@ -30,6 +36,8 @@ import java.util.Map;
|
|
|
public class EnvWaterMonthServiceImpl extends ServiceImpl<EnvWaterMonthMapper, EnvWaterMonth> implements EnvWaterMonthService {
|
|
|
@Resource
|
|
|
private EnvWaterMonthMapper envWaterMonthMapper;
|
|
|
+ @Resource
|
|
|
+ private EnvWaterDayMapper envWaterDayMapper;
|
|
|
|
|
|
@Override
|
|
|
public EnvWaterMonth getMonthWaterConsumption(String farmCode, String deviceCode, String sensorSn, String year, String month) {
|
|
@@ -43,19 +51,59 @@ public class EnvWaterMonthServiceImpl extends ServiceImpl<EnvWaterMonthMapper, E
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Result getMonthWater(Map<String, String> paramsMap) {
|
|
|
+ public Result getDayAndMonthWaterList(Map<String, String> paramsMap) throws ParseException {
|
|
|
String farmCode = paramsMap.get("farmCode");
|
|
|
String months = paramsMap.get("months");
|
|
|
+ String days = paramsMap.get("days");
|
|
|
+ if(StringUtils.isNotBlank(months) && StringUtils.isBlank(days)){
|
|
|
+ //查看12个月用水记录
|
|
|
+ return new Result(ResultCode.SUCCESS,_getMonthWaterList(farmCode,months));
|
|
|
+ }else if(StringUtils.isBlank(months) && StringUtils.isNotBlank(days)){
|
|
|
+ //查看30天用水记录
|
|
|
+ return new Result(ResultCode.SUCCESS,_getDayWaterList(farmCode,days));
|
|
|
+ }else{
|
|
|
+ System.out.println("months="+months);
|
|
|
+ System.out.println("days="+days);
|
|
|
+ return new Result(ResultCode.FAIL,"months和days两个参数只能二选一。");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //查看30天用水记录
|
|
|
+ private Object _getDayWaterList(String farmCode, String days) throws ParseException {
|
|
|
+ QueryWrapper<EnvWaterDay> queryWrapper = new QueryWrapper();
|
|
|
+ queryWrapper.eq("farm_code", farmCode);
|
|
|
+ queryWrapper.orderByDesc("add_date");
|
|
|
+ queryWrapper.last("LIMIT "+days);
|
|
|
+ List<EnvWaterDay> envWaterDayList = envWaterDayMapper.selectList(queryWrapper);
|
|
|
+ List dayList = new ArrayList();
|
|
|
+ DateUtil dateUtil = new DateUtil();
|
|
|
+ for(int a=envWaterDayList.size()-1;a>=0;a--){
|
|
|
+ EnvWaterDay envWaterDay = envWaterDayList.get(a);
|
|
|
+ Map<String,Object> waterMap = new HashMap();
|
|
|
+ waterMap.put("datetime",dateUtil.formatDateText(envWaterDay.getAddDate()));
|
|
|
+ waterMap.put("water",envWaterDay.getDayWater());
|
|
|
+ dayList.add(waterMap);
|
|
|
+ }
|
|
|
+ return dayList;
|
|
|
+ }
|
|
|
+
|
|
|
+ //查看12个月用水记录
|
|
|
+ private Object _getMonthWaterList(String farmCode, String months) {
|
|
|
QueryWrapper<EnvWaterMonth> queryWrapper = new QueryWrapper();
|
|
|
queryWrapper.eq("farm_code", farmCode);
|
|
|
queryWrapper.orderByDesc("year").orderByDesc("month");
|
|
|
queryWrapper.last("LIMIT "+months);
|
|
|
+// List<Map<String,Object>> envWaterMonthList = envWaterMonthMapper.getWaterList();
|
|
|
List<EnvWaterMonth> envWaterMonthList = envWaterMonthMapper.selectList(queryWrapper);
|
|
|
List monthList = new ArrayList();
|
|
|
for(int a=envWaterMonthList.size()-1;a>=0;a--){
|
|
|
- monthList.add(envWaterMonthList.get(a));
|
|
|
+ EnvWaterMonth envWaterMonth = envWaterMonthList.get(a);
|
|
|
+ Map<String,Object> waterMonthMap = new HashMap<>();
|
|
|
+ waterMonthMap.put("datetime",envWaterMonth.getYear()+"-"+envWaterMonth.getMonth());
|
|
|
+ waterMonthMap.put("water",envWaterMonth.getMonthWater());
|
|
|
+ monthList.add(waterMonthMap);
|
|
|
}
|
|
|
- return new Result(ResultCode.SUCCESS,monthList);
|
|
|
+ return monthList;
|
|
|
}
|
|
|
|
|
|
@Override
|