From 9ca97fd558700e7054c5f54192a9db7a1e6b8230 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 11 九月 2024 16:31:47 +0800 Subject: [PATCH] 完善导出等接口 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderMealController.java | 49 +++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 41 insertions(+), 8 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderMealController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderMealController.java index 6d22d99..8a529dd 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderMealController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOrderMealController.java @@ -9,13 +9,14 @@ import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.WebUtils; import com.ruoyi.framework.web.service.TokenService; +import com.ruoyi.system.domain.TGoodsType; import com.ruoyi.system.domain.TOrderMeal; import com.ruoyi.system.domain.TOrderMealGoods; -import com.ruoyi.system.dto.AddDishDTO; import com.ruoyi.system.dto.CheckoutDTO; import com.ruoyi.system.dto.TOrderMealDTO; import com.ruoyi.system.export.TOrderMealExportExcel; import com.ruoyi.system.query.TOrderMealQuery; +import com.ruoyi.system.service.TGoodsTypeService; import com.ruoyi.system.service.TOrderMealGoodsService; import com.ruoyi.system.service.TOrderMealService; import com.ruoyi.system.vo.AmountSumVO; @@ -25,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; /** @@ -51,12 +55,14 @@ private final TOrderMealService orderMealService; private final TOrderMealGoodsService orderMealGoodsService; + private final TGoodsTypeService goodsTypeService; private final TokenService tokenService; @Autowired - public TOrderMealController(TOrderMealService orderMealService, TOrderMealGoodsService orderMealGoodsService, TokenService tokenService) { + public TOrderMealController(TOrderMealService orderMealService, TOrderMealGoodsService orderMealGoodsService, TGoodsTypeService goodsTypeService, TokenService tokenService) { this.orderMealService = orderMealService; this.orderMealGoodsService = orderMealGoodsService; + this.goodsTypeService = goodsTypeService; this.tokenService = tokenService; } @@ -88,8 +94,35 @@ 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); + } + + @ApiOperation( value = "修改") + @PostMapping(value = "/update") + public AjaxResult<String> update(@RequestBody TOrderMealDTO dto) { + // 删除所有菜品 + orderMealGoodsService.remove(Wrappers.lambdaQuery(TOrderMealGoods.class) + .eq(TOrderMealGoods::getOrderId, dto.getId())); + orderMealService.updateById(dto); + for (TOrderMealGoods mealOrderGood : dto.getMealOrderGoods()) { + // 设置商品类型和类型id + TGoodsType goodsType = goodsTypeService.getById(mealOrderGood.getTypeId()); + mealOrderGood.setId(null); + mealOrderGood.setOrderId(dto.getId()); + mealOrderGood.setTypeId(goodsType.getId()); + mealOrderGood.setTypeName(goodsType.getTypeName()); + } + orderMealGoodsService.saveBatch(dto.getMealOrderGoods()); + return AjaxResult.success(); } @ApiOperation( value = "删除餐饮订单") @@ -121,12 +154,12 @@ return AjaxResult.success(dto.getId()); } - @ApiOperation( value = "加菜接口") - @PostMapping(value = "/addDish") - public AjaxResult<String> addDish(@Validated @RequestBody AddDishDTO dto) { - orderMealService.addDish(dto); - return AjaxResult.success(); - } +// @ApiOperation( value = "加菜接口") +// @PostMapping(value = "/addDish") +// public AjaxResult<String> addDish(@Validated @RequestBody AddDishDTO dto) { +// orderMealService.addDish(dto); +// return AjaxResult.success(); +// } @ApiOperation( value = "结账接口") @PostMapping(value = "/checkout") -- Gitblit v1.7.1