package cn.gistack.sm.sjztmd.controller;
|
|
import cn.gistack.sm.exam.entity.ExamPlan;
|
import cn.gistack.sm.sjztmd.entity.AttAdBase;
|
import cn.gistack.sm.sjztmd.service.IAttAdBaseService;
|
import cn.gistack.sm.sjztmd.vo.AttAdBaseVO;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.AllArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springblade.core.boot.ctrl.BladeController;
|
import org.springblade.core.mp.support.Condition;
|
import org.springblade.core.mp.support.Query;
|
import org.springblade.core.tool.api.R;
|
import org.springblade.core.tool.node.ForestNodeMerger;
|
import org.springblade.core.tool.utils.ObjectUtil;
|
import org.springframework.web.bind.annotation.*;
|
import springfox.documentation.annotations.ApiIgnore;
|
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @ClassName AttAdBaseController
|
* @Description TODO
|
* @Author aix
|
* @Date 2023/4/21 20:09
|
* @Version 1.0
|
*/
|
@Slf4j
|
@Api(tags = "中台行政区划")
|
@RestController
|
@RequestMapping("/sjztmd/attad")
|
@AllArgsConstructor
|
public class AttAdBaseController extends BladeController {
|
|
private final IAttAdBaseService attAdBaseService;
|
|
@ApiOperation(value = "中台行政区划-添加", notes = "中台行政区划-添加")
|
@PostMapping(value = "/save")
|
public R add(AttAdBase attAdBase) {
|
return R.data(attAdBaseService.save(attAdBase));
|
}
|
|
@ApiOperation(value = "中台行政区划-修改", notes = "中台行政区划-修改")
|
@PostMapping(value = "/edit")
|
public R edit(AttAdBase attAdBase) {
|
return R.data(attAdBaseService.updateById(attAdBase));
|
}
|
|
@ApiOperation(value = "中台行政区划-添加修改", notes = "中台行政区划-添加修改")
|
@PostMapping(value = "/submit")
|
public R submit(AttAdBase attAdBase) {
|
return R.data(attAdBaseService.saveOrUpdate(attAdBase));
|
}
|
|
@ApiOperation(value = "中台行政区划-删除", notes = "中台行政区划-删除")
|
@GetMapping(value = "/remove")
|
public R edit(String guid) {
|
return R.data(attAdBaseService.removeById(guid));
|
}
|
|
@ApiOperation(value = "中台行政区划-查询详情", notes = "中台行政区划-查询详情")
|
@GetMapping(value = "/getDetail")
|
public R getDetail(AttAdBase attAdBase) {
|
AttAdBaseVO one = attAdBaseService.getDetail(attAdBase);
|
return R.data(one);
|
}
|
|
@ApiOperation(value = "中台行政区划-分页列表查询", notes = "中台行政区划-分页列表查询")
|
@GetMapping(value = "/list")
|
public R queryPageList(AttAdBase attAdBase, Query query) {
|
IPage<AttAdBase> pageList = attAdBaseService.page(Condition.getPage(query), Condition.getQueryWrapper(attAdBase));
|
return R.data(pageList);
|
}
|
|
@GetMapping("/select")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "code", value = "区划编号", paramType = "query", dataType = "string"),
|
@ApiImplicitParam(name = "name", value = "区划名称", paramType = "query", dataType = "string")
|
})
|
@ApiOperation(value = "加载树列表", notes = "传入code")
|
public R<List<AttAdBaseVO>> select(String parentCode, @ApiIgnore @RequestParam Map<String, Object> obj) {
|
String code = obj.get("code").toString();
|
if (code.substring(0,4).indexOf("00") > -1) {
|
obj.put("code",code.substring(0,2));
|
} else if (code.substring(0,6).indexOf("00") > -1) {
|
obj.put("code",code.substring(0,4));
|
}
|
List<AttAdBaseVO> list = attAdBaseService.lazyTree(parentCode, obj);
|
return R.data(listNodeLazyVO(list));
|
}
|
|
@GetMapping("/selectAll")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "code", value = "区划编号", paramType = "query", dataType = "string"),
|
@ApiImplicitParam(name = "name", value = "区划名称", paramType = "query", dataType = "string")
|
})
|
@ApiOperation(value = "加载树列表", notes = "传入code")
|
public R<List<AttAdBaseVO>> selectAll(String parentCode, @ApiIgnore @RequestParam Map<String, Object> obj) {
|
if (ObjectUtil.isNotEmpty(obj.get("code"))){
|
String code = obj.get("code").toString();
|
if (code.substring(0,4).indexOf("00") > -1) {
|
obj.put("code",code.substring(0,2));
|
} else if (code.substring(0,6).indexOf("00") > -1) {
|
obj.put("code",code.substring(0,4));
|
} else if (code.substring(0,8).indexOf("00") > -1) {
|
obj.put("code",code.substring(0,6));
|
}
|
}
|
List<AttAdBaseVO> list = attAdBaseService.lazyTreeAll(parentCode, obj);
|
return R.data(listNodeLazyVO(list));
|
}
|
|
/**
|
* 查询区域菜单树-带层级
|
* @param parentCode
|
* @param obj
|
* @return
|
*/
|
@GetMapping("/selectAttAdBaseTree")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "code", value = "区划编号", paramType = "query", dataType = "string"),
|
@ApiImplicitParam(name = "name", value = "区划名称", paramType = "query", dataType = "string")
|
})
|
@ApiOperation(value = "加载树列表", notes = "传入code")
|
public R selectAttAdBaseTree(String parentCode, @ApiIgnore @RequestParam Map<String, Object> obj) {
|
String code = obj.get("code").toString();
|
if (code.substring(0,4).indexOf("00") > -1) {
|
obj.put("code",code.substring(0,2));
|
} else if (code.substring(0,6).indexOf("00") > -1) {
|
obj.put("code",code.substring(0,4));
|
}
|
// 查询并返回
|
return R.data(attAdBaseService.selectAttAdBaseTree(parentCode, obj));
|
}
|
|
/**
|
* 懒加载列表 懒加载待优化
|
*/
|
@GetMapping("/lazy-tree")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "code", value = "区划编号", paramType = "query", dataType = "string"),
|
@ApiImplicitParam(name = "name", value = "区划名称", paramType = "query", dataType = "string")
|
})
|
@ApiOperation(value = "懒加载列表", notes = "传入code")
|
public R<List<AttAdBaseVO>> lazyTree(String parentCode, @ApiIgnore @RequestParam Map<String, Object> obj) {
|
List<AttAdBaseVO> list = attAdBaseService.lazyTree(parentCode, obj);
|
return R.data(listNodeLazyVO(list));
|
}
|
|
private List<AttAdBaseVO> listNodeLazyVO(List<AttAdBaseVO> list) {
|
return ForestNodeMerger.merge(list);
|
}
|
|
}
|