This commit is contained in:
wanghao
2025-07-04 14:31:20 +08:00
parent e15aae5a26
commit 909c083e51
11 changed files with 359 additions and 0 deletions
@@ -0,0 +1,108 @@
package com.renkang.emergency.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class EmergencyHealthRoom {
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@Schema(title = "id")
private String id;
/**
* 建设地点名称
*/
@Schema(title = "建设地点名称")
private String name;
/**
* 单位code
*/
@Schema(title = "单位code")
private String orgCode;
/**
* 单位名称(冗余字段更新orgCode记得同步更新)
*/
@Schema(title = "单位名称(冗余字段更新orgCode记得同步更新)")
private String orgName;
/**
* 在岗人数
*/
@Schema(title = "在岗人数")
private Integer jobNum;
/**
* 运转时间(分钟)
*/
@Schema(title = "运转时间(分钟)")
private Integer runTime;
/**
* 经度
*/
@Schema(title = "经度")
private String longitude;
/**
* 纬度
*/
@Schema(title = "纬度")
private String latitude;
/**
* 状态(1-正常,2-冻结)
*/
@Schema(title = "状态(1-正常,2-冻结)")
private Integer status;
/**
* 删除状态(0-正常,1-已删除)
*/
@Schema(title = "删除状态(0-正常,1-已删除)")
@TableLogic
private Integer delFlag;
/**
* 创建人
*/
@Schema(title = "创建人")
private String createBy;
/**
* 创建时间
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Schema(title = "创建时间")
private Date createTime;
/**
* 更新人
*/
@Schema(title = "更新人")
private String updateBy;
/**
* 更新时间
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Schema(title = "更新时间")
private Date updateTime;
/**
* 备注
*/
@Schema(title = "备注")
private String memo;
}
@@ -0,0 +1,42 @@
package com.renkang.emergency.entity.vo;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.Resource;
import lombok.Data;
@Data
public class LargeScreenMap {
private String id;
private String name;
private String orgName;
private String type;
private String loveNum;
private String longitude;
private String latitude;
public LargeScreenMap() {}
public LargeScreenMap(Resource resource) {
this.id = resource.getId();
this.name = resource.getName();
this.orgName = "";
this.type = resource.getType();
this.latitude = String.valueOf(resource.getLatitude());
this.longitude = String.valueOf(resource.getLongitude());
}
public LargeScreenMap(EmergencyHealthRoom room) {
this.id = room.getId();
this.name = room.getName();
this.orgName = room.getOrgName();
this.type = "2";
this.latitude = room.getLatitude();
this.longitude = room.getLongitude();
}
}
@@ -0,0 +1,23 @@
package com.renkang.emergency.controller;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description: HealthRoom
* @Author: wang hao
* @Date: 2025-07-03
* @Version: V1.0
*/
@Tag(name = "health_room")
@RestController
@RequestMapping("/emergency/healthRoom")
@Slf4j
public class HealthRoomController extends JeecgController<EmergencyHealthRoom, IEmergencyHealthRoomService> {
}
@@ -0,0 +1,43 @@
package com.renkang.emergency.controller;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.vo.LargeScreenMap;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import com.renkang.emergency.service.ILargeScreenService;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @Description: HealthRoom
* @Author: wang hao
* @Date: 2025-07-03
* @Version: V1.0
*/
@Tag(name = "大屏/主屏")
@RestController
@RequestMapping("/emergency/largeScreen")
@Slf4j
@RequiredArgsConstructor
public class LargeScreenController {
private final ILargeScreenService largeScreenService;
/**
* 获取地图
* @param type 1:油田医院 2:健康小屋 5:救护车 不传则全部
* @return
*/
@GetMapping("/map")
public Result<List<LargeScreenMap>> map(@RequestParam(name = "type",required = false) String type) {
return Result.ok(largeScreenService.map(type));
}
}
@@ -0,0 +1,14 @@
package com.renkang.emergency.mapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.renkang.emergency.entity.EmergencyHealthRoom;
/**
* @Description: large_screen
* @Author: wang hao
* @Date: 2025-07-04
* @Version: V1.0
*/
public interface EmergencyHealthRoomMapper extends MPJBaseMapper<EmergencyHealthRoom> {
}
@@ -0,0 +1,15 @@
package com.renkang.emergency.mapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.vo.LargeScreenMap;
/**
* @Description: large_screen
* @Author: wang hao
* @Date: 2025-07-04
* @Version: V1.0
*/
public interface LargeScreenMapper extends MPJBaseMapper<LargeScreenMap> {
}
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.renkang.emergency.mapper.EmergencyHealthRoomMapper">
</mapper>
@@ -0,0 +1,14 @@
package com.renkang.emergency.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.renkang.emergency.entity.EmergencyHealthRoom;
/**
* @Description: HealthRoom
* @Author: wanghao
* @Date: 2025-07-03
* @Version: V1.0
*/
public interface IEmergencyHealthRoomService extends IService<EmergencyHealthRoom> {
}
@@ -0,0 +1,18 @@
package com.renkang.emergency.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.vo.LargeScreenMap;
import java.util.List;
/**
* @Description: HealthRoom
* @Author: wang hao
* @Date: 2025-07-03
* @Version: V1.0
*/
public interface ILargeScreenService extends IService<LargeScreenMap> {
List<LargeScreenMap> map(String type);
}
@@ -0,0 +1,18 @@
package com.renkang.emergency.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.mapper.EmergencyHealthRoomMapper;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import org.springframework.stereotype.Service;
/**
* @Description: emergency_order
* @Author: jeecg-boot
* @Date: 2023-04-26
* @Version: V1.0
*/
@Service
public class EmergencyHealthRoomServiceImpl extends ServiceImpl<EmergencyHealthRoomMapper, EmergencyHealthRoom> implements IEmergencyHealthRoomService {
}
@@ -0,0 +1,59 @@
package com.renkang.emergency.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.Resource;
import com.renkang.emergency.entity.vo.LargeScreenMap;
import com.renkang.emergency.mapper.EmergencyHealthRoomMapper;
import com.renkang.emergency.mapper.LargeScreenMapper;
import com.renkang.emergency.service.IEmergencyCenterResourceService;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import com.renkang.emergency.service.ILargeScreenService;
import com.renkang.emergency.service.IResourceService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
/**
* @Description: large_screen
* @Author: wang hao
* @Date: 2025-07-04
* @Version: V1.0
*/
@Service
@RequiredArgsConstructor
public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, LargeScreenMap> implements ILargeScreenService {
private final IResourceService resourceService;
private final IEmergencyHealthRoomService roomService;
@Override
public List<LargeScreenMap> map(String type) {
List<LargeScreenMap> maps = new ArrayList<>();
if (StrUtil.isEmpty(type) || type.equals("1")) {
List<Resource> list = resourceService.list(new LambdaQueryWrapper<Resource>()
.eq(StrUtil.isNotEmpty(type),Resource::getType, type)
.eq(StrUtil.isEmpty(type),Resource::getType, "1"));
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
}
if (StrUtil.isEmpty(type) || type.equals("2")) {
List<EmergencyHealthRoom> list = roomService.list();
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
}
if (StrUtil.isEmpty(type) || type.equals("5")) {
List<Resource> list = resourceService.list(new LambdaQueryWrapper<Resource>()
.eq(StrUtil.isNotEmpty(type),Resource::getType, type)
.eq(StrUtil.isEmpty(type),Resource::getType, "5"));
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
}
return maps;
}
}