372 lines
10 KiB
Java
372 lines
10 KiB
Java
/*
|
|
* To change this license header, choose License Headers in Project Properties.
|
|
* To change this template file, choose Tools | Templates
|
|
* and open the template in the editor.
|
|
*/
|
|
package com.ifish.helper;
|
|
|
|
import com.ifish.bean.Tbl_Device;
|
|
import com.ifish.bean.Tbl_Device_Statistics;
|
|
import com.ifish.bean.Tbl_Device_User;
|
|
import com.ifish.bean.Tbl_Live_Room;
|
|
import com.ifish.bean.Tbl_User;
|
|
import com.ifish.util.RedisKey;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
/**
|
|
*
|
|
* @author Administrator
|
|
*/
|
|
@Component
|
|
public class RedisKeyHelper implements RedisKeyHelperI {
|
|
|
|
@Autowired
|
|
private RedisHelperI redisHelperI;
|
|
|
|
/**
|
|
* 根据phoneNumber获取Tbl_User用户信息的Redis缓存key键值
|
|
*
|
|
* @param userId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_UserRedisKeyByPhoneNumber(String phoneNumber) {
|
|
return RedisKey.USER_PHONE + phoneNumber;
|
|
}
|
|
|
|
/**
|
|
* 根据token获取tbl_user用户信息的redis缓存key键值
|
|
*
|
|
* @param token
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_UserRedisKeyByToken(String token) {
|
|
return RedisKey.USER_TOKEN + token;
|
|
}
|
|
|
|
/**
|
|
* 根据Email获取Tbl_User用户信息的Redis缓存key键值
|
|
*
|
|
* @param userId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_UserRedisKeyByEmail(String email) {
|
|
return RedisKey.USER_EMAIL + email;
|
|
}
|
|
|
|
/**
|
|
* 根据userId获取Tbl_User用户信息的Redis缓存key键值
|
|
*
|
|
* @param userId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_UserRedisKeyByUserId(Integer userId) {
|
|
return RedisKey.USER_ID_KEY + userId;
|
|
}
|
|
|
|
/**
|
|
* 根据userName获取Tbl_Security_User管理用户的redis缓存key键值
|
|
*
|
|
* @param userName
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Security_UserRedisKeyByUserName(String userName) {
|
|
return RedisKey.SECURITY_USER + userName;
|
|
}
|
|
|
|
/**
|
|
* 根据mac地址获取Tbl_Device的redis缓存key键值
|
|
*
|
|
* @param macAddress
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_DeviceRedisKeyByMacAddress(String macAddress) {
|
|
return RedisKey.DEVICE_KEY_MACADDRESS + macAddress;
|
|
}
|
|
|
|
/**
|
|
* 根据摄像头Id获取Tbl_Device的redis缓存key键值
|
|
*
|
|
* @param macAddress
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_CameraRedisKeyByCameraId(String CameraId) {
|
|
return RedisKey.DEVICE_KEY_CAMERAID + CameraId;
|
|
}
|
|
|
|
/**
|
|
* 根据Id获取Tbl_Device的redis缓存key键值
|
|
*
|
|
* @param macAddress
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_DeviceRedisKeyByDeviceId(Integer deviceId) {
|
|
return RedisKey.DEVICE_KEY_DEVICEID + deviceId;
|
|
}
|
|
|
|
/**
|
|
* 根据设备ID和用户ID获取Tbl_Device_User的redis缓存key键值
|
|
*
|
|
* @param userId
|
|
* @param deviceId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Device_UserRedisKeyByDeviceIdAndUserId(Integer userId, Integer deviceId) {
|
|
return RedisKey.DEVICE_USER_DEVICEID_AND_USERID + "u_" + userId + "_d_" + deviceId;
|
|
}
|
|
|
|
/**
|
|
* 根据设备ID获取Tbl_Device_User(列表)的redis缓存key键值
|
|
*
|
|
* @param userId
|
|
* @param deviceId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getListTbl_Device_UserKeyByDeviceId(Integer deviceId) {
|
|
return RedisKey.DEVICE_USER_LIST_DEVICEID + deviceId;
|
|
}
|
|
|
|
/**
|
|
* 根据用户ID获取Tbl_Device_User(列表)的redis缓存key键值
|
|
*
|
|
* @param userId
|
|
* @param deviceId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getListTbl_Device_UserKeyByUserId(Integer userId) {
|
|
return RedisKey.DEVICE_USER_LIST_USERID + userId;
|
|
}
|
|
|
|
/**
|
|
* 根据mac地址获取Tbl_Device_Statistics的redis缓存key键值
|
|
*
|
|
* @param macAddress
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Device_StatisticsRedisKeyByMacAddress(String macAddress) {
|
|
return RedisKey.DEVICE_STATISTICS_MACADDRESS + macAddress;
|
|
}
|
|
|
|
/**
|
|
* 根据Id获取Tbl_Device_Statistics的redis缓存key键值
|
|
*
|
|
* @param macAddress
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Device_StatisticsRedisKeyByDeviceId(Integer deviceId) {
|
|
return RedisKey.DEVICE_STATISTICS_DEVICEID + deviceId;
|
|
}
|
|
|
|
/**
|
|
* 根据typeCode获取Tbl_HardWare_Type的redis缓存key键值
|
|
*
|
|
* @param typeCode
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_HardWare_TypeRedisKeyByTypeCode(String typeCode) {
|
|
return RedisKey.HARD_WARE_TYPE + typeCode;
|
|
}
|
|
|
|
/**
|
|
* 根据brandCode获取Tbl_Vender_list的redis缓存key键值
|
|
*
|
|
* @param brandCode
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Vender_ListRedisKeyByCode(String brandCode) {
|
|
return RedisKey.VENDER_CODE + brandCode;
|
|
}
|
|
|
|
/**
|
|
* 根据直播间Id获取Tbl_Live_Room的redis缓存key键值
|
|
*
|
|
* @param roomId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Live_RoomRedisKeyByRoomId(Integer roomId) {
|
|
return RedisKey.LIVEROOM_ROOMID + roomId;
|
|
}
|
|
|
|
/**
|
|
* 根据用户Id获取Tbl_Live_Room的redis缓存key键值
|
|
*
|
|
* @param roomId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Live_RoomRedisKeyByUserId(Integer User) {
|
|
return RedisKey.LIVEROOM_USERID + User;
|
|
}
|
|
|
|
/**
|
|
* 根据分页和排序条件获取直播间列表缓存key键值
|
|
*
|
|
* @param first
|
|
* @param pageSize
|
|
* @param orders
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getListTbl_Live_Room_RedisKey(Integer first, Integer pageSize, String orders) {
|
|
return RedisKey.LIVEROMM_LIST + "f_" + first + "_p_" + pageSize + "_o_" + orders;
|
|
}
|
|
|
|
/**
|
|
* 获取所有开启直播间总数量的redis缓存key键值
|
|
*
|
|
* @return
|
|
*/
|
|
@Override
|
|
|
|
public String getTbl_Live_Room_CountRedisKey() {
|
|
return RedisKey.LIVEROOM_COUNT;
|
|
}
|
|
|
|
/**
|
|
* 获取直播间评论列表的redis缓存key键值
|
|
*
|
|
* @param roomId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Live_Message(Integer firstResult, Integer pageSize, Integer roomId) {
|
|
return RedisKey.LIVEMESSAGE_ROOMID + roomId + "_f_" + firstResult + "_p_" + pageSize;
|
|
}
|
|
|
|
/**
|
|
* 根据pushId获取Tbl_push_list的redis缓存key键值
|
|
*
|
|
* @param pushId
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getTbl_Push_List_RedisByPushId(Integer pushId) {
|
|
return RedisKey.PUSHLIST_PUSHID + pushId;
|
|
}
|
|
|
|
/**
|
|
* 根据MD5值获取redis缓存key键值
|
|
*
|
|
* @param md5
|
|
* @return
|
|
*/
|
|
@Override
|
|
public String getEmailRedisKey(String md5) {
|
|
return RedisKey.EMAIL_REGIESTER + md5;
|
|
}
|
|
|
|
/**
|
|
* 删除redis中某个设备详情Tbl_Device的缓存
|
|
*
|
|
* @param device
|
|
* @return
|
|
*/
|
|
@Override
|
|
public void deleteRedisByTbl_Device(Tbl_Device device) {
|
|
if (device.getDeviceId() != null && device.getDeviceId() > 0) {
|
|
redisHelperI.deleteRedis(getTbl_DeviceRedisKeyByDeviceId(device.getDeviceId()));
|
|
}
|
|
if (StringUtils.isNotBlank(device.getMacAddress())) {
|
|
redisHelperI.deleteRedis(getTbl_DeviceRedisKeyByMacAddress(device.getMacAddress()));
|
|
}
|
|
if (StringUtils.isNotBlank(device.getCameraId())) {
|
|
redisHelperI.deleteRedis(getTbl_CameraRedisKeyByCameraId(device.getCameraId()));
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 删除redis中某个设备统计信息Tbl_Device_Statistics的缓存
|
|
*
|
|
* @param device
|
|
* @return
|
|
*/
|
|
@Override
|
|
public void deleteRedisByTbl_Device_Statistics(Tbl_Device_Statistics device) {
|
|
if (device.getDeviceId() != null && device.getDeviceId() > 0) {
|
|
redisHelperI.deleteRedis(getTbl_DeviceRedisKeyByDeviceId(device.getDeviceId()));
|
|
}
|
|
if (StringUtils.isNotBlank(device.getMacAddress())) {
|
|
redisHelperI.deleteRedis(getTbl_DeviceRedisKeyByMacAddress(device.getMacAddress()));
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 删除redis中某个设备和用户关系Tbl_Device_User的缓存
|
|
*
|
|
* @param tbl_Device_User
|
|
*/
|
|
@Override
|
|
public void deleteRedisByTbl_Device_User(Tbl_Device_User tbl_Device_User) {
|
|
if (tbl_Device_User.getDeviceId() != null && tbl_Device_User.getUserId() != null && tbl_Device_User.getDeviceId() > 0 && tbl_Device_User.getUserId() > 0) {
|
|
redisHelperI.deleteRedis(getTbl_Device_UserRedisKeyByDeviceIdAndUserId(tbl_Device_User.getUserId(), tbl_Device_User.getDeviceId()));
|
|
}
|
|
if (tbl_Device_User.getDeviceId() != null && tbl_Device_User.getDeviceId() > 0) {
|
|
redisHelperI.deleteRedis(getListTbl_Device_UserKeyByDeviceId(tbl_Device_User.getDeviceId()));
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 删除redis中某个用户Tbl_User的缓存
|
|
*
|
|
* @param tbl_User
|
|
*/
|
|
@Override
|
|
public void deleteRedisByTbl_User(Tbl_User tbl_User) {
|
|
if (tbl_User.getUserId() != null && tbl_User.getUserId() > 0) {
|
|
redisHelperI.deleteRedis(getTbl_UserRedisKeyByUserId(tbl_User.getUserId()));
|
|
}
|
|
if (StringUtils.isNotBlank(tbl_User.getUserEmail())) {
|
|
redisHelperI.deleteRedis(getTbl_UserRedisKeyByEmail(tbl_User.getUserEmail()));
|
|
}
|
|
if (StringUtils.isNotBlank(tbl_User.getPhoneNumber())) {
|
|
redisHelperI.deleteRedis(getTbl_UserRedisKeyByPhoneNumber(tbl_User.getPhoneNumber()));
|
|
}
|
|
if (StringUtils.isNotBlank(tbl_User.getToken())) {
|
|
redisHelperI.deleteRedis(getTbl_UserRedisKeyByToken(tbl_User.getToken()));
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 删除redis中某个直播间Tbl_Live_Room的缓存
|
|
*
|
|
* @param live_Room
|
|
*/
|
|
@Override
|
|
public void deleteRedisByTbl_Live_Room(Tbl_Live_Room live_Room) {
|
|
if (live_Room.getRoomId() != null && live_Room.getRoomId() > 0) {
|
|
redisHelperI.deleteRedis(getTbl_Live_RoomRedisKeyByRoomId(live_Room.getRoomId()));
|
|
}
|
|
if (live_Room.getUserId() != null && live_Room.getUserId() > 0) {
|
|
redisHelperI.deleteRedis(getTbl_Live_RoomRedisKeyByUserId(live_Room.getUserId()));
|
|
}
|
|
redisHelperI.deleteRedis(getTbl_Live_Room_CountRedisKey());
|
|
redisHelperI.delRedisByTagKey(RedisKey.LIVEROMM_LIST);
|
|
}
|
|
|
|
/**
|
|
* 删除redis中有直播间总数缓存
|
|
*/
|
|
@Override
|
|
public void deleteRedisByLiveRoomListCount() {
|
|
redisHelperI.deleteRedis(getTbl_Live_Room_CountRedisKey());
|
|
}
|
|
|
|
}
|