From 79b353760dfce7af9587d5d9881a6cf6bccf7a4d Mon Sep 17 00:00:00 2001
From: wangwenhua <12345678>
Date: Sun, 14 Sep 2025 17:50:46 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=B1=BB=E5=9E=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../baseData/entity/WeatherResource.java | 6 ++++
.../controller/ResourceController.java | 23 +++++++++++++++
.../hivekion/scenario/entity/Resource.java | 17 ++++++++---
.../scenario/entity/ResourceVehicleRela.java | 3 ++
.../com/hivekion/scenario/entity/Vehicle.java | 10 +++++++
.../scenario/service/IResourceService.java | 3 ++
.../service/impl/ResourceServiceImpl.java | 29 ++++++++++++++++++-
7 files changed, 86 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/hivekion/baseData/entity/WeatherResource.java b/src/main/java/com/hivekion/baseData/entity/WeatherResource.java
index ccd84ae..50c801b 100644
--- a/src/main/java/com/hivekion/baseData/entity/WeatherResource.java
+++ b/src/main/java/com/hivekion/baseData/entity/WeatherResource.java
@@ -1,6 +1,7 @@
package com.hivekion.baseData.entity;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
@@ -27,18 +28,23 @@ public class WeatherResource implements Serializable {
private Integer id;
@ApiModelProperty("想定房间编号")
+ @TableField(value="room_id")
private String roomId;
@ApiModelProperty("想定场景编号")
+ @TableField(value="scenario_id")
private Integer scenarioId;
@ApiModelProperty("天气类型")
+ @TableField(value = "weather_type")
private String weatherType;
@ApiModelProperty("持续开始时间")
+ @TableField(value = "last_beg_time")
private LocalDateTime lastBegTime;
@ApiModelProperty("持续结束时间")
+ @TableField(value = "last_end_time")
private LocalDateTime lastEndTime;
public Integer getId() {
diff --git a/src/main/java/com/hivekion/scenario/controller/ResourceController.java b/src/main/java/com/hivekion/scenario/controller/ResourceController.java
index ad3646b..63fc62b 100644
--- a/src/main/java/com/hivekion/scenario/controller/ResourceController.java
+++ b/src/main/java/com/hivekion/scenario/controller/ResourceController.java
@@ -1,7 +1,15 @@
package com.hivekion.scenario.controller;
+import com.hivekion.scenario.entity.Vehicle;
+import com.hivekion.scenario.service.IResourceService;
+import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
/**
*
@@ -15,4 +23,19 @@ import org.springframework.stereotype.Controller;
@RequestMapping("/scenario/resource")
public class ResourceController {
+ @Resource
+ private IResourceService resourceService;
+
+
+ @GetMapping("/listVehiclesByType")
+ public List listVehiclesByType(@RequestParam("type") Integer type, @RequestParam("resourceId") Integer resourceId){
+ List vehicleList = new ArrayList<>();
+ try{
+ vehicleList = this.resourceService.listAllVehiclesByType(type,resourceId);
+ }catch (Exception e){
+ e.printStackTrace();
+ }
+ return vehicleList;
+ }
+
}
diff --git a/src/main/java/com/hivekion/scenario/entity/Resource.java b/src/main/java/com/hivekion/scenario/entity/Resource.java
index a9a8468..c0c778f 100644
--- a/src/main/java/com/hivekion/scenario/entity/Resource.java
+++ b/src/main/java/com/hivekion/scenario/entity/Resource.java
@@ -1,5 +1,6 @@
package com.hivekion.scenario.entity;
+import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -31,28 +32,35 @@ public class Resource implements Serializable {
private Integer id;
@ApiModelProperty("设施名称")
+ @TableField(value = "resource_name")
private String resourceName;
@ApiModelProperty("设施图标")
+ @TableField(value = "icon")
private String icon;
@ApiModelProperty("纬度")
+ @TableField(value = "lat")
private String lat;
@ApiModelProperty("经度")
+ @TableField(value = "lng")
private String lng;
@ApiModelProperty("设施属性")
- @TableField(typeHandler = JacksonTypeHandler.class)
- private Map resourceAttribut;
+ @TableField(value = "resource_attribut")
+ private String resourceAttribut;
@ApiModelProperty("创建人")
+ @TableField(value = "create_oper")
private String createOper;
@ApiModelProperty("更新人")
+ @TableField(value = "upd_oper")
private String updOper;
@ApiModelProperty("保障建筑资源类型")
+ @TableField(value = "resource_type")
private Integer resourceType;
public Integer getId() {
@@ -95,11 +103,12 @@ public class Resource implements Serializable {
this.lng = lng;
}
- public Map getResourceAttribut() {
+
+ public String getResourceAttribut() {
return resourceAttribut;
}
- public void setResourceAttribut(Map resourceAttribut) {
+ public void setResourceAttribut(String resourceAttribut) {
this.resourceAttribut = resourceAttribut;
}
diff --git a/src/main/java/com/hivekion/scenario/entity/ResourceVehicleRela.java b/src/main/java/com/hivekion/scenario/entity/ResourceVehicleRela.java
index 7e45cc4..dec2603 100644
--- a/src/main/java/com/hivekion/scenario/entity/ResourceVehicleRela.java
+++ b/src/main/java/com/hivekion/scenario/entity/ResourceVehicleRela.java
@@ -1,5 +1,6 @@
package com.hivekion.scenario.entity;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
@@ -20,9 +21,11 @@ public class ResourceVehicleRela implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("资源id")
+ @TableField(value = "resource_id")
private Integer resourceId;
@ApiModelProperty("车辆id")
+ @TableField(value = "vehicle_id")
private Integer vehicleId;
public Integer getResourceId() {
diff --git a/src/main/java/com/hivekion/scenario/entity/Vehicle.java b/src/main/java/com/hivekion/scenario/entity/Vehicle.java
index 0bfcb6b..93382ae 100644
--- a/src/main/java/com/hivekion/scenario/entity/Vehicle.java
+++ b/src/main/java/com/hivekion/scenario/entity/Vehicle.java
@@ -1,5 +1,6 @@
package com.hivekion.scenario.entity;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
@@ -20,30 +21,39 @@ public class Vehicle implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("物理主键id")
+ @TableField(value = "id")
private Integer id;
@ApiModelProperty("名称")
+ @TableField(value="vehicle_name")
private String vehicleName;
@ApiModelProperty("速度")
+ @TableField(value = "vehicle_spreed")
private String vehicleSpreed;
@ApiModelProperty("类型")
+ @TableField(value = "vehicle_type")
private String vehicleType;
@ApiModelProperty("运油能力")
+ @TableField(value = "fuel_ability")
private Integer fuelAbility;
@ApiModelProperty("运药能力")
+ @TableField(value = "medical_ability")
private Integer medicalAbility;
@ApiModelProperty("运弹药能力")
+ @TableField(value = "ammunition_ability")
private Integer ammunitionAbility;
@ApiModelProperty("创建人")
+ @TableField(value = "create_oper")
private String createOper;
@ApiModelProperty("更新人")
+ @TableField(value = "upd_oper")
private String updOper;
public Integer getId() {
diff --git a/src/main/java/com/hivekion/scenario/service/IResourceService.java b/src/main/java/com/hivekion/scenario/service/IResourceService.java
index ebfe574..623f78b 100644
--- a/src/main/java/com/hivekion/scenario/service/IResourceService.java
+++ b/src/main/java/com/hivekion/scenario/service/IResourceService.java
@@ -2,6 +2,7 @@ package com.hivekion.scenario.service;
import com.hivekion.scenario.entity.Resource;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.hivekion.scenario.entity.Vehicle;
import java.util.List;
@@ -17,4 +18,6 @@ public interface IResourceService extends IService {
public List listAllBuildResourceByType(Integer type);
+ public List listAllVehiclesByType(Integer type,Integer resourceId);
+
}
diff --git a/src/main/java/com/hivekion/scenario/service/impl/ResourceServiceImpl.java b/src/main/java/com/hivekion/scenario/service/impl/ResourceServiceImpl.java
index 5940788..e94478e 100644
--- a/src/main/java/com/hivekion/scenario/service/impl/ResourceServiceImpl.java
+++ b/src/main/java/com/hivekion/scenario/service/impl/ResourceServiceImpl.java
@@ -2,12 +2,20 @@ package com.hivekion.scenario.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.hivekion.scenario.entity.Resource;
+import com.hivekion.scenario.entity.ResourceVehicleRela;
+import com.hivekion.scenario.entity.Vehicle;
import com.hivekion.scenario.mapper.ResourceMapper;
import com.hivekion.scenario.service.IResourceService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.hivekion.scenario.service.IResourceVehicleRelaService;
+import com.hivekion.scenario.service.IVehicleService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
/**
*
@@ -20,10 +28,29 @@ import java.util.List;
@Service
public class ResourceServiceImpl extends ServiceImpl implements IResourceService {
+ @Autowired
+ private IResourceVehicleRelaService resourceVehicleRelaService;
+
+ @Autowired
+ private ResourceMapper resourceMapper;
+ @Autowired
+ private IVehicleService vehicleService;
+
@Override
public List listAllBuildResourceByType(Integer type) {
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq(type != null,"resource_type",type);
- return this.list(queryWrapper);
+ return this.resourceMapper.selectList(queryWrapper);
+ }
+
+ @Override
+ public List listAllVehiclesByType(Integer type, Integer resourceId) {
+ List rVRela = this.resourceVehicleRelaService.list(new QueryWrapper().eq("resource_id",resourceId));
+ List vehicleIds = rVRela.stream().map(ResourceVehicleRela::getResourceId).collect(Collectors.toList());
+ List qryResult = new ArrayList<>();
+ if(!CollectionUtils.isEmpty(vehicleIds)){
+ qryResult = this.vehicleService.list(new QueryWrapper().in("id",vehicleIds));
+ }
+ return qryResult;
}
}