From 450f6c49d3591c2e152e9ee81acab9acc830d7fe Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 02 三月 2021 15:48:34 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/manager/controller/TagController.java | 73 ++++++++++++++++++++++++++++++------ 1 files changed, 61 insertions(+), 12 deletions(-) diff --git a/src/main/java/zy/cloud/wms/manager/controller/TagController.java b/src/main/java/zy/cloud/wms/manager/controller/TagController.java index 5a4c37f..0808360 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/TagController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/TagController.java @@ -1,6 +1,5 @@ package zy.cloud.wms.manager.controller; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; @@ -12,20 +11,23 @@ import com.core.common.R; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import zy.cloud.wms.common.utils.ListUtils; +import zy.cloud.wms.common.utils.TreeUtils; import zy.cloud.wms.common.web.BaseController; import zy.cloud.wms.manager.entity.Tag; import zy.cloud.wms.manager.service.TagService; +import zy.cloud.wms.manager.utils.NodeUtils; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.io.IOException; +import java.util.*; @RestController public class TagController extends BaseController { @Autowired private TagService tagService; + @Autowired + private TreeUtils treeUtils; @RequestMapping(value = "/tag/{id}/auth") @ManagerAuth @@ -63,6 +65,27 @@ @RequestMapping(value = "/tag/add/auth") @ManagerAuth public R add(Tag tag) { + tag.setLevel(1); + if (tag.getParentId() != null && tag.getParentId() > 0) { + Tag parent = tagService.selectById(tag.getParentId()); + if (parent != null) { + tag.setParentName(parent.getName()); + tag.setLevel(parent.getLevel() + 1); + } + } else { + tag.setParentId(0L); + } + // path + NodeUtils nodeUtils = new NodeUtils(); + nodeUtils.executePath(tag); + tag.setPath(nodeUtils.path.toString()); + tag.setPathName(nodeUtils.pathName.toString()); + + tag.setCreateBy(getUserId()); + tag.setCreateTime(new Date()); + tag.setUpdateBy(getUserId()); + tag.setUpdateTime(new Date()); + tag.setStatus(1); tagService.insert(tag); return R.ok(); } @@ -73,19 +96,32 @@ if (Cools.isEmpty(tag) || null==tag.getId()){ return R.error(); } + if (tag.getParentId() != null && tag.getParentId() > 0) { + if (tag.getParentId().equals(tag.getId())) { + return R.error("鏁版嵁閿欒"); + } + Tag parent = tagService.selectById(tag.getParentId()); + if (parent != null) { + tag.setParentName(parent.getName()); + tag.setLevel(parent.getLevel() + 1); + } + } + // path + NodeUtils nodeUtils = new NodeUtils(); + nodeUtils.executePath(tag); + tag.setPath(nodeUtils.path.toString()); + tag.setPathName(nodeUtils.pathName.toString()); + tag.setUpdateBy(getUserId()); + tag.setUpdateTime(new Date()); tagService.updateById(tag); return R.ok(); } @RequestMapping(value = "/tag/delete/auth") @ManagerAuth - public R delete(@RequestParam String param){ - List<Tag> list = JSONArray.parseArray(param, Tag.class); - if (Cools.isEmpty(list)){ - return R.error(); - } - for (Tag entity : list){ - tagService.delete(new EntityWrapper<>(entity)); + public R delete(@RequestParam(value="ids[]") Long[] ids){ + for (Long id : ids){ + tagService.deleteById(id); } return R.ok(); } @@ -127,4 +163,17 @@ return R.ok(); } + @PostMapping(value = "/tag/tree/auth") + @ManagerAuth + public R tree(@RequestParam(required = false, defaultValue = "") String condition) throws IOException, ClassNotFoundException { + ArrayList<Map> tree = treeUtils.getTree(String.valueOf(getOriginTag().getId())); + // 娣辨嫹璐� + List<Map> result = ListUtils.deepCopy(tree); + if (!Cools.isEmpty(condition)) { + treeUtils.remove(condition, result); + treeUtils.remove(condition, result); + } + return R.ok(result); + } + } -- Gitblit v1.9.1