package com.qianwen.smartman.modules.system.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import java.util.List; import java.util.Map; import javax.validation.Valid; import com.qianwen.smartman.common.cache.RegionCache; 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.modules.system.convert.CustomTemplateFieldRelationConvert; import com.qianwen.smartman.modules.system.entity.CustomTemplate; import com.qianwen.smartman.modules.system.entity.CustomTemplateFieldRelation; import com.qianwen.smartman.modules.system.service.ICustomTemplateFieldRelationService; import com.qianwen.smartman.modules.system.service.ICustomTemplateService; import com.qianwen.smartman.modules.system.vo.CustomConditionFieldsSubmitVO; import com.qianwen.smartman.modules.system.vo.CustomConditionFieldsVO; import com.qianwen.smartman.modules.system.vo.CustomImportFieldsVO; import com.qianwen.smartman.modules.system.vo.CustomTemplateFieldRelationSubmitVO; import com.qianwen.smartman.modules.system.vo.CustomTemplateFieldRelationVO; 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 springfox.documentation.annotations.ApiIgnore; @Api(value = "模板与字段关系表管理", tags = {"模板与字段关系表管理"}) @ApiResource({"blade-system/custom-template-field-relation"}) @RestController /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/system/controller/CustomTemplateFieldRelationController.class */ public class CustomTemplateFieldRelationController extends BladeController { private ICustomTemplateFieldRelationService customTemplateFieldRelationService; private ICustomTemplateService customTemplateService; public CustomTemplateFieldRelationController(final ICustomTemplateFieldRelationService customTemplateFieldRelationService, final ICustomTemplateService customTemplateService) { this.customTemplateFieldRelationService = customTemplateFieldRelationService; this.customTemplateService = customTemplateService; } @ApiOperationSupport(order = 1) @GetResource({"/get/{id}"}) @ApiOperation(value = "模板与字段关系表详情", notes = "传入customTemplateFieldRelation") public R detail(@PathVariable String id) { CustomTemplateFieldRelation customTemplateFieldRelation = (CustomTemplateFieldRelation) this.customTemplateFieldRelationService.getById(id); return R.data(CustomTemplateFieldRelationConvert.INSTANCE.convert(customTemplateFieldRelation)); } @ApiOperationSupport(order = 2) @GetResource({"/count"}) @ApiOperation(value = "模板与字段关系表统计值", notes = "传入map") public R count(@RequestParam @ApiIgnore Map params) { long count = this.customTemplateFieldRelationService.count(Condition.getQueryWrapper(params, CustomTemplateFieldRelation.class)); return R.data(Long.valueOf(count)); } @ApiOperationSupport(order = 3) @GetResource({"/page"}) @ApiOperation(value = "模板与字段关系表分页", notes = "传入map") public R> page(@RequestParam @ApiIgnore Map params, Query query) { IPage pages = this.customTemplateFieldRelationService.page(Condition.getPage(query), Condition.getQueryWrapper(params, CustomTemplateFieldRelation.class)); return R.data(CustomTemplateFieldRelationConvert.INSTANCE.convert(pages)); } @ApiOperationSupport(order = 4) @PostResource({"/insert"}) @ApiOperation(value = "模板与字段关系表新增", notes = "传入customTemplateFieldRelationVO") @PreAuth public R insert(@Valid @RequestBody CustomTemplateFieldRelationSubmitVO customTemplateFieldRelationSubmitVO) { return R.data(this.customTemplateFieldRelationService.saveRelation(customTemplateFieldRelationSubmitVO)); } @ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL) @PutResource({"/update"}) @ApiOperation(value = "模板与字段关系表修改", notes = "传入customTemplateFieldRelationVO") public R update(@Valid @RequestBody CustomTemplateFieldRelationVO customTemplateFieldRelationVO) { CustomTemplateFieldRelation customTemplateFieldRelation = this.customTemplateFieldRelationService.updateRelation(customTemplateFieldRelationVO); return R.data(CustomTemplateFieldRelationConvert.INSTANCE.convert(customTemplateFieldRelation)); } @ApiOperationSupport(order = 6) @ApiOperation(value = "模板与字段关系表删除", notes = "传入ids") @PreAuth @DeleteResource({"/remove"}) public R remove(@ApiParam(value = "主键", required = true) @RequestBody List ids) { return ids.isEmpty() ? R.status(false) : this.customTemplateFieldRelationService.removeRelation(ids); } @ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL) @PostResource({"/sort"}) @ApiOperation(value = "拖拽排序", notes = "传入customTemplateFieldRelationSortVO") @PreAuth public R sort(@Valid @RequestBody List ids) { return R.status(this.customTemplateFieldRelationService.sort(ids).booleanValue()); } @ApiOperationSupport(order = 6) @GetResource({"/getConditionFields"}) @ApiOperation(value = "获取可用的查询条件字段", notes = "传入map") public R getConditionFields(@RequestParam @ApiParam("模板id") Long templateId) { CustomConditionFieldsVO list = this.customTemplateFieldRelationService.getConditionFields(templateId); return R.data(list); } @ApiOperationSupport(order = 6) @PostResource({"/submitConditionFields"}) @ApiOperation(value = "提交查询条件", notes = "传入map") @PreAuth public R submitConditionFields(@RequestBody CustomConditionFieldsSubmitVO customConditionFieldsSubmitVO) { return R.status(this.customTemplateFieldRelationService.submitConditionFields(customConditionFieldsSubmitVO).booleanValue()); } @ApiOperationSupport(order = 7) @GetResource({"/getImportFields"}) @ApiOperation(value = "获取可用导入字段", notes = "传入map") public R getImportFields(@RequestParam(required = false) @ApiParam("模板id") Long templateId, @RequestParam(required = false) @ApiParam("业务类型") Integer businessType) { if (Func.isNotEmpty(businessType)) { return R.data(this.customTemplateFieldRelationService.getImportFields(businessType)); } CustomTemplate template = (CustomTemplate) this.customTemplateService.getById(templateId); CustomImportFieldsVO list = this.customTemplateFieldRelationService.getImportFields(template.getBusinessType()); return R.data(list); } @ApiOperationSupport(order = 8) @PostResource({"/submitImportFields"}) @ApiOperation(value = "提交导入字段", notes = "传入map") @PreAuth public R submitImportFields(@RequestBody CustomConditionFieldsSubmitVO customConditionFieldsSubmitVO) { Integer businessType = customConditionFieldsSubmitVO.getBusinessType(); if (Func.isNotEmpty(businessType)) { return R.status(this.customTemplateService.createTemplate(customConditionFieldsSubmitVO.getIds(), businessType).booleanValue()); } CustomTemplate template = (CustomTemplate) this.customTemplateService.getById(customConditionFieldsSubmitVO.getTemplateId()); return R.status(this.customTemplateService.createTemplate(customConditionFieldsSubmitVO.getIds(), template.getBusinessType()).booleanValue()); } }