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
db521a6e
Commit
db521a6e
authored
Jul 11, 2020
by
杜欣
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'test' into featrue/duxin
parents
148509b6
a8635992
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
202 additions
and
113 deletions
+202
-113
DiscussLowPricePopView.dart
...lueModel/page/DiscussLowPrice/DiscussLowPricePopView.dart
+12
-8
PlansCompareFeedItemView.dart
...Model/page/PlansCompareFeed/PlansCompareFeedItemView.dart
+8
-8
PlansCompareFeedPage.dart
...ClueModel/page/PlansCompareFeed/PlansCompareFeedPage.dart
+1
-1
ProjectDetailsItemView.dart
...ClueModel/page/ProjectDetails/ProjectDetailsItemView.dart
+18
-22
LevelOneItem.dart
lib/ClueModel/page/levelOne/LevelOneItem.dart
+41
-8
LevelOneList.dart
lib/ClueModel/page/levelOne/LevelOneList.dart
+53
-4
LevelOneModel.dart
lib/ClueModel/page/levelOne/LevelOneModel.dart
+16
-1
LevelOnePage.dart
lib/ClueModel/page/levelOne/LevelOnePage.dart
+5
-4
LevelTwoPage.dart
lib/ClueModel/page/levelTwo/LevelTwoPage.dart
+3
-12
PlanItem.dart
lib/ClueModel/page/plan/PlanItem.dart
+36
-33
PlanPage.dart
lib/ClueModel/page/plan/PlanPage.dart
+3
-4
TopModel.dart
lib/ClueModel/page/top/TopModel.dart
+1
-5
PlanFeedBean.dart
lib/ClueModel/server/entity/PlanFeedBean.dart
+3
-0
BaseComponent.dart
lib/commonModel/base/BaseComponent.dart
+2
-3
No files found.
lib/ClueModel/page/DiscussLowPrice/DiscussLowPricePopView.dart
View file @
db521a6e
...
...
@@ -51,13 +51,16 @@ class _PopView implements ICenterPicker {
RouterCenterImpl
()
.
findMainRouter
()
.
buriedEvent
(
"popup_view"
,
phobosData
());
return
Opacity
(
opacity:
alp
/
255.0
,
child:
Container
(
color:
Colors
.
red
,
width:
contentWidth
,
height:
_model
.
popViewLive
.
data
.
second
.
title
.
length
>
13
?
3
5
7.5
:
3
05
.5
,
?
3
6
7.5
:
3
10
.5
,
child:
Stack
(
alignment:
AlignmentDirectional
.
topCenter
,
children:
<
Widget
>[
...
...
@@ -68,8 +71,8 @@ class _PopView implements ICenterPicker {
Positioned
(
top:
62.5
,
right:
20
,
width:
1
3.
5
,
height:
1
3.5
,
width:
15
,
height:
1
4
,
child:
GestureDetector
(
onTap:
()
{
dismissCallback
();
...
...
@@ -83,7 +86,7 @@ class _PopView implements ICenterPicker {
decoration:
BoxDecoration
(
boxShadow:
[
BoxShadow
(
color:
Colors
.
black12
,
offset:
Offset
(
0.0
,
3
.0
),
offset:
Offset
(
0.0
,
1
.0
),
blurRadius:
15.0
,
spreadRadius:
1.0
)
],
shape:
BoxShape
.
circle
),
...
...
@@ -110,7 +113,7 @@ class _PopView implements ICenterPicker {
return
Container
(
width:
contentWidth
,
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
7
),
borderRadius:
BorderRadius
.
circular
(
10
),
color:
Colors
.
white
,
),
child:
Container
(
...
...
@@ -152,8 +155,9 @@ class _PopView implements ICenterPicker {
alignment:
Alignment
.
center
,
margin:
EdgeInsets
.
only
(
bottom:
25
),
child:
baseText
(
_model
.
popViewLive
.
data
.
second
.
title
,
18
,
Color
(
0xff464646
),
bold:
true
,
textAlign:
TextAlign
.
center
)),
"
${_model.popViewLive.data.second.title}
"
,
18
,
Color
(
0xff464646
),
bold:
true
,
textAlign:
TextAlign
.
center
,
maxLines:
2
)),
Container
(
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
7
),
...
...
lib/ClueModel/page/PlansCompareFeed/PlansCompareFeedItemView.dart
View file @
db521a6e
...
...
@@ -34,7 +34,7 @@ class _PlansCompareFeedItemViewState
child:
Column
(
children:
<
Widget
>[
getItem
(),
Divider
(
height:
0.5
,
color:
Color
(
0x
99979797
))
Divider
(
height:
0.5
,
color:
Color
(
0x
FFE5E5E5
))
],
));
}
...
...
@@ -50,7 +50,7 @@ class _PlansCompareFeedItemViewState
getFirstLevelItem
()
{
return
Container
(
width:
double
.
maxFinite
,
height:
9
0
,
height:
8
0
,
alignment:
Alignment
.
centerLeft
,
padding:
EdgeInsets
.
only
(
top:
15
,
bottom:
15
),
child:
Row
(
...
...
@@ -64,11 +64,11 @@ class _PlansCompareFeedItemViewState
),
),
Container
(
margin:
EdgeInsets
.
only
(
left:
15
,
right:
1
5
),
margin:
EdgeInsets
.
only
(
left:
15
,
right:
1
2
),
child:
ClipRRect
(
borderRadius:
BorderRadius
.
circular
(
4.0
),
child:
CachedNetworkImage
(
imageUrl:
widget
.
plan
.
projectImage
,
imageUrl:
widget
.
plan
.
projectImage
??
""
,
width:
50
,
height:
50
,
fit:
BoxFit
.
cover
,
...
...
@@ -101,7 +101,7 @@ class _PlansCompareFeedItemViewState
TextSpan
(
text:
"%"
,
style:
TextStyle
(
fontSize:
1
1
,
fontSize:
1
0
,
color:
Color
(
0xFFFF5963
),
fontWeight:
FontWeight
.
w500
))
])),
...
...
@@ -114,7 +114,7 @@ class _PlansCompareFeedItemViewState
baseText
(
'¥
${widget.plan.minPrice}
-
${widget.plan.maxPrice}
'
,
13
,
Color
(
0xFFFF5963
)),
baseText
(
"销量
${
NumPlanUtil.getSale(widget.plan.salesCount)}
"
,
11
,
Color
(
0xFF282828
))
"销量
${
widget.plan.salesCount}
"
,
11
,
Color
(
0xFF666666
))
],
)
],
...
...
@@ -162,7 +162,7 @@ class _PlansCompareFeedItemViewState
baseText
(
'¥
${widget.plan.minPrice}
-
${widget.plan.maxPrice}
'
,
13
,
Color
(
0xFFFF5963
)),
baseText
(
"指导价:¥
${widget.plan.guidePrice}
"
,
11
,
Color
(
0xFF
282828
)),
Color
(
0xFF
666666
)),
],
),
],
...
...
@@ -178,7 +178,7 @@ class _PlansCompareFeedItemViewState
_icon
=
_unchecked
;
}
else
{
if
(
widget
.
_setCompare
.
length
==
2
)
{
NativeToast
.
showNativeToast
(
"
不许再选了两个够了!
"
);
NativeToast
.
showNativeToast
(
"
请选择最多2个项目进行对比
"
);
return
;
}
_icon
=
_checked
;
...
...
lib/ClueModel/page/PlansCompareFeed/PlansCompareFeedPage.dart
View file @
db521a6e
...
...
@@ -107,7 +107,7 @@ class _PlansCompareFeedState extends BaseState<PlansCompareFeedPage>
child:
Column
(
mainAxisSize:
MainAxisSize
.
min
,
children:
<
Widget
>[
Divider
(
height:
0.5
,
color:
Color
(
0x
99979797
)),
Divider
(
height:
0.5
,
color:
Color
(
0x
FFE5E5E5
)),
Container
(
margin:
EdgeInsets
.
only
(
left:
15
,
right:
15
,
top:
7.5
,
bottom:
7.5
),
...
...
lib/ClueModel/page/ProjectDetails/ProjectDetailsItemView.dart
View file @
db521a6e
...
...
@@ -30,7 +30,7 @@ class ProjectDetailsItemView extends StatelessWidget {
padding:
EdgeInsets
.
only
(
left:
15.0
),
margin:
EdgeInsets
.
only
(
bottom:
16.0
),
alignment:
Alignment
.
centerLeft
,
height:
55
,
height:
40
,
decoration:
BoxDecoration
(
image:
DecorationImage
(
image:
AssetImage
(
"assets/bg_project_detail_item.png"
),
...
...
@@ -47,29 +47,25 @@ class ProjectDetailsItemView extends StatelessWidget {
}
getAttrItem
(
Attrs
attrs
)
{
return
Container
(
width:
double
.
maxFinite
,
margin:
EdgeInsets
.
only
(
bottom:
25
,
left:
15
,
right:
15
),
child:
Row
(
children:
<
Widget
>[
Container
(
margin:
EdgeInsets
.
only
(
right:
25.0
),
alignment:
Alignment
.
centerLeft
,
width:
78
,
child:
baseText
(
attrs
.
attrName
,
13
,
Color
(
0xFF999999
),
textAlign:
TextAlign
.
left
,
return
Row
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
children:
<
Widget
>[
Container
(
margin:
EdgeInsets
.
only
(
right:
25.0
,
left:
15
,
bottom:
25
),
width:
78
,
child:
baseText
(
attrs
.
attrName
,
13
,
Color
(
0xFF999999
),
textAlign:
TextAlign
.
start
,
maxLines:
2
,
overflow:
TextOverflow
.
ellipsis
)),
Expanded
(
child:
Container
(
margin:
EdgeInsets
.
only
(
right:
15
,
bottom:
25
),
child:
baseText
(
attrs
.
attrValue
,
14
,
Color
(
0xFF282828
),
textAlign:
TextAlign
.
start
,
maxLines:
2
,
overflow:
TextOverflow
.
ellipsis
)),
Expanded
(
child:
Container
(
alignment:
Alignment
.
centerLeft
,
child:
baseText
(
attrs
.
attrValue
,
14
,
Color
(
0xFF282828
),
textAlign:
TextAlign
.
left
,
maxLines:
2
,
overflow:
TextOverflow
.
ellipsis
)),
),
],
),
),
],
);
}
}
lib/ClueModel/page/levelOne/LevelOneItem.dart
View file @
db521a6e
...
...
@@ -16,11 +16,17 @@ class LevelOneItem extends StatelessWidget {
final
Cards
cards
;
VoidCallback
lowPrice
;
VoidCallback
ask
;
VoidCallback
compare
;
Function
(
int
planId
)
compare
;
Function
(
int
planId
)
gotoPlan
;
int
position
;
String
tabName
;
LevelOneItem
(
this
.
cards
,
{
this
.
lowPrice
,
this
.
ask
,
this
.
compare
,
this
.
gotoPlan
});
{
this
.
lowPrice
,
this
.
ask
,
this
.
compare
,
this
.
gotoPlan
,
this
.
position
,
this
.
tabName
});
@override
Widget
build
(
BuildContext
context
)
{
...
...
@@ -61,6 +67,8 @@ class LevelOneItem extends StatelessWidget {
return
GestureDetector
(
behavior:
HitTestBehavior
.
opaque
,
onTap:
()
{
buried_on_click_card
(
position
,
tabName
,
"doctor"
,
cards
.
doctor
.
doctor_id
);
Map
<
String
,
dynamic
>
map
=
{
"business_id"
:
"
${cards.doctor.doctor_id}
"
,
};
...
...
@@ -96,7 +104,7 @@ class LevelOneItem extends StatelessWidget {
top:
18
,
child:
Row
(
mainAxisSize:
MainAxisSize
.
min
,
crossAxisAlignment:
CrossAxisAlignment
.
end
,
crossAxisAlignment:
CrossAxisAlignment
.
center
,
children:
<
Widget
>[
baseText
(
cards
.
doctor
.
name
,
15
,
Color
(
0xff333333
),
bold:
true
),
...
...
@@ -178,6 +186,8 @@ class LevelOneItem extends StatelessWidget {
return
GestureDetector
(
behavior:
HitTestBehavior
.
opaque
,
onTap:
()
{
buried_on_click_card
(
position
,
tabName
,
"hospital"
,
cards
.
hospital
.
hosiptalId
);
Map
<
String
,
dynamic
>
map
=
{
"business_id"
:
"
${cards.hospital.hosiptalId}
"
,
};
...
...
@@ -309,8 +319,11 @@ class LevelOneItem extends StatelessWidget {
Positioned
(
left:
0
,
top:
15
,
child:
baseText
(
cards
.
plan
.
planName
,
15
,
Color
(
0xff282828
),
bold:
true
),
child:
Container
(
width:
210
,
child:
baseText
(
cards
.
plan
.
planName
,
15
,
Color
(
0xff282828
),
bold:
true
),
),
),
Positioned
(
right:
0
,
...
...
@@ -326,7 +339,8 @@ class LevelOneItem extends StatelessWidget {
)
:
baseText
(
"¥"
,
12
,
Color
(
0xffFF5963
)),
baseText
(
price
,
price
==
"暂无报价"
?
13
:
15
,
price
==
"暂无报价"
?
Color
(
0xff999999
)
:
Color
(
0xffFF5963
))
price
==
"暂无报价"
?
Color
(
0xff999999
)
:
Color
(
0xffFF5963
),
bold:
price
!=
"暂无报价"
)
],
),
),
...
...
@@ -359,6 +373,8 @@ class LevelOneItem extends StatelessWidget {
],
),
).
gestureDetector
(()
{
buried_on_click_card
(
position
,
tabName
,
"level_two_plan"
,
"
${cards.plan.plan_id}
"
);
Map
<
String
,
dynamic
>
map
=
{
"business_id"
:
"
${cards.plan.plan_id}
"
,
"planId"
:
cards
.
plan
.
plan_id
...
...
@@ -416,7 +432,9 @@ class LevelOneItem extends StatelessWidget {
child:
baseText
(
"去比较"
,
13
,
Color
(
0xff282828
),
bold:
true
),
)
],
).
gestureDetector
(
compare
);
).
gestureDetector
(()
{
compare
(
cards
.
plan
.
plan_id
);
});
}
Widget
DiaryItem
(
BuildContext
context
)
{
...
...
@@ -599,4 +617,19 @@ class LevelOneItem extends StatelessWidget {
"gengmei://diary?diary_id=
${cards.diary.diaryId}
"
,
null
,
true
);
});
}
buried_on_click_card
(
int
position
,
String
btnName
,
String
cardContentType
,
String
cardId
)
{
Map
<
String
,
dynamic
>
buriedMap
;
buriedMap
=
{
"tab_name"
:
tabName
,
"position"
:
position
,
"card_id"
:
cardId
,
"card_name"
:
"card"
,
"card_type"
:
"card"
,
"transaction_type"
:
""
,
"card_content_type"
:
cardContentType
};
RouterCenterImpl
().
findMainRouter
().
buriedEvent
(
"on_click_card"
,
buriedMap
);
}
}
lib/ClueModel/page/levelOne/LevelOneList.dart
View file @
db521a6e
...
...
@@ -114,6 +114,18 @@ class LevelOneListState extends State<LevelOneList>
.
jumpPage
(
context
,
"show_login"
,
null
,
true
);
return
;
}
var
data2
=
_model
.
data
[
index
];
if
(
data2
.
cardType
==
"doctor"
)
{
buried_on_click_button
(
index
,
"bargain"
,
"doctor"
,
data2
.
doctor
.
doctor_id
);
}
else
if
(
data2
.
cardType
==
"hospital"
)
{
buried_on_click_button
(
index
,
"bargain"
,
"hospital"
,
data2
.
hospital
.
hosiptalId
);
}
else
if
(
data2
.
cardType
==
"plan"
)
{
buried_on_click_button
(
index
,
"bargain"
,
"level_two_plan"
,
"
${data2.plan.plan_id}
"
);
}
DiscussLowPricePopView
.
showPopView
(
context
,
widget
.
pageName
,
...
...
@@ -128,31 +140,51 @@ class LevelOneListState extends State<LevelOneList>
ask:
()
{
var
data2
=
_model
.
data
[
index
];
if
(
data2
.
cardType
==
"doctor"
)
{
buried_on_click_button
(
index
,
"consult"
,
"doctor"
,
data2
.
doctor
.
doctor_id
);
RouterCenterImpl
().
findMainRouter
().
jumpPage
(
context
,
data2
.
doctor
.
messageUrl
,
null
,
true
);
}
else
if
(
data2
.
cardType
==
"hospital"
)
{
buried_on_click_button
(
index
,
"consult"
,
"hospital"
,
data2
.
hospital
.
hosiptalId
);
RouterCenterImpl
().
findMainRouter
().
jumpPage
(
context
,
data2
.
hospital
.
messageUrl
,
null
,
true
);
}
else
if
(
data2
.
cardType
==
"plan"
)
{
buried_on_click_button
(
index
,
"consult"
,
"level_two_plan"
,
"
${data2.plan.plan_id}
"
);
BaseBottomPicker
()
..
setPicker
(
MechanismBox
(
data2
.
plan
.
plan_id
))
..
show
(
context
);
}
},
compare:
()
{
compare:
(
int
planId
)
{
var
data2
=
_model
.
data
[
index
];
if
(
data2
.
cardType
==
"doctor"
)
{
buried_on_click_button
(
index
,
"compare"
,
"doctor"
,
data2
.
doctor
.
doctor_id
);
}
else
if
(
data2
.
cardType
==
"hospital"
)
{
buried_on_click_button
(
index
,
"compare"
,
"hospital"
,
data2
.
hospital
.
hosiptalId
);
}
else
if
(
data2
.
cardType
==
"plan"
)
{
buried_on_click_button
(
index
,
"compare"
,
"level_two_plan"
,
"
${data2.plan.plan_id}
"
);
}
Map
<
String
,
dynamic
>
map
=
{
"business_id"
:
"
${widget.planId}
"
,
"planId"
:
widget
.
planId
,
"planType"
:
widget
.
index
==
0
?
1
:
2
"planId"
:
planId
,
"planType"
:
2
};
RouterCenterImpl
().
findMainRouter
().
jumpPage
(
context
,
widget
.
index
==
0
?
"level_one_plan_compare"
:
"level_two_plan_compare"
,
map
,
{
"planId"
:
planId
,
"planType"
:
2
}
,
false
);
},
tabName:
_model
.
tab_type
,
position:
index
,
);
},
childCount:
_model
.
data
.
length
+
1
,
...
...
@@ -189,6 +221,23 @@ class LevelOneListState extends State<LevelOneList>
},
pullDown:
false
,
pullUp:
true
,
loadMoreColor:
Color
(
0xffF7F6FA
));
}
buried_on_click_button
(
int
position
,
String
btnName
,
String
cardContentType
,
String
cardId
)
{
Map
<
String
,
dynamic
>
buriedMap
;
buriedMap
=
{
"tab_name"
:
_model
.
tab_type
,
"position"
:
position
,
"card_id"
:
cardId
,
"button_name"
:
btnName
,
"card_type"
:
"card"
,
"transaction_type"
:
""
,
"card_content_type"
:
cardContentType
};
RouterCenterImpl
()
.
findMainRouter
()
.
buriedEvent
(
"on_click_button"
,
buriedMap
);
}
@override
bool
get
wantKeepAlive
=>
true
;
}
lib/ClueModel/page/levelOne/LevelOneModel.dart
View file @
db521a6e
...
...
@@ -15,6 +15,7 @@ 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'
;
import
'package:gm_flutter/main.mark.dart'
;
class
LevelOneModel
extends
BaseModel
{
LiveData
<
int
>
stateLive
=
LiveData
();
...
...
@@ -59,5 +60,19 @@ class LevelOneModel extends BaseModel {
textLive
.
dispost
();
}
void
selectTab
(
int
index
)
{}
void
selectTab
(
int
index
,
String
tab_name
,
String
from_tab_name
)
{
buried_on_click_tab
(
index
,
tab_name
,
from_tab_name
);
}
buried_on_click_tab
(
int
position
,
String
tab_name
,
String
from_tab_name
)
{
Map
<
String
,
dynamic
>
buriedMap
;
buriedMap
=
{
"tab_name"
:
tab_name
,
"position"
:
position
,
"from_tab_name"
:
from_tab_name
,
};
RouterCenterImpl
()
.
findMainRouter
()
.
buriedEvent
(
"on_click_button"
,
buriedMap
);
}
}
lib/ClueModel/page/levelOne/LevelOnePage.dart
View file @
db521a6e
...
...
@@ -18,6 +18,7 @@ import 'package:gm_flutter/ClueModel/page/common/StickyTabBarDelegate.dart';
import
'package:gm_flutter/ClueModel/page/levelOne/LevelOneList.dart'
;
import
'package:gm_flutter/ClueModel/page/levelOne/LevelOneModel.dart'
;
import
'package:gm_flutter/ClueModel/page/mechanismBox/MechanismBoxPage.dart'
;
import
'package:gm_flutter/ClueModel/server/entity/PlanBarBean.dart'
;
import
'package:gm_flutter/ClueModel/util/NumPlanUtil.dart'
;
import
'package:gm_flutter/commonModel/App.dart'
;
import
'package:gm_flutter/commonModel/GMBase.dart'
;
...
...
@@ -232,7 +233,9 @@ class LevelOneState extends BaseState<LevelOnePage>
height:
40
,
color:
Colors
.
white
,
child:
baseTabBar
(
tabController
,
getTabs
(),
(
index
)
{
_model
.
selectTab
(
index
);
_model
.
selectTab
(
index
,
_model
.
tabsList
[
index
].
name
,
_model
.
tabsList
[
_model
.
currentIndex
].
name
);
_model
.
currentIndex
=
index
;
},
scroll:
false
),
)),
),
...
...
@@ -329,9 +332,7 @@ class LevelOneState extends BaseState<LevelOnePage>
right:
15
,
bottom:
8
,
child:
baseText
(
"销量
${NumPlanUtil.getSale(_model.planoverItem.salesCount)}
"
,
11
,
Color
(
0xff666666
)),
"销量
${_model.planoverItem.salesCount}
"
,
11
,
Color
(
0xff666666
)),
)
],
),
...
...
lib/ClueModel/page/levelTwo/LevelTwoPage.dart
View file @
db521a6e
...
...
@@ -235,18 +235,9 @@ class LevelTwoState extends BaseState<LevelTwoPage>
height:
40
,
color:
Colors
.
white
,
child:
baseTabBar
(
tabController
,
getTabs
(),
(
index
)
{
Map
<
String
,
dynamic
>
map
=
{};
map
[
"page_name"
]
=
"level_two_plan_deatil"
;
map
[
"referrer"
]
=
""
;
map
[
"referrer_id"
]
=
""
;
map
[
"referrer_link"
]
=
[
"plan_home"
];
map
[
"from_tab_name"
]
=
"全部"
;
map
[
"tab_name"
]
=
index
==
0
?
'机构'
:
'医生'
;
map
[
"position"
]
=
1
;
RouterCenterImpl
()
.
findMainRouter
()
.
buriedEvent
(
"on_click_tab"
,
map
);
_model
.
selectTab
(
index
);
_model
.
selectTab
(
index
,
_model
.
tabsList
[
index
].
name
,
_model
.
tabsList
[
_model
.
currentIndex
].
name
);
_model
.
currentIndex
=
index
;
},
scroll:
false
),
)),
),
...
...
lib/ClueModel/page/plan/PlanItem.dart
View file @
db521a6e
...
...
@@ -78,37 +78,47 @@ class PlanItem extends StatelessWidget {
crossAxisAlignment:
CrossAxisAlignment
.
center
,
mainAxisSize:
MainAxisSize
.
min
,
children:
<
Widget
>[
baseText
(
plans
.
name
,
14
,
Color
(
0xff282828
),
bold:
true
),
Container
(
margin:
EdgeInsets
.
only
(
left:
4
),
child:
Container
(
width:
28
,
height:
15
,
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
2
),
color:
Color
(
0xffF0F9F7
)),
alignment:
Alignment
.
center
,
child:
baseText
(
"??"
,
11
,
Color
(
0xff3FB5AF
),
bold:
true
),
),
)
constraints:
BoxConstraints
(
maxWidth:
110
),
child:
baseText
(
plans
.
name
,
14
,
Color
(
0xff282828
),
bold:
true
),
),
plans
.
operation_type
.
empty
()
?
Container
(
width:
0
,
height:
0
,
)
:
Container
(
constraints:
BoxConstraints
(
maxWidth:
60
),
margin:
EdgeInsets
.
only
(
left:
4
),
child:
Container
(
padding:
EdgeInsets
.
only
(
top:
2
,
bottom:
2
,
left:
3
,
right:
3
),
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
2
),
color:
Color
(
0xffF0F9F7
)),
alignment:
Alignment
.
center
,
child:
baseText
(
"
${plans.operation_type}
"
,
11
,
Color
(
0xff3FB5AF
),
bold:
true
),
),
)
],
),
),
Positioned
(
top:
1
4
,
top:
1
5
,
right:
10
,
child:
Row
(
mainAxisSize:
MainAxisSize
.
min
,
// crossAxisAlignment: CrossAxisAlignment.end,
verticalDirection:
VerticalDirection
.
down
,
children:
<
Widget
>[
baseText
(
"好评率"
,
11
,
Color
(
0xff282828
)),
Container
(
width:
4
,
),
baseText
(
"
${rate}
"
,
14
,
Color
(
0xffFF5963
)),
baseText
(
"
${rate}
"
,
14
,
Color
(
0xffFF5963
)
,
bold:
true
),
baseText
(
"%"
,
10
,
Color
(
0xffFF5963
)),
],
),
...
...
@@ -116,8 +126,8 @@ class PlanItem extends StatelessWidget {
Positioned
(
bottom:
14
,
right:
10
,
child:
baseText
(
"销量
${NumPlanUtil.getSale(plans.salesCount)}
"
,
11
,
Color
(
0xff282828
)),
child:
baseText
(
"销量
${plans.salesCount}
"
,
11
,
Color
(
0xff282828
)),
),
Positioned
(
left:
91
,
...
...
@@ -147,21 +157,14 @@ class PlanItem extends StatelessWidget {
),
).
gestureDetector
(()
{
Map
<
String
,
dynamic
>
map
;
if
(
isPlanPage
)
{
map
=
{
"page_name"
:
"plan_home"
,
"tab_name"
:
"plan_home"
,
"referrer_id"
:
""
,
"referrer"
:
""
,
"position"
:
pos
,
"business_id"
:
""
,
"card_id"
:
plans
.
id
,
"card_type"
:
"card"
,
"transaction_type"
:
""
,
"card_content_type"
:
"level_one_plan"
};
}
map
=
{
"tab_name"
:
isPlanPage
?
"plan_home"
:
""
,
"position"
:
pos
,
"card_id"
:
plans
.
id
,
"card_type"
:
"card"
,
"transaction_type"
:
""
,
"card_content_type"
:
"level_one_plan"
};
RouterCenterImpl
().
findMainRouter
().
buriedEvent
(
"on_click_card"
,
map
);
Map
<
String
,
dynamic
>
buriedMap
=
{
"business_id"
:
"
${plans.id}
"
,
...
...
lib/ClueModel/page/plan/PlanPage.dart
View file @
db521a6e
...
...
@@ -64,7 +64,7 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
@override
void
initState
()
{
print
(
"LSY PLAN INIT "
);
//
DioUtil.getInstance().setProxy("172.30.9.128");
DioUtil
.
getInstance
().
setProxy
(
"172.30.9.128"
);
_model
.
init
(
needCache:
true
);
super
.
initState
();
planBarView
=
...
...
@@ -497,9 +497,8 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
boxShadow:
[
BoxShadow
(
color:
Colors
.
black12
,
offset:
Offset
(
0.0
,
1.0
),
//阴影xy轴偏移量
blurRadius:
1.0
,
//阴影模糊程度
spreadRadius:
1.0
//阴影扩散程度
blurRadius:
0.5
,
spreadRadius:
0.5
)
],
color:
Colors
.
white
,
...
...
lib/ClueModel/page/top/TopModel.dart
View file @
db521a6e
...
...
@@ -41,11 +41,7 @@ class TopModel extends BaseModel {
return
;
}
Map
<
String
,
dynamic
>
map
=
{
"page_name"
:
"favor_plan"
,
"referrer"
:
"plan_home"
,
"referrer"
:
"plan_home"
,
"referrer_id"
:
""
,
"referrer_link"
:
[
"plan_home"
],
"position"
:
index
,
"from_tab_name"
:
tabs
[
tabIndex
].
name
,
"tab_name"
:
tabs
[
index
].
name
,
};
...
...
lib/ClueModel/server/entity/PlanFeedBean.dart
View file @
db521a6e
...
...
@@ -102,6 +102,7 @@ class Plans {
String
minPrice
;
String
maxPrice
;
String
projectImage
;
String
operation_type
;
Plans
(
{
this
.
id
,
...
...
@@ -119,6 +120,7 @@ class Plans {
cardType
=
json
[
'card_type'
];
name
=
json
[
'name'
];
positiveRate
=
json
[
'positive_rate'
];
operation_type
=
json
[
'operation_type'
];
salesCount
=
json
[
'sales_count'
];
baseAttrs
=
json
[
'base_attrs'
].
cast
<
String
>();
minPrice
=
...
...
@@ -132,6 +134,7 @@ class Plans {
final
Map
<
String
,
dynamic
>
data
=
new
Map
<
String
,
dynamic
>();
data
[
'id'
]
=
this
.
id
;
data
[
'card_type'
]
=
this
.
cardType
;
data
[
'operation_type'
]
=
this
.
operation_type
;
data
[
'name'
]
=
this
.
name
;
data
[
'positive_rate'
]
=
this
.
positiveRate
;
data
[
'sales_count'
]
=
this
.
salesCount
;
...
...
lib/commonModel/base/BaseComponent.dart
View file @
db521a6e
...
...
@@ -432,9 +432,8 @@ Widget baseTabBar(
boxShadow:
[
BoxShadow
(
color:
Colors
.
black12
,
offset:
Offset
(
0.0
,
1.0
),
//阴影xy轴偏移量
blurRadius:
1.0
,
//阴影模糊程度
spreadRadius:
1.0
//阴影扩散程度
blurRadius:
0.5
,
spreadRadius:
0.5
)
],
),
...
...
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