新增接口 绑定手机号码 微信登录
This commit is contained in:
parent
1a26816770
commit
6259645d6c
|
|
@ -114,7 +114,7 @@ public class UsersAction {
|
||||||
* @param phoneNum
|
* @param phoneNum
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value="/bindPhone",method=RequestMethod.POST)
|
@RequestMapping(value="/bindPhone",method=RequestMethod.GET)
|
||||||
public JsonResult<?> bindPhone(String unionId, String phoneNum) {
|
public JsonResult<?> bindPhone(String unionId, String phoneNum) {
|
||||||
return userService.bindPhone(unionId, phoneNum);
|
return userService.bindPhone(unionId, phoneNum);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ import com.ifish.entity.CameraUser;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.apache.ibatis.annotations.Select;
|
import org.apache.ibatis.annotations.Select;
|
||||||
|
import org.apache.ibatis.annotations.Update;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -25,4 +26,10 @@ public interface Tbl_Camera_User_Mapper {
|
||||||
@Select("select user_id,camera_id,is_master,show_name,is_look,is_live,create_time,update_time from tbl_camera_user where user_id=#{userid}")
|
@Select("select user_id,camera_id,is_master,show_name,is_look,is_live,create_time,update_time from tbl_camera_user where user_id=#{userid}")
|
||||||
List<CameraUser> getCameraUserListByUserId(@Param("userid") Integer userid);
|
List<CameraUser> getCameraUserListByUserId(@Param("userid") Integer userid);
|
||||||
|
|
||||||
|
@Update("update tbl_camera_user set user_id = #{userId} where camera_id = #{cameraId}")
|
||||||
|
void updateCameraUserId(@Param("userId") Integer userId, @Param("cameraId") Integer cameraId);
|
||||||
|
|
||||||
|
@Update("update tbl_device_user set user_id = #{userId} where device_id = #{deviceId} and user_id = #{userId1}")
|
||||||
|
void updateDeviceUserId(@Param("userId") Integer userId, @Param("userId1") Integer userId1, @Param("deviceId") Integer deviceId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,17 +2,17 @@ package com.ifish.serviceImpl;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.sql.Connection;
|
||||||
import java.util.Calendar;
|
import java.sql.DriverManager;
|
||||||
import java.util.Date;
|
import java.sql.PreparedStatement;
|
||||||
import java.util.HashMap;
|
import java.sql.SQLException;
|
||||||
import java.util.List;
|
import java.util.*;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Random;
|
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.ifish.entity.*;
|
||||||
import com.ifish.entity.event.QueueEventBody;
|
import com.ifish.entity.event.QueueEventBody;
|
||||||
import com.ifish.entity.event.QueueEventEntity;
|
import com.ifish.entity.event.QueueEventEntity;
|
||||||
|
import com.ifish.mapper.Tbl_Camera_User_Mapper;
|
||||||
import com.ifish.util.StringUtil;
|
import com.ifish.util.StringUtil;
|
||||||
import com.ifish.util.WeChatUtils;
|
import com.ifish.util.WeChatUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
@ -46,23 +46,6 @@ import com.ifish.dto.NeteaseParamDto;
|
||||||
import com.ifish.dto.UserAssetDto;
|
import com.ifish.dto.UserAssetDto;
|
||||||
import com.ifish.dto.UserInfoDto;
|
import com.ifish.dto.UserInfoDto;
|
||||||
import com.ifish.dto.VenderDto;
|
import com.ifish.dto.VenderDto;
|
||||||
import com.ifish.entity.Camera;
|
|
||||||
import com.ifish.entity.CameraUser;
|
|
||||||
import com.ifish.entity.Device;
|
|
||||||
import com.ifish.entity.DeviceCamera;
|
|
||||||
import com.ifish.entity.DeviceCameraId;
|
|
||||||
import com.ifish.entity.DeviceUser;
|
|
||||||
import com.ifish.entity.DeviceUserId;
|
|
||||||
import com.ifish.entity.GoldControl;
|
|
||||||
import com.ifish.entity.GoldGetRecord;
|
|
||||||
import com.ifish.entity.GoldTask;
|
|
||||||
import com.ifish.entity.GradeTask;
|
|
||||||
import com.ifish.entity.HardwareType;
|
|
||||||
import com.ifish.entity.PushList;
|
|
||||||
import com.ifish.entity.ShopsInfo;
|
|
||||||
import com.ifish.entity.User;
|
|
||||||
import com.ifish.entity.UserAsset;
|
|
||||||
import com.ifish.entity.VenderList;
|
|
||||||
import com.ifish.enums.AddTypeEnum;
|
import com.ifish.enums.AddTypeEnum;
|
||||||
import com.ifish.enums.BooleanEnum;
|
import com.ifish.enums.BooleanEnum;
|
||||||
import com.ifish.enums.GoldGetTypeEnum;
|
import com.ifish.enums.GoldGetTypeEnum;
|
||||||
|
|
@ -102,6 +85,9 @@ import javax.jms.Session;
|
||||||
@Transactional
|
@Transactional
|
||||||
public class UserServiceImpl implements UserService {
|
public class UserServiceImpl implements UserService {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private Tbl_Camera_User_Mapper tbl_Camera_User_Mapper;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserDao userDao;
|
private UserDao userDao;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
@ -507,7 +493,7 @@ public class UserServiceImpl implements UserService {
|
||||||
if (userWechat == null) {
|
if (userWechat == null) {
|
||||||
throw new IfishException(ResultEnum.fail101);
|
throw new IfishException(ResultEnum.fail101);
|
||||||
}
|
}
|
||||||
User userPhone = userDao.findUniqueByProperty(Restrictions.eq("phoneNumber",unionId));
|
User userPhone = userDao.findUniqueByProperty(Restrictions.eq("phoneNumber",phone));
|
||||||
if (userPhone == null) {
|
if (userPhone == null) {
|
||||||
throw new IfishException(ResultEnum.fail101);
|
throw new IfishException(ResultEnum.fail101);
|
||||||
}
|
}
|
||||||
|
|
@ -528,23 +514,47 @@ public class UserServiceImpl implements UserService {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// 微信账号下绑定的userid改为手机号的userid
|
// 微信账号下绑定的userid改为手机号的userid
|
||||||
DeviceUserId priId = deviceUser.getPriId();
|
updateData("update tbl_device_user set user_id = " + userPhone.getUserId() + " where device_id = " + deviceUser.getPriId().getDeviceId() + " and user_id = " + userWechat.getUserId());
|
||||||
priId.setUserId(userPhone.getUserId());
|
// tbl_Camera_User_Mapper.updateDeviceUserId(userPhone.getUserId(), deviceUser.getPriId().getDeviceId(), userWechat.getUserId());
|
||||||
deviceUserDao.update(deviceUser);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//如果 手机号码账号下不存在设备 则修改微信账号下的设备关联为手机号的userid
|
//如果 手机号码账号下不存在设备 则修改微信账号下的设备关联为手机号的userid
|
||||||
if (deviceUserListPhone.size() == 0) {
|
if (deviceUserListPhone.size() == 0) {
|
||||||
DeviceUserId priId = deviceUser.getPriId();
|
updateData("update tbl_device_user set user_id = " + userPhone.getUserId() + " where device_id = " + deviceUser.getPriId().getDeviceId() + " and user_id = " + userWechat.getUserId());
|
||||||
priId.setUserId(userPhone.getUserId());
|
// tbl_Camera_User_Mapper.updateDeviceUserId(userPhone.getUserId(), deviceUser.getPriId().getDeviceId(), userWechat.getUserId());
|
||||||
deviceUserDao.update(deviceUser);
|
}
|
||||||
|
}
|
||||||
|
List<CameraUser> cameraUserListWechat = cameraUserDao.findByProperty(Restrictions.eq("cameraUserId.userId", userWechat.getUserId()));
|
||||||
|
List<CameraUser> cameraUserListPhone = cameraUserDao.findByProperty(Restrictions.eq("cameraUserId.userId", userPhone.getUserId()));
|
||||||
|
for(CameraUser cameraUser:cameraUserListWechat){
|
||||||
|
for (CameraUser cameraPhone : cameraUserListPhone) {
|
||||||
|
//如果 手机账号中存在设备
|
||||||
|
if (cameraPhone.getCameraUserId().getCameraId().equals(cameraUser.getCameraUserId().getCameraId())) {
|
||||||
|
//当前账号是主控制账号
|
||||||
|
if (cameraPhone.getIsMaster().equals("1")) {
|
||||||
|
//删除 微信账号下的设备
|
||||||
|
cameraUserDao.delete(cameraPhone);
|
||||||
|
} else {
|
||||||
|
//修改 手机号账号下的设备为主控设备
|
||||||
|
cameraPhone.setIsMaster("1");
|
||||||
|
cameraUserDao.update(cameraPhone);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 微信账号下绑定的userid改为手机号的userid
|
||||||
|
updateData("update tbl_camera_user set user_id = " + userPhone.getUserId() + " where camera_id = " + cameraUser.getCameraUserId().getCameraId());
|
||||||
|
// tbl_Camera_User_Mapper.updateCameraUserId(userPhone.getUserId(), Integer.valueOf(cameraUser.getCameraUserId().getCameraId()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//如果 手机号码账号下不存在设备 则修改微信账号下的设备关联为手机号的userid
|
||||||
|
if (cameraUserListPhone.size() == 0) {
|
||||||
|
updateData("update tbl_camera_user set user_id = " + userPhone.getUserId() + " where camera_id = " + cameraUser.getCameraUserId().getCameraId());
|
||||||
|
// tbl_Camera_User_Mapper.updateCameraUserId(userPhone.getUserId(), Integer.valueOf(cameraUser.getCameraUserId().getCameraId()));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
//修改手机账号的微信unionid
|
//修改手机账号的微信unionid
|
||||||
userPhone.setWechatUnionid(userWechat.getWechatUnionid());
|
userPhone.setWechatUnionid(userWechat.getWechatUnionid());
|
||||||
userDao.update(userPhone);
|
userDao.update(userPhone);
|
||||||
|
userDao.delete(userWechat);
|
||||||
//用户资产信息
|
//用户资产信息
|
||||||
UserAssetDto userAssetDtoWechat = getUserAssetInfo(userWechat.getUserId());
|
UserAssetDto userAssetDtoWechat = getUserAssetInfo(userWechat.getUserId());
|
||||||
UserAssetDto userAssetDtoPhone = getUserAssetInfo(userPhone.getUserId());
|
UserAssetDto userAssetDtoPhone = getUserAssetInfo(userPhone.getUserId());
|
||||||
|
|
@ -575,6 +585,42 @@ public class UserServiceImpl implements UserService {
|
||||||
return wechatValidate(unionId);
|
return wechatValidate(unionId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updateData(String sql){
|
||||||
|
ResourceBundle bundle = ResourceBundle.getBundle("jdbc");
|
||||||
|
String driver = bundle.getString("jdbc.driver");
|
||||||
|
String url = bundle.getString("jdbc.url");
|
||||||
|
String username = bundle.getString("jdbc.username");
|
||||||
|
String password = bundle.getString("jdbc.password");
|
||||||
|
Connection connection = null;
|
||||||
|
PreparedStatement preparedStatement = null;
|
||||||
|
try {
|
||||||
|
Class.forName(driver);
|
||||||
|
connection = DriverManager.getConnection(url, username, password);
|
||||||
|
preparedStatement = connection.prepareStatement(sql);
|
||||||
|
preparedStatement.executeUpdate();
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} finally {
|
||||||
|
if (preparedStatement != null) {
|
||||||
|
try {
|
||||||
|
preparedStatement.close();
|
||||||
|
} catch (SQLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (connection != null) {
|
||||||
|
try {
|
||||||
|
connection.close();
|
||||||
|
} catch (SQLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更多用户数据信息
|
* 更多用户数据信息
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue