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.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; 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.tool.api.R; import com.qianwen.smartman.modules.cps.convert.BomVersionConvert; import com.qianwen.smartman.modules.cps.entity.BomVersion; import com.qianwen.smartman.modules.cps.service.IBomVersionService; import com.qianwen.smartman.modules.cps.vo.BomVersionDetailVO; import com.qianwen.smartman.modules.cps.vo.BomVersionUpdateVO; import com.qianwen.smartman.modules.cps.vo.BomVersionVO; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PutMapping; 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 = "bom版本管理", tags = {"bom版本管理"}) @ApiResource({"blade-cps/bom-version"}) @RestController /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/controller/BomVersionController.class */ public class BomVersionController extends BladeController { private IBomVersionService bomVersionService; public BomVersionController(final IBomVersionService bomVersionService) { this.bomVersionService = bomVersionService; } @ApiOperationSupport(order = 1) @GetResource({"/get/{id}"}) @ApiOperation(value = "bom版本详情", notes = "传入bomVersion") public R detail(@PathVariable String id) { BomVersion bomVersion = (BomVersion) this.bomVersionService.getById(id); return R.data(BomVersionConvert.INSTANCE.convert(bomVersion)); } @ApiOperationSupport(order = 2) @ApiImplicitParams({@ApiImplicitParam(name = "productId", value = "产品Id", paramType = "query", dataType = "string")}) @GetResource({"/list"}) @ApiOperation(value = "bom版本列表", notes = "传入map") public R> list(@RequestParam @ApiIgnore Map params) { List list = this.bomVersionService.list(Condition.getQueryWrapper(params, BomVersion.class)); return R.data(BomVersionConvert.INSTANCE.convert(list)); } @ApiOperationSupport(order = 2) @ApiImplicitParams({@ApiImplicitParam(name = "productId", value = "产品Id", paramType = "query", dataType = "string")}) @GetResource({"/count"}) @ApiOperation(value = "bom版本统计值", notes = "传入map") public R count(@RequestParam @ApiIgnore Map params) { long count = this.bomVersionService.count(Condition.getQueryWrapper(params, BomVersion.class)); return R.data(Long.valueOf(count)); } @ApiOperationSupport(order = 3) @ApiImplicitParams({@ApiImplicitParam(name = "productId", value = "产品Id", paramType = "query", dataType = "string")}) @GetResource({"/page"}) @ApiOperation(value = "bom版本分页", notes = "传入map") public R> page(@RequestParam @ApiIgnore Map params, Query query) { IPage pages = this.bomVersionService.page(Condition.getPage(query), Condition.getQueryWrapper(params, BomVersion.class)); return R.data(BomVersionConvert.INSTANCE.convert(pages)); } @ApiOperationSupport(order = 4) @PostResource({"/insert"}) @ApiOperation(value = "bom版本新增", notes = "传入bomVersionVO") public R insert(@Valid @RequestBody BomVersionVO bomVersionVO) { return R.data(BomVersionConvert.INSTANCE.convert(this.bomVersionService.insert(bomVersionVO))); } @ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL) @PutMapping({"/update"}) @ApiOperation(value = "bom版本修改", notes = "传入bomVersionUpdateVO") public R update(@Valid @RequestBody BomVersionUpdateVO bomVersionUpdateVO) { return R.data(this.bomVersionService.update(bomVersionUpdateVO)); } @ApiOperationSupport(order = 6) @DeleteResource({"/remove/{id}"}) @ApiOperation(value = "bom版本删除", notes = "传入id") public R remove(@PathVariable String id) { return R.status(this.bomVersionService.remove(Long.valueOf(id)).booleanValue()); } @ApiOperationSupport(order = 7) @GetResource({"/get-version/{id}"}) @ApiOperation(value = "产品Bom版本详情", notes = "传入id") public R getVersionById(@PathVariable String id) { return R.data(this.bomVersionService.getVersionById(Long.valueOf(id))); } @ApiOperationSupport(order = 7) @PutResource({"/fix-version/{id}"}) @ApiOperation(value = "bom版本定版", notes = "传入id") public R fixVersion(@PathVariable String id) { return R.data(this.bomVersionService.fixVersion(Long.valueOf(id))); } @ApiOperationSupport(order = 8) @PutResource({"/cancel-fix-version/{id}"}) @ApiOperation(value = "bom版本取消定版", notes = "传入id") public R cancelFixVersion(@PathVariable String id) { return R.data(this.bomVersionService.cancelFixVersion(Long.valueOf(id))); } }