| | |
| | | package cc.mrbird.febs.ai.service.impl; |
| | | |
| | | import cc.mrbird.febs.ai.entity.AiCompany; |
| | | import cc.mrbird.febs.ai.entity.AiCompanyMemberApply; |
| | | import cc.mrbird.febs.ai.entity.AiMember; |
| | | import cc.mrbird.febs.ai.mapper.AiCompanyMemberApplyMapper; |
| | | import cc.mrbird.febs.ai.service.AiCompanyMemberApplyService; |
| | | import cc.mrbird.febs.ai.service.AiMemberService; |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | | import cc.mrbird.febs.common.entity.QueryRequest; |
| | | import cc.mrbird.febs.mall.entity.MallMember; |
| | | import cc.mrbird.febs.mall.mapper.MallMemberMapper; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import lombok.RequiredArgsConstructor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @Slf4j |
| | | @Service |
| | | @RequiredArgsConstructor |
| | | public class AiCompanyMemberApplyServiceImpl extends ServiceImpl<AiCompanyMemberApplyMapper, AiCompanyMemberApply> implements AiCompanyMemberApplyService { |
| | | |
| | | private final MallMemberMapper mallMemberMapper; |
| | | private final AiMemberService aiMemberService; |
| | | |
| | | @Override |
| | | public IPage<AiCompanyMemberApply> listInPage(AiCompanyMemberApply dto, QueryRequest request) { |
| | | |
| | | Page<AiCompanyMemberApply> page = new Page<>(request.getPageNum(), request.getPageSize()); |
| | | LambdaQueryWrapper<AiCompanyMemberApply> query = Wrappers.lambdaQuery(AiCompanyMemberApply.class); |
| | | query.orderByDesc(AiCompanyMemberApply::getCreatedTime); |
| | | Page<AiCompanyMemberApply> pages = this.baseMapper.selectPage(page, query); |
| | | List<AiCompanyMemberApply> records = pages.getRecords(); |
| | | if(CollUtil.isNotEmpty(records)){ |
| | | //获取records的全部memberId |
| | | List<String> memberIds = records.stream().map(AiCompanyMemberApply::getMemberId).collect(Collectors.toList()); |
| | | |
| | | List<MallMember> mallMembers = mallMemberMapper.selectList( |
| | | Wrappers.lambdaQuery(MallMember.class) |
| | | .select(MallMember::getMemberUuid, MallMember::getName, MallMember::getRealName) |
| | | .in(MallMember::getMemberUuid, memberIds) |
| | | ); |
| | | if (CollUtil.isNotEmpty(mallMembers)){ |
| | | records.forEach(record -> { |
| | | MallMember mallMember = mallMembers.stream().filter(m -> m.getMemberUuid().equals(record.getMemberId())).findFirst().orElse(null); |
| | | if (mallMember != null){ |
| | | record.setName(mallMember.getName()); |
| | | record.setRealName(mallMember.getRealName()); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | |
| | | return pages; |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse agree(AiCompanyMemberApply dto) { |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse disagree(AiCompanyMemberApply dto) { |
| | | String id = dto.getId(); |
| | | AiCompanyMemberApply aiCompanyMemberApply = this.getById(id); |
| | | if (ObjectUtil.isEmpty(aiCompanyMemberApply)){ |
| | | throw new RuntimeException("申请不存在"); |
| | | } |
| | | if (0 != aiCompanyMemberApply.getState()){ |
| | | throw new RuntimeException("申请已处理"); |
| | | } |
| | | this.update(null, |
| | | Wrappers.lambdaUpdate(AiCompanyMemberApply.class) |
| | | .set(AiCompanyMemberApply::getState, 3) |
| | | .eq(AiCompanyMemberApply::getId, id) |
| | | ); |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse unbind(AiCompanyMemberApply dto) { |
| | | return null; |
| | | } |
| | | |
| | | } |