Commit aefec14b authored by yaobaizheng's avatar yaobaizheng

Merge remote-tracking branch 'origin/master'

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