From 97cf3094ce37ee629ca6b948a9317a7ed1796c18 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期六, 07 九月 2024 17:56:29 +0800
Subject: [PATCH] 修改

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java    |    2 
 ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml                         |   34 +++----
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderStockServiceImpl.java    |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderSaleGoods.java                 |    7 -
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderSaleController.java        |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderStockGoods.java                |    4 +
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java     |   34 +++++---
 ruoyi-system/src/main/java/com/ruoyi/system/dto/OrderSaleGeneratorDTO.java              |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/query/SysUserQuery.java                     |    3 
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java        |    7 -
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java |   43 +++++++---
 ruoyi-system/src/main/resources/mapper/system/TOrderStockGoodsMapper.xml                |    3 
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java     |    2 
 ruoyi-system/src/main/resources/mapper/system/TOrderMealMapper.xml                      |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java                |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java                   |    2 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java        |   32 ++++----
 ruoyi-system/src/main/resources/mapper/system/TOrderSaleGoodsMapper.xml                 |    5 
 ruoyi-common/src/main/java/com/ruoyi/common/utils/CodeGenerateUtils.java                |   12 ++
 19 files changed, 112 insertions(+), 88 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java
index 713c39c..1e53e48 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TDataGeneratorController.java
@@ -178,7 +178,7 @@
             TOrderSaleAndGoodsExportExcel orderSaleExportExcel = new TOrderSaleAndGoodsExportExcel();
             BeanUtils.copyProperties(orderSaleVO, orderSaleExportExcel);
             orderSaleExportExcel.setCreateStrTime(DateUtils.localDateTimeToString(orderSaleVO.getCreateTime()));
-            orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getSalePrice).reduce(BigDecimal::add).get());
+            orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getThisSalePrice).reduce(BigDecimal::add).get());
         }
         Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderSaleAndGoodsExportExcel.class, orderMeals);
         HttpServletResponse response = WebUtils.response();
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 8a2248c..6a885af 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
@@ -122,7 +122,7 @@
             TOrderSaleExportExcel orderSaleExportExcel = new TOrderSaleExportExcel();
             BeanUtils.copyProperties(orderSaleVO, orderSaleExportExcel);
             orderSaleExportExcel.setCreateStrTime(DateUtils.localDateTimeToString(orderSaleVO.getCreateTime()));
-            orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getSalePrice).reduce(BigDecimal::add).get());
+            orderSaleExportExcel.setGoodsAmount(orderSaleVO.getOrderSaleGoods().stream().map(TOrderSaleGoods::getThisSalePrice).reduce(BigDecimal::add).get());
             orderSaleExportExcel.setGoodsCount(orderSaleVO.getOrderSaleGoods().size());
         }
         Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TOrderMealExportExcel.class, orderMeals);
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
index a5ecd45..aa56f43 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
@@ -57,7 +57,7 @@
      */
     @ApiOperation(value = "获取用户列表")
     @PostMapping("/list")
-    public AjaxResult list(@RequestBody SysUserQuery query)
+    public AjaxResult<PageInfo<SysUserVO>> list(@RequestBody SysUserQuery query)
     {
         PageInfo<SysUserVO> list = userService.pageList(query);
         return AjaxResult.success(list);
@@ -65,7 +65,7 @@
 
     @ApiOperation(value = "获取用户列表-不分页")
     @PostMapping("/listNotPage")
-    public AjaxResult listNotPage()
+    public AjaxResult<List<SysUser>> listNotPage()
     {
         List<SysUser> list = userService.selectList();
         return AjaxResult.success(list);
@@ -88,7 +88,7 @@
      */
     @ApiOperation(value = "获取用户详情")
     @GetMapping("/getDetail")
-    public AjaxResult getDetail(@RequestParam Long userId)
+    public AjaxResult<SysUser> getDetail(@RequestParam Long userId)
     {
         SysUser sysUser = userService.selectUserById(userId);
         SysUserVO sysUserVO = new SysUserVO();
@@ -103,7 +103,7 @@
      */
     @ApiOperation(value = "获取用户数量统计")
     @PostMapping("/getUserCount")
-    public AjaxResult getUserCount()
+    public AjaxResult<Map<String,Integer>> getUserCount()
     {
         Map<String,Integer> map = new HashMap<>();
 
@@ -121,17 +121,17 @@
     /**
      * 移除黑名单
      */
-    @GetMapping("/removeBlackList")
-    public AjaxResult removeBlackList(@RequestParam String ids)
-    {
-        String[] split = ids.split(",");
-        List<Long> id = new ArrayList<>();
-        for (String s : split) {
-            id.add(Long.valueOf(s));
-        }
-        userService.updateUserIfBlack(id);
-        return AjaxResult.success();
-    }
+//    @GetMapping("/removeBlackList")
+//    public AjaxResult<String> removeBlackList(@RequestParam String ids)
+//    {
+//        String[] split = ids.split(",");
+//        List<Long> id = new ArrayList<>();
+//        for (String s : split) {
+//            id.add(Long.valueOf(s));
+//        }
+//        userService.updateUserIfBlack(id);
+//        return AjaxResult.success();
+//    }
 
 
 //    @Log(title = "用户管理", businessType = BusinessType.EXPORT)
@@ -210,7 +210,7 @@
         }
 
         user.setUpdateBy(getUsername());
-        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
+//        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         return AjaxResult.success(userService.updateUser(user));
     }
 
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/CodeGenerateUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/CodeGenerateUtils.java
index eb27892..7c70e23 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/CodeGenerateUtils.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/CodeGenerateUtils.java
@@ -68,7 +68,17 @@
         String timestampPart = "" + (Math.random() * 10000) * (System.currentTimeMillis() / 10000);
         timestampPart = timestampPart.replace(".", "").replace("E", "");
         timestampPart = timestampPart.substring(0, 5);
-        return dateTime + timestampPart;
+
+        int day = calendar.get(Calendar.DAY_OF_MONTH);
+        double v = Math.random() * 10000;
+        int dayNum = (int) ((v % 3.33) * day);
+        String dayPart = "0" + dayNum;
+        dayPart = dayPart.substring(dayPart.length() - 2);
+        return dateTime + timestampPart + dayPart;
+    }
+
+    public static void main(String[] args) {
+        System.err.println(generateVolumeSn());
     }
 
 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderSaleGoods.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderSaleGoods.java
index 9625ed6..c8f064b 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderSaleGoods.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderSaleGoods.java
@@ -60,16 +60,13 @@
     private Integer goodsCount;
 
     @ApiModelProperty(value = "售卖价格")
-    @TableField("salePrice")
-    private BigDecimal salePrice;
+    @TableField("thisSalePrice")
+    private BigDecimal thisSalePrice;
 
     @ApiModelProperty(value = "商品图")
     @TableField("goodsPicture")
     private String goodsPicture;
 
-    @ApiModelProperty(value = "菜品类型")
-    @TableField("typeName")
-    private String typeName;
     @ApiModelProperty(value = "类型id")
     @TableField("typeId")
     private Long typeId;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderStockGoods.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderStockGoods.java
index eab268c..50a5296 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderStockGoods.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/TOrderStockGoods.java
@@ -54,6 +54,10 @@
     @TableField("salePrice")
     private BigDecimal salePrice;
 
+    @ApiModelProperty(value = "本次进货价格")
+    @TableField("thisSalePrice")
+    private BigDecimal thisSalePrice;
+
     @ApiModelProperty(value = "商品图")
     @TableField("goodsPicture")
     private String goodsPicture;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/OrderSaleGeneratorDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/OrderSaleGeneratorDTO.java
index 11a8199..3d29380 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/dto/OrderSaleGeneratorDTO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/OrderSaleGeneratorDTO.java
@@ -6,6 +6,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import javax.validation.constraints.NotNull;
 import java.io.Serializable;
 import java.time.LocalDate;
 import java.util.List;
@@ -15,6 +16,7 @@
 public class OrderSaleGeneratorDTO implements Serializable {
 
     @ApiModelProperty(value = "店铺id")
+    @NotNull(message = "店铺id不能为空")
     private Long shopId;
 
     @ApiModelProperty(value = "开始时间")
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
index a7bf907..02bab8e 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
@@ -167,8 +167,6 @@
 
     Long getUserRole(@Param("userId") Long userId);
 
-    int updateUserIfBlack(@Param("ids")List<Long> ids);
-
     List<SysUser> selectAllList();
 
     List<SysUserVO> pageList(@Param("query")SysUserQuery query, @Param("pageInfo")PageInfo<SysUserVO> pageInfo);
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/query/SysUserQuery.java b/ruoyi-system/src/main/java/com/ruoyi/system/query/SysUserQuery.java
index 3229257..2ca661a 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/query/SysUserQuery.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/query/SysUserQuery.java
@@ -17,9 +17,6 @@
     @ApiModelProperty(value = "角色id")
     private List<Integer> roleIds;
 
-//    @ApiModelProperty(value = "手机号")
-//    private String phonenumber;
-
     @ApiModelProperty(value = "状态  0=正常 1=停用")
     private String status;
 
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
index aa629d7..7599c49 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
@@ -244,8 +244,6 @@
 
     Long getUserRole(Long userId);
 
-    int updateUserIfBlack(List<Long> ids);
-
     /**
      * 查询所有用户(包含删除的)
      * @return
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index 665f042..43e1d87 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -295,7 +295,7 @@
     {
         Long userId = user.getUserId();
         // 删除用户与角色关联
-//        userRoleMapper.deleteUserRoleByUserId(userId);
+        userRoleMapper.deleteUserRoleByUserId(userId);
         // 新增用户与角色管理
         insertUserRoleId(user);
         // 删除用户与岗位关联
@@ -611,11 +611,6 @@
     @Override
     public Long getUserRole(Long userId) {
         return userMapper.getUserRole(userId);
-    }
-
-    @Override
-    public int updateUserIfBlack(List<Long> ids) {
-        return userMapper.updateUserIfBlack(ids);
     }
 
     @Override
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java
index 5f4dfb1..e58f7b3 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.basic.PageInfo;
+import com.ruoyi.common.constant.Constants;
 import com.ruoyi.common.constant.OrderNumConstants;
 import com.ruoyi.common.core.redis.RedisCache;
 import com.ruoyi.common.exception.ServiceException;
@@ -19,6 +20,8 @@
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
@@ -62,6 +65,7 @@
     @Autowired
     private RedisCache redisCache;
 
+    @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
     @Override
     public void mealDataGenerator(OrderMealGeneratorDTO dto) {
         // 存储数据生成数据
@@ -102,7 +106,7 @@
                 orderMeal.setMealType(1);
                 orderMeal.setMealPerson(random);
                 orderMeal.setMealTime(orderMealGeneratorCountDTO.getTime());
-                orderMeal.setOrderNum(OrderNumConstants.MEAL + CodeGenerateUtils.generateOrderSn());
+                orderMeal.setOrderNum(OrderNumConstants.MEAL + CodeGenerateUtils.generateVolumeSn());
                 orderMeal.setStatus(2);
                 List<TOrderMealGoods> orderMealGoods = new ArrayList<>();
                 List<TFoundationConfigVO> foundationConfigVOS = foundationConfigs.stream().filter(e -> e.getMealCount().equals(random)).collect(Collectors.toList());
@@ -216,6 +220,7 @@
 
     }
 
+    @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
     @Override
     public void saleDataGenerator(OrderSaleGeneratorDTO dto) {
         // 查询上一次的数据生成时间
@@ -236,6 +241,7 @@
         dataGenerator.setStartTime(dto.getStartTime());
         dataGenerator.setEndTime(dto.getEndTime());
         dataGenerator.setStatus(2);
+        dataGenerator.setShopId(dto.getShopId());
         dataGenerator.setOrderType(2);
         this.save(dataGenerator);
 
@@ -246,7 +252,10 @@
 
         // 添加销售订单数
         List<TOrderSale> orderSales = dto.getOrderSales();
-        orderSales.forEach(e->e.setGeneratorId(dataGenerator.getId()));
+        orderSales.forEach(e->{
+            e.setGeneratorId(dataGenerator.getId());
+            e.setOrderNum(OrderNumConstants.SALE + CodeGenerateUtils.generateVolumeSn());
+        });
         List<TOrderSaleGoods> orderSaleGoods = orderSales.stream().map(TOrderSale::getOrderSaleGoods).flatMap(Collection::stream).collect(Collectors.toList());
 
         // 生成进货数据
@@ -275,7 +284,8 @@
                     tOrderStockGoods.setGoodsName(k);
                     tOrderStockGoods.setGoodsNum(v.get(0).getGoodsNum());
                     tOrderStockGoods.setCostPrice(v.get(0).getGoodsCostPrice());
-                    tOrderStockGoods.setSalePrice(v.get(0).getSalePrice());
+                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
+                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods.add(tOrderStockGoods);
@@ -310,7 +320,8 @@
                     tOrderStockGoods.setGoodsName(k);
                     tOrderStockGoods.setGoodsNum(v.get(0).getGoodsNum());
                     tOrderStockGoods.setCostPrice(v.get(0).getGoodsCostPrice());
-                    tOrderStockGoods.setSalePrice(v.get(0).getSalePrice());
+                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
+                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods.add(tOrderStockGoods);
@@ -338,7 +349,8 @@
                     tOrderStockGoods.setGoodsName(k);
                     tOrderStockGoods.setGoodsNum(v.get(0).getGoodsNum());
                     tOrderStockGoods.setCostPrice(v.get(0).getGoodsCostPrice());
-                    tOrderStockGoods.setSalePrice(v.get(0).getSalePrice());
+                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
+                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods1.add(tOrderStockGoods);
@@ -366,7 +378,8 @@
                     tOrderStockGoods.setGoodsName(k);
                     tOrderStockGoods.setGoodsNum(v.get(0).getGoodsNum());
                     tOrderStockGoods.setCostPrice(v.get(0).getGoodsCostPrice());
-                    tOrderStockGoods.setSalePrice(v.get(0).getSalePrice());
+                    tOrderStockGoods.setSalePrice(v.get(0).getGoodsSalePrice());
+                    tOrderStockGoods.setThisSalePrice(v.get(0).getThisSalePrice());
                     tOrderStockGoods.setGoodsPicture(v.get(0).getGoodsPicture());
                     tOrderStockGoods.setStockCount(v.stream().mapToInt(TOrderSaleGoods::getGoodsCount).sum());
                     orderStockGoods.add(tOrderStockGoods);
@@ -393,7 +406,10 @@
             orderSale.getOrderSaleGoods().forEach(e->e.setOrderId(orderSale.getId()));
         }
         List<TGoodsType> list = goodsTypeService.list();
-        orderSaleGoods.forEach(e->e.setTypeName(list.stream().filter(m->m.getId().equals(e.getTypeId())).findFirst().get().getTypeName()));
+//        orderSaleGoods.forEach(e->e.setTypeName(list.stream().filter(m->m.getId().equals(e.getTypeId())).findFirst().get().getTypeName()));
+        orderSaleGoods.forEach(e->{
+            e.setId(null);
+        });
         orderSaleGoodsService.saveBatch(orderSaleGoods);
         // 添加数据
         stockList.forEach(e->e.setShopId(dataGenerator.getShopId()));
@@ -425,13 +441,14 @@
         }else {
             List<TOrderSale> orderSales = orderSaleService.list(Wrappers.lambdaQuery(TOrderSale.class)
                     .in(TOrderSale::getGeneratorId, ids));
-            List<Long> saleIds = orderSales.stream().map(TOrderSale::getId).collect(Collectors.toList());
-            List<TOrderSaleGoods> orderSaleGoods = orderSaleGoodsService.list(Wrappers.lambdaQuery(TOrderSaleGoods.class)
-                    .in(TOrderSaleGoods::getOrderId, saleIds));
+//            List<Long> saleIds = orderSales.stream().map(TOrderSale::getId).collect(Collectors.toList());
+//            List<TOrderSaleGoods> orderSaleGoods = orderSaleGoodsService.list(Wrappers.lambdaQuery(TOrderSaleGoods.class)
+//                    .in(TOrderSaleGoods::getOrderId, saleIds));
             for (TDataGeneratorVO tDataGeneratorVO : list) {
-                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);
+//                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);
+                BigDecimal money = orderSales.stream().map(TOrderSale::getPayMoney).reduce(BigDecimal::add).get();
                 tDataGeneratorVO.setTotalRevenue(money);
             }
         }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java
index f993b5e..26051c6 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderMealServiceImpl.java
@@ -68,7 +68,7 @@
             board.setStatus(BoardEnum.DURING_MEAL.getCode());
             boardService.updateById(board);
             // 订单金额,订单编号
-            String orderNum = OrderNumConstants.MEAL+CodeGenerateUtils.generateOrderSn();
+            String orderNum = OrderNumConstants.MEAL+CodeGenerateUtils.generateVolumeSn();
             dto.setOrderNum(orderNum);
             List<TOrderMealGoods> orderMealGoods = new ArrayList<>();
             // 查询商品
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java
index 54de246..e357f60 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderSaleServiceImpl.java
@@ -50,14 +50,18 @@
         // 查询菜品分类
         List<TGoodsType> list1 = goodsTypeService.list();
         // 销售单号
-        dto.setOrderNum(OrderNumConstants.SALE + CodeGenerateUtils.generateOrderSn());
+        dto.setOrderNum(OrderNumConstants.SALE + CodeGenerateUtils.generateVolumeSn());
         List<TOrderSaleGoods> orderSaleGoods = dto.getOrderSaleGoods();
         BigDecimal sum = orderSaleGoods.stream().map(TOrderSaleGoods::getGoodsSalePrice).reduce(BigDecimal::add).get();
         dto.setOrderMoney(sum);
-        dto.setPayMoney(sum);
+        BigDecimal sum1 = orderSaleGoods.stream().map(TOrderSaleGoods::getThisSalePrice).reduce(BigDecimal::add).get();
+        dto.setPayMoney(sum1);
         this.save(dto);
         // 添加商品
-        orderSaleGoods.forEach(orderSaleGoods1 -> orderSaleGoods1.setOrderId(dto.getId()));
+        orderSaleGoods.forEach(orderSaleGoods1 -> {
+            orderSaleGoods1.setOrderId(dto.getId());
+            orderSaleGoods1.setId(null);
+        });
         orderSaleGoodsService.saveBatch(orderSaleGoods);
     }
 
@@ -94,12 +98,17 @@
         PageInfo<TOrderSaleVO> pageInfo = new PageInfo<>(query.getPageNum(),query.getPageSize());
         List<TOrderSaleVO> list = this.baseMapper.pageList(query,pageInfo);
         List<Long> ids = list.stream().map(TOrderSaleVO::getId).collect(Collectors.toList());
-        List<TOrderSaleGoods> list1 = orderSaleGoodsService.list(Wrappers.lambdaQuery(TOrderSaleGoods.class)
-                .in(TOrderSaleGoods::getOrderId, ids));
-        list.forEach(e->{
-            e.setGoodsAmount(list1.stream().filter(m->m.getOrderId().equals(e.getId())).map(TOrderSaleGoods::getGoodsSalePrice).reduce(BigDecimal::add).get());
-            e.setOrderSaleGoods(list1.stream().filter(m->m.getOrderId().equals(e.getId())).collect(Collectors.toList()));
-        });
+        if(!CollectionUtils.isEmpty(ids)){
+            List<TOrderSaleGoods> list1 = orderSaleGoodsService.list(Wrappers.lambdaQuery(TOrderSaleGoods.class)
+                    .in(TOrderSaleGoods::getOrderId, ids));
+            list.forEach(e->{
+                List<TOrderSaleGoods> collect = list1.stream().filter(m -> m.getOrderId().equals(e.getId())).collect(Collectors.toList());
+                if(!CollectionUtils.isEmpty(collect)){
+                    e.setGoodsAmount(collect.stream().map(TOrderSaleGoods::getGoodsSalePrice).reduce(BigDecimal::add).get());
+                    e.setOrderSaleGoods(collect);
+                }
+            });
+        }
         pageInfo.setRecords(list);
         return pageInfo;
     }
@@ -130,16 +139,17 @@
     public List<SalesRankingVO> salesRanking(TDataStatisticsQuery query) {
         List<TOrderSale> list = this.list(Wrappers.lambdaQuery(TOrderSale.class)
                 .eq(TOrderSale::getShopId, query.getShopId())
-                .between(TOrderSale::getCreateTime, query.getStartTime(), query.getEndTime()));
+                .between(TOrderSale::getOrderTime, query.getStartTime(), query.getEndTime()));
         List<Long> ids = list.stream().map(TOrderSale::getId).collect(Collectors.toList());
         List<SalesRankingVO> salesRankingVOS = new ArrayList<>();
         if(!CollectionUtils.isEmpty(ids)){
             List<TOrderSaleGoods> list1 = orderSaleGoodsService.list(Wrappers.lambdaQuery(TOrderSaleGoods.class)
                     .in(TOrderSaleGoods::getOrderId, ids));
-            Map<String, List<TOrderSaleGoods>> listMap = list1.stream().collect(Collectors.groupingBy(TOrderSaleGoods::getTypeName));
+            Map<Long, List<TOrderSaleGoods>> listMap = list1.stream().collect(Collectors.groupingBy(TOrderSaleGoods::getTypeId));
+            List<TGoodsType> list2 = goodsTypeService.list();
             listMap.forEach((k,v)->{
                 SalesRankingVO salesRankingVO = new SalesRankingVO();
-                salesRankingVO.setTypeName(k);
+                salesRankingVO.setTypeName(list2.stream().filter(e->e.getId().equals(k)).findFirst().get().getTypeName());
                 salesRankingVO.setSalesVolume(v.stream().map(item->item.getGoodsSalePrice().multiply(new BigDecimal(item.getGoodsCount()))).reduce(BigDecimal.ZERO, BigDecimal::add));
                 salesRankingVOS.add(salesRankingVO);
             });
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderStockServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderStockServiceImpl.java
index 687bd4f..0bc0826 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderStockServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOrderStockServiceImpl.java
@@ -43,7 +43,7 @@
     @Override
     public void add(TOrderStockDTO dto) {
         // 进货单号
-        dto.setStockNum(OrderNumConstants.STOCK + CodeGenerateUtils.generateOrderSn());
+        dto.setStockNum(OrderNumConstants.STOCK + CodeGenerateUtils.generateVolumeSn());
         List<TOrderStockGoods> orderStockGoods = dto.getOrderStockGoods();
 //        BigDecimal sum = orderStockGoods.stream().map(TOrderStockGoods::getStockPrice).reduce(BigDecimal::add).get();
 //        dto.setStockTotalPrice(sum);
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 8a2a173..9b46e1e 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -23,6 +23,7 @@
         <result property="updateBy"     column="update_by"    />
         <result property="updateTime"   column="update_time"  />
         <result property="remark"       column="remark"       />
+        <result property="disableRemark"       column="disableRemark"       />
         <result property="roleType"       column="roleType"       />
         <result property="objectId"       column="objectId"       />
         <association property="dept"    javaType="SysDept"         resultMap="deptResult" />
@@ -51,7 +52,7 @@
 	<sql id="selectUserVo">
         select u.user_id, u.dept_id, u.user_name , u.nick_name , u.email , u.avatar ,
                u.phonenumber  , u.password  , u.sex  , u.status  , u.del_flag  , u.login_ip  ,
-               u.login_date  , u.create_by  , u.create_time  , u.remark  ,u.roleType  , u.objectId  ,
+               u.login_date  , u.create_by  , u.create_time  , u.remark  ,u.roleType  , u.objectId  ,u.disableRemark,
 			   d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
         r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
         from sys_user u
@@ -62,7 +63,8 @@
     
     <select id="selectUserList" parameterType="SysUser" resultMap="SysUserResult">
 		select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date,
-		       u.create_by, u.create_time, u.remark, d.dept_name, d.leader from sys_user u
+		       u.create_by, u.create_time, u.remark, d.dept_name, d.leader ,u.disableRemark
+		from sys_user u
 		left join sys_dept d on u.dept_id = d.dept_id
 		where u.del_flag = '0'
 		<if test="userId != null and userId != 0">
@@ -91,7 +93,7 @@
 	</select>
 	
 	<select id="selectAllocatedList" parameterType="SysUser" resultMap="SysUserResult">
-	    select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time
+	    select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time,u.disableRemark
 	    from sys_user u
 			 left join sys_dept d on u.dept_id = d.dept_id
 			 left join sys_user_role ur on u.user_id = ur.user_id
@@ -108,7 +110,7 @@
 	</select>
 	
 	<select id="selectUnallocatedList" parameterType="SysUser" resultMap="SysUserResult">
-	    select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time
+	    select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time,u.disableRemark
 	    from sys_user u
 			 left join sys_dept d on u.dept_id = d.dept_id
 			 left join sys_user_role ur on u.user_id = ur.user_id
@@ -133,7 +135,7 @@
 	<select id="selectUserById" parameterType="Long" resultType="com.ruoyi.common.core.domain.entity.SysUser">
 		select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
 			   u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
-			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,
+			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.disableRemark AS disableRemark
 			   ur.role_id AS roleId,sr.role_name AS roleName
 		from sys_user u
 		left join sys_user_role ur on u.user_id = ur.user_id
@@ -163,7 +165,7 @@
     <select id="selectList" resultType="com.ruoyi.common.core.domain.entity.SysUser">
 		select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
 			   u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
-			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack, u.districtId AS districtId
+			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.disableRemark AS disableRemark
 		from sys_user u
 		WHERE u.del_flag = 0
 	</select>
@@ -179,7 +181,7 @@
 	<select id="selectListByNamePhone" resultType="com.ruoyi.common.core.domain.entity.SysUser">
 		select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
 		u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
-		u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack, u.districtId AS districtId
+		u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.disableRemark AS disableRemark
 		from sys_user u
 		WHERE u.del_flag = 0
 		<if test="name != null and name != ''">
@@ -189,7 +191,7 @@
 	</select>
 	<select id="selectUserByUserNameList" resultType="com.ruoyi.common.core.domain.entity.SysUser">
 		select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
-			   u.phonenumber AS phonenumber
+			   u.phonenumber AS phonenumber,u.disableRemark AS disableRemark
 		from sys_user u
 		WHERE u.del_flag = 0
 		<if test="names != null and names.size()>0">
@@ -208,7 +210,7 @@
 	<select id="selectByPhone" resultType="com.ruoyi.common.core.domain.entity.SysUser">
 		select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
 			   u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
-			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark
+			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.disableRemark AS disableRemark
 		from sys_user u where u.phonenumber = #{phonenumber} and u.status = 0 and u.del_flag = 0
 	</select>
     <select id="getUserInfoBy" resultType="com.ruoyi.system.vo.UserInfoVo">
@@ -225,11 +227,11 @@
     <select id="pageList" resultType="com.ruoyi.system.vo.SysUserVO">
 		select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
 			   u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
-			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack, u.districtId AS districtId,
-			   r.role_id AS roleId, r.role_name AS roleName, r.role_key AS roleKey, r.role_sort AS roleSort, r.data_scope AS dataScope, r.status as role_status,u.deptName as deptName
+			   u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.disableRemark AS disableRemark,
+			   r.role_id AS roleId, r.role_name AS roleName, r.role_key AS roleKey, r.role_sort AS roleSort, r.data_scope AS dataScope, r.status as role_status
 		from sys_user u
 		left join sys_user_role ur on u.user_id = ur.user_id
-		left join sys_role r on r.role_id = ur.role_id
+		left join sys_role r on ur.role_id = r.role_id
 		WHERE u.del_flag = 0
 		<if test="query.nickNameOrPhone != null and query.nickNameOrPhone != ''">
 			AND (u.nick_name LIKE concat('%',#{query.nickNameOrPhone},'%')
@@ -302,6 +304,7 @@
  			<if test="loginDate != null">login_date = #{loginDate},</if>
  			<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
  			<if test="remark != null">remark = #{remark},</if>
+ 			<if test="disableRemark != null">disableRemark = #{disableRemark},</if>
  			update_time = sysdate()
  		</set>
  		where user_id = #{userId}
@@ -317,13 +320,6 @@
 	
 	<update id="resetUserPwd" parameterType="SysUser">
  		update sys_user set password = #{password} where user_name = #{userName}
-	</update>
-    <update id="updateUserIfBlack">
-		update sys_user set ifBlack = 0,safetyPoints = 12,update_time = sysdate()
-		where user_id IN
-		<foreach collection="ids" separator="," item="userId" open="(" close=")">
-			#{userId}
-		</foreach>
 	</update>
 	<update id="updatePassword">
 		update sys_user set password = #{s} where user_id = #{id}
diff --git a/ruoyi-system/src/main/resources/mapper/system/TOrderMealMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TOrderMealMapper.xml
index ed0a447..9f8e667 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TOrderMealMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TOrderMealMapper.xml
@@ -46,7 +46,7 @@
             <if test="query.status != null">
                 and tom.status = #{query.status}
             </if>
-            <if test="query.orderNum != null and query.orderNum">
+            <if test="query.orderNum != null and query.orderNum != ''">
                 and tom.orderNum LIKE concat('%',#{query.status},'%')
             </if>
             <if test="query.shopId != null">
diff --git a/ruoyi-system/src/main/resources/mapper/system/TOrderSaleGoodsMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TOrderSaleGoodsMapper.xml
index 32372d2..8e959bb 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TOrderSaleGoodsMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TOrderSaleGoodsMapper.xml
@@ -11,15 +11,14 @@
         <result column="goodsCostPrice" property="goodsCostPrice" />
         <result column="goodsSalePrice" property="goodsSalePrice" />
         <result column="goodsCount" property="goodsCount" />
-        <result column="salePrice" property="salePrice" />
+        <result column="thisSalePrice" property="thisSalePrice" />
         <result column="goodsPicture" property="goodsPicture" />
-        <result column="typeName" property="typeName" />
         <result column="typeId" property="typeId" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, orderId, goodsNum, goodsName, goodsCostPrice, goodsSalePrice, goodsCount, salePrice, goodsPicture,typeName,typeId
+        id, orderId, goodsNum, goodsName, goodsCostPrice, goodsSalePrice, goodsCount, thisSalePrice, goodsPicture,typeId
     </sql>
     <select id="costTotal" resultType="java.math.BigDecimal">
         select sum(goodsCostPrice) from t_order_meal_goods
diff --git a/ruoyi-system/src/main/resources/mapper/system/TOrderStockGoodsMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TOrderStockGoodsMapper.xml
index a3f11fa..6fc85ec 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TOrderStockGoodsMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TOrderStockGoodsMapper.xml
@@ -12,11 +12,12 @@
         <result column="salePrice" property="salePrice" />
         <result column="goodsPicture" property="goodsPicture" />
         <result column="stockCount" property="stockCount" />
+        <result column="thisSalePrice" property="thisSalePrice" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, orderId, goodsNum, goodsName, costPrice, salePrice, goodsPicture, stockCount
+        id, orderId, goodsNum, goodsName, costPrice, salePrice, goodsPicture, stockCount,thisSalePrice
     </sql>
 
 </mapper>

--
Gitblit v1.7.1