Browse Source

重复用户

v6
yanyan 1 year ago
parent
commit
2c9f3c21be
  1. 4
      lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppEnterpriseInformationController.java
  2. 2
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/framework/shiro/service/LoginService.java
  3. 3
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/mapper/UserMapper.java
  4. 2
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/service/IUserService.java
  5. 22
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/service/UserServiceImpl.java
  6. 6
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/resources/mapper/system/UserMapper.xml

4
lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppEnterpriseInformationController.java

@ -72,9 +72,9 @@ public class AppEnterpriseInformationController extends BaseController
/**
* 查询企业信息以及二维码地址
*/
@GetMapping("/queryListAndQrInfo")
@PostMapping("/queryListAndQrInfo")
@ResponseBody
public TableDataInfo queryListAndQrInfo(EnterpriseInformation enterpriseInformation)
public TableDataInfo queryListAndQrInfo(@RequestBody EnterpriseInformation enterpriseInformation)
{
startPage();
List<EnterpriseInformation> list = enterpriseInformationService.selectEnterpriseInformationAndQrInfo(enterpriseInformation);

2
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/framework/shiro/service/LoginService.java

@ -136,6 +136,8 @@ public class LoginService
throw new UserPasswordNotMatchException();
}
//线上bug 会查询到俩条用户信息 在登陆之前将用户旧信息改为删除状态
userService.updateClientUserByLoginName(username,userSource);
// 查询用户信息
User user = userService.selectClientUserByLoginName(username,userSource);

3
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/mapper/UserMapper.java

@ -90,6 +90,9 @@ public interface UserMapper
*/
List<User> selectClientUserByLoginNameList(UserSearchDto userSearchDto);
int updateUserFlag(User user);
/**
* 结合查询
* @param userName

2
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/service/IUserService.java

@ -92,6 +92,8 @@ public interface IUserService
*/
User selectClientUserByLoginName(String userName,Integer userSource);
int updateClientUserByLoginName(String userName,Integer userSource);
/**
* 通过手机号码查询用户
*

22
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/service/UserServiceImpl.java

@ -53,6 +53,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* 用户 业务层处理
@ -196,6 +197,27 @@ public class UserServiceImpl implements IUserService {
return user;
}
@Override
@Transactional
public int updateClientUserByLoginName(String userName, Integer userSource) {
UserSearchDto userSearchDto = new UserSearchDto();
userSearchDto.setUserSource(userSource);
userSearchDto.setLoginName(userName);
List<User> users = userMapper.selectClientUserByLoginNameList(userSearchDto);
if (users.size()>1) {
// 降序排序
List<User> sortedEventsDesc = users.stream()
.peek(item->item.setCreateTime(item.getUpdateTime()!=null?item.getUpdateTime():item.getCreateTime()))
.sorted((e1, e2) -> e2.getCreateTime().compareTo(e1.getCreateTime()))
.collect(Collectors.toList());
for (int i = 0; i < sortedEventsDesc.size(); i++) {
if (i == 0) continue;
userMapper.updateUserFlag(users.get(i));
}
}
return 0;
}
/**
* 通过手机号码查询用户
*

6
lib/EmergencyService/zdxtEmergencyAuthService/src/main/resources/mapper/system/UserMapper.xml

@ -359,7 +359,11 @@
and u.del_flag = 0
</where>
</select>
<update id="updateUserFlag" parameterType="User">
update sys_user
set del_flag = 1
where login_name = #{loginName} and user_source = #{userSource} and user_id = #{userId}
</update>
<select id="selectClientUserByLoginNameList" parameterType="com.zdxt.auth.project.system.user.dto.UserSearchDto" resultMap="UserResult">
<include refid="selectUserVo"/>
<where>

Loading…
Cancel
Save