diff --git a/src/main/java/mjkf/xinke/main/controller/MaterialController.java b/src/main/java/mjkf/xinke/main/controller/MaterialController.java index 63ab4e3..7acff52 100644 --- a/src/main/java/mjkf/xinke/main/controller/MaterialController.java +++ b/src/main/java/mjkf/xinke/main/controller/MaterialController.java @@ -40,7 +40,8 @@ public class MaterialController { @ApiOperation("获取材料树") @GetMapping("/tree") public HttpResponse getTree () { - QueryWrapper query = new QueryWrapper<>(); + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.eq(Material::getIsTree, 1); List> maps = materialService.listMaps(query); maps = maps.stream().map(map -> convertKeysToLowercase(map)).collect(Collectors.toList()); // todo 列转树改为泛型对象入参 @@ -65,15 +66,18 @@ public class MaterialController { @ApiParam(value = "父节点id") @RequestParam("parent_id") String parentId ) { LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - if (parentId != null){ + query.eq(Material::getIsTree, 0); + if (parentId != null) { query.eq(Material::getParentId, parentId); } - query.and(q -> q - .like(Material::getCategory1, keyWord).or() - .like(Material::getCategory2, keyWord).or() - .like(Material::getCategory3, keyWord).or() - .like(Material::getCategory4, keyWord) - ); + if (keyWord != null) { + query.and(q -> q + .like(Material::getCategory1, keyWord).or() + .like(Material::getCategory2, keyWord).or() + .like(Material::getCategory3, keyWord).or() + .like(Material::getCategory4, keyWord) + ); + } var result = materialService.list(query); return FuHttpResponse.Builder().dataResponse(result).build(); diff --git a/src/main/java/mjkf/xinke/main/model/db/Material.java b/src/main/java/mjkf/xinke/main/model/db/Material.java index 40039e7..bbe2deb 100644 --- a/src/main/java/mjkf/xinke/main/model/db/Material.java +++ b/src/main/java/mjkf/xinke/main/model/db/Material.java @@ -119,6 +119,10 @@ public class Material extends Model { @TableField("`TYPE`") private Integer type; + @ApiModelProperty("是否树") + @TableField("`IS_TREE`") + private Integer isTree; + @Override public Serializable pkVal() { return this.id; @@ -144,6 +148,7 @@ public class Material extends Model { this.unit = params.getUnit(); this.spec = params.getSpec(); this.tax = params.getTax(); + this.isTree = params.getIsTree(); this.updateTime = LocalDateTime.now(); this.createTime = LocalDateTime.now(); this.createUserName = user.getName(); diff --git a/src/main/java/mjkf/xinke/main/model/vo/MaterialCreateRequest.java b/src/main/java/mjkf/xinke/main/model/vo/MaterialCreateRequest.java index cbdad3e..09d69b6 100644 --- a/src/main/java/mjkf/xinke/main/model/vo/MaterialCreateRequest.java +++ b/src/main/java/mjkf/xinke/main/model/vo/MaterialCreateRequest.java @@ -40,6 +40,9 @@ public class MaterialCreateRequest { @ApiModelProperty("税率") private Integer tax; + @ApiModelProperty("是否树") + private Integer isTree; + public void check() throws Exception{ String flag = this.parentId.replace(".00", ""); if (!this.id.contains(flag)) {