| 
					
				 | 
			
			
				@@ -110,6 +110,7 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	@Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	public synchronized boolean create(Device device) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		redisCatchStorage.updateDevice(device); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return deviceMapper.add(device) > 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -128,11 +129,14 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Device deviceByDeviceId = deviceMapper.getDeviceByDeviceId(device.getDeviceId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if (deviceByDeviceId == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			device.setCreateTime(now); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			redisCatchStorage.updateDevice(device); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			return deviceMapper.add(device) > 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		}else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			redisCatchStorage.updateDevice(device); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			return deviceMapper.update(device) > 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	@Override 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -185,11 +189,32 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			int limitCount = 300; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if (addChannels.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				deviceChannelMapper.batchAdd(addChannels); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if (addChannels.size() > limitCount) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					for (int i = 0; i < addChannels.size(); i += limitCount) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						int toIndex = i + limitCount; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						if (i + limitCount > addChannels.size()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							toIndex = addChannels.size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						deviceChannelMapper.batchAdd(addChannels.subList(i, toIndex)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					deviceChannelMapper.batchAdd(addChannels); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if (updateChannels.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				deviceChannelMapper.batchUpdate(updateChannels); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if (updateChannels.size() > limitCount) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					for (int i = 0; i < updateChannels.size(); i += limitCount) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						int toIndex = i + limitCount; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						if (i + limitCount > updateChannels.size()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							toIndex = updateChannels.size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						deviceChannelMapper.batchAdd(updateChannels.subList(i, toIndex)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					deviceChannelMapper.batchUpdate(updateChannels); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -322,6 +347,7 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		device.setOnline(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		logger.info("更新设备在线: " + deviceId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		redisCatchStorage.updateDevice(device); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return deviceMapper.update(device) > 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -337,6 +363,7 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Device device = deviceMapper.getDeviceByDeviceId(deviceId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if (device == null) return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		device.setOnline(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		redisCatchStorage.updateDevice(device); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return deviceMapper.update(device) > 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |