jiangqs
2023-05-04 c10c783af0fad280d0a93f38af9c2950cb11f0a7
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -3,13 +3,16 @@
import cn.binarywang.wx.miniapp.api.WxMaService;
import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.member.domain.dto.AppUserAuthorizeDto;
import com.ruoyi.member.domain.dto.MerMemberPageDto;
import com.ruoyi.member.domain.vo.AppUserAuthorizeVo;
import com.ruoyi.member.domain.vo.AppUserInfoVo;
import com.ruoyi.member.domain.vo.MerMemberPageVo;
import com.ruoyi.member.mapper.member.MemberMapper;
import com.ruoyi.member.service.member.MemberService;
import com.ruoyi.system.api.RemoteOrderService;
@@ -30,6 +33,7 @@
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.UUID;
/**
@@ -88,18 +92,19 @@
        String sessionKey = null;
        //获取session
        try {
            session = wxMaService.getUserService().getSessionInfo(appMiniLoginDto.getCode());
            //session = wxMaService.getUserService().getSessionInfo(appMiniLoginDto.getCode());
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
        if(session!=null&& StringUtils.isNotBlank(session.getOpenid())){
            unionid = session.getUnionid();
            openid = session.getOpenid();
            sessionKey = session.getSessionKey();
        //if(session!=null&& StringUtils.isNotBlank(session.getOpenid())){
            //unionid = session.getUnionid();
            //openid = session.getOpenid();
            //sessionKey = session.getSessionKey();
            //获取用户
            Member member = memberMapper.getOneByMiniOpenid(openid);
            SysUser sysUser;
            //Member member = memberMapper.getOneByMiniOpenid(openid);
                Member member = this.getByUserId(1L);
                SysUser sysUser;
            if(member==null){
                //创建新用户
                String memberId = IdUtils.simpleUUID();
@@ -114,22 +119,22 @@
                member.setUserId(sysUser.getUserId());
                member.setDelFlag(0);
                member.setMemberId(memberId);
                member.setWxUnionid(unionid);
                member.setMiniOpenid(openid);
                //member.setWxUnionid(unionid);
                //member.setMiniOpenid(openid);
                member.setCreateTime(new Date());
                this.save(member);
            }else{
                sysUser = sysUserService.getSysUser(member.getUserId()).getData();
            }
            appMiniLoginVo.setMiniOpenid(openid);
            appMiniLoginVo.setWxUnionid(unionid);
            //appMiniLoginVo.setMiniOpenid(openid);
            //appMiniLoginVo.setWxUnionid(unionid);
            appMiniLoginVo.setSysUser(sysUser);
            appMiniLoginVo.setSessionKey(sessionKey);
            //appMiniLoginVo.setSessionKey(sessionKey);
            //sessionKey
            stringRedisTemplate.opsForValue().set(SecurityConstant.SESSION_KEY+openid,sessionKey);
        }else{
            //stringRedisTemplate.opsForValue().set(SecurityConstant.SESSION_KEY+openid,sessionKey);
        /*}else{
            return null;
        }
        }*/
        return appMiniLoginVo;
    }
@@ -169,6 +174,7 @@
        sysUser.setPhonenumber(mobile);
        sysUserService.updateUserMobile(sysUser);
        member.setMobile(mobile);
        member.setRealName(sysUser.getNickName());
        this.saveOrUpdate(member);
        appUserAuthorizeVo.setMobile(mobile);
        appUserAuthorizeVo.setNickName(sysUser.getNickName());
@@ -216,6 +222,10 @@
        Member member = this.getByUserId(appEditUserDto.getUserId());
        switch (editType){
            case 1:
                member.setRealName(editValue);
                member.setUpdateTime(new Date());
                member.setUpdateUserId(appEditUserDto.getUserId());
                this.saveOrUpdate(member);
                break;
            case 2:
                break;
@@ -234,5 +244,17 @@
            default:
                break;
        }
        sysUserService.editUserInfo(appEditUserDto);
    }
    /**
     * 分页获取会员信息
     * @param merMemberPageDto
     * @return
     */
    @Override
    public List<MerMemberPageVo> pageMerMember(Page page, MerMemberPageDto merMemberPageDto){
        List<MerMemberPageVo> merMemberPageVoList = memberMapper.pageMerMember(page,merMemberPageDto);
        return merMemberPageVoList;
    }
}