You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
app/lib/pages/upgradeCard/upgrade_card_send_page_v2.dart

74 lines
2.3 KiB

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:recook/constants/api_v2.dart';
import 'package:recook/manager/http_manager.dart';
import 'package:recook/pages/user/model/user_common_model.dart';
import 'package:recook/pages/user/widget/user_group_card.dart';
import 'package:recook/utils/user_level_tool.dart';
import 'package:recook/widgets/recook/recook_scaffold.dart';
import 'package:recook/widgets/refresh_widget.dart';
class UpgradeeCardSendPageV2 extends StatefulWidget {
UpgradeeCardSendPageV2({Key key}) : super(key: key);
@override
_UpgradeeCardSendPageV2State createState() => _UpgradeeCardSendPageV2State();
}
class _UpgradeeCardSendPageV2State extends State<UpgradeeCardSendPageV2> {
int _page = 1;
Future<List<UserCommonModel>> fetchList(String searchCond) async {
ResultData resultData = await HttpManager.post(APIV2.userAPI.myGroup, {
"keyword": '',
});
if (resultData == null ||
resultData.data == null ||
resultData.data['data'] == null) return [];
return (resultData.data['data'] as List)
.map((e) => UserCommonModel.fromJson(e))
.toList();
}
List<UserCommonModel> _models = [];
GSRefreshController _refreshController =
GSRefreshController(initialRefresh: true);
@override
Widget build(BuildContext context) {
return RecookScaffold(
title: '权益卡赠送',
body: RefreshWidget(
onRefresh: () async {
_page = 1;
_models = await fetchList('');
_refreshController.refreshCompleted();
setState(() {});
},
controller: _refreshController,
body: ListView.builder(
itemBuilder: (context, index) {
final item = _models[index];
return UserGroupCard(
name: item.nickname,
wechatId: item.wechatNo,
phone: item.phone,
shopRole: UserLevelTool.roleLevelEnum(item.roleLevel),
groupCount: item.count,
headImg: item.headImgUrl,
id: item.userId,
isRecommend: false,
remarkName: item.remarkName,
onTap: () => Get.back(result: item.userId),
);
},
itemCount: _models.length,
),
),
);
}
}