Commit fd0ca88f authored by 周健威's avatar 周健威

修改图谱二级分类

parent d549e1a8
...@@ -139,4 +139,11 @@ public class ImageImgStorage implements Serializable { ...@@ -139,4 +139,11 @@ public class ImageImgStorage implements Serializable {
@Column(name = "uptype") @Column(name = "uptype")
@ApiModelProperty(value = "上传类型 1--文件上传;2--gtdata路径;3--url;4--服务器路径") @ApiModelProperty(value = "上传类型 1--文件上传;2--gtdata路径;3--url;4--服务器路径")
private Integer uptype; private Integer uptype;
/**
* 菜单id
*/
@Column(name = "menu_id")
@ApiModelProperty(value = "菜单id")
private Integer menuId;
} }
package com.upyuns.platform.rs.website.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
*
*
* @author zjw
* @email jiaoruizhen@126.com
* @date 2024-09-09 16:22:43
*/
@Data
@Table(name = "imageimg_menu")
public class ImageimgMenu implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@ApiModelProperty("")
private Integer id;
/**
* 标题
*/
@Column(name = "title")
@ApiModelProperty(value = "标题")
private String title;
/**
* 父级节点
*/
@Column(name = "parent_id")
@ApiModelProperty(value = "父级节点")
private Integer parentId;
/**
* 排序
*/
@Column(name = "order_num")
@ApiModelProperty(value = "排序")
private Integer orderNum;
/**
* 描述
*/
@Column(name = "description")
@ApiModelProperty(value = "描述")
private String description;
/**
* 菜单上下级关系
*/
@Column(name = "path")
@ApiModelProperty(value = "菜单上下级关系")
private String path;
/**
*
*/
@Column(name = "crt_time")
@ApiModelProperty(value = "", hidden = true )
private Date crtTime;
/**
*
*/
@Column(name = "crt_user")
@ApiModelProperty(value = "")
private String crtUser;
/**
*
*/
@Column(name = "crt_name")
@ApiModelProperty(value = "")
private String crtName;
/**
*
*/
@Column(name = "crt_host")
@ApiModelProperty(value = "")
private String crtHost;
/**
*
*/
@Column(name = "upd_time")
@ApiModelProperty(value = "", hidden = true )
private Date updTime;
/**
*
*/
@Column(name = "upd_user")
@ApiModelProperty(value = "")
private String updUser;
/**
*
*/
@Column(name = "upd_name")
@ApiModelProperty(value = "")
private String updName;
/**
*
*/
@Column(name = "upd_host")
@ApiModelProperty(value = "")
private String updHost;
}
package com.upyuns.platform.rs.website.vo;
import cn.hutool.core.collection.CollUtil;
import com.github.wxiaoqi.security.common.vo.TreeNode;
import com.upyuns.platform.rs.website.entity.GainData;
import com.upyuns.platform.rs.website.entity.ImageImgStorage;
import lombok.Data;
import java.util.List;
/**
* Created by Ace on 2017/6/12.
*/
@Data
public class ImageimgMenuTree extends TreeNode {
String icon;
String title;
boolean spread = false;
String component;
String path;
String code;
String type;
Integer dataNum;
List<ImageImgStorage> elements = CollUtil.newArrayList();
String label;
public ImageimgMenuTree() {
}
public ImageimgMenuTree(int id, String name, int parentId) {
this.id = id;
this.parentId = parentId;
this.title = name;
this.label = name;
}
public ImageimgMenuTree(int id, String name, ImageimgMenuTree parent) {
this.id = id;
this.parentId = parent.getId();
this.title = name;
this.label = name;
}
}
package com.upyuns.platform.rs.website.biz;
import cn.hutool.core.collection.CollUtil;
import com.github.wxiaoqi.security.common.util.TreeUtil;
import com.github.wxiaoqi.security.common.vo.TreeNode;
import com.upyuns.platform.rs.website.entity.ImageImgStorage;
import com.upyuns.platform.rs.website.entity.ImageimgMenu;
import com.upyuns.platform.rs.website.entity.GainData;
import com.upyuns.platform.rs.website.vo.ImageimgMenuTree;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.upyuns.platform.rs.website.entity.ImageimgMenu;
import com.upyuns.platform.rs.website.mapper.ImageimgMenuMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import tk.mybatis.mapper.entity.Example;
import java.util.ArrayList;
import java.util.List;
/**
*
*
* @author zjw
* @email jiaoruizhen@126.com
* @date 2024-09-09 16:22:43
*/
@Service
public class ImageimgMenuBiz extends BaseBiz<ImageimgMenuMapper,ImageimgMenu> {
@Autowired
ImageImgStorageBiz imageImgStorageBiz;
public List<ImageimgMenuTree> getImageMenuTree(List<ImageimgMenu> menus, int root) {
List<ImageimgMenuTree> trees = new ArrayList<ImageimgMenuTree>();
ImageimgMenuTree node = null;
for (ImageimgMenu imageMenu : menus) {
node = new ImageimgMenuTree();
BeanUtils.copyProperties(imageMenu, node);
node.setLabel(imageMenu.getTitle());
node.setElements(imageImgStorageBiz.selectAll(new ImageImgStorage(){{
setMenuId(imageMenu.getId());
}}));
if (node.getChildren() == null) {
node.setChildren(new ArrayList<>());
}
trees.add(node);
}
return TreeUtil.bulid(trees,root);
}
public List<ImageimgMenuTree> getImageMenuStatsTree(List<GainDataBiz.DataMenuStats> menus, int root) {
List<ImageimgMenuTree> trees = new ArrayList<ImageimgMenuTree>();
ImageimgMenuTree node = null;
for (GainDataBiz.DataMenuStats imageMenu : menus) {
node = new ImageimgMenuTree();
BeanUtils.copyProperties(imageMenu, node);
node.setLabel(imageMenu.getTitle());
node.setDataNum(imageMenu.getDataNum());
if (node.getChildren() == null) {
node.setChildren(new ArrayList<>());
}
trees.add(node);
}
return TreeUtil.bulid(trees,root);
}
public List<ImageimgMenuTree> getImageMenuTreeNoElements(List<ImageimgMenu> menus, int root) {
List<ImageimgMenuTree> trees = new ArrayList<ImageimgMenuTree>();
ImageimgMenuTree node = null;
for (ImageimgMenu imageMenu : menus) {
node = new ImageimgMenuTree();
BeanUtils.copyProperties(imageMenu, node);
node.setLabel(imageMenu.getTitle());
if (node.getChildren() == null) {
node.setChildren(new ArrayList<>());
}
trees.add(node);
}
return TreeUtil.bulid(trees,root);
}
public List<Integer> getIdsByTopId(int root) {
Example exampleDataMenu = new Example(ImageimgMenu.class);
exampleDataMenu.createCriteria().andNotEqualTo("id", root);
exampleDataMenu.setOrderByClause("order_num asc, id asc");
List<ImageimgMenu> menus = selectByExample(exampleDataMenu);
List<Integer> list = CollUtil.newArrayList(root);
List<ImageimgMenuTree> trees = getImageMenuTreeNoElements(menus, root);
dealIds(trees, list);
return list;
}
public void dealIds(List<? extends TreeNode> menuTrees, List<Integer> ids) {
if(CollUtil.isNotEmpty(menuTrees)) {
for(TreeNode ImageimgMenuTree : menuTrees) {
ids.add(ImageimgMenuTree.getId());
dealIds(ImageimgMenuTree.getChildren(), ids);
}
}
}
}
\ No newline at end of file
package com.upyuns.platform.rs.website.controller;
import com.github.wxiaoqi.security.admin.constant.AdminCommonConstant;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.upyuns.platform.rs.website.biz.ImageimgMenuBiz;
import com.upyuns.platform.rs.website.entity.DataMenu;
import com.upyuns.platform.rs.website.entity.ImageimgMenu;
import com.upyuns.platform.rs.website.vo.DataMenuTree;
import com.upyuns.platform.rs.website.vo.ImageimgMenuTree;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import tk.mybatis.mapper.entity.Example;
import java.util.List;
@RestController
@RequestMapping("/imageimgMenu")
public class AdminImageimgMenuController extends BaseController<ImageimgMenuBiz,ImageimgMenu> {
@RequestMapping(value = "/tree", method = RequestMethod.GET)
@ResponseBody
public ObjectRestResponse<List<ImageimgMenuTree>> getTree(String title) {
Example example = new Example(DataMenu.class);
if (StringUtils.isNotBlank(title)) {
example.createCriteria().andLike("title", "%" + title + "%");
}
return ObjectRestResponse.succ(baseBiz.getImageMenuTree(baseBiz.selectByExample(example), AdminCommonConstant.ROOT));
}
}
\ No newline at end of file
package com.upyuns.platform.rs.website.mapper;
import com.upyuns.platform.rs.website.entity.ImageimgMenu;
import tk.mybatis.mapper.common.Mapper;
/**
*
*
* @author zjw
* @email jiaoruizhen@126.com
* @date 2024-09-09 16:22:43
*/
public interface ImageimgMenuMapper extends Mapper<ImageimgMenu> {
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.upyuns.platform.rs.website.mapper.ImageimgMenuMapper">
</mapper>
\ No newline at end of file
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