36 次代码提交 f28c2de9b4 ... c8cb61b473

作者 SHA1 备注 提交日期
  gongfuzhu c8cb61b473 优化店铺订单查询 6 月之前
  gongfuzhu cc6be14d9a fix 分页问题 7 月之前
  gongfuzhu c059d82b72 提现优化 7 月之前
  gongfuzhu ec4c9afdcb 提现修改 7 月之前
  gongfuzhu 751d911518 秋香代驾查询状态 7 月之前
  gongfuzhu e68dba746b 权限调整 7 月之前
  gongfuzhu 725d497c40 明细 7 月之前
  gongfuzhu b86e457aaf 参数 7 月之前
  gongfuzhu 186da042b5 参数 7 月之前
  gongfuzhu a8ea40b76a paotui 7 月之前
  gongfuzhu c716ca4d97 从body 去code 7 月之前
  gongfuzhu 18d27b011c 库存处理 7 月之前
  gongfuzhu fb2da8ac6f 处理异常 7 月之前
  gongfuzhu 5e89cfe159 code 在body 7 月之前
  gongfuzhu 6b7b5387a6 按平台查询 8 月之前
  gongfuzhu 84f2579983 按平台查询 8 月之前
  gongfuzhu 86eab3c448 分账信息调整 8 月之前
  gongfuzhu ca05ee6c90 平台调整 8 月之前
  gongfuzhu 3c47fc64b0 分账账户调整 8 月之前
  gongfuzhu 8935555b81 体现列表 8 月之前
  gongfuzhu b368dd638a 平台价格计算 8 月之前
  gongfuzhu 1d19acf711 平台价格计算 8 月之前
  gongfuzhu 65693a9303 平台价格计算 8 月之前
  gongfuzhu be04963c4b 去掉code 8 月之前
  gongfuzhu 7bc4711d0b 添加父级id 8 月之前
  gongfuzhu 7cd65b257c 8 月之前
  gongfuzhu cfde671bbc 数据分离版本 8 月之前
  gongfuzhu f28c2de9b4 代码回滚 8 月之前
  gongfuzhu 548bc9fa77 Merge remote-tracking branch 'origin/master' 8 月之前
  gongfuzhu a94cfe8109 代码回滚 8 月之前
  gongfuzhu 75329bad96 Revert "优化商品超时时间和添加商品图片和链接信息" 8 月之前
  gongfuzhu 70e63c0153 Revert "channel 跟改为code,区分订单状态和商品状态" 8 月之前
  gongfuzhu b373e617ed Revert "数据隔离" 8 月之前
  gongfuzhu 7e6ce2ac3d Revert "数据隔离" 8 月之前
  gongfuzhu e76be48e6e Revert "fix" 8 月之前
  gongfuzhu 2362200ed9 Revert "." 8 月之前
共有 67 个文件被更改,包括 1082 次插入131 次删除
  1. 2 1
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/dfy/DfyBaseData.java
  2. 0 4
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/dfy/Hotel/request/AddOrderRequest.java
  3. 2 5
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/dfy/Ticket/request/CreateOrderNewRequest.java
  4. 2 6
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/qiuxiang/OrderRequest.java
  5. 2 1
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/recharge/RechargeCreateModel.java
  6. 2 3
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/request/XiaoJuQueryNewOrderModel.java
  7. 3 1
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/video2/RechargeRequest.java
  8. 2 3
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/ypp/kfc/request/CreateOrdereRquest.java
  9. 2 2
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/ypp/movie/request/CreateOrder2Request.java
  10. 0 8
      SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/service/Video2Service.java
  11. 3 1
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/dfy/TicketApi.java
  12. 150 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/PaoTuiApi.java
  13. 5 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/Base.java
  14. 55 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/AddOrderRequest.java
  15. 33 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/CancelOrderRequest.java
  16. 32 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/DeliveryCpriceRequest.java
  17. 26 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/DeliveryPriceRequest.java
  18. 15 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/OrderDetailRequest.java
  19. 36 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/OrderQueryRequest.java
  20. 14 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/OrderTipRequest.java
  21. 74 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/RiderInfoResponse.java
  22. 15 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/ShopQueryRequest.java
  23. 38 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/StoreAddRequest.java
  24. 34 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/UpdateShopRequest.java
  25. 13 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/CancelOrderResponse.java
  26. 57 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/DeliveryLocationResponse.java
  27. 33 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/DeliveryPriceResponse.java
  28. 55 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderDetailResponse.java
  29. 57 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderQueryResponse.java
  30. 43 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderResponse.java
  31. 48 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderStatusResponse.java
  32. 30 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderTipResponse.java
  33. 40 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/StoreQueryResponse.java
  34. 3 1
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/DfyHotelController.java
  35. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/DfyTicketController.java
  36. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/KfcController.java
  37. 21 17
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/OrderController.java
  38. 18 12
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/PaymentController.java
  39. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/QiuXiangController.java
  40. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/RechargeController.java
  41. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/StudyOrderController.java
  42. 4 1
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/Video2Controller.java
  43. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/XiaoJuController.java
  44. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/YppController.java
  45. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/standard/StandarDeliveryJob.java
  46. 9 5
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/standard/StandarOrderJob.java
  47. 1 1
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/video/VideoOrderJob.java
  48. 0 4
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/ypp/YppDeliveryJob.java
  49. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/CinemaPublish.java
  50. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/ComingMoviePublish.java
  51. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/HotelPublish.java
  52. 2 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/KfcPublish.java
  53. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/MoviePublish.java
  54. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/PetrolStationPublish.java
  55. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/TicketPublish.java
  56. 1 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/Video2Publish.java
  57. 24 15
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/PaymentService.java
  58. 2 2
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/YppService.java
  59. 4 6
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/DfyHotelServiceImpl.java
  60. 4 7
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/DfyTicketServiceImpl.java
  61. 4 2
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/KfcServiceImpl.java
  62. 2 2
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/QiuXiangServiceImpl.java
  63. 2 2
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/RechargeServiceImpl.java
  64. 6 6
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/Video2ServiceImpl.java
  65. 7 12
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/XiaoJuServiceImpl.java
  66. 23 0
      SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/task/TaskLogic.java
  67. 1 1
      SpringBatchServiceServer/src/test/java/com/zswl/cloud/springBtach/server/boot/ServerApplicationTests.java

+ 2 - 1
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/dfy/DfyBaseData.java

@@ -1,9 +1,10 @@
 package com.zswl.cloud.springBatch.client.model.dfy;
 
+import com.zhongshu.payment.client.model.Code;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 
 @Data
 @AllArgsConstructor
-public class DfyBaseData {
+public class DfyBaseData extends Code {
 }

+ 0 - 4
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/dfy/Hotel/request/AddOrderRequest.java

@@ -1,13 +1,11 @@
 package com.zswl.cloud.springBatch.client.model.dfy.Hotel.request;
 
-import com.zhongshu.payment.client.type.Channel;
 import com.zswl.cloud.springBatch.client.model.dfy.DfyBaseData;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import javax.validation.constraints.NotNull;
-import java.math.BigDecimal;
 import java.util.List;
 
 @Data
@@ -15,8 +13,6 @@ import java.util.List;
 @AllArgsConstructor
 public class AddOrderRequest extends DfyBaseData {
 
-    @NotNull
-    private Channel channel;
     private String sourceOrderId; // 分销商订单号
     private String acctId; // 账号Id
     @NotNull

+ 2 - 5
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/dfy/Ticket/request/CreateOrderNewRequest.java

@@ -1,7 +1,7 @@
 package com.zswl.cloud.springBatch.client.model.dfy.Ticket.request;
 
 
-import com.zhongshu.payment.client.type.Channel;
+import com.zhongshu.payment.client.model.Code;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Data;
@@ -13,15 +13,12 @@ import java.util.List;
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
-public class CreateOrderNewRequest {
+public class CreateOrderNewRequest extends Code {
 
     @ApiModelProperty(required = true)
     @NotNull
     private String epId;
 
-    @ApiModelProperty(required = true)
-    @NotNull
-    private Channel channel;
     // 分销商订单号,非空时,可防止重复下单。若重复下单,则返回之前已生成的orderId,且isNewFlag=0。
     @ApiModelProperty(hidden = true)
     private String sourceOrderId;

+ 2 - 6
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/qiuxiang/OrderRequest.java

@@ -1,18 +1,14 @@
 package com.zswl.cloud.springBatch.client.model.qiuxiang;
 
-import com.zhongshu.payment.client.type.Channel;
+import com.zhongshu.payment.client.model.Code;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
-import javax.validation.constraints.NotNull;
-
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
-public class OrderRequest {
-    @NotNull
-    private Channel channel;
+public class OrderRequest extends Code {
     private String adcode;
     private String originName;
     private String originLocation;

+ 2 - 1
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/recharge/RechargeCreateModel.java

@@ -1,6 +1,7 @@
 package com.zswl.cloud.springBatch.client.model.recharge;
 
 import cn.hutool.json.JSONObject;
+import com.zhongshu.payment.client.model.Code;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
@@ -10,7 +11,7 @@ import java.math.BigDecimal;
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
-public class RechargeCreateModel {
+public class RechargeCreateModel extends Code {
     String sign;
     String phone;
     String shopName;

+ 2 - 3
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/request/XiaoJuQueryNewOrderModel.java

@@ -2,6 +2,7 @@ package com.zswl.cloud.springBatch.client.model.request;
 
 import com.xiaoju.open.oil.interfaces.domain.AllowanceInfo;
 import com.xiaoju.open.oil.interfaces.domain.ItemPriceInfoForCallback;
+import com.zhongshu.payment.client.model.Code;
 import com.zhongshu.payment.client.type.Channel;
 import lombok.AllArgsConstructor;
 import lombok.Data;
@@ -13,7 +14,7 @@ import java.util.List;
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
-public class XiaoJuQueryNewOrderModel {
+public class XiaoJuQueryNewOrderModel extends Code {
 
     @NotNull
     private String epId;
@@ -32,6 +33,4 @@ public class XiaoJuQueryNewOrderModel {
     private String openExtra;
     private String outNewUserFlag;
     private List<AllowanceInfo> promotionInfo;
-    @NotNull
-    private Channel channel;
 }

+ 3 - 1
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/video2/RechargeRequest.java

@@ -1,5 +1,6 @@
 package com.zswl.cloud.springBatch.client.model.video2;
 
+import com.zhongshu.payment.client.model.Code;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Data;
@@ -10,7 +11,7 @@ import javax.validation.constraints.NotNull;
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
-public class RechargeRequest {
+public class RechargeRequest extends Code {
 
     @NotNull
     @ApiModelProperty(value = "商品编码", required = true)
@@ -33,4 +34,5 @@ public class RechargeRequest {
     @NotNull
     @ApiModelProperty(value = "用户ID", required = true)
     private String userId;
+
 }

+ 2 - 3
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/ypp/kfc/request/CreateOrdereRquest.java

@@ -1,5 +1,6 @@
 package com.zswl.cloud.springBatch.client.model.ypp.kfc.request;
 
+import com.zhongshu.payment.client.model.Code;
 import com.zhongshu.payment.client.type.Channel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
@@ -14,9 +15,7 @@ import java.util.List;
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
-public class CreateOrdereRquest {
-
-    private Channel channel;
+public class CreateOrdereRquest extends Code {
 
     private String shopName;
 

+ 2 - 2
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/model/ypp/movie/request/CreateOrder2Request.java

@@ -1,5 +1,6 @@
 package com.zswl.cloud.springBatch.client.model.ypp.movie.request;
 
+import com.zhongshu.payment.client.model.Code;
 import com.zhongshu.payment.client.type.Channel;
 import lombok.AllArgsConstructor;
 import lombok.Data;
@@ -13,9 +14,8 @@ import java.time.OffsetDateTime;
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
-public class CreateOrder2Request {
+public class CreateOrder2Request extends Code {
 
-    private Channel channel;
     /**
      * 有票票分配的appId
      */

+ 0 - 8
SpringBatchServiceClient/src/main/java/com/zswl/cloud/springBatch/client/service/Video2Service.java

@@ -2,21 +2,13 @@ package com.zswl.cloud.springBatch.client.service;
 
 
 import com.github.microservice.auth.client.content.ResultContent;
-import com.zhongshu.payment.client.model.order.v2.CreatOrderResultModel;
-import com.zswl.cloud.springBatch.client.model.request.XiaoJuQueryUserPromotionListModel;
 import com.zswl.cloud.springBatch.client.model.video2.RechargeRequest;
-import com.zswl.cloud.springBatch.client.model.xiaoju.QueryApiStorePriceRequest;
-import com.zswl.cloud.springBatch.client.model.xiaoju.QueryGetPromotionRequest;
-import com.zswl.cloud.springBatch.client.model.xiaoju.QueryUserPromotionListResponse;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.http.MediaType;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
-
-import java.util.Map;
 
 @FeignClient(name = "springbatchservice/manager/video2")
 public interface Video2Service {

+ 3 - 1
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/dfy/TicketApi.java

@@ -126,7 +126,9 @@ public class TicketApi {
         DfyRequestBase dfyRequestBase = new DfyRequestBase(dfyBaseData);
 
         dfyRequestBase.setApiKey(apiKey);
-        String signature = Signature.getSignature(JSONUtil.parseObj(dfyRequestBase), secretKey);
+        JSONObject entries1 = JSONUtil.parseObj(dfyRequestBase);
+        entries1.getJSONObject("data").remove("code");
+        String signature = Signature.getSignature(entries1, secretKey);
         dfyRequestBase.setSign(signature);
 
         String post = HttpUtil.post(host + url, JSONUtil.toJsonStr(dfyRequestBase));

+ 150 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/PaoTuiApi.java

@@ -0,0 +1,150 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui;
+
+import cn.hutool.crypto.digest.DigestUtil;
+import cn.hutool.http.HttpUtil;
+import cn.hutool.json.JSONObject;
+import cn.hutool.json.JSONUtil;
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.*;
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.request.*;
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.response.*;
+import org.springframework.stereotype.Component;
+
+import java.time.Instant;
+import java.util.List;
+import java.util.Map;
+import java.util.TreeMap;
+
+@Component
+public class PaoTuiApi {
+
+    private static String host = "http://open.test.maiyatian.com/";
+    private static String appSecret = "294c1a4d223d566b58358baf1000052";
+    private static String appKey = "984428";
+
+    // 添加店铺
+    public String shopAdd(StoreAddRequest storeInfoModel) {
+
+        JSONObject data = JSONUtil.parseObj(httpPost(storeInfoModel, "shop/add/"));
+        Object shopId = data.get("shop_id");
+        return String.valueOf(shopId);
+    }
+
+    // 更新店铺
+    public String shopUpdate(UpdateShopRequest updateShopModel) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(updateShopModel, "shop/update/"));
+        return String.valueOf(entries);
+    }
+
+    public List<StoreQueryResponse> shopQuery(ShopQueryRequest shopQueryRequest) {
+        String s = httpPost(shopQueryRequest, "shop/query/");
+        return JSONUtil.toList(s, StoreQueryResponse.class);
+    }
+
+    // 说明:传入订单相关参数进行订单配送下单
+    public OrderResponse addOrder(AddOrderRequest orderRequestModel) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(orderRequestModel, "order/add/"));
+        OrderResponse orderResponseModel = JSONUtil.toBean(entries, OrderResponse.class);
+        return orderResponseModel;
+    }
+
+    // 说明:查询当前门店该时间段配送到收货地址所需要的预估费用(⚠️注意:先同步创建门店)
+    public DeliveryPriceResponse deliveryPrice(DeliveryPriceRequest deliveryPriceRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(deliveryPriceRequest, "order/price/"));
+        DeliveryPriceResponse orderResponseModel = JSONUtil.toBean(entries, DeliveryPriceResponse.class);
+        return orderResponseModel;
+    }
+
+    // 可调用此接口对订单调度,即添加小费功能,用于加快订单接单,提升接单率。
+    //⚠️注意:小费添加是以最新请求金额为最终小费的金额,不是累加
+    public OrderTipResponse orderTip(OrderTipRequest orderTipRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(orderTipRequest, "order/tip/"));
+        OrderTipResponse orderResponseModel = JSONUtil.toBean(entries, OrderTipResponse.class);
+        return orderResponseModel;
+    }
+
+    // 可调用此接口查询不同状态下的订单列表
+    public OrderQueryResponse orderQuery(OrderQueryRequest orderQueryRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(orderQueryRequest, "order/query/"));
+        OrderQueryResponse orderResponseModel = JSONUtil.toBean(entries, OrderQueryResponse.class);
+        return orderResponseModel;
+    }
+
+    // 可调用此接口查询订单以及骑手的相关信息
+    public OrderDetailResponse orderDetail(OrderDetailRequest orderDetailRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(orderDetailRequest, "order/detail/"));
+        OrderDetailResponse orderResponseModel = JSONUtil.toBean(entries, OrderDetailResponse.class);
+        return orderResponseModel;
+    }
+
+    // 可调用此接口对订单进行取消操作,如果在骑手接单后取消可能会收取违约金,麦芽田收取违约金是和配送方收取的违约金是等额的
+    public CancelOrderRequest orderCancel(CancelOrderRequest cancelOrderRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(cancelOrderRequest, "order/cancel/"));
+        CancelOrderRequest orderResponseModel = JSONUtil.toBean(entries, CancelOrderRequest.class);
+        return orderResponseModel;
+    }
+
+    // 此接口可获取到指定订单的状态信息,用来进行订单状态的查询。
+    public OrderStatusResponse deliveryRoute(OrderDetailRequest orderDetailRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(orderDetailRequest, "delivery/route/"));
+        OrderStatusResponse orderResponseModel = JSONUtil.toBean(entries, OrderStatusResponse.class);
+        return orderResponseModel;
+    }
+
+    // 此接口可获取到指定订单的状态信息,用来进行订单状态的查询。
+    public DeliveryLocationResponse deliveryLocation(OrderDetailRequest orderDetailRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(orderDetailRequest, "delivery/location/"));
+        DeliveryLocationResponse orderResponseModel = JSONUtil.toBean(entries, DeliveryLocationResponse.class);
+        return orderResponseModel;
+    }
+
+    // 说明:查询当前门店该时间段配送到收货地址所需要的预估费用(⚠️注意:这个场景适用于无门店的概念的用户呼叫跑腿进行取货配送的)
+    public DeliveryPriceResponse ordercPrice(DeliveryCpriceRequest deliveryCpriceRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(deliveryCpriceRequest, "order/cPrice"));
+        DeliveryPriceResponse orderResponseModel = JSONUtil.toBean(entries, DeliveryPriceResponse.class);
+        return orderResponseModel;
+    }
+
+    // 用于c端下单呼叫
+    public OrderResponse orderaddWithoutShop(AddOrderRequest addOrderRequest) {
+        JSONObject entries = JSONUtil.parseObj(httpPost(addOrderRequest, "order/addWithoutShop"));
+        OrderResponse orderResponseModel = JSONUtil.toBean(entries, OrderResponse.class);
+        return orderResponseModel;
+    }
+
+
+    private static String httpPost(Base base, String url) {
+
+        host += url;
+        Map<String, String> entries = new TreeMap<>();
+        entries.put("app_key", appKey);
+        entries.put("version", "1");
+        entries.put("timestamp", String.valueOf(Instant.now().getEpochSecond()));
+        entries.put("params", JSONUtil.toJsonStr(base));
+        String sin = generateSign(entries, appSecret);
+        entries.put("sign", sin);
+        String post = HttpUtil.post(host, JSONUtil.toJsonStr(entries));
+
+        JSONObject jsonObject = JSONUtil.parseObj(post);
+
+
+        return JSONUtil.toJsonStr(jsonObject.get("data"));
+    }
+
+    public static String generateSign(Map<String, String> params, String appSecret) {
+        // 第一步:字典排序已经由 TreeMap 自动完成
+        StringBuilder stringBuilder = new StringBuilder();
+
+        // 第二步:拼接键值对
+        for (Map.Entry<String, String> entry : params.entrySet()) {
+            stringBuilder.append(entry.getKey()).append(entry.getValue());
+        }
+        // 第三步:首尾加上 app_secret
+        String signString = appSecret + stringBuilder.toString() + appSecret;
+
+        // 第四步:MD5 加密
+        String md5Hash = DigestUtil.md5Hex(signString);
+
+        // 第五步:转换为大写
+        return md5Hash != null ? md5Hash.toUpperCase() : null;
+    }
+}

+ 5 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/Base.java

@@ -0,0 +1,5 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model;
+
+
+public class Base {
+}

+ 55 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/AddOrderRequest.java

@@ -0,0 +1,55 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.hibernate.internal.build.AllowPrintStacktrace;
+
+import java.util.List;
+
+@Data
+@AllowPrintStacktrace
+@NoArgsConstructor
+public class AddOrderRequest extends Base {
+
+    private Integer dispatchMode = 1;          // 发单模式: 1.省钱 2.最快 3.指派 4.价格从低到高依次呼叫
+    private String logistic;                  // 指派模式配送方 (如: uupt 或 dada,uupt)
+    private String shopId;                    // 你方门店ID
+    private String originId;                  // 你方配送单号
+    private String orderSource;               // 订单来源
+    private String orderSourceNo;             // 订单来源单号(美团必传)
+    private String orderSn;                   // 订单流水号 (0~99999以内数字)
+    private Integer isSubscribe = 0;          // 是否预约单: 0 否, 1 是
+    private String subscribeType;             // 预约单类型: SEND/SHOP
+    private Integer subscribeTime = 0;        // 期望预约送达时间 (Unix时间戳)
+    private String receiverLongitude;         // 收件人经度
+    private String receiverLatitude;          // 收件人纬度
+    private String receiverAddress;           // 收件人地址
+    private String receiverAddressDetail;     // 收件人详细地址
+    private String receiverName;              // 收件人姓名
+    private String receiverPhone;             // 收件人手机号
+    private List<Goods> goods;                // 物品详细信息
+    private Integer goodsValue;               // 物品价值 (单位: 分)
+    private Integer goodsWeight;              // 物品重量 (单位: kg)
+    private Integer goodsCategory;            // 物品类型
+    private Integer mapType;                  // 坐标类型 (1: 高德, 2: 百度)
+    private String callbackUrl;               // 订单配送状态回调地址
+    private String orderRemark;               // 订单备注
+    private Integer returnPrice = 0;          // 是否返回运费信息: 0-不返回, 1-返回
+    private String dispatchOther = "0";       // 指派时兜底配送方 (如: uupt 或 dada,uupt)
+    private Integer delayDelivery = 0;        // 延迟发单 (分钟)
+    private Integer autoTips = 0;             // 是否开启自动加小费: 0 关闭, 1 开启
+    private Integer autoTipAmount = 0;        // 小费金额 (单位: 元)
+    private Integer preTipAmount = 0;         // 下单前加小费金额 (单位: 元)
+    private Integer maxDeliveryAmount = 0;    // 限制最大配送金额 (单位: 元)
+
+    @Data
+    @AllowPrintStacktrace
+    @NoArgsConstructor
+    public static class Goods {
+        private String name;                 // 物品名称
+        private Integer number;              // 物品数量
+        private Integer price;               // 物品单价 (单位: 分)
+        private Integer total;               // 物品总价 (单位: 分)
+    }
+}

+ 33 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/CancelOrderRequest.java

@@ -0,0 +1,33 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class CancelOrderRequest extends Base {
+
+    /**
+     * 我方订单号(与 originId 互斥必填)
+     */
+    private Integer orderId;
+
+    /**
+     * 你方订单号(与 orderId 互斥必填)
+     */
+    private String originId;
+
+    /**
+     * 取消原因代码
+     */
+    private Integer cancelReasonCode;
+
+    /**
+     * 取消原因描述(限制50字以内)
+     */
+    private String cancelReason;
+
+}

+ 32 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/DeliveryCpriceRequest.java

@@ -0,0 +1,32 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DeliveryCpriceRequest extends Base {
+
+    private String logistic; // 指派模式3: 平台,多个示例: dada, uupt
+    private String receiverLongitude; // 收件人经度
+    private String receiverLatitude; // 收件人纬度
+    private String receiverAddress; // 收件人地址
+    private String receiverName; // 收件人姓名 (非必传)
+    private String receiverPhone; // 收件人手机号 (非必传)
+    private String senderLongitude; // 发件人经度
+    private String senderLatitude; // 发件人纬度
+    private String senderAddress; // 发件人地址
+    private int city; // 城市编码
+    private String senderName; // 发件人姓名 (非必传)
+    private String senderPhone; // 发件人手机号 (非必传)
+    private Integer goodsValue; // 物品价格 [单位:分] (非必传)
+    private int goodsWeight; // 物品重量 [单位:kg]
+    private int goodsCategory; // 物品类型
+    private Integer deliveryTime; // 期望送达时间(秒级时间戳)(非必传)
+    private int mapType; // 坐标类型 (1: 高德, 2: 百度)
+    private Boolean needReturnError; // 是否包含配送方计价失败信息 (非必传)
+
+}

+ 26 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/DeliveryPriceRequest.java

@@ -0,0 +1,26 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.Data;
+
+@Data
+public class DeliveryPriceRequest extends Base {
+
+    private int dispatchMode;           // 发单模式: 1.省钱 2.最快 3.指派 4.价格从低到高依次呼叫
+    private String logistic;            // ⚠️指派模式3: 配送平台 示例:uupt 或 dada,uupt
+    private String shopId;              // 你方门店ID 示例: 99999
+    private String originId;            // 你方订单号 示例: 123456
+    private String receiverLongitude;   // 收件人经度 示例: 120.749981
+    private String receiverLatitude;    // 收件人纬度 示例: 32.099328
+    private String receiverAddress;     // 收件人地址 示例: x省x市x区x县x街道x楼x号
+    private String receiverName;        // 收件人姓名 示例: 张三
+    private String receiverPhone;       // 收件人手机号 示例: 18292225222
+    private Integer goodsValue;         // 物品价格 [单位: 分] 示例: 1000
+    private int goodsWeight;            // 物品重量 [单位: kg] 示例: 3
+    private int goodsCategory;          // 物品类型,详见物品类别枚举值
+    private Integer deliveryTime;       // 期望送达时间(秒级时间戳) 示例: 1665486622
+    private int mapType;                // 坐标类型:1.高德 2.百度
+    private String orderSource;         // 订单来源,详见订单来源枚举值
+    private Boolean needReturnError;    // 是否包含配送方计价失败信息 示例: true 或 false
+
+}

+ 15 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/OrderDetailRequest.java

@@ -0,0 +1,15 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class OrderDetailRequest extends Base {
+
+    private Integer orderId; // 我方订单号(可选,与originId互斥)
+    private String originId; // 你方订单号(可选,与orderId互斥)
+}

+ 36 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/OrderQueryRequest.java

@@ -0,0 +1,36 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class OrderQueryRequest extends Base {
+    /**
+     * 我方门店ID(和 originShopId 二选一)
+     */
+    private Integer shopId;
+
+    /**
+     * 你方门店ID(和 shopId 二选一)
+     */
+    private String originShopId;
+
+    /**
+     * 订单状态,不传时查询所有
+     */
+    private Integer status;
+
+    /**
+     * 起始值,默认 0
+     */
+    private Integer offset = 0;
+
+    /**
+     * 每页显示数量,最大 50,默认 20
+     */
+    private Integer count = 20;
+}

+ 14 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/OrderTipRequest.java

@@ -0,0 +1,14 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class OrderTipRequest extends Base {
+    private String originId; // 你方订单号(和orderId二选一)
+    private int tips;        // 调度费,单位:元(必须为整数)
+}

+ 74 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/RiderInfoResponse.java

@@ -0,0 +1,74 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import lombok.Data;
+
+@Data
+public class RiderInfoResponse {
+    /**
+     * 状态码,1 表示成功
+     */
+    private int code;
+
+    /**
+     * 消息说明
+     */
+    private String message;
+
+    /**
+     * 数据集
+     */
+    private RiderInfoData data;
+
+    @Data
+    public static class RiderInfoData {
+        /**
+         * 你方订单号
+         */
+        private String originId;
+
+        /**
+         * 我方订单号
+         */
+        private String orderId;
+
+        /**
+         * 订单状态
+         */
+        private int orderStatus;
+
+        /**
+         * 骑手 ID
+         */
+        private long riderId;
+
+        /**
+         * 配送员姓名
+         */
+        private String riderName;
+
+        /**
+         * 配送员手机号
+         */
+        private String riderPhone;
+
+        /**
+         * 坐标类型
+         */
+        private int mapType;
+
+        /**
+         * 配送员经度
+         */
+        private String riderLongitude;
+
+        /**
+         * 配送员纬度
+         */
+        private String riderLatitude;
+
+        /**
+         * 更新时间
+         */
+        private int uploadTime;
+    }
+}

+ 15 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/ShopQueryRequest.java

@@ -0,0 +1,15 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class ShopQueryRequest extends Base {
+    private Integer offset;
+
+    private Integer count;
+}

+ 38 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/StoreAddRequest.java

@@ -0,0 +1,38 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class StoreAddRequest extends Base {
+    
+    // 必传字段
+    private String originId; // 门店ID
+    private String name; // 门店名称
+    private String city; // 城市编码
+    private String district; // 区域编码
+    private String phone; // 手机号码
+    private String address; // 门店地址
+    private Float longitude; // 门店经度
+    private Float latitude; // 门店纬度
+    private Integer category; // 物品类别
+    private final Integer mapType = 1; // 坐标类型,默认1
+
+    // 非必传字段
+    private String logistics; // 配送平台
+    private Config config; // 门店配送设置
+
+    // 配置项内部类
+    public static class Config {
+        private String dispatchOther = "0"; // 指派时优先配送员
+        private Integer delayDelivery = 0; // 延迟配送(分钟)
+        private Integer autoTips = 0; // 自动小费
+
+
+    }
+
+}

+ 34 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/request/UpdateShopRequest.java

@@ -0,0 +1,34 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.request;
+
+import com.zswl.cloud.springBtach.server.core.api.paotui.model.Base;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class UpdateShopRequest extends Base {
+
+    private Integer shopId;        // 我方门店ID,和originId二选一
+    private String originId;       // 你方门店ID,和shopId二选一
+    private String name;           // 门店名称
+    private Integer city;          // 城市编码(根据城市列表接口获取)
+    private String district;       // 我方区县编码(根据区县列表接口获取)
+    private String phone;          // 手机号码,支持虚拟号传入
+    private String address;        // 门店地址
+    private Float longitude;       // 门店经度
+    private Float latitude;        // 门店纬度
+    private String logistics;      // 同步指定配送方:单个示例: mtps;多个示例: dada,mtps
+    private Integer category;      // 物品类别(见数据字典)
+    private Integer mapType = 1;   // 坐标类型(默认值为1)
+    private Config config;         // 门店配送设置
+
+    @Data
+    public static class Config {
+        private Integer dispatchMode = 1;     // 派单模式
+        private String dispatchOther = "0";  // 指派时使用的配送方,多个以逗号分隔
+        private Integer delayDelivery = 0;   // 延迟发单(分钟)
+        private Integer autoTips = 0;        // 自动加小费
+    }
+}

+ 13 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/CancelOrderResponse.java

@@ -0,0 +1,13 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class CancelOrderResponse {
+    /**
+     * 取消订单涉及的违约金(单位:元)
+     */
+    private BigDecimal cancelFee;
+}

+ 57 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/DeliveryLocationResponse.java

@@ -0,0 +1,57 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.Data;
+
+@Data
+public class DeliveryLocationResponse {
+
+    /**
+     * 你方订单号
+     */
+    private String originId;
+
+    /**
+     * 我方订单号
+     */
+    private String orderId;
+
+    /**
+     * 订单状态
+     */
+    private int orderStatus;
+
+    /**
+     * 骑手 ID
+     */
+    private long riderId;
+
+    /**
+     * 配送员姓名
+     */
+    private String riderName;
+
+    /**
+     * 配送员手机号
+     */
+    private String riderPhone;
+
+    /**
+     * 坐标类型
+     */
+    private int mapType;
+
+    /**
+     * 配送员经度
+     */
+    private String riderLongitude;
+
+    /**
+     * 配送员纬度
+     */
+    private String riderLatitude;
+
+    /**
+     * 更新时间
+     */
+    private int uploadTime;
+}

+ 33 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/DeliveryPriceResponse.java

@@ -0,0 +1,33 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DeliveryPriceResponse {
+
+
+    private String min_logistic;
+    private float min_price;           // 最低价格(单位: 元)
+    private float max_price;           // 最高价格(单位: 元)
+    private float coupon;             // 优惠金额(单位: 元)
+    private List<Detail> detail;      // 配送详细结果
+
+    @Data
+    @AllArgsConstructor
+    @NoArgsConstructor
+    public static class Detail {
+        private String logistic;          // 配送平台
+        private String name;              // 配送平台名称
+        private float distance;           // 距离(单位: 米)
+        private float coupon;             // 优惠金额(单位: 元)
+        private float amount;             // 配送费(单位: 元)
+        private String tag;               // 标签,例如 "最便宜"
+        private String errorMessage;      // 计价失败原因
+    }
+}

+ 55 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderDetailResponse.java

@@ -0,0 +1,55 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class OrderDetailResponse {
+    private int orderId; // 我方订单号
+    private int shopId; // 我方门店ID
+    private String originId; // 你方订单号,最长不超过32个字符
+    private int dispatchMode; // 派单模式
+    private String logistic; // 配送平台
+    private String orderSource; // 订单来源
+    private String orderSn; // 日流水号
+    private float price; // 配送费(单位:元)
+    private float couponAmount; // 优惠金额(单位:元)
+    private String receiverName; // 收件人姓名
+    private String receiverPhone; // 收件人电话
+    private String receiverAddress; // 收件人地址
+    private String receiverLongitude; // 收件人经度
+    private String receiverLatitude; // 收件人纬度
+    private List<Goods> goods; // 商品信息
+    private int goodsValue; // 商品价值(单位:分)
+    private int goodsWeight; // 商品重量
+    private int goodsCategory; // 商品类别
+    private int status; // 订单状态
+    private String callbackUrl; // 回调地址
+    private String mapType; // 坐标转换类型
+    private String orderRemark; // 订单备注
+    private String riderName; // 配送员姓名
+    private String riderPhone; // 配送员手机
+    private int isSubscribe; // 是否预约
+    private int subscribeTime; // 预约时间
+    private long createTime; // 创建时间
+    private long acceptTime; // 接单时间
+    private int fetchTime; // 到店时间
+    private int finishTime; // 完成时间
+    private int cancelTime; // 取消时间
+
+
+    @Data
+    @AllArgsConstructor
+    @NoArgsConstructor
+    public class Goods {
+        private String name; // 商品名称
+        private int number; // 商品数量
+        private int price; // 商品价格(单位:分)
+    }
+
+}

+ 57 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderQueryResponse.java

@@ -0,0 +1,57 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class OrderQueryResponse {
+
+
+    private int orderId; // 我方订单号
+    private int shopId; // 我方门店ID
+    private String originId; // 你方订单号,最长不超过32个字符
+    private int dispatchMode; // 派单模式
+    private String logistic; // 配送平台
+    private String orderSource; // 订单来源
+    private String orderSn; // 日流水号
+    private float price; // 配送费(单位:元)
+    private float couponAmount; // 优惠金额(单位:元)
+    private String receiverName; // 收件人姓名
+    private String receiverPhone; // 收件人电话
+    private String receiverAddress; // 收件人地址
+    private String receiverLongitude; // 收件人经度
+    private String receiverLatitude; // 收件人纬度
+    private List<Goods> goods; // 商品信息
+    private int goodsValue; // 商品价值(单位:分)
+    private int goodsWeight; // 商品重量
+    private int goodsCategory; // 商品类别
+    private int status; // 订单状态
+    private String callbackUrl; // 回调地址
+    private String mapType; // 坐标转换类型
+    private String orderRemark; // 订单备注
+    private String riderName; // 配送员姓名
+    private String riderPhone; // 配送员手机
+    private int isSubscribe; // 是否预约
+    private int subscribeTime; // 预约时间
+    private long createTime; // 创建时间
+    private long acceptTime; // 接单时间
+    private int fetchTime; // 到店时间
+    private int finishTime; // 完成时间
+    private int cancelTime; // 取消时间
+
+    @Data
+    @AllArgsConstructor
+    @NoArgsConstructor
+    public static class Goods {
+        private String name; // 商品名称
+        private int number; // 商品数量
+        private int price; // 商品价格(单位:分)
+    }
+
+
+}

+ 43 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderResponse.java

@@ -0,0 +1,43 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class OrderResponse {
+
+
+    private Integer order_id;       // 我方订单号
+    private String origin_id;       // 你方订单号
+    private Integer send_time;      // 预计发单时间 (is_subscribe = 1 时返回)
+    private Prices prices;         // 价格数据集 (发单模式为2且return_price=1时返回)
+
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class Prices {
+        private BigDecimal min_logistic;          // 最便宜配送平台
+        private BigDecimal min_price;              // 最低价格 (单位: 元)
+        private BigDecimal max_price;              // 最高价格 (单位: 元)
+        private Float coupon;                // 优惠金额 (单位: 元)
+        private List<PriceDetail> detail;    // 配送详细结果
+
+        @Data
+        @NoArgsConstructor
+        @AllArgsConstructor
+        public static class PriceDetail {
+            private String logistic;         // 配送平台
+            private String name;             // 配送平台名称
+            private Integer distance;        // 距离 (单位: 米)
+            private Float coupon;            // 优惠金额 (单位: 元)
+            private Float amount;            // 配送费 (单位: 元)
+            private String tag;              // 标签 (示例: 最便宜)
+        }
+    }
+}

+ 48 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderStatusResponse.java

@@ -0,0 +1,48 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class OrderStatusResponse {
+
+
+    /**
+     * 贵方订单号
+     */
+    private String originId;
+
+    /**
+     * 我方订单号
+     */
+    private String orderId;
+
+    /**
+     * 配送单号
+     */
+    private String deliveryId;
+
+    /**
+     * 状态列表
+     */
+    private List<OrderInfo> info;
+
+    @Data
+    public static class OrderInfo {
+        private int status;
+        private String statusDesc;
+        private String logistic;
+        private long riderId;
+        private String riderName;
+        private String riderPhone;
+        private int mapType;
+        private String riderLatitude;
+        private String riderLongitude;
+        private double cancelAmount;
+        private String cancelCode;
+        private double deliveryAmount;
+        private String content;
+        private long ctime;
+    }
+}

+ 30 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/OrderTipResponse.java

@@ -0,0 +1,30 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class OrderTipResponse {
+
+
+    private String originId;             // 第三方订单 ID
+    private List<DispatchDetail> data;   // 调度数据集
+
+
+    @Data
+    @AllArgsConstructor
+    @NoArgsConstructor
+    public static class DispatchDetail {
+        private String logistic;     // 配送平台
+        private int status;          // 状态:1 成功,0 失败
+        private String errMsg;       // 错误原因
+        private float tipAmount;     // 当前已加小费金额(单位:元)
+    }
+
+
+}

+ 40 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/paotui/model/response/StoreQueryResponse.java

@@ -0,0 +1,40 @@
+package com.zswl.cloud.springBtach.server.core.api.paotui.model.response;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class StoreQueryResponse {
+
+    private String originId;        // 你方门店ID
+    private String shopId;          // 我方门店ID
+    private Integer status;         // 门店状态
+    private String name;            // 门店名称
+    private String city;            // 城市编码
+    private String district;        // 区县编码
+    private String phone;           // 门店联系电话
+    private String address;         // 门店地址
+    private Float longitude;        // 门店经度
+    private Float latitude;         // 门店纬度
+    private Integer category;       // 物品类别
+    private Integer mapType;        // 坐标类型
+    private Config config;          // 门店配送设置
+
+    // 内部类:门店配置
+    @Data
+    @AllArgsConstructor
+    @NoArgsConstructor
+    public static class Config {
+        private Integer dispatchMode;     // 派单模式
+        private String defaultLogistic;  // 默认配送平台
+        private String dispatchOther;    // 兜底配送平台
+        private Integer delayDelivery;   // 延迟发单时间
+        private Integer autoTips;        // 自动加小费
+        private Integer autoResend;      // 自动重发
+
+    }
+
+}

+ 3 - 1
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/DfyHotelController.java

@@ -5,6 +5,7 @@ import com.github.microservice.auth.client.constant.AuthConstant;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.order.v2.CreatOrderResultModel;
 import com.zswl.cloud.springBatch.client.model.dfy.Hotel.request.*;
 import com.zswl.cloud.springBatch.client.model.dfy.Hotel.response.*;
@@ -71,6 +72,7 @@ public class DfyHotelController {
     @ApiOperation(" 创建订单接口")
     @RequestMapping(value = "addOrder", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
     @ResourceAuth(value = AuthConstant.User, type = AuthType.User)
+    @Code
     ResultContent<CreatOrderResultModel> addOrder(@RequestBody @Valid AddOrderRequest addOrderRequest) {
         return dfyHotelService.addOrder(addOrderRequest);
     }
@@ -94,7 +96,7 @@ public class DfyHotelController {
     @ApiOperation(" 取消订单接口")
     @RequestMapping(value = "cancelOrder", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
     @ResourceAuth(value = AuthConstant.User, type = AuthType.User)
-   public ResultContent<CancelOrderResponse> cancelOrder(@RequestBody CancelOrderRequest cancelOrderRequest) {
+    public ResultContent<CancelOrderResponse> cancelOrder(@RequestBody CancelOrderRequest cancelOrderRequest) {
         return dfyHotelService.cancelOrder(cancelOrderRequest);
     }
 

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

@@ -5,6 +5,7 @@ import com.github.microservice.auth.client.constant.AuthConstant;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.order.v2.CreatOrderResultModel;
 import com.zswl.cloud.springBatch.client.model.dfy.Ticket.request.*;
 import com.zswl.cloud.springBatch.client.model.dfy.Ticket.response.*;
@@ -61,6 +62,7 @@ public class DfyTicketController {
     }
 
 
+    @Code
     @ApiOperation(" 创建订单接口")
     @ResourceAuth(value = AuthConstant.User, type = AuthType.User)
     @RequestMapping(value = "createOrderNew", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)

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

@@ -4,6 +4,7 @@ import cn.hutool.json.JSONObject;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.order.v2.CreatOrderResultModel;
 import com.zswl.cloud.springBatch.client.model.ypp.kfc.request.CreateOrdereRquest;
 import com.zswl.cloud.springBatch.client.model.ypp.kfc.response.CityListResponse;
@@ -63,6 +64,7 @@ public class KfcController {
     }
 
     @ApiOperation("下单(自己做产品展示,才需要下单接口)")
+    @Code
     @ResourceAuth(value = "user", type = AuthType.User)
     @RequestMapping(value = "createOrder", method = RequestMethod.POST)
     public ResultContent<CreatOrderResultModel> createOrder(@RequestBody CreateOrdereRquest createOrdereRquest) {

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

@@ -5,10 +5,10 @@ import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
 import com.github.microservice.auth.client.constant.AuthConstant;
 import com.github.microservice.auth.client.content.ResultContent;
-import com.github.microservice.auth.client.content.ResultState;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.helper.AuthHelper;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.CountModel;
 import com.zhongshu.payment.client.model.order.*;
 import com.zhongshu.payment.client.model.order.v2.CreateOrder2Model;
@@ -17,7 +17,7 @@ import com.zhongshu.payment.client.model.payment.CreateResponseModel;
 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.shop.client.service.GoodsService;
+import com.zswl.cloud.shop.client.dto.life.ShopInfoExtDto;
 import com.zswl.cloud.shop.client.service.ShopService;
 import com.zswl.cloud.shop.client.vo.life.GoodsInfoVo;
 import com.zswl.cloud.shop.client.vo.life.ShopDetailVo;
@@ -47,8 +47,6 @@ public class OrderController {
     @Autowired
     OrderServiceImpl orderServiceImp;
 
-    @Autowired
-    GoodsService goodsService;
 
     @Autowired
     ShopService shopService;
@@ -58,6 +56,7 @@ public class OrderController {
     @ApiOperation("创建订单")
     @ResourceAuth(value = AuthConstant.User, type = AuthType.User)
     @RequestMapping(value = "creat", method = RequestMethod.POST)
+    @Code
     public synchronized ResultContent creat(@RequestBody @Valid AddOrderParamModel orderParamModel) {
         String userId = authHelper.getCurrentUser().getUserId();
 
@@ -65,22 +64,24 @@ public class OrderController {
         CreateOrder2Model createOrder2Model = new CreateOrder2Model();
         createOrder2Model.setUserId(userId);
         createOrder2Model.setShopId(orderParamModel.getShopId());
-        createOrder2Model.setChannel(orderParamModel.getChannel());
+        createOrder2Model.setCode(orderParamModel.getCode());
         createOrder2Model.setDiscountList(orderParamModel.getDiscountId());
 
         // 店铺详情
-        com.zswl.cloud.shop.client.ret.ResultContent<ShopDetailVo> detail1 = shopService.detail(createOrder2Model.getShopId());
+        com.zswl.cloud.shop.client.ret.ResultContent<ShopDetailVo> detail1 = shopService.detail2(createOrder2Model.getShopId(), createOrder2Model.getCode());
         log.info("店铺详情:{}", JSONUtil.toJsonStr(detail1));
         ShopDetailVo shopDetailVo = detail1.getContent();
         createOrder2Model.setShopInfo(JSONUtil.parseObj(shopDetailVo));
-        if (ObjectUtil.isEmpty(shopDetailVo.getAuthAccount())) {
+//        List<ShopInfoExtDto> shopInfos = shopDetailVo.getShopInfos();
+        if (ObjectUtil.isEmpty(shopDetailVo.getShopInfos())) {
             return ResultContent.build(com.github.microservice.auth.client.content.ResultState.Fail, "分账账户未设置");
         }
-        createOrder2Model.setAccesserUserId(shopDetailVo.getAuthAccount());
+
+        createOrder2Model.setAccesserUserId(shopDetailVo.getShopInfos().get(0).getAuthAccount());
 
         for (String goodsId : orderParamModel.getGoodsList()) {
 
-            com.zswl.cloud.shop.client.ret.ResultContent resultContent = shopService.goodsInfo(orderParamModel.getShopId(), goodsId, userId);
+            com.zswl.cloud.shop.client.ret.ResultContent resultContent = shopService.goodsInfo(orderParamModel.getShopId(), goodsId, userId, orderParamModel.getCode());
 
             log.info("获取订单详情{}", JSONUtil.toJsonStr(resultContent));
 
@@ -157,6 +158,7 @@ public class OrderController {
         createOrder2Model.setTotalAmount(scanModel.getPrice());
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(scanModel.getPrice());
+        createOrder2Model.setCode(scanModel.getCode());
 
 
         // 商品信息
@@ -193,8 +195,8 @@ public class OrderController {
 
 
     @ApiOperation("商家验券")
-    @ResourceAuth(value = "checkCoupon", type = AuthType.Enterprise)
-    @ResourceAuth(value = "checkCoupon", type = AuthType.Project)
+    @ResourceAuth(value = {"checkCoupon","272"}, type = AuthType.Enterprise)
+    @ResourceAuth(value = {"checkCoupon","272"}, type = AuthType.Project)
     @RequestMapping(value = "shop/verification/{token}", method = RequestMethod.GET, consumes = {MediaType.ALL_VALUE})
     public ResultContent verification(@PathVariable("token") String token) {
 
@@ -206,6 +208,7 @@ public class OrderController {
     @ApiOperation("app_订单查询列表")
     @RequestMapping(value = "user/search", method = RequestMethod.POST)
     @ResourceAuth(value = AuthConstant.User, type = AuthType.User)
+    @Code
     public ResultContent<Page<OrderResult2Model>> userSearch(@RequestBody @Valid UserSeachOrderModel userSeachOrderModel) {
 
         return orderServiceImp.userSearch(userSeachOrderModel);
@@ -234,8 +237,8 @@ public class OrderController {
 
     @ApiOperation("商家_订单查询列表")
     @RequestMapping(value = "shop/search", method = RequestMethod.POST)
-    @ResourceAuth(value = "admin", type = AuthType.Enterprise)
-    @ResourceAuth(value = "admin", type = AuthType.Project)
+    @ResourceAuth(value = {"admin","267"}, type = AuthType.Enterprise)
+    @ResourceAuth(value = {"admin","267"}, type = AuthType.Project)
     public ResultContent<Page<OrderResult2Model>> shopSearch(@RequestBody AdminSeachOrderModel seachOrderModel) {
         return orderServiceImp.shopSearch(seachOrderModel);
     }
@@ -243,16 +246,16 @@ public class OrderController {
 
     @ApiOperation("商家_小程序订单查询列表")
     @RequestMapping(value = "shop/wechat/search", method = RequestMethod.POST)
-    @ResourceAuth(value = "admin", type = AuthType.Enterprise)
-    @ResourceAuth(value = "admin", type = AuthType.Project)
+    @ResourceAuth(value = {"admin","267"}, type = AuthType.Enterprise)
+    @ResourceAuth(value = {"admin","267"}, type = AuthType.Project)
     public ResultContent<Page<OrderResult2Model>> shopWechatSearch(@RequestBody AdminSeachOrderModel seachOrderModel) {
         return orderServiceImp.adminWeChatSearch(seachOrderModel);
     }
 
     @ApiOperation("商家_订单详情")
     @RequestMapping(value = "shop/orderDetail/{orderNo}", method = RequestMethod.GET)
-    @ResourceAuth(value = "admin", type = AuthType.Enterprise)
-    @ResourceAuth(value = "admin", type = AuthType.Project)
+    @ResourceAuth(value =  {"admin","267"}, type = AuthType.Enterprise)
+    @ResourceAuth(value =  {"admin","267"}, type = AuthType.Project)
     public ResultContent shopOrderDetail(@PathVariable("orderNo") String orderNo) {
         return orderServiceImp.shopOrderDetail(orderNo);
     }
@@ -263,6 +266,7 @@ public class OrderController {
     @ApiOperation("平台_订单查询列表")
     @RequestMapping(value = "platform/search", method = RequestMethod.POST)
     @ResourceAuth(value = AuthConstant.SuperAdmin, type = AuthType.Platform)
+    @Code
     public ResultContent<Page<OrderResult2Model>> platformSearch(@RequestBody AdminSeachOrderModel seachOrderModel) {
 
         return orderServiceImp.adminSearch(seachOrderModel);

+ 18 - 12
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/PaymentController.java

@@ -6,6 +6,7 @@ import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.client.content.ResultState;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.AccountCountRequestModel;
 import com.zhongshu.payment.client.model.TransferDetailRequestModel;
 import com.zhongshu.payment.client.model.WithdrawListModel;
@@ -16,7 +17,7 @@ import com.zhongshu.payment.client.model.payment.CloseResponsetModel;
 import com.zhongshu.payment.client.model.payment.CreateResponseModel;
 import com.zhongshu.payment.client.model.payment.QueryRequestModel;
 import com.zhongshu.payment.client.model.payment.withdrawals.zhongshu.SyncWithdrawals;
-import com.zhongshu.payment.client.model.payment.zswl.ApplyWithdrawalsModel;
+import com.zhongshu.payment.client.model.payment.zswl.AccountModel;
 import com.zhongshu.payment.client.model.payment.zswl.AuditWithdrawalsModel;
 import com.zhongshu.payment.client.model.payment.zswl.CreatePaymentModel;
 import com.zhongshu.payment.client.model.payment.zswl.SyncInformModel;
@@ -28,6 +29,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.http.MediaType;
+import org.springframework.util.Assert;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
@@ -90,8 +92,8 @@ public class PaymentController {
 
     @ApiOperation("退款审核")
     @ResourceAuth(value = AuthConstant.SuperAdmin, type = AuthType.Platform)
-    @ResourceAuth(value = "admin", type = AuthType.Enterprise)
-    @ResourceAuth(value = "admin", type = AuthType.Project)
+    @ResourceAuth(value = {"admin", "276"}, type = AuthType.Enterprise)
+    @ResourceAuth(value = {"admin", "276"}, type = AuthType.Project)
     @RequestMapping(value = "auditRefund", method = RequestMethod.POST)
     public ResultContent auditRefund(@RequestBody @Valid RefundParam2Model refundParam2Model) {
         return paymentServer.auditRefund(refundParam2Model);
@@ -129,31 +131,33 @@ public class PaymentController {
     @ResourceAuth(value = "admin", type = AuthType.Enterprise)
     @ResourceAuth(value = "admin", type = AuthType.Project)
     @RequestMapping(value = "account/getDetail", method = RequestMethod.GET)
-    public ResultContent getDetail() {
-        return paymentServer.getDetail();
+    public ResultContent getDetail(com.zhongshu.payment.client.model.Code code) {
+        Assert.hasText(code.getCode(), "code 不能为空");
+        return paymentServer.getDetail(code);
     }
 
     @ApiOperation("平台查询 额度信息")
     @ResourceAuth(value = AuthConstant.SuperAdmin, type = AuthType.Platform)
     @PostMapping(value = "account/platformDetail")
-    public ResultContent platformDetail(@RequestBody ChannelModel channel) {
-        return paymentServer.platformDetail(channel.getChannel());
+    public ResultContent platformDetail(@RequestBody com.zhongshu.payment.client.model.Code code) {
+        return paymentServer.platformDetail(code);
     }
 
 
     @ApiOperation("店铺_提现按钮")
-    @ResourceAuth(value = "admin", type = AuthType.Enterprise)
-    @ResourceAuth(value = "admin", type = AuthType.Project)
+    @ResourceAuth(value = {"admin", "270"}, type = AuthType.Enterprise)
+    @ResourceAuth(value = {"admin", "270"}, type = AuthType.Project)
     @RequestMapping(value = "account/withdrawals", method = RequestMethod.POST)
-    public ResultContent withdrawals(@RequestBody ApplyWithdrawalsModel applyWithdrawalsModel) {
+    public ResultContent withdrawals(@RequestBody AccountModel applyWithdrawalsModel) {
+        Assert.hasText(applyWithdrawalsModel.getCode(), "code 不能为空");
         return paymentServer.applicationShopWithdrawals(applyWithdrawalsModel);
     }
 
     @ApiOperation("平台_提现按钮")
     @ResourceAuth(value = AuthConstant.SuperAdmin, type = AuthType.Platform)
     @RequestMapping(value = "account/withdrawalsPlatform", method = RequestMethod.POST)
-    public ResultContent withdrawalsPlatformApplication(@RequestBody ChannelModel channel) {
-        return paymentServer.withdrawalsPlatformApplication(channel.getChannel());
+    public ResultContent withdrawalsPlatformApplication(@RequestBody com.zhongshu.payment.client.model.Code code) {
+        return paymentServer.withdrawalsPlatformApplication(code);
     }
 
     @ApiOperation("店铺_提现订单列表")
@@ -162,6 +166,7 @@ public class PaymentController {
     @ResourceAuth(value = "admin", type = AuthType.Project)
     @RequestMapping(value = "account/withdrawals/list", method = RequestMethod.POST)
     public ResultContent withdrawalsOrderList(@RequestBody @Valid WithdrawRequestModel withdrawRequestModel) {
+        Assert.hasText(withdrawRequestModel.getCode(), "code 不能为空");
         return paymentServer.withdrawalsOrderList(withdrawRequestModel);
     }
 
@@ -177,6 +182,7 @@ public class PaymentController {
     @ResourceAuth(value = "admin", type = AuthType.Project)
     @RequestMapping(value = "account/shop/withdrawedList", method = RequestMethod.POST)
     public ResultContent<Page<WithdrawListModel>> withdrawedList(@RequestBody @Valid WithdrawedRequestModel withdrawRequestModel) {
+        Assert.hasText(withdrawRequestModel.getCode(), "code 不能为空");
         return paymentServer.withdrawedList(withdrawRequestModel);
     }
 

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

@@ -5,6 +5,7 @@ import cn.hutool.json.JSONObject;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zswl.cloud.springBatch.client.model.qiuxiang.OrderRequest;
 import com.zswl.cloud.springBatch.client.service.QiuXiangService;
 import com.zswl.cloud.springBtach.server.core.api.qiuxiang.QiuXiangApi;
@@ -28,6 +29,7 @@ public class QiuXiangController {
     QiuXiangService qiuXiangService;
 
     @ApiOperation("下单")
+    @Code
     @ResourceAuth(value = "user", type = AuthType.User)
     @RequestMapping(value = "addOrder", method = RequestMethod.POST)
     public ResultContent placeOrder(@RequestBody OrderRequest orderRequest) {

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

@@ -1,6 +1,7 @@
 package com.zswl.cloud.springBtach.server.core.controller;
 
 import com.github.microservice.auth.client.content.ResultContent;
+import com.zhongshu.payment.client.aop.Code;
 import com.zswl.cloud.springBatch.client.model.recharge.RechargeCreateModel;
 import com.zswl.cloud.springBtach.server.core.service.impl.RechargeServiceImpl;
 import lombok.extern.log4j.Log4j2;
@@ -19,6 +20,7 @@ public class RechargeController {
     @Autowired
     RechargeServiceImpl rechargeService;
 
+    @Code
     @RequestMapping(value = "pay", method = RequestMethod.POST)
     public ResultContent recharge(@RequestBody RechargeCreateModel rechargeCreateModel) {
         return rechargeService.recharge(rechargeCreateModel)                ;

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

@@ -10,6 +10,7 @@ import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.helper.AuthHelper;
 import com.github.microservice.auth.security.type.AuthType;
 import com.github.microservice.core.util.bean.BeanUtil;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.CountModel;
 import com.zhongshu.payment.client.model.order.*;
 import com.zhongshu.payment.client.model.order.v2.CreateOrder2Model;
@@ -58,6 +59,7 @@ public class StudyOrderController {
 
     @SneakyThrows
     @ApiOperation("创建订单")
+    @Code
     @ResourceAuth(value = AuthConstant.User, type = AuthType.User)
     @RequestMapping(value = "creat", method = RequestMethod.POST)
     public synchronized ResultContent creat(@RequestBody @Valid AddStudyOrderParamModel param) {

+ 4 - 1
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/controller/Video2Controller.java

@@ -6,7 +6,9 @@ import com.github.microservice.auth.client.constant.AuthConstant;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.order.v2.CreatOrderResultModel;
+import com.zswl.cloud.springBatch.client.model.video2.RechargeRequest;
 import com.zswl.cloud.springBtach.server.core.service.impl.Video2ServiceImpl;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.log4j.Log4j2;
@@ -33,9 +35,10 @@ public class Video2Controller {
     }
 
     @ApiOperation("创建视频会员订单")
+    @Code
     @ResourceAuth(value = AuthConstant.User, type = AuthType.User)
     @RequestMapping(value = "creatOrder", method = RequestMethod.POST)
-    ResultContent<CreatOrderResultModel> rechargeProduct(@RequestBody RechargeOrderReq rechargeOrderReq) {
+    ResultContent<CreatOrderResultModel> rechargeProduct(@RequestBody RechargeRequest rechargeOrderReq) {
         return video2Service.creatOrder(rechargeOrderReq);
     }
 }

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

@@ -13,6 +13,7 @@ import com.xiaoju.open.oil.interfaces.domain.StorePriceInfo;
 import com.xiaoju.open.oil.interfaces.request.QueryApiOrderListRequest;
 import com.xiaoju.open.oil.interfaces.request.QueryGetPromotionRequest;
 import com.xiaoju.open.oil.interfaces.response.*;
+import com.zhongshu.payment.client.aop.Code;
 import com.zswl.cloud.springBatch.client.model.request.*;
 import com.zswl.cloud.springBatch.client.model.xiaoju.ActivityModel;
 import com.zswl.cloud.springBatch.client.model.xiaoju.QueryApiStorePriceRequest;
@@ -89,6 +90,7 @@ public class XiaoJuController {
     @ApiOperation("创建订单")
     @RequestMapping(value = "queryNewOrder", method = RequestMethod.POST)
     @ResourceAuth(value = "user", type = AuthType.User)
+    @Code
     public ResultContent<QueryNewOrderResponse> queryNewOrder(@RequestBody @Valid XiaoJuQueryNewOrderModel xiaoJuQueryNewOrderModel) {
         return xiaoJuService.queryNewOrder(xiaoJuQueryNewOrderModel);
     }

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

@@ -3,6 +3,7 @@ package com.zswl.cloud.springBtach.server.core.controller;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.zhongshu.payment.client.aop.Code;
 import com.zhongshu.payment.client.model.order.v2.CreatOrderResultModel;
 import com.zswl.cloud.springBatch.client.model.ypp.movie.request.CreateOrder2Request;
 import com.zswl.cloud.springBtach.server.core.api.ypp.KfcApi;
@@ -30,6 +31,7 @@ public class YppController {
     @ApiOperation("创建订单")
     @ResourceAuth(value = "user", type = AuthType.User)
     @RequestMapping(value = "create_order", method = RequestMethod.POST)
+    @Code
     public ResultContent<CreatOrderResultModel> create_order(@RequestBody CreateOrder2Request createOrdereRquest) {
         return yppService.create_order(createOrdereRquest);
     }

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/standard/StandarDeliveryJob.java

@@ -53,6 +53,7 @@ public class StandarDeliveryJob {
                     operateStockDto.setOperate(3);// 使用库存
                     operateStockDto.setShopId(goodsResultModel.getShopId());
                     operateStockDto.setGoodsId(goodsResultModel.getGoodsId());
+                    operateStockDto.setPlatformType(goodsResultModel.getCode());
                     com.zswl.cloud.shop.client.ret.ResultContent operateStock = goodsService.operateStock(operateStockDto);
                     if (!operateStock.getState().equals(ResultState.Success)) {
                         resultContent.set(ResultContent.build(com.github.microservice.auth.client.content.ResultState.Fail));

+ 9 - 5
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/standard/StandarOrderJob.java

@@ -30,6 +30,7 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.util.ArrayList;
 
 @Data
@@ -81,7 +82,7 @@ public class StandarOrderJob {
                     for (CreateOrder2Model.Goods goods : createOrder2Model.getGoodsList()) {
 
                         // 商品详情
-                        com.zswl.cloud.shop.client.ret.ResultContent<GoodsInfoVo> detail = goodsService.detail(goods.getGoodsId(), 1, createOrder2Model.getUserId());
+                        com.zswl.cloud.shop.client.ret.ResultContent<GoodsInfoVo> detail = goodsService.detail(goods.getGoodsId(), 1, createOrder2Model.getUserId(), createOrder2Model.getCode());
                         log.info("商品详情:{}", JSONUtil.toJsonStr(detail));
                         GoodsInfoVo goodsInfoVo = detail.getContent();
                         SharePlatformVo sharePlatformVo = goodsInfoVo.getSharePlatformVo();
@@ -96,6 +97,7 @@ public class StandarOrderJob {
                         operateStockDto.setOperate(1);// 暂用库存
                         operateStockDto.setShopId(createOrder2Model.getShopId());
                         operateStockDto.setGoodsId(goods.getGoodsId());
+                        operateStockDto.setPlatformType(createOrder2Model.getCode());
 
                         try {
 
@@ -111,15 +113,17 @@ public class StandarOrderJob {
                                 calculateCouponDto.setShopId(createOrder2Model.getShopId());
                                 calculateCouponDto.setGoodsId(goods.getGoodsId());
                                 calculateCouponDto.setCouponId(ObjectUtil.isEmpty(createOrder2Model.getDiscountList()) ? -1 : createOrder2Model.getDiscountList().get(0));
+                                calculateCouponDto.setPlatform(createOrder2Model.getCode());
 
-
-                                com.zswl.cloud.shop.client.ret.ResultContent<CalculateVo> calculate = goodsService.calculate(calculateCouponDto);
+                                com.zswl.cloud.shop.client.ret.ResultContent<CalculateVo> calculate = goodsService.calculate2(calculateCouponDto);
                                 log.info("计算价格:{}", JSONUtil.toJsonStr(calculate));
                                 CalculateVo calculateVo = calculate.getContent();
                                 // 设置订单价格
-                                createOrder2Model.setTotalAmount(calculateVo.getOriginalPrice());
+//                                createOrder2Model.setTotalAmount(calculateVo.getOriginalPrice());
+                                createOrder2Model.setTotalAmount(calculateVo.getPrice());
                                 createOrder2Model.setPayAmount(calculateVo.getPrice());
-                                createOrder2Model.setDiscountAmount(calculateVo.getOffset());
+//                                createOrder2Model.setDiscountAmount(calculateVo.getOffset());
+                                createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
 
                                 goods.setPayAmount(calculateVo.getPrice());
 

+ 1 - 1
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/video/VideoOrderJob.java

@@ -40,7 +40,7 @@ public class VideoOrderJob {
             CreateOrder2Model orderParamModel = getParameter().get();
 
             for (CreateOrder2Model.Goods goods : orderParamModel.getGoodsList()) {
-                com.zswl.cloud.shop.client.ret.ResultContent resultContent = shopService.goodsInfo(orderParamModel.getShopId(),goods.getGoodsId(), orderParamModel.getUserId());
+                com.zswl.cloud.shop.client.ret.ResultContent resultContent = shopService.goodsInfo(orderParamModel.getShopId(),goods.getGoodsId(), orderParamModel.getUserId(),orderParamModel.getCode());
 
 
                 Object o = JSONUtil.parseObj(resultContent.getContent()).get("goods");

+ 0 - 4
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/job/ypp/YppDeliveryJob.java

@@ -10,7 +10,6 @@ import com.zhongshu.payment.client.model.payment.SubOrdersConfirmResponseModel;
 import com.zhongshu.payment.client.service.v2.OrderService2;
 import com.zhongshu.payment.client.service.v2.PaymentService2;
 import com.zhongshu.payment.client.type.OrderType;
-import com.zswl.cloud.shop.client.service.ShopService;
 import com.zswl.cloud.springBatch.client.model.ypp.movie.response.CreateOrder2Response;
 import com.zswl.cloud.springBtach.server.core.api.ypp.YppApi;
 import com.zswl.cloud.springBtach.server.core.helper.RedisHelper;
@@ -35,8 +34,6 @@ public class YppDeliveryJob {
     @Autowired
     OrderService2 orderService2;
 
-    @Autowired
-    ShopService shopService;
 
     @Autowired
     AuthHelper authHelper;
@@ -54,7 +51,6 @@ public class YppDeliveryJob {
     @Delegate
     StandarDeliveryJob standarDeliveryJob;
 
-
     public Step yppDeliveryStep() {
         return getStepBuilderFactory().get("yppDeliveryStep")
                 .tasklet((contribution, chunkContext) -> {

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/CinemaPublish.java

@@ -88,6 +88,7 @@ public class CinemaPublish implements ProductPublish {
                         ProductPushModel.builder()
                                 .regionCode(productTriggerTask.getRegion().getCode())
                                 .pid(cinemaCode)
+                                .parkId(productTriggerTask.getRegion().getParentId())
                                 .productType(ProductType.Cinema)
                                 .title(names)
                                 .address(address)

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/ComingMoviePublish.java

@@ -84,6 +84,7 @@ public class ComingMoviePublish implements ProductPublish {
                 String posterUrl = entry.get("posterUrl").toString();
                 productCenterStream.send(List.of(ProductPushModel.builder()
                         .regionCode(productTriggerTask.getRegion().getCode())
+                        .parkId(productTriggerTask.getRegion().getParentId())
                         .pid(ObjectUtil.isEmpty(movieCode) ? entry.get("movieId").toString() : movieCode)
                         .productType(ProductType.MovieTicket)
                         .cover(new String[]{posterUrl})

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/HotelPublish.java

@@ -113,6 +113,7 @@ public class HotelPublish implements ProductPublish {
                             productCenterStream.send(List.of(ProductPushModel.builder()
                                     .regionCode(productTriggerTask.getRegion().getCode())
                                     .pid(hotelId)
+                                    .parkId(productTriggerTask.getRegion().getParentId())
                                     .productType(ProductType.Hotel)
                                     .cover(new String[]{picture})
                                     .salePrice(price.longValue())

+ 2 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/KfcPublish.java

@@ -93,6 +93,7 @@ public class KfcPublish implements ProductPublish {
                                             .regionCode(productTriggerTask.getRegion().getCode())
                                             .pid(it.getId())
                                             .address(it.getAddress())
+                                            .parkId(productTriggerTask.getRegion().getParentId())
                                             .productType(ProductType.Restaurant)
                                             .locationPoint(locationModel)
                                             .title(it.getShopName())
@@ -119,6 +120,7 @@ public class KfcPublish implements ProductPublish {
                                     productCenterStream.send(List.of(
                                             ProductPushModel.builder()
                                                     .regionCode(productTriggerTask.getRegion().getCode())
+                                                    .parkId(productTriggerTask.getRegion().getParentId())
                                                     .pid((String) productId)
                                                     .address(it.getAddress())
                                                     .productType(ProductType.RestaurantFood)

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/MoviePublish.java

@@ -84,6 +84,7 @@ public class MoviePublish implements ProductPublish {
                 String posterUrl = entry.get("posterUrl").toString();
                 productCenterStream.send(List.of(ProductPushModel.builder()
                         .regionCode(productTriggerTask.getRegion().getCode())
+                        .parkId(productTriggerTask.getRegion().getParentId())
                         .pid(ObjectUtil.isEmpty(movieCode)?entry.get("movieId").toString(): movieCode)
                         .productType(ProductType.MovieTicket)
                         .cover(new String[]{posterUrl})

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/PetrolStationPublish.java

@@ -87,6 +87,7 @@ public class PetrolStationPublish implements ProductPublish {
                 productCenterStream.send(List.of(
                         ProductPushModel.builder()
                                 .regionCode(productTriggerTask.getRegion().getCode())
+                                .parkId(productTriggerTask.getRegion().getParentId())
                                 .pid(it.getStoreId())
                                 .productType(ProductType.PetrolStation)
                                 .cover(it.getPicList().stream().toArray(String[]::new))

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/TicketPublish.java

@@ -85,6 +85,7 @@ public class TicketPublish implements ProductPublish {
                     productCenterStream.send(List.of(
                             ProductPushModel.builder()
                                     .regionCode(productTriggerTask.getRegion().getCode())
+                                    .parkId(productTriggerTask.getRegion().getParentId())
                                     .pid(it.getScenicId())
                                     .productType(ProductType.Scenic)
                                     .cover(new String[]{it.getNewPicUrl()})

+ 1 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/publish/Video2Publish.java

@@ -65,6 +65,7 @@ public class Video2Publish implements ProductPublish {
                 productCenterStream.send(List.of(
                         ProductPushModel.builder()
                                 .regionCode(productTriggerTask.getRegion().getCode())
+                                .parkId(productTriggerTask.getRegion().getParentId())
                                 .pid(String.valueOf(it.getProductId()))
                                 .productType(ProductType.Recharge)
                                 .title(it.getItemName())

+ 24 - 15
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/PaymentService.java

@@ -27,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationContext;
 import org.springframework.data.domain.Page;
 import org.springframework.stereotype.Service;
+import org.springframework.util.Assert;
 
 import javax.annotation.Resource;
 import java.util.List;
@@ -118,42 +119,50 @@ public class PaymentService {
     }
 
     public ResultContent transferList(AdminSeachOrderModel seachOrderModel) {
-        String enterPriseId = authHelper.getEnterPriseId();
-        seachOrderModel.setShopId(enterPriseId);
+        Assert.hasText(seachOrderModel.getCode(), "code不能为空");
         return paymentService2.transferList(seachOrderModel);
     }
 
-    public ResultContent getDetail() {
-        return paymentService2.getDetail(authHelper.getEnterPriseId());
+    public ResultContent getDetail(Code code) {
+        AccountModel accountModel = new AccountModel();
+        accountModel.setPlatform(false);
+        accountModel.setShopId(authHelper.getEnterPriseId());
+        accountModel.setCode(code.getCode());
+
+        return paymentService2.getDetail(accountModel);
     }
 
-    public ResultContent platformDetail(Channel channel) {
-        return paymentService2.getDetail(channel.name());
+    public ResultContent platformDetail(Code code) {
+        AccountModel accountModel = new AccountModel();
+        accountModel.setPlatform(true);
+        accountModel.setCode(code.getCode());
+        return paymentService2.getDetail(accountModel);
     }
 
-    public ResultContent applicationShopWithdrawals(ApplyWithdrawalsModel applyWithdrawalsModel) {
+    public ResultContent applicationShopWithdrawals(AccountModel applyWithdrawalsModel) {
         applyWithdrawalsModel.setShopId(authHelper.getEnterPriseId());
         applyWithdrawalsModel.setPlatform(false);
+        applyWithdrawalsModel.setCode(applyWithdrawalsModel.getCode());
         return paymentService2.applicationWithdrawals(applyWithdrawalsModel);
     }
 
-    public ResultContent withdrawalsPlatformApplication(Channel channel) {
-        ApplyWithdrawalsModel applyWithdrawalsModel = new ApplyWithdrawalsModel();
-        applyWithdrawalsModel.setShopId(channel.name());
-        applyWithdrawalsModel.setChannel(channel);
+    public ResultContent withdrawalsPlatformApplication(Code code) {
+        AccountModel applyWithdrawalsModel = new AccountModel();
+        applyWithdrawalsModel.setShopId(code.getCode());
         applyWithdrawalsModel.setPlatform(true);
+        applyWithdrawalsModel.setCode(code.getCode());
         return paymentService2.applicationWithdrawals(applyWithdrawalsModel);
     }
 
     public ResultContent withdrawalsOrderList(WithdrawRequestModel withdrawRequestModel) {
-//        String enterPriseId = authHelper.getEnterPriseId();
-//        withdrawRequestModel.setShopId(enterPriseId);
+        String enterPriseId = authHelper.getEnterPriseId();
+        withdrawRequestModel.setShopId(enterPriseId);
+        withdrawRequestModel.setPlatform(false);
         return paymentService2.withdrawalsOrderList(withdrawRequestModel);
     }
 
     public ResultContent withdrawalsPlatformList(WithdrawRequestModel withdrawRequestModel) {
-        withdrawRequestModel.setShopId(withdrawRequestModel.getChannel().name());
-
+        withdrawRequestModel.setPlatform(true);
         return paymentService2.withdrawalsOrderList(withdrawRequestModel);
     }
 

+ 2 - 2
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/YppService.java

@@ -60,7 +60,7 @@ public class YppService {
 
 
     public ResultContent<CreatOrderResultModel> create_order(CreateOrder2Request createOrder2Request) {
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("有票票");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("有票票", createOrder2Request.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "有票票信息未配置");
         }
@@ -100,7 +100,7 @@ public class YppService {
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(totalUserPrice);
         createOrder2Model.setAccesserUserId(authAccount);
-        createOrder2Model.setChannel(createOrder2Request.getChannel());
+        createOrder2Model.setCode(createOrder2Request.getCode());
 
 
         JSONObject goodsInfo = JSONUtil.parseObj(createOrder2Request);

+ 4 - 6
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/DfyHotelServiceImpl.java

@@ -95,7 +95,7 @@ public class DfyHotelServiceImpl implements DfyHotelService {
 
     public ResultContent<CreatOrderResultModel> addOrder(AddOrderRequest addOrderRequest) {
 
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("酒店");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("酒店",addOrderRequest.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "酒店商户信息未配置");
         }
@@ -156,7 +156,7 @@ public class DfyHotelServiceImpl implements DfyHotelService {
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(totalPrice);
         createOrder2Model.setAccesserUserId(authAccount);
-        createOrder2Model.setChannel(addOrderRequest.getChannel());
+        createOrder2Model.setCode(addOrderRequest.getCode());
         JSONObject goodsInfo = JSONUtil.parseObj(addOrderRequest);
         goodsInfo.set("hotelInfo", orderDetailResponse.getData().getHotelInfo());
         goodsInfo.set("channelOrderId", String.valueOf(addOrderResponse.getData().getOrderId()));
@@ -195,6 +195,7 @@ public class DfyHotelServiceImpl implements DfyHotelService {
         entries.put("orderInfo", orderDetailResponse.getData().getOrderInfo());
         goods.setExtend(entries);
         createOrder2Model.setGoodsList(List.of(goods));
+        createOrder2Model.setCode(addOrderRequest.getCode());
         return orderService2.creat(createOrder2Model);
 
     }
@@ -214,10 +215,7 @@ public class DfyHotelServiceImpl implements DfyHotelService {
                 case "已取消":
                     switch (goodsResultModel.getGoodsState()) {
                         case WAIT_PAYMENT:
-                            UpdateOrder2Model updateOrder2Model = new UpdateOrder2Model();
-                            updateOrder2Model.setOrderType(OrderType.CLOSE);
-                            updateOrder2Model.setOrderNo(goodsResultModel.getOrderNo());
-                            orderService2.updateOrderType(updateOrder2Model);
+                            paymentService2.close(goodsResultModel.getOrderNo(), goodsResultModel.getUserId());
                             break;
                         case WAIT_USE:
                             ApplicantRefundParam2Model applicantRefundParam2Model = new ApplicantRefundParam2Model();

+ 4 - 7
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/DfyTicketServiceImpl.java

@@ -17,7 +17,6 @@ import com.zhongshu.payment.client.type.TransferType;
 import com.zswl.cloud.shop.client.dto.life.TripartiteShopDto;
 import com.zswl.cloud.shop.client.service.ShopService;
 import com.zswl.cloud.shop.client.vo.life.AccountDetailVo;
-import com.zswl.cloud.shop.client.vo.life.ShopDetailVo;
 import com.zswl.cloud.shop.client.vo.life.ShopInfoSimpleVo;
 import com.zswl.cloud.springBatch.client.model.dfy.Ticket.request.*;
 import com.zswl.cloud.springBatch.client.model.dfy.Ticket.response.*;
@@ -94,7 +93,7 @@ public class DfyTicketServiceImpl implements DfyTicketService {
     public ResultContent<CreatOrderResultModel> createOrderNew(CreateOrderNewRequest createOrderNewRequest) {
 
 
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("景区");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("景区", createOrderNewRequest.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "景区商户信息未配置");
         }
@@ -149,7 +148,7 @@ public class DfyTicketServiceImpl implements DfyTicketService {
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(payAmount);
         createOrder2Model.setAccesserUserId(authAccount);
-        createOrder2Model.setChannel(createOrderNewRequest.getChannel());
+        createOrder2Model.setCode(createOrderNewRequest.getCode());
         JSONObject goodsInfo = JSONUtil.parseObj(createOrderNewRequest2);
         goodsInfo.set("channelOrderId", String.valueOf(createOrderNewResponse.getData().getOrderId()));
         goodsInfo.set("goodsName", detailResponse.getData().getProductName());
@@ -184,6 +183,7 @@ public class DfyTicketServiceImpl implements DfyTicketService {
         entries.put("orderInfo", orderDetailResponse.getData().getOrderInfo());
         goods.setExtend(entries);
         createOrder2Model.setGoodsList(List.of(goods));
+        createOrder2Model.setCode(createOrderNewRequest.getCode());
         return orderService2.creat(createOrder2Model);
     }
 
@@ -226,10 +226,7 @@ public class DfyTicketServiceImpl implements DfyTicketService {
                 case "已取消":
                     switch (goodsResultModel.getGoodsState()) {
                         case WAIT_PAYMENT:
-                            UpdateOrder2Model updateOrder2Model = new UpdateOrder2Model();
-                            updateOrder2Model.setOrderType(OrderType.CLOSE);
-                            updateOrder2Model.setOrderNo(goodsResultModel.getOrderNo());
-                            orderService2.updateOrderType(updateOrder2Model);
+                            paymentService2.close(goodsResultModel.getOrderNo(),goodsResultModel.getUserId());
                             break;
                         case WAIT_USE:
                             ApplicantRefundParam2Model applicantRefundParam2Model = new ApplicantRefundParam2Model();

+ 4 - 2
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/KfcServiceImpl.java

@@ -83,7 +83,7 @@ public class KfcServiceImpl {
     public ResultContent<CreatOrderResultModel> createOrder(CreateOrdereRquest kfcGoodsDetailRequest) {
 
 
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("kfc点餐");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("kfc点餐", kfcGoodsDetailRequest.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "点餐信息未配置");
         }
@@ -119,7 +119,7 @@ public class KfcServiceImpl {
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(bigDecimal);
         createOrder2Model.setAccesserUserId(authAccount);
-        createOrder2Model.setChannel(kfcGoodsDetailRequest.getChannel());
+        createOrder2Model.setCode(kfcGoodsDetailRequest.getCode());
 
 
         JSONObject goodsInfo = JSONUtil.parseObj(kfcGoodsDetailRequest);
@@ -139,6 +139,8 @@ public class KfcServiceImpl {
         goods.setPayAmount(bigDecimal);
         goods.setValidDay(90);
         goods.setTransferType(sharePlatformVo.getShareType().equals(1) ? TransferType.RATIO : TransferType.FIXED);
+        goods.setGoodsName(kfcGoodsDetailRequest.getGoodsName());
+        goods.setImageUrl(kfcGoodsDetailRequest.getImageCnUrl());
 
         List<CreateOrder2Model.Owner> ownerList = new ArrayList<>();
 

+ 2 - 2
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/QiuXiangServiceImpl.java

@@ -57,7 +57,7 @@ public class QiuXiangServiceImpl implements QiuXiangService {
 
         JSONObject orderExtend = qiuXiangApi.orderDelit(orderId);
         OrderDelitResponse orderDelitResponse = orderExtend.toBean(OrderDelitResponse.class);
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("秋香");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("秋香",orderRequest.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "秋香信息未配置");
         }
@@ -67,7 +67,7 @@ public class QiuXiangServiceImpl implements QiuXiangService {
         JSONObject entries1 = JSONUtil.parseObj(content);
         entries1.set("shopName", "秋香代驾");
         CreateOrder2Model createOrder2Model = new CreateOrder2Model();
-        createOrder2Model.setChannel(orderRequest.getChannel());
+        createOrder2Model.setCode(orderRequest.getCode());
         createOrder2Model.setUserId(authHelper.getCurrentUser().getUserId());
         createOrder2Model.setShopId(content.getAccountId());
         createOrder2Model.setShopInfo(entries1);

+ 2 - 2
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/RechargeServiceImpl.java

@@ -81,7 +81,7 @@ public class RechargeServiceImpl {
         }
 
 
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("充电");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("充电", rechargeCreateModel.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "充电");
         }
@@ -101,7 +101,7 @@ public class RechargeServiceImpl {
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(totalAmount);
         createOrder2Model.setAccesserUserId(authAccount);
-        createOrder2Model.setChannel(Channel.GuiDa);
+        createOrder2Model.setCode(rechargeCreateModel.getCode());
         goodsJson.set("goodsName", goodsName);
         goodsJson.set("goodsPath", goodsPath);
         CreateOrder2Model.Goods goods = new CreateOrder2Model.Goods();

+ 6 - 6
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/Video2ServiceImpl.java

@@ -68,7 +68,7 @@ public class Video2ServiceImpl implements Video2Service {
         return ResultContent.buildContent(video2Api.rechargeProduct());
     }
 
-    public ResultContent<CreatOrderResultModel> creatOrder(RechargeOrderReq rechargeOrderReq) {
+    public ResultContent<CreatOrderResultModel> creatOrder(RechargeRequest rechargeOrderReq) {
 
         RechargeProductResp rechargeProductResp = video2Api.rechargeProduct();
         List<ProductItemResp> collect = rechargeProductResp.getProducts().stream().filter(productItemResp -> productItemResp.getProductId().equals(rechargeOrderReq.getProductId())).collect(Collectors.toList());
@@ -78,12 +78,12 @@ public class Video2ServiceImpl implements Video2Service {
         ProductItemResp productItemResp = collect.get(0);
         String channelPrice = productItemResp.getChannelPrice();
         BigDecimal totalPrice = new BigDecimal(channelPrice);
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("视频会员");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("视频会员",rechargeOrderReq.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "视频会员信息未配置");
         }
         List<ShopInfoSimpleVo> shops = shopSetting.getContent().getShops();
-        if (shops.isEmpty()){
+        if (shops.isEmpty()) {
             return ResultContent.build(ResultState.Fail, "视频会员店铺未创建");
         }
         AccountDetailVo accountDetailVo = shopSetting.getContent();
@@ -110,7 +110,7 @@ public class Video2ServiceImpl implements Video2Service {
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(totalPrice);
         createOrder2Model.setAccesserUserId(authAccount);
-        createOrder2Model.setChannel(Channel.ZhongShu);
+        createOrder2Model.setCode(rechargeOrderReq.getCode());
         JSONObject goodsInfo = JSONUtil.parseObj(rechargeOrderReq);
         goodsInfo.set("goodsName", productItemResp.getItemName());
 //        goodsInfo.set("goodsPath", addOrderRequest.getRoomPic());
@@ -186,7 +186,7 @@ public class Video2ServiceImpl implements Video2Service {
         }
         ProductItemResp productItemResp = collect.get(0);
         BigDecimal totalPrice = BigDecimal.ZERO;
-        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("视频会员");
+        com.zswl.cloud.shop.client.ret.ResultContent<AccountDetailVo> shopSetting = shopService.shopSetting("视频会员",rechargeRequest.getCode());
         if (!shopSetting.getState().equals(com.zswl.cloud.shop.client.ret.ResultState.Success)) {
             return ResultContent.build(ResultState.Fail, "视频会员信息未配置");
         }
@@ -211,7 +211,7 @@ public class Video2ServiceImpl implements Video2Service {
         createOrder2Model.setDiscountAmount(BigDecimal.ZERO);
         createOrder2Model.setPayAmount(totalPrice);
         createOrder2Model.setAccesserUserId(authAccount);
-        createOrder2Model.setChannel(Channel.ZhongShu);
+        createOrder2Model.setCode(rechargeRequest.getCode());
         JSONObject goodsInfo = JSONUtil.parseObj(rechargeOrderReq);
         goodsInfo.set("goodsName", productItemResp.getItemName());
 

+ 7 - 12
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/service/impl/XiaoJuServiceImpl.java

@@ -1,8 +1,6 @@
 package com.zswl.cloud.springBtach.server.core.service.impl;
 
 
-import cn.hutool.core.date.DateTime;
-import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.lang.Snowflake;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.json.JSONObject;
@@ -18,10 +16,6 @@ import com.xiaoju.open.oil.core.QueryClientFactory;
 import com.xiaoju.open.oil.core.executor.ResponseDTO;
 import com.xiaoju.open.oil.interfaces.domain.*;
 import com.xiaoju.open.oil.interfaces.request.*;
-import com.zhongshu.vip.client.model.VipUserModel;
-import com.zhongshu.vip.client.service.VipUserService;
-import com.zswl.cloud.springBatch.client.model.xiaoju.ActivityModel;
-import com.zswl.cloud.springBatch.client.model.xiaoju.QueryApiStorePriceRequest;
 import com.xiaoju.open.oil.interfaces.request.miniprogram.MiniCancelOrderStatusRequest;
 import com.xiaoju.open.oil.interfaces.response.*;
 import com.xiaoju.open.oil.security.secret.SecurityService;
@@ -31,9 +25,13 @@ import com.zhongshu.payment.client.type.JobFlowMap;
 import com.zhongshu.payment.client.type.OrderType;
 import com.zhongshu.payment.client.type.TransferOwner;
 import com.zhongshu.payment.client.type.TransferType;
+import com.zhongshu.payment.client.type.v3.OrderStateType;
+import com.zhongshu.vip.client.service.VipUserService;
 import com.zswl.cloud.shop.client.dto.life.TripartiteShopDto;
 import com.zswl.cloud.shop.client.service.ShopService;
 import com.zswl.cloud.springBatch.client.model.request.*;
+import com.zswl.cloud.springBatch.client.model.xiaoju.ActivityModel;
+import com.zswl.cloud.springBatch.client.model.xiaoju.QueryApiStorePriceRequest;
 import com.zswl.cloud.springBatch.client.model.xiaoju.QueryGetPromotionResponse;
 import com.zswl.cloud.springBatch.client.service.XiaoJuService;
 import com.zswl.cloud.springBtach.server.core.dao.*;
@@ -45,8 +43,6 @@ import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
 import java.util.*;
-import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.stream.Collectors;
 
 @Log4j2
 @Service
@@ -179,7 +175,7 @@ public class XiaoJuServiceImpl implements XiaoJuService {
                 case 2:
                     entries.set("notifyOrderInfo", notificationOrderInfoRequest);
                     updateGoodsModel.setGoodsState(OrderType.USED);
-                    updateOrder2Model.setOrderType(OrderType.HAVE_PAID);
+                    updateGoodsModel.setOrderState(OrderStateType.HAVE_PAID);
                     break;
                 case 6:
                     entries.set("refund", notificationOrderInfoRequest);
@@ -188,12 +184,11 @@ public class XiaoJuServiceImpl implements XiaoJuService {
                 case 9:
                     entries.set("close", notificationOrderInfoRequest);
                     updateGoodsModel.setGoodsState(OrderType.CLOSE);
-                    updateOrder2Model.setOrderType(OrderType.CLOSE);
+                    updateGoodsModel.setOrderState(OrderStateType.CLOSE);
                     break;
             }
             updateGoodsModel.setExtend(entries);
             orderService2.updateGoods(updateGoodsModel);
-            orderService2.updateOrderType(updateOrder2Model);
 
 
         }
@@ -483,7 +478,7 @@ public class XiaoJuServiceImpl implements XiaoJuService {
             shop.setValue(BigDecimal.valueOf(100));
             goods.setTransferRrule(List.of(shop));
             createOrder2Model.setGoodsList(List.of(goods));
-            createOrder2Model.setChannel(xiaoJuQueryNewOrderModel.getChannel());
+            createOrder2Model.setCode(xiaoJuQueryNewOrderModel.getCode());
 
             ResultContent<CreatOrderResultModel> creat = orderService2.creat(createOrder2Model);
             if (!creat.getState().equals(ResultState.Success)) {

+ 23 - 0
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/task/TaskLogic.java

@@ -1,9 +1,13 @@
 package com.zswl.cloud.springBtach.server.core.task;
 
 import com.github.microservice.auth.client.content.ResultContent;
+import com.github.microservice.productcenter.client.model.RegionModel;
+import com.github.microservice.productcenter.client.service.RegionService;
+import com.github.microservice.productcenter.client.type.RegionType;
 import com.zhongshu.payment.client.model.order.AdminSeachOrderModel;
 import com.zhongshu.payment.client.model.order.v2.OrderResult2Model;
 import com.zhongshu.payment.client.service.v2.OrderService2;
+import com.zhongshu.payment.client.service.v2.PaymentService2;
 import com.zhongshu.payment.client.type.JobFlowMap;
 import com.zhongshu.payment.client.type.OrderType;
 import com.zswl.cloud.springBatch.client.model.qiuxiang.OrderDelitResponse;
@@ -11,8 +15,12 @@ import com.zswl.cloud.springBatch.client.service.QiuXiangService;
 import lombok.extern.log4j.Log4j2;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 @Log4j2
 @Component
 public class TaskLogic {
@@ -21,11 +29,20 @@ public class TaskLogic {
     private OrderService2 orderService;
     @Autowired
     private QiuXiangService qiuXiangService;
+    @Autowired
+    private RegionService regionService;
+
+    @Autowired
+    private PaymentService2 paymentService2;
 
     public void qiuXiangSync() {
+        com.github.microservice.productcenter.client.ret.ResultContent<Page<RegionModel>> list = regionService.list("", RegionType.Park, Pageable.ofSize(10));
+        List<String> collect = list.getContent().get().map(it -> it.getCode()).collect(Collectors.toList());
+        String join = String.join(",", collect);
         AdminSeachOrderModel adminSeachOrderModel = new AdminSeachOrderModel();
         adminSeachOrderModel.setOrderType(OrderType.WAIT_USE);
         adminSeachOrderModel.setJobFlowMap(JobFlowMap.QiuXiang);
+        adminSeachOrderModel.setCode(join);
 
         ResultContent<Page<OrderResult2Model>> pageResultContent = orderService.adminSearch(adminSeachOrderModel);
         for (OrderResult2Model orderResult2Model : pageResultContent.getContent()) {
@@ -36,4 +53,10 @@ public class TaskLogic {
 
         }
     }
+
+    public void queryWithdrawals() {
+        ResultContent<List<String>> listResultContent = paymentService2.unFinishWithdrawals();
+        listResultContent.getContent().forEach(it -> paymentService2.queryWithdrawals(it));
+
+    }
 }

+ 1 - 1
SpringBatchServiceServer/src/test/java/com/zswl/cloud/springBtach/server/boot/ServerApplicationTests.java

@@ -357,7 +357,7 @@ public class ServerApplicationTests {
     @Test
     public void sync() {
         UserSeachOrder2Model userSeachOrder2Model = new UserSeachOrder2Model();
-        userSeachOrder2Model.setChannel(Channel.ZhongShu);
+//        userSeachOrder2Model.setChannel(Channel.ZhongShu);
         userSeachOrder2Model.setUserId("660a534e32e63427d1a09c2a");
         ResultContent<Page<OrderResult2Model>> pageResultContent = orderService2.userSearch(userSeachOrder2Model);
         System.out.println(JSONUtil.toJsonStr(pageResultContent));