From 80206642e27a501ab2f2725d4104c7579698793d Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期六, 31 八月 2024 17:51:23 +0800 Subject: [PATCH] 商家后台接口,管理后台接口补充 --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDataGeneratorServiceImpl.java | 55 +++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 37 insertions(+), 18 deletions(-) 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 d3b6229..b1e5abd 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,21 +4,19 @@ 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; import com.ruoyi.common.utils.CodeGenerateUtils; -import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.domain.*; -import com.ruoyi.system.dto.*; +import com.ruoyi.system.dto.OrderMealGeneratorCountDTO; +import com.ruoyi.system.dto.OrderMealGeneratorDTO; +import com.ruoyi.system.dto.OrderSaleGeneratorDTO; import com.ruoyi.system.mapper.TDataGeneratorMapper; import com.ruoyi.system.query.TDataGeneratorQuery; import com.ruoyi.system.service.*; -import com.ruoyi.system.vo.SysUserVO; import com.ruoyi.system.vo.TDataGeneratorVO; import com.ruoyi.system.vo.TFoundationConfigVO; -import org.apache.poi.ss.formula.functions.T; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -58,16 +56,18 @@ @Autowired private TOrderStockGoodsService orderStockGoodsService; @Autowired - private TokenService tokenService; - @Autowired private TStockDataSetService stockDataSetService; + @Autowired + private TGoodsTypeService goodsTypeService; + @Autowired + private RedisCache redisCache; @Override public void mealDataGenerator(OrderMealGeneratorDTO dto) { // 存储数据生成数据 TDataGenerator dataGenerator = new TDataGenerator(); - dataGenerator.setUserId(tokenService.getLoginUser().getUserId()); - dataGenerator.setUserName(tokenService.getLoginUser().getNickName()); + dataGenerator.setUserId(dto.getUserId()); + dataGenerator.setUserName(dto.getNickName()); dataGenerator.setShopId(dataGenerator.getShopId()); dataGenerator.setStartTime(dto.getStartTime()); dataGenerator.setEndTime(dto.getEndTime()); @@ -187,14 +187,25 @@ allOrderMeals.addAll(otherOrderMeals); allOrderMeals.forEach(e->{ e.setIsCover(0); + e.setShopId(dataGenerator.getShopId()); e.setGeneratorId(dataGenerator.getId()); }); + + // 判断是否进行了终止操作 + if(redisCache.hasKey(OrderNumConstants.MEAL+"_"+dto.getShopId())){ + redisCache.deleteObject(OrderNumConstants.MEAL+"_"+dto.getShopId()); + return; + } + orderMealService.saveBatch(allOrderMeals); for (TOrderMeal orderMeal : allOrderMeals) { orderMeal.getMealOrderGoods().forEach(e->e.setOrderId(orderMeal.getId())); } - orderMealGoodsService.saveBatch(allOrderMeals.stream().map(TOrderMeal::getMealOrderGoods).flatMap(Collection::stream).collect(Collectors.toList())); + List<TGoodsType> list = goodsTypeService.list(); + List<TOrderMealGoods> collect = allOrderMeals.stream().map(TOrderMeal::getMealOrderGoods).flatMap(Collection::stream).collect(Collectors.toList()); + collect.forEach(e->e.setTypeName(list.stream().filter(m->m.getId().equals(e.getTypeId())).findFirst().get().getTypeName())); + orderMealGoodsService.saveBatch(collect); // 存储 long end = System.currentTimeMillis() - start; System.err.println("相差时间========="+end); @@ -218,8 +229,8 @@ .last("limit 1")); // 存储数据生成数据 TDataGenerator dataGenerator = new TDataGenerator(); - dataGenerator.setUserId(tokenService.getLoginUser().getUserId()); - dataGenerator.setUserName(tokenService.getLoginUser().getNickName()); + dataGenerator.setUserId(dto.getUserId()); + dataGenerator.setUserName(dto.getNickName()); dataGenerator.setShopId(dataGenerator.getShopId()); dataGenerator.setStartTime(dto.getStartTime()); dataGenerator.setEndTime(dto.getEndTime()); @@ -234,12 +245,7 @@ // 添加销售订单数 List<TOrderSale> orderSales = dto.getOrderSales(); - orderSaleService.saveBatch(orderSales); - for (TOrderSale orderSale : orderSales) { - orderSale.getOrderSaleGoods().forEach(e->e.setOrderId(orderSale.getId())); - } List<TOrderSaleGoods> orderSaleGoods = orderSales.stream().map(TOrderSale::getOrderSaleGoods).flatMap(Collection::stream).collect(Collectors.toList()); - orderSaleGoodsService.saveBatch(orderSaleGoods); // 生成进货数据 List<TOrderStock> stockList = new ArrayList<>(); @@ -367,6 +373,11 @@ stockList.add(orderStock); } } + // 判断是否进行了终止操作 + if(redisCache.hasKey(OrderNumConstants.STOCK+"_"+dto.getShopId())){ + redisCache.deleteObject(OrderNumConstants.STOCK+"_"+dto.getShopId()); + return; + } // 删除上一次的数据生成 TOrderStock orderStock = orderStockService.getOne(Wrappers.lambdaQuery(TOrderStock.class) .eq(TOrderStock::getShopId, dto.getShopId()) @@ -375,7 +386,15 @@ if(Objects.nonNull(orderStock)){ orderStockService.removeById(orderStock); } + orderSaleService.saveBatch(orderSales); + for (TOrderSale orderSale : orderSales) { + 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())); + orderSaleGoodsService.saveBatch(orderSaleGoods); // 添加数据 + stockList.forEach(e->e.setShopId(dataGenerator.getShopId())); orderStockService.saveBatch(stockList); for (TOrderStock stock : stockList) { stock.getOrderStockGoods().forEach(e->e.setOrderId(stock.getId())); -- Gitblit v1.7.1