src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -1,7 +1,10 @@
package cc.mrbird.febs.mall.service.impl;
import cc.mrbird.febs.ai.entity.AiCompany;
import cc.mrbird.febs.ai.entity.AiMember;
import cc.mrbird.febs.ai.mapper.AiCompanyMapper;
import cc.mrbird.febs.ai.mapper.AiMemberMapper;
import cc.mrbird.febs.ai.service.AiMemberService;
import cc.mrbird.febs.ai.utils.UUID;
import cc.mrbird.febs.common.configure.FebsConfigure;
import cc.mrbird.febs.common.entity.FebsResponse;
@@ -70,6 +73,7 @@
@RequiredArgsConstructor
public class ApiMallMemberServiceImpl extends ServiceImpl<MallMemberMapper, MallMember> implements IApiMallMemberService {
    private final AiCompanyMapper aiCompanyMapper;
    private final AiMemberMapper aiMemberMapper;
    private final MallMemberWalletMapper mallMemberWalletMapper;
    private final ICommonService commonService;
@@ -104,6 +108,7 @@
    private final HappyMemberLabelRecordMapper happyMemberLabelRecordMapper;
    private final HappyMemberLabelMapper happyMemberLabelMapper;
    private final FebsConfigure febsConfigure;
    private final AiMemberService aiMemberService;
    @Value("${spring.profiles.active}")
@@ -734,13 +739,27 @@
                    AiMember aiMember = new AiMember();
                    aiMember.setId(UUID.getSimpleUUIDString());
                    if (StrUtil.isNotEmpty(apiXcxLoginDto.getCompanyId())){
                        AiCompany aiCompany = aiCompanyMapper.selectOne(
                                Wrappers.lambdaQuery(AiCompany.class)
                                        .eq(AiCompany::getCode, apiXcxLoginDto.getCompanyId())
                                        .last("limit 1")
                        );
                        if (ObjectUtil.isNotEmpty(aiCompany)){
                            aiMember.setCompanyId(aiCompany.getId());
                        }
                    }
                    aiMember.setCreatedTime(new Date());
                    aiMemberMapper.insert(aiMember);
                    mallMember = this.baseMapper.selectMemberByOpenId(openId);
                    String inviteId = ShareCodeUtil.toSerialCode(mallMember.getId());
                    mallMember.setMemberUuid(aiMember.getId());
                    if (StrUtil.isNotEmpty(aiMember.getCompanyId())){
                        mallMember.setCompanyId(aiMember.getCompanyId());
                    }
                    mallMember.setInviteId(inviteId);
                    mallMember.setName("新用户"+inviteId);
                    this.baseMapper.updateById(mallMember);
                    MallMemberWallet wallet = new MallMemberWallet();
                    wallet.setBalance(BigDecimal.ZERO);
@@ -806,6 +825,7 @@
    }
    @Override
    @Transactional
    public FebsResponse xcxSaveInfo(ApiXcxSaveInfoDto apiXcxSaveInfoDto) {
        log.info("name={},phone={},avatar={},sex={}",
                apiXcxSaveInfoDto.getNickName(),apiXcxSaveInfoDto.getPhone(),apiXcxSaveInfoDto.getAvatarUrl(),apiXcxSaveInfoDto.getGender());
@@ -841,8 +861,33 @@
        if(ObjectUtil.isNotEmpty(apiXcxSaveInfoDto.getGender())){
            mallMember.setSex(1 == apiXcxSaveInfoDto.getGender() ? "女" : "男");
        }
        if(ObjectUtil.isNotEmpty(apiXcxSaveInfoDto.getCompanyId())){
            AiCompany aiCompany = aiCompanyMapper.selectOne(
                    Wrappers.lambdaQuery(AiCompany.class)
                            .eq(AiCompany::getCode, apiXcxSaveInfoDto.getCompanyId())
                            .last("limit 1")
            );
            if (ObjectUtil.isEmpty(aiCompany)){
                throw new FebsException("公司编码不存在");
            }
            if (ObjectUtil.isNotEmpty(aiCompany)){
                mallMember.setCompanyId(aiCompany.getId());
            }
        }
        this.baseMapper.updateById(mallMember);
        String memberUuid = mallMember.getMemberUuid();
        AiMember aiMember = aiMemberService.getById(memberUuid);
        if (ObjectUtil.isNotEmpty(aiMember) && StrUtil.isNotEmpty(mallMember.getCompanyId())){
            aiMemberService.update(null,
                    Wrappers.lambdaUpdate(AiMember.class)
                    .set(AiMember::getCompanyId, mallMember.getCompanyId())
                    .eq(AiMember::getId, aiMember.getId())
                    );
        }
//        //完善信息赠送新人礼
//        if (StrUtil.isNotBlank(mallMember.getPhone()) && mallMember.getNewGift() == 0) {
//            DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(