From 1557fd9e35e1a0b9d54956f9a26d4e8ae0d66683 Mon Sep 17 00:00:00 2001 From: wangwenhua <12345678> Date: Tue, 16 Sep 2025 09:31:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=A3=85=E5=A4=87=E5=88=86?= =?UTF-8?q?=E7=B1=BB=E6=A0=91=E7=8A=B6=E6=98=BE=E7=A4=BAbug=20=E8=A3=85?= =?UTF-8?q?=E5=A4=87=E5=88=86=E7=B1=BB=E4=B8=AD=E6=98=BE=E7=A4=BA=E5=8C=BB?= =?UTF-8?q?=E9=99=A2=EF=BC=8C=E4=BB=93=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TblHospitalController.java | 55 +++++++++++++++++++ .../controller/TblWareHouseController.java | 53 ++++++++++++++++++ .../baseData/controller/TreeController.java | 5 +- .../hivekion/baseData/domain/TblEntity.java | 5 +- .../TblEntityVo/TblEntityAddInputVo.java | 4 +- .../tblhospitalVo/HospitalSearchVo.java | 10 ++++ .../domain/tblhospitalVo/HospitalViewVo.java | 37 +++++++++++++ .../tblwarehouseVo/WarehouseSearchVo.java | 10 ++++ .../tblwarehouseVo/WarehouseViewVo.java | 32 +++++++++++ .../service/impl/TblEntityServiceImpl.java | 16 ++++-- .../controller/ResourceController.java | 2 + .../scenario/service/IResourceService.java | 7 +++ .../service/impl/ResourceServiceImpl.java | 35 ++++++++++++ 13 files changed, 263 insertions(+), 8 deletions(-) create mode 100644 src/main/java/com/hivekion/baseData/controller/TblHospitalController.java create mode 100644 src/main/java/com/hivekion/baseData/controller/TblWareHouseController.java create mode 100644 src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalSearchVo.java create mode 100644 src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalViewVo.java create mode 100644 src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseSearchVo.java create mode 100644 src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseViewVo.java diff --git a/src/main/java/com/hivekion/baseData/controller/TblHospitalController.java b/src/main/java/com/hivekion/baseData/controller/TblHospitalController.java new file mode 100644 index 0000000..b6cc56d --- /dev/null +++ b/src/main/java/com/hivekion/baseData/controller/TblHospitalController.java @@ -0,0 +1,55 @@ +package com.hivekion.baseData.controller; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.json.JSONArray; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalSearchVo; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalViewVo; +import com.hivekion.common.annotation.AutoLog; +import com.hivekion.common.entity.PagedResultVo; +import com.hivekion.common.enums.OperationTypeEnum; +import com.hivekion.scenario.entity.Resource; +import com.hivekion.scenario.service.IResourceService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequestMapping("/basedata/hospital") + +@Api(value = "医院", tags = {"装备管理-医院"}) +public class TblHospitalController { + + @Autowired + private IResourceService service; + @PostMapping("/getList") + @ApiOperation(value = "获取医院列表", notes = "") + @AutoLog(value = "获取医院列表", operationType = OperationTypeEnum.SELECT, module = "基础数据/医院") + public PagedResultVo getList(@RequestBody HospitalSearchVo vo) { + PagedResultVo resources = this.service.listAllBuildResourceByTypeWithPage(7,vo); + PagedResultVo hospitalViewVoPagedResultVo = new PagedResultVo<>(); + List hospitalViewVos = CollectionUtil.newArrayList(); + + resources.getData().stream().forEach(resource -> { + HospitalViewVo hospitalViewVo = new HospitalViewVo(); + BeanUtil.copyProperties(resource,hospitalViewVo); + JSONObject jsonObject= (JSONObject) JSON.parse(resource.getResourceAttribut()); + hospitalViewVo.setDoctorNum(jsonObject.get("doctor_num").toString()); + hospitalViewVo.setHospitalBed(jsonObject.get("hospital_bed").toString()); + hospitalViewVo.setNurseNum(jsonObject.get("nurse_num").toString()); + +// resource.getResourceAttribut() + hospitalViewVos.add(hospitalViewVo); + }); + hospitalViewVoPagedResultVo.setData(hospitalViewVos); + return hospitalViewVoPagedResultVo; + } +} diff --git a/src/main/java/com/hivekion/baseData/controller/TblWareHouseController.java b/src/main/java/com/hivekion/baseData/controller/TblWareHouseController.java new file mode 100644 index 0000000..0bb1638 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/controller/TblWareHouseController.java @@ -0,0 +1,53 @@ +package com.hivekion.baseData.controller; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalSearchVo; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalViewVo; +import com.hivekion.baseData.domain.tblwarehouseVo.WarehouseSearchVo; +import com.hivekion.baseData.domain.tblwarehouseVo.WarehouseViewVo; +import com.hivekion.common.annotation.AutoLog; +import com.hivekion.common.entity.PagedResultVo; +import com.hivekion.common.enums.OperationTypeEnum; +import com.hivekion.scenario.entity.Resource; +import com.hivekion.scenario.service.IResourceService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequestMapping("/basedata/warehouse") + +@Api(value = "仓库", tags = {"装备管理-仓库"}) +public class TblWareHouseController { + + @Autowired + private IResourceService service; + @PostMapping("/getList") + @ApiOperation(value = "获取仓库列表", notes = "") + @AutoLog(value = "获取仓库列表", operationType = OperationTypeEnum.SELECT, module = "基础数据/仓库") + public PagedResultVo getList(@RequestBody WarehouseSearchVo vo) { + PagedResultVo resources = this.service.listAllBuildResourceByTypeWithPage(8,vo); + PagedResultVo warehouseViewVoPagedResultVo = new PagedResultVo<>(); + List warehouseViewVos = CollectionUtil.newArrayList(); + resources.getData().stream().forEach(resource -> { + WarehouseViewVo warehouseViewVo = new WarehouseViewVo(); + BeanUtil.copyProperties(resource,warehouseViewVo); + JSONObject jsonObject= (JSONObject) JSON.parse(resource.getResourceAttribut()); + warehouseViewVo.setMedicalNum(jsonObject.get("medical_num").toString()); + warehouseViewVo.setFuelNum(jsonObject.get("fuel_num").toString()); + warehouseViewVo.setAmmunitionNum(jsonObject.get("ammunition_num").toString()); + warehouseViewVos.add(warehouseViewVo); + }); + warehouseViewVoPagedResultVo.setData(warehouseViewVos); + return warehouseViewVoPagedResultVo; + } +} diff --git a/src/main/java/com/hivekion/baseData/controller/TreeController.java b/src/main/java/com/hivekion/baseData/controller/TreeController.java index 2e85cde..3cc7e35 100644 --- a/src/main/java/com/hivekion/baseData/controller/TreeController.java +++ b/src/main/java/com/hivekion/baseData/controller/TreeController.java @@ -1,5 +1,6 @@ package com.hivekion.baseData.controller; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hivekion.baseData.domain.TblEntity; import com.hivekion.baseData.entity.Fightpowerhierarchy; import com.hivekion.baseData.service.FightpowerhierarchyService; @@ -40,7 +41,9 @@ public class TreeController { public ResponseData> armamentTree( @ApiParam(value = "父节点ID,指定从哪个节点开始返回装备树") Integer id) { List nodeList = new ArrayList<>(); - List list = tblEntityService.list(); + + List list = tblEntityService.list(new QueryWrapper().notIn("ENTITYTYPE","DataModel") + .notIn("PARENTID",-3)); //排序 list.sort((a, b) -> { if (a.getDisplayIndex() == null) { diff --git a/src/main/java/com/hivekion/baseData/domain/TblEntity.java b/src/main/java/com/hivekion/baseData/domain/TblEntity.java index 502b815..1239c4e 100644 --- a/src/main/java/com/hivekion/baseData/domain/TblEntity.java +++ b/src/main/java/com/hivekion/baseData/domain/TblEntity.java @@ -1,6 +1,8 @@ package com.hivekion.baseData.domain; +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 com.fasterxml.jackson.annotation.JsonFormat; // // import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnComment; @@ -17,9 +19,10 @@ import org.springframework.format.annotation.DateTimeFormat; @TableName(value = "tbl_entity") public class TblEntity extends TreeEntity { - @TableField + @CreatedBy + @TableId(value = "ID", type = IdType.AUTO) private Integer Id; @TableField(value="entitytype") diff --git a/src/main/java/com/hivekion/baseData/domain/TblEntityVo/TblEntityAddInputVo.java b/src/main/java/com/hivekion/baseData/domain/TblEntityVo/TblEntityAddInputVo.java index c2fcbee..ee4dcb2 100644 --- a/src/main/java/com/hivekion/baseData/domain/TblEntityVo/TblEntityAddInputVo.java +++ b/src/main/java/com/hivekion/baseData/domain/TblEntityVo/TblEntityAddInputVo.java @@ -6,8 +6,8 @@ import java.util.Date; @Data public class TblEntityAddInputVo { -// private Integer Id; -// private String EntityType; + private Integer Id; + private String entityType; private String EntityName; private Integer ParentId; // private String DisplayIndex; diff --git a/src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalSearchVo.java b/src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalSearchVo.java new file mode 100644 index 0000000..1c0b808 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalSearchVo.java @@ -0,0 +1,10 @@ +package com.hivekion.baseData.domain.tblhospitalVo; + +import com.hivekion.common.entity.SearchInputVo; +import lombok.Data; + +@Data +public class HospitalSearchVo extends SearchInputVo { + + private static final long serialVersionUID = 1L; +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalViewVo.java b/src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalViewVo.java new file mode 100644 index 0000000..b7054b9 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalViewVo.java @@ -0,0 +1,37 @@ +package com.hivekion.baseData.domain.tblhospitalVo; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class HospitalViewVo implements Serializable { + + private static final long serialVersionUID = 1L; + + + private Integer id; + + + private String resourceName; + + + private String icon; + + + private String lat; + + private String lng; + + private String resourceAttribut; + + private String doctorNum; + private String nurseNum; + private String hospitalBed; + + +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseSearchVo.java b/src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseSearchVo.java new file mode 100644 index 0000000..d840b75 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseSearchVo.java @@ -0,0 +1,10 @@ +package com.hivekion.baseData.domain.tblwarehouseVo; + +import com.hivekion.common.entity.SearchInputVo; +import lombok.Data; + +@Data +public class WarehouseSearchVo extends SearchInputVo { + + private static final long serialVersionUID = 1L; +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseViewVo.java b/src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseViewVo.java new file mode 100644 index 0000000..72c6d1f --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblwarehouseVo/WarehouseViewVo.java @@ -0,0 +1,32 @@ +package com.hivekion.baseData.domain.tblwarehouseVo; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class WarehouseViewVo implements Serializable { + + private static final long serialVersionUID = 1L; + + private Integer id; + + + private String resourceName; + + + private String icon; + + + private String lat; + + private String lng; + + private String resourceAttribut; + + private String medicalNum; + private String fuelNum; + private String ammunitionNum; + + +} diff --git a/src/main/java/com/hivekion/baseData/service/impl/TblEntityServiceImpl.java b/src/main/java/com/hivekion/baseData/service/impl/TblEntityServiceImpl.java index 34a9b3a..e1b9443 100644 --- a/src/main/java/com/hivekion/baseData/service/impl/TblEntityServiceImpl.java +++ b/src/main/java/com/hivekion/baseData/service/impl/TblEntityServiceImpl.java @@ -60,13 +60,21 @@ public class TblEntityServiceImpl extends ServiceImpl tWrapper = new LambdaUpdateWrapper() - .eq(TblEntity::getId, entity.getId()); - return this.saveOrUpdate(entity, tWrapper); + if(entity.getId() != null) { + LambdaUpdateWrapper tWrapper = new LambdaUpdateWrapper() + .eq(TblEntity::getId, entity.getId()); + return this.saveOrUpdate(entity); + }else{ + return this.save(entity); + } } } diff --git a/src/main/java/com/hivekion/scenario/controller/ResourceController.java b/src/main/java/com/hivekion/scenario/controller/ResourceController.java index 63fc62b..0c7ffc6 100644 --- a/src/main/java/com/hivekion/scenario/controller/ResourceController.java +++ b/src/main/java/com/hivekion/scenario/controller/ResourceController.java @@ -38,4 +38,6 @@ public class ResourceController { return vehicleList; } + + } diff --git a/src/main/java/com/hivekion/scenario/service/IResourceService.java b/src/main/java/com/hivekion/scenario/service/IResourceService.java index 7545c09..a03e446 100644 --- a/src/main/java/com/hivekion/scenario/service/IResourceService.java +++ b/src/main/java/com/hivekion/scenario/service/IResourceService.java @@ -1,11 +1,16 @@ package com.hivekion.scenario.service; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalSearchVo; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalViewVo; +import com.hivekion.common.entity.PagedResultVo; +import com.hivekion.common.entity.SearchInputVo; import com.hivekion.scenario.entity.Resource; import com.baomidou.mybatisplus.extension.service.IService; import com.hivekion.scenario.entity.Vehicle; import java.util.List; import java.util.Map; +import java.util.Objects; /** *

@@ -19,6 +24,8 @@ public interface IResourceService extends IService { public List listAllBuildResourceByType(Integer type); + public PagedResultVo listAllBuildResourceByTypeWithPage(Integer type, SearchInputVo hospitalSearchVo); + public Map listBuildResourceByType(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 d68bdb0..80eb59b 100644 --- a/src/main/java/com/hivekion/scenario/service/impl/ResourceServiceImpl.java +++ b/src/main/java/com/hivekion/scenario/service/impl/ResourceServiceImpl.java @@ -1,6 +1,19 @@ package com.hivekion.scenario.service.impl; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.hivekion.baseData.domain.TblFuel; +import com.hivekion.baseData.domain.TblFuelVo.TblFuelViewVo; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalSearchVo; +import com.hivekion.baseData.domain.tblwarehouseVo.WarehouseSearchVo; +import com.hivekion.baseData.domain.tblwarehouseVo.WarehouseViewVo; +import com.hivekion.common.entity.PagedResultVo; +import com.hivekion.common.entity.SearchInputVo; import com.hivekion.scenario.entity.Resource; import com.hivekion.scenario.entity.ResourceVehicleRela; import com.hivekion.scenario.entity.Vehicle; @@ -9,6 +22,7 @@ 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.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -44,6 +58,27 @@ public class ResourceServiceImpl extends ServiceImpl i return this.resourceMapper.selectList(queryWrapper); } + @Override + public PagedResultVo listAllBuildResourceByTypeWithPage(Integer type, SearchInputVo searchInputVo) { + if(type.intValue() == 7){ + HospitalSearchVo hospitalSearchVo = (HospitalSearchVo) searchInputVo; + } + if(type.intValue() ==8){ + WarehouseSearchVo warehouseViewVo = (WarehouseSearchVo) searchInputVo; + } + Page page = new Page<>(searchInputVo.getPageNum(), searchInputVo.getPageSize()); + page.addOrder(new OrderItem("id", true)); + LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery(); + lambdaQueryWrapper.eq(Resource::getResourceType,type); + IPage data = this.page(page,lambdaQueryWrapper); + Integer total = (int) data.getTotal(); + PagedResultVo result = new PagedResultVo<>(searchInputVo, total, data + .getRecords()); + return result; + } + + + @Override public Map listBuildResourceByType(Integer type) { QueryWrapper queryWrapper = new QueryWrapper<>();