gongfuzhu 9 mesi fa
parent
commit
e7d8b92678

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

@@ -0,0 +1,18 @@
+package com.zswl.cloud.springBatch.client.model.video2;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class RechargeRequest {
+
+    private String outTradeNo;
+    private Integer productId;
+    private String rechargeAccount;
+    private Integer accountType;
+    private Integer number;
+    private String extendParameter = "";
+}

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

@@ -0,0 +1,31 @@
+package com.zswl.cloud.springBatch.client.service;
+
+import com.eeext.openapi.entity.RechargeQueryResp;
+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 {
+
+    @ApiOperation("下单")
+    @RequestMapping(value = "rechargeOrder", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
+     ResultContent<Boolean> rechargeOrder(@RequestBody RechargeRequest rechargeRequest);
+
+    @ApiOperation("充值查询")
+    @RequestMapping(value = "rechargeQuery", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
+    ResultContent<RechargeQueryResp> rechargeQuery(@RequestParam("outTradeNo") String outTradeNo);
+}

+ 1 - 1
SpringBatchServiceServer/src/main/java/com/zswl/cloud/springBtach/server/core/api/video2/Video2Api.java

@@ -68,7 +68,7 @@ public class Video2Api {
      * @return
      */
     @SneakyThrows
-    public RechargeQueryResp rechargeOrder(String outTradeNo) {
+    public RechargeQueryResp rechargeQuery(String outTradeNo) {
         RechargeQueryResp rechargeQueryResp = client.rechargeQuery(outTradeNo);
 // 第三步:判断CODE是否为下单成功。注意:有些接口需要判断api.CodeResponseSuccess,具体以接口详情为准
         if (rechargeQueryResp.isSuccess()) {

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

@@ -3,10 +3,7 @@ package com.zswl.cloud.springBtach.server.core.service.impl;
 import cn.hutool.core.lang.Snowflake;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
-import com.eeext.openapi.entity.NotifyOrderReq;
-import com.eeext.openapi.entity.ProductItemResp;
-import com.eeext.openapi.entity.RechargeOrderReq;
-import com.eeext.openapi.entity.RechargeProductResp;
+import com.eeext.openapi.entity.*;
 import com.github.microservice.auth.client.content.ResultContent;
 import com.github.microservice.auth.client.content.ResultState;
 import com.github.microservice.auth.security.helper.AuthHelper;
@@ -17,9 +14,13 @@ import com.zhongshu.payment.client.type.*;
 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.SharePlatformVo;
+import com.zswl.cloud.springBatch.client.model.video2.RechargeRequest;
+import com.zswl.cloud.springBatch.client.service.Video2Service;
 import com.zswl.cloud.springBtach.server.core.api.video2.Video2Api;
 import lombok.extern.log4j.Log4j2;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
@@ -29,7 +30,7 @@ import java.util.stream.Collectors;
 
 @Service
 @Log4j2
-public class Video2ServiceImpl {
+public class Video2ServiceImpl implements Video2Service {
 
     @Autowired
     private Video2Api video2Api;
@@ -47,7 +48,8 @@ public class Video2ServiceImpl {
     OrderService2 orderService2;
     @Autowired
     private PaymentService2 paymentService2;
-
+    @Value("${video2.notifyUrl}")
+    private String notifyUrl;
     /**
      * 商品列表
      *
@@ -149,6 +151,25 @@ public class Video2ServiceImpl {
         updateGoodsModel.setExtend(JSONUtil.parseObj(notifyOrderReq));
         orderService2.updateGoods(updateGoodsModel);
 
+    }
+
+
+    public ResultContent<Boolean> rechargeOrder(RechargeRequest rechargeRequest){
+        RechargeOrderReq rechargeOrderReq = new RechargeOrderReq();
+        rechargeOrderReq.setNotifyUrl(notifyUrl);
+        BeanUtils.copyProperties(rechargeRequest, rechargeOrderReq);
+        ResultContent<CreatOrderResultModel> creatOrderResultModelResultContent = creatOrder(rechargeOrderReq);
+        if (creatOrderResultModelResultContent.getState().equals(ResultState.Success)) {
+            return ResultContent.build(ResultState.Fail,creatOrderResultModelResultContent.getContent());
+        }
+        if (video2Api.rechargeOrder(rechargeOrderReq).isSuccess()) {
+            return ResultContent.buildContent(ResultState.Success);
+        }
+        return ResultContent.buildContent(ResultState.Fail);
+    }
+
+    public ResultContent<RechargeQueryResp> rechargeQuery(String outTradeNo) {
 
+        return ResultContent.buildContent(video2Api.rechargeQuery(outTradeNo));
     }
 }