notebook_detail.dart
3.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
import 'package:json_annotation/json_annotation.dart';
import 'package:one_key/utils/utils.dart';
import 'dart:convert';
import "table.dart";
part 'notebook_detail.g.dart';
@JsonSerializable()
class NotebookDetail {
NotebookDetail();
String id;
String abolition;
String tableinfo;
String pnum;
String rname;
String sex;
String phone;
String cusdem;
String cusman; //客户经理
String ddate;
String is_set_ddate;
String ddate_solt;
String status = "0"; //订单状态 0:待确认,1:已定座,2:确认到店,3:用餐完成,4:取消预订,5:安排包间,6拒绝订单
String action;
String type; //0 内部订单 1 在线预订
String note_name;
String channel;
String cdate;
List<Table> demands; //需求桌位
List<Table> tables; //预订桌位
Cancel cancel;
String get statuImgAssets {
switch (status) {
case "0":
return "assets/status_undeal.png";
case "1":
case "5":
return "assets/statu_booked.png";
case "2":
return "assets/statu_reached.png";
case "3":
return "assets/statu_finished.png";
case "4":
return "assets/statu_canceled.png";
case "6":
return "assets/statu_refuse.png";
}
}
String get ddateMd {
DateTime dateTime =
DateTime.fromMillisecondsSinceEpoch(int.parse(ddate) * 1000);
String md = Utils.addZeroNumber(dateTime.month) +
"月" +
Utils.addZeroNumber(dateTime.day) +
"日";
switch (ddate_solt) {
case "1":
md += " 早餐";
break;
case "2":
md += " 午餐";
break;
case "3":
md += " 晚餐";
break;
}
return md;
}
String get ddateHm {
if (type == "0" || (type == "1" && is_set_ddate == "1")) {
DateTime dateTime =
DateTime.fromMillisecondsSinceEpoch(int.parse(ddate) * 1000);
String Hm = Utils.addZeroNumber(dateTime.hour) +
":" +
Utils.addZeroNumber(dateTime.minute);
return Hm;
} else {
return "";
}
}
String get ddateStr {
String ddateStr;
if (type == "1" && is_set_ddate == "0") {
//在线预订,没有设置到店时间
switch (ddate_solt) {
case "1":
ddateStr = "早餐";
break;
case "2":
ddateStr = "午餐";
break;
case "3":
ddateStr = "晚餐";
break;
default:
ddateStr = "";
break;
}
} else {
DateTime dateTime =
DateTime.fromMillisecondsSinceEpoch(int.parse(ddate) * 1000);
ddateStr = Utils.addZeroNumber(dateTime.hour) +
":" +
Utils.addZeroNumber(dateTime.minute);
}
return ddateStr;
}
String get rnameStr {
if (rname.isEmpty) return "";
switch (sex) {
case "1": //先生
return rname + "先生";
case "2": //女士
return rname + "女士";
case "3": //公司
return rname + "公司";
}
}
String get tableinfoStr {
return tables[0].name +
"\n" +
(tables.length >= 2 ? ('等' + tables.length.toString() + '桌') : '');
}
factory NotebookDetail.fromJson(Map<String, dynamic> json) =>
_$NotebookDetailFromJson(json);
Map<String, dynamic> toJson() => _$NotebookDetailToJson(this);
}
@JsonSerializable()
class Cancel {
Cancel();
String uname;
String desc;
String cdate;
String get cdateStr {
DateTime dateTime =
DateTime.fromMillisecondsSinceEpoch(int.parse(cdate) * 1000);
return dateTime.year.toString() +
"/" +
Utils.addZeroNumber(dateTime.month) +
"/" +
Utils.addZeroNumber(dateTime.day) +
" " +
Utils.addZeroNumber(dateTime.hour) +
":" +
Utils.addZeroNumber(dateTime.minute);
}
factory Cancel.fromJson(Map<String, dynamic> json) => _$CancelFromJson(json);
Map<String, dynamic> toJson() => _$CancelToJson(this);
}