feat: 增加参数绑定查询树

dev
huangfeng 1 year ago
parent 9ece185498
commit cb1ad751b6

@ -0,0 +1,30 @@
package com.xydl.cac.controller;
import com.xydl.cac.entity.Bdz;
import com.xydl.cac.model.Response;
import com.xydl.cac.service.ParamBindService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@RestController
@Api(tags = {"参数绑定相关接口"})
@RequestMapping("parambind")
@Slf4j
public class ParamBindController extends BasicController {
@Resource
ParamBindService bindService;
@GetMapping("getTree")
@ApiOperation("查询树")
public Response<List<Bdz>> getTree() throws Exception {
List<Bdz> result = bindService.getTree();
return Response.success(result);
}
}

@ -10,6 +10,7 @@ import lombok.NoArgsConstructor;
import javax.persistence.*; import javax.persistence.*;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List;
@Data @Data
@Builder @Builder
@ -91,4 +92,7 @@ public class Bdz {
@Column(name = "svgurl") @Column(name = "svgurl")
private String svgurl; private String svgurl;
@Transient
private List<Jg> children;
} }

@ -11,6 +11,7 @@ import javax.persistence.*;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List;
@Data @Data
@Builder @Builder
@ -49,4 +50,6 @@ public class Jg {
@Transient @Transient
private String bdzName; private String bdzName;
@Transient
private List<Zsb> children;
} }

@ -11,6 +11,7 @@ import javax.persistence.*;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List;
@Data @Data
@Builder @Builder
@ -216,4 +217,7 @@ public class Zsb {
@Transient @Transient
private String lxName; private String lxName;
@Transient
private List<Modev> children;
} }

@ -0,0 +1,10 @@
package com.xydl.cac.service;
import com.xydl.cac.entity.Bdz;
import java.util.List;
public interface ParamBindService {
List<Bdz> getTree() throws Exception;
}

@ -0,0 +1,54 @@
package com.xydl.cac.service.impl;
import com.xydl.cac.entity.Bdz;
import com.xydl.cac.entity.Jg;
import com.xydl.cac.entity.Modev;
import com.xydl.cac.entity.Zsb;
import com.xydl.cac.repository.BdzRepository;
import com.xydl.cac.repository.JgRepository;
import com.xydl.cac.repository.ModevRepository;
import com.xydl.cac.repository.ZsbRepository;
import com.xydl.cac.service.ParamBindService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.util.List;
@Service
@Slf4j
@Transactional(rollbackFor = Exception.class)
public class ParamBindServiceImpl implements ParamBindService {
@Resource
BdzRepository bdzRepository;
@Resource
JgRepository jgRepository;
@Resource
ZsbRepository zsbRepository;
@Resource
ModevRepository modevRepository;
@Override
public List<Bdz> getTree() throws Exception {
List<Bdz> bdzList = bdzRepository.findAll();
for (Bdz bdz : bdzList) {
List<Jg> jgList = jgRepository.findByBdzid(bdz.getId());
bdz.setChildren(jgList);
for (Jg jg : jgList) {
jg.setBdzName(bdz.getMc());
List<Zsb> zsbList = zsbRepository.findByJgid(jg.getId());
jg.setChildren(zsbList);
for (Zsb zsb : zsbList) {
zsb.setBdzName(bdz.getMc());
zsb.setJgName(jg.getMc());
List<Modev> modevList = modevRepository.findByZsbid(zsb.getId());
zsb.setChildren(modevList);
}
}
}
return bdzList;
}
}
Loading…
Cancel
Save