diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java index 01f27c50..027cc719 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java @@ -141,8 +141,41 @@ public class OrderController extends BaseController { @PostMapping("/sys/order") @ResponseBody public AjaxResult sysOrder(@RequestBody SysOrderAssignRequest request) { + String goodsBrand = request.getGoodsBrand(); + Long deptId = getSysUser().getDeptId(); + + ArrayList goodList = new ArrayList<>(); + // 新增商品 -- 商品不关联师傅,状态为不展示在商城页面 + for (OrderTemplateGoods good : request.getGoods()) { + List dgcIds = good.getDeptGoodsCategoryIds(); + List dgcNames = good.getDeptGoodsCategoryNames(); + // 商品的4级类要完整 + Assert.isTrue(dgcIds != null && dgcIds.size() == 4, "商品类型不正确"); + Goods goods = new Goods(); + goods.setDeptId(deptId); + goods.setGoodsName(goodsBrand + ' ' + good.getGoodsName()); + goods.setGoodsImgUrl(request.getImageUrl()); + goods.setGoodsVideoUrl(request.getVideoUrl()); + goods.setDeptGoodsCategoryId(dgcIds.get(2)); + goods.setDeptGoodsCategoryName(dgcNames.get(2)); + goods.setStatus(1); + goodList.add(goods); + + GoodsStandard standard = new GoodsStandard(); + standard.setGoodsStandardName(good.getGoodsName()); + standard.setDeptGoodsCategoryId(dgcIds.get(3)); + standard.setGoodsCategoryName(dgcNames.get(3)); + + goodsService.insertGoods(goods); + } + + List appGoodsList = goodList.stream().map(x -> { + AppGoodsRequest agr = new AppGoodsRequest(); + + return agr; + }).collect(Collectors.toList()); + BigDecimal totalPay = goodsService.calculate(appGoodsList); try { - // 新增商品 -- 商品不关联师傅,状态为不展示在商城页面 // 选择消费者(消费者类型为渠道商、不需要) -- diff --git a/ghy-order/src/main/java/com/ghy/order/domain/OrderTemplateGoods.java b/ghy-order/src/main/java/com/ghy/order/domain/OrderTemplateGoods.java index c5b22ee8..e0802a90 100644 --- a/ghy-order/src/main/java/com/ghy/order/domain/OrderTemplateGoods.java +++ b/ghy-order/src/main/java/com/ghy/order/domain/OrderTemplateGoods.java @@ -2,6 +2,8 @@ package com.ghy.order.domain; import lombok.Data; +import java.util.List; + @Data public class OrderTemplateGoods { @@ -11,8 +13,14 @@ public class OrderTemplateGoods { private Long goodsId; // 商品名称 private String goodsName; - // 商品类型ID(第三层) + // 商品类型ID(第四层) private Long deptGoodsCategoryId; + // 商品类型(第四层) + private String deptGoodsCategoryName; + // 四层商品类型ID + private List deptGoodsCategoryIds; + // 四层商品类型 + private List deptGoodsCategoryNames; // 商品数量 private Long number; } diff --git a/ghy-order/src/main/java/com/ghy/order/request/SysOrderAssignRequest.java b/ghy-order/src/main/java/com/ghy/order/request/SysOrderAssignRequest.java index 67adbe03..d60ea590 100644 --- a/ghy-order/src/main/java/com/ghy/order/request/SysOrderAssignRequest.java +++ b/ghy-order/src/main/java/com/ghy/order/request/SysOrderAssignRequest.java @@ -1,10 +1,24 @@ package com.ghy.order.request; +import com.ghy.order.domain.OrderTemplateGoods; import lombok.Data; +import java.util.List; + @Data public class SysOrderAssignRequest { + // 商品 + private List goods; + + // 商品品牌 + private String goodsBrand; + + // 视频 + private String videoUrl; + // 图片 + private String imageUrl; + // 商品相关信息 private Long goodsDeptCategoryId;