| | |
| | | import cc.mrbird.febs.vip.entity.MallVipConfig; |
| | | import cc.mrbird.febs.vip.mapper.MallVipConfigMapper; |
| | | import cc.mrbird.febs.yinhe.entity.YHAiCompany; |
| | | import cc.mrbird.febs.yinhe.entity.YHSysCompanyLevel; |
| | | import cc.mrbird.febs.yinhe.entity.YhAiMember; |
| | | import cc.mrbird.febs.yinhe.mapper.YHAiCompanyMapper; |
| | | import cc.mrbird.febs.yinhe.mapper.YHSysCompanyLevelMapper; |
| | | import cc.mrbird.febs.yinhe.mapper.YhAiMemberMapper; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | |
| | | private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class); |
| | | private final YhAiMemberMapper yhAiMemberMapper; |
| | | private final YHAiCompanyMapper yhAiCompanyMapper; |
| | | private final YHSysCompanyLevelMapper yhSysCompanyLevelMapper; |
| | | |
| | | @Override |
| | | @Transactional |
| | | public FebsResponse xcxLogin(ApiXcxLoginDto apiXcxLoginDto) throws IOException { |
| | | log.info("登录请求参数:{}", JSONObject.toJSONString(apiXcxLoginDto)); |
| | | FebsResponse febsResponse = new FebsResponse(); |
| | |
| | | Wrappers.lambdaQuery(YHAiCompany.class) |
| | | .eq(YHAiCompany::getCode, apiXcxLoginDto.getCompanyId()) |
| | | ); |
| | | if (ObjectUtil.isNotEmpty(aiCompany)){ |
| | | entity.setCompanyId(aiCompany.getId()); |
| | | if (ObjectUtil.isEmpty(aiCompany)){ |
| | | throw new FebsException("公司编码错误"); |
| | | } |
| | | String levelCode = aiCompany.getLevelCode(); |
| | | YHSysCompanyLevel yhSysCompanyLevel = yhSysCompanyLevelMapper.selectOne( |
| | | Wrappers.lambdaQuery(YHSysCompanyLevel.class) |
| | | .eq(YHSysCompanyLevel::getCode, levelCode) |
| | | ); |
| | | Integer memberNum = yhSysCompanyLevel.getMemberNum(); |
| | | List<YhAiMember> yhAiMembers = yhAiMemberMapper.selectList( |
| | | Wrappers.lambdaQuery(YhAiMember.class) |
| | | .eq(YhAiMember::getCompanyId, aiCompany.getId()) |
| | | .isNull(YhAiMember::getRoleId) |
| | | ); |
| | | Integer realNum = CollUtil.isEmpty(yhAiMembers) ? 0 : yhAiMembers.size(); |
| | | if (realNum >= memberNum){ |
| | | throw new FebsException("公司会员已满"); |
| | | } |
| | | entity.setCompanyId(aiCompany.getId()); |
| | | } |
| | | entity.setCreateTime(systemTime); |
| | | entity.setUpdateTime(systemTime); |
| | |
| | | redisUtils.del(existToken); |
| | | } |
| | | } |
| | | YhAiMember yhAiMember = yhAiMemberMapper.selectById(entity.getId()); |
| | | String token = IdUtil.simpleUUID(); |
| | | redisUtils.set(token, JSONObject.toJSONString(entity), -1); |
| | | redisUtils.set(token, JSONObject.toJSONString(yhAiMember), -1); |
| | | redisUtils.set(redisKey, token, -1); |
| | | Map<String, Object> authInfo = new HashMap<>(); |
| | | authInfo.put("token", token); |
| | | authInfo.put("appid", xcxProperties.getXcxAppid()); |
| | | authInfo.put("member", entity); |
| | | authInfo.put("member", yhAiMember); |
| | | authInfo.put("rasToken", generateAsaToken(token)); |
| | | febsResponse.success().data(authInfo); |
| | | } else { |
| | |
| | | public FebsResponse xcxSaveInfo(ApiXcxSaveInfoDto apiXcxSaveInfoDto) { |
| | | log.info("name={},phone={},avatar={},sex={}", |
| | | apiXcxSaveInfoDto.getNickName(),apiXcxSaveInfoDto.getPhone(),apiXcxSaveInfoDto.getAvatarUrl(),apiXcxSaveInfoDto.getGender()); |
| | | String memberId = LoginUserUtil.getLoginUser().getMemberUuid(); |
| | | String memberId = YHLoginUserUtil.getLoginUser().getMemberUuid(); |
| | | YhAiMember entity = yhAiMemberMapper.selectOne( |
| | | Wrappers.lambdaQuery(YhAiMember.class) |
| | | .eq(YhAiMember::getMemberUuid, memberId) |