diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/CraftAbilityController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/CraftAbilityController.java index f5c4e9b9..df40334f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/CraftAbilityController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/CraftAbilityController.java @@ -304,8 +304,8 @@ public class CraftAbilityController extends BladeController { @GetMapping("/findList") @ApiOperationSupport(order = 2) @Operation(summary = "列表", description = "传入CraftAbility") - public R> findList() { - List list = craftAbilityService.list(); + public R> findList(@RequestParam(required = false ,name = "supplierId") String supplierId) { + List list = craftAbilityService.listByParams(supplierId); return R.data(list); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/ICraftAbilityService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/ICraftAbilityService.java index 7b102a4a..a495f049 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/ICraftAbilityService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/ICraftAbilityService.java @@ -73,4 +73,6 @@ public interface ICraftAbilityService extends BaseService { * @return */ CraftAbilityEntity selectByCaCode(String caCode); + + List listByParams(String supplierId); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/CraftAbilityServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/CraftAbilityServiceImpl.java index df55718b..ec5c7fb7 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/CraftAbilityServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/CraftAbilityServiceImpl.java @@ -25,18 +25,25 @@ */ package org.springblade.desk.basic.service.impl; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import jakarta.annotation.Resource; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.desk.basic.excel.CraftAbilityExcel; import org.springblade.desk.basic.mapper.CraftAbilityMapper; +import org.springblade.desk.basic.pojo.entity.Oem; import org.springblade.desk.basic.pojo.vo.CraftAbilityVO; import org.springblade.desk.basic.service.ICraftAbilityService; +import org.springblade.desk.basic.service.IOemService; import org.springblade.scheduling.pojo.entity.CraftAbilityEntity; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; /** * 工艺能力 服务实现类 @@ -46,7 +53,9 @@ import java.util.List; */ @Service public class CraftAbilityServiceImpl extends BaseServiceImpl implements ICraftAbilityService { - + @Lazy + @Resource + private IOemService oemService; @Override public IPage selectCraftAbilityPage(IPage page, CraftAbilityVO craftAbility) { return page.setRecords(baseMapper.selectCraftAbilityPage(page, craftAbility)); @@ -72,4 +81,24 @@ public class CraftAbilityServiceImpl extends BaseServiceImpl listByParams(String supplierId) { + //供应商id 非必传 根据供应商id查询供应商信息获取工艺能力id字段 工艺能力id以逗号分割 若为空 直接返回 + if (StrUtil.isNotEmpty(supplierId)) { + Oem supplier = oemService.getById(supplierId); + if (BeanUtil.isEmpty(supplier) || Objects.isNull(supplier.getCraftAbilityId())) { + return new ArrayList<>(); + } + Set craftAbilityIds = Arrays.stream(supplier.getCraftAbilityId().split(",")) + .map(String::trim) + .filter(cn.hutool.core.util.StrUtil::isNotEmpty) + .collect(Collectors.toSet()); + if (craftAbilityIds.isEmpty()) { + return new ArrayList<>(); + } + return listByIds(craftAbilityIds); + } + return list(); + } + }