|  | @@ -1,17 +1,18 @@
 | 
											
												
													
														|  |  package com.hwrj.cloud.portal.service.impl;
 |  |  package com.hwrj.cloud.portal.service.impl;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +import com.alibaba.fastjson.JSONObject;
 | 
											
												
													
														|  |  import com.hwrj.cloud.common.exception.Asserts;
 |  |  import com.hwrj.cloud.common.exception.Asserts;
 | 
											
												
													
														|  | 
 |  | +import com.hwrj.cloud.portal.domain.UmsMemberPlaformDo;
 | 
											
												
													
														|  |  import com.hwrj.cloud.portal.mapper.UmsMemberLevelMapper;
 |  |  import com.hwrj.cloud.portal.mapper.UmsMemberLevelMapper;
 | 
											
												
													
														|  |  import com.hwrj.cloud.portal.mapper.UmsMemberMapper;
 |  |  import com.hwrj.cloud.portal.mapper.UmsMemberMapper;
 | 
											
												
													
														|  | -import com.hwrj.cloud.portal.model.UmsMember;
 |  | 
 | 
											
												
													
														|  | -import com.hwrj.cloud.portal.model.UmsMemberExample;
 |  | 
 | 
											
												
													
														|  | -import com.hwrj.cloud.portal.model.UmsMemberLevel;
 |  | 
 | 
											
												
													
														|  | -import com.hwrj.cloud.portal.model.UmsMemberLevelExample;
 |  | 
 | 
											
												
													
														|  | 
 |  | +import com.hwrj.cloud.portal.mapper.UmsMemberPlatformMapper;
 | 
											
												
													
														|  | 
 |  | +import com.hwrj.cloud.portal.model.*;
 | 
											
												
													
														|  |  import com.hwrj.cloud.portal.domain.MemberDetails;
 |  |  import com.hwrj.cloud.portal.domain.MemberDetails;
 | 
											
												
													
														|  |  import com.hwrj.cloud.portal.service.UmsMemberCacheService;
 |  |  import com.hwrj.cloud.portal.service.UmsMemberCacheService;
 | 
											
												
													
														|  |  import com.hwrj.cloud.portal.service.UmsMemberService;
 |  |  import com.hwrj.cloud.portal.service.UmsMemberService;
 | 
											
												
													
														|  |  import com.hwrj.cloud.security.util.JwtTokenUtil;
 |  |  import com.hwrj.cloud.security.util.JwtTokenUtil;
 | 
											
												
													
														|  | 
 |  | +import lombok.extern.slf4j.Slf4j;
 | 
											
												
													
														|  |  import org.slf4j.Logger;
 |  |  import org.slf4j.Logger;
 | 
											
												
													
														|  |  import org.slf4j.LoggerFactory;
 |  |  import org.slf4j.LoggerFactory;
 | 
											
												
													
														|  |  import org.springframework.beans.factory.annotation.Autowired;
 |  |  import org.springframework.beans.factory.annotation.Autowired;
 | 
											
										
											
												
													
														|  | @@ -29,14 +30,13 @@ import org.springframework.stereotype.Service;
 | 
											
												
													
														|  |  import org.springframework.util.CollectionUtils;
 |  |  import org.springframework.util.CollectionUtils;
 | 
											
												
													
														|  |  import org.springframework.util.StringUtils;
 |  |  import org.springframework.util.StringUtils;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -import java.util.Date;
 |  | 
 | 
											
												
													
														|  | -import java.util.List;
 |  | 
 | 
											
												
													
														|  | -import java.util.Random;
 |  | 
 | 
											
												
													
														|  | 
 |  | +import java.util.*;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  /**
 |  |  /**
 | 
											
												
													
														|  |   * 会员管理Service实现类
 |  |   * 会员管理Service实现类
 | 
											
												
													
														|  |   * Created by macro on 2018/8/3.
 |  |   * Created by macro on 2018/8/3.
 | 
											
												
													
														|  |   */
 |  |   */
 | 
											
												
													
														|  | 
 |  | +@Slf4j
 | 
											
												
													
														|  |  @Service
 |  |  @Service
 | 
											
												
													
														|  |  public class UmsMemberServiceImpl implements UmsMemberService {
 |  |  public class UmsMemberServiceImpl implements UmsMemberService {
 | 
											
												
													
														|  |      private static final Logger LOGGER = LoggerFactory.getLogger(com.hwrj.cloud.portal.service.impl.UmsMemberServiceImpl.class);
 |  |      private static final Logger LOGGER = LoggerFactory.getLogger(com.hwrj.cloud.portal.service.impl.UmsMemberServiceImpl.class);
 | 
											
										
											
												
													
														|  | @@ -50,6 +50,10 @@ public class UmsMemberServiceImpl implements UmsMemberService {
 | 
											
												
													
														|  |      private UmsMemberLevelMapper memberLevelMapper;
 |  |      private UmsMemberLevelMapper memberLevelMapper;
 | 
											
												
													
														|  |      @Autowired
 |  |      @Autowired
 | 
											
												
													
														|  |      private UmsMemberCacheService memberCacheService;
 |  |      private UmsMemberCacheService memberCacheService;
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    @Autowired
 | 
											
												
													
														|  | 
 |  | +    private UmsMemberPlatformMapper umsMemberPlatformMapper;
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |      @Value("${redis.key.authCode}")
 |  |      @Value("${redis.key.authCode}")
 | 
											
												
													
														|  |      private String REDIS_KEY_PREFIX_AUTH_CODE;
 |  |      private String REDIS_KEY_PREFIX_AUTH_CODE;
 | 
											
												
													
														|  |      @Value("${redis.expire.authCode}")
 |  |      @Value("${redis.expire.authCode}")
 | 
											
										
											
												
													
														|  | @@ -178,6 +182,29 @@ public class UmsMemberServiceImpl implements UmsMemberService {
 | 
											
												
													
														|  |          MemberDetails memberDetails = (MemberDetails) auth.getPrincipal();
 |  |          MemberDetails memberDetails = (MemberDetails) auth.getPrincipal();
 | 
											
												
													
														|  |          return memberDetails.getUmsMember();
 |  |          return memberDetails.getUmsMember();
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  | 
 |  | +    @Override
 | 
											
												
													
														|  | 
 |  | +    public Map<String,Object> getCurrentWxUser() {
 | 
											
												
													
														|  | 
 |  | +        SecurityContext ctx = SecurityContextHolder.getContext();
 | 
											
												
													
														|  | 
 |  | +        Authentication auth = ctx.getAuthentication();
 | 
											
												
													
														|  | 
 |  | +        MemberDetails memberDetails = (MemberDetails) auth.getPrincipal();
 | 
											
												
													
														|  | 
 |  | +        UmsMember umsMember = memberDetails.getUmsMember();
 | 
											
												
													
														|  | 
 |  | +        Map<String,Object> map = new HashMap<>();
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +        if (umsMember!=null){
 | 
											
												
													
														|  | 
 |  | +            map.put("user",umsMember);
 | 
											
												
													
														|  | 
 |  | +            UmsMemberPlatformExample example = new UmsMemberPlatformExample();
 | 
											
												
													
														|  | 
 |  | +            UmsMemberPlatformExample.Criteria criteria = example.createCriteria();
 | 
											
												
													
														|  | 
 |  | +            criteria.andMemberIdEqualTo(umsMember.getId());
 | 
											
												
													
														|  | 
 |  | +            List<UmsMemberPlatform> platforms = umsMemberPlatformMapper.selectByExample(example);
 | 
											
												
													
														|  | 
 |  | +            if (platforms==null||platforms.size()<1){
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +                throw  new RuntimeException("登录失败");
 | 
											
												
													
														|  | 
 |  | +            }
 | 
											
												
													
														|  | 
 |  | +            map.put("wxUsers",platforms.get(0));
 | 
											
												
													
														|  | 
 |  | +        }
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +        return map;
 | 
											
												
													
														|  | 
 |  | +    }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      @Override
 |  |      @Override
 | 
											
												
													
														|  |      public void updateIntegration(Long id, Integer integration) {
 |  |      public void updateIntegration(Long id, Integer integration) {
 | 
											
										
											
												
													
														|  | @@ -197,6 +224,8 @@ public class UmsMemberServiceImpl implements UmsMemberService {
 | 
											
												
													
														|  |          throw new UsernameNotFoundException("用户名或密码错误");
 |  |          throw new UsernameNotFoundException("用户名或密码错误");
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |      @Override
 |  |      @Override
 | 
											
												
													
														|  |      public String login(String username, String password) {
 |  |      public String login(String username, String password) {
 | 
											
												
													
														|  |          String token = null;
 |  |          String token = null;
 | 
											
										
											
												
													
														|  | @@ -209,6 +238,7 @@ public class UmsMemberServiceImpl implements UmsMemberService {
 | 
											
												
													
														|  |              UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
 |  |              UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
 | 
											
												
													
														|  |              SecurityContextHolder.getContext().setAuthentication(authentication);
 |  |              SecurityContextHolder.getContext().setAuthentication(authentication);
 | 
											
												
													
														|  |              token = jwtTokenUtil.generateToken(userDetails);
 |  |              token = jwtTokenUtil.generateToken(userDetails);
 | 
											
												
													
														|  | 
 |  | +            memberCacheService.setToken(token,username);
 | 
											
												
													
														|  |          } catch (AuthenticationException e) {
 |  |          } catch (AuthenticationException e) {
 | 
											
												
													
														|  |              LOGGER.warn("登录异常:{}", e.getMessage());
 |  |              LOGGER.warn("登录异常:{}", e.getMessage());
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
										
											
												
													
														|  | @@ -231,6 +261,7 @@ public class UmsMemberServiceImpl implements UmsMemberService {
 | 
											
												
													
														|  |              UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
 |  |              UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
 | 
											
												
													
														|  |              SecurityContextHolder.getContext().setAuthentication(authentication);
 |  |              SecurityContextHolder.getContext().setAuthentication(authentication);
 | 
											
												
													
														|  |              token = jwtTokenUtil.generateToken(userDetails);
 |  |              token = jwtTokenUtil.generateToken(userDetails);
 | 
											
												
													
														|  | 
 |  | +            memberCacheService.setToken(token,userDetails.getUsername());
 | 
											
												
													
														|  |          } catch (AuthenticationException e) {
 |  |          } catch (AuthenticationException e) {
 | 
											
												
													
														|  |              LOGGER.warn("登录异常:{}", e.getMessage());
 |  |              LOGGER.warn("登录异常:{}", e.getMessage());
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
										
											
												
													
														|  | @@ -242,6 +273,12 @@ public class UmsMemberServiceImpl implements UmsMemberService {
 | 
											
												
													
														|  |          return jwtTokenUtil.refreshHeadToken(token);
 |  |          return jwtTokenUtil.refreshHeadToken(token);
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +    @Override
 | 
											
												
													
														|  | 
 |  | +    public Long getMemberId() {
 | 
											
												
													
														|  | 
 |  | +        UmsMember member = getCurrentMember();
 | 
											
												
													
														|  | 
 |  | +        return member.getId();
 | 
											
												
													
														|  | 
 |  | +    }
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |      //对输入的验证码进行校验
 |  |      //对输入的验证码进行校验
 | 
											
												
													
														|  |      private boolean verifyAuthCode(String authCode, String telephone) {
 |  |      private boolean verifyAuthCode(String authCode, String telephone) {
 | 
											
												
													
														|  |          if (StringUtils.isEmpty(authCode)) {
 |  |          if (StringUtils.isEmpty(authCode)) {
 |