xufenglei
2018-07-06 d6a0ac523af2db9216d30fabf1063c095c5b41e1
src/main/java/com/moral/service/impl/HistoryServiceImpl.java
@@ -18,7 +18,10 @@
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.moral.common.util.ValidateUtil;
import com.moral.entity.Device;
import com.moral.entity.Profession;
import com.moral.entity.Sensor;
import com.moral.mapper.DeviceMapper;
@@ -215,4 +218,30 @@
      }
      return result;
   }
    @Override
   public List<Map<String, Object>> getSensorsDataByDevice(Map<String, Object> parameters) {
       List<Map<String, Object>> sensors = sensorMapper.getSensorsByDeviceVersionId(parameters);
       parameters.put("size", 1);
       List<Map<String, Object>> values = historyMapper.getValueByMacAndSize(parameters);
       JSONObject map = JSON.parseObject(values.get(0).get("value").toString());
       Device device = deviceMapper.selectByPrimaryKey(Integer.valueOf((String) parameters.get("deviceId")));
       for (Map<String, Object> sensor : sensors) {
          sensor.put("value", map.remove(sensor.get("sensor_key")));
          sensor.put("state", device.getState());
       }
      return sensors;
   }
   @Override
   public List<Map<String, Object>> getSensorDataBySensorKey(Map<String, Object> parameters) {
      parameters.put("size", Integer.valueOf(parameters.remove("size").toString()));
      List<Map<String, Object>> values = historyMapper.getValueByMacAndSize(parameters);
      for (Map<String, Object> value : values) {
         JSONObject json = JSON.parseObject(value.remove("value").toString());
         value.put("value", json.get(parameters.get("sensorKey")));
      }
      return values;
   }
}