Merge remote-tracking branch 'origin/master'
| | |
| | | */ |
| | | @GetMapping("/user/info/{username}") |
| | | public R<LoginUser> getUserInfo(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); |
| | | @GetMapping("/user/infoShop/{username}") |
| | | public R<LoginUser> infoShop(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); |
| | | |
| | | /** |
| | | * 注册用户信息 |
| | |
| | | { |
| | | return R.fail("获取用户失败:" + throwable.getMessage()); |
| | | } |
| | | @Override |
| | | public R<LoginUser> infoShop(String username, String source) |
| | | { |
| | | return R.fail("门店登录获取用户失败:" + throwable.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public R<Boolean> registerUserInfo(SysUser sysUser, String source) |
| | |
| | | userClient.updateSysUser(sysUser); |
| | | return R.ok(map); |
| | | } |
| | | @PostMapping("loginShop") |
| | | public R<?> loginShop(@RequestBody LoginBody form, HttpServletRequest request) { |
| | | // 用户登录 |
| | | LoginUser userInfo = sysLoginService.loginShop(form.getUsername(), form.getPassword(), request); |
| | | HashMap<String, Object> map = new HashMap<>(); |
| | | map.put("token", tokenService.createToken(userInfo)); |
| | | List<SysRole> roles = userInfo.getSysUser().getRoles(); |
| | | if(CollectionUtils.isEmpty(roles)){ |
| | | return R.fail("请关联角色!"); |
| | | } |
| | | |
| | | map.put("roleName",roles.get(0).getRoleName()); |
| | | map.put("info", userInfo); |
| | | // 修改用户最后登录时间 |
| | | SysUser sysUser = new SysUser(); |
| | | sysUser.setUserId(userInfo.getSysUser().getUserId()); |
| | | sysUser.setLoginDate(new Date()); |
| | | System.out.println("修改用户登录时间" + sysUser); |
| | | userClient.updateSysUser(sysUser); |
| | | return R.ok(map); |
| | | } |
| | | |
| | | @DeleteMapping("logout") |
| | | public R<?> logout(HttpServletRequest request) { |
| | |
| | | if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_FAIL_STATUS, "用户已停用,请联系管理员"); |
| | | // throw new ServiceException("对不起,您的账号:" + username + " 已停用"); |
| | | throw new ServiceException("您所属门店已被冻结,请联系平台"); |
| | | } |
| | | passwordService.validate(user, password, request); |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_SUCCESS_STATUS, "登录成功"); |
| | | return userInfo; |
| | | } |
| | | public LoginUser loginShop(String username, String password, HttpServletRequest request) { |
| | | username = username.trim(); |
| | | // 查询用户信息 |
| | | R<LoginUser> userResult = remoteUserService.infoShop(username, SecurityConstants.INNER); |
| | | |
| | | if (StringUtils.isNull(userResult) || StringUtils.isNull(userResult.getData())) { |
| | | recordLogService.recordLogininfor(request, null, username, Constants.LOGIN_FAIL_STATUS, "登录用户不存在"); |
| | | throw new ServiceException("登录用户:" + username + " 不存在"); |
| | | } |
| | | LoginUser userInfo = userResult.getData(); |
| | | SysUser user = userResult.getData().getSysUser(); |
| | | |
| | | // 用户名或密码为空 错误 |
| | | if (StringUtils.isAnyBlank(username, password)) { |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_FAIL_STATUS, "用户/密码必须填写"); |
| | | throw new ServiceException("用户/密码必须填写"); |
| | | } |
| | | // 密码如果不在指定范围内 错误 |
| | | if (password.length() < UserConstants.PASSWORD_MIN_LENGTH |
| | | || password.length() > UserConstants.PASSWORD_MAX_LENGTH) { |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_FAIL_STATUS, "用户密码不在指定范围"); |
| | | throw new ServiceException("用户密码不在指定范围"); |
| | | } |
| | | // 用户名不在指定范围内 错误 |
| | | if (username.length() < UserConstants.USERNAME_MIN_LENGTH |
| | | || username.length() > UserConstants.USERNAME_MAX_LENGTH) { |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_FAIL_STATUS, "用户名不在指定范围"); |
| | | throw new ServiceException("用户名不在指定范围"); |
| | | } |
| | | // IP黑名单校验 |
| | | String blackStr = Convert.toStr(redisService.getCacheObject(CacheConstants.SYS_LOGIN_BLACKIPLIST)); |
| | | if (IpUtils.isMatchedIp(blackStr, IpUtils.getIpAddr())) { |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_FAIL_STATUS, "很遗憾,访问IP已被列入系统黑名单"); |
| | | throw new ServiceException("很遗憾,访问IP已被列入系统黑名单"); |
| | | } |
| | | |
| | | if (R.FAIL == userResult.getCode()) { |
| | | throw new ServiceException(userResult.getMsg()); |
| | | } |
| | | |
| | | |
| | | if (UserStatus.DELETED.getCode().equals(user.getDelFlag())) { |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_FAIL_STATUS, "对不起,您的账号已被删除"); |
| | | throw new ServiceException("对不起,您的账号:" + username + " 已被删除"); |
| | | } |
| | | if (UserStatus.DISABLE.getCode().equals(user.getStatus())) { |
| | | recordLogService.recordLogininfor(request, user.getUserId().intValue(), username, Constants.LOGIN_FAIL_STATUS, "用户已停用,请联系管理员"); |
| | | // throw new ServiceException("对不起,您的账号:" + username + " 已停用"); |
| | | throw new ServiceException("您的账号已被禁用,请联系平台"); |
| | | } |
| | | passwordService.validate(user, password, request); |
| | |
| | | @InnerAuth |
| | | @GetMapping("/infoShop/{username}") |
| | | public R<LoginUser> infoShop(@PathVariable("username") String username) { |
| | | SysUser sysUser = userService.selectUserByUserName(username); |
| | | SysUser sysUser = userService.selectUserShopByUserName(username); |
| | | if (StringUtils.isNull(sysUser)) { |
| | | return R.fail("用户名或密码错误"); |
| | | } |
| | |
| | | * @return 用户对象信息 |
| | | */ |
| | | SysUser selectUserByUserName(String userName); |
| | | SysUser selectUserShopByUserName(String userName); |
| | | |
| | | /** |
| | | * 通过用户ID查询用户 |
| | |
| | | * @return 用户对象信息 |
| | | */ |
| | | SysUser selectUserByUserName(String userName); |
| | | SysUser selectUserShopByUserName(String userName); |
| | | |
| | | /** |
| | | * 通过用户ID查询用户 |
| | |
| | | public SysUser selectUserByUserName(String userName) { |
| | | return userMapper.selectUserByUserName(userName); |
| | | } |
| | | @Override |
| | | public SysUser selectUserShopByUserName(String userName) { |
| | | return userMapper.selectUserShopByUserName(userName); |
| | | } |
| | | |
| | | /** |
| | | * 通过用户ID查询用户 |
| | |
| | | <select id="selectUserByUserName" parameterType="String" resultMap="SysUserResult"> |
| | | <include refid="selectUserVo"/> |
| | | where u.user_name = #{userName} and u.del_flag = '0' |
| | | and u.role_type = 1 |
| | | </select> |
| | | <select id="selectUserShopByUserName" parameterType="String" resultMap="SysUserResult"> |
| | | <include refid="selectUserVo"/> |
| | | where u.user_name = #{userName} and u.del_flag = '0' |
| | | and u.role_type = 2 |
| | | </select> |
| | | |
| | | <select id="selectUserById" parameterType="Long" resultMap="SysUserResult"> |
| | |
| | | user.setTopUser(byId); |
| | | } |
| | | //获取绑定下级列表 |
| | | List<AppUser> list = appUserService.lambdaQuery().eq(AppUser::getInviteUserId, user.getId()).list(); |
| | | List<AppUser> list = appUserService.lambdaQuery() |
| | | .eq(AppUser::getInviteUserId, user.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .list(); |
| | | for (AppUser appUser : list) { |
| | | Long count1 = appUserService.lambdaQuery().eq(AppUser::getVipId, 1).eq(AppUser::getInviteUserId, appUser.getId()).count(); |
| | | Long count2 = appUserService.lambdaQuery().eq(AppUser::getVipId, 2).eq(AppUser::getInviteUserId, appUser.getId()).count(); |
| | | Long count3 = appUserService.lambdaQuery().eq(AppUser::getVipId, 3).eq(AppUser::getInviteUserId, appUser.getId()).count(); |
| | | Long count4 = appUserService.lambdaQuery().eq(AppUser::getVipId, 4).eq(AppUser::getInviteUserId, appUser.getId()).count(); |
| | | Long count5 = appUserService.lambdaQuery().eq(AppUser::getVipId, 5).eq(AppUser::getInviteUserId, appUser.getId()).count(); |
| | | Long count6 = appUserService.lambdaQuery().eq(AppUser::getVipId, 6).eq(AppUser::getInviteUserId, appUser.getId()).count(); |
| | | Long count7 = appUserService.lambdaQuery().eq(AppUser::getVipId, 7).eq(AppUser::getInviteUserId, appUser.getId()).count(); |
| | | Long count1 = appUserService.lambdaQuery() |
| | | .eq(AppUser::getVipId, 1) |
| | | .eq(AppUser::getInviteUserId, appUser.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .count(); |
| | | Long count2 = appUserService.lambdaQuery() |
| | | .eq(AppUser::getVipId, 2) |
| | | .eq(AppUser::getInviteUserId, appUser.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .count(); |
| | | Long count3 = appUserService.lambdaQuery() |
| | | .eq(AppUser::getVipId, 3) |
| | | .eq(AppUser::getInviteUserId, appUser.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .count(); |
| | | Long count4 = appUserService.lambdaQuery() |
| | | .eq(AppUser::getVipId, 4) |
| | | .eq(AppUser::getInviteUserId, appUser.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .count(); |
| | | Long count5 = appUserService.lambdaQuery() |
| | | .eq(AppUser::getVipId, 5) |
| | | .eq(AppUser::getInviteUserId, appUser.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .count(); |
| | | Long count6 = appUserService.lambdaQuery() |
| | | .eq(AppUser::getVipId, 6) |
| | | .eq(AppUser::getInviteUserId, appUser.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .count(); |
| | | Long count7 = appUserService.lambdaQuery() |
| | | .eq(AppUser::getVipId, 7) |
| | | .eq(AppUser::getInviteUserId, appUser.getId()) |
| | | .eq(AppUser::getDelFlag, 0) |
| | | .ne(AppUser::getStatus, 3) |
| | | .count(); |
| | | appUser.setCount1(count1); |
| | | appUser.setCount2(count2); |
| | | appUser.setCount3(count3); |
| | |
| | | and t2.phone like concat('%',#{agentQuery.phone},'%') |
| | | </if> |
| | | <if test="agentQuery.vipId !=null"> |
| | | and t1.applicationVipId = #{agentQuery.vipId} |
| | | and t1.application_vip_id = #{agentQuery.vipId} |
| | | </if> |
| | | <if test="agentQuery.status !=null"> |
| | | and t1.status = #{agentQuery.status} |
| | |
| | | Page<Technician> page = technicianService.lambdaQuery().like(name != null, Technician::getName, name) |
| | | .like(phone != null, Technician::getPhone, phone) |
| | | .eq(Technician::getShopId, sysUser.getObjectId()) |
| | | .eq(Technician::getDelFlag, 0) |
| | | .page(Page.of(pageNum, pageSize)); |
| | | return R.ok(page); |
| | | } |
| | |
| | | SysUser sysUser = sysUserClient.getSysUser(userid).getData(); |
| | | if (technician.getId()==null) { |
| | | technician.setSubscribeStatus(2); |
| | | List<Technician> list = technicianService.lambdaQuery().eq(Technician::getPhone, technician.getPhone()).eq(Technician::getShopId, sysUser.getObjectId()).list(); |
| | | List<Technician> list = technicianService.lambdaQuery() |
| | | .eq(Technician::getPhone, technician.getPhone()) |
| | | .eq(Technician::getShopId, sysUser.getObjectId()) |
| | | .eq(Technician::getDelFlag, 0).list(); |
| | | if (!list.isEmpty()) { |
| | | return R.fail("当前号码已经添加"); |
| | | } |
| | |
| | | appUserShopClient.saveAppUserShop(appUserShop); |
| | | |
| | | }else { |
| | | List<Technician> list = technicianService.lambdaQuery().eq(Technician::getPhone, technician.getPhone()).eq(Technician::getShopId, sysUser.getObjectId()) |
| | | .ne(Technician::getId, technician.getId()).list(); |
| | | if(list.size() > 0){ |
| | | return R.fail("当前号码已经添加"); |
| | | } |
| | | R<AppUser> appUserByPhone1 = appUserClient.getAppUserByPhone1(technician.getPhone()); |
| | | if (appUserByPhone1.getData()==null){ |
| | | return R.fail("当前号码暂无注册用户"); |
| | | Technician byId = technicianService.getById(technician.getId()); |
| | | if (byId.getPhone()!=technician.getPhone()){ |
| | | List<Technician> list = technicianService.lambdaQuery() |
| | | .eq(Technician::getPhone, technician.getPhone()) |
| | | .eq(Technician::getShopId, sysUser.getObjectId()) |
| | | .ne(Technician::getId, byId.getId()) |
| | | .eq(Technician::getDelFlag, 0).list(); |
| | | if (!list.isEmpty()) { |
| | | return R.fail("当前号码已经添加"); |
| | | } |
| | | R<AppUser> appUserByPhone1 = appUserClient.getAppUserByPhone1(technician.getPhone()); |
| | | if (appUserByPhone1.getData()==null){ |
| | | return R.fail("当前号码暂无注册用户"); |
| | | } |
| | | } |
| | | } |
| | | technician.setShopId(sysUser.getObjectId()); |