|
@@ -2,6 +2,7 @@ package org.springblade.modules.api.controller;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
@@ -19,6 +20,8 @@ import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
import org.springblade.modules.business.entity.Facility;
|
|
|
+import org.springblade.modules.business.entity.FacilityModel;
|
|
|
+import org.springblade.modules.business.service.IFacilityModelService;
|
|
|
import org.springblade.modules.business.service.IFacilityService;
|
|
|
import org.springblade.modules.business.service.IShopService;
|
|
|
import org.springblade.modules.business.vo.FacilityVO;
|
|
@@ -28,6 +31,8 @@ import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.validation.Valid;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@RestController
|
|
|
@AllArgsConstructor
|
|
@@ -36,6 +41,7 @@ import java.util.List;
|
|
|
public class ApiFacilityController extends BaseController {
|
|
|
|
|
|
private final IFacilityService iFacilityService;
|
|
|
+ private final IFacilityModelService iFacilityModelService;
|
|
|
private final IShopService iShopService;
|
|
|
private final IUserMerchantService iUserMerchantService;
|
|
|
|
|
@@ -65,6 +71,20 @@ public class ApiFacilityController extends BaseController {
|
|
|
wrapper.in(Facility::getShopId, authShopId);
|
|
|
}
|
|
|
IPage<Facility> pages = iFacilityService.page(Condition.getPage(query), wrapper);
|
|
|
+
|
|
|
+ //补充设备图片
|
|
|
+ if (CollectionUtil.isNotEmpty(pages.getRecords())) {
|
|
|
+ //获取所有设备型号
|
|
|
+ List<Long> facilityTypeIds = pages.getRecords().stream().map(Facility::getFacilityType).distinct().collect(Collectors.toList());
|
|
|
+ //查询设备型号图片
|
|
|
+ List<FacilityModel> facilityModels = iFacilityModelService.lambdaQuery().in(FacilityModel::getId, facilityTypeIds).list();
|
|
|
+ //按型号分组
|
|
|
+ Map<Long, String> facilityModelMap = facilityModels.stream().collect(Collectors.toMap(FacilityModel::getId, FacilityModel::getFacilityImage));
|
|
|
+ pages.getRecords().forEach(facility -> {
|
|
|
+ facility.setFacilityImage(facilityModelMap.get(facility.getFacilityType()));
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
return R.data(FacilityWrapper.build().pageVO(pages));
|
|
|
}
|
|
|
|