package com.qianwen.smartman.modules.system.controller;
|
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.validation.Valid;
|
|
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
import com.qianwen.core.boot.ctrl.BladeController;
|
import com.qianwen.core.mp.support.Condition;
|
import com.qianwen.core.mp.support.Query;
|
import com.qianwen.core.scanner.modular.annotation.DeleteResource;
|
import com.qianwen.core.scanner.modular.annotation.GetResource;
|
import com.qianwen.core.scanner.modular.annotation.PostResource;
|
import com.qianwen.core.scanner.modular.annotation.PutResource;
|
import com.qianwen.core.scanner.modular.stereotype.ApiResource;
|
import com.qianwen.core.secure.annotation.PreAuth;
|
import com.qianwen.core.tool.api.R;
|
import com.qianwen.core.tool.utils.Func;
|
import com.qianwen.smartman.common.cache.RegionCache;
|
import com.qianwen.smartman.common.utils.Lambda;
|
import com.qianwen.smartman.modules.system.convert.InterfaceConfigConvert;
|
import com.qianwen.smartman.modules.system.entity.InterfaceConfig;
|
import com.qianwen.smartman.modules.system.service.IInterfaceConfigService;
|
import com.qianwen.smartman.modules.system.vo.InterfaceConfigVO;
|
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiParam;
|
import springfox.documentation.annotations.ApiIgnore;
|
|
@Api(value = "动态接口管理", tags = {"动态接口管理"})
|
@ApiResource({"blade-system/interface-config"})
|
@RestController
|
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/system/controller/InterfaceConfigController.class */
|
public class InterfaceConfigController extends BladeController {
|
private IInterfaceConfigService interfaceConfigService;
|
|
|
public InterfaceConfigController(final IInterfaceConfigService interfaceConfigService) {
|
this.interfaceConfigService = interfaceConfigService;
|
}
|
|
@ApiOperationSupport(order = 1)
|
@GetResource({"/get/{id}"})
|
@ApiOperation(value = "接口配置表详情", notes = "传入interfaceConfig")
|
public R<InterfaceConfigVO> detail(@PathVariable String id) {
|
InterfaceConfig interfaceConfig = (InterfaceConfig) this.interfaceConfigService.getById(id);
|
return R.data(InterfaceConfigConvert.INSTANCE.convert(interfaceConfig));
|
}
|
|
@ApiOperationSupport(order = 2)
|
@ApiImplicitParams({@ApiImplicitParam(name = "owningChart", value = "根据", paramType = "query", dataType = "string")})
|
@GetResource({"/list"})
|
@ApiOperation(value = "接口配置表列表", notes = "传入map")
|
public R<List<InterfaceConfigVO>> list(@RequestParam @ApiIgnore Map<String, Object> params) {
|
String types = (String) params.get("type");
|
Integer owningChart = (Integer) params.get("owningChart");
|
Integer urlType = (Integer) params.get("urlType");
|
String urlName = (String) params.get("urlName");
|
String url = (String) params.get("url");
|
List<InterfaceConfig> list = this.interfaceConfigService.list(
|
Lambda.eq((owningChart != null), InterfaceConfig::getOwningChart, owningChart)
|
.eq((urlType != null), InterfaceConfig::getUrlType, urlType)
|
.like(Func.isNotBlank(urlName), InterfaceConfig::getUrlName, urlName)
|
.like(Func.isNotBlank(url), InterfaceConfig::getUrl, url)
|
.in(Func.isNotBlank(types), InterfaceConfig::getOwningChart, (types == null) ? null : types.split(",")));
|
/*
|
List<InterfaceConfig> list = this.interfaceConfigService.list(Lambda.eq(owningChart != null, (v0) -> {
|
return v0.getOwningChart();
|
}, owningChart).eq(urlType != null, (v0) -> {
|
return v0.getUrlType();
|
}, urlType).like(Func.isNotBlank(urlName), (v0) -> {
|
return v0.getUrlName();
|
}, urlName).like(Func.isNotBlank(url), (v0) -> {
|
return v0.getUrl();
|
}, url).in(Func.isNotBlank(types), (v0) -> {
|
return v0.getOwningChart();
|
}, types == null ? null : types.split(",")));*/
|
return R.data(InterfaceConfigConvert.INSTANCE.convert(list));
|
}
|
|
@ApiOperationSupport(order = 2)
|
@GetResource({"/count"})
|
@ApiOperation(value = "接口配置表统计值", notes = "传入map")
|
public R<Long> count(@RequestParam @ApiIgnore Map<String, Object> params) {
|
Long count = Long.valueOf(this.interfaceConfigService.count(Condition.getQueryWrapper(params, InterfaceConfig.class)));
|
return R.data(count);
|
}
|
|
@ApiOperationSupport(order = 3)
|
@GetResource({"/page"})
|
@ApiOperation(value = "接口配置表分页", notes = "传入map")
|
@PreAuth
|
public R<IPage<InterfaceConfigVO>> page(@RequestParam @ApiIgnore Map<String, Object> params, Query query) {
|
IPage<InterfaceConfig> pages = this.interfaceConfigService.page(Condition.getPage(query), Condition.getQueryWrapper(params, InterfaceConfig.class));
|
return R.data(InterfaceConfigConvert.INSTANCE.convert(pages));
|
}
|
|
@ApiOperationSupport(order = 4)
|
@PostResource({"/insert"})
|
@ApiOperation(value = "接口配置表新增", notes = "传入interfaceConfigVO")
|
@PreAuth
|
public R<InterfaceConfigVO> insert(@Valid @RequestBody InterfaceConfigVO interfaceConfigVO) {
|
InterfaceConfig interfaceConfig = InterfaceConfigConvert.INSTANCE.convert(interfaceConfigVO);
|
this.interfaceConfigService.save(interfaceConfig);
|
return R.data(InterfaceConfigConvert.INSTANCE.convert(interfaceConfig));
|
}
|
|
@ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL)
|
@PutResource({"/update"})
|
@ApiOperation(value = "接口配置表修改", notes = "传入interfaceConfigVO")
|
@PreAuth
|
public R<InterfaceConfigVO> update(@Valid @RequestBody InterfaceConfigVO interfaceConfigVO) {
|
InterfaceConfig interfaceConfig = InterfaceConfigConvert.INSTANCE.convert(interfaceConfigVO);
|
this.interfaceConfigService.updateById(interfaceConfig);
|
return R.data(InterfaceConfigConvert.INSTANCE.convert(interfaceConfig));
|
}
|
|
@ApiOperationSupport(order = 6)
|
@ApiOperation(value = "接口配置表删除", notes = "传入ids")
|
@PreAuth
|
@DeleteResource({"/remove"})
|
public R remove(@ApiParam(value = "主键", required = true) @RequestBody List<String> ids) {
|
if (ids.isEmpty()) {
|
return R.status(false);
|
}
|
return R.status(this.interfaceConfigService.removeByIds(Func.toLongList(ids)));
|
}
|
}
|