Flutter物流运输插件uni_shipping的使用
Flutter物流运输插件uni_shipping的使用
概述
UniShipping 是一个专门为您的电子商务应用程序或其他需要与物流公司协调的产品分发系统集成物流功能的 Flutter 包。它简化了与物流 API 的交互,使管理订单和发货变得简单。
功能
- 使用您的客户端凭据初始化包。
- 创建要发送给客户的订单。
- 获取单个订单的详细信息。
- 启动订单的发货流程。
目前,UniShipping 专门与TOTROD物流公司合作,提供了一种直接从您的应用程序处理物流的方式。
开始使用
要在您的 Flutter 项目中使用 UniShipping,请遵循以下步骤:
安装
- 将 UniShipping 添加到您的
pubspec.yaml
文件中:
dependencies:
uni_shipping: latest_version
- 运行
flutter pub get
来安装该包。
使用
在您的 Dart 文件中导入 UniShipping:
import 'package:uni_shipping/uni_shipping.dart';
使用您的客户端凭据和环境设置初始化 UniShipping:
void main() {
UniShippingConfigs.init(
clientId: 'YourClientId',
clientSecret: 'YourClientSecret',
environment: UniShippingEnvironment.staging,
);
runApp(const MyApp());
}
创建订单
CreateOrderDTO createOrderBody = CreateOrderDTO(
// 您的订单详情
);
CreateOrderRes createOrderRes = await UniShippingOrders.createOrder(createOrderBody);
获取单个订单
OrderModel singleOrder = await UniShippingOrders.getSingleOrder('YourOrderID');
创建发货流程
CreateshipmentDTO createShipProcessBody = CreateshipmentDTO(
// 您的发货详情
);
ChipOrderResponse createShipProcessRes = await UniShippingShippment.createShipProcess(createShipProcessBody);
示例
示例应用演示了如何使用 UniShipping。您可以查看 example
目录以获取更多细节。
贡献
欢迎贡献!如果您希望贡献,请将仓库分叉并提交拉取请求。
许可证
UniShipping 在 MIT 许可证下可用。详情请参阅 LICENSE 文件。
以下是完整的示例代码:
import 'package:flutter/material.dart';
import 'package:uni_shipping/uni_shipping.dart';
const String clientId = 'your_client_id_here';
const String clientSecret = 'your_client_secret_here';
void main() {
UniShippingConfigs.init(
clientId: clientId,
clientSecret: clientSecret,
environment: UniShippingEnvironment.staging,
);
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp(
title: 'UniShipping 示例',
home: Scaffold(
appBar: AppBar(
title: const Text('UniShipping 示例'),
),
body: Center(
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
const Text(
'欢迎来到 UniShipping 示例',
style: TextStyle(fontSize: 20),
),
const SizedBox(height: 20),
//* 创建订单 -------------------------------------
ElevatedButton(
onPressed: () async {
CreateOrderDTO createOrderBody = CreateOrderDTO(
name: '客户端名称',
phone: '客户端电话',
itemDescription: '商品描述',
orderTotal: '订单总额',
// 重量(公斤)
weight: 10,
noOfBox: 1,
addressDTO: AddressDTO(
// 客户地址
latitude: 24.8413865,
longitude: 46.7332576,
),
);
try {
CreateOrderRes createOrderRes = await UniShippingOrders.createOrder(createOrderBody);
debugPrint('成功: ${createOrderRes.data?.toJson()}');
} catch (e) {
debugPrint(e.toString());
}
},
child: const Text('创建订单'),
),
const SizedBox(height: 20),
//* 获取单个订单 -------------------------------------
ElevatedButton(
onPressed: () async {
try {
OrderModel singleOrder = await UniShippingOrders.getSingleOrder('订单ID');
debugPrint('成功: ${singleOrder.toJson()}');
} catch (e) {
debugPrint(e.toString());
}
},
child: const Text('获取单个订单'),
),
const SizedBox(height: 20),
//* 创建发货流程 -------------------------------------
ElevatedButton(
onPressed: () async {
CreateshipmentDTO createShipProcessBody = CreateshipmentDTO(
orderId: '订单ID',
warehouse: '仓库ID',
courierPartnerId: '快递合作伙伴ID',
);
try {
ChipOrderResponse createShipProcessRes = await UniShippingShippment.createShipProcess(createShipProcessBody);
debugPrint('成功: ${createShipProcessRes.data?.toJson()}');
} catch (e) {
debugPrint(e.toString());
}
},
child: const Text('创建发货流程'),
),
],
),
),
),
);
}
}
更多关于Flutter物流运输插件uni_shipping的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复