package com.qianwen.smartman.modules.cps.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 javax.validation.Valid; import com.qianwen.smartman.common.cache.RegionCache; import com.qianwen.core.boot.ctrl.BladeController; import com.qianwen.core.mp.support.Query; import com.qianwen.core.oss.model.BladeFile; 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.cps.service.IFixtureService; import com.qianwen.smartman.modules.cps.vo.CommonGroupTypeVO; import com.qianwen.smartman.modules.cps.vo.FixtureGroupFixtureVO; import com.qianwen.smartman.modules.cps.vo.FixtureVO; import com.qianwen.smartman.modules.cps.vo.GroupTreeVO; import com.qianwen.smartman.modules.cps.vo.ToolAppendixVO; import com.qianwen.smartman.modules.resource.enums.TemplateEnum; import com.qianwen.smartman.modules.resource.service.ISystemResourceService; 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 org.springframework.web.multipart.MultipartFile; @Api(value = "夹具管理", tags = {"夹具管理"}) @ApiResource({"blade-cps/fixture"}) @RestController /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/controller/FixtureController.class */ public class FixtureController extends BladeController { private final IFixtureService fixtureService; private final ISystemResourceService systemResourceService; public FixtureController(final IFixtureService fixtureService, final ISystemResourceService systemResourceService) { this.fixtureService = fixtureService; this.systemResourceService = systemResourceService; } @ApiOperationSupport(order = 1) @GetResource({"/get/{id}"}) @ApiOperation(value = "工装夹具详情", notes = "传入fixture") @PreAuth public R detail(@PathVariable String id) { return R.data(this.fixtureService.detail(Long.valueOf(id))); } @ApiOperationSupport(order = 2) @GetResource({"/list"}) @ApiOperation(value = "工装夹具列表", notes = "传入map") @PreAuth public R> list(@RequestParam(required = false) String keyword, @RequestParam(required = false) String groupId) { return R.data(this.fixtureService.page(keyword, Func.isNotEmpty(groupId) ? Long.valueOf(groupId) : null, new Query().setSize(-1)).getRecords()); } @ApiOperationSupport(order = 3) @GetResource({"/page"}) @ApiOperation(value = "工装夹具分页", notes = "传入map") @PreAuth public R> page(@RequestParam(required = false) String keyword, @RequestParam(required = false) String groupId, Query query) { return R.data(this.fixtureService.page(keyword, Func.isNotEmpty(groupId) ? Long.valueOf(groupId) : null, query)); } @ApiOperationSupport(order = 4) @PostResource({"/{groupId}/insert"}) @ApiOperation(value = "工装夹具新增", notes = "传入fixtureVO") @PreAuth public R insert(@RequestBody FixtureVO fixtureVO, @PathVariable String groupId) { return R.data(this.fixtureService.insert(fixtureVO, Long.valueOf(groupId))); } @ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL) @PostResource({"/file"}) @ApiOperation(value = "工装夹具添加附件", notes = "传入fixtureVO") @PreAuth public R insertFile(@RequestBody ToolAppendixVO toolAppendixVO) { return R.data(this.fixtureService.insertFile(toolAppendixVO)); } @ApiOperationSupport(order = 6) @PutResource({"/update"}) @ApiOperation(value = "工装夹具修改", notes = "传入fixtureVO") @PreAuth public R update(@Valid @RequestBody FixtureVO fixtureVO) { return R.data(this.fixtureService.updateFixture(fixtureVO)); } @ApiOperationSupport(order = 7) @ApiOperation(value = "工装夹具删除", notes = "传入ids") @PreAuth @DeleteResource({"/remove"}) public R remove(@ApiParam(value = "主键", required = true) @RequestBody List ids) { return R.data(this.fixtureService.removeFixture(Func.toLongList(ids))); } @ApiOperationSupport(order = 8) @GetResource({"/fixtureGroupAndFixtureList"}) @ApiOperation("夹具组夹具集合") @PreAuth public R> fixtureGroupAndFixtureList() { return R.data(this.fixtureService.fixtureGroupAndFixtureList()); } @ApiOperationSupport(order = 9) @PostResource({"/import-fixture"}) @ApiOperation(value = "导入夹具", notes = "传入excel") @PreAuth public R importFixture(MultipartFile file) { return R.data(this.fixtureService.importFixture(file)); } @ApiOperationSupport(order = 10) @GetResource({"/export/template"}) @ApiOperation("导出夹具模板") @PreAuth public R exportMaintainItemTemplate() { return R.data(this.systemResourceService.getBusinessTemplateInfo(TemplateEnum.FIXTURE)); } @ApiOperationSupport(order = 11) @PostResource({"all-group-fixture"}) @ApiOperation("所有夹具组和夹具树形") @PreAuth public R> allGroupFixture(@RequestBody CommonGroupTypeVO vo) { return R.data(this.fixtureService.allGroupFixture(vo)); } }