新疆项目需求整改

This commit is contained in:
feng
2025-12-23 18:10:05 +08:00
parent e45f571cd2
commit 1c7ba176f6
13 changed files with 77 additions and 8 deletions
@@ -0,0 +1,6 @@
-- ----------------------------
-- Table structure for health_user_employee_ex
-- ----------------------------
ALTER TABLE `emergency_resource`
ADD COLUMN `manager` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '负责人';
@@ -0,0 +1,7 @@
-- ----------------------------
-- Table structure for health_user_employee_ex
-- ----------------------------
ALTER TABLE `health_user_employee_ex`
ADD COLUMN `lifeguard_name2` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '急救人员2姓名',
ADD COLUMN `lifeguard_phone2` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '急救人员2电话';
@@ -16,5 +16,9 @@ public class CareUserVO {
private String lifeguardName;
@Schema(title = "急救人员电话")
private String lifeguardPhone;
//20251223 改为两个急救人员 ,为改动最小化 没有改数据结构
@Schema(title = "急救人员2姓名")
private String lifeguardName2;
@Schema(title = "急救人员2电话")
private String lifeguardPhone2;
}
@@ -55,6 +55,12 @@ public class EmergencyContactVO {
@Schema(title = "急救人员电话")
private String firstAiderPhone;
@Schema(title = "急救人2员姓名")
private String firstAiderName2;
@Schema(title = "急救人2员电话")
private String firstAiderPhone2;
@Schema(title = "重点关爱人员是否倒班(1是 2否)")
private Integer keycareShiftWork;
@@ -47,4 +47,16 @@ public class HealthRoomBaseVO {
*/
@Schema(title = "运转时间(分钟)")
private Integer runTime;
/**
* 管理人员
*/
@Schema(title = "管理人员")
private String manager;
/**
* 联系电话
*/
@Schema(title = "联系电话")
private String phone;
}
@@ -55,6 +55,11 @@ public class Resource implements Serializable {
@Excel(name = "联系电话", width = 15)
@Schema(title = "联系电话")
private String mobile;
/**
* 负责人
*/
@Schema(title = "负责人")
private String manager;
/**
* 经度
*/
@@ -30,10 +30,7 @@ import org.springframework.data.geo.Point;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -71,7 +68,13 @@ public class EmergencyResourceApiServiceImpl implements EmergencyResourceApiServ
if (StrUtil.isEmpty(type) || type.equals("4")){
List<AedEquipmentManger> list = aedMangerService.list(new LambdaQueryWrapper<AedEquipmentManger>()
.isNotNull(AedEquipmentManger::getLatitude));
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
Map<String,String> deptMap = sysBaseAPI.queryDepartNameByOrgCodes(list.stream()
.map(AedEquipmentManger::getDepartCode).collect(Collectors.toSet()));
list.forEach(aed ->{
LargeScreenMap largeScreenMap = new LargeScreenMap(aed);
largeScreenMap.setOrgName(deptMap.get(aed.getDepartCode()));
maps.add(largeScreenMap);
});
}
if (StrUtil.isEmpty(type) || type.equals("5")) {
List<Resource> list = resourceMapper.selectList(new LambdaQueryWrapper<Resource>()
@@ -44,6 +44,7 @@ public class LargeScreenMap {
this.id = resource.getId();
this.name = resource.getName();
this.mobile = resource.getMobile();
this.manageName = resource.getManager();
this.orgName = resource.getMemo();
this.type = resource.getType();
this.latitude = String.valueOf(resource.getLatitude());
@@ -66,7 +67,6 @@ public class LargeScreenMap {
public LargeScreenMap(AedEquipmentManger aed) {
this.id = aed.getId().toString();
this.name = aed.getName();
this.orgName = aed.getDepartCode();
this.type = "4";
this.address = aed.getInstallAddress();
this.latitude = String.valueOf(aed.getLatitude());
@@ -26,6 +26,8 @@ public class TodayEmergencyVO {
@Schema(title = "事件类型(emergencyType=3 才有值)")
@Dict(dicCode = "watch_event_type")
private String eventType;
@Schema(title = "异常值(emergencyType=3 才有值)")
private String abnormalValue;
@Schema(title = "性别")
@Dict(dicCode = "sex2")
private Integer sex;
@@ -845,6 +845,7 @@ public class LargeScreenDataServiceImpl extends ServiceImpl<LargeScreenDataMappe
vo.setLatitude(watch.getLat());
vo.setEventType(watch.getEventType());
vo.setTime(watch.getWarnTime());
vo.setAbnormalValue(watch.getDataValue());
list.add(vo);
}
}
@@ -891,6 +892,8 @@ public class LargeScreenDataServiceImpl extends ServiceImpl<LargeScreenDataMappe
careUserVO.setCareLiaisonJob(emergencyContactVO.getRelationEmpPostsText());
careUserVO.setLifeguardName(emergencyContactVO.getFirstAiderName());
careUserVO.setLifeguardPhone(emergencyContactVO.getFirstAiderPhone());
careUserVO.setLifeguardName2(emergencyContactVO.getFirstAiderName2());
careUserVO.setLifeguardPhone2(emergencyContactVO.getFirstAiderPhone2());
}
} catch (Exception e) {
e.printStackTrace();
@@ -33,6 +33,7 @@ import com.renkang.emergency.service.IEmergencyCenterService;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import com.renkang.emergency.service.IResourceService;
import lombok.RequiredArgsConstructor;
import org.jeecg.common.system.api.ISysBaseAPI;
import org.jeecg.util.RedisClientUtil;
import org.jeecg.util.RedisKeyPrefix;
import org.jeecg.util.TypeConversionUtil;
@@ -66,6 +67,7 @@ public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, Large
private final ILargeScreenDataService screenDataService;
private final AnYanClient anYanClient;
private final AnYanProperties anYanProperties;
private final ISysBaseAPI sysBaseAPI;
@Override
public List<LargeScreenMap> map(String type) {
@@ -85,7 +87,16 @@ public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, Large
if (StrUtil.isEmpty(type) || type.equals("4")){
List<AedEquipmentManger> list = aedMangerService.list(new LambdaQueryWrapper<AedEquipmentManger>()
.isNotNull(AedEquipmentManger::getLatitude));
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
if(ObjectUtil.isNotEmpty(list)){
//AED部门code翻译
Map<String,String> deptMap = sysBaseAPI.queryDepartNameByOrgCodes(list.stream()
.map(AedEquipmentManger::getDepartCode).collect(Collectors.toSet()));
list.forEach(aed ->{
LargeScreenMap largeScreenMap = new LargeScreenMap(aed);
largeScreenMap.setOrgName(deptMap.get(aed.getDepartCode()));
maps.add(largeScreenMap);
});
}
}
if (StrUtil.isEmpty(type) || type.equals("5")) {
List<Resource> list = resourceService.list(new LambdaQueryWrapper<Resource>()
@@ -516,6 +527,8 @@ public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, Large
resource.setUpdateTime(new Date());
resource.setName(room.getDepartName()); //暂时使用单位名称作为名称, 就可能会有重复
resource.setMemo(room.getDepartName());
resource.setMobile(room.getPhone());
resource.setManager(room.getManager());
resource.setAyId(room.getId());
//处理经纬度(安眼返回的数据精度过长)
if(StrUtil.isNotEmpty(room.getLat()) && StrUtil.isNotEmpty(room.getLon())){
@@ -488,6 +488,12 @@ public class HealthUserEmployeeEx implements Serializable {
@Schema(title = "急救人员电话")
private String lifeguardPhone;
@Schema(title = "急救人员2姓名")
private String lifeguardName2;
@Schema(title = "急救人员2电话")
private String lifeguardPhone2;
/**
* 岗位id
*/
@@ -422,6 +422,8 @@ public class LoginAnYanServiceImpl implements ILoginAnYanService {
.set(StringUtils.isNotBlank(emergencyContactVO.getRelationEmpPhone()), HealthUserEmployeeEx::getCareLiaisonPhone, emergencyContactVO.getRelationEmpPhone())
.set(StringUtils.isNotBlank(emergencyContactVO.getFirstAiderName()), HealthUserEmployeeEx::getLifeguardName, emergencyContactVO.getFirstAiderName())
.set(StringUtils.isNotBlank(emergencyContactVO.getFirstAiderPhone()), HealthUserEmployeeEx::getLifeguardPhone, emergencyContactVO.getFirstAiderPhone())
.set(StringUtils.isNotBlank(emergencyContactVO.getFirstAiderName2()), HealthUserEmployeeEx::getLifeguardName2, emergencyContactVO.getFirstAiderName2())
.set(StringUtils.isNotBlank(emergencyContactVO.getFirstAiderPhone2()), HealthUserEmployeeEx::getLifeguardPhone2, emergencyContactVO.getFirstAiderPhone2())
);
}
} catch (Exception e) {