Commit 6cd8b6a0 authored by 林生雨's avatar 林生雨

Merge branch 'featrue/duxin' into 'test'

Featrue/duxin

See merge request !3
parents 59af1797 3235a999
......@@ -16,6 +16,8 @@ abstract class ClueRouter implements RouterBaser {
Widget getLevelOnePage();
Widget getLevelTwoPage();
Widget getPlanPage();
Widget getPlanCompareDetailPage();
}
......@@ -7,6 +7,7 @@ import 'package:gm_flutter/ClueModel/ClueRouter.dart';
import 'package:gm_flutter/ClueModel/page/PlansCompareFeed/PlansCompareFeedPage.dart';
import 'package:gm_flutter/ClueModel/page/ProjectDetails/ProjectDetailsPage.dart';
import 'package:gm_flutter/ClueModel/page/levelOne/LevelOnePage.dart';
import 'package:gm_flutter/ClueModel/page/levelTwo/LevelTwoPage.dart';
import 'package:gm_flutter/ClueModel/page/plan/PlanPage.dart';
import 'package:gm_flutter/ClueModel/page/PlanCompareDetail/PlanCompareDetailPage.dart';
......@@ -20,6 +21,11 @@ class ClueRouterImpl implements ClueRouter {
Widget getLevelOnePage() {
return LevelOnePage();
}
@override
Widget getLevelTwoPage() {
return LevelTwoPage();
}
@override
Widget getPlansCompareFeed() {
......
/*
* @author lsy
* @date 2020/6/29
**/
import 'package:flutter/material.dart';
import 'package:flutter_common/commonModel/live/BaseModel.dart';
import 'package:flutter_common/commonModel/live/LiveData.dart';
import 'package:gm_flutter/ClueModel/server/api/ClueApi.serv.dart';
import 'package:gm_flutter/ClueModel/server/entity/LevelOneFeedList.dart';
import 'package:gm_flutter/commonModel/GMBase.dart';
import 'package:gm_flutter/commonModel/bean/Pair.dart';
import 'package:gm_flutter/commonModel/rx/RxDispose.dart';
import 'package:pull_to_refresh/pull_to_refresh.dart';
class LevelTwoModel extends BaseModel {
LiveData<double> appBarLive = LiveData();
LiveData<List<String>> rectLive = LiveData();
LiveData<List<String>> explainLive = LiveData();
LiveData<bool> showTab = LiveData();
LiveData<int> topIndexLive = new LiveData();
LiveData<double> topScrollLive = new LiveData();
LiveData<bool> loadingLive = LiveData();
RxDispose rxDispose = RxDispose();
LiveData<Pair<int, List<Cards>>> cardsLive = LiveData();
Map<int, List<Cards>> data = new Map();
List list = ["plan", "hospital", "doctor", "diary"];
List pageList = [1, 1, 1, 1];
List pageHeightList = [118, 149, 118, 118];
void refreshView(bool clear, {RefreshController refreshListener}) {
Future.delayed(Duration(seconds: 1), () {
Cards cards = Cards(
cardType: "plan",
plan: Plan(planName: "ww", minPrice: "50", maxPrice: "500"));
List<Cards> a = [
cards,
cards,
cards,
cards,
cards,
cards,
cards,
cards,
cards,
cards,
cards,
cards,
];
List<Cards> b = [cards];
print("INDEX ${currentIndex}");
if (currentIndex == 1) {
data[currentIndex] = b;
} else {
data[currentIndex] = a;
}
cardsLive.notifyView(Pair(ENDLOADING, data));
});
// int index = currentIndex;
// if (clear) {
// data.clear();
// pageList = [1, 1, 1, 1];
// }
// ClueApiImpl.getInstance()
// .getLevelOneList(
// DioUtil.getInstance().getDio(), 123, list[index], pageList[index])
// .listen((event) {})
// .addToDispose(rxDispose)
// .onError((err) {});
}
int currentIndex = 0;
@override
void dispose() {
showTab.dispost();
cardsLive.dispost();
appBarLive.dispost();
rectLive.dispost();
topIndexLive.dispost();
topScrollLive.dispost();
loadingLive.dispost();
}
void selectPage(int index) {
if (currentIndex == index) {
return;
}
currentIndex = index;
if (data[currentIndex] == null) {
cardsLive.notifyView(Pair(LOADING, null));
refreshView(true);
} else {
cardsLive.notifyView(Pair(ENDLOADING, data[currentIndex]));
}
}
void loadMore() {}
}
This diff is collapsed.
import 'package:flutter/material.dart';
import 'package:flutter_common/commonModel/picker/base/BaseBottomPicker.dart';
import '../../../commonModel/GMBase.dart';
import '../../../commonModel/base/BaseComponent.dart';
import '../../../commonModel/base/BaseComponent.dart';
class MechanismBox implements IBottomPicker {
VoidCallback dismissCall;
@override
initState(dismissCall, BuildContext context) {
this.dismissCall = dismissCall;
}
Widget build(BuildContext context) {
MediaQueryData mq = MediaQuery.of(context);
TextEditingController textController = TextEditingController();
return ClipRRect(
borderRadius: BorderRadius.only(
topLeft: Radius.circular(10.0), topRight: Radius.circular(10.0)),
child: Container(
width: mq.size.width,
height: mq.size.height - 140,
color: Colors.white,
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Container(
margin: EdgeInsets.only(left: 20, right: 20),
width: mq.size.width,
decoration: BoxDecoration(
border: Border(
bottom:
BorderSide(width: 1, color: Color(0xffE5E5E5)))),
height: 50,
child: Stack(
alignment: Alignment.center,
children: <Widget>[
Container(
child: Text(
'请选择要咨询的机构',
style: TextStyle(
color: Color(0xff282828),
fontSize: 17,
fontWeight: FontWeight.bold),
),
),
Positioned(
right: 0,
top: 16.0,
child: GestureDetector(
onTap: () {
dismissCall();
},
child: Container(
width: 14,
height: 14,
child: Image.asset("assets/close-btn.png"),
),
))
],
),
),
Container(
height: mq.size.height - 140 - 50 - 96,
width: mq.size.width,
padding: EdgeInsets.only(left: 20, right: 20),
child: ListView.separated(
itemCount: 100,
itemBuilder: (BuildContext context, int index) {
return ListTile(title: Text("$index"));
},
separatorBuilder: (BuildContext context, int index) {
return Divider(color: Color(0xffE5E5E5));
},
)),
Container(
height: 96,
color: Color(0xffF9F8FB),
child: Column(
children: <Widget>[
Container(
height: 25,
width: double.maxFinite,
margin: EdgeInsets.only(top: 12),
child: ListView(
scrollDirection: Axis.horizontal, //横向滚动
children: <Widget>[
Container(
margin: EdgeInsets.only(left: 15, right: 8),
height: 25,
child: Text(
'我想',
style: TextStyle(
height: 2,
color: Color(0xff666666),
fontSize: 12),
)),
Container(
height: 25,
margin: EdgeInsets.only(right: 12),
padding: EdgeInsets.only(left: 8, right: 8),
decoration: BoxDecoration(
border: Border.all(
color: Color(0xffE5E5E5), width: 0.5),
color: Color(0xffffffff),
borderRadius: BorderRadius.circular(20)),
child: Text(
'有优惠活动吗?',
style: TextStyle(
fontSize: 12,
color: Color(0xff666666),
height: 1.8),
),
),
Container(
height: 25,
margin: EdgeInsets.only(right: 12),
padding: EdgeInsets.only(left: 8, right: 8),
decoration: BoxDecoration(
border: Border.all(
color: Color(0xffE5E5E5), width: 0.5),
color: Color(0xffffffff),
borderRadius: BorderRadius.circular(20)),
child: Text(
'111有优惠活动吗?',
style: TextStyle(
fontSize: 12,
color: Color(0xff666666),
height: 1.8),
)),
Container(
height: 25,
margin: EdgeInsets.only(right: 12),
padding: EdgeInsets.only(left: 8, right: 8),
decoration: BoxDecoration(
border: Border.all(
color: Color(0xffE5E5E5), width: 0.5),
color: Color(0xffffffff),
borderRadius: BorderRadius.circular(20)),
child: Text(
'111有优惠活动吗?',
style: TextStyle(
fontSize: 12,
color: Color(0xff666666),
height: 1.8),
)),
Container(
height: 25,
margin: EdgeInsets.only(right: 12),
padding: EdgeInsets.only(left: 8, right: 8),
decoration: BoxDecoration(
border: Border.all(
color: Color(0xffE5E5E5), width: 0.5),
color: Color(0xffffffff),
borderRadius: BorderRadius.circular(20)),
child: Text(
'111有优惠活动吗?',
style: TextStyle(
fontSize: 12,
color: Color(0xff666666),
height: 1.8),
))
],
),
),
Container(
height: 35,
margin: EdgeInsets.only(top: 12, left: 15, right: 15),
decoration: BoxDecoration(
border: Border.all(
color: Color(0xffE5E5E5), width: 0.5),
color: Color(0xffffffff),
borderRadius: BorderRadius.circular(35)),
child: TextField(
controller: textController,
keyboardType: TextInputType.text,
decoration: InputDecoration(
contentPadding: EdgeInsets.all(16.0),
labelText: '文案文案文案不知道文案是啥',
border: InputBorder.none),
autofocus: false,
),
)
],
))
],
)),
);
}
@override
void dispose() {
dismissCall();
}
}
......@@ -26,16 +26,24 @@ class TestState extends BaseState<TestPage> {
JumpUtil.jumpToPageRight(context, NetProxyPage());
}));
list.add(listItem("一级列表页", () {
JumpUtil.jumpToPageRight(context, RouterCenterImpl().findClueRouter().getLevelOnePage());
JumpUtil.jumpToPageRight(
context, RouterCenterImpl().findClueRouter().getLevelOnePage());
}));
list.add(listItem("二级列表页", () {
JumpUtil.jumpToPageRight(
context, RouterCenterImpl().findClueRouter().getLevelTwoPage());
}));
list.add(listItem("方案页面", () {
JumpUtil.jumpToPageRight(context, RouterCenterImpl().findClueRouter().getPlanPage());
JumpUtil.jumpToPageRight(
context, RouterCenterImpl().findClueRouter().getPlanPage());
}));
list.add(listItem("对比详情页", () {
JumpUtil.jumpToPageRight(context, RouterCenterImpl().findClueRouter().getPlanCompareDetailPage());
JumpUtil.jumpToPageRight(context,
RouterCenterImpl().findClueRouter().getPlanCompareDetailPage());
}));
list.add(listItem("项目说明", () {
JumpUtil.jumpToPageRight(context, RouterCenterImpl().findClueRouter().getProjectDetailsPage());
JumpUtil.jumpToPageRight(
context, RouterCenterImpl().findClueRouter().getProjectDetailsPage());
}));
return list;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment