From b2eec14bf5a5924d17640e484810f75663c1f38b Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Mon, 04 Aug 2025 10:39:58 +0800 Subject: [PATCH] fix(ai): 修复商品列表查询功能 --- src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java | 167 ++++++++++++++++++++++++++++++------------------------- 1 files changed, 90 insertions(+), 77 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java index c0e8f0a..688e684 100644 --- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberRoleServiceImpl.java @@ -1,15 +1,27 @@ package cc.mrbird.febs.ai.service.impl; import cc.mrbird.febs.ai.entity.AiMemberRole; +import cc.mrbird.febs.ai.entity.AiMemberRoleProduct; import cc.mrbird.febs.ai.mapper.AiMemberRoleMapper; +import cc.mrbird.febs.ai.req.AdminMoveChooseInfoDto; +import cc.mrbird.febs.ai.service.AiMemberRoleProductService; import cc.mrbird.febs.ai.service.AiMemberRoleService; +import cc.mrbird.febs.ai.service.AiProductService; +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.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 org.springframework.transaction.annotation.Transactional; +import java.util.Date; import java.util.List; /** @@ -24,106 +36,107 @@ public class AiMemberRoleServiceImpl extends ServiceImpl<AiMemberRoleMapper, AiMemberRole> implements AiMemberRoleService { private final AiMemberRoleMapper aiMemberRoleMapper; + private final AiProductService aiProductService; + private final AiMemberRoleProductService aiMemberRoleProductService; @Override public AiMemberRole getById(String id) { - return this.getById(id); + return aiMemberRoleMapper.selectById(id); } @Override - public List<AiMemberRole> getByCompanyId(String companyId) { - LambdaQueryWrapper<AiMemberRole> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(AiMemberRole::getCompanyId, companyId); - queryWrapper.orderByDesc(AiMemberRole::getCreatedTime); - return this.list(queryWrapper); + public IPage<AiMemberRole> listInPage(AiMemberRole dto, QueryRequest request) { + + Page<AiMemberRole> page = new Page<>(request.getPageNum(), request.getPageSize()); + LambdaQueryWrapper<AiMemberRole> query = Wrappers.lambdaQuery(AiMemberRole.class); + query.ne(AiMemberRole::getState, 2); + query.orderByAsc(AiMemberRole::getSort); + Page<AiMemberRole> pages = aiMemberRoleMapper.selectPage(page, query); + return pages; } @Override - public AiMemberRole getByCode(String code) { - LambdaQueryWrapper<AiMemberRole> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(AiMemberRole::getCode, code); - return this.getOne(queryWrapper); - } - - @Override - public List<AiMemberRole> getByName(String name) { - LambdaQueryWrapper<AiMemberRole> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(AiMemberRole::getName, name); - queryWrapper.orderByDesc(AiMemberRole::getCreatedTime); - return this.list(queryWrapper); - } - - @Override - public List<AiMemberRole> getByState(Integer state) { - LambdaQueryWrapper<AiMemberRole> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(AiMemberRole::getState, state); - queryWrapper.orderByDesc(AiMemberRole::getCreatedTime); - return this.list(queryWrapper); - } - - @Override - public List<AiMemberRole> getByCompanyIdAndState(String companyId, Integer state) { - LambdaQueryWrapper<AiMemberRole> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(AiMemberRole::getCompanyId, companyId); - queryWrapper.eq(AiMemberRole::getState, state); - queryWrapper.orderByDesc(AiMemberRole::getCreatedTime); - return this.list(queryWrapper); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public boolean saveRole(AiMemberRole aiMemberRole) { - try { - return this.save(aiMemberRole); - } catch (Exception e) { - log.error("保存角色失败: ", e); - return false; + public FebsResponse changeState(String id, Integer state) { + AiMemberRole entity = this.getById(id); + if(ObjectUtil.isNotEmpty(entity)){ + this.update(null, + Wrappers.lambdaUpdate(AiMemberRole.class) + .set(AiMemberRole::getState, state) + .set(AiMemberRole::getUpdatedTime, new Date()) + .eq(AiMemberRole::getId, id)); } + return new FebsResponse().success().message("操作成功"); } @Override - @Transactional(rollbackFor = Exception.class) - public boolean saveBatchRoles(List<AiMemberRole> roles) { - try { - return this.saveBatch(roles); - } catch (Exception e) { - log.error("批量保存角色失败: ", e); - return false; - } + public FebsResponse memberRoleAdd(AiMemberRole dto) { + AiMemberRole entity = new AiMemberRole(); + entity.setId(UUID.getSimpleUUIDString()); + entity.setName(dto.getName()); + entity.setCode(dto.getCode()); + entity.setIconImg(dto.getIconImg()); + entity.setSort(dto.getSort()); + entity.setState(dto.getState()); + entity.setCreatedTime(new Date()); + this.save( entity); + return new FebsResponse().success().message("操作成功"); } @Override - @Transactional(rollbackFor = Exception.class) - public boolean updateRole(AiMemberRole aiMemberRole) { - try { - return this.updateById(aiMemberRole); - } catch (Exception e) { - log.error("更新角色失败: ", e); - return false; + public FebsResponse updateMemberRole(AiMemberRole dto) { + + String id = dto.getId(); + AiMemberRole entity = this.getById(id); + if(ObjectUtil.isNotNull( entity)){ + this.update(null, + Wrappers.lambdaUpdate(AiMemberRole.class) + .set(AiMemberRole::getCode, dto.getCode()) + .set(AiMemberRole::getName, dto.getName()) + .set(AiMemberRole::getIconImg, dto.getIconImg()) + .set(AiMemberRole::getSort, dto.getSort()) + .set(AiMemberRole::getUpdatedTime, new Date()) + .eq(AiMemberRole::getId, id)); + } + return new FebsResponse().success().message("操作成功"); } @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteById(String id) { - try { - return this.removeById(id); - } catch (Exception e) { - log.error("删除角色失败: ", e); - return false; + public FebsResponse delete(String id) { + AiMemberRole entity = this.getById(id); + if(ObjectUtil.isNotNull( entity)){ + this.update(null, + Wrappers.lambdaUpdate(AiMemberRole.class) + .set(AiMemberRole::getState, 2) + .set(AiMemberRole::getUpdatedTime, new Date()) + .eq(AiMemberRole::getId, id)); + } + return new FebsResponse().success().message("操作成功"); } @Override - @Transactional(rollbackFor = Exception.class) - public boolean deleteByCompanyId(String companyId) { - try { - LambdaQueryWrapper<AiMemberRole> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(AiMemberRole::getCompanyId, companyId); - return this.remove(queryWrapper); - } catch (Exception e) { - log.error("根据公司ID删除角色失败: ", e); - return false; + public FebsResponse productSet(AdminMoveChooseInfoDto dto) { + String chooseId = dto.getChooseId(); + List<String> chooseIds = dto.getChooseIds(); + AiMemberRole aiMemberRole = this.getById(chooseId); + if (ObjectUtil.isNotNull(aiMemberRole)) { + aiMemberRoleProductService.deleteByQuery( + Wrappers.lambdaQuery(AiMemberRoleProduct.class) + .eq(AiMemberRoleProduct::getRoleId,chooseId) + ); + if(CollUtil.isNotEmpty(chooseIds)){ + Date createdTime = new Date(); + for (String item : chooseIds){ + AiMemberRoleProduct entity = new AiMemberRoleProduct(); + entity.setId(UUID.getSimpleUUIDString()); + entity.setRoleId(chooseId); + entity.setProductId(item); + entity.setCreatedTime(createdTime); + aiMemberRoleProductService.getBaseMapper().insert(entity); + } + } } + return new FebsResponse().success().message("操作成功"); } } -- Gitblit v1.9.1