| | |
| | | import com.mzl.flower.base.cache.StringCacheClient; |
| | | import com.mzl.flower.config.exception.BaseException; |
| | | import com.mzl.flower.config.exception.ValidationException; |
| | | import com.mzl.flower.config.security.SecurityUtils; |
| | | import com.mzl.flower.config.security.token.PhoneAuthenticationToken; |
| | | import com.mzl.flower.config.security.token.UserIdAuthenticationToken; |
| | | import com.mzl.flower.config.security.token.WebAuthenticationToken; |
| | |
| | | import com.mzl.flower.dto.request.UserPhoneLoginDTO; |
| | | import com.mzl.flower.dto.response.customer.CustomerDTO; |
| | | import com.mzl.flower.dto.response.wx.WxUserVO; |
| | | import com.mzl.flower.dto.security.UserDTO; |
| | | import com.mzl.flower.entity.customer.Customer; |
| | | import com.mzl.flower.entity.system.User; |
| | | import com.mzl.flower.mapper.customer.CustomerMapper; |
| | | import com.mzl.flower.service.customer.CustomerService; |
| | |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.http.ResponseEntity; |
| | | import org.springframework.security.authentication.AuthenticationDetailsSource; |
| | |
| | | |
| | | @Autowired |
| | | private CustomerMapper customerMapper; |
| | | |
| | | @Autowired |
| | | private CustomerService customerService; |
| | | |
| | | |
| | | @Autowired |
| | |
| | | } |
| | | |
| | | User user = userService.findByTel(tel, Constants.USER_TYPE.customer.name()); |
| | | User user1 = null; |
| | | String tokenCache =""; |
| | | if(user == null){ |
| | | loginDTO.setUserType(Constants.USER_TYPE.customer.name()); |
| | | User user1 = userService.registPhoneUser(loginDTO); |
| | | user1 = userService.registPhoneUser(loginDTO); |
| | | if(org.springframework.util.StringUtils.isEmpty(user1)){ |
| | | throw new ValidationException("注册用户信息报错"); |
| | | } |
| | |
| | | if (currentCustomer.getIsEnabled() == false) { |
| | | throw new ValidationException("用户已禁用,请联系管理员"); |
| | | } |
| | | |
| | | |
| | | tokenCache = stringCacheClient.get(TOKEN_KEY + SEPARATOR + user.getId()); |
| | | if (StringUtils.isNotBlank(tokenCache)) { |
| | | //强制删除token,下线 |
| | |
| | | OAuth2AccessToken token = loginService.getAccessToken(authentication, Constants.USER_TYPE.customer.name()); |
| | | //删除缓存中的验证码 |
| | | stringCacheClient.delete(SMS_CODE_KEY + SEPARATOR + Constants.USER_TYPE.customer.name() + SEPARATOR + tel); |
| | | stringCacheClient.set(TOKEN_KEY + SEPARATOR + user.getId(),token.getValue()); |
| | | if(user == null){ |
| | | stringCacheClient.set(TOKEN_KEY + SEPARATOR + user1.getId(),token.getValue()); |
| | | }else { |
| | | stringCacheClient.set(TOKEN_KEY + SEPARATOR + user.getId(), token.getValue()); |
| | | } |
| | | return returnData(R.SUCCESS.getCode(),token); |
| | | }catch (UsernameNotFoundException e){ |
| | | throw new ValidationException("用户不存在"); |
| | |
| | | throw new BaseException(R.RUNTIME_EXCEPTION.getCode(),"登录错误"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | @PostMapping("/account/close") |
| | | @ApiOperation(value = "账户注销", notes = "账户注销") |
| | | public ResponseEntity<ReturnDataDTO<Boolean>> accountClose() { |
| | | |
| | | String userId = SecurityUtils.getUserId(); |
| | | |
| | | if(StringUtils.isNotBlank(userId)){ |
| | | // |
| | | CustomerDTO currentCustomer = customerMapper.getCurrentCustomer(userId); |
| | | if(null==currentCustomer){ |
| | | throw new BaseException(R.RUNTIME_EXCEPTION.getCode(),"用户不存在"); |
| | | } |
| | | |
| | | currentCustomer.setIsClosed(true); |
| | | |
| | | User user=userService.getUserById(userId); |
| | | |
| | | |
| | | if (StringUtils.isNotBlank(user.getLoginName())) { |
| | | currentCustomer.setName("智信-" + user.getLoginName().substring(user.getLoginName().length() - 4)); |
| | | |
| | | } |
| | | currentCustomer.setCover("https://hmy-flower.oss-cn-shanghai.aliyuncs.com/8f/8f205ea4618b4ce48d5bd204ae73f075tmp_f0c47a66148245dc17d74563c5939e764273ba583619664d.jpg"); |
| | | |
| | | Customer customer=new Customer(); |
| | | BeanUtils.copyProperties(currentCustomer,customer); |
| | | |
| | | // 会员注销 |
| | | customer.setIsMember(false); |
| | | // 会员过期时间设置为空 |
| | | customer.setMemberOvertime(null); |
| | | |
| | | customerMapper.updateById(customer); |
| | | |
| | | return returnData(R.SUCCESS.getCode(),true); |
| | | |
| | | }else{ |
| | | throw new BaseException(R.RUNTIME_EXCEPTION.getCode(),"用户ID不能为空"); |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | } |