Commit a9bf214a0482c5433882eb7b0e539f6f359ce767

Authored by wdn127929
1 parent 9d2486da

店内常点

228 KB | W: | H:

40.6 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
  1 +class SellerOftenModel {
  2 + int ret;
  3 + List<SellerOftenSunModel> data;
  4 + String msg;
  5 +
  6 + SellerOftenModel({this.ret, this.data, this.msg});
  7 +
  8 + SellerOftenModel.fromJson(Map<String, dynamic> json) {
  9 + ret = json['ret'];
  10 + if (json['data'] != null) {
  11 + data = <SellerOftenSunModel>[];
  12 + json['data'].forEach((v) {
  13 + data.add(new SellerOftenSunModel.fromJson(v));
  14 + });
  15 + }
  16 + msg = json['msg'];
  17 + }
  18 +
  19 + Map<String, dynamic> toJson() {
  20 + final Map<String, dynamic> data = new Map<String, dynamic>();
  21 + data['ret'] = this.ret;
  22 + if (this.data != null) {
  23 + data['data'] = this.data.map((v) => v.toJson()).toList();
  24 + }
  25 + data['msg'] = this.msg;
  26 + return data;
  27 + }
  28 +}
  29 +
  30 +class SellerOftenSunModel {
  31 + String pnum;
  32 + String sellerid;
  33 + String price;
  34 + String memberPrice;
  35 + String id;
  36 + List<SellerOftenCooklist> cooklist;
  37 +
  38 + SellerOftenSunModel(
  39 + {this.pnum,
  40 + this.sellerid,
  41 + this.price,
  42 + this.memberPrice,
  43 + this.id,
  44 + this.cooklist});
  45 +
  46 + SellerOftenSunModel.fromJson(Map<String, dynamic> json) {
  47 + pnum = json['pnum'];
  48 + sellerid = json['sellerid'];
  49 + price = json['price'];
  50 + memberPrice = json['member_price'];
  51 + id = json['id'];
  52 + if (json['cooklist'] != null) {
  53 + cooklist = <SellerOftenCooklist>[];
  54 + json['cooklist'].forEach((v) {
  55 + cooklist.add(new SellerOftenCooklist.fromJson(v));
  56 + });
  57 + }
  58 + }
  59 +
  60 + Map<String, dynamic> toJson() {
  61 + final Map<String, dynamic> data = new Map<String, dynamic>();
  62 + data['pnum'] = this.pnum;
  63 + data['sellerid'] = this.sellerid;
  64 + data['price'] = this.price;
  65 + data['member_price'] = this.memberPrice;
  66 + data['id'] = this.id;
  67 + if (this.cooklist != null) {
  68 + data['cooklist'] = this.cooklist.map((v) => v.toJson()).toList();
  69 + }
  70 + return data;
  71 + }
  72 +}
  73 +
  74 +class SellerOftenCooklist {
  75 + String classid;
  76 + String className;
  77 + List<SellerOftenSunCooklist> cooklist;
  78 +
  79 + SellerOftenCooklist({this.classid, this.className, this.cooklist});
  80 +
  81 + SellerOftenCooklist.fromJson(Map<String, dynamic> json) {
  82 + classid = json['classid'];
  83 + className = json['class_name'];
  84 + if (json['cooklist'] != null) {
  85 + cooklist = <SellerOftenSunCooklist>[];
  86 + json['cooklist'].forEach((v) {
  87 + cooklist.add(new SellerOftenSunCooklist.fromJson(v));
  88 + });
  89 + }
  90 + }
  91 +
  92 + Map<String, dynamic> toJson() {
  93 + final Map<String, dynamic> data = new Map<String, dynamic>();
  94 + data['classid'] = this.classid;
  95 + data['class_name'] = this.className;
  96 + if (this.cooklist != null) {
  97 + data['cooklist'] = this.cooklist.map((v) => v.toJson()).toList();
  98 + }
  99 + return data;
  100 + }
  101 +}
  102 +
  103 +class SellerOftenSunCooklist {
  104 + int amount;
  105 + String sid;
  106 + String cookbookid;
  107 + String specid;
  108 + String practiceid;
  109 + String price;
  110 + String memberPrice;
  111 + String name;
  112 + String unit;
  113 + String image;
  114 + String className;
  115 + String classid;
  116 + String classOrder;
  117 +
  118 + SellerOftenSunCooklist(
  119 + {this.amount,
  120 + this.sid,
  121 + this.cookbookid,
  122 + this.specid,
  123 + this.practiceid,
  124 + this.price,
  125 + this.memberPrice,
  126 + this.name,
  127 + this.unit,
  128 + this.image,
  129 + this.className,
  130 + this.classid,
  131 + this.classOrder});
  132 +
  133 + SellerOftenSunCooklist.fromJson(Map<String, dynamic> json) {
  134 + amount = json['amount'] == null || json['amount'] == ''
  135 + ? 0
  136 + : int.parse(json['amount']);
  137 + sid = json['sid'];
  138 + cookbookid = json['cookbookid'];
  139 + specid = json['specid'];
  140 + practiceid = json['practiceid'];
  141 + price = json['price'];
  142 + memberPrice = json['member_price'];
  143 + name = json['name'];
  144 + unit = json['unit'];
  145 + image = json['image'];
  146 + className = json['class_name'];
  147 + classid = json['classid'];
  148 + classOrder = json['class_order'];
  149 + }
  150 +
  151 + Map<String, dynamic> toJson() {
  152 + final Map<String, dynamic> data = new Map<String, dynamic>();
  153 + data['amount'] = this.amount;
  154 + data['sid'] = this.sid;
  155 + data['cookbookid'] = this.cookbookid;
  156 + data['specid'] = this.specid;
  157 + data['practiceid'] = this.practiceid;
  158 + data['price'] = this.price;
  159 + data['member_price'] = this.memberPrice;
  160 + data['name'] = this.name;
  161 + data['unit'] = this.unit;
  162 + data['image'] = this.image;
  163 + data['class_name'] = this.className;
  164 + data['classid'] = this.classid;
  165 + data['class_order'] = this.classOrder;
  166 + return data;
  167 + }
  168 +}
@@ -352,8 +352,10 @@ class HttpUrl { @@ -352,8 +352,10 @@ class HttpUrl {
352 static const String get_plan_cook_by_rid = 352 static const String get_plan_cook_by_rid =
353 "?service=App.PlanCook.GetPlanCookByRid"; // 根据预定ID获取排菜 353 "?service=App.PlanCook.GetPlanCookByRid"; // 根据预定ID获取排菜
354 354
355 - static const String create_order = 355 + static const String create_order =
356 "?service=App.Advance.CreateOrder"; // 跳转小程序提前点餐调用该接口生成oid 356 "?service=App.Advance.CreateOrder"; // 跳转小程序提前点餐调用该接口生成oid
357 - 357 +
  358 + static const String get_seller_often =
  359 + "?service=App.PlanCook.SellerOften"; // 获取商家店内常点
358 360
359 } 361 }
@@ -52,34 +52,35 @@ class _OrderCustomerDetailPageState extends State<OrderCustomerDetailPage> { @@ -52,34 +52,35 @@ class _OrderCustomerDetailPageState extends State<OrderCustomerDetailPage> {
52 @override 52 @override
53 void initState() { 53 void initState() {
54 super.initState(); 54 super.initState();
55 - if ((widget.detailEntity.rnameStr == '' ||  
56 - widget.detailEntity.rnameStr == null) &&  
57 - (widget.detailEntity.phone == '' ||  
58 - widget.detailEntity.phone == null) &&  
59 - widget.detailEntity.status != "4") { 55 + if (((widget.detailEntity.rnameStr == '' ||
  56 + widget.detailEntity.rnameStr == null) &&
  57 + (widget.detailEntity.phone == '' ||
  58 + widget.detailEntity.phone == null) &&
  59 + widget.detailEntity.status != "4") ||
  60 + widget.detailEntity.gid == null) {
60 //没有联系人 61 //没有联系人
61 WidgetsBinding.instance.addPostFrameCallback((_) { 62 WidgetsBinding.instance.addPostFrameCallback((_) {
62 customerProvider.pageStateGuestInfo = PageState.Empty; 63 customerProvider.pageStateGuestInfo = PageState.Empty;
63 customerProvider.notifyListeners(); 64 customerProvider.notifyListeners();
64 }); 65 });
65 } else { 66 } else {
66 - _initSexList();  
67 - nameFocus.addListener(() {  
68 - if (nameFocus.hasFocus) {  
69 - print('得到焦点');  
70 - } else {  
71 - print('失去焦点');  
72 - // _homeEnterModel.nameController.text = nameStr + _nameSuffix();  
73 - _addNameSuffix(nameStr, _nameSuffix());  
74 - }  
75 - setState(() {});  
76 - });  
77 - WidgetsBinding.instance.addPostFrameCallback((_) {  
78 - _getGuestInfo(); 67 + _initSexList();
  68 + nameFocus.addListener(() {
  69 + if (nameFocus.hasFocus) {
  70 + print('得到焦点');
  71 + } else {
  72 + print('失去焦点');
  73 + // _homeEnterModel.nameController.text = nameStr + _nameSuffix();
  74 + _addNameSuffix(nameStr, _nameSuffix());
  75 + }
  76 + setState(() {});
  77 + });
  78 + WidgetsBinding.instance.addPostFrameCallback((_) {
  79 + _getGuestInfo();
79 80
80 - _getLabelBySellerid();  
81 - // scrollController.jumpTo(scrollController.position.minScrollExtent);  
82 - }); 81 + _getLabelBySellerid();
  82 + // scrollController.jumpTo(scrollController.position.minScrollExtent);
  83 + });
83 } 84 }
84 } 85 }
85 86
@@ -32,13 +32,15 @@ class OrderAdvanceEidtPage extends StatefulWidget { @@ -32,13 +32,15 @@ class OrderAdvanceEidtPage extends StatefulWidget {
32 final String rid; 32 final String rid;
33 final PlanCookByRidSunModel planCookByRidSunModel; 33 final PlanCookByRidSunModel planCookByRidSunModel;
34 final NotebookDetail detailEntity; 34 final NotebookDetail detailEntity;
35 - OrderAdvanceEidtPage({  
36 - Key key,  
37 - this.planId,  
38 - this.rid,  
39 - this.planCookByRidSunModel,  
40 - this.detailEntity,  
41 - }) : super(key: key); 35 + final String pnum;
  36 + OrderAdvanceEidtPage(
  37 + {Key key,
  38 + this.planId,
  39 + this.rid,
  40 + this.planCookByRidSunModel,
  41 + this.detailEntity,
  42 + this.pnum})
  43 + : super(key: key);
42 44
43 @override 45 @override
44 _OrderAdvanceEidtPageState createState() => _OrderAdvanceEidtPageState(); 46 _OrderAdvanceEidtPageState createState() => _OrderAdvanceEidtPageState();
@@ -113,11 +115,13 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -113,11 +115,13 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
113 } 115 }
114 116
115 _getPageMenuData() async { 117 _getPageMenuData() async {
116 - Future.wait<bool>(  
117 - [_getCookbookByClass(showLoading: true), _getPlanCookList()])  
118 - .then((results) { 118 + Future.wait<bool>([
  119 + _getCookbookByClass(showLoading: true),
  120 + _getPlanCookList(),
  121 + _getSellerOften()
  122 + ]).then((results) {
119 print(results[0]); 123 print(results[0]);
120 - if (results[0] && results[1]) { 124 + if (results[0] && results[1] && results[2]) {
121 _planDishProvider.menuModelForManager = 125 _planDishProvider.menuModelForManager =
122 List.from(_planDishProvider.menuModel); 126 List.from(_planDishProvider.menuModel);
123 //单个菜品 127 //单个菜品
@@ -196,6 +200,63 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -196,6 +200,63 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
196 _planDishProvider.menuModelForManager 200 _planDishProvider.menuModelForManager
197 .insert(0, menuModelSetMeal); //添加套餐 201 .insert(0, menuModelSetMeal); //添加套餐
198 202
  203 + //店内常点数据
  204 + MenuModel menuModelStoreOften = MenuModel();
  205 + menuModelStoreOften.className = '店内常点';
  206 + menuModelStoreOften.isChange = false;
  207 + // List<MenuSunModel> cookListStoreOften = [];
  208 +
  209 + List<MenuSunModel> sellerOftendata =
  210 + _planDishProvider.sellerOftendataTemp;
  211 +
  212 + sellerOftendata.forEach((element) {
  213 + // if (element.status == '1') {
  214 + // MenuSunModel menuSunModel = MenuSunModel();
  215 + // menuSunModel.id = element.id;
  216 + // menuSunModel.name = element.name;
  217 + // // menuSunModel.price = element.menuPrice;
  218 + // menuSunModel.price = element.price;
  219 + // menuSunModel.member_price = element.member_price ?? "";
  220 + // menuSunModel.unit = '份';
  221 + // menuSunModel.amount = element.amount;
  222 + // menuSunModel.cookList = element.cookList;
  223 +
  224 + // if (widget.planCookByRidSunModel != null &&
  225 + // widget.planCookByRidSunModel.packageList != null &&
  226 + // widget.planCookByRidSunModel.packageList.length > 0) {
  227 + // //套餐数据对应
  228 + // widget.planCookByRidSunModel.packageList.forEach((package) {
  229 + // if (package.id == menuSunModel.id) {
  230 + // //同一个套餐
  231 + // menuSunModel.amount = package.amount;
  232 + // menuSunModel.cookList.forEach((oldcooklist) {
  233 + // package.cookList.forEach((newcooklist) {
  234 + // if (oldcooklist.id == newcooklist.id) {
  235 + // //同一菜品分类
  236 + // oldcooklist.cookbooklist.forEach((oldcook) {
  237 + // newcooklist.cookbooklist.forEach((newcook) {
  238 + // if (oldcook.id == newcook.id) {
  239 + // oldcook.amount = newcook.amount;
  240 + // carSum += newcook.amount;
  241 + // }
  242 + // });
  243 + // });
  244 + // }
  245 + // });
  246 + // });
  247 + // }
  248 + // });
  249 + // }
  250 +
  251 + // cookListStoreOften.add(menuSunModel);
  252 + // }
  253 + });
  254 + menuModelStoreOften.cookbooklist = sellerOftendata;
  255 +
  256 + _planDishProvider.menuModelForManager
  257 + .insert(1, menuModelStoreOften); //店内常点数据
  258 + //排菜数据
  259 +
199 MenuModel menuModelPlanDish = MenuModel(); 260 MenuModel menuModelPlanDish = MenuModel();
200 menuModelPlanDish.className = '我的排菜'; 261 menuModelPlanDish.className = '我的排菜';
201 menuModelPlanDish.isChange = false; 262 menuModelPlanDish.isChange = false;
@@ -245,7 +306,7 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -245,7 +306,7 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
245 menuModelPlanDish.cookbooklist = cookListPlanDish; 306 menuModelPlanDish.cookbooklist = cookListPlanDish;
246 307
247 _planDishProvider.menuModelForManager 308 _planDishProvider.menuModelForManager
248 - .insert(1, menuModelPlanDish); //添加排菜 309 + .insert(2, menuModelPlanDish); //添加排菜
249 310
250 MenuModel menuModelShort = MenuModel(); 311 MenuModel menuModelShort = MenuModel();
251 menuModelShort.className = '临时加菜'; 312 menuModelShort.className = '临时加菜';
@@ -345,6 +406,47 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -345,6 +406,47 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
345 } 406 }
346 }); 407 });
347 }); 408 });
  409 + } else if (element.className == '店内常点') {
  410 + List<MenuSunModel> olddata = _planDishProvider.sellerOftendata;
  411 + element.cookbooklist.forEach((newdata) {
  412 + olddata.forEach((store) {
  413 + if (store.id == newdata.id) {
  414 + if (newdata.amount == 0) {
  415 + //同一个套餐
  416 + if (newdata.cookList.length == 0) {
  417 + newdata.cookList = store.cookList;
  418 + } else {
  419 + store.cookList.forEach((storeCook) {
  420 + String id = storeCook.id;
  421 + newdata.cookList.forEach((cooklist) {
  422 + if (cooklist.id == storeCook.id) {
  423 + id = '';
  424 + //同一分类
  425 + if (cooklist.cookbooklist.length == 0) {
  426 + cooklist.cookbooklist = storeCook.cookbooklist;
  427 + } else {
  428 + cooklist.cookbooklist.forEach((value1) {
  429 + storeCook.cookbooklist.forEach((value2) {
  430 + //同一菜品
  431 + if (value1.id == value2.id) {
  432 + value1.amount = value2.amount;
  433 + }
  434 + });
  435 + });
  436 + }
  437 + }
  438 + });
  439 + if (id != '') {
  440 + //该菜品分类已经不存在
  441 + // 还原数据
  442 + newdata.cookList.add(storeCook);
  443 + }
  444 + });
  445 + }
  446 + }
  447 + }
  448 + });
  449 + });
348 } else if (element.className == '临时加菜') { 450 } else if (element.className == '临时加菜') {
349 } else { 451 } else {
350 //单菜 452 //单菜
@@ -427,6 +529,28 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -427,6 +529,28 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
427 } 529 }
428 } 530 }
429 531
  532 + ///获取商家店内常点
  533 +
  534 + Future<bool> _getSellerOften({bool isShowLoading = true}) async {
  535 + if (widget.pnum == '' || widget.pnum == null) {
  536 + //没有人数,数据为空
  537 + _planDishProvider.sellerOftendata = [];
  538 + return true;
  539 + } else {
  540 + Map<String, String> params = {
  541 + "pnum": widget.pnum,
  542 + "sid": Provider.of<UserModel>(context, listen: false).user.sellerid,
  543 + };
  544 + bool success = await _planDishProvider.getSellerOften(context, params,
  545 + showLoading: isShowLoading);
  546 + if (success) {
  547 + return true;
  548 + } else {
  549 + return false;
  550 + }
  551 + }
  552 + }
  553 +
430 Widget list(List data) => ScrollablePositionedList.builder( 554 Widget list(List data) => ScrollablePositionedList.builder(
431 // itemCount: data.length, 555 // itemCount: data.length,
432 itemCount: 10, 556 itemCount: 10,
@@ -513,7 +637,9 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -513,7 +637,9 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
513 //把数量置空 637 //把数量置空
514 _clearAmount() { 638 _clearAmount() {
515 _planDishProvider.menuModelForManager.forEach((element) { 639 _planDishProvider.menuModelForManager.forEach((element) {
516 - if (element.className == '套餐' || element.className == '我的排菜') { 640 + if (element.className == '套餐' ||
  641 + element.className == '我的排菜' ||
  642 + element.className == '店内常点') {
517 element.cookbooklist.forEach((newdata) { 643 element.cookbooklist.forEach((newdata) {
518 newdata.amount = 0; 644 newdata.amount = 0;
519 645
@@ -578,6 +704,18 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -578,6 +704,18 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
578 } else { 704 } else {
579 params['plan_list'] = null; 705 params['plan_list'] = null;
580 } 706 }
  707 + } else if (element.className == '店内常点') {
  708 + List<MenuSunModel> oftenlist = [];
  709 + element.cookbooklist.forEach((cooklist) {
  710 + if (cooklist.amount > 0) {
  711 + oftenlist.add(cooklist);
  712 + }
  713 + });
  714 + if (oftenlist.length > 0) {
  715 + params['often_list'] = json.encode(oftenlist);
  716 + } else {
  717 + params['often_list'] = null;
  718 + }
581 } else if (element.className == '临时加菜') { 719 } else if (element.className == '临时加菜') {
582 //临时加菜 720 //临时加菜
583 721
@@ -686,6 +824,53 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -686,6 +824,53 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
686 } 824 }
687 }); 825 });
688 }); 826 });
  827 + } else if (element.className == '店内常点') {
  828 + List<MenuSunModel> olddata = _planDishProvider.sellerOftendata;
  829 + element.cookbooklist.forEach((newdata) {
  830 + olddata.forEach((store) {
  831 + if (store.id == newdata.id) {
  832 + if (newdata.amount > 0) {
  833 + bool isChange = false; //套餐数量是否发生变化
  834 + //同一个套餐
  835 + newdata.cookList.forEach((cooklist) {
  836 + store.cookList.forEach((storeCook) {
  837 + if (cooklist.id == storeCook.id) {
  838 + //同一分类
  839 + cooklist.cookbooklist.forEach((value1) {
  840 + storeCook.cookbooklist.forEach((value2) {
  841 + if (value1.id == value2.id) {
  842 + if (value1.amount != value2.amount) {
  843 + isChange = true;
  844 + }
  845 + }
  846 + });
  847 + });
  848 + }
  849 + });
  850 + });
  851 + //当前套餐/排菜数量已经发生变化
  852 + if (!isChange) {
  853 + priceSum += double.parse(store.price) * newdata.amount;
  854 + memberPriceSum +=
  855 + double.parse(store.member_price) * newdata.amount;
  856 + } else {
  857 + //单品
  858 + newdata.cookList.forEach((cooklist) {
  859 + //同一分类
  860 + cooklist.cookbooklist.forEach((value1) {
  861 + priceSum += double.parse(value1.price) *
  862 + value1.amount *
  863 + newdata.amount;
  864 + memberPriceSum += double.parse(value1.member_price) *
  865 + value1.amount *
  866 + newdata.amount;
  867 + });
  868 + });
  869 + }
  870 + }
  871 + }
  872 + });
  873 + });
689 } else if (element.className == '临时加菜') { 874 } else if (element.className == '临时加菜') {
690 //临时加菜 875 //临时加菜
691 bool hasmMenu = element.cookbooklist.any(((value) => value.amount > 0)); 876 bool hasmMenu = element.cookbooklist.any(((value) => value.amount > 0));
@@ -983,7 +1168,11 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -983,7 +1168,11 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
983 _planDishProvider 1168 _planDishProvider
984 .menuModelForManager[ 1169 .menuModelForManager[
985 _selectIndex] == 1170 _selectIndex] ==
986 - '我的排菜') { 1171 + '我的排菜' ||
  1172 + _planDishProvider
  1173 + .menuModelForManager[
  1174 + _selectIndex] ==
  1175 + '店内常点') {
987 // _calculatePrice(); 1176 // _calculatePrice();
988 //套餐菜品总个数 1177 //套餐菜品总个数
989 //遍历套餐下的菜品分类 1178 //遍历套餐下的菜品分类
@@ -1134,7 +1323,11 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -1134,7 +1323,11 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
1134 _planDishProvider 1323 _planDishProvider
1135 .menuModelForManager[ 1324 .menuModelForManager[
1136 _selectIndex] == 1325 _selectIndex] ==
1137 - '我的排菜') { 1326 + '我的排菜' ||
  1327 + _planDishProvider
  1328 + .menuModelForManager[
  1329 + _selectIndex] ==
  1330 + '店内常点') {
1138 //套餐菜品总个数 1331 //套餐菜品总个数
1139 //遍历套餐下的菜品分类 1332 //遍历套餐下的菜品分类
1140 menuSunModel.cookList 1333 menuSunModel.cookList
@@ -1363,6 +1556,10 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -1363,6 +1556,10 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
1363 object2: { 1556 object2: {
1364 'object2': _planDishProvider.mineList 1557 'object2': _planDishProvider.mineList
1365 }, 1558 },
  1559 + object3: {
  1560 + 'object3':
  1561 + _planDishProvider.sellerOftendata
  1562 + },
1366 planPrice: planDishC.text, 1563 planPrice: planDishC.text,
1367 planCookByRidSunModel: 1564 planCookByRidSunModel:
1368 widget.planCookByRidSunModel, 1565 widget.planCookByRidSunModel,
@@ -1396,7 +1593,8 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -1396,7 +1593,8 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
1396 _planDishProvider.menuModelForManager 1593 _planDishProvider.menuModelForManager
1397 .forEach((element) { 1594 .forEach((element) {
1398 if (element.className == '套餐' || 1595 if (element.className == '套餐' ||
1399 - element.className == '我的排菜') { 1596 + element.className == '我的排菜' ||
  1597 + element.className == '店内常点') {
1400 dataLocalShowMore.forEach((value) { 1598 dataLocalShowMore.forEach((value) {
1401 element.cookbooklist.forEach((elementCook) { 1599 element.cookbooklist.forEach((elementCook) {
1402 if (value.id == elementCook.id) { 1600 if (value.id == elementCook.id) {
@@ -1503,7 +1701,8 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -1503,7 +1701,8 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
1503 _planDishProvider.menuModelForManager 1701 _planDishProvider.menuModelForManager
1504 .forEach((element) { 1702 .forEach((element) {
1505 if (element.className == '套餐' || 1703 if (element.className == '套餐' ||
1506 - element.className == '我的排菜') { 1704 + element.className == '我的排菜' ||
  1705 + element.className == '店内常点') {
1507 // //如果是套餐,则看cooklist有没有选中的 1706 // //如果是套餐,则看cooklist有没有选中的
1508 // bool isChange = false; //套餐或者排菜数量是否选中 1707 // bool isChange = false; //套餐或者排菜数量是否选中
1509 // if (element.className == '套餐') { 1708 // if (element.className == '套餐') {
@@ -1558,20 +1757,23 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> { @@ -1558,20 +1757,23 @@ class _OrderAdvanceEidtPageState extends State<OrderAdvanceEidtPage> {
1558 value.moreSum = value.amount; 1757 value.moreSum = value.amount;
1559 value.channel = element.className == '套餐' 1758 value.channel = element.className == '套餐'
1560 ? '1' 1759 ? '1'
1561 - : '2'; // 1套餐----2排菜 1760 + : element.className == '我的排菜'
  1761 + ? '2'
  1762 + : '3'; // 1套餐----2排菜
1562 dataLocalShowMore.add(value); 1763 dataLocalShowMore.add(value);
1563 } 1764 }
1564 }); 1765 });
1565 - } else if (element.className == '店内常点') {  
1566 - // //如果是我的排菜,则看cooklist有没有选中的  
1567 -  
1568 - // bool hasmMine =  
1569 - // element.cookbooklist.any(((value) => value.amount > 0));  
1570 - // if (hasmMine) {  
1571 - // //套餐中有被选中  
1572 - // maxIndex++;  
1573 - // }  
1574 } 1766 }
  1767 + // else if (element.className == '店内常点') {
  1768 + // // //如果是我的排菜,则看cooklist有没有选中的
  1769 +
  1770 + // // bool hasmMine =
  1771 + // // element.cookbooklist.any(((value) => value.amount > 0));
  1772 + // // if (hasmMine) {
  1773 + // // //套餐中有被选中
  1774 + // // maxIndex++;
  1775 + // // }
  1776 + // }
1575 // else if (element.className == '临时加菜') { 1777 // else if (element.className == '临时加菜') {
1576 // } 1778 // }
1577 else { 1779 else {
@@ -803,17 +803,18 @@ class _OrderAdvanceHomePageState extends State<OrderAdvanceHomePage> { @@ -803,17 +803,18 @@ class _OrderAdvanceHomePageState extends State<OrderAdvanceHomePage> {
803 // context, params, 803 // context, params,
804 // showLoading: true); 804 // showLoading: true);
805 // if (oid != null) { 805 // if (oid != null) {
806 - //获取成功  
807 - Utils.goShareOrderPageToWeChat(context,  
808 - title: '菜品已点好,快来看看都点了什么~',  
809 - img:  
810 - 'http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148571.jpg',  
811 - rid: widget.rid,  
812 - // oid: oid,  
813 - sid: Provider.of<UserModel>(context,  
814 - listen: false)  
815 - .user  
816 - .sellerid); 806 + //获取成功
  807 + Utils.goShareOrderPageToWeChat(context,
  808 + title:
  809 + '张红经理邀请您点餐了',
  810 + img:
  811 + 'http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148571.jpg',
  812 + rid: widget.rid,
  813 + // oid: oid,
  814 + sid:
  815 + Provider.of<UserModel>(context, listen: false)
  816 + .user
  817 + .sellerid);
817 // } 818 // }
818 }, 819 },
819 child: Container( 820 child: Container(
@@ -906,7 +907,8 @@ class _OrderAdvanceHomePageState extends State<OrderAdvanceHomePage> { @@ -906,7 +907,8 @@ class _OrderAdvanceHomePageState extends State<OrderAdvanceHomePage> {
906 rid: widget.rid, 907 rid: widget.rid,
907 planCookByRidSunModel: 908 planCookByRidSunModel:
908 _planDishProvider.planCookByRidSunModel, 909 _planDishProvider.planCookByRidSunModel,
909 - detailEntity: widget.detailEntity); 910 + detailEntity: widget.detailEntity,
  911 + pnum: pnumController.text);
910 } else { 912 } else {
911 Utils.showToast('信息提交失败,请重试'); 913 Utils.showToast('信息提交失败,请重试');
912 } 914 }
@@ -26,6 +26,8 @@ import '../../utils/event_bus.dart'; @@ -26,6 +26,8 @@ import '../../utils/event_bus.dart';
26 class OrderEditListShowPage extends StatefulWidget { 26 class OrderEditListShowPage extends StatefulWidget {
27 final List<SunListPlan> storeList; //套餐元数据 27 final List<SunListPlan> storeList; //套餐元数据
28 final List<SunListPlan> mineList; //我的排菜元数据 28 final List<SunListPlan> mineList; //我的排菜元数据
  29 + final List<MenuSunModel> oftenList; //店内常点元数据
  30 +
29 final List<MenuModel> data; 31 final List<MenuModel> data;
30 final String planPrice; 32 final String planPrice;
31 final PlanCookByRidSunModel planCookByRidSunModel; 33 final PlanCookByRidSunModel planCookByRidSunModel;
@@ -45,7 +47,8 @@ class OrderEditListShowPage extends StatefulWidget { @@ -45,7 +47,8 @@ class OrderEditListShowPage extends StatefulWidget {
45 this.needSubmmit = false, 47 this.needSubmmit = false,
46 this.planId, 48 this.planId,
47 this.rid, 49 this.rid,
48 - this.datatemp}) 50 + this.datatemp,
  51 + this.oftenList})
49 : super(key: key); 52 : super(key: key);
50 53
51 @override 54 @override
@@ -64,6 +67,7 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> { @@ -64,6 +67,7 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> {
64 67
65 List<SunListPlan> storeListLocal = []; //把amount = 0 的筛选出去 68 List<SunListPlan> storeListLocal = []; //把amount = 0 的筛选出去
66 List<SunListPlan> mineListLocal = []; //把amount = 0 的筛选出去 69 List<SunListPlan> mineListLocal = []; //把amount = 0 的筛选出去
  70 + List<MenuSunModel> oftenListLocal = []; //把amount = 0 的筛选出去
67 71
68 TextEditingController planDishName = TextEditingController(); //排菜名称 72 TextEditingController planDishName = TextEditingController(); //排菜名称
69 TextEditingController planDishRemark = TextEditingController(); //排菜备注 73 TextEditingController planDishRemark = TextEditingController(); //排菜备注
@@ -101,7 +105,9 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> { @@ -101,7 +105,9 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> {
101 105
102 if (widget.data != null) { 106 if (widget.data != null) {
103 widget.data.forEach((element) { 107 widget.data.forEach((element) {
104 - if (element.className == '套餐' || element.className == '我的排菜') { 108 + if (element.className == '套餐' ||
  109 + element.className == '我的排菜' ||
  110 + element.className == '店内常点') {
105 // //如果是套餐,则看cooklist有没有选中的 111 // //如果是套餐,则看cooklist有没有选中的
106 // bool isChange = false; //套餐或者排菜数量是否选中 112 // bool isChange = false; //套餐或者排菜数量是否选中
107 // if (element.className == '套餐') { 113 // if (element.className == '套餐') {
@@ -153,22 +159,27 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> { @@ -153,22 +159,27 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> {
153 } 159 }
154 }); 160 });
155 value.moreSum = value.amount; 161 value.moreSum = value.amount;
156 - value.channel =  
157 - element.className == '套餐' ? '1' : '2'; // 1套餐----2排菜 162 + value.channel = element.className == '套餐'
  163 + ? '1'
  164 + : element.className == '我的排菜'
  165 + ? '2'
  166 + : '3'; // 1套餐----2排菜----3店内常点
158 dataLocalShowMore.add(value); 167 dataLocalShowMore.add(value);
159 // dataLocalShowMore.add(MenuSunModel.fromJson3(value.toJson())); 168 // dataLocalShowMore.add(MenuSunModel.fromJson3(value.toJson()));
160 } 169 }
161 }); 170 });
162 - } else if (element.className == '店内常点') {  
163 - // //如果是我的排菜,则看cooklist有没有选中的  
164 -  
165 - // bool hasmMine =  
166 - // element.cookbooklist.any(((value) => value.amount > 0));  
167 - // if (hasmMine) {  
168 - // //套餐中有被选中  
169 - // maxIndex++;  
170 - // }  
171 - } else if (element.className == '临时加菜') { 171 + }
  172 + // else if (element.className == '店内常点') {
  173 + // // //如果是我的排菜,则看cooklist有没有选中的
  174 +
  175 + // // bool hasmMine =
  176 + // // element.cookbooklist.any(((value) => value.amount > 0));
  177 + // // if (hasmMine) {
  178 + // // //套餐中有被选中
  179 + // // maxIndex++;
  180 + // // }
  181 + // }
  182 + else if (element.className == '临时加菜') {
172 //临时加菜 183 //临时加菜
173 bool hasmMenu = 184 bool hasmMenu =
174 element.cookbooklist.any(((value) => value.amount > 0)); 185 element.cookbooklist.any(((value) => value.amount > 0));
@@ -259,6 +270,19 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> { @@ -259,6 +270,19 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> {
259 mineListLocal.add(sunListPlanTempMine); 270 mineListLocal.add(sunListPlanTempMine);
260 }); 271 });
261 } 272 }
  273 + if (widget.oftenList != null) {
  274 + MenuSunModel oftenListTemp = MenuSunModel();
  275 + widget.oftenList.forEach((sunListPlan) {
  276 + oftenListTemp = sunListPlan;
  277 + oftenListTemp.cookList.forEach((menuModel) {
  278 + menuModel.cookbooklist.removeWhere((element) => element.amount == 0);
  279 + });
  280 + oftenListTemp.cookList
  281 + .removeWhere((element) => element.cookbooklist.length == 0);
  282 + print(oftenListTemp);
  283 + oftenListLocal.add(oftenListTemp);
  284 + });
  285 + }
262 _calculatePrice(); 286 _calculatePrice();
263 if (widget.planPrice != null) { 287 if (widget.planPrice != null) {
264 planDishC.text = widget.planPrice; 288 planDishC.text = widget.planPrice;
@@ -329,6 +353,59 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> { @@ -329,6 +353,59 @@ class _OrderEditListShowPageState extends State<OrderEditListShowPage> {
329 }); 353 });
330 } else if (element.channel == '3') { 354 } else if (element.channel == '3') {
331 //店内常点 355 //店内常点
  356 + List<MenuSunModel> olddata = oftenListLocal;
  357 + olddata.forEach((store) {
  358 + if (element.amount > 0) {
  359 + if (store.id == element.id) {
  360 + bool isChange = false; //套餐数量是否发生变化
  361 + //同一个套餐
  362 +
  363 + store.cookList.forEach((storeCook) {
  364 + if (store.cookList.length > element.cookList.length) {
  365 + //删除了整个菜品分类
  366 + isChange = true;
  367 + }
  368 + element.cookList.forEach((cooklist) {
  369 + if (cooklist.id == storeCook.id) {
  370 + // if (cooklist.cookbooklist.length !=
  371 + // storeCook.cookbooklist.length) {
  372 + // isChange = true;
  373 + // }
  374 + //同一分类
  375 + cooklist.cookbooklist.forEach((value1) {
  376 + storeCook.cookbooklist.forEach((value2) {
  377 + if (value1.id == value2.id) {
  378 + if (value1.amount != value2.amount) {
  379 + isChange = true;
  380 + }
  381 + }
  382 + });
  383 + });
  384 + }
  385 + });
  386 + });
  387 + //当前套餐/排菜数量已经发生变化
  388 + if (!isChange) {
  389 + priceSum += double.parse(store.price) * element.amount;
  390 + memberPriceSum +=
  391 + double.parse(store.member_price) * element.amount;
  392 + } else {
  393 + //单品
  394 + element.cookList.forEach((cooklist) {
  395 + //同一分类
  396 + cooklist.cookbooklist.forEach((value1) {
  397 + priceSum += double.parse(value1.price) *
  398 + value1.amount *
  399 + element.amount;
  400 + memberPriceSum += double.parse(value1.member_price) *
  401 + value1.amount *
  402 + element.amount;
  403 + });
  404 + });
  405 + }
  406 + }
  407 + }
  408 + });
332 } else { 409 } else {
333 // //单菜 410 // //单菜
334 // bool hasmMenu = element.cookbooklist.any(((value) => value.amount > 0)); 411 // bool hasmMenu = element.cookbooklist.any(((value) => value.amount > 0));
@@ -11,6 +11,7 @@ import 'package:one_key/utils/utils.dart'; @@ -11,6 +11,7 @@ import 'package:one_key/utils/utils.dart';
11 import '../constant/constant.dart'; 11 import '../constant/constant.dart';
12 import '../constant/error.dart'; 12 import '../constant/error.dart';
13 import '../models/cookbook_model.dart'; 13 import '../models/cookbook_model.dart';
  14 +import '../models/seller_often_model.dart';
14 import '../net/http_url.dart'; 15 import '../net/http_url.dart';
15 16
16 /** 17 /**
@@ -36,6 +37,8 @@ class PlanDishProvider extends ChangeNotifier { @@ -36,6 +37,8 @@ class PlanDishProvider extends ChangeNotifier {
36 List<SunListPlan> mineListTemp = []; //排菜套餐列表--我的 37 List<SunListPlan> mineListTemp = []; //排菜套餐列表--我的
37 String planId; 38 String planId;
38 PlanCookByRidSunModel planCookByRidSunModel; //订单排菜的数据 39 PlanCookByRidSunModel planCookByRidSunModel; //订单排菜的数据
  40 + List<MenuSunModel> sellerOftendata; //店内常点
  41 + List<MenuSunModel> sellerOftendataTemp = []; //店内常点
39 // List<CookbookCategorySunModel> categorySunModel; //菜品分类数据 42 // List<CookbookCategorySunModel> categorySunModel; //菜品分类数据
40 // List<CookbookSpecSunModel> specSunModel; //计价单位 43 // List<CookbookSpecSunModel> specSunModel; //计价单位
41 44
@@ -304,4 +307,85 @@ class PlanDishProvider extends ChangeNotifier { @@ -304,4 +307,85 @@ class PlanDishProvider extends ChangeNotifier {
304 return false; 307 return false;
305 } 308 }
306 } 309 }
  310 +
  311 + Future<bool> getSellerOften(BuildContext context, Map<String, String> params,
  312 + {showLoading = false}) async {
  313 + BaseResp<dynamic> baseResp = await DioUtil()
  314 + .request<dynamic>(context, Method.get, HttpUrl.get_seller_often,
  315 + data: params, showLoading: showLoading)
  316 + .catchError((error) {
  317 + print(error.toString());
  318 + if (error is MyError) {}
  319 + return false;
  320 + });
  321 +
  322 + if (baseResp != null && baseResp.code == Constant.status_success) {
  323 + List<SellerOftenSunModel> sellerOftenSunModel =
  324 + SellerOftenModel.fromJson(baseResp.responseData).data;
  325 + List<MenuSunModel> data = [];
  326 + List<MenuSunModel> datatemp = [];
  327 + sellerOftenSunModel.forEach((element) {
  328 + // SellerOftenSunModel
  329 + MenuSunModel menuSunModel = MenuSunModel();
  330 + menuSunModel.id = element.id;
  331 + menuSunModel.name = '${element.pnum}人';
  332 + // menuSunModel.price = element.menuPrice;
  333 + menuSunModel.price = element.price;
  334 + menuSunModel.member_price = element.memberPrice ?? element.price;
  335 + menuSunModel.unit = '份';
  336 + //
  337 +
  338 + List<MenuModel> cookF = [];
  339 + element.cooklist.forEach((value) {
  340 + MenuModel menuModel = MenuModel();
  341 + menuModel.id = value.classid;
  342 + menuModel.sellerid = element.sellerid;
  343 + menuModel.className = value.className;
  344 + menuModel.classLabel = null;
  345 + menuModel.order = null;
  346 + menuModel.status = '1';
  347 + menuModel.classType = null;
  348 + menuModel.cookbooklist = [];
  349 + value.cooklist.forEach((cook) {
  350 + MenuSunModel cookData = MenuSunModel();
  351 + cookData.id = cook.cookbookid;
  352 + cookData.sellerid = cook.sid;
  353 + cookData.cid = cook.classid;
  354 + cookData.price = cook.price;
  355 + cookData.member_price = cook.memberPrice ?? cook.price;
  356 + cookData.name = cook.name;
  357 + cookData.unit = cook.unit;
  358 + cookData.image = cook.image;
  359 + cookData.amount = cook.amount;
  360 +
  361 + // "specid": null,
  362 + // "practiceid": null,
  363 + // "class_name": "炒菜12",
  364 + // "class_order": "2"
  365 + menuModel.cookbooklist.add(cookData);
  366 + });
  367 +
  368 + cookF.add(menuModel);
  369 + });
  370 +
  371 + menuSunModel.cookList = cookF;
  372 +
  373 + data.add(menuSunModel);
  374 + datatemp.add(menuSunModel);
  375 + });
  376 + print(data);
  377 +
  378 + sellerOftendata = data;
  379 +
  380 + sellerOftendataTemp = datatemp;
  381 +
  382 + // sellerOftendata
  383 +
  384 + notifyListeners();
  385 + return true;
  386 + } else {
  387 + Utils.showToast(baseResp.msg ?? "");
  388 + return false;
  389 + }
  390 + }
307 } 391 }
@@ -1236,7 +1236,8 @@ class NavigatorUtil { @@ -1236,7 +1236,8 @@ class NavigatorUtil {
1236 String planId, 1236 String planId,
1237 String rid, 1237 String rid,
1238 PlanCookByRidSunModel planCookByRidSunModel, 1238 PlanCookByRidSunModel planCookByRidSunModel,
1239 - NotebookDetail detailEntity}) { 1239 + NotebookDetail detailEntity,
  1240 + String pnum}) {
1240 // if (invoice != null) { 1241 // if (invoice != null) {
1241 // return _navigateTo(context, 1242 // return _navigateTo(context,
1242 // "${Routes.order_advance_home_page}?invoice=${FluroConvertUtils.object2string(invoice)}", 1243 // "${Routes.order_advance_home_page}?invoice=${FluroConvertUtils.object2string(invoice)}",
@@ -1244,11 +1245,11 @@ class NavigatorUtil { @@ -1244,11 +1245,11 @@ class NavigatorUtil {
1244 // } 1245 // }
1245 if (planCookByRidSunModel != null) { 1246 if (planCookByRidSunModel != null) {
1246 return _navigateTo(context, 1247 return _navigateTo(context,
1247 - "${Routes.order_advance_edit_page}?planId=$planId&rid=$rid&planCookByRidSunModel=${FluroConvertUtils.object2string(planCookByRidSunModel)}&detail=${FluroConvertUtils.object2string(detailEntity)}", 1248 + "${Routes.order_advance_edit_page}?planId=$planId&rid=$rid&planCookByRidSunModel=${FluroConvertUtils.object2string(planCookByRidSunModel)}&detail=${FluroConvertUtils.object2string(detailEntity)}&pnum=$pnum",
1248 replace: replace); 1249 replace: replace);
1249 } 1250 }
1250 return _navigateTo(context, 1251 return _navigateTo(context,
1251 - "${Routes.order_advance_edit_page}?planId=$planId&rid=$rid&detail=${FluroConvertUtils.object2string(detailEntity)}", 1252 + "${Routes.order_advance_edit_page}?planId=$planId&rid=$rid&detail=${FluroConvertUtils.object2string(detailEntity)}&pnum=$pnum",
1252 replace: replace); 1253 replace: replace);
1253 } 1254 }
1254 1255
@@ -1284,6 +1285,7 @@ class NavigatorUtil { @@ -1284,6 +1285,7 @@ class NavigatorUtil {
1284 Map object, 1285 Map object,
1285 Map object1, 1286 Map object1,
1286 Map object2, 1287 Map object2,
  1288 + Map object3,
1287 String planPrice, 1289 String planPrice,
1288 PlanCookByRidSunModel planCookByRidSunModel, 1290 PlanCookByRidSunModel planCookByRidSunModel,
1289 NotebookDetail detailEntity, 1291 NotebookDetail detailEntity,
@@ -1297,11 +1299,11 @@ class NavigatorUtil { @@ -1297,11 +1299,11 @@ class NavigatorUtil {
1297 // } 1299 // }
1298 if (object != null && planCookByRidSunModel != null) { 1300 if (object != null && planCookByRidSunModel != null) {
1299 return _navigateTo(context, 1301 return _navigateTo(context,
1300 - "${Routes.order_edit_list_show_page}?object=${FluroConvertUtils.object2string(object)}&object1=${FluroConvertUtils.object2string(object1)}&object2=${FluroConvertUtils.object2string(object2)}&planPrice=$planPrice&planCookByRidSunModel=${FluroConvertUtils.object2string(planCookByRidSunModel)}&detail=${FluroConvertUtils.object2string(detailEntity)}&needSubmmit=$needSubmmit&planId=$planId&rid=$rid"); 1302 + "${Routes.order_edit_list_show_page}?object=${FluroConvertUtils.object2string(object)}&object1=${FluroConvertUtils.object2string(object1)}&object2=${FluroConvertUtils.object2string(object2)}&object3=${FluroConvertUtils.object2string(object3)}&planPrice=$planPrice&planCookByRidSunModel=${FluroConvertUtils.object2string(planCookByRidSunModel)}&detail=${FluroConvertUtils.object2string(detailEntity)}&needSubmmit=$needSubmmit&planId=$planId&rid=$rid");
1301 } 1303 }
1302 if (object != null) { 1304 if (object != null) {
1303 return _navigateTo(context, 1305 return _navigateTo(context,
1304 - "${Routes.order_edit_list_show_page}?object=${FluroConvertUtils.object2string(object)}&object1=${FluroConvertUtils.object2string(object1)}&object2=${FluroConvertUtils.object2string(object2)}&planPrice=$planPrice&detail=${FluroConvertUtils.object2string(detailEntity)}&needSubmmit=$needSubmmit&planId=$planId&rid=$rid"); 1306 + "${Routes.order_edit_list_show_page}?object=${FluroConvertUtils.object2string(object)}&object1=${FluroConvertUtils.object2string(object1)}&object2=${FluroConvertUtils.object2string(object2)}&object3=${FluroConvertUtils.object2string(object3)}&planPrice=$planPrice&detail=${FluroConvertUtils.object2string(detailEntity)}&needSubmmit=$needSubmmit&planId=$planId&rid=$rid");
1305 } 1307 }
1306 return _navigateTo(context, 1308 return _navigateTo(context,
1307 "${Routes.order_edit_list_show_page}?needSubmmit=$needSubmmit&planId=$planId&rid=$rid", 1309 "${Routes.order_edit_list_show_page}?needSubmmit=$needSubmmit&planId=$planId&rid=$rid",
@@ -1376,8 +1378,7 @@ class NavigatorUtil { @@ -1376,8 +1378,7 @@ class NavigatorUtil {
1376 ///排菜----编辑客户详情 1378 ///排菜----编辑客户详情
1377 static Future<dynamic> goOrderCustomerDetailEditPage( 1379 static Future<dynamic> goOrderCustomerDetailEditPage(
1378 BuildContext context, 1380 BuildContext context,
1379 - NotebookDetail detailEntity,  
1380 - { 1381 + NotebookDetail detailEntity, {
1381 replace = false, 1382 replace = false,
1382 }) { 1383 }) {
1383 return _navigateTo(context, 1384 return _navigateTo(context,
@@ -1953,8 +1953,8 @@ var orderAdvanceHomePageHandle = new Handler( @@ -1953,8 +1953,8 @@ var orderAdvanceHomePageHandle = new Handler(
1953 return ChangeNotifierProvider<PlanDishProvider>( 1953 return ChangeNotifierProvider<PlanDishProvider>(
1954 create: (_) => PlanDishProvider(), 1954 create: (_) => PlanDishProvider(),
1955 child: ChangeNotifierProvider<CustomerProvider>( 1955 child: ChangeNotifierProvider<CustomerProvider>(
1956 - create: (_) => CustomerProvider(),  
1957 - child:OrderAdvanceHomePage(detailEntity: detailEntity, rid: rid))); 1956 + create: (_) => CustomerProvider(),
  1957 + child: OrderAdvanceHomePage(detailEntity: detailEntity, rid: rid)));
1958 }); 1958 });
1959 1959
1960 ///经理排菜---编辑 1960 ///经理排菜---编辑
@@ -1962,6 +1962,7 @@ var orderAdvanceEidtPageHandle = new Handler( @@ -1962,6 +1962,7 @@ var orderAdvanceEidtPageHandle = new Handler(
1962 handlerFunc: (BuildContext context, Map<dynamic, List<Object>> params) { 1962 handlerFunc: (BuildContext context, Map<dynamic, List<Object>> params) {
1963 String planId = params["planId"].first; 1963 String planId = params["planId"].first;
1964 String rid = params["rid"].first; 1964 String rid = params["rid"].first;
  1965 + String pnum = params["pnum"].first;
1965 NotebookDetail detailEntity = NotebookDetail.fromJson(json 1966 NotebookDetail detailEntity = NotebookDetail.fromJson(json
1966 .decode(FluroConvertUtils.fluroCnParamsDecode(params["detail"].first))); 1967 .decode(FluroConvertUtils.fluroCnParamsDecode(params["detail"].first)));
1967 PlanCookByRidSunModel planCookByRidSunModel; 1968 PlanCookByRidSunModel planCookByRidSunModel;
@@ -1995,7 +1996,8 @@ var orderAdvanceEidtPageHandle = new Handler( @@ -1995,7 +1996,8 @@ var orderAdvanceEidtPageHandle = new Handler(
1995 planId: planId, 1996 planId: planId,
1996 rid: rid, 1997 rid: rid,
1997 planCookByRidSunModel: planCookByRidSunModel, 1998 planCookByRidSunModel: planCookByRidSunModel,
1998 - detailEntity: detailEntity)); 1999 + detailEntity: detailEntity,
  2000 + pnum: pnum));
1999 }); 2001 });
2000 2002
2001 ///经理排菜---预览页 2003 ///经理排菜---预览页
@@ -2125,6 +2127,22 @@ var orderEditListShowPageHandle = new Handler( @@ -2125,6 +2127,22 @@ var orderEditListShowPageHandle = new Handler(
2125 } 2127 }
2126 } 2128 }
2127 2129
  2130 + List<MenuSunModel> oftenList = [];
  2131 + if (params.keys.contains('object3')) {
  2132 + Map object = FluroConvertUtils.string2map(params["object3"].first);
  2133 + List temp = object['object3'];
  2134 + // SunListPlan plan = SunListPlan();
  2135 + // plan.
  2136 + // planDishPrice = params["planDishPrice"].first;
  2137 +
  2138 + for (var item in temp) {
  2139 + // MenuModel menuModel = MenuModel.fromJson2(item);
  2140 + // res.add(menuModel);
  2141 + // print(res);
  2142 + oftenList.add(MenuSunModel.fromJson2(item));
  2143 + }
  2144 + }
  2145 +
2128 String planPrice = params["planPrice"].first; 2146 String planPrice = params["planPrice"].first;
2129 2147
2130 String rid = params["rid"].first; 2148 String rid = params["rid"].first;
@@ -2136,6 +2154,7 @@ var orderEditListShowPageHandle = new Handler( @@ -2136,6 +2154,7 @@ var orderEditListShowPageHandle = new Handler(
2136 data: res, 2154 data: res,
2137 storeList: storeList, 2155 storeList: storeList,
2138 mineList: mineList, 2156 mineList: mineList,
  2157 + oftenList:oftenList,
2139 planPrice: planPrice, 2158 planPrice: planPrice,
2140 planCookByRidSunModel: planCookByRidSunModel, 2159 planCookByRidSunModel: planCookByRidSunModel,
2141 detailEntity: detailEntity, 2160 detailEntity: detailEntity,
@@ -2260,5 +2279,4 @@ var orderCustomerDetailPageHandle = new Handler( @@ -2260,5 +2279,4 @@ var orderCustomerDetailPageHandle = new Handler(
2260 return ChangeNotifierProvider<CustomerProvider>( 2279 return ChangeNotifierProvider<CustomerProvider>(
2261 create: (_) => CustomerProvider(), 2280 create: (_) => CustomerProvider(),
2262 child: OrderCustomerDetailPage(detailEntity: detailEntity)); 2281 child: OrderCustomerDetailPage(detailEntity: detailEntity));
2263 -  
2264 }); 2282 });