From 76699e910ca78a400c0bcdbaa7c175248f9589d0 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 26 九月 2024 18:28:56 +0800
Subject: [PATCH] 修改接口

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java |   40 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 37 insertions(+), 3 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java
index 6a885af..a28ab1e 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java
@@ -11,6 +11,7 @@
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.domain.TOrderSale;
 import com.ruoyi.system.domain.TOrderSaleGoods;
+import com.ruoyi.system.dto.CheckoutDTO;
 import com.ruoyi.system.dto.TOrderSaleDTO;
 import com.ruoyi.system.export.TOrderMealExportExcel;
 import com.ruoyi.system.export.TOrderSaleExportExcel;
@@ -25,6 +26,7 @@
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.ServletOutputStream;
@@ -34,6 +36,7 @@
 import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * <p>
@@ -65,6 +68,7 @@
     @PostMapping(value = "/pageList")
     public AjaxResult<PageInfo<TOrderSaleVO>> pageList(@RequestBody TOrderSaleQuery query) {
         query.setShopId(tokenService.getLoginUser().getObjectId());
+        query.setIsCover(1);
         return AjaxResult.success(orderSaleService.pageList(query));
     }
 
@@ -73,7 +77,7 @@
      */
     @ApiOperation( value = "查询销售金额统计")
     @PostMapping(value = "/amountSum")
-    public AjaxResult<AmountSumVO> amountSum(@RequestBody TOrderMealQuery query) {
+    public AjaxResult<AmountSumVO> amountSum(@RequestBody TOrderSaleQuery query) {
         query.setShopId(tokenService.getLoginUser().getObjectId());
         return AjaxResult.success(orderSaleService.amountSum(query));
     }
@@ -82,11 +86,22 @@
     @GetMapping(value = "/getDetailById")
     public AjaxResult<TOrderSaleVO> getDetailById(@RequestParam(value = "id") Long id) {
         TOrderSale orderSale = orderSaleService.getById(id);
+        if(Objects.isNull(orderSale)){
+            return AjaxResult.error("未查询到销售单");
+        }
         TOrderSaleVO orderSaleVO = new TOrderSaleVO();
         BeanUtils.copyProperties(orderSale, orderSaleVO);
         List<TOrderSaleGoods> list = orderSaleGoodsService.list(Wrappers.lambdaQuery(TOrderSaleGoods.class)
                 .eq(TOrderSaleGoods::getOrderId, orderSale.getId()));
         orderSaleVO.setOrderSaleGoods(list);
+        BigDecimal sum = BigDecimal.ZERO;
+        Integer count = 0;
+        for (TOrderSaleGoods tOrderSaleGoods : list) {
+            sum = sum.add(tOrderSaleGoods.getThisSalePrice().multiply(new BigDecimal(tOrderSaleGoods.getGoodsCount())));
+            count = count + tOrderSaleGoods.getGoodsCount();
+        }
+        orderSaleVO.setGoodsAmount(sum);
+        orderSaleVO.setGoodsCount(count);
         return AjaxResult.success(orderSaleVO);
     }
 
@@ -110,22 +125,41 @@
     }
 
     /**
+     * 销售下单接口
+     */
+    @ApiOperation( value = "销售单修改接口")
+    @PostMapping(value = "/edit")
+    public AjaxResult<String> edit(@RequestBody TOrderSaleDTO dto) {
+        orderSaleService.edit(dto);
+        return AjaxResult.success();
+    }
+
+    @ApiOperation( value = "结账接口")
+    @PostMapping(value = "/checkout")
+    public AjaxResult<String> checkout(@Validated @RequestBody CheckoutDTO dto) {
+        orderSaleService.checkout(dto);
+        return AjaxResult.success();
+    }
+
+    /**
      * 导出销售列表
      */
     @ApiOperation(value = "导出销售列表")
     @PostMapping("/exportOrderSale")
     public void exportOrderSale(@RequestBody TOrderMealQuery query)
     {
+        query.setShopId(tokenService.getLoginUser().getObjectId());
         List<TOrderSaleVO> list = orderSaleService.exportOrderSale(query);
-        List<TOrderMealExportExcel> orderMeals = new ArrayList<>();
+        List<TOrderSaleExportExcel> orderMeals = new ArrayList<>();
         for (TOrderSaleVO orderSaleVO : list) {
             TOrderSaleExportExcel orderSaleExportExcel = new TOrderSaleExportExcel();
             BeanUtils.copyProperties(orderSaleVO, orderSaleExportExcel);
             orderSaleExportExcel.setCreateStrTime(DateUtils.localDateTimeToString(orderSaleVO.getCreateTime()));
             orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getThisSalePrice).reduce(BigDecimal::add).get());
             orderSaleExportExcel.setGoodsCount(orderSaleVO.getOrderSaleGoods().size());
+            orderMeals.add(orderSaleExportExcel);
         }
-        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderMealExportExcel.class, orderMeals);
+        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderSaleExportExcel.class, orderMeals);
         HttpServletResponse response = WebUtils.response();
         response.setContentType("application/vnd.ms-excel");
         response.setCharacterEncoding("utf-8");

--
Gitblit v1.7.1