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 getDiamondMall() async { RequestCenter.instance.requestGet(NetworkConfig.getDiamondMall, {}, (BaseEntity dataEntity) { if (dataEntity.code == 0) { List data = (dataEntity.data as List).map((e) => MallBean.fromJson(e as Map)).toList(); streamController.sink.add({ 'code': "getDiamondMall", //有数据 'data': data, }); } else { streamController.sink.add({ 'code': "error", // 'data': dataEntity.message, }); } }, (ErrorEntity errorEntity) { print("errorEntity==${errorEntity.message}"); }); } ///创建订单 Future 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 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 getUserInfo() async { RequestCenter.instance.requestGet(NetworkConfig.getUserInfo, {}, (BaseEntity dataEntity) { if (dataEntity.code == 0) { UserInfoBean userInfoBean = UserInfoBean.fromJson(dataEntity.data); NetworkConfig.userInfoBean = userInfoBean; } }, (ErrorEntity errorEntity) { print("errorEntity==${errorEntity.message}"); }); } }