xuhy
2024-09-10 da392a50b1ea129d1626c1936f0b5ed5ed457b30
修改
15个文件已修改
70 ■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBoardController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderMealController.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderMealGoods.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderSaleGoods.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderStockGoods.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/dto/TOrderSaleDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/dto/TOrderStockDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TOrderMealGoodsMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TOrderSaleGoodsMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TOrderStockGoodsMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBoardController.java
@@ -15,6 +15,7 @@
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
@@ -57,9 +58,9 @@
            List<TOrderMeal> orderMeals = orderMealService.list(Wrappers.lambdaQuery(TOrderMeal.class)
                    .in(TOrderMeal::getBoardId, ids)
                    .isNotNull(TOrderMeal::getMealTime)
                    .orderByDesc(TOrderMeal::getMealTime));
                    .orderByDesc(TOrderMeal::getCreateTime));
            for (TBoard board : list) {
                List<TOrderMeal> collect = orderMeals.stream().filter(e -> board.getId().equals(e.getBoardId())).collect(Collectors.toList());
                List<TOrderMeal> collect = orderMeals.stream().filter(e -> board.getId().equals(e.getBoardId())).sorted(Comparator.comparing(TOrderMeal::getCreateTime).reversed()).collect(Collectors.toList());
                if(!CollectionUtils.isEmpty(collect)){
                    board.setMealType(collect.get(0).getMealType());
                    board.setMealPerson(collect.get(0).getMealPerson());
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java
@@ -144,6 +144,7 @@
            BeanUtils.copyProperties(orderMealVO, tOrderMealExportExcel);
            tOrderMealExportExcel.setCreateStrTime(DateUtils.localDateToString(orderMealVO.getMealTime()));
            tOrderMealExportExcel.setGoodsList(orderMealVO.getGoodsList().stream().collect(Collectors.joining("\n")));
            orderMeals.add(tOrderMealExportExcel);
        }
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderMealExportExcel.class, orderMeals);
        HttpServletResponse response = WebUtils.response();
@@ -179,6 +180,7 @@
            BeanUtils.copyProperties(orderSaleVO, orderSaleExportExcel);
            orderSaleExportExcel.setCreateStrTime(DateUtils.localDateTimeToString(orderSaleVO.getCreateTime()));
            orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getThisSalePrice).reduce(BigDecimal::add).get());
            orderMeals.add(orderSaleExportExcel);
        }
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderSaleAndGoodsExportExcel.class, orderMeals);
        HttpServletResponse response = WebUtils.response();
@@ -214,6 +216,7 @@
            BeanUtils.copyProperties(orderStockVO, orderStockExportExcel);
            orderStockExportExcel.setGoodsAmount(orderStockVO.getOrderStockGoods().stream().map(TOrderStockGoods::getSalePrice).reduce(BigDecimal::add).get());
            orderStockExportExcel.setStockTime(DateUtils.localDateToString(orderStockVO.getStockTime()));
            orderStockExportExcels.add(orderStockExportExcel);
        }
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderStockExportExcel.class, orderStockExportExcels);
        HttpServletResponse response = WebUtils.response();
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderMealController.java
@@ -26,15 +26,18 @@
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -91,6 +94,14 @@
        BeanUtils.copyProperties(orderMeal, orderMealVO);
        List<TOrderMealGoods> list = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class)
                .eq(TOrderMealGoods::getOrderId, orderMeal.getId()));
        if(!CollectionUtils.isEmpty(list)){
            Map<String, List<TOrderMealGoods>> map = list.stream().collect(Collectors.groupingBy(TOrderMealGoods::getTypeName));
            List<String> goodsList = new ArrayList<>();
            map.forEach((k,v)->{
                goodsList.add(k+":"+v.stream().map(item->item.getGoodsName()+" "+(item.getGoodsSalePrice().multiply(new BigDecimal(item.getGoodsCount())))).collect(Collectors.joining(",")));
            });
            orderMealVO.setGoodsList(goodsList);
        }
        orderMealVO.setOrderMealGoods(list);
        return AjaxResult.success(orderMealVO);
    }
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java
@@ -36,6 +36,7 @@
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
/**
 * <p>
@@ -84,6 +85,9 @@
    @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)
ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderMealGoods.java
@@ -63,5 +63,9 @@
    @ApiModelProperty(value = "类型id")
    @TableField("typeId")
    private Long typeId;
    @ApiModelProperty(value = "商品id")
    @TableField("goodsId")
    private Long goodsId;
}
ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderSaleGoods.java
@@ -70,5 +70,7 @@
    @ApiModelProperty(value = "类型id")
    @TableField("typeId")
    private Long typeId;
    @ApiModelProperty(value = "商品id")
    @TableField("goodsId")
    private Long goodsId;
}
ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderStockGoods.java
@@ -66,5 +66,7 @@
    @Excel(name = "商品数量",width = 15)
    @TableField("stockCount")
    private Integer stockCount;
    @ApiModelProperty(value = "商品id")
    @TableField("goodsId")
    private Long goodsId;
}
ruoyi-system/src/main/java/com/ruoyi/system/dto/TOrderSaleDTO.java
@@ -13,7 +13,4 @@
@ApiModel(value = "销售订单DTO")
public class TOrderSaleDTO extends TOrderSale {
    @ApiModelProperty(value = "销售订单商品")
    private List<TOrderSaleGoods> orderSaleGoods;
}
ruoyi-system/src/main/java/com/ruoyi/system/dto/TOrderStockDTO.java
@@ -14,7 +14,4 @@
@ApiModel(value = "进货订单DTO")
public class TOrderStockDTO extends TOrderStock {
    @ApiModelProperty(value = "进货订单商品")
    private List<TOrderStockGoods> orderStockGoods;
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java
@@ -136,6 +136,7 @@
                            tOrderMealGoods.setGoodsSalePrice(typeGood.getSalePrice());
                            tOrderMealGoods.setGoodsCount(1);
                            tOrderMealGoods.setTypeId(typeGood.getTypeId());
                            tOrderMealGoods.setGoodsId(typeGood.getId());
                            orderMealGoods.add(tOrderMealGoods);
                        }
                    }
@@ -293,6 +294,7 @@
                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                    tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                    tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                    orderStockGoods.add(tOrderStockGoods);
                });
@@ -329,6 +331,7 @@
                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                    tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                    tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                    orderStockGoods.add(tOrderStockGoods);
                });
@@ -358,6 +361,7 @@
                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                    tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                    tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                    orderStockGoods1.add(tOrderStockGoods);
                });
@@ -387,6 +391,7 @@
                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                    tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                    tOrderStockGoods.setGoodsId(v.get(0).getGoodsId());
                    tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                    orderStockGoods.add(tOrderStockGoods);
                });
@@ -439,6 +444,7 @@
            List<TOrderMeal> orderMeals = orderMealService.list(Wrappers.lambdaQuery(TOrderMeal.class)
                    .in(TOrderMeal::getGeneratorId, ids));
            List<Long> mealIds = orderMeals.stream().map(TOrderMeal::getId).collect(Collectors.toList());
            if(!CollectionUtils.isEmpty(mealIds)){
            List<TOrderMealGoods> mealGoods = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class)
                    .in(TOrderMealGoods::getOrderId, mealIds));
            for (TDataGeneratorVO tDataGeneratorVO : list) {
@@ -446,6 +452,7 @@
                BigDecimal money = mealGoods.stream().filter(e -> collect.contains(e.getOrderId()))
                        .reduce(BigDecimal.ZERO, (x, y) -> x.add(y.getGoodsSalePrice().multiply(new BigDecimal(y.getGoodsCount()))), BigDecimal::add);
                tDataGeneratorVO.setTotalRevenue(money);
                }
            }
        }else {
            List<TOrderSale> orderSales = orderSaleService.list(Wrappers.lambdaQuery(TOrderSale.class)
@@ -457,10 +464,12 @@
//                List<Long> collect = orderSales.stream().filter(e -> e.getGeneratorId().equals(tDataGeneratorVO.getId())).map(TOrderSale::getId).collect(Collectors.toList());
//                BigDecimal money = orderSaleGoods.stream().filter(e -> collect.contains(e.getOrderId()))
//                        .reduce(BigDecimal.ZERO, (x, y) -> x.add(y.getGoodsCostPrice().multiply(new BigDecimal(y.getGoodsCount()))), BigDecimal::add);
                if(!CollectionUtils.isEmpty(orderSales)){
                BigDecimal money = orderSales.stream().map(TOrderSale::getPayMoney).reduce(BigDecimal::add).get();
                tDataGeneratorVO.setTotalRevenue(money);
            }
        }
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java
@@ -84,7 +84,8 @@
                    orderMealGood.setGoodsCount(item.getGoodsCount());
                    orderMealGood.setGoodsSalePrice(item1.getSalePrice().multiply(new BigDecimal(item.getGoodsCount())));
                    orderMealGood.setCostPrice(item1.getCostPrice().multiply(new BigDecimal(item.getGoodsCount())));
//                    orderMealGood.setTypeId(item1.getTypeId());
                    orderMealGood.setTypeId(item1.getTypeId());
                    orderMealGood.setGoodsId(item1.getId());
                    orderMealGood.setTypeName(list1.stream().filter(item2 -> item2.getId().equals(item1.getTypeId())).findFirst().get().getTypeName());
                    orderMealGoods.add(orderMealGood);
                });
@@ -124,7 +125,8 @@
                orderMealGood.setGoodsPicture(item1.getGoodsPicture());
                orderMealGood.setGoodsCount(item.getGoodsCount());
                orderMealGood.setGoodsSalePrice(item1.getGoodsSalePrice().multiply(new BigDecimal(item.getGoodsCount())));
//                orderMealGood.setTypeId(item1.getTypeId());
                orderMealGood.setTypeId(item1.getTypeId());
                orderMealGood.setGoodsId(item1.getId());
                orderMealGood.setTypeName(list1.stream().filter(item2 -> item2.getId().equals(item1.getTypeId())).findFirst().get().getTypeName());
                orderMealGoods.add(orderMealGood);
            });
@@ -191,6 +193,7 @@
            List<TOrderMealGoods> list1 = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class)
                    .eq(TOrderMealGoods::getOrderId, tOrderMealVO.getId()));
            tOrderMealVO.setOrderMealGoods(list1);
            if(!CollectionUtils.isEmpty(list1)){
            Map<String, List<TOrderMealGoods>> map = list1.stream().collect(Collectors.groupingBy(TOrderMealGoods::getTypeName));
            List<String> goodsList = new ArrayList<>();
            map.forEach((k,v)->{
@@ -198,6 +201,7 @@
            });
            tOrderMealVO.setGoodsList(goodsList);
        }
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java
@@ -14,6 +14,7 @@
import com.ruoyi.system.query.TDataStatisticsQuery;
import com.ruoyi.system.query.TOrderMealQuery;
import com.ruoyi.system.query.TOrderSaleQuery;
import com.ruoyi.system.service.TGoodsService;
import com.ruoyi.system.service.TGoodsTypeService;
import com.ruoyi.system.service.TOrderSaleGoodsService;
import com.ruoyi.system.service.TOrderSaleService;
@@ -46,6 +47,8 @@
    private TOrderSaleGoodsService orderSaleGoodsService;
    @Autowired
    private TGoodsTypeService goodsTypeService;
    @Autowired
    private TGoodsService goodsService;
    @Override
    public void add(TOrderSaleDTO dto) {
        // 查询菜品分类
ruoyi-system/src/main/resources/mapper/system/TOrderMealGoodsMapper.xml
@@ -14,11 +14,12 @@
        <result column="typeName" property="typeName" />
        <result column="costPrice" property="costPrice" />
        <result column="typeId" property="typeId" />
        <result column="goodsId" property="goodsId" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, goodsNum, goodsName, goodsSalePrice, goodsPicture, goodsCount, orderId,typeName,costPrice,typeId
        id, goodsNum, goodsName, goodsSalePrice, goodsPicture, goodsCount, orderId,typeName,costPrice,typeId,goodsId
    </sql>
    <select id="costTotal" resultType="java.math.BigDecimal">
        select sum(costPrice) from t_order_meal_goods
ruoyi-system/src/main/resources/mapper/system/TOrderSaleGoodsMapper.xml
@@ -14,11 +14,12 @@
        <result column="thisSalePrice" property="thisSalePrice" />
        <result column="goodsPicture" property="goodsPicture" />
        <result column="typeId" property="typeId" />
        <result column="goodsId" property="goodsId" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, orderId, goodsNum, goodsName, goodsCostPrice, goodsSalePrice, goodsCount, thisSalePrice, goodsPicture,typeId
        id, orderId, goodsNum, goodsName, goodsCostPrice, goodsSalePrice, goodsCount, thisSalePrice, goodsPicture,typeId,goodsId
    </sql>
    <select id="costTotal" resultType="java.math.BigDecimal">
        select sum(goodsCostPrice) from t_order_meal_goods
ruoyi-system/src/main/resources/mapper/system/TOrderStockGoodsMapper.xml
@@ -13,11 +13,12 @@
        <result column="goodsPicture" property="goodsPicture" />
        <result column="stockCount" property="stockCount" />
        <result column="thisSalePrice" property="thisSalePrice" />
        <result column="goodsId" property="goodsId" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, orderId, goodsNum, goodsName, costPrice, salePrice, goodsPicture, stockCount,thisSalePrice
        id, orderId, goodsNum, goodsName, costPrice, salePrice, goodsPicture, stockCount,thisSalePrice,goodsId
    </sql>
</mapper>