package org.jeecg.modules.system.controller;
|
|
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import io.swagger.annotations.Api;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresRoles;
|
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
import org.jeecg.common.util.oConvertUtils;
|
import org.jeecg.modules.system.entity.SysGatewayRoute;
|
import org.jeecg.modules.system.service.ISysGatewayRouteService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
/**
|
* @Description: gateway路由管理
|
* @Author: jeecg-boot
|
* @Date: 2020-05-26
|
* @Version: V1.0
|
*/
|
@Api(tags = "gateway路由管理")
|
@RestController
|
@RequestMapping("/sys/gatewayRoute")
|
@Slf4j
|
public class SysGatewayRouteController extends JeecgController<SysGatewayRoute, ISysGatewayRouteService> {
|
|
@Autowired
|
private ISysGatewayRouteService sysGatewayRouteService;
|
|
@PostMapping(value = "/updateAll")
|
public Result<?> updateAll(@RequestBody JSONObject json) {
|
sysGatewayRouteService.updateAll(json);
|
return Result.ok("操作成功!");
|
}
|
|
@GetMapping(value = "/list")
|
public Result<?> queryPageList(SysGatewayRoute sysGatewayRoute) {
|
LambdaQueryWrapper<SysGatewayRoute> query = new LambdaQueryWrapper<>();
|
List<SysGatewayRoute> ls = sysGatewayRouteService.list(query);
|
JSONArray array = new JSONArray();
|
for(SysGatewayRoute rt: ls){
|
JSONObject obj = (JSONObject) JSONObject.toJSON(rt);
|
if(oConvertUtils.isNotEmpty(rt.getPredicates())){
|
obj.put("predicates", JSONArray.parseArray(rt.getPredicates()));
|
}
|
if(oConvertUtils.isNotEmpty(rt.getFilters())){
|
obj.put("filters", JSONArray.parseArray(rt.getFilters()));
|
}
|
array.add(obj);
|
}
|
return Result.ok(array);
|
}
|
|
@GetMapping(value = "/clearRedis")
|
public Result<?> clearRedis() {
|
sysGatewayRouteService.clearRedis();
|
return Result.ok("清除成功!");
|
}
|
|
/**
|
* 通过id删除
|
*
|
* @param id
|
* @return
|
*/
|
@RequiresPermissions("system:getway:delete")
|
@RequestMapping(value = "/delete", method = RequestMethod.DELETE)
|
public Result<?> delete(@RequestParam(name = "id", required = true) String id) {
|
sysGatewayRouteService.deleteById(id);
|
return Result.ok("删除路由成功");
|
}
|
|
}
|