113 lines
3.3 KiB
Dart
113 lines
3.3 KiB
Dart
import 'dart:async';
|
|
|
|
import '../../beans/create_order_bean.dart';
|
|
import '../../beans/mall_bean.dart';
|
|
import '../../beans/user_info_bean.dart';
|
|
import '../../network/BaseEntity.dart';
|
|
import '../../network/NetworkConfig.dart';
|
|
import '../../network/RequestCenter.dart';
|
|
|
|
class ShopModel {
|
|
StreamController streamController = StreamController.broadcast();
|
|
|
|
ShopModel() {
|
|
setup();
|
|
}
|
|
|
|
void setup() {
|
|
//初始化
|
|
}
|
|
|
|
///商城数据
|
|
Future<void> getDiamondMall() async {
|
|
RequestCenter.instance.requestGet(NetworkConfig.getDiamondMall, {}, (BaseEntity dataEntity) {
|
|
if (dataEntity.code == 0) {
|
|
List<MallBean> data = (dataEntity.data as List<dynamic>).map((e) => MallBean.fromJson(e as Map<String, dynamic>)).toList();
|
|
streamController.sink.add({
|
|
'code': "getDiamondMall", //有数据
|
|
'data': data,
|
|
});
|
|
} else {
|
|
streamController.sink.add({
|
|
'code': "error", //
|
|
'data': dataEntity.message,
|
|
});
|
|
}
|
|
}, (ErrorEntity errorEntity) {
|
|
print("errorEntity==${errorEntity.message}");
|
|
});
|
|
}
|
|
|
|
///创建订单
|
|
Future<void> createOrder(productId, paymentMethod) async {
|
|
RequestCenter.instance.request(NetworkConfig.createOrder, {
|
|
"productId": productId,
|
|
"paymentMethod": paymentMethod,
|
|
}, (BaseEntity dataEntity) {
|
|
if (dataEntity.code == 0) {
|
|
CreateOrderBean createOrderBean = CreateOrderBean.fromJson(dataEntity.data);
|
|
NetworkConfig.orderId = createOrderBean.orderId.toString();
|
|
print("dataEntity.data==${dataEntity.data}");
|
|
|
|
if (paymentMethod == "wx") {
|
|
streamController.sink.add({
|
|
'code': "createOrderWx", //有数据
|
|
'data': createOrderBean,
|
|
});
|
|
} else {
|
|
streamController.sink.add({
|
|
'code': "createOrderZfb", //有数据
|
|
'data': createOrderBean,
|
|
});
|
|
}
|
|
} else {
|
|
streamController.sink.add({
|
|
'code': "error", //
|
|
'data': dataEntity.message,
|
|
});
|
|
}
|
|
}, (ErrorEntity errorEntity) {
|
|
print("errorEntity==${errorEntity.message}");
|
|
});
|
|
}
|
|
|
|
///查询订单
|
|
Future<void> getOrderRewardsInfo() async {
|
|
RequestCenter.instance.requestGet(NetworkConfig.getOrderRewardsInfo, {
|
|
"orderId": NetworkConfig.orderId,
|
|
}, (BaseEntity dataEntity) {
|
|
if (dataEntity.code == 0) {
|
|
print("dataEntity.data==${dataEntity.data}");
|
|
getUserInfo();
|
|
streamController.sink.add({
|
|
'code': "getOrderRewardsInfo", //有数据
|
|
'data': dataEntity.message,
|
|
});
|
|
} else {
|
|
streamController.sink.add({
|
|
'code': "error", //
|
|
'data': dataEntity.message,
|
|
});
|
|
}
|
|
}, (ErrorEntity errorEntity) {
|
|
print("errorEntity==${errorEntity.message}");
|
|
});
|
|
}
|
|
|
|
///用户信息
|
|
Future<void> getUserInfo() async {
|
|
RequestCenter.instance.requestGet(NetworkConfig.getUserInfo, {}, (BaseEntity dataEntity) {
|
|
if (dataEntity.code == 0) {
|
|
UserInfoBean userInfoBean = UserInfoBean.fromJson(dataEntity.data);
|
|
NetworkConfig.userInfoBean = userInfoBean;
|
|
streamController.sink.add({
|
|
'code': "getUserInfo", //有数据
|
|
'data': "data",
|
|
});
|
|
}
|
|
}, (ErrorEntity errorEntity) {
|
|
print("errorEntity==${errorEntity.message}");
|
|
});
|
|
}
|
|
}
|