1
0
mirror of synced 2025-12-22 00:48:00 +08:00

#1009 实现微信小程序物流助手相关接口

* 快递公司

* 绑定、解绑物流账号

* 配置面单打印员

* 获取打印员

* 增加微信文档地址说明

* 快递下单

* 快递下单和订单操作

* 补充文档地址
This commit is contained in:
mrxiao
2019-11-28 10:22:41 +08:00
committed by Binary Wang
parent 010464e399
commit 80f885fbfb
21 changed files with 1736 additions and 1 deletions

View File

@@ -0,0 +1,231 @@
package cn.binarywang.wx.miniapp.api.impl;
import cn.binarywang.wx.miniapp.api.WxMaExpressService;
import cn.binarywang.wx.miniapp.api.WxMaService;
import cn.binarywang.wx.miniapp.bean.express.*;
import cn.binarywang.wx.miniapp.bean.express.request.*;
import cn.binarywang.wx.miniapp.bean.express.result.WxMaExpressOrderInfoResult;
import cn.binarywang.wx.miniapp.constant.WxMaConstants;
import cn.binarywang.wx.miniapp.test.ApiTestModule;
import cn.binarywang.wx.miniapp.util.json.WxMaGsonBuilder;
import com.google.inject.Inject;
import me.chanjar.weixin.common.error.WxErrorException;
import org.apache.commons.lang3.StringUtils;
import org.testng.annotations.Guice;
import org.testng.annotations.Test;
import java.util.ArrayList;
import java.util.List;
@Guice(modules = ApiTestModule.class)
public class WxMaExpressServiceImplTest {
@Inject
private WxMaService wxMaService;
@Test
public void testGetAllDelivery() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
List<WxMaExpressDelivery> list = service.getAllDelivery();
System.out.println(WxMaGsonBuilder.create().toJson(list));
}
@Test
public void testGetAllAccount() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
List<WxMaExpressAccount> list = service.getAllAccount();
System.out.println(WxMaGsonBuilder.create().toJson(list));
}
@Test
public void testBindAccount() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressBindAccountRequest request = WxMaExpressBindAccountRequest.builder()
.deliveryId("YUNDA")
.bizId("******")
.password("*********")
.remarkContent("####")
.type(WxMaConstants.BindAccountType.BIND)
.build();
service.bindAccount(request);
}
@Test
public void testGetQuota() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressBindAccountRequest request = WxMaExpressBindAccountRequest.builder()
.deliveryId("YUNDA")
.bizId("******")
.build();
Integer quotaNum = service.getQuota(request);
System.out.println(quotaNum);
}
@Test
public void testUpdatePrinter() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressPrinterUpdateRequest request = WxMaExpressPrinterUpdateRequest.builder()
.openid("*************")
.updateType(WxMaConstants.BindAccountType.UNBIND)
.build();
service.updatePrinter(request);
}
@Test
public void testGetPrinter() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressPrinter printer = service.getPrinter();
System.out.println(WxMaGsonBuilder.create().toJson(printer));
}
@Test
public void testAddOrder() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressOrderPerson sender = new WxMaExpressOrderPerson();
sender.setName("张三");
sender.setMobile("177****9809");
sender.setProvince("北京市");
sender.setCity("朝阳区");
sender.setArea("朝阳区");
sender.setAddress("西坝河****C-102");
WxMaExpressOrderPerson receiver = new WxMaExpressOrderPerson();
receiver.setName("李四");
receiver.setMobile("180****8772");
receiver.setProvince("北京市");
receiver.setCity("朝阳区");
receiver.setArea("朝阳区");
receiver.setAddress("西坝河北里****101");
WxMaExpressOrderCargo cargo = new WxMaExpressOrderCargo();
List<WxMaExpressOrderCargoDetail> detailList = new ArrayList<>();
List<String> shopNames = new ArrayList<>();
Integer goodsCount = 0;
for (int i = 0; i < 4; i++) {
WxMaExpressOrderCargoDetail detail = new WxMaExpressOrderCargoDetail();
String shopName = "商品_"+i;
detail.setName(shopName);
detail.setCount(1);
detailList.add(detail);
shopNames.add(shopName);
goodsCount ++;
}
cargo.setCount(detailList.size());
cargo.setWeight(5);
cargo.setSpaceHeight(10);
cargo.setSpaceLength(10);
cargo.setSpaceWidth(10);
cargo.setDetailList(detailList);
WxMaExpressOrderShop shop = new WxMaExpressOrderShop();
shop.setWxaPath("/index/index?from=waybill&id=01234567890123456789");
shop.setGoodsName(StringUtils.join(shopNames,"&"));
shop.setGoodsCount(goodsCount);
shop.setImgUrl("https://mmbiz.qpic.cn/mmbiz_png/OiaFLUqewuIDNQnTiaCInIG8ibdosYHhQHPbXJUrqYSNIcBL60vo4LIjlcoNG1QPkeH5GWWEB41Ny895CokeAah8A/640");
WxMaExpressDelivery.ServiceType serviceType = new WxMaExpressDelivery.ServiceType();
serviceType.setServiceName("test_service_name");
serviceType.setServiceType(1);
WxMaExpressAddOrderRequest request = WxMaExpressAddOrderRequest.builder()
.addSource(WxMaConstants.OrderAddSource.MINI_PROGRAM)
.orderId("test201911271429004")
.openid("oAg_-0PDUPuLbQw9V9kXE9OkU-Vo")
.deliveryId("TEST")
.bizId("test_biz_id")
.customRemark("")
.expectTime(0L)
.sender(sender)
.receiver(receiver)
.cargo(cargo)
.shop(shop)
.insured(WxMaExpressOrderInsured.builder().build())
.service(serviceType)
.build();
WxMaExpressOrderInfoResult result = service.addOrder(request);
System.out.println(WxMaGsonBuilder.create().toJson(result));
}
@Test
public void testBatchGetOrder() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
List<WxMaExpressGetOrderRequest> requests = new ArrayList<>();
List<String> orderIds = new ArrayList<>();
orderIds.add("test201911271429000");
List<String> waybillIds = new ArrayList<>();
waybillIds.add("test201911271429000_1574836404_waybill_id");
for (int i = 0; i < orderIds.size(); i++) {
WxMaExpressGetOrderRequest request = WxMaExpressGetOrderRequest.builder()
.orderId(orderIds.get(i))
.deliveryId("TEST")
.waybillId(waybillIds.get(i))
.build();
requests.add(request);
}
List<WxMaExpressOrderInfoResult> results = service.batchGetOrder(requests);
System.out.println(WxMaGsonBuilder.create().toJson(results));
}
@Test
public void testCancelOrder() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressGetOrderRequest request = WxMaExpressGetOrderRequest.builder()
.orderId("test201911271429000")
.deliveryId("TEST")
.waybillId("test201911271429000_1574836404_waybill_id")
.openid("oAg_-0PDUPuLbQw9V9kXE9OkU-Vo")
.build();
service.cancelOrder(request);
}
@Test
public void testGetOrder() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressGetOrderRequest request = WxMaExpressGetOrderRequest.builder()
.orderId("test201911271429000")
.deliveryId("TEST")
.waybillId("test201911271429000_1574836404_waybill_id")
.openid("oAg_-0PDUPuLbQw9V9kXE9OkU-Vo")
.build();
WxMaExpressOrderInfoResult result = service.getOrder(request);
System.out.println(WxMaGsonBuilder.create().toJson(result));
}
@Test
public void testGetPath() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressGetOrderRequest request = WxMaExpressGetOrderRequest.builder()
.orderId("test201911271429000")
.deliveryId("TEST")
.waybillId("test201911271429000_1574836404_waybill_id")
.openid("oAg_-0PDUPuLbQw9V9kXE9OkU-Vo")
.build();
WxMaExpressPath path = service.getPath(request);
System.out.println(WxMaGsonBuilder.create().toJson(path));
}
@Test
public void testTestUpdateOrder() throws WxErrorException {
final WxMaExpressService service = wxMaService.getExpressService();
WxMaExpressTestUpdateOrderRequest request = WxMaExpressTestUpdateOrderRequest.builder()
.orderId("test201911271429000")
.waybillId("test201911271429000_1574836404_waybill_id")
.actionTime(1574850455L)
.actionType(300002)
.actionMsg("开始派送")
.build();
service.testUpdateOrder(request);
}
}