Commit b01a52bf by 缪晖

发起群收款测试

parent 1c51a7bb
package com.freemud.sdk.api.assortment.order.request.order;
import lombok.Data;
import java.util.List;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0.0
* @Description:
* @author: hui.miao
* @date: 2020-11-28 16:37
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public class GroupBuyRequest {
private String out_trade_no;
private String recv_openid;
private PayList pay_list;
private Integer scene;
private Desc desc;
private Long order_time;
private String order_id;
@Data
public static class PayList {
private List<UserInfo> user_info;
}
@Data
public static class UserInfo {
private String openid;
private Integer amount;
}
@Data
public static class Desc {
private String text_desc;
private String pic_url;
private String pic_md5;
}
}
package com.freemud.sdk.api.assortment.order.response.order;
import lombok.Data;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0.0
* @Description:
* @author: hui.miao
* @date: 2020-11-28 16:54
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public class GroupBuyResponse {
private String order_id;
private Integer errcode;
private String errmsg;
}
package cn.freemud.controller.test; package cn.freemud.controller.test;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.wechat.GetAuthorizerRequestDto;
import cn.freemud.entities.dto.wechat.GetTokenResponseDto;
import cn.freemud.service.thirdparty.EcologyAdminApplicationClient;
import cn.freemud.service.thirdparty.WeChatClient;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.log.ApiAnnotation; import com.freemud.application.sdk.api.log.ApiAnnotation;
import com.freemud.application.sdk.api.log.LogParams; import com.freemud.application.sdk.api.log.LogParams;
import com.freemud.sdk.api.assortment.order.request.order.GroupBuyRequest;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import java.util.ArrayList;
import org.springframework.web.bind.annotation.RestController; import java.util.List;
/** /**
* All rights Reserved, Designed By www.freemud.com * All rights Reserved, Designed By www.freemud.com
...@@ -28,6 +35,11 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -28,6 +35,11 @@ import org.springframework.web.bind.annotation.RestController;
@Validated @Validated
public class TestController { public class TestController {
@Autowired
private EcologyAdminApplicationClient ecologyAdminApplicationClient;
@Autowired
private WeChatClient weChatClient;
@ApiAnnotation(logMessage = "orderStatusChange") @ApiAnnotation(logMessage = "orderStatusChange")
@PostMapping("/orderStatusChange") @PostMapping("/orderStatusChange")
public PlatformBaseResponse orderStatusChange(@Validated @LogParams @RequestBody PlatformBaseRequest checkBeforeCreateOrderRequestVo) { public PlatformBaseResponse orderStatusChange(@Validated @LogParams @RequestBody PlatformBaseRequest checkBeforeCreateOrderRequestVo) {
...@@ -53,4 +65,55 @@ public class TestController { ...@@ -53,4 +65,55 @@ public class TestController {
return platformBaseResponse; return platformBaseResponse;
} }
@GetMapping("/test/groupBuy")
public BaseResponse testOrderDelivery() {
String partnerId = "1864";
String appId = "wxb78fb7c6218cb52c";
GetAuthorizerRequestDto getAuthorizerRequestDto = new GetAuthorizerRequestDto();
getAuthorizerRequestDto.setPartnerId(partnerId);
getAuthorizerRequestDto.setAuthorizerAppid(appId);
GetTokenResponseDto getTokenResponseDto = ecologyAdminApplicationClient.getAuthorizerAccessToken(getAuthorizerRequestDto);
String accessToken = getTokenResponseDto.getResult().getAccessToken();
log.info("token:{}", accessToken);
GroupBuyRequest groupBuyRequest = new GroupBuyRequest();
groupBuyRequest.setOut_trade_no("88888888");
groupBuyRequest.setRecv_openid("oORZK5NUo7sDvuJwPwbehqq360Tw");
groupBuyRequest.setScene(1);
// pay_list
GroupBuyRequest.PayList payList = new GroupBuyRequest.PayList();
List<GroupBuyRequest.UserInfo> userInfoList = new ArrayList<>();
GroupBuyRequest.UserInfo userInfo1 = new GroupBuyRequest.UserInfo();
userInfo1.setOpenid("oORZK5A8hrejg0uBVSlkpv-KPgv4");
userInfo1.setAmount(1);
GroupBuyRequest.UserInfo userInfo2 = new GroupBuyRequest.UserInfo();
userInfo2.setOpenid("ohvIM0VbQw41wCznsgYHu7W6W_bA");
userInfo2.setAmount(2);
GroupBuyRequest.UserInfo userInfo3 = new GroupBuyRequest.UserInfo();
userInfo3.setOpenid("oORZK5MHMBm78PO302NdRyzIY5K0");
userInfo3.setAmount(3);
userInfoList.add(userInfo1);
userInfoList.add(userInfo2);
userInfoList.add(userInfo2);
payList.setUser_info(userInfoList);
groupBuyRequest.setPay_list(payList);
// desc
GroupBuyRequest.Desc desc = new GroupBuyRequest.Desc();
desc.setText_desc("非码商户 20201128");
//String requestUrl = "https://api.weixin.qq.com/wxa/business/groupBuy/createOrder?access_token=" + accessToken;
String result = weChatClient.groupBuyCreateOrder(accessToken, groupBuyRequest);
BaseResponse baseResponse = new BaseResponse();
baseResponse.setResult(result);
log.info("response:{}",JSONObject.toJSONString(baseResponse));
return baseResponse;
}
} }
...@@ -15,6 +15,7 @@ package cn.freemud.service.impl; ...@@ -15,6 +15,7 @@ package cn.freemud.service.impl;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.wechat.GroupBuyResp; import cn.freemud.entities.dto.wechat.GroupBuyResp;
import com.freemud.sdk.api.assortment.order.response.order.GroupBuyResponse;
import cn.freemud.entities.vo.CreateOrderVo; import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.WechatGroupBuyVo; import cn.freemud.entities.vo.WechatGroupBuyVo;
import cn.freemud.enums.OrderMarketType; import cn.freemud.enums.OrderMarketType;
......
...@@ -15,6 +15,7 @@ package cn.freemud.service.thirdparty; ...@@ -15,6 +15,7 @@ package cn.freemud.service.thirdparty;
import cn.freemud.entities.dto.GetWxQrcodeDto; import cn.freemud.entities.dto.GetWxQrcodeDto;
import cn.freemud.entities.dto.WeChatGetAccessTokenResponseDto; import cn.freemud.entities.dto.WeChatGetAccessTokenResponseDto;
import cn.freemud.entities.dto.WechatSendMessageDto; import cn.freemud.entities.dto.WechatSendMessageDto;
import com.freemud.sdk.api.assortment.order.request.order.GroupBuyRequest;
import org.springframework.cloud.netflix.feign.FeignClient; import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -67,6 +68,11 @@ public interface WeChatClient { ...@@ -67,6 +68,11 @@ public interface WeChatClient {
/**
* 发起群收款
*/
@PostMapping(value = "wxa/business/groupBuy/createOrder?access_token={accessToken}",
produces = MediaType.APPLICATION_FORM_URLENCODED_VALUE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
String groupBuyCreateOrder(@PathVariable("accessToken") String accessToken, @RequestBody GroupBuyRequest groupBuyRequest);
} }
package cn.freemud.service; package cn.freemud.client;
import cn.freemud.entities.dto.wechat.GetAuthorizerRequestDto; import cn.freemud.entities.dto.wechat.GetAuthorizerRequestDto;
import cn.freemud.entities.dto.wechat.GetTokenResponseDto; import cn.freemud.entities.dto.wechat.GetTokenResponseDto;
import cn.freemud.entities.vo.WechatGroupBuyVo;
import cn.freemud.service.thirdparty.EcologyAdminApplicationClient; import cn.freemud.service.thirdparty.EcologyAdminApplicationClient;
import cn.freemud.service.thirdparty.WeChatClient;
import com.freemud.sdk.api.assortment.order.request.order.GroupBuyRequest;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
...@@ -13,6 +16,9 @@ import org.springframework.cloud.client.discovery.EnableDiscoveryClient; ...@@ -13,6 +16,9 @@ import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.feign.EnableFeignClients; import org.springframework.cloud.netflix.feign.EnableFeignClients;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.util.ArrayList;
import java.util.List;
/** /**
* All rights Reserved, Designed By www.freemud.cn * All rights Reserved, Designed By www.freemud.cn
* *
...@@ -29,10 +35,12 @@ import org.springframework.test.context.junit4.SpringRunner; ...@@ -29,10 +35,12 @@ import org.springframework.test.context.junit4.SpringRunner;
@EnableFeignClients @EnableFeignClients
@EnableAutoConfiguration @EnableAutoConfiguration
@Slf4j @Slf4j
public class GroupBuyTest { public class EcologyAdminApplicationClientTest {
@Autowired @Autowired
private EcologyAdminApplicationClient ecologyAdminApplicationClient; private EcologyAdminApplicationClient ecologyAdminApplicationClient;
@Autowired
private WeChatClient weChatClient;
@Test @Test
public void accessToken() { public void accessToken() {
...@@ -47,6 +55,49 @@ public class GroupBuyTest { ...@@ -47,6 +55,49 @@ public class GroupBuyTest {
@Test @Test
public void groupBuy() { public void groupBuy() {
String partnerId = "1864";
String appId = "wxb78fb7c6218cb52c";
GetAuthorizerRequestDto getAuthorizerRequestDto = new GetAuthorizerRequestDto();
getAuthorizerRequestDto.setPartnerId(partnerId);
getAuthorizerRequestDto.setAuthorizerAppid(appId);
GetTokenResponseDto getTokenResponseDto = ecologyAdminApplicationClient.getAuthorizerAccessToken(getAuthorizerRequestDto);
String accessToken = getTokenResponseDto.getResult().getAccessToken();
log.info("token:{}", accessToken);
GroupBuyRequest groupBuyRequest = new GroupBuyRequest();
groupBuyRequest.setOut_trade_no("88888888");
groupBuyRequest.setRecv_openid("oORZK5NUo7sDvuJwPwbehqq360Tw");
groupBuyRequest.setScene(1);
// pay_list
GroupBuyRequest.PayList payList = new GroupBuyRequest.PayList();
List<GroupBuyRequest.UserInfo> userInfoList = new ArrayList<>();
GroupBuyRequest.UserInfo userInfo1 = new GroupBuyRequest.UserInfo();
userInfo1.setOpenid("oORZK5A8hrejg0uBVSlkpv-KPgv4");
userInfo1.setAmount(1);
GroupBuyRequest.UserInfo userInfo2 = new GroupBuyRequest.UserInfo();
userInfo2.setOpenid("ohvIM0VbQw41wCznsgYHu7W6W_bA");
userInfo2.setAmount(2);
GroupBuyRequest.UserInfo userInfo3 = new GroupBuyRequest.UserInfo();
userInfo3.setOpenid("oORZK5MHMBm78PO302NdRyzIY5K0");
userInfo3.setAmount(3);
userInfoList.add(userInfo1);
userInfoList.add(userInfo2);
userInfoList.add(userInfo2);
payList.setUser_info(userInfoList);
groupBuyRequest.setPay_list(payList);
// desc
GroupBuyRequest.Desc desc = new GroupBuyRequest.Desc();
desc.setText_desc("非码商户 20201128");
//String requestUrl = "https://api.weixin.qq.com/wxa/business/groupBuy/createOrder?access_token=" + accessToken;
String result = weChatClient.groupBuyCreateOrder(accessToken, groupBuyRequest);
log.info(result);
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment