Commit 9d3965fa authored by lixinglin's avatar lixinglin

园区信息新增返回vr信息

parent 14b7740f
...@@ -30,6 +30,8 @@ import com.postcard.service.moudle.park.vo.ParkDetailVo; ...@@ -30,6 +30,8 @@ import com.postcard.service.moudle.park.vo.ParkDetailVo;
import com.postcard.service.moudle.park.vo.ParkIndustryVo; import com.postcard.service.moudle.park.vo.ParkIndustryVo;
import com.postcard.service.moudle.park.vo.ParkPageVo; import com.postcard.service.moudle.park.vo.ParkPageVo;
import com.postcard.service.moudle.system.service.SysCarouselInfoService; import com.postcard.service.moudle.system.service.SysCarouselInfoService;
import com.postcard.service.moudle.system.vo.ResourceVo;
import com.postcard.service.moudle.system.vo.VrVo;
import com.postcard.service.util.CommonUtil; import com.postcard.service.util.CommonUtil;
import com.postcard.service.util.DataUtil; import com.postcard.service.util.DataUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -53,241 +55,247 @@ import java.util.stream.Collectors; ...@@ -53,241 +55,247 @@ import java.util.stream.Collectors;
@Service @Service
@Slf4j @Slf4j
public class ParkInfoServiceImpl extends ServiceImpl<ParkInfoMapper, ParkInfo> public class ParkInfoServiceImpl extends ServiceImpl<ParkInfoMapper, ParkInfo>
implements ParkInfoService { implements ParkInfoService {
// 需要登陆 授权后展示的字段 // 需要登陆 授权后展示的字段
private static final String isVip = private static final String isVip =
"rentPrice,salePrice,propertyPrice,electricityPrice,industrialWater,substationLevel,lifeSewagePrice,gas,steam,nresidentsHeating"; "rentPrice,salePrice,propertyPrice,electricityPrice,industrialWater,substationLevel,lifeSewagePrice,gas,steam,nresidentsHeating";
@Autowired @Autowired
private ParkInvestmentDirectionInfoService parkInvestmentDirectionInfoService; private ParkInvestmentDirectionInfoService parkInvestmentDirectionInfoService;
@Autowired @Autowired
private SysCarouselInfoService sysCarouselInfoService; private SysCarouselInfoService sysCarouselInfoService;
@Autowired @Autowired
private CarrierInfoService carrierInfoService; private CarrierInfoService carrierInfoService;
@Autowired @Autowired
private DevelopmentInfoService developmentInfoService; private DevelopmentInfoService developmentInfoService;
@Value("${development.id}") @Value("${development.id}")
private Integer developmentId; private Integer developmentId;
/** /**
* @description: 分页查询园区列表 * @description: 分页查询园区列表
* @date: 2023/11/21 9:51 * @date: 2023/11/21 9:51
* @param: [param] * @param: [param]
* @return: com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.lyy.admin.VO.ParkInfoListVO> * @return: com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.lyy.admin.VO.ParkInfoListVO>
**/ **/
@Override @Override
public Page<ParkPageVo> pageList(ParamEntity<ParkPageDto> param) { public Page<ParkPageVo> pageList(ParamEntity<ParkPageDto> param) {
TimeInterval timer = DateUtil.timer(); TimeInterval timer = DateUtil.timer();
ParkPageDto parkInfoParam = param.getCondition(); ParkPageDto parkInfoParam = param.getCondition();
parkInfoParam.setDevelopmentId(developmentId); parkInfoParam.setDevelopmentId(developmentId);
String coverArea = parkInfoParam.getCoverArea(); String coverArea = parkInfoParam.getCoverArea();
if (ObjectUtils.isNotEmpty(coverArea)) { if (ObjectUtils.isNotEmpty(coverArea)) {
String[] split = coverArea.split("-"); String[] split = coverArea.split("-");
parkInfoParam.setCoverAreaUp(Double.valueOf(split[0])); parkInfoParam.setCoverAreaUp(Double.valueOf(split[0]));
if (split.length > 1) { if (split.length > 1) {
parkInfoParam.setCoverAreaUnder(Double.valueOf(split[1])); parkInfoParam.setCoverAreaUnder(Double.valueOf(split[1]));
} }
}
if (StringUtils.isNotBlank(parkInfoParam.getPrimaryIndustry())) {
String name = PrimaryIndustryEnum.getName(parkInfoParam.getPrimaryIndustry());
String[] split = name.split("、");
parkInfoParam.setPrimaryIndustryList(Arrays.asList(split));
}
Page page = CommonUtil.getPageFromEntity(param);
Page<ParkPageVo> pageInfo = this.baseMapper.pageList(page, parkInfoParam);
log.info("park时间消耗:{}", timer.intervalRestart());
return pageInfo;
} }
if(StringUtils.isNotBlank(parkInfoParam.getPrimaryIndustry())){
String name = PrimaryIndustryEnum.getName(parkInfoParam.getPrimaryIndustry());
String[] split = name.split("、");
parkInfoParam.setPrimaryIndustryList(Arrays.asList(split));
}
Page page = CommonUtil.getPageFromEntity(param);
Page<ParkPageVo> pageInfo = this.baseMapper.pageList(page, parkInfoParam);
log.info("park时间消耗:{}", timer.intervalRestart());
return pageInfo;
}
/** /**
* @description: 园区详情 * @description: 园区详情
* @date: 2023/11/21 17:40 * @date: 2023/11/21 17:40
* @param: [id] * @param: [id]
* @return: com.lyy.admin.moudle.park.vo.ParkInfoAllVO * @return: com.lyy.admin.moudle.park.vo.ParkInfoAllVO
**/ **/
@Override @Override
public ParkDetailVo detail(Integer id) { public ParkDetailVo detail(Integer id) {
// 获取园区基本信息 // 获取园区基本信息
ParkInfo parkInfo = this.getById(id); ParkInfo parkInfo = this.getById(id);
ParkDetailVo parkDetailVo = BeanUtil.copyProperties(parkInfo, ParkDetailVo.class); ParkDetailVo parkDetailVo = BeanUtil.copyProperties(parkInfo, ParkDetailVo.class);
// 轮播图 ResourceVo allResource = sysCarouselInfoService.getAllResource(CarouselTypeEnum.YUANQU.getType(), id);
parkDetailVo.setImgUrlList(sysCarouselInfoService.getImgUrls(CarouselTypeEnum.YUANQU.getType(), id)); List<String> imgUrlList = allResource.getImgUrlList();
// 招商方向 List<VrVo> vrVoList = allResource.getVrVoList();
parkDetailVo.setInvestmentDetails(listInvestDetail(id));
// 产业支持 // 轮播图
String industryResources = parkInfo.getIndustryResources(); // parkDetailVo.setImgUrlList(sysCarouselInfoService.getImgUrls(CarouselTypeEnum.YUANQU.getType(), id));
String specialIndicators = parkInfo.getSpecialIndicators(); parkDetailVo.setImgUrlList(imgUrlList);
List<String> resources = new ArrayList<>(); parkDetailVo.setVrVoList(vrVoList);
if (StringUtils.isNotBlank(industryResources)) { // 招商方向
resources.addAll(Arrays.asList(industryResources.split(","))); parkDetailVo.setInvestmentDetails(listInvestDetail(id));
} // 产业支持
if (StringUtils.isNotBlank(specialIndicators)) { String industryResources = parkInfo.getIndustryResources();
resources.addAll(Arrays.asList(specialIndicators.split(","))); String specialIndicators = parkInfo.getSpecialIndicators();
} List<String> resources = new ArrayList<>();
parkDetailVo.setResources(resources); if (StringUtils.isNotBlank(industryResources)) {
// 配套设置 resources.addAll(Arrays.asList(industryResources.split(",")));
parkDetailVo.setSetUp(getFacility(parkInfo)); }
if (StringUtils.isNotBlank(specialIndicators)) {
resources.addAll(Arrays.asList(specialIndicators.split(",")));
}
parkDetailVo.setResources(resources);
// 配套设置
parkDetailVo.setSetUp(getFacility(parkInfo));
// 载体信息 // 载体信息
LambdaQueryWrapper<CarrierInfo> carrierQuery = new LambdaQueryWrapper<>(); LambdaQueryWrapper<CarrierInfo> carrierQuery = new LambdaQueryWrapper<>();
carrierQuery.eq(CarrierInfo::getParkId, id); carrierQuery.eq(CarrierInfo::getParkId, id);
List<CarrierInfo> carrierInfos = this.carrierInfoService.list(carrierQuery); List<CarrierInfo> carrierInfos = this.carrierInfoService.list(carrierQuery);
List<ParkCarrierVo> parkCarrierVoList = new ArrayList<>(); List<ParkCarrierVo> parkCarrierVoList = new ArrayList<>();
if (!CollectionUtils.isEmpty(carrierInfos)) { if (!CollectionUtils.isEmpty(carrierInfos)) {
StringJoiner sj = new StringJoiner(""); StringJoiner sj = new StringJoiner("");
String addre = DataUtil.dealProvince(parkInfo.getProvinceName(), parkInfo.getCityName()); String addre = DataUtil.dealProvince(parkInfo.getProvinceName(), parkInfo.getCityName());
StringJoiner address = sj.add(addre).add(parkInfo.getRegionName()).add(parkInfo.getName()); StringJoiner address = sj.add(addre).add(parkInfo.getRegionName()).add(parkInfo.getName());
carrierInfos.forEach( carrierInfos.forEach(
carrier -> { carrier -> {
ParkCarrierVo parkCarrierVo = BeanUtil.toBean(carrier, ParkCarrierVo.class); ParkCarrierVo parkCarrierVo = BeanUtil.toBean(carrier, ParkCarrierVo.class);
parkCarrierVo.setName( parkCarrierVo.setName(
address address
+ (ObjectUtils.isNotEmpty(carrier.getArea()) + (ObjectUtils.isNotEmpty(carrier.getArea())
? NumberUtil.roundStr(carrier.getArea().doubleValue(), 0) + "㎡" ? NumberUtil.roundStr(carrier.getArea().doubleValue(), 0) + "㎡"
: "") : "")
+ carrier.getType()); + carrier.getType());
parkCarrierVoList.add(parkCarrierVo); parkCarrierVoList.add(parkCarrierVo);
}); });
}
parkDetailVo.setParkCarrier(parkCarrierVoList);
return parkDetailVo;
} }
parkDetailVo.setParkCarrier(parkCarrierVoList);
return parkDetailVo;
}
@Override @Override
public List<String> getIndustryList(){ public List<String> getIndustryList() {
DevelopmentInfo developmentInfo = developmentInfoService.getById(developmentId); DevelopmentInfo developmentInfo = developmentInfoService.getById(developmentId);
String primaryIndustry = developmentInfo.getPrimaryIndustry(); String primaryIndustry = developmentInfo.getPrimaryIndustry();
String[] split = primaryIndustry.split("、"); String[] split = primaryIndustry.split("、");
return Arrays.asList(split); return Arrays.asList(split);
} }
/** /**
* @description: 获取配套设施 * @description: 获取配套设施
* @date: 2023/11/22 10:33 * @date: 2023/11/22 10:33
* @param: [parkInfo] * @param: [parkInfo]
* @return: java.util.List<java.lang.String> * @return: java.util.List<java.lang.String>
*/ */
private List<String> getFacility(ParkInfo parkInfo) { private List<String> getFacility(ParkInfo parkInfo) {
List<String> setUp = new ArrayList<>(); List<String> setUp = new ArrayList<>();
String name = String name =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getRestaurant() != null && parkInfo.getRestaurant() == 1, parkInfo.getRestaurant() != null && parkInfo.getRestaurant() == 1,
FacilityEnum.RESTAURANT); FacilityEnum.RESTAURANT);
if (StringUtils.isNotBlank(name)) { if (StringUtils.isNotBlank(name)) {
setUp.add(name); setUp.add(name);
} }
String name1 = String name1 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getApartment() != null && parkInfo.getApartment() == 1, parkInfo.getApartment() != null && parkInfo.getApartment() == 1,
FacilityEnum.APARTMENT); FacilityEnum.APARTMENT);
if (StringUtils.isNotBlank(name1)) { if (StringUtils.isNotBlank(name1)) {
setUp.add(name1); setUp.add(name1);
} }
String name2 = String name2 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getConvenienceStore() != null && parkInfo.getConvenienceStore() == 1, parkInfo.getConvenienceStore() != null && parkInfo.getConvenienceStore() == 1,
FacilityEnum.CONVENIENCE); FacilityEnum.CONVENIENCE);
if (StringUtils.isNotBlank(name2)) { if (StringUtils.isNotBlank(name2)) {
setUp.add(name2); setUp.add(name2);
} }
String name3 = String name3 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getPublicSpace() != null && parkInfo.getPublicSpace() == 1, parkInfo.getPublicSpace() != null && parkInfo.getPublicSpace() == 1,
FacilityEnum.PUBLICSPACE); FacilityEnum.PUBLICSPACE);
if (StringUtils.isNotBlank(name3)) { if (StringUtils.isNotBlank(name3)) {
setUp.add(name3); setUp.add(name3);
} }
String name4 = String name4 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getPublicTransit() != null && parkInfo.getPublicTransit() == 1, parkInfo.getPublicTransit() != null && parkInfo.getPublicTransit() == 1,
FacilityEnum.TRANSIT); FacilityEnum.TRANSIT);
if (StringUtils.isNotBlank(name4)) { if (StringUtils.isNotBlank(name4)) {
setUp.add(name4); setUp.add(name4);
} }
String name5 = String name5 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getParkingSpace() != null && parkInfo.getParkingSpace() == 1, parkInfo.getParkingSpace() != null && parkInfo.getParkingSpace() == 1,
FacilityEnum.PARKINGSPACE); FacilityEnum.PARKINGSPACE);
if (StringUtils.isNotBlank(name5)) { if (StringUtils.isNotBlank(name5)) {
setUp.add(name5); setUp.add(name5);
} }
String name6 = String name6 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getChargingStation() != null && parkInfo.getChargingStation() == 1, parkInfo.getChargingStation() != null && parkInfo.getChargingStation() == 1,
FacilityEnum.CHARGING); FacilityEnum.CHARGING);
if (StringUtils.isNotBlank(name6)) { if (StringUtils.isNotBlank(name6)) {
setUp.add(name6); setUp.add(name6);
} }
String name7 = String name7 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getGuildMeetingRoom() != null && parkInfo.getGuildMeetingRoom() == 1, parkInfo.getGuildMeetingRoom() != null && parkInfo.getGuildMeetingRoom() == 1,
FacilityEnum.GUILDMEETING); FacilityEnum.GUILDMEETING);
if (StringUtils.isNotBlank(name7)) { if (StringUtils.isNotBlank(name7)) {
setUp.add(name7); setUp.add(name7);
} }
String name8 = String name8 =
FacilityEnum.getName( FacilityEnum.getName(
parkInfo.getLectureHall() != null && parkInfo.getLectureHall() == 1, parkInfo.getLectureHall() != null && parkInfo.getLectureHall() == 1,
FacilityEnum.LECTUREHALL); FacilityEnum.LECTUREHALL);
if (StringUtils.isNotBlank(name8)) { if (StringUtils.isNotBlank(name8)) {
setUp.add(name8); setUp.add(name8);
}
return setUp;
} }
return setUp;
}
/** /**
* @description: 查询园区的一级招商方向 * @description: 查询园区的一级招商方向
* @date: 2023/11/28 11:23 * @date: 2023/11/28 11:23
* @param: [parkId] * @param: [parkId]
* @return: java.util.List<java.lang.String> * @return: java.util.List<java.lang.String>
*/ */
@Override @Override
public List<String> investmentDirection(Integer parkId) { public List<String> investmentDirection(Integer parkId) {
List<String> investmentDirection = new ArrayList<>(); List<String> investmentDirection = new ArrayList<>();
LambdaQueryWrapper<ParkInvestmentDirectionInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ParkInvestmentDirectionInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper lambdaQueryWrapper
.eq(ParkInvestmentDirectionInfo::getParkId, parkId) .eq(ParkInvestmentDirectionInfo::getParkId, parkId)
.groupBy(ParkInvestmentDirectionInfo::getIndustrialTrack); .groupBy(ParkInvestmentDirectionInfo::getIndustrialTrack);
List<ParkInvestmentDirectionInfo> list = List<ParkInvestmentDirectionInfo> list =
this.parkInvestmentDirectionInfoService.list(lambdaQueryWrapper); this.parkInvestmentDirectionInfoService.list(lambdaQueryWrapper);
if (!CollectionUtils.isEmpty(list)) { if (!CollectionUtils.isEmpty(list)) {
investmentDirection = investmentDirection =
list.stream() list.stream()
.map(ParkInvestmentDirectionInfo::getIndustrialTrack) .map(ParkInvestmentDirectionInfo::getIndustrialTrack)
.distinct() .distinct()
.collect(Collectors.toList()); .collect(Collectors.toList());
}
return investmentDirection;
} }
return investmentDirection;
}
/** /**
* @description: 园区的招商方向信息 一级+细分赛道 * @description: 园区的招商方向信息 一级+细分赛道
* @date: 2023/11/28 11:45 * @date: 2023/11/28 11:45
* @param: [parkId] * @param: [parkId]
* @return: java.util.List<com.lyy.admin.moudle.carrier.vo.CarrierInvestmentVo> * @return: java.util.List<com.lyy.admin.moudle.carrier.vo.CarrierInvestmentVo>
*/ */
@Override @Override
public List<CarrierInvestmentVo> listInvestDetail(int parkId) { public List<CarrierInvestmentVo> listInvestDetail(int parkId) {
List<CarrierInvestmentVo> investmentVos = new ArrayList<>(); List<CarrierInvestmentVo> investmentVos = new ArrayList<>();
LambdaQueryWrapper<ParkInvestmentDirectionInfo> investmentQuery = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ParkInvestmentDirectionInfo> investmentQuery = new LambdaQueryWrapper<>();
investmentQuery.eq(ParkInvestmentDirectionInfo::getParkId, parkId); investmentQuery.eq(ParkInvestmentDirectionInfo::getParkId, parkId);
List<ParkInvestmentDirectionInfo> investmentList = List<ParkInvestmentDirectionInfo> investmentList =
this.parkInvestmentDirectionInfoService.list(investmentQuery); this.parkInvestmentDirectionInfoService.list(investmentQuery);
if (!CollectionUtils.isEmpty(investmentList)) { if (!CollectionUtils.isEmpty(investmentList)) {
investmentList.forEach( investmentList.forEach(
data -> { data -> {
CarrierInvestmentVo investmentVo = new CarrierInvestmentVo(); CarrierInvestmentVo investmentVo = new CarrierInvestmentVo();
investmentVo.setCodeName(data.getIndustrialTrack()); investmentVo.setCodeName(data.getIndustrialTrack());
investmentVo.setDetails(data.getSegmentedTrack()); investmentVo.setDetails(data.getSegmentedTrack());
investmentVos.add(investmentVo); investmentVos.add(investmentVo);
}); });
}
return investmentVos;
} }
return investmentVos;
}
} }
...@@ -17,6 +17,7 @@ import org.springframework.format.annotation.DateTimeFormat; ...@@ -17,6 +17,7 @@ import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -122,4 +123,7 @@ public class ParkDetailVo { ...@@ -122,4 +123,7 @@ public class ParkDetailVo {
@ApiModelProperty(value = "状态") @ApiModelProperty(value = "状态")
private Integer status; private Integer status;
@ApiModelProperty(value = "vr图")
private List<VrVo> vrVoList = new ArrayList<>();
} }
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