Commit 832d5c91 authored by 林生雨's avatar 林生雨

commit

parent 02a1c894
......@@ -11,6 +11,7 @@ import 'package:extended_nested_scroll_view/extended_nested_scroll_view.dart'
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_common/commonModel/picker/base/BaseBottomPicker.dart';
import 'package:gm_flutter/ClueModel/page/DiscussLowPrice/DiscussLowPricePopView.dart';
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';
......@@ -535,6 +536,8 @@ class LevelOneState extends BaseState<LevelOnePage>
RouterCenterImpl()
.findMainRouter()
.buriedEvent("popup_view", map);
DiscussLowPricePopView.showPopView(context,
widget.PAGE_NAME, "${widget.planId}", "", "");
},
child: Container(
margin: EdgeInsets.only(left: 15),
......
......@@ -6,6 +6,7 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:gm_flutter/ClueModel/page/plan/PlanProgressBar.dart';
import 'package:gm_flutter/commonModel/base/BaseComponent.dart';
import 'package:gm_flutter/commonModel/eventbus/SimpleEventBus.dart';
import 'package:gm_flutter/commonModel/util/DartUtil.dart';
class FilterView extends StatelessWidget {
......@@ -15,17 +16,9 @@ class FilterView extends StatelessWidget {
int min = 0;
int max = 0;
PlanProgressBar planProgressBar;
@override
Widget build(BuildContext context) {
planProgressBar = PlanProgressBar(
0,
5,
0,
10000,
padding: 15,
);
return Container(
color: Colors.white,
height: 186,
......@@ -36,7 +29,13 @@ class FilterView extends StatelessWidget {
left: 0,
child: Container(
width: MediaQuery.of(context).size.width,
child: planProgressBar,
child: PlanProgressBar(
0,
5,
0,
10000,
padding: 15,
),
),
),
Positioned(
......@@ -66,7 +65,8 @@ class FilterView extends StatelessWidget {
child: baseText("重置", 16, Color(0xff3FB5AF)),
alignment: Alignment.center,
).gestureDetector(() {
planProgressBar.changeNotifier.notifyListeners();
SimpleEventBus.instance()
.notifyListener("PlanProgressBarState", "");
}),
),
Expanded(
......
......@@ -8,13 +8,13 @@ import 'package:flutter/foundation.dart';
import 'package:flutter_common/commonModel/live/BaseModel.dart';
import 'package:flutter_common/commonModel/live/LiveData.dart';
import 'package:flutter_common/commonModel/toast/NativeToast.dart';
import 'package:gm_flutter/ClueModel/page/plan/PlanTest.dart';
import 'package:gm_flutter/ClueModel/server/api/ClueApi.serv.dart';
import 'package:gm_flutter/ClueModel/server/entity/PlanBean.dart';
import 'package:gm_flutter/ClueModel/server/entity/PlanFeedBean.dart';
import 'package:gm_flutter/commonModel/GMBase.dart';
import 'package:gm_flutter/commonModel/bean/Pair.dart';
import 'package:gm_flutter/commonModel/cache/CacheManager.dart';
import 'package:gm_flutter/commonModel/eventbus/SimpleEventBus.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';
......@@ -110,6 +110,7 @@ class PlanModel extends BaseModel {
}
void refreshFeed(bool clear, {RefreshController controller}) {
if (clear) {
page = 1;
feedDatas.clear();
......
......@@ -25,6 +25,7 @@ import 'package:gm_flutter/commonModel/base/BaseComponent.dart';
import 'package:gm_flutter/commonModel/base/BaseState.dart';
import 'package:gm_flutter/commonModel/bean/Pair.dart';
import 'package:gm_flutter/commonModel/cache/CacheManager.dart';
import 'package:gm_flutter/commonModel/eventbus/SimpleEventBus.dart';
import 'package:gm_flutter/commonModel/net/DioUtil.dart';
import 'package:gm_flutter/commonModel/popMenu/BaseMenuListener.dart';
import 'package:gm_flutter/commonModel/popMenu/BasePopMenu.dart';
......@@ -58,18 +59,18 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
PlanBarView planBarView;
double stateBarHeight;
double topHeight;
Function(String str) func;
@override
void initState() {
print("LSY PLAN INIT");
// DioUtil.getInstance().setProxy("172.30.9.128");
super.initState();
if (CacheManager.getInstance().get(MEMORY_CACHE).get(COOKIE) == null) {
VoidCallback callback = () {
func = (str) {
_model.init();
};
print("LST FIRST CALLBACK is null ?${callback == null}");
RouterCenterImpl().findMainRouter().getInitParams(callback);
if (CacheManager.getInstance().get(MEMORY_CACHE).get(COOKIE) == null) {
SimpleEventBus.instance().resignEvent("PlanPage!initState", func);
} else {
_model.init();
}
......@@ -79,6 +80,7 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
@override
void dispose() {
SimpleEventBus.instance().unResignEvent("PlanPage!initState", func);
hideAllMenuListener.dispose();
projectMenuListener.dispose();
sortMenuListener.dispose();
......
......@@ -5,6 +5,7 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:gm_flutter/commonModel/base/BaseComponent.dart';
import 'package:gm_flutter/commonModel/eventbus/SimpleEventBus.dart';
class PlanProgressBar extends StatefulWidget {
int low;
......@@ -12,7 +13,6 @@ class PlanProgressBar extends StatefulWidget {
int maxlow;
int maxHigh;
int padding;
ChangeNotifier changeNotifier;
PlanProgressBar(this.low, this.high, this.maxlow, this.maxHigh,
{this.padding});
......@@ -35,20 +35,18 @@ class PlanProgressBarState extends State<PlanProgressBar> {
double textLeft = -1;
bool isLeftMove = true;
Function(String str) func;
@override
void initState() {
super.initState();
distance = widget.maxHigh - widget.maxlow - 0.0;
widget.changeNotifier = ChangeNotifier();
init();
if (widget.changeNotifier != null && !widget.changeNotifier.hasListeners) {
widget.changeNotifier.addListener(() {
print("HHH");
func = (str) {
init();
setState(() {});
});
}
};
SimpleEventBus.instance().resignEvent("PlanProgressBarState", func);
}
void init() {
......@@ -61,7 +59,7 @@ class PlanProgressBarState extends State<PlanProgressBar> {
@override
void dispose() {
widget.changeNotifier.dispose();
SimpleEventBus.instance().unResignEvent("PlanProgressBarState", func);
super.dispose();
}
......
/*
* @author lsy
* @date 2020/7/1
**/
const PLAN_TEST_JSON = """
{
"error": 0,
"message": "",
"extra": null,
"error_extra": null,
"user_type": {},
"data": {
"ranks": [
{
"name": "方案好评榜",
"gm_url": "xxxxx",
"icon": "https://heras.igengmei.com/2020/02/16/9327baec41"
},
{
"name": "热门榜",
"gm_url": "xxxxx",
"icon": "https://heras.igengmei.com/2020/02/16/9327baec41"
}
],
"areas": [
{
"is_located": true,
"name": "中国",
"groups": [
{
"is_hot": true,
"initial": "热",
"cities": [
{
"city_name": "beijing",
"id": 328,
"name": "北京"
},
{
"city_name": "shanghai",
"id": 592,
"name": "上海"
},
{
"city_name": "guangzhou",
"id": 409,
"name": "广州"
},
{
"city_name": "shenzhen",
"id": 604,
"name": "深圳"
},
{
"city_name": "chengdu",
"id": 352,
"name": "成都"
},
{
"city_name": "chongqing",
"id": 359,
"name": "重庆"
},
{
"city_name": "wuhan",
"id": 662,
"name": "武汉"
},
{
"city_name": "changsha",
"id": 343,
"name": "长沙"
},
{
"city_name": "xian",
"id": 675,
"name": "西安"
},
{
"city_name": "zhengzhou",
"id": 744,
"name": "郑州"
},
{
"city_name": "hangzhou",
"id": 425,
"name": "杭州"
},
{
"city_name": "nanjing",
"id": 542,
"name": "南京"
}
],
"title": "热门城市"
},
{
"initial": "*",
"cities": [
{
"city_name": "worldwide",
"id": "worldwide",
"name": "全部城市"
}
],
"title": "*"
},
{
"is_hot": false,
"initial": "A",
"cities": [
{
"city_name": "ankang",
"id": 304,
"name": "安康"
},
{
"city_name": "anqing",
"id": 306,
"name": "安庆"
}
],
"title": "A"
},
{
"is_hot": false,
"initial": "B",
"cities": [
{
"city_name": "baoding",
"id": 317,
"name": "保定"
},
{
"city_name": "baoji",
"id": 318,
"name": "宝鸡"
},
{
"city_name": "baotou",
"id": 321,
"name": "包头"
},
{
"city_name": "beijing",
"id": 328,
"name": "北京"
},
{
"city_name": "bengbu",
"id": 329,
"name": "蚌埠"
},
{
"city_name": "bijie",
"id": 331,
"name": "毕节"
},
{
"city_name": "bozhou",
"id": 335,
"name": "亳州"
}
],
"title": "B"
},
{
"is_hot": false,
"initial": "C",
"cities": [
{
"city_name": "cangzhou",
"id": 336,
"name": "沧州"
},
{
"city_name": "changchun",
"id": 337,
"name": "长春"
},
{
"city_name": "changsha",
"id": 343,
"name": "长沙"
},
{
"city_name": "changzhou",
"id": 347,
"name": "常州"
},
{
"city_name": "chengde",
"id": 351,
"name": "承德"
},
{
"city_name": "chengdu",
"id": 352,
"name": "成都"
},
{
"city_name": "chenzhou",
"id": 355,
"name": "郴州"
},
{
"city_name": "chongqing",
"id": 359,
"name": "重庆"
},
{
"city_name": "chuxiong",
"id": 361,
"name": "楚雄"
}
],
"title": "C"
},
{
"is_hot": false,
"initial": "D",
"cities": [
{
"city_name": "dali",
"id": 364,
"name": "大理"
},
{
"city_name": "dalian",
"id": 365,
"name": "大连"
},
{
"city_name": "dandong",
"id": 366,
"name": "丹东"
},
{
"city_name": "daqing",
"id": 369,
"name": "大庆"
},
{
"city_name": "datong",
"id": 370,
"name": "大同"
},
{
"city_name": "dazhou",
"id": 373,
"name": "达州"
},
{
"city_name": "deyang",
"id": 376,
"name": "德阳"
},
{
"city_name": "dongguan",
"id": 382,
"name": "东莞"
},
{
"city_name": "dongyang",
"id": 384,
"name": "东阳"
},
{
"city_name": "dongying",
"id": 385,
"name": "东营"
}
],
"title": "D"
},
{
"is_hot": false,
"initial": "E",
"cities": [
{
"city_name": "enshi",
"id": 387,
"name": "恩施"
}
],
"title": "E"
},
{
"is_hot": false,
"initial": "F",
"cities": [
{
"city_name": "foshan",
"id": 395,
"name": "佛山"
},
{
"city_name": "fuyang",
"id": 399,
"name": "阜阳"
},
{
"city_name": "fuzhou",
"id": 400,
"name": "福州"
}
],
"title": "F"
},
{
"is_hot": false,
"initial": "G",
"cities": [
{
"city_name": "ganzhou",
"id": 403,
"name": "赣州"
},
{
"city_name": "guangzhou",
"id": 409,
"name": "广州"
},
{
"city_name": "guilin",
"id": 411,
"name": "桂林"
},
{
"city_name": "guiyang",
"id": 412,
"name": "贵阳"
}
],
"title": "G"
},
{
"is_hot": false,
"initial": "H",
"cities": [
{
"city_name": "haerbin",
"id": 415,
"name": "哈尔滨"
},
{
"city_name": "haikou",
"id": 419,
"name": "海口"
},
{
"city_name": "handan",
"id": 423,
"name": "邯郸"
},
{
"city_name": "hangzhou",
"id": 425,
"name": "杭州"
},
{
"city_name": "hefei",
"id": 430,
"name": "合肥"
},
{
"city_name": "hengshui",
"id": 434,
"name": "衡水"
},
{
"city_name": "hengyang",
"id": 435,
"name": "衡阳"
},
{
"city_name": "heyuan",
"id": 437,
"name": "河源"
},
{
"city_name": "huaian",
"id": 441,
"name": "淮安"
},
{
"city_name": "huaibei",
"id": 442,
"name": "淮北"
},
{
"city_name": "huangshan",
"id": 449,
"name": "黄山"
},
{
"city_name": "huangshi",
"id": 450,
"name": "黄石"
},
{
"city_name": "huhehaote",
"id": 451,
"name": "呼和浩特"
},
{
"city_name": "huizhou",
"id": 452,
"name": "惠州"
},
{
"city_name": "huludao",
"id": 453,
"name": "葫芦岛"
},
{
"city_name": "huzhou",
"id": 455,
"name": "湖州"
}
],
"title": "H"
},
{
"is_hot": false,
"initial": "J",
"cities": [
{
"city_name": "jiamusi",
"id": 457,
"name": "佳木斯"
},
{
"city_name": "jian",
"id": 458,
"name": "吉安"
},
{
"city_name": "jiangmen",
"id": 460,
"name": "江门"
},
{
"city_name": "jiaozuo",
"id": 462,
"name": "焦作"
},
{
"city_name": "jiaxing",
"id": 463,
"name": "嘉兴"
},
{
"city_name": "jilin1",
"id": 467,
"name": "吉林"
},
{
"city_name": "jinan",
"id": 468,
"name": "济南"
},
{
"city_name": "jingzhou",
"id": 474,
"name": "荆州"
},
{
"city_name": "jinhua",
"id": 475,
"name": "金华"
},
{
"city_name": "jining",
"id": 476,
"name": "济宁"
},
{
"city_name": "jinzhong",
"id": 479,
"name": "晋中"
},
{
"city_name": "jinzhou",
"id": 480,
"name": "锦州"
}
],
"title": "J"
},
{
"is_hot": false,
"initial": "K",
"cities": [
{
"city_name": "kunming",
"id": 493,
"name": "昆明"
}
],
"title": "K"
},
{
"is_hot": false,
"initial": "L",
"cities": [
{
"city_name": "langfang",
"id": 497,
"name": "廊坊"
},
{
"city_name": "lanzhou",
"id": 498,
"name": "兰州"
},
{
"city_name": "lasa",
"id": 499,
"name": "拉萨"
},
{
"city_name": "leshan",
"id": 501,
"name": "乐山"
},
{
"city_name": "lianyungang",
"id": 504,
"name": "连云港"
},
{
"city_name": "linyi",
"id": 514,
"name": "临沂"
},
{
"city_name": "liupanshui",
"id": 518,
"name": "六盘水"
},
{
"city_name": "liuzhou",
"id": 519,
"name": "柳州"
},
{
"city_name": "luohe",
"id": 524,
"name": "漯河"
},
{
"city_name": "luoyang",
"id": 525,
"name": "洛阳"
},
{
"city_name": "luzhou",
"id": 526,
"name": "泸州"
}
],
"title": "L"
},
{
"is_hot": false,
"initial": "M",
"cities": [
{
"city_name": "maoming",
"id": 529,
"name": "茂名"
},
{
"city_name": "meishan",
"id": 530,
"name": "眉山"
},
{
"city_name": "mianyang",
"id": 533,
"name": "绵阳"
}
],
"title": "M"
},
{
"is_hot": false,
"initial": "N",
"cities": [
{
"city_name": "nanchang",
"id": 538,
"name": "南昌"
},
{
"city_name": "nanchong",
"id": 539,
"name": "南充"
},
{
"city_name": "nanjing",
"id": 542,
"name": "南京"
},
{
"city_name": "nanning",
"id": 543,
"name": "南宁"
},
{
"city_name": "nantong",
"id": 545,
"name": "南通"
},
{
"city_name": "nanyang",
"id": 547,
"name": "南阳"
},
{
"city_name": "neijiang",
"id": 549,
"name": "内江"
},
{
"city_name": "ningbo",
"id": 550,
"name": "宁波"
}
],
"title": "N"
},
{
"is_hot": false,
"initial": "P",
"cities": [
{
"city_name": "panzhihua",
"id": 555,
"name": "攀枝花"
},
{
"city_name": "putian",
"id": 564,
"name": "莆田"
},
{
"city_name": "puyang",
"id": 565,
"name": "濮阳"
}
],
"title": "P"
},
{
"is_hot": false,
"initial": "Q",
"cities": [
{
"city_name": "qingdao",
"id": 572,
"name": "青岛"
},
{
"city_name": "qingyuan",
"id": 575,
"name": "清远"
},
{
"city_name": "qinhuangdao",
"id": 576,
"name": "秦皇岛"
},
{
"city_name": "qiqihaer",
"id": 580,
"name": "齐齐哈尔"
},
{
"city_name": "quanzhou",
"id": 582,
"name": "泉州"
},
{
"city_name": "qujing",
"id": 583,
"name": "曲靖"
}
],
"title": "Q"
},
{
"is_hot": false,
"initial": "R",
"cities": [
{
"city_name": "rizhao",
"id": 586,
"name": "日照"
}
],
"title": "R"
},
{
"is_hot": false,
"initial": "S",
"cities": [
{
"city_name": "sanya",
"id": 591,
"name": "三亚"
},
{
"city_name": "shanghai",
"id": 592,
"name": "上海"
},
{
"city_name": "shangqiu",
"id": 594,
"name": "商丘"
},
{
"city_name": "shangrao",
"id": 595,
"name": "上饶"
},
{
"city_name": "shantou",
"id": 597,
"name": "汕头"
},
{
"city_name": "shaoguan",
"id": 599,
"name": "韶关"
},
{
"city_name": "shaoxing",
"id": 600,
"name": "绍兴"
},
{
"city_name": "shaoyang",
"id": 601,
"name": "邵阳"
},
{
"city_name": "shengzhou",
"id": 7401,
"name": "嵊州"
},
{
"city_name": "shenyang",
"id": 603,
"name": "沈阳"
},
{
"city_name": "shenzhen",
"id": 604,
"name": "深圳"
},
{
"city_name": "shijiazhuang",
"id": 606,
"name": "石家庄"
},
{
"city_name": "suining",
"id": 620,
"name": "遂宁"
},
{
"city_name": "suizhou",
"id": 621,
"name": "随州"
},
{
"city_name": "suzhou",
"id": 623,
"name": "苏州"
}
],
"title": "S"
},
{
"is_hot": false,
"initial": "T",
"cities": [
{
"city_name": "taian",
"id": 626,
"name": "泰安"
},
{
"city_name": "taiyuan",
"id": 631,
"name": "太原"
},
{
"city_name": "taizhou",
"id": 633,
"name": "泰州"
},
{
"city_name": "taizhou1",
"id": 634,
"name": "台州"
},
{
"city_name": "tangshan",
"id": 636,
"name": "唐山"
},
{
"city_name": "tianjin",
"id": 638,
"name": "天津"
},
{
"city_name": "tongren",
"id": 648,
"name": "铜仁"
}
],
"title": "T"
},
{
"is_hot": false,
"initial": "W",
"cities": [
{
"city_name": "weifang",
"id": 655,
"name": "潍坊"
},
{
"city_name": "weihai",
"id": 656,
"name": "威海"
},
{
"city_name": "weinan",
"id": 657,
"name": "渭南"
},
{
"city_name": "wenzhou",
"id": 660,
"name": "温州"
},
{
"city_name": "wuhan",
"id": 662,
"name": "武汉"
},
{
"city_name": "wuhu",
"id": 663,
"name": "芜湖"
},
{
"city_name": "wulumuqi",
"id": 666,
"name": "乌鲁木齐"
},
{
"city_name": "wuwei",
"id": 669,
"name": "武威"
},
{
"city_name": "wuxi",
"id": 670,
"name": "无锡"
}
],
"title": "W"
},
{
"is_hot": false,
"initial": "X",
"cities": [
{
"city_name": "xiamen",
"id": 674,
"name": "厦门"
},
{
"city_name": "xian",
"id": 675,
"name": "西安"
},
{
"city_name": "xiangtan",
"id": 678,
"name": "湘潭"
},
{
"city_name": "xiangyang",
"id": 676,
"name": "襄阳"
},
{
"city_name": "xianyang",
"id": 682,
"name": "咸阳"
},
{
"city_name": "xingtai",
"id": 686,
"name": "邢台"
},
{
"city_name": "xining",
"id": 687,
"name": "西宁"
},
{
"city_name": "xinxiang",
"id": 689,
"name": "新乡"
},
{
"city_name": "xishuangbanna",
"id": 695,
"name": "西双版纳"
},
{
"city_name": "xuzhou",
"id": 699,
"name": "徐州"
}
],
"title": "X"
},
{
"is_hot": false,
"initial": "Y",
"cities": [
{
"city_name": "yancheng",
"id": 703,
"name": "盐城"
},
{
"city_name": "yangzhou",
"id": 706,
"name": "扬州"
},
{
"city_name": "yantai",
"id": 709,
"name": "烟台"
},
{
"city_name": "yibin",
"id": 710,
"name": "宜宾"
},
{
"city_name": "yichang",
"id": 711,
"name": "宜昌"
},
{
"city_name": "yinchuan",
"id": 716,
"name": "银川"
},
{
"city_name": "yingtan",
"id": 718,
"name": "鹰潭"
},
{
"city_name": "yiwu",
"id": 297,
"name": "义乌"
},
{
"city_name": "yiyang",
"id": 719,
"name": "益阳"
},
{
"city_name": "yuncheng",
"id": 727,
"name": "运城"
},
{
"city_name": "yuxi",
"id": 732,
"name": "玉溪"
}
],
"title": "Y"
},
{
"is_hot": false,
"initial": "Z",
"cities": [
{
"city_name": "zaozhuang",
"id": 733,
"name": "枣庄"
},
{
"city_name": "zhangjiakou",
"id": 737,
"name": "张家口"
},
{
"city_name": "zhanjiang",
"id": 741,
"name": "湛江"
},
{
"city_name": "zhaoqing",
"id": 742,
"name": "肇庆"
},
{
"city_name": "zhengzhou",
"id": 744,
"name": "郑州"
},
{
"city_name": "zhenjiang",
"id": 745,
"name": "镇江"
},
{
"city_name": "zhongshan",
"id": 746,
"name": "中山"
},
{
"city_name": "zhoukou",
"id": 749,
"name": "周口"
},
{
"city_name": "zhoushan",
"id": 750,
"name": "舟山"
},
{
"city_name": "zhuhai",
"id": 751,
"name": "珠海"
},
{
"city_name": "zhumadian",
"id": 752,
"name": "驻马店"
},
{
"city_name": "zhuzhou",
"id": 753,
"name": "株洲"
},
{
"city_name": "zibo",
"id": 754,
"name": "淄博"
},
{
"city_name": "zunyi",
"id": 757,
"name": "遵义"
}
],
"title": "Z"
}
]
},
{
"is_located": false,
"name": "国际/港澳台",
"groups": [
{
"is_hot": true,
"initial": "热",
"cities": [
{
"city_name": "shouer",
"id": 612,
"name": "首尔"
},
{
"city_name": "dongjing",
"id": 2669,
"name": "东京"
},
{
"city_name": "mangu",
"id": 3936,
"name": "曼谷"
},
{
"city_name": "jizhoushi",
"id": 2536,
"name": "济州岛"
},
{
"city_name": "xianggangdao",
"id": 677,
"name": "香港"
}
],
"title": "热门城市"
},
{
"initial": "*",
"cities": [
{
"city_name": "worldwide",
"id": "worldwide",
"name": "全部城市"
}
],
"title": "*"
},
{
"is_hot": false,
"initial": "D",
"cities": [
{
"city_name": "dongjing",
"id": 2669,
"name": "东京"
}
],
"title": "D"
},
{
"is_hot": false,
"initial": "J",
"cities": [
{
"city_name": "jizhoushi",
"id": 2536,
"name": "济州岛"
}
],
"title": "J"
},
{
"is_hot": false,
"initial": "M",
"cities": [
{
"city_name": "mangu",
"id": 3936,
"name": "曼谷"
}
],
"title": "M"
},
{
"is_hot": false,
"initial": "S",
"cities": [
{
"city_name": "shouer",
"id": 612,
"name": "首尔"
}
],
"title": "S"
},
{
"is_hot": false,
"initial": "T",
"cities": [
{
"city_name": "taibei",
"id": 627,
"name": "台北"
}
],
"title": "T"
},
{
"is_hot": false,
"initial": "X",
"cities": [
{
"city_name": "xianggangdao",
"id": 677,
"name": "中国香港"
}
],
"title": "X"
}
]
}
],
"tags": [
{
"id": "all",
"sub_tags": [
{
"id": "all",
"name": "全部项目"
}
],
"name": "全部项目"
},
{
"name": "眼部整形",
"sub_tags": [
{
"id": 1,
"name": "全部眼部整形"
},
{
"id": 15,
"name": "双眼皮"
},
{
"id": 16,
"name": "填充泪沟"
},
{
"id": 17,
"name": "开眼角"
},
{
"id": 18,
"name": "祛眼袋"
},
{
"id": 19,
"name": "祛黑眼圈"
},
{
"id": 63,
"name": "填充卧蚕"
},
{
"id": 64,
"name": "眼部修复"
},
{
"id": 884,
"name": "垫眉弓"
},
{
"id": 975,
"name": "眼睑"
},
{
"id": 3459,
"name": "眼部综合"
}
]
},
{
"name": "鼻部整形",
"sub_tags": [
{
"id": 2,
"name": "全部鼻部整形"
},
{
"id": 21,
"name": "隆鼻"
},
{
"id": 24,
"name": "鼻翼"
},
{
"id": 26,
"name": "鼻形矫正"
},
{
"id": 65,
"name": "鼻部修复"
},
{
"id": 896,
"name": "鼻基底"
},
{
"id": 3285,
"name": "鼻部综合"
}
]
},
{
"name": "轮廓骨骼",
"sub_tags": [
{
"id": 3,
"name": "全部轮廓骨骼"
},
{
"id": 28,
"name": "颧骨"
},
{
"id": 29,
"name": "额头"
},
{
"id": 30,
"name": "太阳穴"
},
{
"id": 45,
"name": "面颊"
},
{
"id": 46,
"name": "下巴"
},
{
"id": 81,
"name": "轮廓修复"
},
{
"id": 235,
"name": "下颌角切除术"
},
{
"id": 766,
"name": "祛颊脂垫"
},
{
"id": 812,
"name": "V-line瓜子脸手术"
},
{
"id": 898,
"name": "咬肌切除"
},
{
"id": 900,
"name": "两颚"
},
{
"id": 1136,
"name": "磨骨"
},
{
"id": 1233,
"name": "自体脂肪填充面部"
},
{
"id": 3047,
"name": "假体填充"
},
{
"id": 5060,
"name": "轮廓套餐"
},
{
"id": 6150,
"name": "手术套餐"
}
]
},
{
"name": "瘦身美体",
"sub_tags": [
{
"id": 4,
"name": "全部瘦身美体"
},
{
"id": 32,
"name": "腰腹"
},
{
"id": 33,
"name": "臀部"
},
{
"id": 38,
"name": "溶脂"
},
{
"id": 72,
"name": "中医减肥"
},
{
"id": 84,
"name": "手臂"
},
{
"id": 221,
"name": "吸脂"
},
{
"id": 892,
"name": "大腿"
},
{
"id": 893,
"name": "小腿"
},
{
"id": 894,
"name": "肩背"
},
{
"id": 5061,
"name": "瘦身套餐"
}
]
},
{
"name": "皮肤美容",
"sub_tags": [
{
"id": 5,
"name": "全部皮肤美容"
},
{
"id": 34,
"name": "祛痘祛痘印"
},
{
"id": 35,
"name": "祛斑"
},
{
"id": 41,
"name": "改善肤质"
},
{
"id": 47,
"name": "美白嫩肤"
},
{
"id": 60,
"name": "祛纹身"
},
{
"id": 78,
"name": "祛红血丝"
},
{
"id": 1387,
"name": "清洁补水"
},
{
"id": 1992,
"name": "祛痣"
},
{
"id": 2942,
"name": "祛疤"
}
]
},
{
"name": "胸部塑身",
"sub_tags": [
{
"id": 7,
"name": "全部胸部塑身"
},
{
"id": 66,
"name": "丰胸(隆胸)"
},
{
"id": 67,
"name": "乳头乳晕"
},
{
"id": 68,
"name": "副乳"
},
{
"id": 69,
"name": "胸部形态重塑"
},
{
"id": 70,
"name": "胸部修复"
},
{
"id": 5724,
"name": "胸部提升"
},
{
"id": 6144,
"name": "胸部套餐"
}
]
},
{
"name": "毛发管理",
"sub_tags": [
{
"id": 9,
"name": "全部毛发管理"
},
{
"id": 80,
"name": "毛发其他"
},
{
"id": 865,
"name": "药物脱毛"
},
{
"id": 983,
"name": "毛发移植"
},
{
"id": 2663,
"name": "激光脱毛"
},
{
"id": 2947,
"name": "光子脱毛"
}
]
},
{
"name": "私密整形",
"sub_tags": [
{
"id": 10,
"name": "全部私密整形"
},
{
"id": 955,
"name": "女性私密"
},
{
"id": 956,
"name": "男性私密"
}
]
},
{
"name": "牙齿美容",
"sub_tags": [
{
"id": 11,
"name": "全部牙齿美容"
},
{
"id": 53,
"name": "牙齿整形"
},
{
"id": 55,
"name": "美容冠"
},
{
"id": 154,
"name": "牙齿矫正"
},
{
"id": 155,
"name": "牙齿美白"
},
{
"id": 156,
"name": "烤瓷牙"
},
{
"id": 157,
"name": "洗牙"
},
{
"id": 158,
"name": "补牙"
},
{
"id": 159,
"name": "种植牙"
},
{
"id": 852,
"name": "拔牙"
},
{
"id": 2458,
"name": "瓷贴面"
}
]
},
{
"name": "口唇整形",
"sub_tags": [
{
"id": 12,
"name": "全部口唇整形"
},
{
"id": 31,
"name": "酒窝"
},
{
"id": 52,
"name": "丰唇"
},
{
"id": 903,
"name": "嘴角上提"
},
{
"id": 904,
"name": "厚唇"
},
{
"id": 907,
"name": "唇形"
}
]
},
{
"name": "抗衰紧致",
"sub_tags": [
{
"id": 922,
"name": "全部抗衰紧致"
},
{
"id": 62,
"name": "颈部"
},
{
"id": 79,
"name": "除皱"
},
{
"id": 933,
"name": "自体脂肪面部年轻化"
},
{
"id": 4422,
"name": "祛皱"
}
]
},
{
"name": "注射美容",
"sub_tags": [
{
"id": 992,
"name": "全部注射美容"
},
{
"id": 82,
"name": "微整修复"
},
{
"id": 1055,
"name": "玻尿酸注射"
},
{
"id": 2033,
"name": "瘦脸除皱"
},
{
"id": 3042,
"name": "胶原蛋白注射"
},
{
"id": 3044,
"name": "少女针"
},
{
"id": 3046,
"name": "童颜针"
},
{
"id": 5078,
"name": "微整套餐"
},
{
"id": 6147,
"name": "注射美肤"
}
]
},
{
"name": "自体脂肪",
"sub_tags": [
{
"id": 1024,
"name": "全部自体脂肪"
},
{
"id": 2112,
"name": "面部填充"
},
{
"id": 6102,
"name": "身体塑形"
},
{
"id": 7117,
"name": "脂肪其他"
}
]
},
{
"name": "半永久",
"sub_tags": [
{
"id": 1080,
"name": "全部半永久"
},
{
"id": 1370,
"name": "韩式半永久纹眉"
},
{
"id": 2054,
"name": "半永久妆"
},
{
"id": 2055,
"name": "韩式半永久飘眉"
},
{
"id": 2056,
"name": "韩式半永久雾眉"
},
{
"id": 2057,
"name": "韩式半永久纹眼线(美瞳线)"
},
{
"id": 2058,
"name": "韩式半永久漂唇"
},
{
"id": 2954,
"name": "韩式半永久纹发际线"
},
{
"id": 5079,
"name": "韩式半永久套餐"
},
{
"id": 6944,
"name": "半永久 生活美容"
}
]
},
{
"name": "其他",
"sub_tags": [
{
"id": 2214,
"name": "全部其他"
},
{
"id": 13,
"name": "耳部整形"
},
{
"id": 929,
"name": "视力矫正"
},
{
"id": 957,
"name": "祛腋臭"
},
{
"id": 971,
"name": "产后修复"
},
{
"id": 1134,
"name": "面膜"
},
{
"id": 2054,
"name": "半永久妆"
},
{
"id": 2955,
"name": "体检"
},
{
"id": 5433,
"name": "腿型矫正"
},
{
"id": 6418,
"name": "补差价"
},
{
"id": 6933,
"name": "生活美容"
},
{
"id": 7587,
"name": "大脚骨矫正"
},
{
"id": 11340,
"name": "塌鼻梁拯救计划"
},
{
"id": 11341,
"name": "Get元气初恋脸"
},
{
"id": 11342,
"name": "维密身材养成记"
},
{
"id": 11344,
"name": "电眼杀手俱乐部"
},
{
"id": 11345,
"name": "人间水蜜桃计划"
}
]
},
{
"name": "眼科",
"sub_tags": [
{
"id": 12711,
"name": "全部眼科"
},
{
"id": 932,
"name": "近视矫正"
},
{
"id": 940,
"name": "眼科其他"
}
]
}
],
"orders": [
{
"id": 0,
"name": "智能排序"
},
{
"id": 1,
"name": "价格"
},
{
"id": 2,
"name": "好评率"
},
{
"id": 3,
"name": "销量"
}
]
}
}
""";
......@@ -45,7 +45,6 @@ class MainRouterImpl implements MainRouter {
@override
void getInitParams(VoidCallback callback) {
print("LST SECOND CALLBACK is null ?${callback == null}");
MainManager.getInstance().getInitParams(callback);
}
}
......@@ -10,6 +10,7 @@ import 'package:flutter_boost/flutter_boost.dart';
import 'package:gm_flutter/commonModel/GMBase.dart';
import 'package:gm_flutter/commonModel/base/BaseUtil.dart';
import 'package:gm_flutter/commonModel/cache/CacheManager.dart';
import 'package:gm_flutter/commonModel/eventbus/SimpleEventBus.dart';
import 'package:gm_flutter/commonModel/util/DartUtil.dart';
import '../../commonModel/App.dart';
......@@ -72,21 +73,17 @@ class MainManager {
innerSetData(map, BASE_URL);
DioUtil.setDefOptions(baseUrl: "${map[BASE_URL]}/", agent: map[USER_AGENT]);
if (map[COOKIE] == null) {
CacheManager.getInstance().get(MEMORY_CACHE).save(COOKIE,
"_gm_token=1da6071594101423; csrftoken=rUrkkYYMOVZfIIQnU2IH09QIGmsfe8tE; sessionid=uz7f70uap76r6og48znci5l2hbr9vm5c; _gtid=5af9a5deba8511ea8d4082a085c393c93393");
} else {
// if (map[COOKIE] == null) {
// CacheManager.getInstance().get(MEMORY_CACHE).save(COOKIE,
// "_gm_token=1da6071594101423; csrftoken=rUrkkYYMOVZfIIQnU2IH09QIGmsfe8tE; sessionid=uz7f70uap76r6og48znci5l2hbr9vm5c; _gtid=5af9a5deba8511ea8d4082a085c393c93393");
// } else {
innerSetData(map, COOKIE);
}
// }
print(
"LSY QQWWEERRTTYY ${CacheManager.getInstance().get(MEMORY_CACHE).get(COOKIE)}"
" ${CacheManager.getInstance().get(MEMORY_CACHE).get(COOKIE) is String}");
DioUtil.getInstance().changeOpt();
print("LSY QQ11 callback is NULL?${callback == null}");
if (callback != null) {
callback();
}
print("LSY QQ22");
SimpleEventBus.instance().notifyListener("PlanPage!initState", "");
}
void innerSetData(Map<String, dynamic> map, String str) {
......
......@@ -8,6 +8,7 @@ import 'dart:math' as math;
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:gm_flutter/commonModel/GMBase.dart';
import 'package:gm_flutter/commonModel/eventbus/SimpleEventBus.dart';
import 'package:lottie/lottie.dart';
// The over-scroll distance that moves the indicator to its maximum
......@@ -167,14 +168,24 @@ class NestedScrollViewRefreshIndicatorState
static final Animatable<double> _kDragSizeFactorLimitTween =
Tween<double>(begin: 0.0, end: _kDragSizeFactorLimit);
Function(String str) func;
@override
void initState() {
super.initState();
func = (str) {
if (str == "refresh") {
if (mounted) {
_show();
}
}
};
SimpleEventBus.instance()
.resignEvent("BaseNestedScrollViewRefreshIndicator", func);
_positionController = AnimationController(vsync: this);
_positionFactor = _positionController.drive(_kDragSizeFactorLimitTween);
_value = _positionController.drive(
_threeQuarterTween); // The "value" of the circular progress indicator during a drag.
}
@override
......@@ -192,6 +203,8 @@ class NestedScrollViewRefreshIndicatorState
@override
void dispose() {
SimpleEventBus.instance()
.unResignEvent("BaseNestedScrollViewRefreshIndicator", func);
_positionController.dispose();
super.dispose();
}
......
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