package com.gkhy.hazmat.admin.controller.web; import com.gkhy.hazmat.common.annotation.RepeatSubmit; import com.gkhy.hazmat.common.api.CommonResult; import com.gkhy.hazmat.common.enums.CodePrexEnum; import com.gkhy.hazmat.system.domain.HzHazmatFlow; import com.gkhy.hazmat.system.service.HzHazmatFlowService; import com.gkhy.hazmat.system.service.HzProductFlowService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; /** *

* 危化品流向表 前端控制器 *

* * @author kzy * @since 2024-08-05 14:41:40 */ @Api(tags = "原材料危化品流向前端控制器") @RestController @RequestMapping("/hazmat-flow") public class HzHazmatFlowController { @Autowired private HzHazmatFlowService hazmatFlowService; @Autowired private HzProductFlowService productFlowService; @ApiOperation(value = "流向列表(分页)") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"), @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10") }) @GetMapping("/list") public CommonResult list(HzHazmatFlow hazmatFlow){ return CommonResult.success(hazmatFlowService.selectHazmatFlowList(hazmatFlow)); } @ApiOperation(value = "根据流向id查询危化品所有流向") @GetMapping(value = { "/getAllHazmatFlowById" }) public CommonResult getAllHazmatFlowById(Long hazmatFlowId){ return CommonResult.success(hazmatFlowService.selectAllHazmatFlowById(hazmatFlowId)); } @ApiOperation(value = "根据危化品id查询危化品所有流向") @GetMapping(value = { "/getAllHazmatFlowByHazmatId" }) public CommonResult getAllHazmatFlowByHazmatId(Long hazmatId){ return CommonResult.success(hazmatFlowService.getAllHazmatFlowByHazmatId(hazmatId)); } @RepeatSubmit @PreAuthorize("hasAnyAuthority('hazmat:manage:company','hazmat:manage:common')") @ApiOperation(value = "删除流向") @DeleteMapping(value = { "/{hazmatFlowId}" }) public CommonResult delete(@PathVariable(value = "hazmatFlowId", required = true) Long hazmatFlowId){ return CommonResult.success(hazmatFlowService.deleteHazmatFlowById(hazmatFlowId)); } @PreAuthorize("hasAnyAuthority('hazmat:manage:company','hazmat:manage:common')") @ApiOperation(value = "根据条码code查询危化品所有流向") @GetMapping(value = { "/getHazmatFlowByCode" }) public CommonResult getAllHazmatFlowByCode(@RequestParam(required = true) String code){ if(code.startsWith(CodePrexEnum.MATERIAL.getCode())){ return CommonResult.success(hazmatFlowService.selectAllHazmatFlowByCode(code)); }else if(code.startsWith(CodePrexEnum.GOOD.getCode())){ return CommonResult.success(productFlowService.selectAllProductFlowByCode(code)); }else{ return CommonResult.failed("条码格式不正确"); } } }