package doumeemes.api.ext; import doumeemes.api.BaseController; import doumeemes.core.annotation.excel.ExcelExporter; import doumeemes.core.annotation.pr.PreventRepeat; import doumeemes.core.annotation.trace.Trace; import doumeemes.core.model.ApiResponse; import doumeemes.core.model.PageWrap; import doumeemes.core.model.PageData; import doumeemes.dao.business.model.Bom; import doumeemes.dao.ext.bean.BomBean; import doumeemes.dao.ext.beanDto.QueryBomDTO; import doumeemes.dao.ext.dto.QueryBomExtDTO; import doumeemes.dao.ext.vo.BomExtListVO; import doumeemes.service.business.BomService; import doumeemes.service.ext.BomExtService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.List; /** * 物料清单信息接口 * @author 江蹄蹄 * @date 2022/04/20 11:01 */ @RestController @RequestMapping("/ext/bomExt") @Api(tags = "物料清单信息接口") @Trace(withRequestResult = false,withRequestParameters = false) public class BomExtController extends BaseController { @Autowired private BomExtService bomExtService; @Autowired private BomService bomService; // @PreventRepeat // @ApiOperation("新建") // @PostMapping("/create") // @RequiresPermissions("ext:bomext:create") // public ApiResponse create(@RequestBody Bom bom) { // return ApiResponse.success(bomService.create(bom)); // } // // @ApiOperation("根据ID删除") // @GetMapping("/delete/{id}") // @RequiresPermissions("ext:bomext:delete") // public ApiResponse deleteById(@PathVariable Integer id) { // bomService.deleteById(id); // return ApiResponse.success(null); // } // // @ApiOperation("批量删除") // @GetMapping("/delete/batch") // @RequiresPermissions("ext:bomext:delete") // public ApiResponse deleteByIds(@RequestParam String ids) { // String [] idArray = ids.split(","); // List idList = new ArrayList<>(); // for (String id : idArray) { // idList.add(Integer.valueOf(id)); // } // bomService.deleteByIdInBatch(idList); // return ApiResponse.success(null); // } // // @ApiOperation("根据ID修改") // @PostMapping("/updateById") // @RequiresPermissions("ext:bomext:update") // public ApiResponse updateById(@RequestBody Bom bom) { // bomService.updateById(bom); // return ApiResponse.success(null); // } // // @ApiOperation("分页查询") // @PostMapping("/page") // @RequiresPermissions("ext:bomext:query") // public ApiResponse> findPage (@RequestBody PageWrap pageWrap) { // return ApiResponse.success(bomExtService.findPage(pageWrap)); // } // // @ApiOperation("导出Excel") // @PostMapping("/exportExcel") // @RequiresPermissions("ext:bomext:exportExcel") // public void exportExcel (@RequestBody PageWrap pageWrap, HttpServletResponse response) { // ExcelExporter.build(BomExtListVO.class).export(bomExtService.findPage(pageWrap).getRecords(), "物料清单信息", response); // } // // @ApiOperation("根据ID查询") // @GetMapping("/{id}") // @RequiresPermissions("ext:bomext:query") // public ApiResponse findById(@PathVariable Integer id) { // return ApiResponse.success(bomService.findById(id)); // } @PreventRepeat @ApiOperation("保存") @PostMapping("/saveBean") // @RequiresPermissions("ext:bomext:create") public ApiResponse saveBean(@Validated @RequestBody BomBean bom) { return bomService.saveBean(bom,getLoginUser()); } @PreventRepeat @ApiOperation("启用或失效") @GetMapping("/openOrClose") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "BOM主键" , required = true), @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "optType", value = "操作类别:1=启用;2=失效" , required = true), }) // @RequiresPermissions("ext:bomext:create") public ApiResponse openOrClose(@RequestParam Integer id,@RequestParam Integer optType) { return ApiResponse.success(bomService.openOrClose(id,optType)); } @ApiOperation("分页查询") @PostMapping("/page") // @RequiresPermissions("ext:bomext:query") public ApiResponse> findPage (@RequestBody PageWrap pageWrap) { return ApiResponse.success(bomExtService.findListPage(pageWrap)); } @ApiOperation("列表查询") @PostMapping("/getBomMaterialList") public ApiResponse> getBomMaterialList (@RequestBody QueryBomDTO qry) { return ApiResponse.success(bomExtService.getBomMaterial(qry)); } @ApiOperation("根据ID查询") @GetMapping("/findById") // @RequiresPermissions("ext:bomext:query") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "BOM主键" , required = true), }) public ApiResponse findById(@RequestParam Integer id) { return ApiResponse.success(bomExtService.beanFindById(id)); } }