guoyuji
2024-05-31 3ee23fa2bfb5f90863a1e2579c882b4bae875aa3
north-glass-erp/src/main/java/com/example/erp/controller/mm/FinishedGoodsInventoryController.java
@@ -2,13 +2,17 @@
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.example.erp.common.Constants;
import com.example.erp.common.Result;
import com.example.erp.dto.mm.FinishedOperateLogDTO;
import com.example.erp.entity.mm.FinishedOperateLog;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.sd.Order;
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.exception.ServiceException;
import com.example.erp.service.mm.FinishedGoodsInventoryService;
import com.example.erp.tools.DownExcel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@@ -16,6 +20,9 @@
import com.example.erp.entity.mm.FinishedGoodsInventory;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.time.LocalDate;
import java.util.List;
import java.util.Map;
@@ -28,6 +35,7 @@
    /*成品库存查询*/
    @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));
@@ -35,6 +43,7 @@
    /*查询可入库的成品数据*/
    @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));
@@ -42,18 +51,16 @@
    /*成品入库*/
    @ApiOperation("成品入库接口")
    @SaCheckPermission("CreateProductStock.add")
    @PostMapping("/addSelectWarehousing")
    public Result addSelectWarehousing( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.addSelectWarehousing(object)){
            return Result.seccess();
        }else {
           throw new ServiceException(Constants.Code_500,"入库失败");
        return Result.seccess(finishedGoodsInventoryService.addSelectWarehousing(object));
        }
    }
    /*查询可发货的成品数据*/
    @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));
@@ -61,18 +68,15 @@
    /*成品发货*/
    @ApiOperation("成品发货接口")
    @SaCheckPermission("FinishedProductOut.add")
    @PostMapping("/addDeliveryDetail")
    public Result addDeliveryDetail( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.addDeliveryDetail(object)){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"出库失败");
        }
        return Result.seccess(finishedGoodsInventoryService.addDeliveryDetail(object));
    }
    /* 调拨查询*/
    @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));
@@ -80,20 +84,15 @@
    /*订单调拨*/
    @ApiOperation("订单调拨接口")
    @SaCheckPermission("OrderAllocation.add")
    @PostMapping("/updateFinishedGoodsInventoryAllocate")
    public Result updateFinishedGoodsInventoryAllocate( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.updateFinishedGoodsInventoryAllocate(object)){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"调拨失败,请检查订单输入是否正确");
        }
        return Result.seccess(finishedGoodsInventoryService.updateFinishedGoodsInventoryAllocate(object));
    }
    /*调拨记录查询*/
    @ApiOperation("调拨记录查询接口")
    @SaCheckPermission("TransferRecord.search")
    @PostMapping("/getSelectAllocateFinishedOperateLog/{pageNum}/{pageSize}/{selectDate}")
    public Result getSelectAllocateFinishedOperateLog(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody FinishedOperateLog finishedOperateLog){
        return Result.seccess(finishedGoodsInventoryService.getSelectAllocateFinishedOperateLog(pageNum,pageSize,selectDate,finishedOperateLog));
@@ -101,20 +100,15 @@
    /*订单领出*/
    @ApiOperation("订单领出接口")
    @SaCheckPermission("FinishedGoodsIssue.add")
    @PostMapping("/updateFinishedGoodsInventoryTakeOut")
    public Result updateFinishedGoodsInventoryTakeOut( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.updateFinishedGoodsInventoryTakeOut(object)){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"领出失败");
        }
        return Result.seccess(finishedGoodsInventoryService.updateFinishedGoodsInventoryTakeOut(object));
    }
    /*领出记录查询*/
    @ApiOperation("领出记录查询接口")
    @SaCheckPermission("TakeOutRecord.search")
    @PostMapping("/getSelectOperateRecord/{pageNum}/{pageSize}/{selectDate}")
    public Result getSelectOperateRecord(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody FinishedOperateLog finishedOperateLog){
        return Result.seccess(finishedGoodsInventoryService.getSelectOperateRecord(pageNum,pageSize,selectDate,finishedOperateLog));
@@ -124,61 +118,37 @@
    @ApiOperation("订单返工查询接口")
    @PostMapping("/updateFinishedGoodsInventoryRework")
    public Result updateFinishedGoodsInventoryRework( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.updateFinishedGoodsInventoryRework(object)){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"返工失败");
        }
        return Result.seccess(finishedGoodsInventoryService.updateFinishedGoodsInventoryRework(object));
    }
    /*订单审核*/
    @ApiOperation("订单审核接口")
    @SaCheckPermission("TakeOutRecord.review")
    @PostMapping("/updateFinishedGoodsInventoryToExamine")
    public Result updateFinishedGoodsInventoryToExamine( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.updateFinishedGoodsInventoryToExamine(object,"审核")){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"领出失败");
        }
        return Result.seccess(finishedGoodsInventoryService.updateFinishedGoodsInventoryToExamine(object,"审核"));
    }
    /*订单反审*/
    @ApiOperation("订单反审接口")
    @SaCheckPermission("TakeOutRecord.review")
    @PostMapping("/updateFinishedGoodsInventoryCounterExamination")
    public Result updateFinishedGoodsInventoryCounterExamination( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.updateFinishedGoodsInventoryToExamine(object,"反审")){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"领出失败");
        }
        return Result.seccess(finishedGoodsInventoryService.updateFinishedGoodsInventoryToExamine(object,"反审"));
    }
    /*订单作废*/
    @ApiOperation("订单作废接口")
    @SaCheckPermission("TakeOutRecord.update")
    @PostMapping("/cancelFinishedGoodsInventoryToExamine")
    public Result cancelFinishedGoodsInventoryToExamine( @RequestBody Map<String,Object>  object){
        if(finishedGoodsInventoryService.cancelFinishedGoodsInventoryToExamine(object)){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"领出失败");
        }
        return Result.seccess(finishedGoodsInventoryService.cancelFinishedGoodsInventoryToExamine(object));
    }
    /*出入库记录查询*/
    @ApiOperation("出入库记录查询接口")
    @SaCheckPermission("storageRecord.search")
    @PostMapping("/getSelectStorageRecord/{pageNum}/{pageSize}/{selectDate}/{type}")
    public Result getSelectStorageRecord(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate,@PathVariable String type, @RequestBody FinishedOperateLog finishedOperateLog){
        return Result.seccess(finishedGoodsInventoryService.getSelectStorageRecord(pageNum,pageSize,selectDate,type,finishedOperateLog));
@@ -186,15 +156,23 @@
    /*出入库返回*/
    @ApiOperation("出入库返回接口")
    @SaCheckPermission("storageRecord.update")
    @PostMapping("/cancelFinishedGoodsInventoryStorage")
    public Result cancelFinishedGoodsInventoryStorage( @RequestBody Map<String,Object>  object){
        return Result.seccess(finishedGoodsInventoryService.cancelFinishedGoodsInventoryStorage(object));
    }
        if(finishedGoodsInventoryService.cancelFinishedGoodsInventoryStorage(object)){
            return Result.seccess();
    @ApiOperation("成品库存记录查询接口")
    @SaCheckPermission("WarehouseReport.search")
    @PostMapping("/getSelectFinishedOperateLogReport/{pageNum}/{pageSize}/{selectDate}")
    public Result getSelectFinishedOperateLogReport(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody FinishedOperateLog finishedOperateLog){
        return Result.seccess(finishedGoodsInventoryService.getSelectFinishedOperateLogReport(pageNum,pageSize,selectDate,finishedOperateLog));
    }
        }else {
            throw new ServiceException(Constants.Code_500,"返回失败");
        }
    @ApiOperation("成品报表导出")
    @PostMapping("/exportFinishedOperateLogReport")
    public void exportFinishedOperateLogReport(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
        //参数:相应的数据,实体类信息,相应的方法(数据获取),生成的excel名字
        DownExcel.download(response, FinishedOperateLogDTO.class, finishedGoodsInventoryService.exportFinishedOperateLogReport(dates),"orderReport");
    }
}