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 java.util.List; 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.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.IMaterialStorageService; import com.qianwen.smartman.modules.cps.vo.MaterialStorageAddVO; import com.qianwen.smartman.modules.cps.vo.MaterialStorageVO; import com.qianwen.smartman.modules.cps.vo.MaterialVO; import com.qianwen.smartman.modules.cps.vo.WareMaterialStorageVO; import com.qianwen.smartman.modules.resource.enums.TemplateEnum; import com.qianwen.smartman.modules.resource.service.ISystemResourceService; 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/material-storage"}) @RestController /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/controller/MaterialStorageController.class */ public class MaterialStorageController extends BladeController { private final IMaterialStorageService materialStorageService; private final ISystemResourceService systemResourceService; public MaterialStorageController(final IMaterialStorageService materialStorageService, final ISystemResourceService systemResourceService) { this.materialStorageService = materialStorageService; this.systemResourceService = systemResourceService; } @ApiOperationSupport(order = 1) @GetResource({"/list"}) @ApiOperation("库位下的物料列表") @PreAuth public R> listMaterial(@RequestParam("wareId") String wareId, @RequestParam(value = "keyword", required = false) String keyword) { return R.data(this.materialStorageService.listMaterial(Long.valueOf(Func.toLong(wareId)), keyword)); } @ApiOperationSupport(order = 2) @PostResource @ApiOperation("物料存放新增") @PreAuth public R> addMaterialStorage(@RequestBody MaterialStorageAddVO vo) { return R.data(this.materialStorageService.addMaterialStorage(vo)); } @ApiOperationSupport(order = 3) @ApiOperation(value = "物料存放删除", notes = "传入ids") @PreAuth @DeleteResource public R remove(@RequestBody List ids) { return R.data(Boolean.valueOf(this.materialStorageService.removeByIds(ids))); } @ApiOperationSupport(order = 4) @ApiOperation("未绑定的物料列表") @GetResource({"/material/not-bind"}) @PreAuth public R> materialNotBind() { return R.data(this.materialStorageService.materialNotBind()); } @ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL) @PostResource({"/excel/template"}) @ApiOperation("导出物料存放模板") @PreAuth public R exportTemplate() { return R.data(this.systemResourceService.getBusinessTemplateInfo(TemplateEnum.MATERIAL_STORAGE)); } @ApiOperationSupport(order = 6) @PostResource({"/excel/import"}) @ApiOperation("导入物料存放") @PreAuth public R importMaterialStorage(@RequestParam MultipartFile file) { return R.data(this.materialStorageService.importMaterialStorage(file)); } @ApiOperationSupport(order = 7) @PostResource({"/page"}) @ApiOperation("库位下的物料列表-分页") @PreAuth public R> pageMaterial(Query query, @RequestParam("wareId") String wareId, @RequestParam(value = "keyword", required = false) String keyword) { return R.data(this.materialStorageService.pageMaterial(query, Long.valueOf(Func.toLong(wareId)), keyword)); } }