对接我的收益接口

master
laiiihz 5 years ago
parent 289c88411d
commit 9b1833e196

@ -87,6 +87,9 @@ android {
signingConfig signingConfigs.debug
minifyEnabled false
shrinkResources false
ndk{
abiFilters 'arm64-v8a'
}
}
}

@ -0,0 +1,9 @@
class APIV2 {
static UserAPI userAPI = UserAPI();
}
class UserAPI {
///
String get userBenefit => '/v2/app/user/income';
}

@ -0,0 +1,11 @@
import 'package:recook/constants/api.dart';
import 'package:recook/constants/api_v2.dart';
import 'package:recook/manager/http_manager.dart';
import 'package:recook/pages/user/model/user_benefit_model.dart';
class UserBenefitFunc {
static Future<UserBenefitModel> update() async {
ResultData result = await HttpManager.post(APIV2.userAPI.userBenefit, {});
return UserBenefitModel.fromJson(result.data);
}
}

@ -0,0 +1,63 @@
class UserBenefitModel {
String code;
String msg;
Data data;
UserBenefitModel({this.code, this.msg, this.data});
UserBenefitModel.zero() {
this.code = '';
this.msg = '';
this.data = Data.zero();
}
UserBenefitModel.fromJson(Map<String, dynamic> json) {
code = json['code'];
msg = json['msg'];
data = json['data'] != null ? new Data.fromJson(json['data']) : null;
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['code'] = this.code;
data['msg'] = this.msg;
if (this.data != null) {
data['data'] = this.data.toJson();
}
return data;
}
}
class Data {
double monthExpect;
double dayExpect;
double lastMonthExpect;
double lastMonthIncome;
Data(
{this.monthExpect,
this.dayExpect,
this.lastMonthExpect,
this.lastMonthIncome});
Data.zero(
{this.monthExpect = 0,
this.dayExpect = 0,
this.lastMonthExpect = 0,
this.lastMonthIncome = 0});
Data.fromJson(Map<String, dynamic> json) {
monthExpect = json['monthExpect'] + .0;
dayExpect = json['dayExpect'] + .0;
lastMonthExpect = json['lastMonthExpect'] + .0;
lastMonthIncome = json['lastMonthIncome'] + .0;
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['monthExpect'] = this.monthExpect;
data['dayExpect'] = this.dayExpect;
data['lastMonthExpect'] = this.lastMonthExpect;
data['lastMonthIncome'] = this.lastMonthIncome;
return data;
}
}

@ -56,6 +56,9 @@ class _UserPageState extends BaseStoreState<UserPage> {
String _capital; //
bool _isFirstLoad = true;
GlobalKey<ShopBenefitViewState> _shopBenefitKey =
GlobalKey<ShopBenefitViewState>();
@override
bool get wantKeepAlive => true;
@ -167,6 +170,7 @@ class _UserPageState extends BaseStoreState<UserPage> {
refreshingText: "正在更新个人数据...",
onRefresh: () {
VersionTool.checkVersionInfo(context);
_shopBenefitKey.currentState.updateBenefit();
_updateUserBriefInfo();
},
body: ListView(
@ -190,7 +194,7 @@ class _UserPageState extends BaseStoreState<UserPage> {
height: AppConfig.getShowCommission() ? 10 : 0,
),
UserPageAssetsView(),
ShopBenefitView(),
ShopBenefitView(key: _shopBenefitKey),
ShopCheckView(),
ShopManagerView(),
OrderCentralView(

@ -1,12 +1,32 @@
import 'package:flutter/material.dart';
import 'package:recook/pages/user/functions/user_benefit_func.dart';
import 'package:recook/pages/user/model/user_benefit_model.dart';
import 'package:recook/pages/user/user_benefit_page.dart';
import 'package:recook/utils/custom_route.dart';
import 'package:recook/widgets/custom_image_button.dart';
import 'package:velocity_x/velocity_x.dart';
import 'package:recook/constants/constants.dart';
class ShopBenefitView extends StatelessWidget {
const ShopBenefitView({Key key}) : super(key: key);
class ShopBenefitView extends StatefulWidget {
ShopBenefitView({Key key}) : super(key: key);
@override
ShopBenefitViewState createState() => ShopBenefitViewState();
}
class ShopBenefitViewState extends State<ShopBenefitView> {
UserBenefitModel _model = UserBenefitModel.zero();
Future updateBenefit() async {
_model = await UserBenefitFunc.update();
if (mounted) setState(() {});
}
@override
void initState() {
super.initState();
updateBenefit();
}
@override
Widget build(BuildContext context) {
@ -38,7 +58,12 @@ class ShopBenefitView extends StatelessWidget {
child: Row(
children: [
<Widget>[
'1223.56X'.text.size(18.sp).color(Color(0xFF333333)).make(),
_model.data.monthExpect
.toStringAsFixed(2)
.text
.size(18.sp)
.color(Color(0xFF333333))
.make(),
6.hb,
'本月预估'.text.size(12.sp).color(Color(0xFF333333)).make(),
].column().expand(),
@ -50,7 +75,12 @@ class ShopBenefitView extends StatelessWidget {
endIndent: 16.w,
),
<Widget>[
'1223.56X'.text.size(18.sp).color(Color(0xFF333333)).make(),
_model.data.dayExpect
.toStringAsFixed(2)
.text
.size(18.sp)
.color(Color(0xFF333333))
.make(),
6.hb,
'今日预估'.text.size(12.sp).color(Color(0xFF333333)).make(),
].column().expand(),
@ -69,7 +99,11 @@ class ShopBenefitView extends StatelessWidget {
textBaseline: TextBaseline.alphabetic,
children: <Widget>[
'上月结算'.text.size(12.sp).color(Color(0xFF666666)).make(),
'¥1234.12X'.text.size(12.sp).color(Color(0xFFD7BE8E)).make(),
'¥${_model.data.lastMonthIncome.toStringAsFixed(2)}'
.text
.size(12.sp)
.color(Color(0xFFD7BE8E))
.make(),
]).expand(),
30.hb,
Row(
@ -78,7 +112,11 @@ class ShopBenefitView extends StatelessWidget {
textBaseline: TextBaseline.alphabetic,
children: <Widget>[
'上月预估'.text.size(12.sp).color(Color(0xFF666666)).make(),
'¥1234.12X'.text.size(12.sp).color(Color(0xFFD7BE8E)).make(),
'¥${_model.data.lastMonthExpect.toStringAsFixed(2)}'
.text
.size(12.sp)
.color(Color(0xFFD7BE8E))
.make(),
]).expand(),
].row(),
].column(crossAlignment: CrossAxisAlignment.start),

Loading…
Cancel
Save