Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
G
gm_flutter
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
林生雨
gm_flutter
Commits
1a78c166
Commit
1a78c166
authored
Jul 06, 2020
by
林生雨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
comit
parent
826c7070
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
61 additions
and
28 deletions
+61
-28
ClueRouter.dart
lib/ClueModel/ClueRouter.dart
+4
-4
ClueRouterImpl.dart
lib/ClueModel/ClueRouterImpl.dart
+2
-2
LevelOneModel.dart
lib/ClueModel/page/levelOne/LevelOneModel.dart
+2
-0
LevelOnePage.dart
lib/ClueModel/page/levelOne/LevelOnePage.dart
+1
-2
PlanModel.dart
lib/ClueModel/page/plan/PlanModel.dart
+5
-1
PlanPage.dart
lib/ClueModel/page/plan/PlanPage.dart
+10
-5
TopPage.dart
lib/ClueModel/page/top/TopPage.dart
+9
-2
JumpManager.dart
lib/MainRouter/manager/JumpManager.dart
+6
-0
TestPage.dart
lib/MainRouter/page/test/TestPage.dart
+10
-4
Api.dart
lib/commonModel/net/Api.dart
+2
-2
main.dart
lib/main.dart
+10
-6
No files found.
lib/ClueModel/ClueRouter.dart
View file @
1a78c166
...
...
@@ -10,11 +10,11 @@ import 'package:gm_flutter/ClueModel/ClueRouterImpl.dart';
@Router
(
"ClueRouter"
,
ClueRouterImpl
,
true
)
abstract
class
ClueRouter
implements
RouterBaser
{
Widget
getProjectDetailsPage
(
Map
<
String
,
dynamic
>
params
);
Widget
getProjectDetailsPage
(
Map
<
String
,
dynamic
>
params
);
Widget
getPlansCompareFeed
(
Map
<
String
,
dynamic
>
params
);
Widget
getPlansCompareFeed
(
Map
<
String
,
dynamic
>
params
);
Widget
getLevelOnePage
(
Map
<
String
,
dynamic
>
params
);
Widget
getLevelOnePage
(
Map
<
String
,
dynamic
>
params
);
Widget
getLevelTwoPage
();
...
...
@@ -22,5 +22,5 @@ abstract class ClueRouter implements RouterBaser {
Widget
getPlanCompareDetailPage
();
Widget
getTopPage
();
Widget
getTopPage
(
Map
<
String
,
dynamic
>
params
);
}
lib/ClueModel/ClueRouterImpl.dart
View file @
1a78c166
...
...
@@ -45,7 +45,7 @@ class ClueRouterImpl implements ClueRouter {
}
@override
Widget
getTopPage
()
{
return
TopPage
();
Widget
getTopPage
(
Map
<
String
,
dynamic
>
params
)
{
return
TopPage
(
params
);
}
}
lib/ClueModel/page/levelOne/LevelOneModel.dart
View file @
1a78c166
...
...
@@ -24,6 +24,7 @@ class LevelOneModel extends BaseModel {
List
<
Tabs
>
tabsList
=
[];
int
plan_id
=
0
;
PlanOverData
planoverItem
;
String
imageUrl
=
""
;
void
init
(
VoidCallback
callback
)
{
ClueApiImpl
.
getInstance
()
...
...
@@ -31,6 +32,7 @@ class LevelOneModel extends BaseModel {
.
listen
((
event
)
{
if
(
event
.
error
==
0
)
{
planoverItem
=
event
.
data
;
imageUrl
=
event
.
data
.
banner
.
imageUrl
;
tabsList
=
event
.
data
.
tabs
;
stateLive
.
notifyView
(
ENDLOADING
);
callback
();
...
...
lib/ClueModel/page/levelOne/LevelOnePage.dart
View file @
1a78c166
...
...
@@ -189,8 +189,7 @@ class LevelOneState extends BaseState<LevelOnePage>
handle:
extend
.
NestedScrollView
.
sliverOverlapAbsorberHandleFor
(
context
),
sliver:
baseSliverAppBar
(
// _model.imageUrl
"https://pic.igengmei.com/2018/09/11/1513/b7e825a4e4c1-w"
)),
_model
.
imageUrl
)),
SliverList
(
delegate:
SliverChildBuilderDelegate
((
BuildContext
c
,
int
i
)
{
if
(
i
==
0
)
{
...
...
lib/ClueModel/page/plan/PlanModel.dart
View file @
1a78c166
...
...
@@ -14,6 +14,7 @@ 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:gm_flutter/commonModel/util/PrintUtil.dart'
;
import
'package:pull_to_refresh/pull_to_refresh.dart'
;
class
PlanModel
extends
BaseModel
{
LiveData
<
List
>
managerLive
=
new
LiveData
();
...
...
@@ -75,7 +76,7 @@ class PlanModel extends BaseModel {
refreshFeed
(
true
);
}
void
refreshFeed
(
bool
clear
)
{
void
refreshFeed
(
bool
clear
,
{
RefreshController
controller
}
)
{
if
(
clear
)
{
feedDatas
.
clear
();
}
...
...
@@ -90,15 +91,18 @@ class PlanModel extends BaseModel {
feedDatas
.
addAll
(
event
.
data
.
plans
);
feedsLive
.
notifyView
(
Pair
(
ENDLOADING
,
feedDatas
));
}
controller
?.
refreshCompleted
();
}
else
{
NativeToast
.
showNativeToast
(
event
.
message
);
feedsLive
.
notifyView
(
Pair
(
FAIL
,
null
));
controller
?.
refreshFailed
();
}
})
.
addToDispose
(
rxDispose
)
.
onError
((
err
)
{
PrintUtil
.
printBug
(
err
);
feedsLive
.
notifyView
(
Pair
(
FAIL
,
null
));
controller
?.
refreshFailed
();
});
}
...
...
lib/ClueModel/page/plan/PlanPage.dart
View file @
1a78c166
...
...
@@ -27,6 +27,7 @@ import 'package:gm_flutter/commonModel/popMenu/BaseMenuListener.dart';
import
'package:gm_flutter/commonModel/popMenu/BasePopMenu.dart'
;
import
'package:gm_flutter/commonModel/util/DartUtil.dart'
;
import
'package:gm_flutter/commonModel/util/WidgetUtil.dart'
;
import
'package:gm_flutter/main.mark.dart'
;
import
'package:pull_to_refresh/pull_to_refresh.dart'
;
import
'PlanModel.dart'
;
...
...
@@ -53,8 +54,6 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
@override
void
initState
()
{
CacheManager
.
getInstance
().
get
(
MEMORY_CACHE
).
save
(
COOKIE
,
"_gtid=3123e178b91a11eaa2d87e40d376ac134112; sessionid=pq9wf8equ4h26ia3yspzmquqn2rjs6mx; _gm_token=4091a81593419225"
);
DioUtil
.
getInstance
().
setProxy
(
"172.30.8.245"
);
super
.
initState
();
_model
.
init
();
...
...
@@ -350,7 +349,7 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
child:
baseRefreshView
(
refreshController
,
()
{
_model
.
refreshFeed
(
true
);
_model
.
refreshFeed
(
true
,
controller:
refreshController
);
},
Container
(
width:
0
,
...
...
@@ -389,7 +388,10 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
data
.
data
==
null
?
""
:
data
.
data
[
0
].
icon
??
""
,
fit:
BoxFit
.
cover
,
)).
gestureDetector
(()
{
//TODO
Map
<
String
,
dynamic
>
map
=
{
"rank_type"
:
"0"
};
RouterCenterImpl
()
.
findMainRouter
()
.
jumpPage
(
context
,
"clueTop"
,
map
,
false
);
});
},
),
...
...
@@ -411,7 +413,10 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
data
.
data
==
null
?
""
:
data
.
data
[
1
].
icon
??
""
,
fit:
BoxFit
.
cover
,
)).
gestureDetector
(()
{
//TODO
Map
<
String
,
dynamic
>
map
=
{
"rank_type"
:
"1"
};
RouterCenterImpl
()
.
findMainRouter
()
.
jumpPage
(
context
,
"clueTop"
,
map
,
false
);
});
},
),
...
...
lib/ClueModel/page/top/TopPage.dart
View file @
1a78c166
...
...
@@ -23,6 +23,12 @@ import 'package:pull_to_refresh/pull_to_refresh.dart';
import
'TopList.dart'
;
class
TopPage
extends
StatefulWidget
{
String
rank_type
;
TopPage
(
Map
<
String
,
dynamic
>
map
)
{
this
.
rank_type
=
map
[
"rank_type"
];
}
@override
State
<
StatefulWidget
>
createState
()
=>
TopPageState
();
}
...
...
@@ -35,6 +41,7 @@ class TopPageState extends BaseState<TopPage> with TickerProviderStateMixin {
@override
void
initState
()
{
_model
.
rank_type
=
widget
.
rank_type
;
init
();
super
.
initState
();
}
...
...
@@ -136,8 +143,8 @@ class TopPageState extends BaseState<TopPage> with TickerProviderStateMixin {
List
<
Widget
>
list
=
[];
var
d
=
MediaQueryData
.
fromWindow
(
window
).
padding
.
top
;
for
(
int
i
=
0
;
i
<
_model
.
tabs
.
length
;
i
++)
{
list
.
add
(
extend
.
NestedScrollViewInnerScrollPositionKeyWidget
(
Key
(
"Tab
${i}
"
),
TopList
(
_model
.
tabs
[
i
].
id
,
kToolbarHeight
+
d
)));
list
.
add
(
extend
.
NestedScrollViewInnerScrollPositionKeyWidget
(
Key
(
"Tab
${i}
"
),
TopList
(
_model
.
tabs
[
i
].
id
,
kToolbarHeight
+
d
)));
}
return
extend
.
NestedScrollView
(
innerScrollPositionKeyBuilder:
()
{
...
...
lib/MainRouter/manager/JumpManager.dart
View file @
1a78c166
...
...
@@ -6,6 +6,8 @@ import 'package:flutter/cupertino.dart';
import
'package:flutter_boost/flutter_boost.dart'
;
import
'package:flutter_common/commonModel/util/JumpUtil.dart'
;
import
'package:gm_flutter/MainRouter/manager/MainManager.dart'
;
import
'package:gm_flutter/commonModel/App.dart'
;
import
'package:gm_flutter/commonModel/cache/CacheManager.dart'
;
import
'package:gm_flutter/main.mark.dart'
;
class
JumpManager
{
...
...
@@ -25,6 +27,8 @@ class JumpManager {
String
pageNameWrap
=
nativePage
?
"gm://
${pageName}
"
:
"flutter://
${pageName}
"
;
if
(!
MainManager
.
getInstance
().
isInit
)
{
CacheManager
.
getInstance
().
get
(
MEMORY_CACHE
).
save
(
COOKIE
,
"_gtid=3123e178b91a11eaa2d87e40d376ac134112; sessionid=pq9wf8equ4h26ia3yspzmquqn2rjs6mx; _gm_token=4091a81593419225"
);
JumpUtil
.
jumpToPageRight
(
context
,
initMap
(
params
)[
pageNameWrap
]);
}
else
{
FlutterBoost
.
singleton
.
open
(
pageName
,
urlParams:
params
);
...
...
@@ -39,6 +43,8 @@ class JumpManager {
RouterCenterImpl
().
findClueRouter
().
getProjectDetailsPage
(
params
),
"flutter://cluePlansCompareFeed"
:
RouterCenterImpl
().
findClueRouter
().
getPlansCompareFeed
(
params
),
"flutter://cluePlan"
:
RouterCenterImpl
().
findClueRouter
().
getPlanPage
(),
"flutter://clueTop"
:
RouterCenterImpl
().
findClueRouter
().
getTopPage
(
params
),
};
}
}
lib/MainRouter/page/test/TestPage.dart
View file @
1a78c166
...
...
@@ -46,15 +46,21 @@ class TestState extends BaseState<TestPage> {
}));
list
.
add
(
listItem
(
"项目说明"
,
()
{
JumpUtil
.
jumpToPageRight
(
context
,
RouterCenterImpl
().
findClueRouter
().
getProjectDetailsPage
({
"planId"
:
1
}));
context
,
RouterCenterImpl
()
.
findClueRouter
()
.
getProjectDetailsPage
({
"planId"
:
1
}));
}));
list
.
add
(
listItem
(
"方案对比"
,
()
{
JumpUtil
.
jumpToPageRight
(
context
,
RouterCenterImpl
().
findClueRouter
().
getPlansCompareFeed
({
"planId"
:
1
,
"planType"
:
1
}));
context
,
RouterCenterImpl
()
.
findClueRouter
()
.
getPlansCompareFeed
({
"planId"
:
1
,
"planType"
:
1
}));
}));
list
.
add
(
listItem
(
"榜单"
,
()
{
JumpUtil
.
jumpToPageRight
(
context
,
RouterCenterImpl
().
findClueRouter
().
getTopPage
(
));
JumpUtil
.
jumpToPageRight
(
context
,
RouterCenterImpl
().
findClueRouter
().
getTopPage
({
"rank_type"
:
"0"
}
));
}));
list
.
add
(
listItem
(
"弹窗"
,
()
{
DiscussLowPricePopView
.
showPopView
(
context
);
...
...
lib/commonModel/net/Api.dart
View file @
1a78c166
...
...
@@ -19,8 +19,8 @@ const String APP_HOST_RELEASE = "https://x6cgr5y5-gengmei.mock.coding.io";
*/
//const String APP_HOST_DEBUG = "http://backend.paas-merchant.envs";
//const String APP_HOST_DEBUG = "http://doctor.paas-merchant.env";
//
const String APP_HOST_DEBUG = "https://x6cgr5y5-gengmei.mock.coding.io";
const
String
APP_HOST_DEBUG
=
"http://backend.paas-merchant.env"
;
const
String
APP_HOST_DEBUG
=
"https://x6cgr5y5-gengmei.mock.coding.io"
;
//
const String APP_HOST_DEBUG = "http://backend.paas-merchant.env";
//const String APP_HOST_DEBUG = "http://janus.paas-merchant.env";
/**
...
...
lib/main.dart
View file @
1a78c166
...
...
@@ -58,12 +58,16 @@ class MyApp extends State<MyAppWidget> {
void
initState
()
{
super
.
initState
();
FlutterBoost
.
singleton
.
registerPageBuilders
({
'clueLevelOne'
:
(
pageName
,
params
,
_
)
{
return
RouterCenterImpl
().
findClueRouter
().
getLevelOnePage
(
params
);
},
'demoPage1'
:
(
pageName
,
params
,
_
)
{
return
DemoPage1
();
},
'clueLevelOne'
:
(
pageName
,
params
,
_
)
=>
RouterCenterImpl
().
findClueRouter
().
getLevelOnePage
(
params
),
'clueProjectDetails'
:
(
pageName
,
params
,
_
)
=>
RouterCenterImpl
().
findClueRouter
().
getProjectDetailsPage
(
params
),
'cluePlansCompareFeed'
:
(
pageName
,
params
,
_
)
=>
RouterCenterImpl
().
findClueRouter
().
getPlansCompareFeed
(
params
),
'cluePlan'
:
(
pageName
,
params
,
_
)
=>
RouterCenterImpl
().
findClueRouter
().
getPlanPage
(),
'clueTop'
:
(
pageName
,
params
,
_
)
=>
RouterCenterImpl
().
findClueRouter
().
getTopPage
(
params
),
});
FlutterBoost
.
singleton
.
addBoostContainerLifeCycleObserver
((
state
,
settings
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment