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.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; 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.GetResource; import com.qianwen.core.scanner.modular.annotation.PostResource; 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.utils.Lambda; import com.qianwen.smartman.modules.system.dto.MetaObjectTypeDTO; import com.qianwen.smartman.modules.system.entity.MetaObjectType; import com.qianwen.smartman.modules.system.entity.MetaObjectTypeField; import com.qianwen.smartman.modules.system.entity.TableDetail; import com.qianwen.smartman.modules.system.service.IMetaObjectTypeFieldService; import com.qianwen.smartman.modules.system.service.IMetaObjectTypeService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @ApiResource({"blade-system/meta-object-type"}) @Api(value = "业务对象", tags = {"业务对象相关接口"}) @RestController /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/system/controller/MetaObjectTypeController.class */ public class MetaObjectTypeController extends BladeController { private IMetaObjectTypeService metaObjectTypeService; private IMetaObjectTypeFieldService metaObjectTypeFieldService; public MetaObjectTypeController(final IMetaObjectTypeService metaObjectTypeService, final IMetaObjectTypeFieldService metaObjectTypeFieldService) { this.metaObjectTypeService = metaObjectTypeService; this.metaObjectTypeFieldService = metaObjectTypeFieldService; } @ApiOperationSupport(order = 1) @GetResource({"/detail"}) @ApiOperation("详情") @PreAuth public R detail(@RequestParam String fId) { return R.data(this.metaObjectTypeService.getOne(Lambda.eq((v0) -> { return v0.getFId(); }, fId))); } @ApiOperationSupport(order = 2) @GetResource({"/list"}) @ApiOperation(value = "分页", notes = "业务对象列表") public R> list(@ApiParam("业务对象名称") String name, @ApiParam("子系统编码") String subsysId, @ApiParam("业务对象编码") String fid, Query query) { IPage pages = this.metaObjectTypeService.page(Condition.getPage(query), Wrappers.lambdaQuery() .like(Func.isNotEmpty(name), MetaObjectType::getName, name) .eq(Func.isNotEmpty(subsysId), MetaObjectType::getSubsysId, subsysId) .eq(Func.isNotEmpty(fid), MetaObjectType::getFId, fid)); /* IPage pages = this.metaObjectTypeService.page(Condition.getPage(query), Wrappers.lambdaQuery().like(Func.isNotEmpty(name), (v0) -> { return v0.getName(); }, name).eq(Func.isNotEmpty(subsysId), (v0) -> { return v0.getSubsysId(); }, subsysId).eq(Func.isNotEmpty(fid), (v0) -> { return v0.getFId(); }, fid));*/ return R.data(pages); } @ApiOperationSupport(order = 2) @GetResource({"/field/list"}) @ApiOperation(value = "分页", notes = "获取业务对象指定条件下得字段列表") public R> listField(@RequestParam Map fieldQuery) { List pages = this.metaObjectTypeFieldService.list(Condition.getQueryWrapper(fieldQuery, MetaObjectTypeField.class)); return R.data(pages); } @PreAuth @GetResource({"/tableDetail"}) public R> tableDetail() { List tableDetails = this.metaObjectTypeService.queryAllTableDetail(); return R.data(tableDetails); } @PreAuth @PostResource({"/submit"}) public R submit(@Valid @RequestBody MetaObjectTypeDTO metaObjectTypeDTO) { MetaObjectType metaObjectType = this.metaObjectTypeService.submitMetaObjectType(metaObjectTypeDTO); return R.data(metaObjectType); } @PostResource({"/remove"}) public R remove(@RequestParam @ApiParam(value = "主键集合", required = true) String ids) { return R.status(this.metaObjectTypeService.removeByIds(Func.toStrList(ids))); } @GetResource({"/findAll"}) public R> findAll(@RequestParam String columns) { return R.data(this.metaObjectTypeService.list(new QueryWrapper().select(new String[]{columns}))); } @PreAuth @GetResource({"/save-rule-field"}) @ApiOperation("开启分类,或者关闭分类") public R saveRuleField(@RequestParam String objectId, @RequestParam(required = false) String ruleField, @RequestParam(required = false) String ruleDictKey) { return R.status(this.metaObjectTypeService.saveRuleFiled(objectId, ruleField, ruleDictKey)); } }