Explorar el Código

meituan外卖模块

叶君翔 hace 3 años
padre
commit
c4f43bdd7c

+ 183 - 0
lb-third/lb-third-waimai/src/main/java/com/ydd/third/controller/MeiTuanController.java

@@ -0,0 +1,183 @@
+package com.ydd.third.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.ydd.third.common.vo.ResObject;
+import com.ydd.third.common.vo.waimai.*;
+import com.ydd.third.waimai.Client;
+import com.ydd.third.waimai.meituan.MeituanCallback;
+import com.ydd.third.waimai.meituan.MeituanClient;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+/**
+ * 美团外卖相关api
+ * @author 叶君翔
+ * @date 2021/11/10 11:59
+ */
+@RestController
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+public class MeiTuanController {
+
+    private final MeituanClient meituanClient;
+
+    private final MeituanCallback meituanCallback;
+
+    private final Client client;
+
+    /**
+     * 同步骑手位置
+     */
+    @PostMapping(value="/meituan/syncRiderPosition")
+    public ResObject syncRiderPosition(@RequestBody SyncRiderPositionStatusVo syncRiderPositionVo) {
+        return meituanClient.syncRiderPosition(syncRiderPositionVo);
+    }
+
+    /**
+     * 获取美团解除绑定URL
+     */
+    @PostMapping(value="/meituan/shopReleaseBindUrl")
+    public String shopReleaseBindUrl(@RequestParam("token") String token, @RequestParam("shopCode") String shopCode, @RequestParam("businessId") String businessId) {
+        return meituanClient.shopReleaseBindUrl(token, shopCode, businessId);
+    }
+
+    /**
+     * 门店映射URL
+     */
+    @PostMapping(value="/meituan/storeMapUrl")
+    public String storeMapUrl(@RequestParam("shopCode") String shopCode, @RequestParam("shopName") String shopName, @RequestParam("mtBindType") Integer mtBindType) {
+        return meituanClient.storeMapUrl(shopCode, shopName, mtBindType);
+    }
+
+    /**
+     * 确认订单
+     */
+    @PostMapping(value="/meituan/confirmOrder")
+    public ResObject confirmOrder(@RequestBody ConfirmOrderVo confirmOrderVo) {
+        return meituanClient.confirmOrder(confirmOrderVo);
+    }
+
+    /**
+     * 门店映射回调
+     */
+    @PostMapping(value="/meituan/doStoreMap")
+    ResObject<MeituanShopMappingResultVo> doStoreMap(@RequestParam Map<String, String> params) {
+        return meituanCallback.doStoreMap(params);
+    }
+
+    /**
+     * 门店解除绑定
+     */
+    @PostMapping(value="/meituan/doShopReleaseBind")
+    ResObject<MeituanShopReleaseBindResultVo> doShopReleaseBind(@RequestParam Map<String, String> params) {
+        return meituanCallback.doShopReleaseBind(params);
+    }
+
+    /**
+     * 隐私号-降级回调
+     */
+    @PostMapping(value="/meituan/doPrivacyNoDecline")
+    ResObject doPrivacyNoDecline(@RequestParam Map<String, String> params) {
+        return meituanCallback.doPrivacyNoDecline(params);
+    }
+
+    /**
+     * 处理催单回调
+     */
+    @PostMapping(value="/meituan/doRemindOrder")
+    ResObject<MeituanRemindOrderResultVo> doRemindOrder(@RequestParam Map<String, String> params) {
+        return meituanCallback.doRemindOrder(params);
+    }
+
+    /**
+     * 处理订单部分退款回调
+     */
+    @PostMapping(value="/meituan/doOrderPartRefund")
+    public ResObject<MeituanOrderPartRefundResultVo> doOrderPartRefund(@RequestParam Map<String, String> params) {
+        return meituanCallback.doOrderPartRefund(params);
+    }
+
+    /**
+     * 处理订单完成回调
+     */
+    @PostMapping(value="/meituan/doFinishOrder")
+    ResObject<MeituanOrderResultVo> doFinishOrder(@RequestParam Map<String, String> params) {
+        return meituanCallback.doFinishOrder(params);
+    }
+
+    /**
+     * 处理已确认的订单回调
+     */
+    @PostMapping(value="/meituan/doConfirmOrder")
+    ResObject<MeituanOrderResultVo> doConfirmOrder(@RequestParam Map<String, String> params) {
+        return meituanCallback.doConfirmOrder(params);
+    }
+
+    /**
+     * 处理订单退款回调
+     */
+    @PostMapping(value="/meituan/doOrderRefund")
+    ResObject<MeituanOrderRefundResultVo> doOrderRefund(@RequestParam Map<String, String> params) {
+        return meituanCallback.doOrderRefund(params);
+    }
+
+
+    /**
+     * 处理订单取消回调
+     */
+    @PostMapping(value="/meituan/doCancelOrder")
+    ResObject<MeituanOrderCancelResultVo> doCancelOrder(@RequestParam Map<String, String> params) {
+        return meituanCallback.doCancelOrder(params);
+    }
+
+    /**
+     * 接收新订单推送
+     */
+    @PostMapping(value="/meituan/doWmNewOrder")
+    ResObject<MeituanWmoperOrderResultVo> doWmNewOrder(@RequestBody JSONObject jsonObject) {
+        return meituanCallback.doWmNewOrder(jsonObject);
+    }
+
+    /**
+     * 接收新订单推送
+     */
+    @PostMapping(value="/meituan/doNewOrder")
+    ResObject<MeituanOrderResultVo> doNewOrder(@RequestParam Map<String, String> params) {
+        return meituanCallback.doNewOrder(params);
+    }
+
+    /**
+     * 查询订单详情-外卖非接单
+     */
+    @GetMapping(value="/meituan/queryOrderDetail")
+    ResObject<MeituanWmOrderResultVo> queryOrderDetail(@RequestParam("appAuthToken") String appAuthToken, @RequestParam("orderId") String orderId) {
+        return meituanClient.queryOrderDetail(appAuthToken, orderId);
+    }
+
+    /**
+     * 外卖非接单-查询自配送订单的收货人信息
+     */
+    @GetMapping(value="/meituan/getRecipientInfo")
+    ResObject<MeituanWmRecipientInfoResultVo> getRecipientInfo(@RequestParam("appAuthToken") String appAuthToken, @RequestParam("orderId") String orderId){
+        return meituanClient.getRecipientInfo(appAuthToken, orderId);
+    }
+
+    /**
+     * 自配订单同步配送信息
+     */
+    @GetMapping(value="/syncRiderPositionStatus")
+    ResObject syncRiderPositionStatus(@RequestBody SyncRiderPositionStatusVo vo) {
+        return client.syncRiderPositionStatus(vo);
+    }
+
+    /**
+     * 查询菜品
+     */
+    @GetMapping(value="/queryFoodList")
+    ResObject queryFoodList(@RequestParam("authToken") String authToken) {
+        return meituanClient.queryFoodList(authToken);
+    }
+
+}

+ 0 - 8
lb-third/lb-third-waimai/src/main/java/com/ydd/third/controller/MeituanController.java

@@ -1,8 +0,0 @@
-package com.ydd.third.controller;
-
-/**
- * @author 叶君翔
- * @date 2021/11/10 11:59
- */
-public class MeituanController {
-}

+ 5 - 4
lb-third/lb-third-waimai/src/main/java/com/ydd/third/controller/PrintController.java

@@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.*;
  * @author 叶君翔
  * @date 2021/11/10 12:00
  */
+@RestController
 @RequestMapping(value = "/print")
 @RequiredArgsConstructor(onConstructor_ = @Autowired)
 public class PrintController {
@@ -33,7 +34,7 @@ public class PrintController {
     /**
      * 测试打印小票
      */
-    @PostMapping(value="/print/printTestOrder")
+    @PostMapping(value="/printTestOrder")
     public ResObject printTestOrder(@RequestBody PrintDto printDto) {
         printService.printTestOrder(printDto.getPrintOrderDto(), printDto.getPrintDeviceDto(), printDto.getShopId(), printDto.getIsforce());
         return ResObject.success();
@@ -42,7 +43,7 @@ public class PrintController {
     /**
      * 添加打印机
      */
-    @PostMapping(value="/print/addPrintSn")
+    @PostMapping(value="/addPrintSn")
     public String addPrintSn(@RequestParam("type") Integer type, @RequestParam("deviceSn") String deviceSn, @RequestParam("deviceSecret") String deviceSecret, @RequestParam("name") String name) {
         if (type == null || StringUtils.isEmpty(deviceSn) || StringUtils.isEmpty(deviceSecret)) {
             throw new BusinessException("添加打印机参数异常!");
@@ -53,7 +54,7 @@ public class PrintController {
     /**
      * 获取打印机状态
      */
-    @PostMapping(value="/print/printStatus")
+    @PostMapping(value="/printStatus")
     public ResObject<FeStatusResp> printStatus(@RequestParam("type") Integer type, @RequestParam("deviceSn") String deviceSn, @RequestParam("deviceSecret") String deviceSecret) {
         FeStatusResp resp = printService.printStatus(type, deviceSn, deviceSecret);
         return ResObject.success(resp);
@@ -62,7 +63,7 @@ public class PrintController {
     /**
      * 删除绑定打印机
      */
-    @GetMapping(value="/print/deleteSn")
+    @GetMapping(value="/deleteSn")
     public void deleteSn(@RequestParam("deviceSn") String deviceSn, @RequestParam("type") Integer type) {
         if (StringUtils.isEmpty(deviceSn) || type == null) {
             throw new BusinessException("删除打印机参数异常!");