package com.qianwen.smartman.modules.cps.controller; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; 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.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.ICraftRoutingService; import com.qianwen.smartman.modules.cps.vo.CraftRoutingAddVO; import com.qianwen.smartman.modules.cps.vo.CraftRoutingDetailVO; import com.qianwen.smartman.modules.cps.vo.CraftRoutingUpdateVO; import com.qianwen.smartman.modules.cps.vo.CraftRoutingVO; import com.qianwen.smartman.modules.cps.vo.ProductVO; import com.qianwen.smartman.modules.cps.vo.ProductionCraftVersionCopyVO; import com.qianwen.smartman.modules.cps.vo.ProductionCraftVersionVO; import com.qianwen.smartman.modules.cps.vo.SearchVO; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @Api(value = "工艺路线controller", tags = {"工艺路线controller"}) @ApiResource({"blade-cps/craft-routing"}) @RestController /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/controller/CraftRoutingController.class */ public class CraftRoutingController extends BladeController { private final ICraftRoutingService craftRoutingService; public CraftRoutingController(final ICraftRoutingService craftRoutingService) { this.craftRoutingService = craftRoutingService; } @ApiOperationSupport(order = 1) @PostResource({"/save"}) @ApiOperation("新增工艺路线") @PreAuth public R saveRouting(@Valid @RequestBody CraftRoutingAddVO vo) { return R.data(this.craftRoutingService.saveRouting(vo)); } @ApiOperationSupport(order = 2) @PostResource({"/list"}) @ApiOperation("查看所有工艺路线") @PreAuth public R> listCraftRouting(@RequestBody SearchVO vo) { return R.data(this.craftRoutingService.listCraftRouting(vo)); } @ApiOperationSupport(order = 3) @ApiOperation("工艺路线详情") @GetResource({"/detail"}) @PreAuth public R detailCraft(@RequestParam("id") String id) { return R.data(this.craftRoutingService.detailCraft(Long.valueOf(Func.toLong(id)))); } @ApiOperationSupport(order = 4) @ApiOperation("删除工艺路线") @PreAuth @DeleteResource({"/remove"}) public R deleteCraft(@RequestParam("id") String id) { return R.data(this.craftRoutingService.deleteCraft(Long.valueOf(Func.toLong(id)))); } @ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL) @PutResource({"/update"}) @ApiOperation("编辑工艺路线") @PreAuth public R updateCraft(@RequestBody CraftRoutingUpdateVO vo) { return R.data(this.craftRoutingService.updateCraft(vo)); } @ApiOperationSupport(order = 6) @PostResource({"/copy-craft-version"}) @ApiOperation("复制工艺版本") @PreAuth public R copyCraftVersion(@Valid @RequestBody ProductionCraftVersionCopyVO vo) { return R.data(this.craftRoutingService.copyCraftVersion(vo)); } @ApiOperationSupport(order = 7) @GetResource({"/get-fixed-list"}) @ApiOperation("通过产品获取产品工艺下定版的版本") @PreAuth public R> listFixedVersionByProduction(@RequestParam("productionId") String productionId) { return R.data(this.craftRoutingService.listFixedVersionByProduction(Long.valueOf(Func.toLong(productionId)))); } @ApiOperationSupport(order = 8) @GetResource({"/get-production-craft"}) @ApiOperation("通过产品获取工艺路线") @PreAuth public R getCraftByProduction(@RequestParam("productionId") String productionId) { return R.data(this.craftRoutingService.getCraftByProduction(Long.valueOf(Func.toLong(productionId)))); } @ApiOperationSupport(order = 9) @GetResource({"/list-not-band-craft"}) @ApiOperation("获取没有绑定过产品的工艺路线") @PreAuth public R> listNotBandCraft() { return R.data(this.craftRoutingService.listNotBandCraft()); } @ApiOperationSupport(order = 10) @GetResource({"/bind-production"}) @ApiOperation("产品和工艺路线绑定") @PreAuth public R craftBindProduction(@RequestParam("productionId") String productionId, @RequestParam("craftId") String craftId) { return R.data(this.craftRoutingService.craftBindProduction(Long.valueOf(Func.toLong(productionId)), Long.valueOf(Func.toLong(craftId)))); } @ApiOperationSupport(order = 11) @GetResource({"/unbind-production"}) @ApiOperation("产品和工艺路线解绑") @PreAuth public R craftUnbindProduction(@RequestParam("craftId") String craftId) { return R.data(this.craftRoutingService.craftUnbindProduction(Long.valueOf(Func.toLong(craftId)))); } @ApiOperationSupport(order = 12) @GetResource({"/not-band-craft"}) @ApiOperation("获取没有绑定过工艺路线的产品") @PreAuth public R> notBandProduct(@RequestParam(value = "craftId", required = false) String craftId) { return R.data(this.craftRoutingService.notBandProduct(Long.valueOf(Func.toLong(craftId)))); } }