package cc.mrbird.febs.ai.service.impl; import cc.mrbird.febs.ai.entity.AiCompany; import cc.mrbird.febs.ai.entity.AiMemberRole; import cc.mrbird.febs.ai.mapper.AiCompanyMapper; import cc.mrbird.febs.ai.service.AiCompanyService; import cc.mrbird.febs.ai.util.UUID; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; 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.Date; @Slf4j @Service @RequiredArgsConstructor public class AiCompanyServiceImpl extends ServiceImpl implements AiCompanyService { private final AiCompanyMapper aiCompanyMapper; @Override public AiCompany getById(String id) { return aiCompanyMapper.selectById( id); } @Override public FebsResponse add(AiCompany dto) { AiCompany entity = new AiCompany(); entity.setId(UUID.getSimpleUUIDString()); entity.setName(dto.getName()); entity.setCreatedTime(new Date()); this.baseMapper.insert( entity); return new FebsResponse().success().message("操作成功"); } @Override public FebsResponse update(AiCompany dto) { String id = dto.getId(); AiCompany entity = this.getById(id); if(ObjectUtil.isNotNull( entity)){ this.update(null, Wrappers.lambdaUpdate(AiCompany.class) .set(AiCompany::getName, dto.getName()) .set(AiCompany::getUpdatedTime, new Date()) .eq(AiCompany::getId, id)); } return new FebsResponse().success().message("操作成功"); } @Override public IPage listInPage(AiCompany dto, QueryRequest request) { Page page = new Page<>(request.getPageNum(), request.getPageSize()); LambdaQueryWrapper query = Wrappers.lambdaQuery(AiCompany.class); query.orderByDesc(AiCompany::getCreatedTime); Page pages = this.baseMapper.selectPage(page, query); return pages; } }