Administrator
16 hours ago 8407c7e476c904fe047d058f33ba8cdb858f0586
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -34,8 +34,10 @@
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;
@@ -702,6 +704,7 @@
    private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class);
    private final YhAiMemberMapper yhAiMemberMapper;
    private final YHAiCompanyMapper yhAiCompanyMapper;
    private final YHSysCompanyLevelMapper yhSysCompanyLevelMapper;
    @Override
    @Transactional
@@ -747,6 +750,21 @@
                        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);
@@ -779,14 +797,17 @@
                    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("rasToken", generateAsaToken(token));
            authInfo.put("member", yhAiMember);
            String rasToken = generateAsaToken(token);
            authInfo.put("rasToken", rasToken);
            log.info("登录成功rasToken={}", rasToken);
            febsResponse.success().data(authInfo);
        } else {
            return febsResponse.fail().message("自动登录失败");
@@ -841,8 +862,8 @@
            if (ObjectUtil.isNotEmpty(aiCompany)){
                companyId = aiCompany.getId();
            }
            entity.setCompanyId(companyId);
        }
        entity.setCompanyId(companyId);
        yhAiMemberMapper.updateById(entity);
        return new FebsResponse().success();
@@ -2078,6 +2099,13 @@
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse getCompanyCode() {
        String companyCode = yhAiCompanyMapper.selectDictLabel("xcx_register_default","default");
        return new FebsResponse().success().data(companyCode);
    }
//    public static void main(String[] args) {
//        Long userld = 16425L;
//        String shopAccount = "爱和美医疗";