|
@@ -1,29 +1,35 @@
|
|
|
package com.huimv.environ.eco.service.impl;
|
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
+import com.huimv.common.utils.DataUill;
|
|
|
import com.huimv.common.utils.Result;
|
|
|
import com.huimv.common.utils.ResultCode;
|
|
|
-import com.huimv.environ.eco.entity.BaseRoom;
|
|
|
import com.huimv.environ.eco.entity.EcoDevice;
|
|
|
import com.huimv.environ.eco.entity.EcoDeviceFlow;
|
|
|
-import com.huimv.environ.eco.entity.dto.LastFlowDto;
|
|
|
-import com.huimv.environ.eco.entity.eggvo.EcoDeviceDto;
|
|
|
+import com.huimv.environ.eco.entity.dto.EcoDeviceDto;
|
|
|
import com.huimv.environ.eco.mapper.EcoDeviceFlowMapper;
|
|
|
import com.huimv.environ.eco.mapper.EcoDeviceMapper;
|
|
|
import com.huimv.environ.eco.service.EcoDeviceFlowService;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
-import freemarker.template.utility.StringUtil;
|
|
|
-import org.aspectj.weaver.ast.Var;
|
|
|
+import com.huimv.environ.env.utils.DateUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
+import java.text.ParseException;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
|
- * 服务实现类
|
|
|
+ * 服务实现类
|
|
|
* </p>
|
|
|
*
|
|
|
* @author zn
|
|
@@ -35,11 +41,85 @@ public class EcoDeviceFlowServiceImpl extends ServiceImpl<EcoDeviceFlowMapper, E
|
|
|
@Autowired
|
|
|
private EcoDeviceFlowMapper ecoDeviceFlowMapper;
|
|
|
@Autowired
|
|
|
- private EcoDeviceMapper ecoDeviceMapper;
|
|
|
+ private static final String globalFarmId = "331023001";
|
|
|
|
|
|
@Override
|
|
|
public Result getLastFlow(HttpServletRequest request) {
|
|
|
String farmId = request.getHeader("farmId");
|
|
|
- return new Result(ResultCode.SUCCESS,ecoDeviceFlowMapper.getLastFlow(farmId));
|
|
|
+ return new Result(ResultCode.SUCCESS, ecoDeviceFlowMapper.getLastFlow(farmId));
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void save(JSONObject dataJo) throws ParseException {
|
|
|
+ DateUtil dateUtil = new DateUtil();
|
|
|
+ EcoDeviceFlow ecoDeviceFlow = new EcoDeviceFlow();
|
|
|
+ ecoDeviceFlow.setDeviceCode(dataJo.getString("deviceKey"));
|
|
|
+ ecoDeviceFlow.setDeviceName(dataJo.getString("deviceName"));
|
|
|
+ ecoDeviceFlow.setDeviceStatus(Integer.parseInt(dataJo.getString("deviceStatus")));
|
|
|
+ ecoDeviceFlow.setDeviceOpen(dataJo.getBoolean("deviceDisabled"));
|
|
|
+ //温/湿度数据
|
|
|
+ JSONArray realTimeDataJa = dataJo.getJSONArray("realTimeData");
|
|
|
+ JSONObject id1Jo = realTimeDataJa.getJSONObject(0);
|
|
|
+ ecoDeviceFlow.setId1Name(id1Jo.getString("dataName"));
|
|
|
+ //
|
|
|
+ String id1Value = id1Jo.getString("dataValue");
|
|
|
+ if (StringUtils.isBlank(id1Value)) {
|
|
|
+ id1Value = "0";
|
|
|
+ }
|
|
|
+ ecoDeviceFlow.setId1Value(id1Value);
|
|
|
+ ecoDeviceFlow.setId1AlarmStatus(id1Jo.getBoolean("isAlarm"));
|
|
|
+ ecoDeviceFlow.setId1AlarmMsg(id1Jo.getString("alarmMsg"));
|
|
|
+ JSONObject id2Jo = realTimeDataJa.getJSONObject(1);
|
|
|
+ ecoDeviceFlow.setId2Name(id2Jo.getString("dataName"));
|
|
|
+ String id2Value = id2Jo.getString("dataValue");
|
|
|
+ //
|
|
|
+ if (StringUtils.isBlank(id2Value)) {
|
|
|
+ id2Value = "0";
|
|
|
+ }
|
|
|
+ ecoDeviceFlow.setId2Value(id2Value);
|
|
|
+ ecoDeviceFlow.setId2AlarmStatus(id2Jo.getBoolean("isAlarm"));
|
|
|
+ ecoDeviceFlow.setId2AlarmMsg(id2Jo.getString("alarmMsg"));
|
|
|
+ ecoDeviceFlow.setAddTime(dateUtil.getTodayDateTime());
|
|
|
+ ecoDeviceFlowMapper.insert(ecoDeviceFlow);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Result listByRoom(HttpServletRequest request, Map<String, String> paramsMap) throws ParseException {
|
|
|
+ String farmId = request.getHeader("farmId");
|
|
|
+ String unitId = paramsMap.get("unitId");
|
|
|
+ String startDate = paramsMap.get("startDate");
|
|
|
+ String endDate = paramsMap.get("endDate");
|
|
|
+ String type = paramsMap.get("type");
|
|
|
+
|
|
|
+ List<EcoDeviceDto> ecoDeviceDtos = null;
|
|
|
+ //默认显示
|
|
|
+ if (type==null) {
|
|
|
+ unitId = "77";
|
|
|
+ DateUtil dateUtil = new DateUtil();
|
|
|
+ startDate = dateUtil.getTodayDate().toString();
|
|
|
+ ecoDeviceDtos = ecoDeviceFlowMapper.listDayDevice(farmId, unitId, startDate);
|
|
|
+ } else {
|
|
|
+
|
|
|
+ //自定义查询
|
|
|
+ if ("4".equals(type)) {
|
|
|
+ ecoDeviceDtos = ecoDeviceFlowMapper.listDevice(farmId, unitId, startDate, endDate);
|
|
|
+ }
|
|
|
+ //今日查询
|
|
|
+ else if ("3".equals(type)) {
|
|
|
+ ecoDeviceDtos = ecoDeviceFlowMapper.listDayDevice(farmId, unitId, startDate);
|
|
|
+ }
|
|
|
+ //本周查询
|
|
|
+ else if ("2".equals(type)) {
|
|
|
+ ecoDeviceDtos = ecoDeviceFlowMapper.listWeekDevice(farmId, unitId);
|
|
|
+ }
|
|
|
+ //本月查询
|
|
|
+ else if ("1".equals(type)) {
|
|
|
+ ecoDeviceDtos = ecoDeviceFlowMapper.listMonthDevice(farmId, unitId);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ return new Result(ResultCode.SUCCESS, ecoDeviceDtos);
|
|
|
+ }
|
|
|
+
|
|
|
}
|