package com.example.erp.controller.mm; import cn.dev33.satoken.annotation.SaCheckPermission; import com.example.erp.common.Constants; import com.example.erp.common.Result; import com.example.erp.entity.mm.FinishedOperateLog; import com.example.erp.entity.pp.FlowCard; import com.example.erp.entity.sd.OrderDetail; import com.example.erp.exception.ServiceException; import com.example.erp.service.mm.FinishedGoodsInventoryService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import com.example.erp.entity.mm.FinishedGoodsInventory; import java.util.List; import java.util.Map; @RestController @RequestMapping("/FinishedGoodsInventory") @Api(value="成品库存controller",tags={"成品库存操作接口"}) public class FinishedGoodsInventoryController { @Autowired FinishedGoodsInventoryService finishedGoodsInventoryService; /*成品库存查询*/ @ApiOperation("成品库存查询接口") @SaCheckPermission("ProductStockList.search") @PostMapping("/getSelect/{pageNum}/{pageSize}") public Result defaultDateFinishedGoodsInventory(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody FinishedGoodsInventory finishedGoodsInventory){ return Result.seccess(finishedGoodsInventoryService.defaultDateFinishedGoodsInventory(pageNum,pageSize,finishedGoodsInventory)); } /*查询可入库的成品数据*/ @ApiOperation("可入库的成品查询接口") @SaCheckPermission("CreateProductStock.search") @PostMapping("/getSelectWarehousing/{pageNum}/{pageSize}") public Result getSelectWarehousing(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody FlowCard flowCard){ return Result.seccess(finishedGoodsInventoryService.getSelectWarehousing(pageNum,pageSize,flowCard)); } /*成品入库*/ @ApiOperation("成品入库接口") @SaCheckPermission("CreateProductStock.add") @PostMapping("/addSelectWarehousing") public Result addSelectWarehousing( @RequestBody Map object){ if(finishedGoodsInventoryService.addSelectWarehousing(object)){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"入库失败"); } } /*查询可发货的成品数据*/ @ApiOperation("可发货的成品查询接口") @SaCheckPermission("FinishedProductOut.search") @PostMapping("/getSelectDeliveryDetail/{pageNum}/{pageSize}") public Result getSelectDeliveryDetail(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody OrderDetail orderDetail){ return Result.seccess(finishedGoodsInventoryService.getSelectDeliveryDetail(pageNum,pageSize,orderDetail)); } /*成品发货*/ @ApiOperation("成品发货接口") @SaCheckPermission("FinishedProductOut.add") @PostMapping("/addDeliveryDetail") public Result addDeliveryDetail( @RequestBody Map object){ if(finishedGoodsInventoryService.addDeliveryDetail(object)){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"出库失败"); } } /* 调拨查询*/ @ApiOperation("可调拨数据查询接口") @SaCheckPermission("OrderAllocation.search") @PostMapping("/getSelectAllocate/{pageNum}/{pageSize}") public Result getSelectAllocate(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody OrderDetail orderDetail){ return Result.seccess(finishedGoodsInventoryService.getSelectAllocate(pageNum,pageSize,orderDetail)); } /*订单调拨*/ @ApiOperation("订单调拨接口") @SaCheckPermission("OrderAllocation.add") @PostMapping("/updateFinishedGoodsInventoryAllocate") public Result updateFinishedGoodsInventoryAllocate( @RequestBody Map object){ if(finishedGoodsInventoryService.updateFinishedGoodsInventoryAllocate(object)){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"调拨失败,请检查订单输入是否正确"); } } /*调拨记录查询*/ @ApiOperation("调拨记录查询接口") @SaCheckPermission("TransferRecord.search") @PostMapping("/getSelectAllocateFinishedOperateLog/{pageNum}/{pageSize}/{selectDate}") public Result getSelectAllocateFinishedOperateLog(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List selectDate, @RequestBody FinishedOperateLog finishedOperateLog){ return Result.seccess(finishedGoodsInventoryService.getSelectAllocateFinishedOperateLog(pageNum,pageSize,selectDate,finishedOperateLog)); } /*订单领出*/ @ApiOperation("订单领出接口") @SaCheckPermission("FinishedGoodsIssue.add") @PostMapping("/updateFinishedGoodsInventoryTakeOut") public Result updateFinishedGoodsInventoryTakeOut( @RequestBody Map object){ if(finishedGoodsInventoryService.updateFinishedGoodsInventoryTakeOut(object)){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"领出失败"); } } /*领出记录查询*/ @ApiOperation("领出记录查询接口") @SaCheckPermission("TakeOutRecord.search") @PostMapping("/getSelectOperateRecord/{pageNum}/{pageSize}/{selectDate}") public Result getSelectOperateRecord(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List selectDate, @RequestBody FinishedOperateLog finishedOperateLog){ return Result.seccess(finishedGoodsInventoryService.getSelectOperateRecord(pageNum,pageSize,selectDate,finishedOperateLog)); } /*订单返工*/ @ApiOperation("订单返工查询接口") @PostMapping("/updateFinishedGoodsInventoryRework") public Result updateFinishedGoodsInventoryRework( @RequestBody Map object){ if(finishedGoodsInventoryService.updateFinishedGoodsInventoryRework(object)){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"返工失败"); } } /*订单审核*/ @ApiOperation("订单审核接口") @SaCheckPermission("TakeOutRecord.review") @PostMapping("/updateFinishedGoodsInventoryToExamine") public Result updateFinishedGoodsInventoryToExamine( @RequestBody Map object){ if(finishedGoodsInventoryService.updateFinishedGoodsInventoryToExamine(object,"审核")){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"领出失败"); } } /*订单反审*/ @ApiOperation("订单反审接口") @SaCheckPermission("TakeOutRecord.review") @PostMapping("/updateFinishedGoodsInventoryCounterExamination") public Result updateFinishedGoodsInventoryCounterExamination( @RequestBody Map object){ if(finishedGoodsInventoryService.updateFinishedGoodsInventoryToExamine(object,"反审")){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"领出失败"); } } /*订单作废*/ @ApiOperation("订单作废接口") @SaCheckPermission("TakeOutRecord.update") @PostMapping("/cancelFinishedGoodsInventoryToExamine") public Result cancelFinishedGoodsInventoryToExamine( @RequestBody Map object){ if(finishedGoodsInventoryService.cancelFinishedGoodsInventoryToExamine(object)){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"领出失败"); } } /*出入库记录查询*/ @ApiOperation("出入库记录查询接口") @SaCheckPermission("storageRecord.search") @PostMapping("/getSelectStorageRecord/{pageNum}/{pageSize}/{selectDate}/{type}") public Result getSelectStorageRecord(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List selectDate,@PathVariable String type, @RequestBody FinishedOperateLog finishedOperateLog){ return Result.seccess(finishedGoodsInventoryService.getSelectStorageRecord(pageNum,pageSize,selectDate,type,finishedOperateLog)); } /*出入库返回*/ @ApiOperation("出入库返回接口") @SaCheckPermission("storageRecord.update") @PostMapping("/cancelFinishedGoodsInventoryStorage") public Result cancelFinishedGoodsInventoryStorage( @RequestBody Map object){ if(finishedGoodsInventoryService.cancelFinishedGoodsInventoryStorage(object)){ return Result.seccess(); }else { throw new ServiceException(Constants.Code_500,"返回失败"); } } @ApiOperation("成品库存记录查询接口") @SaCheckPermission("WarehouseReport.search") @PostMapping("/getSelectFinishedOperateLogReport/{pageNum}/{pageSize}/{selectDate}") public Result getSelectFinishedOperateLogReport(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List selectDate, @RequestBody FinishedOperateLog finishedOperateLog){ return Result.seccess(finishedGoodsInventoryService.getSelectFinishedOperateLogReport(pageNum,pageSize,selectDate,finishedOperateLog)); } }