Commit 34b0b089 authored by 周健威's avatar 周健威

修改代码

parent 4b294ac6
...@@ -21,6 +21,7 @@ public class DataMenuTree extends TreeNode { ...@@ -21,6 +21,7 @@ public class DataMenuTree extends TreeNode {
String path; String path;
String code; String code;
String type; String type;
Integer dataNum;
List<GainData> elements = CollUtil.newArrayList(); List<GainData> elements = CollUtil.newArrayList();
String label; String label;
......
...@@ -49,6 +49,25 @@ public class DataMenuBiz extends BaseBiz<DataMenuMapper,DataMenu> { ...@@ -49,6 +49,25 @@ public class DataMenuBiz extends BaseBiz<DataMenuMapper,DataMenu> {
return TreeUtil.bulid(trees,root); return TreeUtil.bulid(trees,root);
} }
public List<DataMenuTree> getImageMenuStatsTree(List<GainDataBiz.DataMenuStats> menus, int root) {
List<DataMenuTree> trees = new ArrayList<DataMenuTree>();
DataMenuTree node = null;
for (GainDataBiz.DataMenuStats imageMenu : menus) {
node = new DataMenuTree();
BeanUtils.copyProperties(imageMenu, node);
node.setLabel(imageMenu.getTitle());
node.setDataNum(imageMenu.getDataNum());
node.setElements(gainDataBiz.selectAll(new GainData(){{
setMenuId(imageMenu.getId());
}}));
if (node.getChildren() == null) {
node.setChildren(new ArrayList<>());
}
trees.add(node);
}
return TreeUtil.bulid(trees,root);
}
public List<DataMenuTree> getImageMenuTreeNoElements(List<DataMenu> menus, int root) { public List<DataMenuTree> getImageMenuTreeNoElements(List<DataMenu> menus, int root) {
List<DataMenuTree> trees = new ArrayList<DataMenuTree>(); List<DataMenuTree> trees = new ArrayList<DataMenuTree>();
DataMenuTree node = null; DataMenuTree node = null;
......
...@@ -7,6 +7,7 @@ import com.upyuns.platform.rs.gtdata.GtDataRestClient; ...@@ -7,6 +7,7 @@ import com.upyuns.platform.rs.gtdata.GtDataRestClient;
import com.upyuns.platform.rs.website.dto.GainDataDTO; import com.upyuns.platform.rs.website.dto.GainDataDTO;
import com.upyuns.platform.rs.website.entity.DataMenu; import com.upyuns.platform.rs.website.entity.DataMenu;
import com.upyuns.platform.rs.website.entity.FileData; import com.upyuns.platform.rs.website.entity.FileData;
import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -59,6 +60,27 @@ public class GainDataBiz extends BaseBiz<GainDataMapper,GainData> { ...@@ -59,6 +60,27 @@ public class GainDataBiz extends BaseBiz<GainDataMapper,GainData> {
} }
} }
@Data
static public class DataMenuStats extends DataMenu {
Integer dataNum = 0;
}
public void handleDataNum(Map<Integer, DataMenuStats> dataMenuMap, DataMenu dataMenu){
if(dataMenu != null) {
DataMenuStats stats = dataMenuMap.get(dataMenu.getId());
stats.setDataNum(stats.getDataNum() + 1);
if(dataMenu.getParentId() != null && dataMenu.getParentId() != -1) {
if(null == dataMenuMap.get(dataMenu.getParentId())) {
return;
}else {
handleDataNum(dataMenuMap,dataMenuMap.get(dataMenu.getParentId()));
}
}else {
return;
}
}
}
public Example initExample(GainDataDTO dto) { public Example initExample(GainDataDTO dto) {
Example example = new Example(GainData.class); Example example = new Example(GainData.class);
Example.Criteria criteria = example.createCriteria(); Example.Criteria criteria = example.createCriteria();
......
...@@ -3,6 +3,7 @@ package com.upyuns.platform.rs.website.controller; ...@@ -3,6 +3,7 @@ package com.upyuns.platform.rs.website.controller;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.github.wxiaoqi.security.admin.constant.AdminCommonConstant;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken; import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
...@@ -193,6 +194,27 @@ public class AdminGaindataController extends BaseController<GainDataBiz, GainDat ...@@ -193,6 +194,27 @@ public class AdminGaindataController extends BaseController<GainDataBiz, GainDat
return ObjectRestResponse.succ(map); return ObjectRestResponse.succ(map);
} }
@ApiModelProperty("统计-目录")
@IgnoreUserToken
@RequestMapping(value = "/app/unauth/statistics/menu",method = RequestMethod.GET)
public ObjectRestResponse<List<GainData>> statisticsMenu(GainDataAdminDTO dto) {
Example example = baseBiz.initExample(dto);
List<GainData> list = baseBiz.selectByExample(example);
List<DataMenu> dataMenuList = dataMenuBiz.selectListAll();
List<GainDataBiz.DataMenuStats> dataMenuStatsList = Convert.toList(GainDataBiz.DataMenuStats.class, list);
List<GainDataController.GainDataVO> voList = Convert.toList(GainDataController.GainDataVO.class, list);
Map<Integer, GainDataBiz.DataMenuStats> dataMenuMap = dataMenuStatsList.parallelStream().collect(Collectors.toMap(DataMenu::getId, Function.identity()));
for(GainDataController.GainDataVO gainDataVO : voList) {
if(null != gainDataVO.getMenuId()) {
baseBiz.handleDataNum(dataMenuMap, dataMenuMap.get(gainDataVO.getMenuId()));
}
}
List<GainDataBiz.DataMenuStats> dataMenuStats = (List)dataMenuMap.values();
return ObjectRestResponse.succ(dataMenuBiz.getImageMenuStatsTree(dataMenuStats, AdminCommonConstant.ROOT));
}
@Data @Data
static class GainDataAdminDTO extends GainDataDTO { static class GainDataAdminDTO extends GainDataDTO {
public static final int STATISTICSTYPE_SUPPLIER = 1; public static final int STATISTICSTYPE_SUPPLIER = 1;
......
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