chenlu
2024-06-07 2f640b1038fa331954f78ed1f4317212cf5bb34d
north-glass-erp/src/main/java/com/example/erp/controller/sd/DeliveryController.java
@@ -1,8 +1,12 @@
package com.example.erp.controller.sd;
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.dto.sd.DeliveryDetailDTO;
import com.example.erp.dto.sd.DeliveryDetailProductDTO;
import com.example.erp.entity.mm.FinishedGoodsInventory;
import com.example.erp.entity.sd.Delivery;
import com.example.erp.entity.sd.DeliveryDetail;
@@ -10,11 +14,15 @@
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.exception.ServiceException;
import com.example.erp.service.sd.DeliveryService;
import com.example.erp.tools.DownExcel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.time.LocalDate;
import java.util.List;
import java.util.Map;
@@ -28,20 +36,39 @@
    /*发货订单查询*/
    @ApiOperation("发货订单查询接口")
    @PostMapping("/getseletShippingOrder/{pageNum}/{pageSize}/{selectDate}")
    public Result getseletShippingOrder(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody Delivery delivery){
        return Result.seccess(deliveryService.getseletShippingOrder(pageNum,pageSize,selectDate,delivery));
    @SaCheckPermission("selectDelivery.search")
    @PostMapping("/getSelectShippingOrder/{pageNum}/{pageSize}/{selectDate}")
    public Result getSelectShippingOrder(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody Delivery delivery){
        return Result.seccess(deliveryService.getSelectShippingOrder(pageNum,pageSize,selectDate,delivery));
    }
    /*发货报表查询*/
    @ApiOperation("发货报表查询接口")
    @SaCheckPermission("deliveryReport.search")
    @PostMapping("/getSelectDeliveryDetailReport/{pageNum}/{pageSize}/{selectDate}")
    public Result getSelectDeliveryDetailReport(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody DeliveryDetail deliveryDetail){
        return Result.seccess(deliveryService.getSelectDeliveryDetailReport(pageNum,pageSize,selectDate,deliveryDetail));
    }
    /*发货报表查询*/
    @ApiOperation("发货产品分类报表查询接口")
    @SaCheckPermission("deliveryReport.search")
    @PostMapping("/getSelectDeliveryDetailProductReport/{pageNum}/{pageSize}/{selectDate}")
    public Result getSelectDeliveryDetailProductReport(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody DeliveryDetail deliveryDetail){
        return Result.seccess(deliveryService.getSelectDeliveryDetailProductReport(pageNum,pageSize,selectDate,deliveryDetail));
    }
    /*发货订单明细查询*/
    @ApiOperation("发货编辑订单明细查询接口")
    @PostMapping("/getseletShippingOrderDetail/{pageNum}/{pageSize}")
    public Result getseletShippingOrderDetail(@PathVariable Integer pageNum, @PathVariable Integer pageSize,  @RequestBody OrderDetail orderDetail){
        return Result.seccess(deliveryService.getseletShippingOrderDetail(pageNum,pageSize,orderDetail));
    @SaCheckPermission("createDelivery.search")
    @PostMapping("/getSelectShippingOrderDetail/{pageNum}/{pageSize}")
    public Result getSelectShippingOrderDetail(@PathVariable Integer pageNum, @PathVariable Integer pageSize,  @RequestBody OrderDetail orderDetail){
        return Result.seccess(deliveryService.getSelectShippingOrderDetail(pageNum,pageSize,orderDetail));
    }
    /*库存可发货订单查询*/
    @ApiOperation("库存可发货订单查询接口接口")
    @SaCheckPermission("selectOrderList.search")
    @PostMapping("/getSelectOrderInventory/{pageNum}/{pageSize}/{selectDate}")
    public Result getSelectOrderInventory(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody Order order){
        return Result.seccess(deliveryService.getSelectOrderInventory(pageNum,pageSize,selectDate,order));
@@ -49,31 +76,50 @@
    /*发货订单明细查询*/
    @ApiOperation("发货新增订单明细查询接口")
    @PostMapping("/getseletShippingOrderDetails/{pageNum}/{pageSize}")
    public Result getseletShippingOrderDetails(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody OrderDetail orderDetail){
        return Result.seccess(deliveryService.getseletShippingOrderDetails(pageNum,pageSize,orderDetail));
    @SaCheckPermission("createDelivery.search")
    @PostMapping("/getSelectShippingOrderDetails/{pageNum}/{pageSize}")
    public Result getSelectShippingOrderDetails(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @RequestBody OrderDetail orderDetail){
        return Result.seccess(deliveryService.getSelectShippingOrderDetails(pageNum,pageSize,orderDetail));
    }
    @ApiOperation("发货新增接口")
    @SaCheckPermission("createDelivery.add")
    @PostMapping("/insertDelivery")
    public Result insertDelivery( @RequestBody Map<String,Object> object){
        if(deliveryService.insertDelivery(object)){
            return Result.seccess();
        }else {
            throw new ServiceException(Constants.Code_500,"发货失败");
        }
        return Result.seccess(deliveryService.insertDelivery(object));
    }
    @ApiOperation("发货审核修改接口")
    @SaCheckPermission("createDelivery.review")
    @PostMapping("/updateDeliveryToExamine")
    public Result updateDeliveryToExamine( @RequestBody Map<String,Object> object){
        if(deliveryService.updateDeliveryToExamine(object)){
            return Result.seccess();
        return Result.seccess(deliveryService.updateDeliveryToExamine(object));
    }
        }else {
            throw new ServiceException(Constants.Code_500,"审核失败");
    @ApiOperation("发货删除接口")
    @SaCheckPermission("selectDelivery.delete")
    @PostMapping("/deleteDelivery")
    public Result deleteDelivery( @RequestBody Map<String,Object> object){
        return Result.seccess(deliveryService.deleteDelivery(object));
    }
        }
    @ApiOperation("发货订单查询接口")
    @SaCheckPermission("selectDelivery.search")
    @PostMapping("/getSelectDeliveryPrinting")
    public Result getSelectDeliveryPrinting( @RequestBody DeliveryDetail deliveryDetail){
        return Result.seccess(deliveryService.getSelectDeliveryPrinting(deliveryDetail));
    }
    @ApiOperation("发货明细报表")
    @PostMapping("/exportDeliveryDetailReport")
    public void exportDeliveryDetailReport(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
        //参数:相应的数据,实体类信息,相应的方法(数据获取),生成的excel名字
        DownExcel.download(response, DeliveryDetailDTO.class, deliveryService.exportDeliveryDetailReport(dates),"orderReport");
    }
    @ApiOperation("发货明细产品分类报表")
    @PostMapping("/exportDeliveryDetailProductReport")
    public void exportDeliveryDetailProductReport(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
        //参数:相应的数据,实体类信息,相应的方法(数据获取),生成的excel名字
        DownExcel.download(response, DeliveryDetailProductDTO.class, deliveryService.exportDeliveryDetailProductReport(dates),"orderReport");
    }