| | |
| | | import com.moral.constant.Constants; |
| | | import com.moral.constant.ResponseCodeEnum; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.data.redis.core.RedisTemplate; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.web.context.request.RequestContextHolder; |
| | |
| | | @Autowired |
| | | LogUtils logUtils; |
| | | |
| | | @Autowired |
| | | RedisTemplate redisTemplate; |
| | | |
| | | @Override |
| | | @Transactional |
| | | public Map<String, Object> insertOne(DeviceAdjustValue deviceAdjustValue) { |
| | |
| | | resultMap.put("msg",ResponseCodeEnum.SENSOR_IS_NOT_EXIST.getMsg()); |
| | | return resultMap; |
| | | } |
| | | deviceAdjustValueMapper.insert(deviceAdjustValue); |
| | | //deviceAdjustValueMapper.insert(deviceAdjustValue); |
| | | //操作插入日志 |
| | | HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); |
| | | String content = "添加了"+deviceAdjustValue.getMac()+"设备"+deviceAdjustValue.getSensorCode()+"传感器"+deviceAdjustValue.getStartTime()+"到"+deviceAdjustValue.getEndTime()+"的校准信息:"+";"; |
| | | logUtils.saveOperationForManage(request,content,Constants.INSERT_OPERATE_TYPE); |
| | | //logUtils.saveOperationForManage(request,content,Constants.INSERT_OPERATE_TYPE); |
| | | //刷新缓存 |
| | | refreshCache(deviceAdjustValue.getMac()); |
| | | resultMap.put("code", ResponseCodeEnum.SUCCESS.getCode()); |
| | | resultMap.put("msg", ResponseCodeEnum.SUCCESS.getMsg()); |
| | | return resultMap; |
| | |
| | | } |
| | | } |
| | | logUtils.saveOperationForManage(request,content,Constants.UPDATE_OPERATE_TYPE); |
| | | //刷新缓存 |
| | | refreshCache(deviceAdjustValueOld.getMac()); |
| | | resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode()); |
| | | resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg()); |
| | | return resultMap; |
| | |
| | | HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); |
| | | String content = "删除了"+deviceAdjustValue.getMac()+"设备"+deviceAdjustValue.getSensorCode()+"传感器"+deviceAdjustValue.getStartTime()+"到"+deviceAdjustValue.getEndTime()+"的校准信息:"+";"; |
| | | logUtils.saveOperationForManage(request,content,Constants.DELETE_OPERATE_TYPE); |
| | | //刷新缓存 |
| | | refreshCache(deviceAdjustValue.getMac()); |
| | | resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode()); |
| | | resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg()); |
| | | return resultMap; |
| | |
| | | return resultMap; |
| | | } |
| | | |
| | | private Map<String,Object> getDeviceAdjustValueFromDB(String mac){ |
| | | QueryWrapper<DeviceAdjustValue> wapper_redis = new QueryWrapper<>(); |
| | | wapper_redis.eq("mac",mac); |
| | | wapper_redis.eq("is_delete",Constants.NOT_DELETE); |
| | | List<DeviceAdjustValue> deviceAdjustValueList = deviceAdjustValueMapper.selectList(wapper_redis); |
| | | if (deviceAdjustValueList.size()==0){ |
| | | return null; |
| | | } |
| | | Map<String, Object> deviceAdjustValueMap = new HashMap<>(); |
| | | for (DeviceAdjustValue deviceAdjustValue:deviceAdjustValueList) { |
| | | String sensor_code = deviceAdjustValue.getSensorCode(); |
| | | List<DeviceAdjustValue> timeSlotValueList = new ArrayList<>(); |
| | | for (DeviceAdjustValue deviceAdjustValueIn:deviceAdjustValueList) { |
| | | if (deviceAdjustValueIn.getSensorCode().equals(sensor_code)){ |
| | | Map<String, Object> timeSlot_value = new HashMap<>(); |
| | | timeSlot_value.put("start_time",deviceAdjustValue.getStartTime()); |
| | | timeSlot_value.put("end_time",deviceAdjustValue.getEndTime()); |
| | | timeSlot_value.put("value",deviceAdjustValue.getValue()); |
| | | timeSlotValueList.add(deviceAdjustValueIn); |
| | | } |
| | | } |
| | | deviceAdjustValueMap.put(sensor_code,timeSlotValueList); |
| | | } |
| | | return deviceAdjustValueMap; |
| | | } |
| | | |
| | | private void refreshCache(String mac){ |
| | | Map<String, Object> deviceAdjustValueMap = getDeviceAdjustValueFromDB(mac); |
| | | refreshCache(deviceAdjustValueMap,mac); |
| | | } |
| | | |
| | | private void refreshCache(Map<String,Object> deviceAdjustValueMap,String mac){ |
| | | //删除缓存 |
| | | redisTemplate.delete("adjust_"+mac); |
| | | //添加缓存 |
| | | redisTemplate.opsForHash().putAll("adjust_"+mac,deviceAdjustValueMap); |
| | | } |
| | | |
| | | } |