Commit f60f463e authored by xinglei's avatar xinglei

*)修改查询找不到图片问题

parent 2f24142a
...@@ -47,6 +47,9 @@ public class AircraftDto extends BaseDto { ...@@ -47,6 +47,9 @@ public class AircraftDto extends BaseDto {
@ApiModelProperty(value = "发动机类型") @ApiModelProperty(value = "发动机类型")
private String engineType; private String engineType;
@ApiModelProperty(value = "发动机类型code")
private String engineTypeCode;
@ApiModelProperty(value = "发动机数量") @ApiModelProperty(value = "发动机数量")
private Integer enginesmNum; private Integer enginesmNum;
...@@ -56,6 +59,9 @@ public class AircraftDto extends BaseDto { ...@@ -56,6 +59,9 @@ public class AircraftDto extends BaseDto {
@ApiModelProperty(value = "燃油类型") @ApiModelProperty(value = "燃油类型")
private String fuelType; private String fuelType;
@ApiModelProperty(value = "燃油类型code")
private String fuelTypeCode;
@ApiModelProperty(value = "最大载油量") @ApiModelProperty(value = "最大载油量")
private Double oilLoadMax; private Double oilLoadMax;
......
...@@ -67,6 +67,11 @@ public class Aircraft extends BaseEntity { ...@@ -67,6 +67,11 @@ public class Aircraft extends BaseEntity {
@TableField("engine_type") @TableField("engine_type")
private String engineType; private String engineType;
/** /**
* 发动机类型code
*/
@TableField("engine_type_code")
private String engineTypeCode;
/**
* 发动机数量 * 发动机数量
*/ */
@TableField("enginesm_num") @TableField("enginesm_num")
...@@ -82,6 +87,11 @@ public class Aircraft extends BaseEntity { ...@@ -82,6 +87,11 @@ public class Aircraft extends BaseEntity {
@TableField("fuel_type") @TableField("fuel_type")
private String fuelType; private String fuelType;
/** /**
* 燃油类型code
*/
@TableField("fuel_type_code")
private String fuelTypeCode;
/**
* 最大载油量 * 最大载油量
*/ */
@TableField("oil_load_max") @TableField("oil_load_max")
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.exception.BaseException;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.StringUtil;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.DataNotFound;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto; import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft; import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft;
...@@ -21,38 +9,48 @@ import com.yeejoin.amos.boot.module.jcs.api.service.IAircraftService; ...@@ -21,38 +9,48 @@ import com.yeejoin.amos.boot.module.jcs.api.service.IAircraftService;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.FileInfoModel; import com.yeejoin.amos.feign.systemctl.model.FileInfoModel;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.exception.BaseException;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.StringUtil;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.DataNotFound;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/** /**
* 航空器信息服务实现类 * 航空器信息服务实现类
* *
* @author system_generator * @author system_generator
* @date 2021-06-29 * @date 2021-06-29
*/ */
@Service @Service
public class AircraftServiceImpl extends BaseService<AircraftDto,Aircraft,AircraftMapper> implements IAircraftService { public class AircraftServiceImpl extends BaseService<AircraftDto, Aircraft, AircraftMapper> implements IAircraftService {
/**
/** * <pre>
* * 保存
* <pre> * </pre>
* 保存 *
* </pre> * @param agencyCode
* * @param aircraftDto
* @param agencyCode * @return
* @param aircraftDto * @throws Exception
* @return */
* @throws Exception public AircraftDto createAircraft(String agencyCode, AircraftDto aircraftDto) throws Exception {
*/ //持久化航空器信息
public AircraftDto createAircraft(String agencyCode, AircraftDto aircraftDto) throws Exception aircraftDto = this.createWithModel(aircraftDto);
{ //持久化航空器附件信息
//持久化航空器信息 saveAircraftFile(agencyCode, aircraftDto);
aircraftDto = this.createWithModel(aircraftDto);
//持久化航空器附件信息
saveAircraftFile(agencyCode, aircraftDto);
return aircraftDto; return aircraftDto;
} }
/** /**
*
* <pre> * <pre>
* 编辑航空器信息 * 编辑航空器信息
* </pre> * </pre>
...@@ -63,23 +61,20 @@ public class AircraftServiceImpl extends BaseService<AircraftDto,Aircraft,Aircra ...@@ -63,23 +61,20 @@ public class AircraftServiceImpl extends BaseService<AircraftDto,Aircraft,Aircra
* @throws Exception * @throws Exception
*/ */
public AircraftDto updateAircraft(String agencyCode, AircraftDto model) throws Exception { public AircraftDto updateAircraft(String agencyCode, AircraftDto model) throws Exception {
AircraftDto oldModel = this.queryBySeq(model.getSequenceNbr());
AircraftDto oldModel = this.queryBySeq(model.getSequenceNbr());
if (ValidationUtil.isEmpty(oldModel)) if (ValidationUtil.isEmpty(oldModel))
throw new DataNotFound("找不到指定的航空器信息."); throw new DataNotFound("找不到指定的航空器信息.");
//删除附件信息 //删除附件信息
Systemctl.fileInfoClient.deleteByAlias(agencyCode, Aircraft.class.getSimpleName(), Systemctl.fileInfoClient.deleteByAlias(agencyCode, Aircraft.class.getSimpleName(),
String.valueOf(model.getSequenceNbr()), null); String.valueOf(model.getSequenceNbr()), null);
//持久化航空器附件信息 //持久化航空器附件信息
saveAircraftFile(agencyCode, model); saveAircraftFile(agencyCode, model);
return this.updateWithModel(Bean.copyExistPropertis(model, oldModel)); return this.updateWithModel(Bean.copyExistPropertis(model, oldModel));
} }
/** /**
*
* <pre> * <pre>
* 根据航空器主键查询 * 根据航空器主键查询
* </pre> * </pre>
...@@ -87,79 +82,25 @@ public class AircraftServiceImpl extends BaseService<AircraftDto,Aircraft,Aircra ...@@ -87,79 +82,25 @@ public class AircraftServiceImpl extends BaseService<AircraftDto,Aircraft,Aircra
* @param seq * @param seq
* @return * @return
*/ */
public AircraftDto queryByAircraftSeq(String agencyCode, Long seq) public AircraftDto queryByAircraftSeq(String agencyCode, Long seq) {
{ AircraftDto aircraftDto = this.queryBySeq(seq);
AircraftDto aircraftDto = this.queryBySeq(seq); //填充航空器附件信息
//填充航空器附件信息 FeignClientResult<List<FileInfoModel>> fileInfoModelResult = Systemctl.fileInfoClient.queryByEntity(
FeignClientResult<List<FileInfoModel>> fileInfoModelResult = Systemctl.fileInfoClient.queryByEntity( agencyCode, Aircraft.class.getSimpleName(), String.valueOf(seq));
agencyCode, Aircraft.class.getSimpleName(), String.valueOf(seq)); List<FileInfoModel> fileInfoModels = fileInfoModelResult.getResult();
List<FileInfoModel> fileInfoModels = fileInfoModelResult.getResult();
if (ValidationUtil.isEmpty(fileInfoModels)) if (!ValidationUtil.isEmpty(fileInfoModels)) {
{ aircraftDto.setAppearanceImages(processToStr(fileInfoModels, AircraftFileTypeEnum.APPEARANCE.getCode()));
//外观图 aircraftDto.setPlaneImages(processToStr(fileInfoModels, AircraftFileTypeEnum.PLANE.getCode()));
StringBuilder appearanceImages = new StringBuilder(); aircraftDto.setRescueImages(processToStr(fileInfoModels, AircraftFileTypeEnum.RESCUE.getCode()));
//平面图 aircraftDto.setPositionImages(processToStr(fileInfoModels, AircraftFileTypeEnum.POSITION.getCode()));
StringBuilder planeImages = new StringBuilder(); aircraftDto.setModels(processToStr(fileInfoModels, AircraftFileTypeEnum.MODEL.getCode()));
//救援图 }
StringBuilder rescueImages = new StringBuilder();
//方位图
StringBuilder positionImages = new StringBuilder();
//三维模型
StringBuilder models = new StringBuilder();
for (FileInfoModel fileInfoModel : fileInfoModels)
{
if (fileInfoModel.getFileCategory().equals(AircraftFileTypeEnum.APPEARANCE.getCode()))
{
if (!ValidationUtil.isEmpty(appearanceImages.toString()))
{
appearanceImages.append(",");
}
appearanceImages.append(fileInfoModel.getFilename());
}else if (fileInfoModel.getFileCategory().equals(AircraftFileTypeEnum.PLANE.getCode()))
{
if (!ValidationUtil.isEmpty(planeImages.toString()))
{
planeImages.append(",");
}
planeImages.append(fileInfoModel.getFilename());
}else if (fileInfoModel.getFileCategory().equals(AircraftFileTypeEnum.RESCUE.getCode()))
{
if (!ValidationUtil.isEmpty(rescueImages.toString()))
{
rescueImages.append(",");
}
rescueImages.append(fileInfoModel.getFilename());
}else if (fileInfoModel.getFileCategory().equals(AircraftFileTypeEnum.POSITION.getCode()))
{
if (!ValidationUtil.isEmpty(positionImages.toString()))
{
positionImages.append(",");
}
positionImages.append(fileInfoModel.getFilename());
}else if (fileInfoModel.getFileCategory().equals(AircraftFileTypeEnum.MODEL.getCode()))
{
if (!ValidationUtil.isEmpty(models.toString()))
{
models.append(",");
}
models.append(fileInfoModel.getFilename());
}
}
aircraftDto.setAppearanceImages(appearanceImages.toString());
aircraftDto.setPlaneImages(planeImages.toString());
aircraftDto.setRescueImages(rescueImages.toString());
aircraftDto.setPositionImages(positionImages.toString());
aircraftDto.setModels(models.toString());
}
return aircraftDto; return aircraftDto;
} }
/** /**
*
* <pre> * <pre>
* 批量删除 * 批量删除
* </pre> * </pre>
...@@ -169,112 +110,110 @@ public class AircraftServiceImpl extends BaseService<AircraftDto,Aircraft,Aircra ...@@ -169,112 +110,110 @@ public class AircraftServiceImpl extends BaseService<AircraftDto,Aircraft,Aircra
* @throws Exception * @throws Exception
*/ */
@Transactional(rollbackFor = {Exception.class, BaseException.class}) @Transactional(rollbackFor = {Exception.class, BaseException.class})
public List<Long> multDeleteAircraft(String agencyCode, String ids) throws Exception public List<Long> multDeleteAircraft(String agencyCode, String ids) throws Exception {
{ List<Long> seqs = StringUtil.String2LongList(ids);
List<Long> seqs = StringUtil.String2LongList(ids);
for (Long id : seqs) { for (Long id : seqs) {
//删除附件信息 //删除附件信息
Systemctl.fileInfoClient.deleteByAlias(agencyCode, Aircraft.class.getSimpleName(), Systemctl.fileInfoClient.deleteByAlias(agencyCode, Aircraft.class.getSimpleName(),
String.valueOf(id), null); String.valueOf(id), null);
//删除航空器信息 //删除航空器信息
this.deleteBySeq(id); this.deleteBySeq(id);
} }
return seqs; return seqs;
} }
/** /**
* * <pre>
* <pre> * 分页查询
* 分页查询 * </pre>
* </pre> *
* * @param page
* @param page * @return
* @return */
*/ public Page<AircraftDto> queryForAircraftPage(Page<AircraftDto> page, String aircraftModel,
public Page<AircraftDto> queryForAircraftPage(Page<AircraftDto> page, String aircraftModel, String engineType, String fuelType) {
String engineType, String fuelType) return this.queryForPage(page, null, false, aircraftModel, engineType, fuelType);
{ }
return this.queryForPage(page, null, false, aircraftModel, engineType, fuelType);
/**
* <pre>
* 持久化航空器附件信息
* </pre>
*
* @param agencyCode
* @param aircraftDto
* @return
*/
private boolean saveAircraftFile(String agencyCode, AircraftDto aircraftDto) throws Exception {
List<FileInfoModel> fileInfoModelList = new ArrayList<FileInfoModel>();
//外观图
if (!ValidationUtil.isEmpty(aircraftDto.getAppearanceImages())) {
List<String> appearanceImages = StringUtil.String2List(aircraftDto.getAppearanceImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, appearanceImages, aircraftDto, AircraftFileTypeEnum.APPEARANCE.getCode()));
}
//平面图
if (!ValidationUtil.isEmpty(aircraftDto.getPlaneImages())) {
List<String> planeImages = StringUtil.String2List(aircraftDto.getPlaneImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, planeImages, aircraftDto, AircraftFileTypeEnum.PLANE.getCode()));
}
//救援图
if (!ValidationUtil.isEmpty(aircraftDto.getRescueImages())) {
List<String> rescueImages = StringUtil.String2List(aircraftDto.getRescueImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, rescueImages, aircraftDto, AircraftFileTypeEnum.RESCUE.getCode()));
}
//方位图
if (!ValidationUtil.isEmpty(aircraftDto.getPositionImages())) {
List<String> positionImages = StringUtil.String2List(aircraftDto.getPositionImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, positionImages, aircraftDto, AircraftFileTypeEnum.POSITION.getCode()));
}
//三维模型
if (!ValidationUtil.isEmpty(aircraftDto.getModels())) {
List<String> models = StringUtil.String2List(aircraftDto.getModels());
fileInfoModelList.addAll(buildFileInfo(agencyCode, models, aircraftDto, AircraftFileTypeEnum.MODEL.getCode()));
} }
/** if (!ValidationUtil.isEmpty(fileInfoModelList)) {
* Systemctl.fileInfoClient.batchCreateByEntity(fileInfoModelList);
* <pre> }
* 持久化航空器附件信息 return true;
* </pre> }
*
* @param agencyCode
* @param aircraftDto
* @return
*/
private boolean saveAircraftFile(String agencyCode, AircraftDto aircraftDto) throws Exception
{
List<FileInfoModel> fileInfoModelList = new ArrayList<FileInfoModel>();
//外观图
if (!ValidationUtil.isEmpty(aircraftDto.getAppearanceImages()))
{
List<String> appearanceImages = StringUtil.String2List(aircraftDto.getAppearanceImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, appearanceImages, aircraftDto, AircraftFileTypeEnum.APPEARANCE.getCode()));
}
//平面图
if (!ValidationUtil.isEmpty(aircraftDto.getPlaneImages()))
{
List<String> planeImages = StringUtil.String2List(aircraftDto.getPlaneImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, planeImages, aircraftDto, AircraftFileTypeEnum.PLANE.getCode()));
}
//救援图
if (!ValidationUtil.isEmpty(aircraftDto.getRescueImages()))
{
List<String> rescueImages = StringUtil.String2List(aircraftDto.getRescueImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, rescueImages, aircraftDto, AircraftFileTypeEnum.RESCUE.getCode()));
}
//方位图
if (!ValidationUtil.isEmpty(aircraftDto.getPositionImages()))
{
List<String> positionImages = StringUtil.String2List(aircraftDto.getPositionImages());
fileInfoModelList.addAll(buildFileInfo(agencyCode, positionImages, aircraftDto, AircraftFileTypeEnum.POSITION.getCode()));
}
//三维模型
if (!ValidationUtil.isEmpty(aircraftDto.getModels()))
{
List<String> models = StringUtil.String2List(aircraftDto.getModels());
fileInfoModelList.addAll(buildFileInfo(agencyCode, models, aircraftDto, AircraftFileTypeEnum.MODEL.getCode()));
}
Systemctl.fileInfoClient.batchCreateByEntity(fileInfoModelList); /**
* <pre>
return true; * 构建文件信息
* </pre>
*
* @param agencyCode
* @param images
* @param aircraftDto
* @param fileCategory
* @return
*/
private List<FileInfoModel> buildFileInfo(String agencyCode, List<String> images,
AircraftDto aircraftDto, String fileCategory) throws Exception {
List<FileInfoModel> fileInfoModelList = new ArrayList<>();
for (String image : images) {
FileInfoModel fileInfoModel = new FileInfoModel();
fileInfoModel.setEntityId(String.valueOf(aircraftDto.getSequenceNbr()));
fileInfoModel.setEntityType(Aircraft.class.getSimpleName());
fileInfoModel.setFileCategory(fileCategory);
fileInfoModel.setFilename(image);
fileInfoModel.setAgencyCode(agencyCode);
fileInfoModelList.add(fileInfoModel);
} }
/**
* return fileInfoModelList;
* <pre> }
* 构建文件信息
* </pre> /**
* * 图片转成逗号分割String
* @param agencyCode * @param fileInfoModels
* @param images * @param fileCategory
* @param aircraftDto * @return
* @param fileCategory */
* @return private String processToStr(List<FileInfoModel> fileInfoModels, String fileCategory){
*/ return fileInfoModels.stream().filter(x -> fileCategory.equals(x.getFileCategory())).map(FileInfoModel::getFilename).collect(Collectors.joining(","));
private List<FileInfoModel> buildFileInfo(String agencyCode, List<String> images, }
AircraftDto aircraftDto, String fileCategory) throws Exception
{
List<FileInfoModel> fileInfoModelList = new ArrayList<>();
for (String image : images)
{
FileInfoModel fileInfoModel = new FileInfoModel();
fileInfoModel.setEntityId(String.valueOf(aircraftDto.getSequenceNbr()));
fileInfoModel.setEntityType(Aircraft.class.getSimpleName());
fileInfoModel.setFileCategory(fileCategory);
fileInfoModel.setFilename(image);
fileInfoModel.setAgencyCode(agencyCode);
fileInfoModelList.add(fileInfoModel);
}
return fileInfoModelList;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment