大屏 fix

This commit is contained in:
feng
2025-12-29 14:37:11 +08:00
parent ab7fe2a199
commit a6935d9f42
3 changed files with 42 additions and 1 deletions
@@ -36,6 +36,17 @@ public class TblBaseHospitalVo {
private String expertNum;
private String distance;
@Schema(title = "单位code")
private String departCode;
@Schema(title = "单位名称")
private String orgName;
//部门名称 ,目前仅aed数据是将单位名称和部门名称分开显示的
@Schema(title = "部门名称")
private String deptName;
public TblBaseHospitalVo() {}
public TblBaseHospitalVo(Resource resource){
@@ -45,6 +56,7 @@ public class TblBaseHospitalVo {
this.lon = resource.getLongitude();
this.type = resource.getType();
this.address = resource.getAddress();
this.managePhone = resource.getMobile();
}
public TblBaseHospitalVo(AedEquipmentManger aed){
@@ -53,6 +65,9 @@ public class TblBaseHospitalVo {
this.lat = aed.getLatitude();
this.lon = aed.getLongitude();
this.type = "4";
this.departCode = aed.getDepartCode();
this.address = aed.getInstallAddress();
this.manageName = aed.getManageUserName();
this.managePhone = aed.getManageUserMobile();
}
}
@@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.*;
@RestController
@RequiredArgsConstructor
@RequestMapping("/screen/animation")
@RequestMapping("/api/anon/screen-animation")
public class ScreenAnimationController {
private final ScreenAnimationService screenAnimationService;
@@ -21,6 +21,7 @@ import com.renkang.emergency.entity.dto.LargeScreenDataValueDTO;
import com.renkang.emergency.entity.vo.DataDetailVO;
import com.renkang.emergency.entity.vo.MedicalDataVO;
import com.renkang.emergency.largeScreen.entity.dto.TodayEmergencyDTO;
import com.renkang.emergency.largeScreen.entity.vo.LargeScreenMap;
import com.renkang.emergency.largeScreen.entity.vo.TodayEmergencyVO;
import com.renkang.emergency.largeScreen.mapper.LargeScreenDataMapper;
import com.renkang.emergency.largeScreen.service.ILargeScreenDataService;
@@ -45,6 +46,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* @Description: large_screen_data
@@ -522,6 +524,30 @@ public class LargeScreenDataServiceImpl extends ServiceImpl<LargeScreenDataMappe
hospitalList = findThreeNearestHospitals(2, hospitalList, TypeConversionUtil.toDoubleOfNull(longitude), TypeConversionUtil.toDoubleOfNull(latitude));
roomList = findThreeNearestHospitals(2, roomList, TypeConversionUtil.toDoubleOfNull(longitude), TypeConversionUtil.toDoubleOfNull(latitude));
xjAedList = findThreeNearestHospitals(2, xjAedList, TypeConversionUtil.toDoubleOfNull(longitude), TypeConversionUtil.toDoubleOfNull(latitude));
//处理AED单位名称
if(ObjectUtil.isNotEmpty(xjAedList)){
//AED部门code翻译,要求单位和部门拆开显示
Set<String> orgCodes = xjAedList.stream()
.map(TblBaseHospitalVo::getDepartCode)
.filter(Objects::nonNull)
.flatMap(departCode ->
departCode.length() > 6
? Stream.of(departCode, GlobalUtils.getSecondDepartOrgCode(departCode))
: Stream.of(departCode)
)
.collect(Collectors.toSet());
Map<String,String> deptMap = sysBaseAPI.queryDepartNameByOrgCodes(orgCodes);
xjAedList.forEach(aed ->{
if(null != aed.getDepartCode()){
if(aed.getDepartCode().length() > 6){
aed.setOrgName(deptMap.get(GlobalUtils.getSecondDepartOrgCode(aed.getDepartCode())));
aed.setDeptName(deptMap.get(aed.getDepartCode()));
}else {
aed.setOrgName(deptMap.get(aed.getDepartCode()));
}
}
});
}
list.addAll(hospitalList);
list.addAll(roomList);
list.addAll(xjAedList);