用户列表搜索,用户详情

This commit is contained in:
谢洪龙 2017-07-31 18:25:35 +08:00
parent 3209023b71
commit 5e9296aa49
11 changed files with 275 additions and 34 deletions

View File

@ -146,4 +146,9 @@ public class Login {
public Object forgetPasswordByMobile(String phoneNumber, String password) { public Object forgetPasswordByMobile(String phoneNumber, String password) {
return userHelperI.forgetPassword(phoneNumber, password); return userHelperI.forgetPassword(phoneNumber, password);
} }
@RequestMapping(value = "/IsRegisterJPush", method = RequestMethod.POST)
public Object IsRegisterJPush(String userId) {
return userHelperI.IsRegisterJPush(userId);
}
} }

View File

@ -30,16 +30,16 @@ import org.springframework.stereotype.Component;
*/ */
@Component @Component
public class DeviceHelper implements DeviceHelperI { public class DeviceHelper implements DeviceHelperI {
@Autowired @Autowired
private RedisHelperI redisHelperI; private RedisHelperI redisHelperI;
@Autowired @Autowired
private RedisKeyHelperI redisKeyHelperI; private RedisKeyHelperI redisKeyHelperI;
@Autowired @Autowired
private Tbl_Device_Mapper tbl_Device_Mapper; private Tbl_Device_Mapper tbl_Device_Mapper;
@Autowired @Autowired
private UserHelperI userHelperI; private UserHelperI userHelperI;
@ -206,7 +206,7 @@ public class DeviceHelper implements DeviceHelperI {
*/ */
@Override @Override
public Object bindDevice(Integer userId, String mackAddress) { public Object bindDevice(Integer userId, String mackAddress) {
try { try {
Tbl_User tmpUser = userHelperI.getUserById(userId); Tbl_User tmpUser = userHelperI.getUserById(userId);
//用户存在 //用户存在
@ -228,7 +228,7 @@ public class DeviceHelper implements DeviceHelperI {
if (tmpDdeviceUser != null) { if (tmpDdeviceUser != null) {
//原先不是主控制则删除其他用户关联关系 //原先不是主控制则删除其他用户关联关系
if (!tmpDdeviceUser.getIsMaster().equals("1")) { if (!tmpDdeviceUser.getIsMaster().equals("1")) {
for (Tbl_Device_User du : deviceUserList) { for (Tbl_Device_User du : deviceUserList) {
Integer userid = du.getUserId(); Integer userid = du.getUserId();
Integer deviceId = du.getDeviceId(); Integer deviceId = du.getDeviceId();
@ -310,9 +310,11 @@ public class DeviceHelper implements DeviceHelperI {
tbl_Device_Mapper.insertDeviceStatistics(ds); tbl_Device_Mapper.insertDeviceStatistics(ds);
} else { } else {
//修改设备统计信息 //修改设备统计信息
ds.setFirstActivate(new Date()); if (ds.getFirstActivate() == null) {
tbl_Device_Mapper.updateDeviceStatistics(ds); ds.setFirstActivate(new Date());
redisKeyHelperI.deleteRedisByTbl_Device_Statistics(ds); tbl_Device_Mapper.updateDeviceStatistics(ds);
redisKeyHelperI.deleteRedisByTbl_Device_Statistics(ds);
}
} }
} }
} //设备不存在 } //设备不存在
@ -438,7 +440,7 @@ public class DeviceHelper implements DeviceHelperI {
camera.setActiveTime(date); camera.setActiveTime(date);
camera.setUpdateTime(date); camera.setUpdateTime(date);
int i = tbl_Device_Mapper.updateTbl_Device(camera); int i = tbl_Device_Mapper.updateTbl_Device(camera);
activa_Code.setIsUsed("1"); activa_Code.setIsUsed("1");
tbl_Device_Mapper.updateTblActivaCodeIsUse(activeCode); tbl_Device_Mapper.updateTblActivaCodeIsUse(activeCode);
return IfishUtil.returnJson(ResultEnum.success.getKey(), ""); return IfishUtil.returnJson(ResultEnum.success.getKey(), "");
@ -464,10 +466,10 @@ public class DeviceHelper implements DeviceHelperI {
*/ */
@Override @Override
public Object updateDeviceUser(Tbl_Device_User device) { public Object updateDeviceUser(Tbl_Device_User device) {
try { try {
Tbl_Device_User olDevice_User = getDeviceUserByUserId_DeviceId(device.getUserId(), device.getDeviceId()); Tbl_Device_User olDevice_User = getDeviceUserByUserId_DeviceId(device.getUserId(), device.getDeviceId());
if (device != null) { if (device != null) {
if (olDevice_User != null) { if (olDevice_User != null) {
device.setId(olDevice_User.getId()); device.setId(olDevice_User.getId());
@ -500,7 +502,7 @@ public class DeviceHelper implements DeviceHelperI {
Tbl_Device_User olDevice_User = getDeviceUserByUserId_CameraId(device_User.getUserId(), cameraId.toString()); Tbl_Device_User olDevice_User = getDeviceUserByUserId_CameraId(device_User.getUserId(), cameraId.toString());
if (olDevice_User != null) { if (olDevice_User != null) {
if (olDevice_User != null) { if (olDevice_User != null) {
device_User.setId(olDevice_User.getId()); device_User.setId(olDevice_User.getId());
int i = tbl_Device_Mapper.updateTblDeviceUser(device_User); int i = tbl_Device_Mapper.updateTblDeviceUser(device_User);
if (i > 0) { if (i > 0) {
@ -571,10 +573,10 @@ public class DeviceHelper implements DeviceHelperI {
} }
return IfishUtil.returnJson(ResultEnum.fail101.getKey(), ""); return IfishUtil.returnJson(ResultEnum.fail101.getKey(), "");
} }
@Autowired @Autowired
private JiGuangPush jiGuangPush; private JiGuangPush jiGuangPush;
@Autowired @Autowired
private PushMessageHelperI pushMessageHelperI; private PushMessageHelperI pushMessageHelperI;

View File

@ -35,6 +35,12 @@ public class HardWareTypeHelper implements HardWareTypeHelperI {
@Autowired @Autowired
private RedisKeyHelperI redisKeyHelperI; private RedisKeyHelperI redisKeyHelperI;
/**
* 根据设备型号获取设备类型参数
*
* @param code
* @return
*/
@Override @Override
public Tbl_HardWare_Type getHardwareTypeByTypeCode(String code) throws Exception { public Tbl_HardWare_Type getHardwareTypeByTypeCode(String code) throws Exception {
Tbl_HardWare_Type hardwareType = null; Tbl_HardWare_Type hardwareType = null;
@ -51,6 +57,13 @@ public class HardWareTypeHelper implements HardWareTypeHelperI {
return hardwareType; return hardwareType;
} }
/**
* 根据厂家code获取厂家信息
*
* @param code
* @return
* @throws Exception
*/
@Override @Override
public Tbl_Vender getVenderListByBrandCode(String code) throws Exception { public Tbl_Vender getVenderListByBrandCode(String code) throws Exception {
Tbl_Vender venderList = new Tbl_Vender(); Tbl_Vender venderList = new Tbl_Vender();
@ -64,4 +77,25 @@ public class HardWareTypeHelper implements HardWareTypeHelperI {
} }
return venderList; return venderList;
} }
/**
* 根据设备型号获取厂家信息
*
* @param code
* @return
* @throws Exception
*/
@Override
public Tbl_Vender getVenderListByHardwareTypeCode(String code) throws Exception {
Tbl_Vender venderList = new Tbl_Vender();
String key = redisKeyHelperI.getTbl_Vender_ListRedisKeyByCode(code);
String redisString = redisHelperI.getRedis(key);
if (StringUtils.isNotBlank(redisString)) {
venderList = (Tbl_Vender) IfishUtil.JsonToBean(redisString, Tbl_Vender.class);
} else {
venderList = tbl_Hardware_Type_Mapper.getVenderListByHardwareTypeCode(code);
redisHelperI.setRedis(key, IfishUtil.ObjectToJson(venderList));
}
return venderList;
}
} }

View File

@ -31,4 +31,13 @@ public interface HardWareTypeHelperI {
*/ */
Tbl_Vender getVenderListByBrandCode(String code) throws Exception; Tbl_Vender getVenderListByBrandCode(String code) throws Exception;
/**
* 根据设备型号获取厂家信息
*
* @param code
* @return
* @throws Exception
*/
public Tbl_Vender getVenderListByHardwareTypeCode(String code) throws Exception;
} }

View File

@ -70,6 +70,77 @@ public class RedisKeyHelper implements RedisKeyHelperI {
return RedisKey.USER_ID_KEY + 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键值 * 根据mac地址获取Tbl_Device的redis缓存key键值
* *
@ -363,6 +434,9 @@ public class RedisKeyHelper implements RedisKeyHelperI {
if (StringUtils.isNotBlank(tbl_User.getToken())) { if (StringUtils.isNotBlank(tbl_User.getToken())) {
redisHelperI.deleteRedis(getTbl_UserRedisKeyByToken(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);
} }
/** /**

View File

@ -50,6 +50,65 @@ public interface RedisKeyHelperI {
*/ */
public String getTbl_UserRedisKeyByEmail(String email); 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键值 * 根据mac地址获取Tbl_Device的redis缓存key键值
* *

View File

@ -47,19 +47,19 @@ public class UserHelper implements UserHelperI {
*/ */
@Autowired @Autowired
private Tbl_User_Mapper tbl_User_Mapper; private Tbl_User_Mapper tbl_User_Mapper;
@Autowired @Autowired
private DeviceHelperI deviceHelperI; private DeviceHelperI deviceHelperI;
@Autowired @Autowired
private HardWareTypeHelperI hardWareTypeHelperI; private HardWareTypeHelperI hardWareTypeHelperI;
@Autowired @Autowired
private RedisKeyHelperI redisKeyHelperI; private RedisKeyHelperI redisKeyHelperI;
@Autowired @Autowired
private SendMobile sendMobile; private SendMobile sendMobile;
@Autowired @Autowired
private FastDFSClientI fastDFSClientI; private FastDFSClientI fastDFSClientI;
@ -147,7 +147,7 @@ public class UserHelper implements UserHelperI {
dataMap.put("userSex", user.getUserSex()); dataMap.put("userSex", user.getUserSex());
dataMap.put("userImg", user.getUserImg()); dataMap.put("userImg", user.getUserImg());
dataMap.put("nickName", user.getNickName()); dataMap.put("nickName", user.getNickName());
return IfishUtil.returnJson(ResultEnum.success.getKey(), dataMap); return IfishUtil.returnJson(ResultEnum.success.getKey(), dataMap);
} }
@ -250,11 +250,11 @@ public class UserHelper implements UserHelperI {
if (user == null) { if (user == null) {
return "修改失败,请联系管理员!"; return "修改失败,请联系管理员!";
} }
user.setUserPassword(map.get("password").toString()); user.setUserPassword(map.get("password").toString());
Date date = new Date(); Date date = new Date();
user.setUpdateTime(date); user.setUpdateTime(date);
int i = tbl_User_Mapper.updateUser(user); int i = tbl_User_Mapper.updateUser(user);
if (i > 0) { if (i > 0) {
redisKeyHelperI.deleteRedisByTbl_User(user); redisKeyHelperI.deleteRedisByTbl_User(user);
@ -361,7 +361,7 @@ public class UserHelper implements UserHelperI {
curUser.setUserSex(userSex); curUser.setUserSex(userSex);
bln = true; bln = true;
} }
String registerId = user.getJiguangUserid(); String registerId = user.getJiguangUserid();
if (StringUtils.isNotBlank(registerId)) { if (StringUtils.isNotBlank(registerId)) {
curUser.setJiguangUserid(registerId); curUser.setJiguangUserid(registerId);
@ -410,7 +410,7 @@ public class UserHelper implements UserHelperI {
return IfishUtil.returnJson(ResultEnum.fail101.getKey(), ""); return IfishUtil.returnJson(ResultEnum.fail101.getKey(), "");
} }
} }
Tbl_User user = getUserById(userId); Tbl_User user = getUserById(userId);
user.setUserImg(img); user.setUserImg(img);
int i = tbl_User_Mapper.updateUser(user); int i = tbl_User_Mapper.updateUser(user);
@ -461,7 +461,7 @@ public class UserHelper implements UserHelperI {
Map userMap = getUserMap(user); Map userMap = getUserMap(user);
return IfishUtil.returnJson(ResultEnum.success.getKey(), userMap); return IfishUtil.returnJson(ResultEnum.success.getKey(), userMap);
} }
} catch (Exception e) { } catch (Exception e) {
} }
return IfishUtil.toJson(ResultEnum.fail101.getKey(), ""); return IfishUtil.toJson(ResultEnum.fail101.getKey(), "");
@ -492,7 +492,7 @@ public class UserHelper implements UserHelperI {
redisKeyHelperI.deleteRedisByTbl_User(user); redisKeyHelperI.deleteRedisByTbl_User(user);
return IfishUtil.returnJson(ResultEnum.success.getKey(), ""); return IfishUtil.returnJson(ResultEnum.success.getKey(), "");
} }
} catch (Exception e) { } catch (Exception e) {
} }
return IfishUtil.toJson(ResultEnum.fail101.getKey(), ""); return IfishUtil.toJson(ResultEnum.fail101.getKey(), "");
@ -529,6 +529,23 @@ public class UserHelper implements UserHelperI {
} }
} }
/**
* 极光是否注册别名成功
*
* @param userId
* @return
*/
@Override
public Object IsRegisterJPush(String userId) {
if (StringUtils.isNotBlank(userId)) {
int i = tbl_User_Mapper.IsRegisterJPush(userId);
if (i > 0) {
return IfishUtil.toJson(ResultEnum.success.getKey(), "");
}
}
return IfishUtil.toJson(ResultEnum.fail101.getKey(), "");
}
/** /**
* 根据手机号从缓存或数据库中取得用户对象 * 根据手机号从缓存或数据库中取得用户对象
* *
@ -710,7 +727,7 @@ public class UserHelper implements UserHelperI {
dataMap.put("device", deviceMap.get("list")); dataMap.put("device", deviceMap.get("list"));
dataMap.put("camera", deviceMap.get("list2")); dataMap.put("camera", deviceMap.get("list2"));
return IfishUtil.returnJson(ResultEnum.success.getKey(), dataMap); return IfishUtil.returnJson(ResultEnum.success.getKey(), dataMap);
} }
/** /**
@ -810,7 +827,7 @@ public class UserHelper implements UserHelperI {
if (tmpUser.getUpdateTime() != null) { if (tmpUser.getUpdateTime() != null) {
userMap.put("updateTime", IfishUtil.format(tmpUser.getUpdateTime())); userMap.put("updateTime", IfishUtil.format(tmpUser.getUpdateTime()));
} }
return userMap; return userMap;
} }
@ -839,9 +856,9 @@ public class UserHelper implements UserHelperI {
//封装设备返回信息 //封装设备返回信息
list.add(getDeviceInfo(device, deviceUser)); list.add(getDeviceInfo(device, deviceUser));
} }
} }
Map map = new HashMap(); Map map = new HashMap();
map.put("list", list); map.put("list", list);
map.put("list2", list2); map.put("list2", list2);
@ -957,5 +974,5 @@ public class UserHelper implements UserHelperI {
return IfishUtil.returnJson(ResultEnum.fail101.getKey(), ""); return IfishUtil.returnJson(ResultEnum.fail101.getKey(), "");
} }
} }
} }

View File

@ -127,4 +127,12 @@ public interface UserHelperI {
* @return * @return
*/ */
public Object forgetPasswordByEmail(String email, String password); public Object forgetPasswordByEmail(String email, String password);
/**
* 极光是否注册别名成功
*
* @param userId
* @return
*/
public Object IsRegisterJPush(String userId);
} }

View File

@ -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}") @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); Tbl_Vender getVenderListByBrandCode(@Param("code") String code);
/**
* 根据设备型号获取厂家信息
*
* @param code
* @return
* @throws Exception
*/
@Select("select a.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);
} }

View File

@ -100,4 +100,13 @@ public interface Tbl_User_Mapper {
+ "#{user.token},#{user.longitude},#{user.latitude},#{user.loginType})") + "#{user.token},#{user.longitude},#{user.latitude},#{user.loginType})")
@SelectKey(statement = "select @@IDENTITY as user_id", keyProperty = "user.userId", keyColumn = "userId", before = false, resultType = int.class) @SelectKey(statement = "select @@IDENTITY as user_id", keyProperty = "user.userId", keyColumn = "userId", before = false, resultType = int.class)
Integer insertUserByPhoneNumberAndEmail(@Param("user") Tbl_User user); Integer insertUserByPhoneNumberAndEmail(@Param("user") Tbl_User user);
/**
* 修改极光别名注册成功
*
* @param userId
* @return
*/
@Update("UPDATE tbl_user set jiguang_userid = '1' WHERE user_id = #{userid} ")
Integer IsRegisterJPush(@Param("userid") String userId);
} }

View File

@ -15,7 +15,6 @@ public class RedisKey {
* 用户缓存前缀,以id进行存储 * 用户缓存前缀,以id进行存储
*/ */
public static final String USER_ID_KEY = "userE:id_"; public static final String USER_ID_KEY = "userE:id_";
/** /**
* 用户缓存前缀,以手机号进行存储 * 用户缓存前缀,以手机号进行存储
*/ */
@ -24,11 +23,26 @@ public class RedisKey {
* 用户缓存前缀,以邮箱进行存储 * 用户缓存前缀,以邮箱进行存储
*/ */
public static final String USER_EMAIL = "userE:ema_"; 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进行存储 * 用户缓存前缀以token进行存储
*/ */
public static final String USER_TOKEN = "userE:to_"; public static final String USER_TOKEN = "userE:to_";
/**
* 管理用户缓存前缀
*/
public static final String SECURITY_USER = "seuserE:un_";
/** /**
* 设备用户关系缓存前缀以设备ID和用户ID进行存储 * 设备用户关系缓存前缀以设备ID和用户ID进行存储