diff --git a/src/main/java/com/ifish/bean/Tbl_Live_Message.java b/src/main/java/com/ifish/bean/Tbl_Live_Message.java new file mode 100644 index 0000000..5b915b7 --- /dev/null +++ b/src/main/java/com/ifish/bean/Tbl_Live_Message.java @@ -0,0 +1,231 @@ +/* + * 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.bean; + +import java.util.Date; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +/** + * 直播间评论表(tbl_live_message) + * + * @author bianj + * @version 1.0.0 2017-07-03 + */ +@Entity +@Table(name = "tbl_live_message") +public class Tbl_Live_Message implements java.io.Serializable { + + /** + * 版本号 + */ + private static final long serialVersionUID = 4867709378808071267L; + + /** + * 评论Id + */ + @Id + @Column(name = "message_id", unique = true, nullable = false, length = 10) + private Integer messageId; + + /** + * 直播间Id + */ + @Column(name = "room_id", nullable = false, length = 10) + private Integer roomId; + + /** + * 评论用户Id + */ + @Column(name = "user_id", nullable = false, length = 10) + private Integer userId; + + /** + * @用户Id + */ + @Column(name = "as_user_id", nullable = true, length = 10) + private Integer asUserId; + + /** + * 评论内容 + */ + @Column(name = "message_content", nullable = true, length = 200) + private String messageContent; + + /** + * 评论时间 + */ + @Column(name = "create_time", nullable = true) + private Date createTime; + + /** + * @人的用户名 + */ + private String asUserName; + + /** + * 创建人的头像 + */ + private String userImg; + + /** + * 创建人的用户名 + */ + private String userName; + + /** + * @return the asUserName + */ + public String getAsUserName() { + return asUserName; + } + + /** + * @param asUserName the asUserName to set + */ + public void setAsUserName(String asUserName) { + this.asUserName = asUserName; + } + + /** + * @return the userImg + */ + public String getUserImg() { + return userImg; + } + + /** + * @param userImg the userImg to set + */ + public void setUserImg(String userImg) { + this.userImg = userImg; + } + + /** + * @return the userName + */ + public String getUserName() { + return userName; + } + + /** + * @param userName the userName to set + */ + public void setUserName(String userName) { + this.userName = userName; + } + + /** + * 获取评论Id + * + * @return 评论Id + */ + public Integer getMessageId() { + return this.messageId; + } + + /** + * 设置评论Id + * + * @param messageId 评论Id + */ + public void setMessageId(Integer messageId) { + this.messageId = messageId; + } + + /** + * 获取直播间Id + * + * @return 直播间Id + */ + public Integer getRoomId() { + return this.roomId; + } + + /** + * 设置直播间Id + * + * @param roomId 直播间Id + */ + public void setRoomId(Integer roomId) { + this.roomId = roomId; + } + + /** + * 获取评论用户Id + * + * @return 评论用户Id + */ + public Integer getUserId() { + return this.userId; + } + + /** + * 设置评论用户Id + * + * @param userId 评论用户Id + */ + public void setUserId(Integer userId) { + this.userId = userId; + } + + /** + * 获取@用户Id + * + * @return @用户Id + */ + public Integer getAsUserId() { + return this.asUserId; + } + + /** + * 设置@用户Id + * + * @param asUserId + * @用户Id + */ + public void setAsUserId(Integer asUserId) { + this.asUserId = asUserId; + } + + /** + * 获取评论内容 + * + * @return 评论内容 + */ + public String getMessageContent() { + return this.messageContent; + } + + /** + * 设置评论内容 + * + * @param messageContent 评论内容 + */ + public void setMessageContent(String messageContent) { + this.messageContent = messageContent; + } + + /** + * 获取评论时间 + * + * @return 评论时间 + */ + public Date getCreateTime() { + return this.createTime; + } + + /** + * 设置评论时间 + * + * @param createTime 评论时间 + */ + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/src/main/java/com/ifish/bean/Tbl_Live_Room.java b/src/main/java/com/ifish/bean/Tbl_Live_Room.java new file mode 100644 index 0000000..dc05973 --- /dev/null +++ b/src/main/java/com/ifish/bean/Tbl_Live_Room.java @@ -0,0 +1,293 @@ +/* + * 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.bean; + +import java.util.Date; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +/** + * 直播间详情表(tbl_live_room) + * + * @author bianj + * @version 1.0.0 2017-07-03 + */ +@Entity +@Table(name = "tbl_live_room") +public class Tbl_Live_Room implements java.io.Serializable { + + /** + * 版本号 + */ + private static final long serialVersionUID = -9036392996642877776L; + + /** + * 直播间Id + */ + @Id + @Column(name = "room_id", unique = true, nullable = false, length = 10) + private Integer roomId; + + /** + * 用户Id + */ + @Column(name = "user_id", unique = true, nullable = false, length = 10) + private Integer userId; + + /** + * 摄像头ID + */ + @Column(name = "camera_id", nullable = false, length = 20) + private String cameraId; + + /** + * 直播间名称 + */ + @Column(name = "room_name", nullable = true, length = 20) + private String roomName; + + /** + * 直播间描述 + */ + @Column(name = "room_desc", nullable = true, length = 70) + private String roomDesc; + + /** + * */ + @Column(name = "room_img", nullable = true, length = 100) + private String roomImg; + + /** + * 直播间状态:1直播、0关闭 + */ + @Column(name = "room_status", nullable = true, length = 1) + private String roomStatus; + + /** + * 人气值 + */ + @Column(name = "popularity_value", nullable = false, length = 10) + private Integer popularityValue; + + /** + * 点赞数量 + */ + @Column(name = "zanNum", nullable = true, length = 10) + private Integer zanNum; + + /** + * 创建时间 + */ + @Column(name = "create_time", nullable = true) + private Date createTime; + + /** + * */ + @Column(name = "update_time", nullable = true) + private Date updateTime; + + /** + * 获取直播间Id + * + * @return 直播间Id + */ + public Integer getRoomId() { + return this.roomId; + } + + /** + * 设置直播间Id + * + * @param roomId 直播间Id + */ + public void setRoomId(Integer roomId) { + this.roomId = roomId; + } + + /** + * 获取用户Id + * + * @return 用户Id + */ + public Integer getUserId() { + return this.userId; + } + + /** + * 设置用户Id + * + * @param userId 用户Id + */ + public void setUserId(Integer userId) { + this.userId = userId; + } + + /** + * 获取摄像头ID + * + * @return 摄像头ID + */ + public String getCameraId() { + return this.cameraId; + } + + /** + * 设置摄像头ID + * + * @param cameraId 摄像头ID + */ + public void setCameraId(String cameraId) { + this.cameraId = cameraId; + } + + /** + * 获取直播间名称 + * + * @return 直播间名称 + */ + public String getRoomName() { + return this.roomName; + } + + /** + * 设置直播间名称 + * + * @param roomName 直播间名称 + */ + public void setRoomName(String roomName) { + this.roomName = roomName; + } + + /** + * 获取直播间描述 + * + * @return 直播间描述 + */ + public String getRoomDesc() { + return this.roomDesc; + } + + /** + * 设置直播间描述 + * + * @param roomDesc 直播间描述 + */ + public void setRoomDesc(String roomDesc) { + this.roomDesc = roomDesc; + } + + /** + * 获取 + * + * @return + */ + public String getRoomImg() { + return this.roomImg; + } + + /** + * 设置 + * + * @param roomImg + * + */ + public void setRoomImg(String roomImg) { + this.roomImg = roomImg; + } + + /** + * 获取直播间状态:1直播、0关闭 + * + * @return 直播间状态 + */ + public String getRoomStatus() { + return this.roomStatus; + } + + /** + * 设置直播间状态:1直播、0关闭 + * + * @param roomStatus 直播间状态:1直播、0关闭 + */ + public void setRoomStatus(String roomStatus) { + this.roomStatus = roomStatus; + } + + /** + * 获取人气值 + * + * @return 人气值 + */ + public Integer getPopularityValue() { + return this.popularityValue; + } + + /** + * 设置人气值 + * + * @param popularityValue 人气值 + */ + public void setPopularityValue(Integer popularityValue) { + this.popularityValue = popularityValue; + } + + /** + * 获取点赞数量 + * + * @return 点赞数量 + */ + public Integer getZanNum() { + return this.zanNum; + } + + /** + * 设置点赞数量 + * + * @param zanNum 点赞数量 + */ + public void setZanNum(Integer zanNum) { + this.zanNum = zanNum; + } + + /** + * 获取创建时间 + * + * @return 创建时间 + */ + public Date getCreateTime() { + return this.createTime; + } + + /** + * 设置创建时间 + * + * @param createTime 创建时间 + */ + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + /** + * 获取 + * + * @return + */ + public Date getUpdateTime() { + return this.updateTime; + } + + /** + * 设置 + * + * @param updateTime + * + */ + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/src/main/java/com/ifish/enums/PushTypeEnum.java b/src/main/java/com/ifish/enums/PushTypeEnum.java index 4ffa4e8..4dfe98a 100644 --- a/src/main/java/com/ifish/enums/PushTypeEnum.java +++ b/src/main/java/com/ifish/enums/PushTypeEnum.java @@ -1,33 +1,39 @@ package com.ifish.enums; public enum PushTypeEnum { - remove_device("remove_device","解绑通知"), - wendu_warn("wendu_warn","温度报警"), - qu_reply("qu_reply","问题反馈"), - app_update("app_update","IOS更新推送"), - remind_water("remind_water","换水提醒"), - offline_push("offline_push","离线通知"); - - private PushTypeEnum(String key,String value){ - this.key = key; - this.value = value; - } - - private String key; - private String value; - - - public String getKey() { - return key; - } - public void setKey(String key) { - this.key = key; - } - public String getValue() { - return value; - } - public void setValue(String value) { - this.value = value; - } - + remove_device("remove_device", "解绑通知"), + wendu_warn("wendu_warn", "温度预警"), + qu_reply("qu_reply", "问题反馈"), + app_update("app_update", "IOS更新推送"), + remind_water("remind_water", "换水提醒"), + offline_push("offline_push", "离线通知"), + send_report("send_report", "看护报告"), + shops_push("shops_push", "看护通知"), + all_push("all_push", "所有用户推送"), + pinglun_push("pinglun_push", "直播间评论"); + + private PushTypeEnum(String key, String value) { + this.key = key; + this.value = value; + } + + private String key; + private String value; + + public String getKey() { + return key; + } + + public void setKey(String key) { + this.key = key; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + } diff --git a/src/main/java/com/ifish/helper/RedisKeyHelper.java b/src/main/java/com/ifish/helper/RedisKeyHelper.java index 12a8867..a452e88 100644 --- a/src/main/java/com/ifish/helper/RedisKeyHelper.java +++ b/src/main/java/com/ifish/helper/RedisKeyHelper.java @@ -8,6 +8,8 @@ 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_Message; +import com.ifish.bean.Tbl_Live_Room; import com.ifish.bean.Tbl_User; import com.ifish.util.RedisKey; import org.apache.commons.lang3.StringUtils; @@ -20,20 +22,125 @@ import org.springframework.stereotype.Component; */ @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; } + /** + * 根据条件获取用户列表缓存key + * + * @param start + * @param length + * @param userId + * @param phoneNumber + * @param userEmail + * @param phoneType + * @param isRegisterGwell + * @param isRegisterJiguang + * @param sortField + * @param sortMode + * @param nickName + * @param remarks + * @param loginTime1 + * @param loginTime2 + * @param createTime1 + * @param createTime2 + * @return + */ + @Override + public String getUserListRedisKey(Integer start, Integer length, String userId, String phoneNumber, String userEmail, String phoneType, String isRegisterGwell, String isRegisterJiguang, String sortField, String sortMode, String nickName, String remarks, String loginTime1, String loginTime2, String createTime1, String createTime2) { + return RedisKey.USER_LIST + userId + "_" + phoneNumber + "_" + userEmail + "_" + phoneType + "_" + isRegisterGwell + "_" + isRegisterJiguang + "_" + sortField + "_" + sortMode + "_" + nickName + "_" + remarks + "_" + loginTime1 + "_" + loginTime2 + "_" + createTime1 + "_" + createTime2 + "_" + start + "_" + length; + } + + /** + * 根据条件搜索获取用户列表缓存key + * + * @param userId + * @param phoneNumber + * @param userEmail + * @param phoneType + * @param isRegisterGwell + * @param isRegisterJiguang + * @param sortField + * @param sortMode + * @param nickName + * @param remarks + * @param loginTime1 + * @param loginTime2 + * @param createTime1 + * @param createTime2 + * @return + */ + @Override + public String getUserListCountRedisKey(String userId, String phoneNumber, String userEmail, String phoneType, String isRegisterGwell, String isRegisterJiguang, String sortField, String sortMode, String nickName, String remarks, String loginTime1, String loginTime2, String createTime1, String createTime2) { + return RedisKey.USER_LIST_COUNT + userId + "_" + phoneNumber + "_" + userEmail + "_" + phoneType + "_" + isRegisterGwell + "_" + isRegisterJiguang + "_" + sortField + "_" + sortMode + "_" + nickName + "_" + remarks + "_" + loginTime1 + "_" + loginTime2 + "_" + createTime1 + "_" + createTime2; + } + + /** + * 获取用户列表总数 + * + * @return + */ + @Override + public String getAllUserListCountRedisKey() { + return RedisKey.USER_LIST_COUNT_ALL; + } + + /** + * 根据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键值 * @@ -45,6 +152,17 @@ public class RedisKeyHelper implements RedisKeyHelperI { 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键值 * @@ -80,6 +198,18 @@ public class RedisKeyHelper implements RedisKeyHelperI { 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键值 * @@ -108,10 +238,133 @@ public class RedisKeyHelper implements RedisKeyHelperI { * @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_RoomRedisKeyByCameraId(String cameraId) { + return RedisKey.LIVEROOM_CAMERAID + cameraId; + } + + /** + * 根据用户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; + } + + /** + * 获取直播间评论总数的redis缓存key键值 + * + * @param roomId + * @return + */ + @Override + public String getTbl_Live_MessageCount(Integer roomId) { + return RedisKey.LIVEMESSAGE_COUNT + roomId; + } + + /** + * 根据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; + } + + /** + * 根据MD5值获取redis缓存key键值(修改密码用) + * + * @param md5 + * @return + */ + public String getEmailUpdatePasswordRedisKey(String md5) { + return RedisKey.EMAIL_UPDATEPASSWORD + md5; + } + /** * 删除redis中某个设备详情Tbl_Device的缓存 * @@ -120,12 +373,15 @@ public class RedisKeyHelper implements RedisKeyHelperI { */ @Override public void deleteRedisByTbl_Device(Tbl_Device device) { - if (device.getDeviceId() > 0) { + 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())); + } } /** @@ -136,7 +392,7 @@ public class RedisKeyHelper implements RedisKeyHelperI { */ @Override public void deleteRedisByTbl_Device_Statistics(Tbl_Device_Statistics device) { - if (device.getDeviceId() > 0) { + if (device.getDeviceId() != null && device.getDeviceId() > 0) { redisHelperI.deleteRedis(getTbl_DeviceRedisKeyByDeviceId(device.getDeviceId())); } if (StringUtils.isNotBlank(device.getMacAddress())) { @@ -151,10 +407,10 @@ public class RedisKeyHelper implements RedisKeyHelperI { */ @Override public void deleteRedisByTbl_Device_User(Tbl_Device_User tbl_Device_User) { - if (tbl_Device_User.getDeviceId() > 0 && tbl_Device_User.getUserId() > 0) { + 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() > 0) { + if (tbl_Device_User.getDeviceId() != null && tbl_Device_User.getDeviceId() > 0) { redisHelperI.deleteRedis(getListTbl_Device_UserKeyByDeviceId(tbl_Device_User.getDeviceId())); } } @@ -166,9 +422,60 @@ public class RedisKeyHelper implements RedisKeyHelperI { */ @Override public void deleteRedisByTbl_User(Tbl_User tbl_User) { - if (tbl_User.getUserId() > 0) { + 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())); + } + redisHelperI.delRedisByTagKey(RedisKey.USER_LIST); + redisHelperI.delRedisByTagKey(RedisKey.USER_LIST_COUNT); + redisHelperI.delRedisByTagKey(RedisKey.USER_LIST_COUNT_ALL); } - + + /** + * 删除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 (StringUtils.isNotBlank(live_Room.getCameraId())) { + redisHelperI.deleteRedis(live_Room.getCameraId()); + } + 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()); + } + + /** + * 删除redis中某个直播间评论列表缓存 + * + * @param tbl_Live_Message + */ + @Override + public void deleteRedisByTbl_Live_Message(Tbl_Live_Message tbl_Live_Message) { + redisHelperI.delRedisByTagKey(RedisKey.LIVEMESSAGE_ROOMID + tbl_Live_Message.getRoomId()); + redisHelperI.deleteRedis(RedisKey.LIVEMESSAGE_COUNT + tbl_Live_Message.getRoomId()); + } + } diff --git a/src/main/java/com/ifish/helper/RedisKeyHelperI.java b/src/main/java/com/ifish/helper/RedisKeyHelperI.java index b4797fc..4a3c4c0 100644 --- a/src/main/java/com/ifish/helper/RedisKeyHelperI.java +++ b/src/main/java/com/ifish/helper/RedisKeyHelperI.java @@ -8,6 +8,8 @@ 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_Message; +import com.ifish.bean.Tbl_Live_Room; import com.ifish.bean.Tbl_User; /** @@ -16,6 +18,14 @@ import com.ifish.bean.Tbl_User; */ public interface RedisKeyHelperI { + /** + * 根据token获取tbl_user用户信息的redis缓存key键值 + * + * @param token + * @return + */ + public String getTbl_UserRedisKeyByToken(String token); + /** * 根据userId获取Tbl_User用户信息的Redis缓存key键值 * @@ -24,6 +34,81 @@ public interface RedisKeyHelperI { */ public String getTbl_UserRedisKeyByUserId(Integer userId); + /** + * 根据phoneNumber获取Tbl_User用户信息的Redis缓存key键值 + * + * @param userId + * @return + */ + public String getTbl_UserRedisKeyByPhoneNumber(String phoneNumber); + + /** + * 根据Email获取Tbl_User用户信息的Redis缓存key键值 + * + * @param userId + * @return + */ + public String getTbl_UserRedisKeyByEmail(String email); + + /** + * 根据条件获取用户列表缓存key + * + * @param start + * @param length + * @param userId + * @param phoneNumber + * @param userEmail + * @param phoneType + * @param isRegisterGwell + * @param isRegisterJiguang + * @param sortField + * @param sortMode + * @param nickName + * @param remarks + * @param loginTime1 + * @param loginTime2 + * @param createTime1 + * @param createTime2 + * @return + */ + public String getUserListRedisKey(Integer start, Integer length, String userId, String phoneNumber, String userEmail, String phoneType, String isRegisterGwell, String isRegisterJiguang, String sortField, String sortMode, String nickName, String remarks, String loginTime1, String loginTime2, String createTime1, String createTime2); + + /** + * 根据条件搜索获取用户列表缓存key + * + * @param userId + * @param phoneNumber + * @param userEmail + * @param phoneType + * @param isRegisterGwell + * @param isRegisterJiguang + * @param sortField + * @param sortMode + * @param nickName + * @param remarks + * @param loginTime1 + * @param loginTime2 + * @param createTime1 + * @param createTime2 + * @return + */ + public String getUserListCountRedisKey(String userId, String phoneNumber, String userEmail, String phoneType, String isRegisterGwell, String isRegisterJiguang, String sortField, String sortMode, String nickName, String remarks, String loginTime1, String loginTime2, String createTime1, String createTime2); + + /** + * 获取用户列表总数 + * + * @return + */ + public String getAllUserListCountRedisKey(); + + /** + * 根据userName获取Tbl_Security_User管理用户的redis缓存key键值 + * + * @param userName + * @return + */ + public String getTbl_Security_UserRedisKeyByUserName(String userName); + /** * 根据mac地址获取Tbl_Device的redis缓存key键值 * @@ -32,6 +117,14 @@ public interface RedisKeyHelperI { */ public String getTbl_DeviceRedisKeyByMacAddress(String macAddress); + /** + * 根据摄像头Id获取Tbl_Device的redis缓存key键值 + * + * @param macAddress + * @return + */ + public String getTbl_CameraRedisKeyByCameraId(String CameraId); + /** * 根据Id获取Tbl_Device的redis缓存key键值 * @@ -74,6 +167,15 @@ public interface RedisKeyHelperI { */ public String getListTbl_Device_UserKeyByDeviceId(Integer deviceId); + /** + * 根据用户ID获取Tbl_Device_User(列表)的redis缓存key键值 + * + * @param userId + * @param deviceId + * @return + */ + public String getListTbl_Device_UserKeyByUserId(Integer userId); + /** * 根据typeCode获取Tbl_HardWare_Type的redis缓存key键值 * @@ -82,6 +184,95 @@ public interface RedisKeyHelperI { */ public String getTbl_HardWare_TypeRedisKeyByTypeCode(String typeCode); + /** + * 根据brandCode获取Tbl_Vender_list的redis缓存key键值 + * + * @param brandCode + * @return + */ + public String getTbl_Vender_ListRedisKeyByCode(String brandCode); + + /** + * 根据直播间Id获取Tbl_Live_Room的redis缓存key键值 + * + * @param roomId + * @return + */ + public String getTbl_Live_RoomRedisKeyByRoomId(Integer roomId); + + /** + * 根据摄像头Id获取Tbl_Live_Room的redis缓存key键值 + * + * @param roomId + * @return + */ + public String getTbl_Live_RoomRedisKeyByCameraId(String cameraId); + + /** + * 根据用户Id获取Tbl_Live_Room的redis缓存key键值 + * + * @param roomId + * @return + */ + public String getTbl_Live_RoomRedisKeyByUserId(Integer User); + + /** + * 根据分页和排序条件获取直播间列表缓存key键值 + * + * @param first + * @param pageSize + * @param orders + * @return + */ + public String getListTbl_Live_Room_RedisKey(Integer first, Integer pageSize, String orders); + + /** + * 获取所有开启直播间总数量的redis缓存key键值 + * + * @return + */ + public String getTbl_Live_Room_CountRedisKey(); + + /** + * 获取直播间评论列表的redis缓存key键值 + * + * @param roomId + * @return + */ + public String getTbl_Live_Message(Integer firstResult, Integer pageSize, Integer roomId); + + /** + * 获取直播间评论总数的redis缓存key键值 + * + * @param roomId + * @return + */ + public String getTbl_Live_MessageCount(Integer roomId); + + /** + * 根据pushId获取Tbl_push_list的redis缓存key键值 + * + * @param pushId + * @return + */ + public String getTbl_Push_List_RedisByPushId(Integer pushId); + + /** + * 根据MD5值获取redis缓存key键值(注册账号用) + * + * @param md5 + * @return + */ + public String getEmailRedisKey(String md5); + + /** + * 根据MD5值获取redis缓存key键值(修改密码用) + * + * @param md5 + * @return + */ + public String getEmailUpdatePasswordRedisKey(String md5); + /** * 删除redis中某个设备详情的缓存 * @@ -111,4 +302,23 @@ public interface RedisKeyHelperI { * @param tbl_User */ public void deleteRedisByTbl_User(Tbl_User tbl_User); + + /** + * 删除redis中某个直播间Tbl_Live_Room的缓存 + * + * @param live_Room + */ + public void deleteRedisByTbl_Live_Room(Tbl_Live_Room live_Room); + + /** + * 删除redis中有直播间总数缓存 + */ + public void deleteRedisByLiveRoomListCount(); + + /** + * 删除redis中某个直播间评论列表缓存 + * + * @param tbl_Live_Message + */ + public void deleteRedisByTbl_Live_Message(Tbl_Live_Message tbl_Live_Message); } diff --git a/src/main/java/com/ifish/mapper/Tbl_Hardware_Type_Mapper.java b/src/main/java/com/ifish/mapper/Tbl_Hardware_Type_Mapper.java index 47f7bd2..68f45fc 100644 --- a/src/main/java/com/ifish/mapper/Tbl_Hardware_Type_Mapper.java +++ b/src/main/java/com/ifish/mapper/Tbl_Hardware_Type_Mapper.java @@ -35,4 +35,14 @@ public interface Tbl_Hardware_Type_Mapper { */ @Select("select brand_code,brand_name,brand_introduce,brand_logo from tbl_vender_list where brand_code=#{code}") Tbl_Vender getVenderListByBrandCode(@Param("code") String code); + + /** + * 根据设备型号获取厂家信息 + * + * @param code + * @return + * @throws Exception + */ + @Select("select brand_code,brand_name,brand_introduce,brand_logo from tbl_vender_list a LEFT JOIN tbl_vender_hardware b ON a.brand_code = b.brand_code where b.hardware_type=#{code}") + Tbl_Vender getVenderListByHardwareTypeCode(@Param("code") String code); } diff --git a/src/main/java/com/ifish/util/RedisKey.java b/src/main/java/com/ifish/util/RedisKey.java index 3afbc25..4f54dcb 100644 --- a/src/main/java/com/ifish/util/RedisKey.java +++ b/src/main/java/com/ifish/util/RedisKey.java @@ -15,6 +15,34 @@ public class RedisKey { * 用户缓存前缀,以id进行存储 */ public static final String USER_ID_KEY = "userE:id_"; + /** + * 用户缓存前缀,以手机号进行存储 + */ + public static final String USER_PHONE = "userE:ph_"; + /** + * 用户缓存前缀,以邮箱进行存储 + */ + public static final String USER_EMAIL = "userE:ema_"; + /** + * 用户列表缓存前缀 + */ + public static final String USER_LIST = "userlistE:"; + /** + * 用户列表总数缓存前缀(带条件) + */ + public static final String USER_LIST_COUNT = "userlistcountE:"; + /** + * 所有用户列表缓存前缀(不需条件) + */ + public static final String USER_LIST_COUNT_ALL = "alluserlistcountE"; + /** + * 用户缓存前缀,以token进行存储 + */ + public static final String USER_TOKEN = "userE:to_"; + /** + * 管理用户缓存前缀 + */ + public static final String SECURITY_USER = "seuserE:un_"; /** * 设备用户关系缓存前缀,以设备ID和用户ID进行存储 @@ -26,6 +54,11 @@ public class RedisKey { */ public static final String DEVICE_USER_LIST_DEVICEID = "deviceUserlistE:id_"; + /** + * 设备用户关系缓存前缀(列表),以用户ID进行存储 + */ + public static final String DEVICE_USER_LIST_USERID = "deviceUserlistE:u_"; + /** * 设备详情缓存前缀,以macAddress进行存储 */ @@ -36,6 +69,11 @@ public class RedisKey { */ public static final String DEVICE_KEY_DEVICEID = "deviceE:id_"; + /** + * 设备详情缓存前缀,以摄像头ID进行存储 + */ + public static final String DEVICE_KEY_CAMERAID = "deviceE:cid_"; + /** * 设备统计信息表缓存前缀,以deviceId为前缀 */ @@ -51,4 +89,59 @@ public class RedisKey { */ public static final String HARD_WARE_TYPE = "hardwaretypeE:"; + /** + * 鱼缸厂统计表缓存前缀,以鱼缸场代码进行存储 + */ + public static final String VENDER_CODE = "tblvenderE:code_"; + + /** + * 直播间详情表缓存前缀,以直播间ID进行存储 + */ + public static final String LIVEROOM_ROOMID = "liveroomE:id_"; + + /** + * 直播间详情表缓存前缀,以摄像头ID进行存储 + */ + public static final String LIVEROOM_CAMERAID = "liveroomE:cid_"; + + /** + * 直播间详情表缓存前缀,以直播间ID进行存储 + */ + public static final String LIVEROOM_USERID = "liveroomE:uid_"; + + /** + * 直播间列表缓存前缀,以分页和排序条件进行存储 + */ + public static final String LIVEROMM_LIST = "liveroomlistE:"; + + /** + * 所有开启的直播间缓存总数 + */ + public static final String LIVEROOM_COUNT = "liveroomE:num_"; + + /** + * 指定直播间评论列表 + */ + public static final String LIVEMESSAGE_ROOMID = "livemessageE:rid_"; + + /** + * 指定直播间评论总数 + */ + public static final String LIVEMESSAGE_COUNT = "livemessageCtE:rid_"; + + /** + * 推送信息表缓存前缀,以推送Id进行存储 + */ + public static final String PUSHLIST_PUSHID = "pushlistE:id_"; + + /** + * 邮箱验证有效缓存key + */ + public static final String EMAIL_REGIESTER = "emailkeyE:"; + + /** + * 邮箱验证修改密码有效缓存key + */ + public static final String EMAIL_UPDATEPASSWORD = "emialupE:"; + }