| | |
| | | |
| | | import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; |
| | | import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | |
| | | import com.doumee.dao.business.web.response.HomeResponse; |
| | | import com.doumee.dao.business.web.response.UserResponse; |
| | | import com.doumee.service.business.MemberService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import me.chanjar.weixin.common.error.WxErrorException; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.shiro.SecurityUtils; |
| | |
| | | * @date 2023/09/27 18:06 |
| | | */ |
| | | @Service |
| | | @Slf4j |
| | | public class MemberServiceImpl implements MemberService { |
| | | |
| | | @Autowired |
| | |
| | | memberMapper.insert(member); |
| | | return member.getId(); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public String createManageMember(Member member) { |
| | |
| | | |
| | | @Override |
| | | public void update(Member member) { |
| | | |
| | | QueryWrapper<Member> wrapper = new QueryWrapper<>(); |
| | | wrapper.lambda() |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .eq(Member::getType,Constants.ONE) |
| | | .eq(Member::getCardNo,member.getCardNo()); |
| | | Member member1 = memberMapper.selectOne(wrapper); |
| | | if (Objects.nonNull(member1) && !member1.getId().equals(member.getId())){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"卡号存在重复"); |
| | | } |
| | | LoginUserInfo principal = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | Member update = new Member(); |
| | | update.setId(member.getId()); |
| | |
| | | queryWrapper.lambda().eq(Member::getInfo, pageWrap.getModel().getInfo()); |
| | | } |
| | | if (pageWrap.getModel().getName() != null) { |
| | | queryWrapper.lambda().eq(Member::getName, pageWrap.getModel().getName()); |
| | | queryWrapper.lambda().like(Member::getName, pageWrap.getModel().getName()); |
| | | } |
| | | if (pageWrap.getModel().getNickname() != null) { |
| | | queryWrapper.lambda().eq(Member::getNickname, pageWrap.getModel().getNickname()); |
| | |
| | | queryWrapper.lambda().eq(Member::getPassword, pageWrap.getModel().getPassword()); |
| | | } |
| | | if (pageWrap.getModel().getCardNo() != null) { |
| | | queryWrapper.lambda().eq(Member::getCardNo, pageWrap.getModel().getCardNo()); |
| | | queryWrapper.lambda().like(Member::getCardNo, pageWrap.getModel().getCardNo()); |
| | | } |
| | | if (pageWrap.getModel().getCardSign() != null) { |
| | | queryWrapper.lambda().eq(Member::getCardSign, pageWrap.getModel().getCardSign()); |
| | |
| | | */ |
| | | @Override |
| | | public AccountResponse wxLogin(String code) { |
| | | log.error("================================"+code+ JSONObject.toJSONString( WxMiniConfig.wxMaService.getWxMaConfig())); |
| | | try { |
| | | //获取微信敏感数据 |
| | | WxMaJscode2SessionResult session = WxMiniConfig.wxMaService.getUserService().getSessionInfo(code); |
| | | log.error("================================"+ JSONObject.toJSONString(session)); |
| | | String openId = session.getOpenid(); |
| | | String unionId = session.getUnionid(); |
| | | if (StringUtils.isBlank(openId)) { |
| | |
| | | if(Objects.isNull(member)){ |
| | | //新增用户 需要进行用户绑定手机号 |
| | | member = new Member(); |
| | | member.setId(Constants.getUUID()); |
| | | member.setCreateDate(new Date()); |
| | | member.setIsdeleted(Constants.ZERO); |
| | | member.setOpenid(openId); |
| | | member.setUnionid(unionId); |
| | | member.setType(Constants.ZERO); |
| | | member.setRegisterDate(new Date()); |
| | | member.setOrigin(Constants.ZERO.toString()); |
| | | member.setStatus(Constants.ZERO); |
| | | memberMapper.insert(member); |
| | | accountResponse.setStatus(Constants.ONE); |
| | | }else{ |
| | | UserResponse userResponse = getUserInfo(member.getId()); |
| | | if(StringUtils.isBlank(member.getPhone())){ |
| | | accountResponse.setStatus(Constants.ONE); |
| | | }else{ |
| | | JwtPayLoad payLoad = new JwtPayLoad(userResponse.getId()); |
| | | accountResponse.setToken(JwtTokenUtil.generateToken(payLoad)); |
| | | } |
| | | accountResponse.setUserResponse(userResponse); |
| | | } |
| | | |
| | | UserResponse userResponse = getUserInfo(member.getId()); |
| | | if(StringUtils.isBlank(member.getPhone())){ |
| | | accountResponse.setStatus(Constants.ONE); |
| | | } |
| | | JwtPayLoad payLoad = new JwtPayLoad(member.getId()); |
| | | accountResponse.setToken(JwtTokenUtil.generateToken(payLoad)); |
| | | accountResponse.setSessionKey(session.getSessionKey()); |
| | | accountResponse.setUserResponse(userResponse); |
| | | return accountResponse; |
| | | } catch (WxErrorException e) { |
| | | log.error(e.getMessage()); |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "微信登录异常!请联系管理员"); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | userResponse.setMobile(member.getPhone()); |
| | | return userResponse; |
| | | } |
| | | |
| | | |
| | | |
| | | } |