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..66e9560 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/controller/TblHospitalController.java @@ -0,0 +1,65 @@ +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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.hivekion.baseData.domain.TblEntity; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalSearchVo; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalViewVo; +import com.hivekion.baseData.domain.tblresourceVo.ResourcesTypeVo; +import com.hivekion.baseData.service.ITblEntityService; +import com.hivekion.common.annotation.AutoLog; +import com.hivekion.common.entity.PagedResultVo; +import com.hivekion.common.entity.ResponseData; +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.*; + +import java.util.ArrayList; +import java.util.List; + +@RestController +@RequestMapping("/basedata/hospital") + +@Api(value = "医院", tags = {"装备管理-医院"}) +public class TblHospitalController { + + @Autowired + private IResourceService service; + + @Autowired + private ITblEntityService entityService; + + @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()); + hospitalViewVo.setResourceType("hospital"); + +// resource.getResourceAttribut() + hospitalViewVos.add(hospitalViewVo); + }); + hospitalViewVoPagedResultVo.setData(hospitalViewVos); + return hospitalViewVoPagedResultVo; + } + + +} diff --git a/src/main/java/com/hivekion/baseData/controller/TblVehicleController.java b/src/main/java/com/hivekion/baseData/controller/TblVehicleController.java new file mode 100644 index 0000000..9dae541 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/controller/TblVehicleController.java @@ -0,0 +1,118 @@ +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.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +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.TblAircraftVo.ImgAircraftImageInfoVo; +import com.hivekion.baseData.domain.TblAircraftVo.TblAircraftAddInputVo; +import com.hivekion.baseData.domain.TblAircraftVo.TblAircraftModelVo; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalSearchVo; +import com.hivekion.baseData.domain.tblhospitalVo.HospitalViewVo; +import com.hivekion.baseData.domain.tblvehicleVo.ImgVehicleImageInfoVo; +import com.hivekion.baseData.domain.tblvehicleVo.VehicleAddInputVo; +import com.hivekion.baseData.domain.tblvehicleVo.VehicleSearchVo; +import com.hivekion.baseData.domain.tblvehicleVo.VehicleViewVo; +import com.hivekion.baseData.service.IImgVehicleImageService; +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.entity.Vehicle; +import com.hivekion.scenario.service.IVehicleService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.io.IOException; +import java.util.List; + +@RestController +@RequestMapping("/basedata/vehicle") + +@Api(value = "车辆", tags = {"装备管理-车辆"}) +public class TblVehicleController { + + @Autowired + private IVehicleService vehicleService; + + @Autowired + private IImgVehicleImageService iImgVehicleImageService; + + @PostMapping("/getList") + @ApiOperation(value = "获取车辆列表", notes = "") + @AutoLog(value = "获取车辆列表", operationType = OperationTypeEnum.SELECT, module = "基础数据/车辆") + public PagedResultVo getList(@RequestBody VehicleSearchVo vo) { + Page page = new Page<>(vo.getPageNum(), vo.getPageSize()); + LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery(); + lambdaQueryWrapper.eq(StringUtils.isNotEmpty(vo.getVehicleType()),Vehicle::getVehicleType,vo.getVehicleType()); + IPage vehicleList = this.vehicleService.page(page,lambdaQueryWrapper); + PagedResultVo vehicleViewVoPagedResultVo = new PagedResultVo<>(); + List vehicleViewVos = CollectionUtil.newArrayList(); + + vehicleList.getRecords().stream().forEach(vehicle -> { + VehicleViewVo vehicleViewVo = new VehicleViewVo(); + BeanUtil.copyProperties(vehicle,vehicleViewVo); + vehicleViewVo.setId(vehicle.getId()); + +// resource.getResourceAttribut() + vehicleViewVos.add(vehicleViewVo); + }); + vehicleViewVoPagedResultVo.setData(vehicleViewVos); + return vehicleViewVoPagedResultVo; + } + + + @GetMapping("/getInfo") + @ApiOperation(value = "获取车辆详细信息", notes = "") + @AutoLog(value = "获取车辆详细信息", operationType = OperationTypeEnum.SELECT, module = "基础数据/车辆信息") + public VehicleViewVo getInfo(Integer id, boolean doFlag) { + return vehicleService.getInfo(id,doFlag); + } + + @DeleteMapping("/remove") + @ApiOperation(value = "删除车辆", notes = "") + @AutoLog(value = "删除车辆", operationType = OperationTypeEnum.DELETE, module = "基础数据/车辆信息") + public Boolean remove(String Guid) { + return vehicleService.remove(Guid); + } + + /** + * 图片 + */ + + @GetMapping("/getimglist") + @ApiOperation(value = "获取车辆图片", notes = "") + @AutoLog(value = "获取车辆图片", operationType = OperationTypeEnum.SELECT, module = "基础数据/获取车辆图片") + public ImgVehicleImageInfoVo getImgList(Integer Id) throws IOException { + return iImgVehicleImageService.getInfo(Id); + } + + /** + * 生成新Id + * + * @return + */ + @GetMapping("/getNewId") + @ApiOperation(value = "获取新id", notes = "") + @AutoLog(value = "获取新id", operationType = OperationTypeEnum.SELECT, module = "基础数据/获取新id") + public Integer getNewId() { + return vehicleService.getNewId(); + } + + @PostMapping("/add") + @ApiOperation(value = "新增车辆信息", notes = "") + @AutoLog(value = "新增车辆信息", operationType = OperationTypeEnum.INSERT, module = "基础数据/新增车辆信息") + public boolean add(@RequestBody VehicleAddInputVo inputVo) throws Exception { +// service.checkAircraft(inputVo); + return vehicleService.add(inputVo); + } +} 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/ImgVehicleImage.java b/src/main/java/com/hivekion/baseData/domain/ImgVehicleImage.java new file mode 100644 index 0000000..b2d9bf4 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/ImgVehicleImage.java @@ -0,0 +1,15 @@ +package com.hivekion.baseData.domain; + + +import lombok.Data; + +@Data +public class ImgVehicleImage { + + private Integer id; + private String guid; + private byte[] icon; + private byte[] image; + private String model3D; + +} 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/TblEntityVo/TblEntityUpdateNameVo.java b/src/main/java/com/hivekion/baseData/domain/TblEntityVo/TblEntityUpdateNameVo.java index 86622af..3917785 100644 --- a/src/main/java/com/hivekion/baseData/domain/TblEntityVo/TblEntityUpdateNameVo.java +++ b/src/main/java/com/hivekion/baseData/domain/TblEntityVo/TblEntityUpdateNameVo.java @@ -7,4 +7,5 @@ public class TblEntityUpdateNameVo { private Integer id; private String EntityName; private Integer ParentId; + private String EntityType; } 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..9065942 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblhospitalVo/HospitalViewVo.java @@ -0,0 +1,39 @@ +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; + + private String resourceType; + + +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblresourceVo/ResourcesTypeVo.java b/src/main/java/com/hivekion/baseData/domain/tblresourceVo/ResourcesTypeVo.java new file mode 100644 index 0000000..ce1166e --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblresourceVo/ResourcesTypeVo.java @@ -0,0 +1,10 @@ +package com.hivekion.baseData.domain.tblresourceVo; + +import lombok.Data; + +@Data +public class ResourcesTypeVo { + + private String resourceTypeCode; + private String resourceTypeName; +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/ImgVehicleImageInfoVo.java b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/ImgVehicleImageInfoVo.java new file mode 100644 index 0000000..b0fc165 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/ImgVehicleImageInfoVo.java @@ -0,0 +1,15 @@ +package com.hivekion.baseData.domain.tblvehicleVo; + + +import lombok.Data; + +@Data +public class ImgVehicleImageInfoVo { + + private Integer id; + private String guid; + private String icon; + private String image; + private String model3D; + +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleAddInputVo.java b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleAddInputVo.java new file mode 100644 index 0000000..79e4a48 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleAddInputVo.java @@ -0,0 +1,45 @@ +package com.hivekion.baseData.domain.tblvehicleVo; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class VehicleAddInputVo implements Serializable { + + private static final long serialVersionUID = 1L; + + @JsonProperty(value = "ID") + private Integer id; + + + private String vehicleName; + + + private String vehicleSpreed; + + + private String vehicleType; + + + private Integer fuelAbility; + + + private Integer medicalAbility; + + + private Integer ammunitionAbility; + + + private Integer vehicleUse; + + + private String IconType; + + private String Model3D; + + private String Description; + + private Integer ParentDirId; +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleSearchVo.java b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleSearchVo.java new file mode 100644 index 0000000..c4182ac --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleSearchVo.java @@ -0,0 +1,11 @@ +package com.hivekion.baseData.domain.tblvehicleVo; + +import com.hivekion.common.entity.SearchInputVo; +import lombok.Data; +import org.springframework.beans.factory.annotation.Autowired; + +@Data +public class VehicleSearchVo extends SearchInputVo { + + private String vehicleType; +} diff --git a/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleViewVo.java b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleViewVo.java new file mode 100644 index 0000000..b096632 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/domain/tblvehicleVo/VehicleViewVo.java @@ -0,0 +1,38 @@ +package com.hivekion.baseData.domain.tblvehicleVo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class VehicleViewVo implements Serializable { + + private static final long serialVersionUID = 1L; + @JsonProperty("ID") + private Integer id; + + @ApiModelProperty("名称") + private String vehicleName; + + @ApiModelProperty("速度") + private String vehicleSpreed; + + @ApiModelProperty("类型") + private String vehicleType; + + @ApiModelProperty("运油能力") + private Integer fuelAbility; + + @ApiModelProperty("运药能力") + private Integer medicalAbility; + + @ApiModelProperty("运弹药能力") + private Integer ammunitionAbility; + + private Integer vehicleUse; + + private String Guid; +} 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/mapper/ImgVehicleImageMapper.java b/src/main/java/com/hivekion/baseData/mapper/ImgVehicleImageMapper.java new file mode 100644 index 0000000..8349fa9 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/mapper/ImgVehicleImageMapper.java @@ -0,0 +1,10 @@ +package com.hivekion.baseData.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hivekion.baseData.domain.ImgAircraftImage; +import com.hivekion.baseData.domain.ImgVehicleImage; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ImgVehicleImageMapper extends BaseMapper { +} diff --git a/src/main/java/com/hivekion/baseData/service/IImgVehicleImageService.java b/src/main/java/com/hivekion/baseData/service/IImgVehicleImageService.java new file mode 100644 index 0000000..16c6fcc --- /dev/null +++ b/src/main/java/com/hivekion/baseData/service/IImgVehicleImageService.java @@ -0,0 +1,17 @@ +package com.hivekion.baseData.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hivekion.baseData.domain.ImgAircraftImage; +import com.hivekion.baseData.domain.ImgVehicleImage; +import com.hivekion.baseData.domain.TblAircraftVo.ImgAircraftImageInfoVo; +import com.hivekion.baseData.domain.tblvehicleVo.ImgVehicleImageInfoVo; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; + +public interface IImgVehicleImageService extends IService { + ImgVehicleImageInfoVo getInfo(Integer id); +// boolean add(ImgAircraftImageAddInputVo vo); + boolean add(MultipartFile file, Integer id) throws IOException; + boolean remove(String Guid); +} diff --git a/src/main/java/com/hivekion/baseData/service/impl/ImgVehicleImageServiceImpl.java b/src/main/java/com/hivekion/baseData/service/impl/ImgVehicleImageServiceImpl.java new file mode 100644 index 0000000..b407647 --- /dev/null +++ b/src/main/java/com/hivekion/baseData/service/impl/ImgVehicleImageServiceImpl.java @@ -0,0 +1,62 @@ +package com.hivekion.baseData.service.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hivekion.baseData.domain.ImgVehicleImage; +import com.hivekion.baseData.domain.tblvehicleVo.ImgVehicleImageInfoVo; +import com.hivekion.baseData.mapper.ImgVehicleImageMapper; +import com.hivekion.baseData.service.IImgVehicleImageService; +import com.hivekion.common.exception.BusinessException; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.util.Base64Utils; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; + + +@Service +public class ImgVehicleImageServiceImpl extends ServiceImpl implements IImgVehicleImageService { + @Override + public ImgVehicleImageInfoVo getInfo(Integer id){ + ImgVehicleImage img = this.getById(id); + if(img==null){ + throw new BusinessException(500,"未找到该图片信息"); + } + ImgVehicleImageInfoVo vo = new ImgVehicleImageInfoVo(); + BeanUtils.copyProperties(img,vo); +// vo.setImage(Base64.byteArrayToAltBase64(img.getImage())); + vo.setImage(Base64Utils.encodeToString(img.getImage())); + return vo; + } + +// @Override +// public boolean add(ImgAircraftImageAddInputVo vo) { +// ImgAircraftImage img = new ImgAircraftImage(); +// BeanUtils.copyProperties(vo,img); +// img.setImage(Base64Utils.decodeFromString(vo.getImage())); +//// img.setImage(Base64.altBase64ToByteArray(vo.getImage())); +// img.setGuid("hsfw-dataaircraft-" +String.format("%12d",vo.getId()).replace(" ", "0")); +// return this.saveOrUpdate(img); +// } + + @Override + public boolean add(MultipartFile file, Integer id) throws IOException { + byte[] bytes = file.getBytes(); + ImgVehicleImage img = new ImgVehicleImage(); + img.setImage(bytes); +// img.setImage(Base64.altBase64ToByteArray(vo.getImage())); + img.setId(id); + img.setGuid("hsfw-dataaircraft-" +String.format("%12d",id).replace(" ", "0")); + + return this.saveOrUpdate(img); + } + + @Override + public boolean remove(String Guid) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(ImgVehicleImage::getGuid,Guid); + return this.remove(wrapper); + } +} 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/entity/Vehicle.java b/src/main/java/com/hivekion/scenario/entity/Vehicle.java index 93382ae..573a731 100644 --- a/src/main/java/com/hivekion/scenario/entity/Vehicle.java +++ b/src/main/java/com/hivekion/scenario/entity/Vehicle.java @@ -56,6 +56,42 @@ public class Vehicle implements Serializable { @TableField(value = "upd_oper") private String updOper; + @ApiModelProperty("车辆用途") + @TableField(value = "vehicle_use") + private Integer vehicleUse; + + @TableField("IconType") +// // @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 10) +// // @ColumnComment("二维标准军标名称") + private String IconType; + + @TableField +// // @ColumnType(value = MySqlTypeConstant.LONGTEXT) +// // @ColumnComment("三维模型存储路径,没有设置则将使用通用模型。") + private String Model3D; + @TableField +// // @ColumnType(value = MySqlTypeConstant.LONGTEXT) +// // @ColumnComment("对飞机的详细描述") + private String Description; + + @TableField +// // @ColumnType(value = MySqlTypeConstant.INT, length = 11) +// // @ColumnComment("用于数据库浏览时对装备分类使用,在模型中暂时没有使用。") + private Integer ParentId; + + @TableField +// // @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 36) +// // @ColumnComment("Guid") + private String Guid; + + public String getGuid() { + return Guid; + } + + public void setGuid(String guid) { + Guid = guid; + } + public Integer getId() { return id; } @@ -128,18 +164,64 @@ public class Vehicle implements Serializable { this.updOper = updOper; } + public Integer getVehicleUse() { + return vehicleUse; + } + + public void setVehicleUse(Integer vehicleUse) { + this.vehicleUse = vehicleUse; + } + + public String getIconType() { + return IconType; + } + + public void setIconType(String iconType) { + IconType = iconType; + } + + public String getModel3D() { + return Model3D; + } + + public void setModel3D(String model3D) { + Model3D = model3D; + } + + public String getDescription() { + return Description; + } + + public void setDescription(String description) { + Description = description; + } + + public Integer getParentId() { + return ParentId; + } + + public void setParentId(Integer parentId) { + ParentId = parentId; + } + @Override public String toString() { return "Vehicle{" + - "id = " + id + - ", vehicleName = " + vehicleName + - ", vehicleSpreed = " + vehicleSpreed + - ", vehicleType = " + vehicleType + - ", fuelAbility = " + fuelAbility + - ", medicalAbility = " + medicalAbility + - ", ammunitionAbility = " + ammunitionAbility + - ", createOper = " + createOper + - ", updOper = " + updOper + - "}"; + "id=" + id + + ", vehicleName='" + vehicleName + '\'' + + ", vehicleSpreed='" + vehicleSpreed + '\'' + + ", vehicleType='" + vehicleType + '\'' + + ", fuelAbility=" + fuelAbility + + ", medicalAbility=" + medicalAbility + + ", ammunitionAbility=" + ammunitionAbility + + ", createOper='" + createOper + '\'' + + ", updOper='" + updOper + '\'' + + ", vehicleUse=" + vehicleUse + + ", IconType='" + IconType + '\'' + + ", Model3D='" + Model3D + '\'' + + ", Description='" + Description + '\'' + + ", ParentId=" + ParentId + + ", Guid='" + Guid + '\'' + + '}'; } } 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/IVehicleService.java b/src/main/java/com/hivekion/scenario/service/IVehicleService.java index cbf7e60..d029ae4 100644 --- a/src/main/java/com/hivekion/scenario/service/IVehicleService.java +++ b/src/main/java/com/hivekion/scenario/service/IVehicleService.java @@ -1,5 +1,9 @@ package com.hivekion.scenario.service; +import com.hivekion.baseData.domain.TblAircraftVo.TblAircraftAddInputVo; +import com.hivekion.baseData.domain.TblAircraftVo.TblAircraftModelVo; +import com.hivekion.baseData.domain.tblvehicleVo.VehicleAddInputVo; +import com.hivekion.baseData.domain.tblvehicleVo.VehicleViewVo; import com.hivekion.scenario.entity.Vehicle; import com.baomidou.mybatisplus.extension.service.IService; @@ -13,4 +17,11 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IVehicleService extends IService { + VehicleViewVo getInfo(Integer id, boolean doFlag); + + Integer getNewId(); + + boolean remove(String Guid); + + boolean add(VehicleAddInputVo vo); } 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<>(); diff --git a/src/main/java/com/hivekion/scenario/service/impl/VehicleServiceImpl.java b/src/main/java/com/hivekion/scenario/service/impl/VehicleServiceImpl.java index a2d3607..ccd6b53 100644 --- a/src/main/java/com/hivekion/scenario/service/impl/VehicleServiceImpl.java +++ b/src/main/java/com/hivekion/scenario/service/impl/VehicleServiceImpl.java @@ -1,11 +1,27 @@ package com.hivekion.scenario.service.impl; +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.hivekion.baseData.domain.TblAircraft; +import com.hivekion.baseData.domain.TblEntity; +import com.hivekion.baseData.domain.tblvehicleVo.VehicleAddInputVo; +import com.hivekion.baseData.domain.tblvehicleVo.VehicleViewVo; +import com.hivekion.baseData.service.ITblEntityService; +import com.hivekion.common.exception.BusinessException; import com.hivekion.scenario.entity.Vehicle; import com.hivekion.scenario.mapper.VehicleMapper; import com.hivekion.scenario.service.IVehicleService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.Objects; + /** *

* 车辆信息表 服务实现类 @@ -17,4 +33,55 @@ import org.springframework.stereotype.Service; @Service public class VehicleServiceImpl extends ServiceImpl implements IVehicleService { + @Autowired + private ITblEntityService entityService; + + @Override + public VehicleViewVo getInfo(Integer id, boolean doFlag) { + LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery(); + lambdaQueryWrapper.eq(id != null,Vehicle::getId,id); + Vehicle vehicle = this.baseMapper.selectOne(lambdaQueryWrapper); + VehicleViewVo vehicleViewVo = new VehicleViewVo(); + if(!Objects.isNull(vehicle)){ + BeanUtil.copyProperties(vehicle,vehicleViewVo); + vehicleViewVo.setId(vehicleViewVo.getId()); + } + return vehicleViewVo; + } + + @Override + public Integer getNewId() { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.orderByDesc(Vehicle::getId); + List list = baseMapper.selectList(wrapper); + Integer newId = list.get(0).getId() + 1; + return newId; + } + + @Override + public boolean remove(String Guid) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Vehicle::getGuid, Guid); + + return this.remove(wrapper); + } + + @Override + public boolean add(VehicleAddInputVo vo) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TblEntity::getParentId,vo.getParentDirId()); + List aircraft = entityService.list(wrapper); + if (aircraft.size()!=0){ + throw new BusinessException(500,"所属分类不是最终分类,请选择最终分类"); + } + + Vehicle vehicle = new Vehicle(); + BeanUtils.copyProperties(vo, vehicle); + vehicle.setParentId(vo.getParentDirId()); + vehicle.setGuid("dataaircraft-" + String.format("%12d", vo.getId()).replace(" ", "0")); + LambdaUpdateWrapper tWrapper = new LambdaUpdateWrapper() + .eq(Vehicle::getGuid, vehicle.getGuid()); + System.out.println(vehicle.toString()); + return this.save(vehicle); + } }