对接使用角色卡接口

master
laiiihz 4 years ago
parent 6ec7835981
commit de31b1592e

@ -3,6 +3,7 @@ class UserCardModel {
String code;
int type;
int source;
String sourceName;
int status;
int giveUserId;
String giveUserNickname;
@ -14,6 +15,7 @@ class UserCardModel {
this.code,
this.type,
this.source,
this.sourceName,
this.status,
this.giveUserId,
this.giveUserNickname,
@ -25,6 +27,7 @@ class UserCardModel {
code = json['code'];
type = json['type'];
source = json['source'];
sourceName = json['scourceName'];
status = json['status'];
giveUserId = json['giveUserId'];
giveUserNickname = json['giveUserNickname'];

@ -1,7 +1,11 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:oktoast/oktoast.dart';
import 'package:recook/constants/api_v2.dart';
import 'package:recook/manager/http_manager.dart';
import 'package:recook/pages/upgradeCard/function/user_card_function.dart';
import 'package:recook/pages/upgradeCard/model/user_card_%20model.dart';
import 'package:recook/pages/upgradeCard/upgrade_card_use_result_page.dart';
import 'package:recook/widgets/alert.dart';
import 'package:recook/widgets/refresh_widget.dart';
import 'package:velocity_x/velocity_x.dart';
@ -36,18 +40,22 @@ class _UpgradeUnusedViewState extends State<UpgradeUnusedView> {
_page = 1;
_cards = await UserCardFunction.fetchList(_page, 0);
_refreshController.refreshCompleted();
setState(() {});
},
onLoadMore: () async {
_page++;
_cards.addAll(await UserCardFunction.fetchList(_page, 0));
_refreshController.refreshCompleted();
_refreshController.loadComplete();
setState(() {});
},
body: ListView.separated(
separatorBuilder: (_, __) => 10.hb,
itemBuilder: (context, index) {
final item = _cards[index];
return _UserCard(model: item);
return _UserCard(
model: item,
refreshController: _refreshController,
);
},
itemCount: _cards.length,
padding: EdgeInsets.symmetric(
@ -61,7 +69,9 @@ class _UpgradeUnusedViewState extends State<UpgradeUnusedView> {
class _UserCard extends StatelessWidget {
final UserCardModel model;
const _UserCard({Key key, this.model}) : super(key: key);
final GSRefreshController refreshController;
const _UserCard({Key key, this.model, this.refreshController})
: super(key: key);
Future<bool> _openUseCardDialog({String confirmTitle, Widget child}) async {
return (await Get.dialog(NormalContentDialog(
@ -143,7 +153,11 @@ class _UserCard extends StatelessWidget {
.size(16.sp)
.bold
.make(),
'系统赠送'.text.color(Color(0xFFDD2C4E)).size(12.sp).make(),
(model?.sourceName ?? '')
.text
.color(Color(0xFFDD2C4E))
.size(12.sp)
.make(),
],
).expand(),
Column(
@ -175,11 +189,29 @@ class _UserCard extends StatelessWidget {
),
);
if (result) {
ResultData resultData = await HttpManager.post(
APIV2.userAPI.useCard,
{'cardId': model.id},
);
if (resultData.data['code'] == 'FAIL') {
showToast(resultData.data['msg']);
await Get.to(UpgradeUseResultPage(
result: false,
content: '使用失败,您已经使用了一张权益卡',
));
} else
await Get.to(UpgradeUseResultPage(
result: true,
content: '恭喜您,使用成功!',
));
refreshController.requestRefresh();
}
}),
16.hb,
_renderButton(title: '赠送', onTap: () {}),
_renderButton(
title: '赠送',
onTap: () async {},
),
],
),
],

@ -41,7 +41,7 @@ class _UpgradeUsedViewState extends State<UpgradeUsedView> {
onLoadMore: () async {
_page++;
_cards.addAll(await UserCardFunction.fetchList(_page, 1));
_refreshController.refreshCompleted();
_refreshController.loadComplete();
setState(() {});
},
body: ListView.separated(

Loading…
Cancel
Save