Commit f49a09959d41d23ba27798d2cb1b08159dc37d3c

Authored by wdn127929
1 parent ce2b4458

提测

@@ -20,6 +20,9 @@ @@ -20,6 +20,9 @@
20 <uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/> 20 <uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/>
21 <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/> 21 <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
22 <uses-permission android:name="android.permission.READ_CALL_LOG" /> 22 <uses-permission android:name="android.permission.READ_CALL_LOG" />
  23 +
  24 +
  25 +
23 26
24 <application 27 <application
25 28
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 archiveVersion = 1; 3 archiveVersion = 1;
4 classes = { 4 classes = {
5 }; 5 };
6 - objectVersion = 50; 6 + objectVersion = 46;
7 objects = { 7 objects = {
8 8
9 /* Begin PBXBuildFile section */ 9 /* Begin PBXBuildFile section */
@@ -550,7 +550,7 @@ @@ -550,7 +550,7 @@
550 CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements; 550 CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements;
551 CODE_SIGN_IDENTITY = "Apple Development"; 551 CODE_SIGN_IDENTITY = "Apple Development";
552 CODE_SIGN_STYLE = Automatic; 552 CODE_SIGN_STYLE = Automatic;
553 - CURRENT_PROJECT_VERSION = 5200; 553 + CURRENT_PROJECT_VERSION = 5204;
554 DEVELOPMENT_TEAM = 8J59HM8B82; 554 DEVELOPMENT_TEAM = 8J59HM8B82;
555 ENABLE_BITCODE = NO; 555 ENABLE_BITCODE = NO;
556 FLUTTER_BUILD_MODE = release; 556 FLUTTER_BUILD_MODE = release;
@@ -560,10 +560,7 @@ @@ -560,10 +560,7 @@
560 ); 560 );
561 INFOPLIST_FILE = Runner/Info.plist; 561 INFOPLIST_FILE = Runner/Info.plist;
562 IPHONEOS_DEPLOYMENT_TARGET = 12.0; 562 IPHONEOS_DEPLOYMENT_TARGET = 12.0;
563 - LD_RUNPATH_SEARCH_PATHS = (  
564 - "$(inherited)",  
565 - "@executable_path/Frameworks",  
566 - ); 563 + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
567 LIBRARY_SEARCH_PATHS = ( 564 LIBRARY_SEARCH_PATHS = (
568 "$(inherited)", 565 "$(inherited)",
569 "$(PROJECT_DIR)/Flutter", 566 "$(PROJECT_DIR)/Flutter",
@@ -701,7 +698,7 @@ @@ -701,7 +698,7 @@
701 CODE_SIGN_ENTITLEMENTS = "Runner/一键订Debug.entitlements"; 698 CODE_SIGN_ENTITLEMENTS = "Runner/一键订Debug.entitlements";
702 CODE_SIGN_IDENTITY = "Apple Development"; 699 CODE_SIGN_IDENTITY = "Apple Development";
703 CODE_SIGN_STYLE = Automatic; 700 CODE_SIGN_STYLE = Automatic;
704 - CURRENT_PROJECT_VERSION = 5200; 701 + CURRENT_PROJECT_VERSION = 5204;
705 DEVELOPMENT_TEAM = 8J59HM8B82; 702 DEVELOPMENT_TEAM = 8J59HM8B82;
706 ENABLE_BITCODE = NO; 703 ENABLE_BITCODE = NO;
707 FLUTTER_BUILD_MODE = release; 704 FLUTTER_BUILD_MODE = release;
@@ -711,10 +708,7 @@ @@ -711,10 +708,7 @@
711 ); 708 );
712 INFOPLIST_FILE = Runner/Info.plist; 709 INFOPLIST_FILE = Runner/Info.plist;
713 IPHONEOS_DEPLOYMENT_TARGET = 12.0; 710 IPHONEOS_DEPLOYMENT_TARGET = 12.0;
714 - LD_RUNPATH_SEARCH_PATHS = (  
715 - "$(inherited)",  
716 - "@executable_path/Frameworks",  
717 - ); 711 + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
718 LIBRARY_SEARCH_PATHS = ( 712 LIBRARY_SEARCH_PATHS = (
719 "$(inherited)", 713 "$(inherited)",
720 "$(PROJECT_DIR)/Flutter", 714 "$(PROJECT_DIR)/Flutter",
@@ -740,7 +734,7 @@ @@ -740,7 +734,7 @@
740 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; 734 CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
741 CODE_SIGN_IDENTITY = "Apple Development"; 735 CODE_SIGN_IDENTITY = "Apple Development";
742 CODE_SIGN_STYLE = Automatic; 736 CODE_SIGN_STYLE = Automatic;
743 - CURRENT_PROJECT_VERSION = 5200; 737 + CURRENT_PROJECT_VERSION = 5204;
744 DEVELOPMENT_TEAM = 8J59HM8B82; 738 DEVELOPMENT_TEAM = 8J59HM8B82;
745 ENABLE_BITCODE = NO; 739 ENABLE_BITCODE = NO;
746 FLUTTER_BUILD_MODE = release; 740 FLUTTER_BUILD_MODE = release;
@@ -750,10 +744,7 @@ @@ -750,10 +744,7 @@
750 ); 744 );
751 INFOPLIST_FILE = Runner/Info.plist; 745 INFOPLIST_FILE = Runner/Info.plist;
752 IPHONEOS_DEPLOYMENT_TARGET = 12.0; 746 IPHONEOS_DEPLOYMENT_TARGET = 12.0;
753 - LD_RUNPATH_SEARCH_PATHS = (  
754 - "$(inherited)",  
755 - "@executable_path/Frameworks",  
756 - ); 747 + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
757 LIBRARY_SEARCH_PATHS = ( 748 LIBRARY_SEARCH_PATHS = (
758 "$(inherited)", 749 "$(inherited)",
759 "$(PROJECT_DIR)/Flutter", 750 "$(PROJECT_DIR)/Flutter",
@@ -124,7 +124,7 @@ class ListData extends Object { @@ -124,7 +124,7 @@ class ListData extends Object {
124 return "待确认"; 124 return "待确认";
125 break; 125 break;
126 case "1": 126 case "1":
127 - return "已定座"; 127 + return "已订座";
128 break; 128 break;
129 case "2": 129 case "2":
130 return "已到店"; 130 return "已到店";
@@ -37,7 +37,7 @@ class Notebook { @@ -37,7 +37,7 @@ class Notebook {
37 String is_set_ddate; 37 String is_set_ddate;
38 String topic; 38 String topic;
39 String ddate_solt; 39 String ddate_solt;
40 - String status; //订单状态 0:待确认,1:已定座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单,10表示宴会 40 + String status; //订单状态 0:待确认,1:已订座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单,10表示宴会
41 String cause; 41 String cause;
42 String abolition; 42 String abolition;
43 String action; 43 String action;
@@ -142,7 +142,7 @@ class Notebook { @@ -142,7 +142,7 @@ class Notebook {
142 type = reserveRecheckType.last.typeShow; 142 type = reserveRecheckType.last.typeShow;
143 } 143 }
144 switch (status) { 144 switch (status) {
145 - //订单状态 0:待确认,1:已定座,2:确认到店,3:用餐完成,4:取消预订 145 + //订单状态 0:待确认,1:已订座,2:确认到店,3:用餐完成,4:取消预订
146 case "1": 146 case "1":
147 return type ?? ""; 147 return type ?? "";
148 case "2": 148 case "2":
@@ -87,7 +87,7 @@ class NotebookDetail { @@ -87,7 +87,7 @@ class NotebookDetail {
87 String ddate; 87 String ddate;
88 String is_set_ddate; 88 String is_set_ddate;
89 String ddate_solt; 89 String ddate_solt;
90 - String status = "0"; //订单状态 0:待确认,1:已定座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单 90 + String status = "0"; //订单状态 0:待确认,1:已订座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单
91 String action; 91 String action;
92 String type; //0 内部订单 1 在线预订 92 String type; //0 内部订单 1 在线预订
93 String note_name; 93 String note_name;
  1 +class ReserveActionLogModol {
  2 + int ret;
  3 + List<ReserveActionLogSunModol> data;
  4 + String msg;
  5 +
  6 + ReserveActionLogModol({this.ret, this.data, this.msg});
  7 +
  8 + ReserveActionLogModol.fromJson(Map<String, dynamic> json) {
  9 + ret = json['ret'];
  10 + if (json['data'] != null) {
  11 + data = <ReserveActionLogSunModol>[];
  12 + json['data'].forEach((v) {
  13 + data.add(new ReserveActionLogSunModol.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 ReserveActionLogSunModol {
  31 + String content;
  32 + String upDate;
  33 + String nick_name;
  34 +
  35 + ReserveActionLogSunModol({this.content, this.upDate, this.nick_name});
  36 +
  37 + ReserveActionLogSunModol.fromJson(Map<String, dynamic> json) {
  38 + content = json['content'];
  39 + upDate = json['up_date'];
  40 + nick_name = json['nick_name'];
  41 + }
  42 +
  43 + Map<String, dynamic> toJson() {
  44 + final Map<String, dynamic> data = new Map<String, dynamic>();
  45 + data['content'] = this.content;
  46 + data['up_date'] = this.upDate;
  47 + data['nick_name'] = this.nick_name;
  48 +
  49 + return data;
  50 + }
  51 +}
@@ -21,7 +21,7 @@ class Table { @@ -21,7 +21,7 @@ class Table {
21 dynamic isExitsClass; //表示这个桌子已经关联到包间分类了 null是没有 21 dynamic isExitsClass; //表示这个桌子已经关联到包间分类了 null是没有
22 String max; //最多可做人数 22 String max; //最多可做人数
23 String low; //最低消费 23 String low; //最低消费
24 - String sign; //标签 桌位状态 0:待确认,1:已定座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单 24 + String sign; //标签 桌位状态 0:待确认,1:已订座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单
25 String reserver; //订餐人 25 String reserver; //订餐人
26 String notebookId; //桌位对应的预订id 26 String notebookId; //桌位对应的预订id
27 bool selected; //是否选中 27 bool selected; //是否选中
@@ -114,7 +114,7 @@ class TableList extends Object { @@ -114,7 +114,7 @@ class TableList extends Object {
114 // String notebookId; //桌位对应的预订id 114 // String notebookId; //桌位对应的预订id
115 bool selected = false; //是否选中 115 bool selected = false; //是否选中
116 // String max; //最多可做人数 116 // String max; //最多可做人数
117 - String sign; //标签 桌位状态 0:待确认,1:已定座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单 117 + String sign; //标签 桌位状态 0:待确认,1:已订座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单
118 118
119 // String get maxText { 119 // String get maxText {
120 // if (max == null || max == "0" || max == "null") { 120 // if (max == null || max == "0" || max == "null") {
@@ -178,7 +178,8 @@ class TableList extends Object { @@ -178,7 +178,8 @@ class TableList extends Object {
178 this.enable, 178 this.enable,
179 this.spell, 179 this.spell,
180 this.cdate, 180 this.cdate,
181 - this.rname,this.regionName); 181 + this.rname,
  182 + this.regionName);
182 183
183 factory TableList.fromJson(Map<String, dynamic> srcJson) => 184 factory TableList.fromJson(Map<String, dynamic> srcJson) =>
184 _$TableListFromJson(srcJson); 185 _$TableListFromJson(srcJson);
@@ -509,4 +509,9 @@ class HttpUrl { @@ -509,4 +509,9 @@ class HttpUrl {
509 static const String sort_by_table = 509 static const String sort_by_table =
510 "?service=App.Tables.SortByTable"; // 区域内桌位排序 510 "?service=App.Tables.SortByTable"; // 区域内桌位排序
511 511
  512 +
  513 + static const String get_reserve_action_log =
  514 + "?service=Android.Reserve.GetReserveActionLog"; // 获取预订操作记录
  515 +
  516 +
512 } 517 }
@@ -2422,6 +2422,9 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> { @@ -2422,6 +2422,9 @@ class _NoteBookChangeFPageState extends State<NoteBookChangeFPage> {
2422 replace: true); 2422 replace: true);
2423 } 2423 }
2424 EventBus().emit("refresh_tablemanager"); //刷新桌位 2424 EventBus().emit("refresh_tablemanager"); //刷新桌位
  2425 + EventBus().emit("refresh_detail"); //刷新订座详情页
  2426 + EventBus().emit("refresh_action_log"); //获取变更记录
  2427 +
2425 } else { 2428 } else {
2426 Utils.showToast(widget.detailEntity.id == "-1" 2429 Utils.showToast(widget.detailEntity.id == "-1"
2427 ? "录入预订订单失败,请重试!" 2430 ? "录入预订订单失败,请重试!"
@@ -53,6 +53,7 @@ import '../../app.dart'; @@ -53,6 +53,7 @@ import '../../app.dart';
53 53
54 import '../../models/customer_by_seller_model.dart'; 54 import '../../models/customer_by_seller_model.dart';
55 import '../../models/customer_list_model.dart'; 55 import '../../models/customer_list_model.dart';
  56 +import '../../models/reserveA_action_log_modol.dart';
56 import '../../models/reserve_deposit_model.dart'; 57 import '../../models/reserve_deposit_model.dart';
57 import '../../provider/collect_store_provider.dart'; 58 import '../../provider/collect_store_provider.dart';
58 import '../../utils/screen_util.dart'; 59 import '../../utils/screen_util.dart';
@@ -141,6 +142,7 @@ class NotebookDetailPageState extends State<NotebookDetailPage> { @@ -141,6 +142,7 @@ class NotebookDetailPageState extends State<NotebookDetailPage> {
141 _getReserveTypeField(); 142 _getReserveTypeField();
142 _initCancel(); 143 _initCancel();
143 _initdDeposit(); 144 _initdDeposit();
  145 + _getReserveActionLog();
144 _getReserveDetail(); 146 _getReserveDetail();
145 _getOrderInfo(); 147 _getOrderInfo();
146 _getReserveDepositByRid(); 148 _getReserveDepositByRid();
@@ -200,6 +202,9 @@ class NotebookDetailPageState extends State<NotebookDetailPage> { @@ -200,6 +202,9 @@ class NotebookDetailPageState extends State<NotebookDetailPage> {
200 bus.on("refresh_detail_reserve_recheck", (args) { 202 bus.on("refresh_detail_reserve_recheck", (args) {
201 _getReserveRecheckByRid(); //获取核餐记录 203 _getReserveRecheckByRid(); //获取核餐记录
202 }); 204 });
  205 + bus.on("refresh_action_log", (args) {
  206 + _getReserveActionLog(); //获取变更记录
  207 + });
203 }); 208 });
204 } 209 }
205 210
@@ -450,6 +455,9 @@ class NotebookDetailPageState extends State<NotebookDetailPage> { @@ -450,6 +455,9 @@ class NotebookDetailPageState extends State<NotebookDetailPage> {
450 bus.off("refresh_detail"); 455 bus.off("refresh_detail");
451 bus.off("refresh_detail_deposit"); 456 bus.off("refresh_detail_deposit");
452 bus.off("refresh_detail_reserve_recheck"); 457 bus.off("refresh_detail_reserve_recheck");
  458 + bus.off("refresh_action_log");
  459 +
  460 +
453 } 461 }
454 462
455 ///获取订单详情 463 ///获取订单详情
@@ -462,6 +470,16 @@ class NotebookDetailPageState extends State<NotebookDetailPage> { @@ -462,6 +470,16 @@ class NotebookDetailPageState extends State<NotebookDetailPage> {
462 } 470 }
463 471
464 ///订座详情 472 ///订座详情
  473 + _getReserveActionLog({bool showCicle = false}) async {
  474 + await detailModel.getReserveActionLog(
  475 + context,
  476 + {
  477 + "rid": widget.rid,
  478 + },
  479 + showCircle: showCicle);
  480 + }
  481 +
  482 + ///订座详情
465 _getReserveDetail({bool showCicle = false}) async { 483 _getReserveDetail({bool showCicle = false}) async {
466 detailEntity = await detailModel.getReserveDetail( 484 detailEntity = await detailModel.getReserveDetail(
467 context, 485 context,
@@ -1866,9 +1884,37 @@ class NotebookDetailPageState extends State<NotebookDetailPage> { @@ -1866,9 +1884,37 @@ class NotebookDetailPageState extends State<NotebookDetailPage> {
1866 TextStyle(color: MyColours.color_999999, fontSize: font(14)), 1884 TextStyle(color: MyColours.color_999999, fontSize: font(14)),
1867 ), 1885 ),
1868 ])), 1886 ])),
  1887 +
  1888 + // if (detailModel.reserveActionLogData.length > 0)
  1889 + ListView.builder(
  1890 + itemCount: detailModel.reserveActionLogData.length,
  1891 + shrinkWrap: true,
  1892 + controller: controller,
  1893 + itemBuilder: (context, index) {
  1894 + ReserveActionLogSunModol data =
  1895 + detailModel.reserveActionLogData[index];
  1896 + return Container(
  1897 + padding: EdgeInsets.only(left: w(13), top: w(20)),
  1898 + child: Row(
  1899 + mainAxisAlignment: MainAxisAlignment.spaceBetween,
  1900 + children: [
  1901 + Text(
  1902 + '变更预订',
  1903 + overflow: TextOverflow.ellipsis,
  1904 + style: TextStyle(
  1905 + color: MyColours.color_515151, fontSize: font(14)),
  1906 + ),
  1907 + Text(
  1908 + '${data.nick_name ?? ''} ${data.upDate}',
  1909 + overflow: TextOverflow.ellipsis,
  1910 + style: TextStyle(
  1911 + color: MyColours.color_999999, fontSize: font(14)),
  1912 + ),
  1913 + ]));
  1914 + }),
1869 if (detailEntity.up_date != null) 1915 if (detailEntity.up_date != null)
1870 Container( 1916 Container(
1871 - padding: EdgeInsets.only(left: w(13), top: w(10)), 1917 + padding: EdgeInsets.only(left: w(13), top: w(20)),
1872 child: Row( 1918 child: Row(
1873 mainAxisAlignment: MainAxisAlignment.spaceBetween, 1919 mainAxisAlignment: MainAxisAlignment.spaceBetween,
1874 children: [ 1920 children: [
@@ -270,7 +270,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { @@ -270,7 +270,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
270 if (widget.initialIndex == 0 || 270 if (widget.initialIndex == 0 ||
271 widget.initialIndex == 1 && needRefreshTemp == false) return; 271 widget.initialIndex == 1 && needRefreshTemp == false) return;
272 _initNotification(); 272 _initNotification();
273 - Future.delayed(Duration(minutes: 3), () { 273 + Future.delayed(Duration(minutes: 5), () {
274 //30000 274 //30000
275 ContactModel.getInstance().uploadLocalContact(context); 275 ContactModel.getInstance().uploadLocalContact(context);
276 UserModel usermodel = Provider.of<UserModel>(context, listen: false); 276 UserModel usermodel = Provider.of<UserModel>(context, listen: false);
@@ -1412,7 +1412,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { @@ -1412,7 +1412,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
1412 // if (widget.initialIndex == 1 && needRefreshTemp == false) { 1412 // if (widget.initialIndex == 1 && needRefreshTemp == false) {
1413 // } else { 1413 // } else {
1414 // _clearBadge(() { 1414 // _clearBadge(() {
1415 - // _getAllUnMessages(); 1415 + // _getAllUnMessages();
1416 // }); 1416 // });
1417 // } 1417 // }
1418 1418
@@ -18,6 +18,7 @@ import 'package:provider/provider.dart'; @@ -18,6 +18,7 @@ import 'package:provider/provider.dart';
18 18
19 import '../models/get_reserve_type_field_model.dart'; 19 import '../models/get_reserve_type_field_model.dart';
20 import '../models/notebook.dart'; 20 import '../models/notebook.dart';
  21 +import '../models/reserveA_action_log_modol.dart';
21 import '../models/reserve_deposit_model.dart'; 22 import '../models/reserve_deposit_model.dart';
22 import '../models/reserve_recheck_model.dart'; 23 import '../models/reserve_recheck_model.dart';
23 import '../models/user.dart'; 24 import '../models/user.dart';
@@ -39,6 +40,8 @@ class NotebookDetailModel extends ChangeNotifier { @@ -39,6 +40,8 @@ class NotebookDetailModel extends ChangeNotifier {
39 40
40 List<GetReserveTypeFieldsSunModel> reserveTypes = []; //用餐类型 41 List<GetReserveTypeFieldsSunModel> reserveTypes = []; //用餐类型
41 42
  43 + List<ReserveActionLogSunModol> reserveActionLogData = []; // 获取预订操作记录
  44 +
42 NotebookDetailModel() { 45 NotebookDetailModel() {
43 initSexList(); 46 initSexList();
44 } 47 }
@@ -84,6 +87,26 @@ class NotebookDetailModel extends ChangeNotifier { @@ -84,6 +87,26 @@ class NotebookDetailModel extends ChangeNotifier {
84 } 87 }
85 } 88 }
86 89
  90 + /// 获取预订操作记录
  91 + getReserveActionLog(BuildContext context, Map<String, String> params,
  92 + {bool showCircle = false}) async {
  93 + BaseResp<List> baseResp = await DioUtil()
  94 + .request<List>(context, Method.get, HttpUrl.get_reserve_action_log,
  95 + data: params, showLoading: showCircle)
  96 + .catchError((error) {
  97 + print(error.toString());
  98 + });
  99 + if (baseResp.code == Constant.status_success) {
  100 + reserveActionLogData =
  101 + ReserveActionLogModol.fromJson(baseResp.responseData).data;
  102 + } else {
  103 + if (baseResp != null) {
  104 + Utils.showToast(baseResp.msg ?? "");
  105 + }
  106 + }
  107 + notifyListeners();
  108 + }
  109 +
87 /// 通过预订ID查收定金详情 110 /// 通过预订ID查收定金详情
88 getReserveDepositByRid( 111 getReserveDepositByRid(
89 BuildContext context, Map<String, String> params) async { 112 BuildContext context, Map<String, String> params) async {