فهرست منبع

二维码订单

gongfuzhu 1 سال پیش
والد
کامیت
46c4a60261

+ 58 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/OrderController.java

@@ -1,5 +1,6 @@
 package com.zswl.cloud.springBtach.server.core.controller;
 
+import cn.hutool.json.JSONObject;
 import com.github.microservice.auth.client.constant.AuthConstant;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
@@ -10,10 +11,14 @@ import com.zhongshu.payment.client.model.order.AdminSeachOrderModel;
 import com.zhongshu.payment.client.model.order.OrderResultModel;
 import com.zhongshu.payment.client.model.order.ScanModel;
 import com.zhongshu.payment.client.model.order.UserSeachOrderModel;
+import com.zhongshu.payment.client.model.order.v2.CreateOrder2Model;
 import com.zhongshu.payment.client.model.order.v2.OrderResult2Model;
 import com.zhongshu.payment.client.model.order.v2.UserSeachOrder2Model;
 import com.zhongshu.payment.client.model.payment.CreateResponseModel;
 import com.zhongshu.payment.client.service.v2.OrderService2;
+import com.zhongshu.payment.client.type.JobFlowMap;
+import com.zhongshu.payment.client.type.TransferOwner;
+import com.zhongshu.payment.client.type.TransferType;
 import com.zswl.cloud.springBtach.server.core.service.OrderServiceImp;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.log4j.Log4j2;
@@ -26,6 +31,8 @@ import org.springframework.util.Assert;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
+import java.math.BigDecimal;
+import java.util.List;
 
 @Log4j2
 @RestController
@@ -49,6 +56,57 @@ public class OrderController {
     }
 
 
+    @ApiOperation("创建扫码订单")
+    @ResourceAuth(value = "user", type = AuthType.User)
+    @RequestMapping(value = "creatScanOrder", method = RequestMethod.POST)
+    public ResultContent<CreateResponseModel> creatScanOrder(@Valid @RequestBody ScanModel scanModel){
+
+        String userId = authHelper.getCurrentUser().getUserId();
+
+        // 订单信息
+        CreateOrder2Model createOrder2Model = new CreateOrder2Model();
+        createOrder2Model.setShopId(scanModel.getShopId());
+        createOrder2Model.setUserId(userId);
+        // todo 店铺信息
+        createOrder2Model.setShopInfo(new JSONObject());
+        createOrder2Model.setTotalAmount(scanModel.getPrice());
+        createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
+        createOrder2Model.setPayAmount(scanModel.getPrice());
+
+
+        // 商品信息
+        CreateOrder2Model.Goods goods = new CreateOrder2Model.Goods();
+        goods.setGoodsId("二维码");
+        goods.setJobFlowMap(JobFlowMap.Pcod);
+        goods.setPayAmount(scanModel.getPrice());
+        goods.setTransferType(TransferType.RATIO);
+
+
+        goods.setGoodsInfo(new JSONObject().set("goodsName","二维码商品"));
+
+        // todo 店铺分账规则
+        // 平台分账
+        CreateOrder2Model.Owner plat = new CreateOrder2Model.Owner();
+        plat.setOwner(TransferOwner.PLATFORM);
+        plat.setValue(BigDecimal.ZERO);
+
+        // 商品数据
+        CreateOrder2Model.Owner shop = new CreateOrder2Model.Owner();
+        shop.setOwner(TransferOwner.BUY_SHOP);
+        shop.setValue(BigDecimal.valueOf(100));
+        shop.setShopId(createOrder2Model.getShopId());
+
+        goods.setTransferRrule(List.of(plat,shop));
+        goods.setExtend(scanModel.getExtend());
+        createOrder2Model.setGoodsList(List.of(goods));
+
+
+        createOrder2Model.setGoodsList(List.of(goods));
+
+       return orderServiceImp.creat(createOrder2Model);
+    }
+
+
     @ApiOperation("商家验券")
     @ResourceAuth(value = "checkCoupon", type = AuthType.Enterprise)
     @ResourceAuth(value = "checkCoupon", type = AuthType.Project)