AI_Drawing/lib/tools/shop/shop_model.dart
2024-06-03 15:30:15 +08:00

98 lines
2.7 KiB
Dart

import 'dart:async';
import 'package:aiplot/bean/create_order_bean.dart';
import 'package:aiplot/network/NetworkConfig.dart';
import 'package:aiplot/network/RequestCenter.dart';
import '../../bean/product_bean.dart';
import '../../network/BaseEntity.dart';
class ShopModel {
StreamController streamController = StreamController.broadcast();
ShopModel() {
setup();
}
void setup() {
//初始化
}
//获取商品列表
Future<void> getProductList() async {
RequestCenter.instance.requestPlay(NetworkConfig.getProductList, {}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
List<ProductBean> data = (dataEntity.data as List<dynamic>).map((e) => ProductBean.fromJson(e as Map<String, dynamic>)).toList();
streamController.sink.add({
'code': "getProductList", //有数据
'data': data,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.code,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.code,
});
});
}
//生成订单
Future<void> createOrder(String productId) async {
RequestCenter.instance.requestPlay(NetworkConfig.createOrder, {
"ProductId": productId,
}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
Map<String, dynamic> json = dataEntity.data;
CreateOrderBean data = CreateOrderBean.fromJson(json);
streamController.sink.add({
'code': "createOrder", //有数据
'data': data,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.code,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.code,
});
});
}
//完成订单
Future<void> completeOrder(String orderCode, String productId, String token) async {
RequestCenter.instance.requestPlay(NetworkConfig.completeOrder, {
"OrderCode": orderCode,
"ProductId": productId,
"Token": token,
}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
Map<String, dynamic> json = dataEntity.data;
CreateOrderBean data = CreateOrderBean.fromJson(json);
streamController.sink.add({
'code': "completeOrder", //有数据
'data': data,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.code,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.code,
});
});
}
}