Commit 6ff8d213 authored by 李秀明's avatar 李秀明

消防系统分组查询增加图片属性

parent 24ca6622
...@@ -47,6 +47,9 @@ public class Equipment extends BaseEntity { ...@@ -47,6 +47,9 @@ public class Equipment extends BaseEntity {
@ApiModelProperty(value = "报废期限") @ApiModelProperty(value = "报废期限")
private Short expiryDate; private Short expiryDate;
@ApiModelProperty(value = "四横八纵图片")
private String shbzImg;
private String remark; private String remark;
@ApiModelProperty(value = "管理方式 单件还是批量管理模式,单件S,批量:P") @ApiModelProperty(value = "管理方式 单件还是批量管理模式,单件S,批量:P")
......
...@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; ...@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeejoin.amos.component.robot.BadRequest; import com.yeejoin.amos.component.robot.BadRequest;
import com.yeejoin.equipmanage.common.entity.Equipment;
import com.yeejoin.equipmanage.common.entity.FireFightingSystemEntity; import com.yeejoin.equipmanage.common.entity.FireFightingSystemEntity;
import com.yeejoin.equipmanage.common.entity.FireFightingSystemGroupEntity; import com.yeejoin.equipmanage.common.entity.FireFightingSystemGroupEntity;
import com.yeejoin.equipmanage.common.entity.SystemEquipmentRelationEntity; import com.yeejoin.equipmanage.common.entity.SystemEquipmentRelationEntity;
...@@ -16,12 +17,14 @@ import com.yeejoin.equipmanage.mapper.EquipmentSpecificMapper; ...@@ -16,12 +17,14 @@ import com.yeejoin.equipmanage.mapper.EquipmentSpecificMapper;
import com.yeejoin.equipmanage.mapper.FireFightingSystemGroupMapper; import com.yeejoin.equipmanage.mapper.FireFightingSystemGroupMapper;
import com.yeejoin.equipmanage.mapper.FireFightingSystemMapper; import com.yeejoin.equipmanage.mapper.FireFightingSystemMapper;
import com.yeejoin.equipmanage.service.FireFightingSystemGroupService; import com.yeejoin.equipmanage.service.FireFightingSystemGroupService;
import com.yeejoin.equipmanage.service.IEquipmentService;
import com.yeejoin.equipmanage.service.IFireFightingSystemService; import com.yeejoin.equipmanage.service.IFireFightingSystemService;
import com.yeejoin.equipmanage.service.SystemEquipmentRelationService; import com.yeejoin.equipmanage.service.SystemEquipmentRelationService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -39,6 +42,8 @@ public class FireFightingSystemGroupServiceImpl extends ServiceImpl<FireFighting ...@@ -39,6 +42,8 @@ public class FireFightingSystemGroupServiceImpl extends ServiceImpl<FireFighting
private EquipmentSpecificMapper equipmentSpecificMapper; private EquipmentSpecificMapper equipmentSpecificMapper;
@Autowired @Autowired
private IFireFightingSystemService fireFightingSystemService; private IFireFightingSystemService fireFightingSystemService;
@Autowired
private IEquipmentService equipmentService;
/** /**
* 获取消防系统列表 * 获取消防系统列表
...@@ -230,6 +235,16 @@ public class FireFightingSystemGroupServiceImpl extends ServiceImpl<FireFighting ...@@ -230,6 +235,16 @@ public class FireFightingSystemGroupServiceImpl extends ServiceImpl<FireFighting
} }
} }
// 查询装备定义的图片 List to Map -> key: systemId@equipmentId, value: 装备定义数量Map
Set<Long> equipmentIds = systemEquipmentMap.values().stream().flatMap(list -> list.stream().map(SystemEquipmentRelationEntity::getEquipmentId)).collect(Collectors.toSet());
Map<Long, Equipment> equipmentImageMap = equipmentService.list(
Wrappers.<Equipment>lambdaQuery()
.select(Equipment::getId, Equipment::getShbzImg, Equipment::getImg)
.in(Equipment::getId, equipmentIds)
).stream().map(equipmentEntity -> new HashMap<Long, Equipment>() {{
put(equipmentEntity.getId(), equipmentEntity);
}}).collect(Collectors.toMap(map -> map.keySet().iterator().next(), map -> map.values().iterator().next()));
// List to Map -> key: systemId@equipmentId, value: 装备定义数量Map // List to Map -> key: systemId@equipmentId, value: 装备定义数量Map
List<Map<String, Object>> equipmentCountList = equipmentSpecificMapper.getEquipmentCount(bizOrgCode); List<Map<String, Object>> equipmentCountList = equipmentSpecificMapper.getEquipmentCount(bizOrgCode);
Map<String, Map<String, Object>> equipmentCountMap = new HashMap<>(); Map<String, Map<String, Object>> equipmentCountMap = new HashMap<>();
...@@ -279,11 +294,15 @@ public class FireFightingSystemGroupServiceImpl extends ServiceImpl<FireFighting ...@@ -279,11 +294,15 @@ public class FireFightingSystemGroupServiceImpl extends ServiceImpl<FireFighting
Long equipmentId = relationEntity.getEquipmentId(); Long equipmentId = relationEntity.getEquipmentId();
if (equipmentCountMap.containsKey(systemId + "@" + equipmentId)) { if (equipmentCountMap.containsKey(systemId + "@" + equipmentId)) {
Map<String, Object> equipmentMap = equipmentCountMap.get(systemId + "@" + equipmentId); Map<String, Object> equipmentMap = equipmentCountMap.get(systemId + "@" + equipmentId);
Equipment imageEquipment = equipmentImageMap.get(equipmentId);
Map<String, Object> equipment = new HashMap<>(); Map<String, Object> equipment = new HashMap<>();
equipment.put("id", equipmentMap.get("equipmentId")); equipment.put("id", equipmentMap.get("equipmentId"));
equipment.put("name", equipmentMap.get("equipmentName")); equipment.put("name", equipmentMap.get("equipmentName"));
equipment.put("num", Integer.valueOf(equipmentMap.getOrDefault("count", "0").toString())); equipment.put("num", Integer.valueOf(equipmentMap.getOrDefault("count", "0").toString()));
equipment.put("unit", equipmentMap.get("unit")); equipment.put("unit", equipmentMap.get("unit"));
if (Objects.nonNull(imageEquipment)) {
equipment.put("img", StringUtils.hasText(imageEquipment.getShbzImg()) ? imageEquipment.getShbzImg() : imageEquipment.getImg());
}
equipment.put("sort", relationEntity.getSort()); equipment.put("sort", relationEntity.getSort());
equipment.put("type", relationEntity.getType()); equipment.put("type", relationEntity.getType());
equipments.add(equipment); equipments.add(equipment);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment