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

226 lines
6.8 KiB
Dart

import 'dart:async';
import 'package:aiplot/bean/gallery_label_bean.dart';
import 'package:aiplot/bean/levitating_ball_bean.dart';
import 'package:aiplot/network/NetworkConfig.dart';
import 'package:aiplot/network/RequestCenter.dart';
import '../../bean/gallery_work_label_bean.dart';
import '../../bean/gallery_work_list_bean.dart';
import '../../bean/recommender_bean.dart';
import '../../network/BaseEntity.dart';
class GalleryContentModel {
StreamController streamController = StreamController.broadcast();
GalleryContentModel() {
setup();
}
void setup() {
//初始化
}
//获取画廊
Future<void> getGalleryLableList() async {
RequestCenter.instance.requestPlay(NetworkConfig.getGalleryLableList, {}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
List<GalleryLabelBean> data = (dataEntity.data as List<dynamic>).map((e) => GalleryLabelBean.fromJson(e as Map<String, dynamic>)).toList();
streamController.sink.add({
'code': "getGalleryLableList", //有数据
'data': data,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.code,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.code,
});
});
}
//悬浮球
Future<void> getLevitatingBall() async {
RequestCenter.instance.requestPlay(NetworkConfig.getLevitatingBall, {}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
Map<String, dynamic> json = dataEntity.data;
LevitatingBallBean data = LevitatingBallBean.fromJson(json);
streamController.sink.add({
'code': "getLevitatingBall", //有数据
'data': data,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.message,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.message,
});
});
}
//领取悬浮球
Future<void> receiveAwardNewUserPackage() async {
RequestCenter.instance.requestPlay(NetworkConfig.receiveAwardNewUserPackage, {}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
streamController.sink.add({
'code': "receiveAwardNewUserPackage", //有数据
'data': dataEntity.message,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.message,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.message,
});
});
}
//画廊推荐达人
Future<void> getRecommenderList() async {
RequestCenter.instance.requestPlay(NetworkConfig.getRecommenderList, {}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
List<RecommenderBean> data = (dataEntity.data as List<dynamic>).map((e) => RecommenderBean.fromJson(e as Map<String, dynamic>)).toList();
streamController.sink.add({
'code': "getRecommenderList", //有数据
'data': data,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.message,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.message,
});
});
}
//画廊标签列表
Future<void> getGalleryWorkLabel() async {
RequestCenter.instance.requestPlay(NetworkConfig.getGalleryWorkLabel, {}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
List<GalleryWorkLabelBean> data =
(dataEntity.data as List<dynamic>).map((e) => GalleryWorkLabelBean.fromJson(e as Map<String, dynamic>)).toList();
streamController.sink.add({
'code': "getGalleryWorkLabel", //有数据
'data': data,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.message,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.message,
});
});
}
//根据标签获取画廊作品
Future<void> getWorksListByLabel(labelId, int childId, int index, bool isLoad) async {
RequestCenter.instance.requestPlay(NetworkConfig.getWorksListByLabel, {
"labelId": labelId,
"childId": childId,
"index": index,
"size": 20,
}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
List<GalleryWorkListBean> data =
(dataEntity.data as List<dynamic>).map((e) => GalleryWorkListBean.fromJson(e as Map<String, dynamic>)).toList();
streamController.sink.add({
'code': "getWorksListByLabel", //有数据
'data': data,
'isLoad': isLoad,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.message,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.message,
});
});
}
//收藏
Future<void> userDrawCollect(bool isCollect, String drawId) async {
RequestCenter.instance.requestPlay(NetworkConfig.userDrawCollect, {
"IsCollect": isCollect,
"DrawId": drawId,
}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
// List<UserDrawBean> data = (dataEntity.data as List<dynamic>).map((e) => UserDrawBean.fromJson(e as Map<String, dynamic>)).toList();
streamController.sink.add({
'code': "userDrawCollect", //有数据
'data': dataEntity.message,
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.message,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.code,
});
});
}
//收藏
Future<void> getUserHomePageByPw(String invitationCode) async {
RequestCenter.instance.requestPlay(NetworkConfig.getUserHomePageByPw, {
"invitationCode": invitationCode,
}, (BaseEntity dataEntity) {
if (dataEntity.code == 0) {
// List<UserDrawBean> data = (dataEntity.data as List<dynamic>).map((e) => UserDrawBean.fromJson(e as Map<String, dynamic>)).toList();
streamController.sink.add({
'code': "getUserHomePageByPw", //有数据
'data': dataEntity.data['UserId'],
});
} else {
streamController.sink.add({
'code': "-1", //
'data': dataEntity.message,
});
}
}, (ErrorEntity errorEntity) {
streamController.sink.add({
'code': "0", //无数据
'data': errorEntity.code,
});
});
}
}