Commit 619fa9dfb471c2593efab6ec145c079284a48b94

Authored by wdn127929
1 parent d6e61669

iOS多语言&whatsapp分享

... ... @@ -18,19 +18,19 @@ if (flutterRoot == null) {
def flutterVersionCode = "541"
def flutterVersionCode = "600"
if (flutterVersionCode == null) {
flutterVersionCode = '541'
flutterVersionCode = '600'
}
def flutterVersionName = "5.4.1"
def flutterVersionName = "6.0.0"
if (flutterVersionName == null) {
flutterVersionName = '5.4.1'
flutterVersionName = '6.0.0'
}
... ...
... ... @@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objectVersion = 50;
objects = {
/* Begin PBXBuildFile section */
... ... @@ -44,6 +44,7 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
0771EF012D141AE300148DB8 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
22513BD076488FBD50F0303F /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
... ... @@ -75,7 +76,6 @@
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
9F11082C59A1D00E83E0934D /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
CC19436D18202E6CAD07F931 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
EE6AF8FF2457DB720005E3B9 /* RunnerProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = RunnerProfile.entitlements; sourceTree = "<group>"; };
... ... @@ -166,7 +166,7 @@
97C146FA1CF9000F007C117D /* Main.storyboard */,
97C146FD1CF9000F007C117D /* Assets.xcassets */,
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */,
97C147021CF9000F007C117D /* Info.plist */,
0771EF012D141AE300148DB8 /* Info.plist */,
97C146F11CF9000F007C117D /* Supporting Files */,
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
... ... @@ -222,7 +222,7 @@
CreatedOnToolsVersion = 7.3.1;
DevelopmentTeam = 8J59HM8B82;
LastSwiftMigration = 1100;
ProvisioningStyle = Manual;
ProvisioningStyle = Automatic;
};
};
};
... ... @@ -553,15 +553,9 @@
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
<<<<<<< HEAD
CURRENT_PROJECT_VERSION = 5410;
=======
CURRENT_PROJECT_VERSION = 5422;
>>>>>>> v5.4.2+
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 6000;
DEVELOPMENT_TEAM = 8J59HM8B82;
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8J59HM8B82;
ENABLE_BITCODE = NO;
FLUTTER_BUILD_MODE = release;
FLUTTER_ROOT = /Users/naji2021/Documents/flutter;
... ... @@ -576,16 +570,11 @@
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
);
<<<<<<< HEAD
MARKETING_VERSION = 5.4.1;
=======
MARKETING_VERSION = 5.4.2;
>>>>>>> v5.4.2+
MARKETING_VERSION = 6.0.0;
PODS_ROOT = "$(inherited)";
PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine;
PRODUCT_NAME = Runner;
PROVISIONING_PROFILE_SPECIFIER = "11.12 naji";
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "11.12 naji hoc";
PROVISIONING_PROFILE_SPECIFIER = "";
SWIFT_ENABLE_BATCH_MODE = NO;
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_VERSION = 5.0;
... ... @@ -715,17 +704,11 @@
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = "Runner/一键订Debug.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
<<<<<<< HEAD
CURRENT_PROJECT_VERSION = 5410;
=======
CURRENT_PROJECT_VERSION = 5422;
>>>>>>> v5.4.2+
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 6000;
DEVELOPMENT_TEAM = 8J59HM8B82;
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8J59HM8B82;
ENABLE_BITCODE = NO;
FLUTTER_BUILD_MODE = release;
FLUTTER_BUILD_MODE = debug;
FLUTTER_ROOT = /Users/naji2021/Documents/flutter;
FLUTTER_TARGET = "/Users/naji2021/Desktop/Flutter-ReserveApp/lib/main.dart";
FRAMEWORK_SEARCH_PATHS = (
... ... @@ -739,17 +722,12 @@
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
);
<<<<<<< HEAD
MARKETING_VERSION = 5.4.1;
=======
MARKETING_VERSION = 5.4.2;
>>>>>>> v5.4.2+
MARKETING_VERSION = 6.0.0;
PACKAGE_CONFIG = "/Users/naji2021/Desktop/Flutter-ReserveApp/.dart_tool/package_config.json";
PODS_ROOT = "$(inherited)";
PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine;
PRODUCT_NAME = Runner;
PROVISIONING_PROFILE_SPECIFIER = "11.12 naji";
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "11.12 naji hoc";
PROVISIONING_PROFILE_SPECIFIER = "";
SWIFT_ENABLE_BATCH_MODE = NO;
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
... ... @@ -768,15 +746,9 @@
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
<<<<<<< HEAD
CURRENT_PROJECT_VERSION = 5410;
=======
CURRENT_PROJECT_VERSION = 5422;
>>>>>>> v5.4.2+
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 6000;
DEVELOPMENT_TEAM = 8J59HM8B82;
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8J59HM8B82;
ENABLE_BITCODE = NO;
FLUTTER_BUILD_MODE = release;
FLUTTER_ROOT = /Users/naji2021/Documents/flutter;
... ... @@ -791,16 +763,11 @@
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
);
<<<<<<< HEAD
MARKETING_VERSION = 5.4.1;
=======
MARKETING_VERSION = 5.4.2;
>>>>>>> v5.4.2+
MARKETING_VERSION = 6.0.0;
PODS_ROOT = "$(inherited)";
PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine;
PRODUCT_NAME = Runner;
PROVISIONING_PROFILE_SPECIFIER = "11.12 naji";
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "11.12 naji hoc";
PROVISIONING_PROFILE_SPECIFIER = "";
SWIFT_ENABLE_BATCH_MODE = NO;
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_VERSION = 5.0;
... ...
... ... @@ -2,6 +2,8 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- <key>NSBonjourServices</key>
<string>_dartobservatory._tcp</string> -->
<key>LSSupportsOpeningDocumentsInPlace</key>
<true/>
<key>UIFileSharingEnabled</key>
... ... @@ -70,6 +72,7 @@
<string>weixin</string>
<string>iosamap</string>
<string>amapuri</string>
<string>whatsapp</string>
</array>
<key>LSRequiresIPhoneOS</key>
<true/>
... ...
... ... @@ -11,10 +11,10 @@ class Constant {
*
* 测试账号变更,已经删除0001 账户 代替为 0019!!!!!!!注意!!!!!!!!!!!!!!
* */
// static const WXMiniProgramType wxMiniProgramType =
// WXMiniProgramType.RELEASE; //正式版
static const WXMiniProgramType wxMiniProgramType =
WXMiniProgramType.PREVIEW; //体验版
WXMiniProgramType.RELEASE; //正式版
// static const WXMiniProgramType wxMiniProgramType =
// WXMiniProgramType.PREVIEW; //体验版
// static const WXMiniProgramType wxMiniProgramType =
// WXMiniProgramType.TEST; //开发版
... ...
... ... @@ -218,6 +218,7 @@ class MessageLookup extends MessageLookupByLibrary {
"guarantee_description" : MessageLookupByLibrary.simpleMessage("担保说明"),
"guarantor" : MessageLookupByLibrary.simpleMessage("担保人"),
"guest_name" : MessageLookupByLibrary.simpleMessage("客人姓名"),
"guests_and_invited_guests_can_submit_reservation_requests_directly_via_invitation_without_calling_manager_can_understand_customer_needs_and_arrange_reservations" : MessageLookupByLibrary.simpleMessage("客人和被邀客人可以通过邀请函,直接点击在线预订,向商家提交预订需求,无需通过电话,经理可以详细了解客户需求并安排预订"),
"guests_can_cancel_orders_via_mini_program_without_calling" : MessageLookupByLibrary.simpleMessage("客人可以在预订安排小程序卡片中"),
"historical_marketing_records" : MessageLookupByLibrary.simpleMessage("历史营销记录"),
"holiday" : MessageLookupByLibrary.simpleMessage("节日"),
... ...
... ... @@ -457,7 +457,7 @@
"guests_can_cancel_orders_via_mini_program_without_calling": "客人可以在预订安排小程序卡片中",
"to_avoid_misoperation_the_system_will_confirm_with_guests_before_official_cancellation": "通过“取消预订”按钮取消订单,无需通过电话跟商家联系。为了避免客人误操作,在正式取消前,系统会通过弹窗提醒客人确认",
"enable_online_reservation_feature_for_guests": "向客人开放“在线预订”功能",
"guests_and_invited_guests_can_submit_reservation_requests_directly_via_invitation_without_calling,guests_and_invited_guests_can_submit_reservation_requests_directly_via_invitation_without_calling_manager_can_understand_customer_needs_and_arrange_reservations": "客人和被邀客人可以通过邀请函,直接点击在线预订,向商家提交预订需求,无需通过电话,经理可以详细了解客户需求并安排预订",
"guests_and_invited_guests_can_submit_reservation_requests_directly_via_invitation_without_calling_manager_can_understand_customer_needs_and_arrange_reservations": "客人和被邀客人可以通过邀请函,直接点击在线预订,向商家提交预订需求,无需通过电话,经理可以详细了解客户需求并安排预订",
"mini_program_notification_card_style_selection": "小程序通知卡片样式选择",
"reservation_deposit": "预订订金",
"add_deposit_payment_function_in_customer_reservation_notifications": "在客户预订通知中,增加支付订金功能",
... ...
... ... @@ -279,11 +279,13 @@ class MyAppState extends State<MyApp> {
return MaterialApp(
localeResolutionCallback: (locale, supportedLocales) {
// 如果语言是英语
if (locale?.languageCode == 'en') {
//注意大小写,返回美国英语
return const Locale('en', 'US');
if (locale?.countryCode == 'CN') {
return const Locale('zh', 'CN');
} else if (locale?.countryCode == 'TW') {
return const Locale('zh', 'CN');
} else {
return locale;
//注意大小写,返回美国英语
return Locale('en', 'US');
}
},
... ...
import 'package:fijkplayer/fijkplayer.dart';
import 'package:json_annotation/json_annotation.dart';
import '../generated/l10n.dart';
... ... @@ -74,6 +75,8 @@ class Table {
return S.of(context).private_room;
case "3":
return "卡座";
default:
return '';
}
}
... ...
... ... @@ -874,7 +874,7 @@ class InvicationPageState extends State<InvicationPage>
memberid = temp['id'];
} else {
//S.of(context).non_member
isMember = 'S.of(context).non_member';
isMember = S.of(context).non_member;
memberIndex = 1;
memberid = temp['id'];
}
... ... @@ -2705,7 +2705,9 @@ class InvicationPageState extends State<InvicationPage>
_showConfirmWidget(needSex: true);
setState(() {});
}
}, cancelText: S.of(context).cancel,selecteds: [sexSelectIndex]).then((value) {});
},
cancelText: S.of(context).cancel,
selecteds: [sexSelectIndex]).then((value) {});
},
child: Row(children: [
Text(
... ... @@ -2743,7 +2745,9 @@ class InvicationPageState extends State<InvicationPage>
setState(() {});
_setInsGuest();
}
},cancelText: S.of(context).cancel, selecteds: [memberIndex ?? 0])
},
cancelText: S.of(context).cancel,
selecteds: [memberIndex ?? 0])
.then((value) {});
},
child: Row(children: [
... ... @@ -5393,20 +5397,63 @@ class InvicationPageState extends State<InvicationPage>
return;
}
// 构建WhatsApp分享的URL
final String whatsAppUrl =
String whatsAppUrl =
'whatsapp://send?text=${detailModel.smsContent}';
// 检查设备是否安装了WhatsApp
bool isInstalled = await canLaunch(whatsAppUrl);
if (Platform.isAndroid) {
whatsAppUrl =
'whatsapp://send?text=${detailModel.smsContent}';
// android , web
} else {
// final String textIOS = text != null ? Uri.encodeFull('?text=$text') : '';
// final String textAndroid = text != null ? Uri.encodeFull('&text=$text') : '';
// final String urlIOS = 'https://wa.me/$phone$textIOS';
// add the [https]
// var whatsappURLIos = "https://wa.me/$whatsapp?text=${Uri.tryParse(detailModel.smsContent)}";
whatsAppUrl =
"https://wa.me/?text=${Uri.encodeFull('${detailModel.smsContent}')}";
// "https://api.whatsapp.com/send?phone=$phone=${Uri.parse(message)}"; // new line
// for iOS phone only
}
// 检查设备是否安装了WhatsApp
bool isInstalled = await canLaunchUrl(Uri.parse(whatsAppUrl));
if (isInstalled) {
// 打开WhatsApp并分享视频
await launch(whatsAppUrl);
// await launch(whatsAppUrl);
// const url = "https://wa.me/?text=Your Message here";
// var encoded = Uri.encodeFull(url);
await launchUrl(Uri.parse(whatsAppUrl));
} else {
// WhatsApp未安装,处理错误或提示用户
print('WhatsApp未安装');
Utils.showToast('WhatsApp未安装');
}
// if (await canLaunchUrl(Uri.parse(whatsAppUrl))) {
// await launchUrl(Uri.parse(whatsAppUrl));
// } else {
// ScaffoldMessenger.of(context).showSnackBar(
// const SnackBar(content: Text("Whatsapp not installed")));
// }
// // 检查设备是否安装了WhatsApp
// bool isInstalled = await canLaunch(whatsAppUrl);
// if (isInstalled) {
// // 打开WhatsApp并分享视频
// // await launch(whatsAppUrl);
// const url = "https://wa.me/?text=Your Message here";
// var encoded = Uri.encodeFull(url);
// await launch(encoded);
// } else {
// // WhatsApp未安装,处理错误或提示用户
// print('WhatsApp未安装');
// Utils.showToast('WhatsApp未安装');
// }
// dynamic isSuccess = await Utils.goShareInvicationToWeChat(
// context,
// widget.rid,
... ...
... ... @@ -81,7 +81,8 @@ class _CustomerListPageState extends State<CustomerListPage>
uidAct = widget.uidStr;
distribution = widget.distribution;
_tabBarTitle = ['全部', '活跃', '${S.of(context).dormant}', '${S.of(context).lost}'];
_tabBarTitle = ['全部', '活跃', '沉睡', '流失'];
// timeTilte = ['大于', '等于', '小于'];
super.initState();
tabController = TabController(length: 4, vsync: this);
... ... @@ -133,7 +134,17 @@ class _CustomerListPageState extends State<CustomerListPage>
});
WidgetsBinding.instance.addPostFrameCallback((_) async {
bool first = true;
timeTilte = ['${S.of(context).equals}', '${S.of(context).less_than}', '${S.of(context).greater_than}'];
_tabBarTitle = [
'${S.of(context).all}',
'${S.of(context).active}',
'${S.of(context).dormant}',
'${S.of(context).lost}'
];
timeTilte = [
'${S.of(context).equals}',
'${S.of(context).less_than}',
'${S.of(context).greater_than}'
];
getSellerVersion();
_getSeller();
customerProvider.index = tabController.index;
... ... @@ -1009,7 +1020,8 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).customer_manager}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).customer_manager}',
MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1036,7 +1048,9 @@ class _CustomerListPageState extends State<CustomerListPage>
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(
customerProvider.manageSelAll ? '全不选' : '${S.of(context).select_all}',
customerProvider.manageSelAll
? '全不选'
: '${S.of(context).select_all}',
MyColours.color_199095,
FontWeight.normal,
24)),
... ... @@ -1071,7 +1085,8 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).activity_level}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).activity_level}',
MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1094,8 +1109,13 @@ class _CustomerListPageState extends State<CustomerListPage>
height: ScreenUtil().setWidth(40),
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(customerProvider.hydSelAll ? '全不选' : '${S.of(context).select_all}',
MyColours.color_199095, FontWeight.normal, 24)),
child: _textWidget(
customerProvider.hydSelAll
? '全不选'
: '${S.of(context).select_all}',
MyColours.color_199095,
FontWeight.normal,
24)),
)
],
),
... ... @@ -1141,7 +1161,8 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).custom_tags}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).custom_tags}', MyColours.color_515151,
FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1166,7 +1187,9 @@ class _CustomerListPageState extends State<CustomerListPage>
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(
customerProvider.labelSelAll ? '全不选' : '${S.of(context).select_all}',
customerProvider.labelSelAll
? '全不选'
: '${S.of(context).select_all}',
MyColours.color_199095,
FontWeight.normal,
24))),
... ... @@ -1331,7 +1354,8 @@ class _CustomerListPageState extends State<CustomerListPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).custom_time}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).custom_time}', MyColours.color_515151,
FontWeight.bold, 28),
GestureDetector(
onTap: () {
customerProvider.controllerstime.text = '';
... ... @@ -1346,8 +1370,8 @@ class _CustomerListPageState extends State<CustomerListPage>
height: ScreenUtil().setWidth(40),
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(
S.of(context).clear, MyColours.color_199095, FontWeight.normal, 24),
child: _textWidget(S.of(context).clear,
MyColours.color_199095, FontWeight.normal, 24),
))
],
),
... ... @@ -1424,7 +1448,8 @@ class _CustomerListPageState extends State<CustomerListPage>
}))
])),
VEmptyView(40),
_textWidget('${S.of(context).reservation_times}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).reservation_times}',
MyColours.color_515151, FontWeight.bold, 28),
VEmptyView(20),
/**
Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
... ... @@ -1786,7 +1811,7 @@ class _CustomerListPageState extends State<CustomerListPage>
child: Align(
alignment: Alignment.center,
child: _textWidget(
S.of(context).confirm,
S.of(context).confirm,
MyColours.color_ffffff,
FontWeight.normal,
30),
... ...
... ... @@ -50,11 +50,8 @@ class _DayOrderPageState extends State<DayOrderPage>
void initState() {
// TODO: implement initState
super.initState();
nongli = nongliShow(widget.year, widget.month, widget.day);
weekday = weekdayShow(widget.year, widget.month, widget.day);
tabController = TabController(length: 2, vsync: this);
tabController.addListener(() {
tabController = TabController(length: 2, vsync: this);
tabController.addListener(() {
//点击tab时或滑动tab回调一次
// if (tabController.index.toDouble() == tabController.animation.value) {
// getMessage(index: tabController.index);
... ... @@ -62,6 +59,13 @@ class _DayOrderPageState extends State<DayOrderPage>
// setState(() {});
// }
});
WidgetsBinding.instance.addPostFrameCallback((_) {
nongli = nongliShow(widget.year, widget.month, widget.day);
weekday = weekdayShow(widget.year, widget.month, widget.day);
});
}
String nongliShow(String year, String month, String day) {
... ... @@ -112,14 +116,15 @@ class _DayOrderPageState extends State<DayOrderPage>
fontWeight: FontWeight.bold),
),
Text(
nongli,
nongli??'',
style: TextStyle(
color: MyColours.color_515151,
fontSize: font(14),
),
),
Text(
weekday,
weekday??'',
style: TextStyle(
color: MyColours.color_515151,
fontSize: font(14),
... ...
... ... @@ -979,7 +979,7 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
RoundButton(
text:S.of(context).cancel,
text: S.of(context).cancel,
width: (ScreenUtil().screenWidth -
ScreenUtil().setWidth(62) * 2) /
2,
... ... @@ -999,7 +999,7 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
ScreenUtil().setWidth(112),
color: MyColours.color_DBDBDB),
RoundButton(
text: S.of(context).confirm,
text: S.of(context).confirm,
width: (ScreenUtil().screenWidth -
ScreenUtil().setWidth(62) * 2) /
2,
... ... @@ -1772,8 +1772,8 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
isBoldContent: true,
contentColor: MyColours.color_E6000000,
lTitle: S.of(context).cancel,
rTitle: S.of(context).delete, rCallback: () {
rTitle: S.of(context).delete,
rCallback: () {
_delReserveDepositByid(data.id);
});
},
... ... @@ -2388,7 +2388,9 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
.spaceBetween,
children: <Widget>[
Text(
S.of(context).reserve_table,
S
.of(context)
.reserve_table,
style: TextStyle(
color: MyColours
.color_515151,
... ... @@ -2476,8 +2478,12 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
// ),
// ),
// )),
RowMultiText( S.of(context).reservation_date,
detailEntity.ddateF(context),
RowMultiText(
S
.of(context)
.reservation_date,
detailEntity
.ddateF(context),
textColor: MyColours
.color_515151)
]),
... ... @@ -2497,7 +2503,8 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
children: [
Expanded(
flex: 1,
child: RowMultiText(S.of(context).time_slot,
child: RowMultiText(
S.of(context).time_slot,
detailEntity.ddateSolt,
textColor: MyColours
.color_515151)),
... ... @@ -2506,6 +2513,7 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
flex: 1,
child: TitleAndBtn(
title: S.of(context).time,
titleZn: '时间',
content: ddateHm,
// list: personNumList,
detailModel: model,
... ... @@ -2583,7 +2591,10 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
Expanded(
flex: 1,
child: TitleAndTextfield(
title: S.of(context).number_of_guests,
title: S
.of(context)
.number_of_guests,
titleZn: '人数',
detailModel: detailModel,
rid: widget.rid,
isPrice: false,
... ... @@ -2614,7 +2625,10 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
Expanded(
flex: 1,
child: TitleAndTextfield(
title: S.of(context).spending_amount,
title: S
.of(context)
.spending_amount,
titleZn: '消费金额',
detailModel: detailModel,
rid: widget.rid,
isPrice: true,
... ... @@ -2626,7 +2640,9 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
]),
TitleAndBtn(
title: "S.of(context).dining_type",
title:
S.of(context).dining_type,
titleZn: '用餐类型',
content: reserveType,
// list: personNumList,
detailModel: model,
... ... @@ -2775,7 +2791,9 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
textColor:
MyColours.color_515151)
: TitleAndBtn(
title: "备注",
title:
S.of(context).remarks,
titleZn: "备注",
uid: widget.uid,
content:
detailEntity.cusdem ??
... ... @@ -3089,8 +3107,9 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
// textAlignVertical: TextAlignVertical.top,
decoration:
InputDecoration(
hintText:
S.of(context).guest_name,
hintText: S
.of(context)
.guest_name,
hintStyle:
TextStyle(
color: MyColours
... ... @@ -3109,12 +3128,17 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
'ggg');
if (value.endsWith(S.of(context).mr) ||
value.endsWith(
S.of(context).ms) ||
value.endsWith(
S.of(context).company) ||
value.endsWith(
S.of(context).company)) {
value.endsWith(S
.of(
context)
.ms) ||
value.endsWith(S
.of(
context)
.company) ||
value.endsWith(S
.of(context)
.company)) {
nameStr = value.substring(
0,
value.length -
... ... @@ -3306,7 +3330,10 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
Alignment
.centerRight,
child: Text(
S.of(context).phonebook,
S
.of(
context)
.phonebook,
style: TextStyle(
color: MyColours
.color_199095,
... ... @@ -3385,7 +3412,9 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
40 * 2)) /
2,
child: RoundButton(
text: S.of(context).enter_reservation_info,
text: S
.of(context)
.enter_reservation_info,
fontSize: 28,
isBold: false,
textColor: !(Utils.getAuthority(
... ... @@ -3774,8 +3803,9 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
.centerRight,
child:
RoundButton(
text:
S.of(context).customer_details,
text: S
.of(context)
.customer_details,
width:
w(72),
height:
... ... @@ -4730,18 +4760,19 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
),
child: Align(
alignment: Alignment.center,
child: Text(S.of(context).change_reservation,
child: Text(
S
.of(context)
.change_reservation,
style: TextStyle(
color: !(Utils.getAuthority(
context, '变更预订') ||
widget.uid ==
userModel.user
.openid ||
(userModel.user
.role_name ==
(userModel.user.role_name ==
'店长' &&
detailEntity
.role_name !=
detailEntity.role_name !=
'管理员' &&
detailEntity
.role_name !=
... ... @@ -4805,18 +4836,19 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
),
child: Align(
alignment: Alignment.center,
child: Text(S.of(context).cancel_reservation,
child: Text(
S
.of(context)
.cancel_reservation,
style: TextStyle(
color: !(Utils.getAuthority(
context, '取消预订') ||
widget.uid ==
userModel.user
.openid ||
(userModel.user
.role_name ==
(userModel.user.role_name ==
'店长' &&
detailEntity
.role_name !=
detailEntity.role_name !=
'管理员' &&
detailEntity
.role_name !=
... ... @@ -4883,7 +4915,8 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
),
child: Align(
alignment: Alignment.center,
child: Text(S.of(context).notify_customer,
child: Text(
S.of(context).notify_customer,
style: TextStyle(
color: MyColours
.color_ffffff,
... ... @@ -4992,6 +5025,7 @@ class NotebookDetailPageSimState extends State<NotebookDetailPageSim> {
class TitleAndBtn extends StatelessWidget {
final String title;
final String titleZn;
final String content;
// final List<String> list;
final NotebookDetailModel detailModel;
... ... @@ -5000,6 +5034,7 @@ class TitleAndBtn extends StatelessWidget {
const TitleAndBtn(
{Key key,
this.title,
this.titleZn,
this.content,
// this.list,
this.detailModel,
... ... @@ -5054,7 +5089,7 @@ class TitleAndBtn extends StatelessWidget {
// HEmptyView(10),
InkWell(
onTap: () {
if (Utils.getAuthority(context, title) ||
if (Utils.getAuthority(context, titleZn) ||
uid == userModel.user.openid) {
callback();
}
... ... @@ -5065,16 +5100,18 @@ class TitleAndBtn extends StatelessWidget {
border: Border(
bottom: BorderSide(
width: ScreenUtil().setWidth(2),
color: (Utils.getAuthority(context, title) ||
color: (Utils.getAuthority(context, titleZn) ||
uid == userModel.user.openid)
? MyColours.color_199095
: MyColours.color_999999))),
child: Text(
content == null || content == '' || content == S.of(context).please_select
content == null ||
content == '' ||
content == S.of(context).please_select
? "修改"
: content,
style: TextStyle(
color: (Utils.getAuthority(context, title) ||
color: (Utils.getAuthority(context, titleZn) ||
uid == userModel.user.openid)
? MyColours.color_199095
: MyColours.color_999999,
... ... @@ -5100,6 +5137,7 @@ class TitleAndBtn extends StatelessWidget {
class TitleAndTextfield extends StatefulWidget {
final String title;
final String titleZn;
final String bookNum;
final List<String> pnumlist;
final NotebookDetailModel detailModel;
... ... @@ -5114,6 +5152,7 @@ class TitleAndTextfield extends StatefulWidget {
const TitleAndTextfield(
{Key key,
this.title,
this.titleZn,
this.bookNum,
this.pnumlist,
this.detailModel,
... ... @@ -5319,7 +5358,7 @@ class _TitleAndTextfieldState extends State<TitleAndTextfield>
bottom: BorderSide(
width: ScreenUtil().setWidth(2),
color:
Utils.getAuthority(context, widget.title) ||
Utils.getAuthority(context, widget.titleZn) ||
widget.uid == userModel.user.openid
? MyColours.color_199095
: MyColours.color_999999))),
... ... @@ -5331,7 +5370,7 @@ class _TitleAndTextfieldState extends State<TitleAndTextfield>
// LengthLimitingTextInputFormatter(9),
// FilteringTextInputFormatter.digitsOnly
// ],
enabled: Utils.getAuthority(context, widget.title) ||
enabled: Utils.getAuthority(context, widget.titleZn) ||
widget.uid == userModel.user.openid,
inputFormatters: widget.isPrice
... ... @@ -5347,7 +5386,7 @@ class _TitleAndTextfieldState extends State<TitleAndTextfield>
//输入文本的样式
style: TextStyle(
fontSize: ScreenUtil().setSp(30),
color: Utils.getAuthority(context, widget.title) ||
color: Utils.getAuthority(context, widget.titleZn) ||
widget.uid == userModel.user.openid
? MyColours.color_199095
: MyColours.color_999999),
... ... @@ -5356,7 +5395,7 @@ class _TitleAndTextfieldState extends State<TitleAndTextfield>
decoration: InputDecoration(
hintText: "修改",
hintStyle: TextStyle(
color: Utils.getAuthority(context, widget.title) ||
color: Utils.getAuthority(context, widget.titleZn) ||
widget.uid == userModel.user.openid
? MyColours.color_199095
: MyColours.color_999999,
... ...
... ... @@ -2516,7 +2516,7 @@ class InvicationPageSimState extends State<InvicationPageSim>
// focusNode: _nameNode,
// textAlignVertical: TextAlignVertical.top,
decoration: InputDecoration(
hintText: "S.of(context).dining_type",
hintText: S.of(context).dining_type,
hintStyle: TextStyle(
color: MyColours.color_999999,
fontSize: ScreenUtil().setSp(28),
... ...
... ... @@ -51,7 +51,7 @@ class MessageTreatedPageSimState extends State<MessageTreatedPageSim> {
// TODO: implement initState
super.initState();
_initMenu();
// //移除在线预订消息
// bus.on("remove_untreated_message", (args) {
// messageModel.removeUntreatedMessageByMid(args.toString());
... ... @@ -60,6 +60,7 @@ class MessageTreatedPageSimState extends State<MessageTreatedPageSim> {
// messageModel.pageState = PageState.Loading;
WidgetsBinding.instance.addPostFrameCallback((_) {
_initMenu();
messageModel.controller = EasyRefreshController();
messageModel.pageState = PageState.Loading;
... ...
... ... @@ -45,15 +45,14 @@ class CustomerListPageSim extends StatefulWidget {
// final bool distribution;
// final List<SellerUser> sellerUser;
const CustomerListPageSim(
{Key key,
// this.fromPage,
// this.index,
// this.uidStr,
// this.distribution = false,
// this.sellerUser
})
: super(key: key);
const CustomerListPageSim({
Key key,
// this.fromPage,
// this.index,
// this.uidStr,
// this.distribution = false,
// this.sellerUser
}) : super(key: key);
@override
_CustomerListPageSimState createState() => _CustomerListPageSimState();
}
... ... @@ -82,8 +81,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
// uidAct = widget.uidStr;
// distribution = widget.distribution;
_tabBarTitle = ['全部', '活跃', '${S.of(context).dormant}', '${S.of(context).lost}'];
// timeTilte = ['大于', '等于', '小于'];
_tabBarTitle = ['全部', '活跃', '沉睡', '流失'];
super.initState();
tabController = TabController(length: 4, vsync: this);
// tabController.index = int.parse(widget.index);
... ... @@ -133,7 +132,18 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
}
});
WidgetsBinding.instance.addPostFrameCallback((_) async {
timeTilte = ['${S.of(context).equals}', '${S.of(context).less_than}', '${S.of(context).greater_than}'];
_tabBarTitle = [
'${S.of(context).all}',
'${S.of(context).active}',
'${S.of(context).dormant}',
'${S.of(context).lost}'
];
timeTilte = [
'${S.of(context).equals}',
'${S.of(context).less_than}',
'${S.of(context).greater_than}'
];
bool first = true;
getSellerVersion();
_getSeller();
... ... @@ -192,8 +202,6 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
super.dispose();
}
_getManagerAndList() async {
_getContantData();
// _getSellerGuestManage();
... ... @@ -821,7 +829,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
if (value.title == '活跃') {
tabController.index = 1;
customerProvider.index = 1;
} else if (value.title == '${S.of(context).dormant}') {
} else if (value.title ==
'${S.of(context).dormant}') {
tabController.index = 2;
customerProvider.index = 2;
} else if (value.title == '${S.of(context).lost}') {
... ... @@ -977,7 +986,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).customer_manager}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).customer_manager}',
MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1004,7 +1014,9 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(
customerProvider.manageSelAll ? '全不选' : '${S.of(context).select_all}',
customerProvider.manageSelAll
? '全不选'
: '${S.of(context).select_all}',
MyColours.color_199095,
FontWeight.normal,
24)),
... ... @@ -1039,7 +1051,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).activity_level}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).activity_level}',
MyColours.color_515151, FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1062,8 +1075,13 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
height: ScreenUtil().setWidth(40),
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(customerProvider.hydSelAll ? '全不选' : '${S.of(context).select_all}',
MyColours.color_199095, FontWeight.normal, 24)),
child: _textWidget(
customerProvider.hydSelAll
? '全不选'
: '${S.of(context).select_all}',
MyColours.color_199095,
FontWeight.normal,
24)),
)
],
),
... ... @@ -1109,7 +1127,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).custom_tags}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).custom_tags}', MyColours.color_515151,
FontWeight.bold, 28),
GestureDetector(
onTap: () {
state(() {
... ... @@ -1134,7 +1153,9 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(
customerProvider.labelSelAll ? '全不选' : '${S.of(context).select_all}',
customerProvider.labelSelAll
? '全不选'
: '${S.of(context).select_all}',
MyColours.color_199095,
FontWeight.normal,
24))),
... ... @@ -1299,7 +1320,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_textWidget('${S.of(context).custom_time}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).custom_time}', MyColours.color_515151,
FontWeight.bold, 28),
GestureDetector(
onTap: () {
customerProvider.controllerstime.text = '';
... ... @@ -1314,8 +1336,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
height: ScreenUtil().setWidth(40),
alignment: Alignment.center,
padding: EdgeInsets.only(left: ScreenUtil().setWidth(130)),
child: _textWidget(
S.of(context).clear, MyColours.color_199095, FontWeight.normal, 24),
child: _textWidget(S.of(context).clear,
MyColours.color_199095, FontWeight.normal, 24),
))
],
),
... ... @@ -1392,7 +1414,8 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
}))
])),
VEmptyView(40),
_textWidget('${S.of(context).reservation_times}', MyColours.color_515151, FontWeight.bold, 28),
_textWidget('${S.of(context).reservation_times}',
MyColours.color_515151, FontWeight.bold, 28),
VEmptyView(20),
/**
Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
... ... @@ -1754,7 +1777,7 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
child: Align(
alignment: Alignment.center,
child: _textWidget(
S.of(context).confirm,
S.of(context).confirm,
MyColours.color_ffffff,
FontWeight.normal,
30),
... ... @@ -1907,60 +1930,62 @@ class _CustomerListPageSimState extends State<CustomerListPageSim>
child: Column(mainAxisSize: MainAxisSize.min, children: [
_searchWidget(),
// _menuWidget(),
Expanded(child: Consumer<CustomerProvider>(builder: (context, model, _) {
if (model.pageState != PageState.Success) {
return ExceptionPage(
pageState: model.pageState,
callback: () {
model.pageState = PageState.Loading;
model.notifyListeners();
page = 1;
customerProvider.pageData = [];
_getContantData();
},
emptyMsg: "暂时没有客户哦",
emptyImg: "empty_search",
showMsg: "加载中,请稍后...",
);
} else {
return Container(
color: MyColours.color_f3f3f3,
// height: 500,
child: ContactListPage(
contacts: model.customerBySellerList,
provider: customerProvider,
// fromPage: widget.fromPage,
sellerPreserve: collectStoreProvider.sellerPreserve,
sellerMarketing: collectStoreProvider.sellerMarketing),
);
// EasyRefresh(
// onRefresh: () async {
// // page = 0;
// // _getContantData(showLoading: false);
// },
// onLoad: () async {
// // page++;
// // _getContantData(showLoading: false);
// },
// child:
// SliverList(
// delegate: SliverChildBuilderDelegate(
// (BuildContext context, int index) {
// return Container(
// color: MyColours.color_f3f3f3,
// // height: 500,
// child: ContactListPageSim(
// contacts: model.customerBySellerList,
// provider: customerProvider,
// fromPage: widget.fromPage),
// );
// }, childCount: 1),
// )
// ],
Expanded(child:
Consumer<CustomerProvider>(builder: (context, model, _) {
if (model.pageState != PageState.Success) {
return ExceptionPage(
pageState: model.pageState,
callback: () {
model.pageState = PageState.Loading;
model.notifyListeners();
page = 1;
customerProvider.pageData = [];
_getContantData();
},
emptyMsg: "暂时没有客户哦",
emptyImg: "empty_search",
showMsg: "加载中,请稍后...",
);
} else {
return Container(
color: MyColours.color_f3f3f3,
// height: 500,
child: ContactListPage(
contacts: model.customerBySellerList,
provider: customerProvider,
// fromPage: widget.fromPage,
sellerPreserve: collectStoreProvider.sellerPreserve,
sellerMarketing:
collectStoreProvider.sellerMarketing),
);
// EasyRefresh(
// onRefresh: () async {
// // page = 0;
// // _getContantData(showLoading: false);
// },
// onLoad: () async {
// // page++;
// // _getContantData(showLoading: false);
// },
// child:
// SliverList(
// delegate: SliverChildBuilderDelegate(
// (BuildContext context, int index) {
// return Container(
// color: MyColours.color_f3f3f3,
// // height: 500,
// child: ContactListPageSim(
// contacts: model.customerBySellerList,
// provider: customerProvider,
// fromPage: widget.fromPage),
// );
// }, childCount: 1),
// )
// ],
}
}))
}
}))
// Expanded(
// child: TabBarView(
... ...
... ... @@ -600,9 +600,7 @@ class _CustomerNoticeSettingPageSimState
_item('${S.of(context).customer_interaction_settings}', onTap: () {
NavigatorUtil.goMarkingInteractionPage(context);
}),
_item('${S.of(context).customer_interaction_settings}', onTap: () {
NavigatorUtil.goMarkingInteractionPage(context);
}),
],
)),
)),
... ...
... ... @@ -113,11 +113,7 @@ class _StoreBaseInfoPageSimState extends State<StoreBaseInfoPageSim> {
@override
void initState() {
super.initState();
mapAddress = {
"address": '${S.of(context).click_to_select}',
'lat': '',
'lng': '',
};
morning.start = '07:00';
morning.end = '10:00';
noon.start = '11:00';
... ... @@ -130,6 +126,11 @@ class _StoreBaseInfoPageSimState extends State<StoreBaseInfoPageSim> {
receiveOrdersTime.start = '08:00';
receiveOrdersTime.end = '23:00';
WidgetsBinding.instance.addPostFrameCallback((_) {
mapAddress = {
"address": '${S.of(context).click_to_select}',
'lat': '',
'lng': '',
};
_uploadImageProvider.mentou.process = 0.01;
_uploadImageProvider.mentou.qiniuUrl = '';
... ...
... ... @@ -4749,7 +4749,7 @@ class DialogUtil {
bool showPnumMin = true;
bool showPnumMax = true;
int currentBaojianIndex = tidStr == null
int currentBaojianIndex = tidStr == null||tidStr ==''
? 0
: baojianList.indexWhere((element) => element == tidStr) ?? 0;
String baojian = baojianList[currentBaojianIndex];
... ...
... ... @@ -525,9 +525,10 @@ class FTableItemState extends State<FTableItem> {
bottomRight: Radius.circular(
ScreenUtil().setWidth(20)))),
child: Text(
table.sign == '10'
? table.label
: table.reserveCountShow,
? (table.label??'')
: table.reserveCountShow(context),
textAlign: TextAlign.center,
style: TextStyle(
color: MyColours.color_28323B,
... ...
... ... @@ -98,7 +98,7 @@ dependencies:
# fluwx: ^4.2.5
#网页,短信,电话
# url_launcher: ^5.4.2
url_launcher: ^6.0.9
url_launcher: ^6.1.11
# 滚轮选择器
flutter_picker: ^2.1.0
# 网络状态
... ...