package com.qianwen.smartman.modules.visual.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.node.ForestNodeMerger;
|
import com.qianwen.smartman.common.cache.RegionCache;
|
import com.qianwen.smartman.modules.visual.convert.VisualCompTypeConvert;
|
import com.qianwen.smartman.modules.visual.entity.VisualCompType;
|
import com.qianwen.smartman.modules.visual.service.IVisualCompTypeService;
|
import com.qianwen.smartman.modules.visual.vo.VisualCompMenuDetailVO;
|
import com.qianwen.smartman.modules.visual.vo.VisualCompTypeVO;
|
|
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-visual/visual-comp-type"})
|
@RestController
|
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/visual/controller/VisualCompTypeController.class */
|
public class VisualCompTypeController extends BladeController {
|
private IVisualCompTypeService visualCompTypeService;
|
|
|
public VisualCompTypeController(final IVisualCompTypeService visualCompTypeService) {
|
this.visualCompTypeService = visualCompTypeService;
|
}
|
|
@ApiOperationSupport(order = 1)
|
@GetResource({"/get/{id}"})
|
@ApiOperation(value = "大屏组件分类详情", notes = "传入visualCompType")
|
@PreAuth
|
public R<VisualCompTypeVO> detail(@PathVariable String id) {
|
VisualCompType visualCompType = (VisualCompType) this.visualCompTypeService.getById(id);
|
return R.data(VisualCompTypeConvert.INSTANCE.convert(visualCompType));
|
}
|
|
@ApiOperationSupport(order = 2)
|
@ApiImplicitParams({@ApiImplicitParam(name = "status", value = "分类状态", paramType = "query", dataType = "string")})
|
@GetResource({"/list"})
|
@ApiOperation(value = "大屏组件分类列表,树结构", notes = "传入map")
|
@PreAuth
|
public R<List<VisualCompTypeVO>> list(@RequestParam @ApiIgnore Map<String, Object> params) {
|
List<VisualCompType> list = this.visualCompTypeService.list(Condition.getQueryWrapper(params, VisualCompType.class).lambda().orderByAsc((v0) -> {
|
return v0.getOrderNum();
|
}));
|
List<VisualCompTypeVO> vos = VisualCompTypeConvert.INSTANCE.convert(list);
|
List<VisualCompTypeVO> tree = ForestNodeMerger.merge(vos);
|
return R.data(tree);
|
}
|
|
@ApiOperationSupport(order = 2)
|
@GetResource({"/menus"})
|
@ApiOperation(value = "大屏组件 分类 + 组件信息 树", notes = "传入map")
|
public R<List<VisualCompMenuDetailVO>> treeMenu(@RequestParam @ApiIgnore Map<String, Object> params) {
|
List<VisualCompMenuDetailVO> tree = this.visualCompTypeService.treeMenu(params);
|
return R.data(tree);
|
}
|
|
@ApiOperationSupport(order = 2)
|
@GetResource({"/count"})
|
@ApiOperation(value = "大屏组件分类统计值", notes = "传入map")
|
public R<Long> count(@RequestParam @ApiIgnore Map<String, Object> params) {
|
Long count = Long.valueOf(this.visualCompTypeService.count(Condition.getQueryWrapper(params, VisualCompType.class)));
|
return R.data(count);
|
}
|
|
@ApiOperationSupport(order = 3)
|
@GetResource({"/page"})
|
@ApiOperation(value = "大屏组件分类分页", notes = "传入map")
|
public R<IPage<VisualCompTypeVO>> page(@RequestParam @ApiIgnore Map<String, Object> params, Query query) {
|
IPage<VisualCompType> pages = this.visualCompTypeService.page(Condition.getPage(query), Condition.getQueryWrapper(params, VisualCompType.class));
|
return R.data(VisualCompTypeConvert.INSTANCE.convert(pages));
|
}
|
|
@ApiOperationSupport(order = 4)
|
@PostResource({"/insert"})
|
@ApiOperation(value = "大屏组件分类新增", notes = "传入visualCompTypeVO")
|
@PreAuth
|
public R<VisualCompTypeVO> insert(@Valid @RequestBody VisualCompTypeVO visualCompTypeVO) {
|
VisualCompType visualCompType = VisualCompTypeConvert.INSTANCE.convert(visualCompTypeVO);
|
this.visualCompTypeService.save(visualCompType);
|
return R.data(VisualCompTypeConvert.INSTANCE.convert(visualCompType));
|
}
|
|
@ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL)
|
@PutResource({"/update"})
|
@ApiOperation(value = "大屏组件分类修改", notes = "传入visualCompTypeVO")
|
@PreAuth
|
public R<VisualCompTypeVO> update(@Valid @RequestBody VisualCompTypeVO visualCompTypeVO) {
|
VisualCompType visualCompType = VisualCompTypeConvert.INSTANCE.convert(visualCompTypeVO);
|
this.visualCompTypeService.updateById(visualCompType);
|
return R.data(VisualCompTypeConvert.INSTANCE.convert(visualCompType));
|
}
|
|
@ApiOperationSupport(order = 6)
|
@ApiOperation(value = "大屏组件分类删除", notes = "传入ids")
|
@PreAuth
|
@DeleteResource({"/remove"})
|
public R remove(@ApiParam(value = "主键", required = true) @RequestBody List<Long> ids) {
|
if (ids.isEmpty()) {
|
return R.status(false);
|
}
|
return R.status(this.visualCompTypeService.remove(ids));
|
}
|
}
|