Commit d8bf959c authored by 赵啸非's avatar 赵啸非

添加区域点击

parent 2d6a2df5
......@@ -79,6 +79,17 @@ public interface ISiteFeign extends IFeign {
Rest<List<SitePdu>> getFlatSitesBySiteId(@RequestBody SitePdu sitePdu);
/**
* 查询站点及子站点
*
* @param sitePdu
* @return
*/
@GetMapping(value = "/site/getFlatSitesByAreaIds")
Rest<List<SitePdu>> getFlatSitesByAreaIds(@RequestBody SitePdu sitePdu);
}
......@@ -118,6 +129,11 @@ class SiteFeignFallbackFactory implements FallbackFactory<ISiteFeign> {
public Rest<List<SitePdu>> getFlatSitesBySiteId(SitePdu sitePdu) {
return Rest.fail("暂时无法获取站点子站点,请稍后再试!");
}
@Override
public Rest<List<SitePdu>> getFlatSitesByAreaIds(SitePdu sitePdu) {
return Rest.fail("暂时无法获取站点子站点,请稍后再试!");
}
};
}
}
......
......@@ -149,9 +149,13 @@ export default {
this.query = { siteId: node.id };
}
this.getData();
}else if(node.type==='area'){
this.query = { areaCode: node.areaCode };
this.getData();
}
},
}
},
data() {
return {
......
package com.mortals.xhx.module.sitestat.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.sitestat.model.SitestatEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -30,4 +28,7 @@ public class SitestatVo extends BaseEntityLong {
private String leadingOfficial;
private String leadingOfficialTelephone;
private String areaCode;
}
\ No newline at end of file
......@@ -7,31 +7,28 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.service.IAuthTokenService;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.xhx.common.code.DeviceStatusEnum;
import com.mortals.xhx.common.code.PlatformTypeEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.ErrorCode;
import com.mortals.xhx.common.pdu.site.SitePdu;
import com.mortals.xhx.common.pdu.user.UserPdu;
import com.mortals.xhx.common.utils.MemoryPagination;
import com.mortals.xhx.feign.site.ISiteFeign;
import com.mortals.xhx.feign.user.IUserFeign;
import com.mortals.xhx.module.device.model.DeviceEntity;
import com.mortals.xhx.module.device.model.DeviceQuery;
import com.mortals.xhx.module.device.service.DeviceService;
import com.mortals.xhx.module.site.model.SiteQuery;
import com.mortals.xhx.module.site.model.SiteTreeSelect;
import com.mortals.xhx.module.site.service.SiteService;
import com.mortals.xhx.module.sitestat.dao.SitestatDao;
import com.mortals.xhx.module.sitestat.model.SitestatEntity;
import com.mortals.xhx.module.sitestat.model.SitestatQuery;
import com.mortals.xhx.module.sitestat.service.SitestatService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.xhx.module.sitestat.dao.SitestatDao;
import com.mortals.xhx.module.sitestat.model.SitestatEntity;
import com.mortals.xhx.module.sitestat.service.SitestatService;
import org.springframework.util.ObjectUtils;
import java.util.*;
......@@ -73,6 +70,9 @@ public class SitestatServiceImpl extends AbstractCRUDServiceImpl<SitestatDao, Si
public Result<SitestatEntity> find(SitestatEntity entity, PageInfo pageInfo, Context context) throws AppException {
Result<SitestatEntity> res = new Result<>();
//根据站点查询所以站点子集列表
Result<SitestatEntity> sitestatsAreaResult = getSitestatEntityResultByArea(entity, pageInfo,context, res);
if (sitestatsAreaResult != null) return sitestatsAreaResult;
Result<SitestatEntity> sitestatsResult = getSitestatsResult(entity, pageInfo, res);
if (sitestatsResult != null) return sitestatsResult;
......@@ -98,7 +98,7 @@ public class SitestatServiceImpl extends AbstractCRUDServiceImpl<SitestatDao, Si
SitePdu sitePdu = new SitePdu();
sitePdu.setId(entity.getSiteId());
Rest<List<SitePdu>> result = siteFeign.getFlatSitesBySiteId(sitePdu);
log.info("siteList:{}",JSON.toJSONString(result));
// log.info("siteList:{}",JSON.toJSONString(result));
if (result.getCode() == YesNoEnum.YES.getValue()) {
//根据返回的id 筛选列表
Map<Long, SitestatEntity> collectMap = this.find(new SitestatEntity(), context).stream().collect(Collectors.toMap(x->x.getSiteId(),y->y,(o,n)->n));
......@@ -106,7 +106,7 @@ public class SitestatServiceImpl extends AbstractCRUDServiceImpl<SitestatDao, Si
if (!ObjectUtils.isEmpty(entity.getSiteName())) {
list = MemoryPagination.search(entity.getSiteName(), list);
}
log.info("siteStatList:{}",JSON.toJSONString(list));
// log.info("siteStatList:{}",JSON.toJSONString(list));
pageInfo.setTotalResult(list.size());
List<SitestatEntity> siteStatList = MemoryPagination.pagination(list, pageInfo.getCurrPage(), pageInfo.getPrePageResult());
res.setList(siteStatList);
......@@ -180,6 +180,45 @@ public class SitestatServiceImpl extends AbstractCRUDServiceImpl<SitestatDao, Si
return res;
}
private Result<SitestatEntity> getSitestatEntityResultByArea(SitestatEntity entity, PageInfo pageInfo, Context context, Result<SitestatEntity> res) {
if (ObjectUtils.isEmpty(entity.getAreaCode())) return null;
if (platFormType.equalsIgnoreCase(PlatformTypeEnum.STANDALONE.getValue())) {
//根据返回的id 筛选列表 todo
Map<Long, SitestatEntity> collectMap = this.find(new SitestatEntity(), context).stream().collect(Collectors.toMap(x->x.getSiteId(),y->y,(o,n)->n));
List<SitestatEntity> list = this.siteService.find(new SiteQuery().id(entity.getSiteId())).stream().filter(f -> collectMap.containsKey(f.getId())).map(m -> collectMap.get(m.getId())).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(entity.getSiteName())) {
list = MemoryPagination.search(entity.getSiteName(), list);
}
pageInfo.setTotalResult(list.size());
List<SitestatEntity> siteStatList = MemoryPagination.pagination(list, pageInfo.getCurrPage(), pageInfo.getPrePageResult());
res.setList(siteStatList);
res.setPageInfo(pageInfo);
} else {
SitePdu sitePdu = new SitePdu();
sitePdu.setAreaCodeList(Arrays.asList(entity.getAreaCode()));
Rest<List<SitePdu>> result = siteFeign.getFlatSitesBySiteId(sitePdu);
// log.info("siteList:{}",JSON.toJSONString(result));
if (result.getCode() == YesNoEnum.YES.getValue()) {
//根据返回的id 筛选列表
Map<Long, SitestatEntity> collectMap = this.find(new SitestatEntity(), context).stream().collect(Collectors.toMap(x->x.getSiteId(),y->y,(o,n)->n));
List<SitestatEntity> list = result.getData().stream().filter(f -> collectMap.containsKey(f.getId())).map(m -> collectMap.get(m.getId())).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(entity.getSiteName())) {
list = MemoryPagination.search(entity.getSiteName(), list);
}
// log.info("siteStatList:{}",JSON.toJSONString(list));
pageInfo.setTotalResult(list.size());
List<SitestatEntity> siteStatList = MemoryPagination.pagination(list, pageInfo.getCurrPage(), pageInfo.getPrePageResult());
res.setList(siteStatList);
res.setPageInfo(pageInfo);
} else {
log.info("error resp:{}", JSON.toJSONString(result));
}
}
return res;
}
@Override
public String getSiteTree(Context context) {
if (platFormType.equalsIgnoreCase(PlatformTypeEnum.CLOUD.getValue())) {
......
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