Showing
22 changed files
with
182 additions
and
109 deletions
| @@ -11,14 +11,14 @@ if (flutterRoot == null) { | @@ -11,14 +11,14 @@ if (flutterRoot == null) { | ||
| 11 | throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") | 11 | throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") |
| 12 | } | 12 | } |
| 13 | 13 | ||
| 14 | -def flutterVersionCode = "222" | 14 | +def flutterVersionCode = "223" |
| 15 | if (flutterVersionCode == null) { | 15 | if (flutterVersionCode == null) { |
| 16 | - flutterVersionCode = '222' | 16 | + flutterVersionCode = '223' |
| 17 | } | 17 | } |
| 18 | 18 | ||
| 19 | -def flutterVersionName = "2.2.2" | 19 | +def flutterVersionName = "2.2.3" |
| 20 | if (flutterVersionName == null) { | 20 | if (flutterVersionName == null) { |
| 21 | - flutterVersionName = '2.2.2' | 21 | + flutterVersionName = '2.2.3' |
| 22 | } | 22 | } |
| 23 | 23 | ||
| 24 | apply plugin: 'com.android.application' | 24 | apply plugin: 'com.android.application' |
| @@ -57,7 +57,7 @@ | @@ -57,7 +57,7 @@ | ||
| 57 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; | 57 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; |
| 58 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; | 58 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; |
| 59 | 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; | 59 | 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; |
| 60 | - 97C146EE1CF9000F007C117D /* 一键订.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "一键订.app"; sourceTree = BUILT_PRODUCTS_DIR; }; | 60 | + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| 61 | 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; | 61 | 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; |
| 62 | 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; | 62 | 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; |
| 63 | 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; | 63 | 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; |
| @@ -131,7 +131,7 @@ | @@ -131,7 +131,7 @@ | ||
| 131 | 97C146EF1CF9000F007C117D /* Products */ = { | 131 | 97C146EF1CF9000F007C117D /* Products */ = { |
| 132 | isa = PBXGroup; | 132 | isa = PBXGroup; |
| 133 | children = ( | 133 | children = ( |
| 134 | - 97C146EE1CF9000F007C117D /* 一键订.app */, | 134 | + 97C146EE1CF9000F007C117D /* Runner.app */, |
| 135 | ); | 135 | ); |
| 136 | name = Products; | 136 | name = Products; |
| 137 | sourceTree = "<group>"; | 137 | sourceTree = "<group>"; |
| @@ -185,7 +185,7 @@ | @@ -185,7 +185,7 @@ | ||
| 185 | ); | 185 | ); |
| 186 | name = Runner; | 186 | name = Runner; |
| 187 | productName = Runner; | 187 | productName = Runner; |
| 188 | - productReference = 97C146EE1CF9000F007C117D /* 一键订.app */; | 188 | + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; |
| 189 | productType = "com.apple.product-type.application"; | 189 | productType = "com.apple.product-type.application"; |
| 190 | }; | 190 | }; |
| 191 | /* End PBXNativeTarget section */ | 191 | /* End PBXNativeTarget section */ |
| @@ -474,7 +474,7 @@ | @@ -474,7 +474,7 @@ | ||
| 474 | CODE_SIGN_IDENTITY = "iPhone Developer"; | 474 | CODE_SIGN_IDENTITY = "iPhone Developer"; |
| 475 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; | 475 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
| 476 | CODE_SIGN_STYLE = Automatic; | 476 | CODE_SIGN_STYLE = Automatic; |
| 477 | - CURRENT_PROJECT_VERSION = 222; | 477 | + CURRENT_PROJECT_VERSION = 223; |
| 478 | DEVELOPMENT_TEAM = 8J59HM8B82; | 478 | DEVELOPMENT_TEAM = 8J59HM8B82; |
| 479 | ENABLE_BITCODE = NO; | 479 | ENABLE_BITCODE = NO; |
| 480 | FRAMEWORK_SEARCH_PATHS = ( | 480 | FRAMEWORK_SEARCH_PATHS = ( |
| @@ -487,9 +487,9 @@ | @@ -487,9 +487,9 @@ | ||
| 487 | "$(inherited)", | 487 | "$(inherited)", |
| 488 | "$(PROJECT_DIR)/Flutter", | 488 | "$(PROJECT_DIR)/Flutter", |
| 489 | ); | 489 | ); |
| 490 | - MARKETING_VERSION = 2.2.2; | 490 | + MARKETING_VERSION = 2.2.5; |
| 491 | PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; | 491 | PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; |
| 492 | - PRODUCT_NAME = "一键订"; | 492 | + PRODUCT_NAME = Runner; |
| 493 | PROVISIONING_PROFILE_SPECIFIER = ""; | 493 | PROVISIONING_PROFILE_SPECIFIER = ""; |
| 494 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | 494 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
| 495 | SWIFT_VERSION = 5.0; | 495 | SWIFT_VERSION = 5.0; |
| @@ -616,7 +616,7 @@ | @@ -616,7 +616,7 @@ | ||
| 616 | CODE_SIGN_ENTITLEMENTS = "Runner/一键订Debug.entitlements"; | 616 | CODE_SIGN_ENTITLEMENTS = "Runner/一键订Debug.entitlements"; |
| 617 | CODE_SIGN_IDENTITY = "iPhone Developer"; | 617 | CODE_SIGN_IDENTITY = "iPhone Developer"; |
| 618 | CODE_SIGN_STYLE = Automatic; | 618 | CODE_SIGN_STYLE = Automatic; |
| 619 | - CURRENT_PROJECT_VERSION = 222; | 619 | + CURRENT_PROJECT_VERSION = 223; |
| 620 | DEVELOPMENT_TEAM = 8J59HM8B82; | 620 | DEVELOPMENT_TEAM = 8J59HM8B82; |
| 621 | ENABLE_BITCODE = NO; | 621 | ENABLE_BITCODE = NO; |
| 622 | FRAMEWORK_SEARCH_PATHS = ( | 622 | FRAMEWORK_SEARCH_PATHS = ( |
| @@ -629,9 +629,9 @@ | @@ -629,9 +629,9 @@ | ||
| 629 | "$(inherited)", | 629 | "$(inherited)", |
| 630 | "$(PROJECT_DIR)/Flutter", | 630 | "$(PROJECT_DIR)/Flutter", |
| 631 | ); | 631 | ); |
| 632 | - MARKETING_VERSION = 2.2.2; | 632 | + MARKETING_VERSION = 2.2.5; |
| 633 | PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; | 633 | PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; |
| 634 | - PRODUCT_NAME = "一键订"; | 634 | + PRODUCT_NAME = Runner; |
| 635 | PROVISIONING_PROFILE_SPECIFIER = ""; | 635 | PROVISIONING_PROFILE_SPECIFIER = ""; |
| 636 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | 636 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
| 637 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | 637 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; |
| @@ -649,7 +649,7 @@ | @@ -649,7 +649,7 @@ | ||
| 649 | CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; | 649 | CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; |
| 650 | CODE_SIGN_IDENTITY = "iPhone Developer"; | 650 | CODE_SIGN_IDENTITY = "iPhone Developer"; |
| 651 | CODE_SIGN_STYLE = Automatic; | 651 | CODE_SIGN_STYLE = Automatic; |
| 652 | - CURRENT_PROJECT_VERSION = 222; | 652 | + CURRENT_PROJECT_VERSION = 223; |
| 653 | DEVELOPMENT_TEAM = 8J59HM8B82; | 653 | DEVELOPMENT_TEAM = 8J59HM8B82; |
| 654 | ENABLE_BITCODE = NO; | 654 | ENABLE_BITCODE = NO; |
| 655 | FRAMEWORK_SEARCH_PATHS = ( | 655 | FRAMEWORK_SEARCH_PATHS = ( |
| @@ -662,9 +662,9 @@ | @@ -662,9 +662,9 @@ | ||
| 662 | "$(inherited)", | 662 | "$(inherited)", |
| 663 | "$(PROJECT_DIR)/Flutter", | 663 | "$(PROJECT_DIR)/Flutter", |
| 664 | ); | 664 | ); |
| 665 | - MARKETING_VERSION = 2.2.2; | 665 | + MARKETING_VERSION = 2.2.5; |
| 666 | PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; | 666 | PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; |
| 667 | - PRODUCT_NAME = "一键订"; | 667 | + PRODUCT_NAME = Runner; |
| 668 | PROVISIONING_PROFILE_SPECIFIER = ""; | 668 | PROVISIONING_PROFILE_SPECIFIER = ""; |
| 669 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | 669 | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
| 670 | SWIFT_VERSION = 5.0; | 670 | SWIFT_VERSION = 5.0; |
| @@ -15,7 +15,7 @@ | @@ -15,7 +15,7 @@ | ||
| 15 | <BuildableReference | 15 | <BuildableReference |
| 16 | BuildableIdentifier = "primary" | 16 | BuildableIdentifier = "primary" |
| 17 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" | 17 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
| 18 | - BuildableName = "一键订.app" | 18 | + BuildableName = "Runner.app" |
| 19 | BlueprintName = "Runner" | 19 | BlueprintName = "Runner" |
| 20 | ReferencedContainer = "container:Runner.xcodeproj"> | 20 | ReferencedContainer = "container:Runner.xcodeproj"> |
| 21 | </BuildableReference> | 21 | </BuildableReference> |
| @@ -31,7 +31,7 @@ | @@ -31,7 +31,7 @@ | ||
| 31 | <BuildableReference | 31 | <BuildableReference |
| 32 | BuildableIdentifier = "primary" | 32 | BuildableIdentifier = "primary" |
| 33 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" | 33 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
| 34 | - BuildableName = "一键订.app" | 34 | + BuildableName = "Runner.app" |
| 35 | BlueprintName = "Runner" | 35 | BlueprintName = "Runner" |
| 36 | ReferencedContainer = "container:Runner.xcodeproj"> | 36 | ReferencedContainer = "container:Runner.xcodeproj"> |
| 37 | </BuildableReference> | 37 | </BuildableReference> |
| @@ -54,7 +54,7 @@ | @@ -54,7 +54,7 @@ | ||
| 54 | <BuildableReference | 54 | <BuildableReference |
| 55 | BuildableIdentifier = "primary" | 55 | BuildableIdentifier = "primary" |
| 56 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" | 56 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
| 57 | - BuildableName = "一键订.app" | 57 | + BuildableName = "Runner.app" |
| 58 | BlueprintName = "Runner" | 58 | BlueprintName = "Runner" |
| 59 | ReferencedContainer = "container:Runner.xcodeproj"> | 59 | ReferencedContainer = "container:Runner.xcodeproj"> |
| 60 | </BuildableReference> | 60 | </BuildableReference> |
| @@ -71,7 +71,7 @@ | @@ -71,7 +71,7 @@ | ||
| 71 | <BuildableReference | 71 | <BuildableReference |
| 72 | BuildableIdentifier = "primary" | 72 | BuildableIdentifier = "primary" |
| 73 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" | 73 | BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
| 74 | - BuildableName = "一键订.app" | 74 | + BuildableName = "Runner.app" |
| 75 | BlueprintName = "Runner" | 75 | BlueprintName = "Runner" |
| 76 | ReferencedContainer = "container:Runner.xcodeproj"> | 76 | ReferencedContainer = "container:Runner.xcodeproj"> |
| 77 | </BuildableReference> | 77 | </BuildableReference> |
| @@ -5,7 +5,7 @@ | @@ -5,7 +5,7 @@ | ||
| 5 | <key>CFBundleDevelopmentRegion</key> | 5 | <key>CFBundleDevelopmentRegion</key> |
| 6 | <string>$(DEVELOPMENT_LANGUAGE)</string> | 6 | <string>$(DEVELOPMENT_LANGUAGE)</string> |
| 7 | <key>CFBundleDisplayName</key> | 7 | <key>CFBundleDisplayName</key> |
| 8 | - <string>$(PRODUCT_NAME)</string> | 8 | + <string>一键订</string> |
| 9 | <key>CFBundleExecutable</key> | 9 | <key>CFBundleExecutable</key> |
| 10 | <string>$(EXECUTABLE_NAME)</string> | 10 | <string>$(EXECUTABLE_NAME)</string> |
| 11 | <key>CFBundleIdentifier</key> | 11 | <key>CFBundleIdentifier</key> |
| @@ -35,6 +35,26 @@ import 'provider/user_model.dart'; | @@ -35,6 +35,26 @@ import 'provider/user_model.dart'; | ||
| 35 | import 'route/navigate_service.dart'; | 35 | import 'route/navigate_service.dart'; |
| 36 | import 'route/routes.dart'; | 36 | import 'route/routes.dart'; |
| 37 | import 'package:flutter/services.dart'; | 37 | import 'package:flutter/services.dart'; |
| 38 | +import 'package:flutter/material.dart'; | ||
| 39 | +import 'package:flutter/services.dart'; | ||
| 40 | +import 'package:permission_handler/permission_handler.dart'; | ||
| 41 | + | ||
| 42 | +Future<bool> _requestPermissions() async { | ||
| 43 | + Map<PermissionGroup, PermissionStatus> permissions = | ||
| 44 | + await PermissionHandler().requestPermissions([ | ||
| 45 | + PermissionGroup.photos, | ||
| 46 | + PermissionGroup.location, | ||
| 47 | + PermissionGroup.camera, | ||
| 48 | + PermissionGroup.contacts, | ||
| 49 | + PermissionGroup.storage, | ||
| 50 | + PermissionGroup.notification | ||
| 51 | + ]); | ||
| 52 | + | ||
| 53 | + List<bool> results = permissions.values.toList().map((status) { | ||
| 54 | + return status == PermissionStatus.granted; | ||
| 55 | + }).toList(); | ||
| 56 | + print(results.toString()); | ||
| 57 | +} | ||
| 38 | 58 | ||
| 39 | Future<void> main() async { | 59 | Future<void> main() async { |
| 40 | FlutterBugly.postCatchedException(() async { | 60 | FlutterBugly.postCatchedException(() async { |
| @@ -46,6 +66,7 @@ Future<void> main() async { | @@ -46,6 +66,7 @@ Future<void> main() async { | ||
| 46 | LogUtil.init(isDebug: true, tag: 'ONE_KEY'); | 66 | LogUtil.init(isDebug: true, tag: 'ONE_KEY'); |
| 47 | Provider.debugCheckInvalidValueType = null; | 67 | Provider.debugCheckInvalidValueType = null; |
| 48 | await initializeDateFormatting(); | 68 | await initializeDateFormatting(); |
| 69 | + _requestPermissions(); | ||
| 49 | Utils.changeStatusColor(); | 70 | Utils.changeStatusColor(); |
| 50 | SystemChrome.setPreferredOrientations( | 71 | SystemChrome.setPreferredOrientations( |
| 51 | [DeviceOrientation.portraitUp, DeviceOrientation.portraitDown]) | 72 | [DeviceOrientation.portraitUp, DeviceOrientation.portraitDown]) |
| @@ -121,16 +121,16 @@ class _CompleteCreateStorePageState extends State<CompleteCreateStorePage> { | @@ -121,16 +121,16 @@ class _CompleteCreateStorePageState extends State<CompleteCreateStorePage> { | ||
| 121 | color: MyColours.color_333333), | 121 | color: MyColours.color_333333), |
| 122 | ), | 122 | ), |
| 123 | VEmptyView(220), | 123 | VEmptyView(220), |
| 124 | - RoundButton( | ||
| 125 | - radius: ScreenUtil().setWidth(10), | ||
| 126 | - text: '继续创建桌位', | ||
| 127 | - fontSize: 34, | ||
| 128 | - gradientStart: MyColours.color_2AB5B7, | ||
| 129 | - gradientEnd: MyColours.color_2AB5B7, | ||
| 130 | - onPressed: () {}, | ||
| 131 | - isBold: false, | ||
| 132 | - ), | ||
| 133 | - VEmptyView(20), | 124 | + // RoundButton( |
| 125 | + // radius: ScreenUtil().setWidth(10), | ||
| 126 | + // text: '继续创建桌位', | ||
| 127 | + // fontSize: 34, | ||
| 128 | + // gradientStart: MyColours.color_2AB5B7, | ||
| 129 | + // gradientEnd: MyColours.color_2AB5B7, | ||
| 130 | + // onPressed: () {}, | ||
| 131 | + // isBold: false, | ||
| 132 | + // ), | ||
| 133 | + // VEmptyView(20), | ||
| 134 | RoundButton( | 134 | RoundButton( |
| 135 | radius: ScreenUtil().setWidth(10), | 135 | radius: ScreenUtil().setWidth(10), |
| 136 | text: '进入店铺', | 136 | text: '进入店铺', |
| @@ -22,10 +22,7 @@ class EnterStoreEnvironmentPage extends StatefulWidget { | @@ -22,10 +22,7 @@ class EnterStoreEnvironmentPage extends StatefulWidget { | ||
| 22 | _EnterStoreEnvironmentPageState(); | 22 | _EnterStoreEnvironmentPageState(); |
| 23 | } | 23 | } |
| 24 | 24 | ||
| 25 | -class _EnterStoreEnvironmentPageState extends State<EnterStoreEnvironmentPage> | ||
| 26 | - with AutomaticKeepAliveClientMixin { | ||
| 27 | - @override | ||
| 28 | - bool get wantKeepAlive => true; | 25 | +class _EnterStoreEnvironmentPageState extends State<EnterStoreEnvironmentPage> { |
| 29 | ScrollController _controller = ScrollController(); | 26 | ScrollController _controller = ScrollController(); |
| 30 | 27 | ||
| 31 | @override | 28 | @override |
| @@ -68,7 +68,7 @@ class _MapChoicePointPageState extends State<MapChoicePointPage> { | @@ -68,7 +68,7 @@ class _MapChoicePointPageState extends State<MapChoicePointPage> { | ||
| 68 | @override | 68 | @override |
| 69 | Widget build(BuildContext context) { | 69 | Widget build(BuildContext context) { |
| 70 | return Scaffold( | 70 | return Scaffold( |
| 71 | - resizeToAvoidBottomPadding: false, //防止底部布局被顶起 | 71 | + resizeToAvoidBottomInset: false, //防止底部布局被顶起 |
| 72 | appBar: SystemAppBar( | 72 | appBar: SystemAppBar( |
| 73 | '选择位置信息', | 73 | '选择位置信息', |
| 74 | onTap: () { | 74 | onTap: () { |
| @@ -131,7 +131,7 @@ class InvicationPageState extends State<InvicationPage> { | @@ -131,7 +131,7 @@ class InvicationPageState extends State<InvicationPage> { | ||
| 131 | 131 | ||
| 132 | if (couponProvider.coupons.length == 0) { | 132 | if (couponProvider.coupons.length == 0) { |
| 133 | setState(() { | 133 | setState(() { |
| 134 | - couponHeight = 0; | 134 | + couponHeight = 0.0; |
| 135 | }); | 135 | }); |
| 136 | } else { | 136 | } else { |
| 137 | setState(() { | 137 | setState(() { |
| @@ -141,7 +141,7 @@ class InvicationPageState extends State<InvicationPage> { | @@ -141,7 +141,7 @@ class InvicationPageState extends State<InvicationPage> { | ||
| 141 | } else { | 141 | } else { |
| 142 | //没有新建的优惠券 | 142 | //没有新建的优惠券 |
| 143 | setState(() { | 143 | setState(() { |
| 144 | - couponHeight = 0; | 144 | + couponHeight = 0.0; |
| 145 | }); | 145 | }); |
| 146 | } | 146 | } |
| 147 | } | 147 | } |
| @@ -287,8 +287,7 @@ class InvicationPageState extends State<InvicationPage> { | @@ -287,8 +287,7 @@ class InvicationPageState extends State<InvicationPage> { | ||
| 287 | ), | 287 | ), |
| 288 | child: Scaffold( | 288 | child: Scaffold( |
| 289 | backgroundColor: Colors.transparent, | 289 | backgroundColor: Colors.transparent, |
| 290 | - body: SafeArea( | ||
| 291 | - child: Stack( | 290 | + body: Stack( |
| 292 | children: [ | 291 | children: [ |
| 293 | Container( | 292 | Container( |
| 294 | margin: EdgeInsets.only(top: ScreenUtil().setWidth(13 * 2)), | 293 | margin: EdgeInsets.only(top: ScreenUtil().setWidth(13 * 2)), |
| @@ -888,7 +887,8 @@ class InvicationPageState extends State<InvicationPage> { | @@ -888,7 +887,8 @@ class InvicationPageState extends State<InvicationPage> { | ||
| 888 | Positioned( | 887 | Positioned( |
| 889 | left: ScreenUtil().setWidth(0), | 888 | left: ScreenUtil().setWidth(0), |
| 890 | top: ScreenUtil().setWidth(0), | 889 | top: ScreenUtil().setWidth(0), |
| 891 | - child: GestureDetector( | 890 | + child: SafeArea( |
| 891 | + child: GestureDetector( | ||
| 892 | onTap: () { | 892 | onTap: () { |
| 893 | Navigator.of(context).pop(); | 893 | Navigator.of(context).pop(); |
| 894 | }, | 894 | }, |
| @@ -906,7 +906,7 @@ class InvicationPageState extends State<InvicationPage> { | @@ -906,7 +906,7 @@ class InvicationPageState extends State<InvicationPage> { | ||
| 906 | width: ScreenUtil().setWidth(20), | 906 | width: ScreenUtil().setWidth(20), |
| 907 | height: ScreenUtil().setHeight(31), | 907 | height: ScreenUtil().setHeight(31), |
| 908 | )), | 908 | )), |
| 909 | - ), | 909 | + )), |
| 910 | ), | 910 | ), |
| 911 | Positioned( | 911 | Positioned( |
| 912 | // left: ScreenUtil().setWidth(180), | 912 | // left: ScreenUtil().setWidth(180), |
| @@ -974,6 +974,6 @@ class InvicationPageState extends State<InvicationPage> { | @@ -974,6 +974,6 @@ class InvicationPageState extends State<InvicationPage> { | ||
| 974 | : Container(), | 974 | : Container(), |
| 975 | ) | 975 | ) |
| 976 | ], | 976 | ], |
| 977 | - )))); | 977 | + ))); |
| 978 | } | 978 | } |
| 979 | } | 979 | } |
| @@ -91,7 +91,7 @@ class _IfNeedCreateStoreState extends State<IfNeedCreateStore> { | @@ -91,7 +91,7 @@ class _IfNeedCreateStoreState extends State<IfNeedCreateStore> { | ||
| 91 | '', | 91 | '', |
| 92 | // leftTitle: '上一步', | 92 | // leftTitle: '上一步', |
| 93 | onTap: () { | 93 | onTap: () { |
| 94 | - Navigator.pop(context); | 94 | + Navigator.of(context).pop(); |
| 95 | }, | 95 | }, |
| 96 | ), | 96 | ), |
| 97 | body: Container( | 97 | body: Container( |
| @@ -17,10 +17,12 @@ import 'package:one_key/provider/create_store_model.dart'; | @@ -17,10 +17,12 @@ import 'package:one_key/provider/create_store_model.dart'; | ||
| 17 | import 'package:one_key/provider/other_login_provider.dart'; | 17 | import 'package:one_key/provider/other_login_provider.dart'; |
| 18 | import 'package:one_key/provider/user_model.dart'; | 18 | import 'package:one_key/provider/user_model.dart'; |
| 19 | import 'package:one_key/res/colors.dart'; | 19 | import 'package:one_key/res/colors.dart'; |
| 20 | +import 'package:one_key/route/navigate_service.dart'; | ||
| 20 | import 'package:one_key/utils/navigator_util.dart'; | 21 | import 'package:one_key/utils/navigator_util.dart'; |
| 21 | import 'package:one_key/utils/utils.dart'; | 22 | import 'package:one_key/utils/utils.dart'; |
| 22 | import 'package:one_key/widgets/MyDivider.dart'; | 23 | import 'package:one_key/widgets/MyDivider.dart'; |
| 23 | import 'package:one_key/widgets/h_empty_view.dart'; | 24 | import 'package:one_key/widgets/h_empty_view.dart'; |
| 25 | +import 'package:one_key/widgets/loading.dart'; | ||
| 24 | import 'package:one_key/widgets/round_button.dart'; | 26 | import 'package:one_key/widgets/round_button.dart'; |
| 25 | import 'package:one_key/widgets/v_empty_view.dart'; | 27 | import 'package:one_key/widgets/v_empty_view.dart'; |
| 26 | import 'package:provider/provider.dart'; | 28 | import 'package:provider/provider.dart'; |
| @@ -50,7 +52,7 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | @@ -50,7 +52,7 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | ||
| 50 | String errorText = ""; //错误提示 | 52 | String errorText = ""; //错误提示 |
| 51 | 53 | ||
| 52 | bool _check = true; | 54 | bool _check = true; |
| 53 | - StreamSubscription<BaseWeChatResponse> _wxlogin; | 55 | + StreamSubscription<BaseWeChatResponse> streamSubscription; |
| 54 | OtherLoginProvider otherLoginProvider; | 56 | OtherLoginProvider otherLoginProvider; |
| 55 | CreateStoreModel createStoreModel; | 57 | CreateStoreModel createStoreModel; |
| 56 | 58 | ||
| @@ -58,7 +60,7 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | @@ -58,7 +60,7 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | ||
| 58 | void initState() { | 60 | void initState() { |
| 59 | // TODO: implement initState | 61 | // TODO: implement initState |
| 60 | super.initState(); | 62 | super.initState(); |
| 61 | - _initFluwx(); | 63 | + _checkWechat(); |
| 62 | isLogin(); | 64 | isLogin(); |
| 63 | WidgetsBinding.instance.addObserver(this); | 65 | WidgetsBinding.instance.addObserver(this); |
| 64 | WidgetsBinding.instance.addPostFrameCallback((_) { | 66 | WidgetsBinding.instance.addPostFrameCallback((_) { |
| @@ -74,13 +76,23 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | @@ -74,13 +76,23 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | ||
| 74 | }); | 76 | }); |
| 75 | } | 77 | } |
| 76 | 78 | ||
| 77 | - //初始化微信SDK | ||
| 78 | - _initFluwx() async { | ||
| 79 | - await registerWxApi( | ||
| 80 | - appId: "wx85aa3cdd0f791e65", | ||
| 81 | - doOnAndroid: true, | ||
| 82 | - doOnIOS: true, | ||
| 83 | - universalLink: "https://xt04.colorcun.com/link/OneKey/"); | 79 | + //当页面离开时要清除监听器 |
| 80 | + @override | ||
| 81 | + void dispose() { | ||
| 82 | + super.dispose(); | ||
| 83 | + WidgetsBinding.instance.removeObserver(this); | ||
| 84 | + if (streamSubscription != null) { | ||
| 85 | + streamSubscription.cancel(); | ||
| 86 | + } | ||
| 87 | + } | ||
| 88 | + | ||
| 89 | + //微信是否安装 | ||
| 90 | + _checkWechat() async { | ||
| 91 | + // await registerWxApi( | ||
| 92 | + // appId: "wx85aa3cdd0f791e65", | ||
| 93 | + // doOnAndroid: true, | ||
| 94 | + // doOnIOS: true, | ||
| 95 | + // universalLink: "https://xt04.colorcun.com/link/OneKey/"); | ||
| 84 | var result = await isWeChatInstalled; | 96 | var result = await isWeChatInstalled; |
| 85 | if (result != null && result) { | 97 | if (result != null && result) { |
| 86 | App.isInstallWx = true; | 98 | App.isInstallWx = true; |
| @@ -102,13 +114,6 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | @@ -102,13 +114,6 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | ||
| 102 | super.didChangeDependencies(); | 114 | super.didChangeDependencies(); |
| 103 | } | 115 | } |
| 104 | 116 | ||
| 105 | - @override | ||
| 106 | - void dispose() { | ||
| 107 | - // TODO: implement dispose | ||
| 108 | - WidgetsBinding.instance.removeObserver(this); | ||
| 109 | - super.dispose(); | ||
| 110 | - } | ||
| 111 | - | ||
| 112 | //监听输入框,设置登录按钮状态 | 117 | //监听输入框,设置登录按钮状态 |
| 113 | setActivate() { | 118 | setActivate() { |
| 114 | if (_sellerCodeController.text.isNotEmpty && | 119 | if (_sellerCodeController.text.isNotEmpty && |
| @@ -148,11 +153,12 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | @@ -148,11 +153,12 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | ||
| 148 | 153 | ||
| 149 | ///获取微信登录code | 154 | ///获取微信登录code |
| 150 | _getWxCode() { | 155 | _getWxCode() { |
| 151 | - _wxlogin = fluwx.weChatResponseEventHandler | 156 | + streamSubscription = fluwx.weChatResponseEventHandler |
| 152 | .distinct((a, b) => a == b) | 157 | .distinct((a, b) => a == b) |
| 153 | .listen((res) { | 158 | .listen((res) { |
| 154 | if (res is fluwx.WeChatAuthResponse && res.errCode == 0) { | 159 | if (res is fluwx.WeChatAuthResponse && res.errCode == 0) { |
| 155 | LogUtil.v("code:" + res.code); | 160 | LogUtil.v("code:" + res.code); |
| 161 | + // Loading.showLoading(context); | ||
| 156 | _getAccessToken(res.code); | 162 | _getAccessToken(res.code); |
| 157 | } else { | 163 | } else { |
| 158 | // Utils.showToast(res.errStr??"登录失败,请稍后重试"); | 164 | // Utils.showToast(res.errStr??"登录失败,请稍后重试"); |
| @@ -167,7 +173,8 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | @@ -167,7 +173,8 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | ||
| 167 | LogUtil.v("access_token:${response.toString()}"); | 173 | LogUtil.v("access_token:${response.toString()}"); |
| 168 | Map<String, dynamic> responseData = json.decode(response.data.toString()); | 174 | Map<String, dynamic> responseData = json.decode(response.data.toString()); |
| 169 | if (responseData["errcode"] != null) { | 175 | if (responseData["errcode"] != null) { |
| 170 | -// Utils.showToast(responseData["errmsg"]??"登录,请稍后重试"); | 176 | + Utils.showToast(responseData["errmsg"] ?? "登录,请稍后重试"); |
| 177 | + // Loading.hideLoading(context); | ||
| 171 | } else { | 178 | } else { |
| 172 | App.sp.setString("openid", responseData["openid"]); | 179 | App.sp.setString("openid", responseData["openid"]); |
| 173 | App.sp.setString("unionid", responseData["unionid"]); | 180 | App.sp.setString("unionid", responseData["unionid"]); |
| @@ -179,9 +186,11 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | @@ -179,9 +186,11 @@ class LoginState extends State<LoginPage> with WidgetsBindingObserver { | ||
| 179 | Map<String, String> params = { | 186 | Map<String, String> params = { |
| 180 | "unionid": responseData["unionid"], | 187 | "unionid": responseData["unionid"], |
| 181 | }; | 188 | }; |
| 182 | - | 189 | + BuildContext contextTemp = |
| 190 | + App.getIt<NavigateService>().key.currentState.overlay.context; | ||
| 183 | CheckbindPhoneSunModel model = | 191 | CheckbindPhoneSunModel model = |
| 184 | - await otherLoginProvider.checkbindPhone(context, params); | 192 | + await otherLoginProvider.checkbindPhone(contextTemp, params); |
| 193 | + // Loading.hideLoading(context); | ||
| 185 | if (model != null) { | 194 | if (model != null) { |
| 186 | createStoreModel.storeInfo = StoreInfo(); | 195 | createStoreModel.storeInfo = StoreInfo(); |
| 187 | createStoreModel.storeInfo.phone = model.phone; | 196 | createStoreModel.storeInfo.phone = model.phone; |
| @@ -48,9 +48,11 @@ class MessageOnlineCheckPageState extends State<MessageOnlineCheckPage> { | @@ -48,9 +48,11 @@ class MessageOnlineCheckPageState extends State<MessageOnlineCheckPage> { | ||
| 48 | _controller = EasyRefreshController(); | 48 | _controller = EasyRefreshController(); |
| 49 | WidgetsBinding.instance.addPostFrameCallback((_) { | 49 | WidgetsBinding.instance.addPostFrameCallback((_) { |
| 50 | // getMessage(); | 50 | // getMessage(); |
| 51 | - setState(() { | ||
| 52 | - messageModel.pageState = PageState.Loading; | ||
| 53 | - }); | 51 | + // setState(() { |
| 52 | + // messageModel.pageState = PageState.Loading; | ||
| 53 | + // }); | ||
| 54 | + messageModel.pageState = PageState.Loading; | ||
| 55 | + messageModel.notifyListeners(); | ||
| 54 | }); | 56 | }); |
| 55 | } | 57 | } |
| 56 | 58 | ||
| @@ -153,7 +155,7 @@ class MessageOnlineCheckPageState extends State<MessageOnlineCheckPage> { | @@ -153,7 +155,7 @@ class MessageOnlineCheckPageState extends State<MessageOnlineCheckPage> { | ||
| 153 | getMessage(showLoading: true); | 155 | getMessage(showLoading: true); |
| 154 | }, | 156 | }, |
| 155 | emptyMsg: | 157 | emptyMsg: |
| 156 | - "暂时没有${selectedIndex == 0 ? '未处理' : '已处理'}的在线预订消息哦", | 158 | + "暂时没有${selectedIndex == 0 ? '未处理' : '已处理'}的在线买单消息哦", |
| 157 | emptyImg: "empty_search", | 159 | emptyImg: "empty_search", |
| 158 | showMsg: "加载中,请稍后...", | 160 | showMsg: "加载中,请稍后...", |
| 159 | ); | 161 | ); |
| @@ -46,11 +46,14 @@ class MessageOnlinePageState extends State<MessageOnlinePage> { | @@ -46,11 +46,14 @@ class MessageOnlinePageState extends State<MessageOnlinePage> { | ||
| 46 | // messageDialogModel.removeMessage(args.toString()); | 46 | // messageDialogModel.removeMessage(args.toString()); |
| 47 | // }); | 47 | // }); |
| 48 | _controller = EasyRefreshController(); | 48 | _controller = EasyRefreshController(); |
| 49 | + // messageModel.pageState = PageState.Loading; | ||
| 49 | WidgetsBinding.instance.addPostFrameCallback((_) { | 50 | WidgetsBinding.instance.addPostFrameCallback((_) { |
| 50 | // getMessage(); | 51 | // getMessage(); |
| 51 | - setState(() { | ||
| 52 | - messageModel.pageState = PageState.Loading; | ||
| 53 | - }); | 52 | + // setState(() { |
| 53 | + // messageModel.pageState = PageState.Loading; | ||
| 54 | + // }); | ||
| 55 | + messageModel.pageState = PageState.Loading; | ||
| 56 | + messageModel.notifyListeners(); | ||
| 54 | }); | 57 | }); |
| 55 | } | 58 | } |
| 56 | 59 |
| @@ -43,11 +43,14 @@ class MessageOrderPageState extends State<MessageOrderPage> { | @@ -43,11 +43,14 @@ class MessageOrderPageState extends State<MessageOrderPage> { | ||
| 43 | // TODO: implement initState | 43 | // TODO: implement initState |
| 44 | super.initState(); | 44 | super.initState(); |
| 45 | _controller = EasyRefreshController(); | 45 | _controller = EasyRefreshController(); |
| 46 | + // messageModel.pageState = PageState.Loading; | ||
| 46 | WidgetsBinding.instance.addPostFrameCallback((_) { | 47 | WidgetsBinding.instance.addPostFrameCallback((_) { |
| 47 | // getMessages(); | 48 | // getMessages(); |
| 48 | - setState(() { | ||
| 49 | - messageModel.pageState = PageState.Loading; | ||
| 50 | - }); | 49 | + // setState(() { |
| 50 | + // messageModel.pageState = PageState.Loading; | ||
| 51 | + // }); | ||
| 52 | + messageModel.pageState = PageState.Loading; | ||
| 53 | + messageModel.notifyListeners(); | ||
| 51 | }); | 54 | }); |
| 52 | //从列表数据本地移除提前点餐消息 | 55 | //从列表数据本地移除提前点餐消息 |
| 53 | // bus.on("remove_untreated_message_order", (args) { | 56 | // bus.on("remove_untreated_message_order", (args) { |
| @@ -61,8 +61,10 @@ class MessagePageState extends State<MessagePage> | @@ -61,8 +61,10 @@ class MessagePageState extends State<MessagePage> | ||
| 61 | 61 | ||
| 62 | //三种分类各自的未读消息数目 | 62 | //三种分类各自的未读消息数目 |
| 63 | _getUnMsgNum() async { | 63 | _getUnMsgNum() async { |
| 64 | - Map<String, String> params = {"sid": userModel.user.sellerid}; | ||
| 65 | - await messageModel.getUnMsgNum(context, params); | 64 | + if (mounted) { |
| 65 | + Map<String, String> params = {"sid": userModel.user.sellerid}; | ||
| 66 | + await messageModel.getUnMsgNum(context, params); | ||
| 67 | + } | ||
| 66 | } | 68 | } |
| 67 | 69 | ||
| 68 | //获取在线预订消息status 0未处理 1已处理 | 70 | //获取在线预订消息status 0未处理 1已处理 |
| @@ -47,14 +47,16 @@ class NoteBookPageState extends State<NoteBookPage> { | @@ -47,14 +47,16 @@ class NoteBookPageState extends State<NoteBookPage> { | ||
| 47 | // TODO: implement initState | 47 | // TODO: implement initState |
| 48 | super.initState(); | 48 | super.initState(); |
| 49 | LogUtil.v("notebook_page initState"); | 49 | LogUtil.v("notebook_page initState"); |
| 50 | - userModel = Provider.of<UserModel>(context, listen: false); | 50 | + |
| 51 | _controller = EasyRefreshController(); | 51 | _controller = EasyRefreshController(); |
| 52 | - _initTime(); | 52 | + // _initTime(); |
| 53 | bus.on("refresh_book_list", (args) { | 53 | bus.on("refresh_book_list", (args) { |
| 54 | _getReserveList(); | 54 | _getReserveList(); |
| 55 | }); | 55 | }); |
| 56 | 56 | ||
| 57 | WidgetsBinding.instance.addPostFrameCallback((_) { | 57 | WidgetsBinding.instance.addPostFrameCallback((_) { |
| 58 | + _initTime(); | ||
| 59 | + setState(() {}); | ||
| 58 | _getReserveList(); | 60 | _getReserveList(); |
| 59 | _reserveCountDay(); | 61 | _reserveCountDay(); |
| 60 | }); | 62 | }); |
| @@ -398,6 +400,7 @@ class NoteBookPageState extends State<NoteBookPage> { | @@ -398,6 +400,7 @@ class NoteBookPageState extends State<NoteBookPage> { | ||
| 398 | @override | 400 | @override |
| 399 | Widget build(BuildContext context) { | 401 | Widget build(BuildContext context) { |
| 400 | // TODO: implement build | 402 | // TODO: implement build |
| 403 | + userModel = Provider.of<UserModel>(context, listen: false); | ||
| 401 | return Container( | 404 | return Container( |
| 402 | width: double.infinity, | 405 | width: double.infinity, |
| 403 | height: double.infinity, | 406 | height: double.infinity, |
| @@ -49,9 +49,11 @@ class OtherLoginProvider extends ChangeNotifier { | @@ -49,9 +49,11 @@ class OtherLoginProvider extends ChangeNotifier { | ||
| 49 | BaseResp<dynamic> baseResp = await DioUtil() | 49 | BaseResp<dynamic> baseResp = await DioUtil() |
| 50 | .request<dynamic>(context, Method.get, HttpUrl.check_seller_acc, | 50 | .request<dynamic>(context, Method.get, HttpUrl.check_seller_acc, |
| 51 | data: params, showLoading: showLoading) | 51 | data: params, showLoading: showLoading) |
| 52 | - .catchError((error) {}); | 52 | + .catchError((error) { |
| 53 | + print(error); | ||
| 54 | + }); | ||
| 53 | if (baseResp.code == Constant.status_success) { | 55 | if (baseResp.code == Constant.status_success) { |
| 54 | - if (baseResp.data.isNotEmpty) { | 56 | + if (baseResp.data != null) { |
| 55 | //解析解析 | 57 | //解析解析 |
| 56 | pageState = PageState.Success; | 58 | pageState = PageState.Success; |
| 57 | sellerList = CheckSellerAccModel.fromJson(baseResp.responseData).data; | 59 | sellerList = CheckSellerAccModel.fromJson(baseResp.responseData).data; |
| @@ -291,7 +291,7 @@ class TableManagerModel with ChangeNotifier { | @@ -291,7 +291,7 @@ class TableManagerModel with ChangeNotifier { | ||
| 291 | }; | 291 | }; |
| 292 | pageState = PageState.Loading; | 292 | pageState = PageState.Loading; |
| 293 | notifyListeners(); | 293 | notifyListeners(); |
| 294 | - List<Notebook> noteBooks = await model.getReserveList(context, params); | 294 | + List<Notebook> noteBooks = await newGetReserveList(context, params); |
| 295 | for (Notebook notebook in noteBooks) { | 295 | for (Notebook notebook in noteBooks) { |
| 296 | if (notebook.tid.isEmpty) continue; | 296 | if (notebook.tid.isEmpty) continue; |
| 297 | if (notebook.status == "1" || | 297 | if (notebook.status == "1" || |
| @@ -308,6 +308,40 @@ class TableManagerModel with ChangeNotifier { | @@ -308,6 +308,40 @@ class TableManagerModel with ChangeNotifier { | ||
| 308 | initData(); | 308 | initData(); |
| 309 | } | 309 | } |
| 310 | 310 | ||
| 311 | + //获取已预订订单 | ||
| 312 | + Future<List<Notebook>> newGetReserveList( | ||
| 313 | + BuildContext context, Map<String, String> params) async { | ||
| 314 | + List<Notebook> notebooks = []; | ||
| 315 | + BaseResp<List> baseResp = await DioUtil() | ||
| 316 | + .request<List>(context, Method.get, HttpUrl.get_reserve_list, | ||
| 317 | + data: params, showLoading: false) | ||
| 318 | + .catchError((error) { | ||
| 319 | + print(error.toString()); | ||
| 320 | + if (error is MyError) { | ||
| 321 | + // switch (error.type) { | ||
| 322 | + // case 1: | ||
| 323 | + // pageState = PageState.ConnectivityError; | ||
| 324 | + // break; | ||
| 325 | + // case 2: | ||
| 326 | + // pageState = PageState.ConnectivityTimeOut; | ||
| 327 | + // break; | ||
| 328 | + // default: | ||
| 329 | + // pageState = PageState.ConnectivityError; | ||
| 330 | + // break; | ||
| 331 | + // } | ||
| 332 | + } | ||
| 333 | + }); | ||
| 334 | + if (baseResp == null) return []; | ||
| 335 | + if (baseResp.code == Constant.status_success) { | ||
| 336 | + notebooks = baseResp.data.map<Notebook>((value) { | ||
| 337 | + return Notebook.fromJson(value); | ||
| 338 | + }).toList(); | ||
| 339 | + } else { | ||
| 340 | + Utils.showToast(baseResp.msg ?? ""); | ||
| 341 | + } | ||
| 342 | + return notebooks; | ||
| 343 | + } | ||
| 344 | + | ||
| 311 | //获取一天开始-结束时间字符串 | 345 | //获取一天开始-结束时间字符串 |
| 312 | String _getRdate() { | 346 | String _getRdate() { |
| 313 | //一天开始时间 | 347 | //一天开始时间 |
| @@ -3,13 +3,10 @@ import 'dart:io'; | @@ -3,13 +3,10 @@ import 'dart:io'; | ||
| 3 | 3 | ||
| 4 | import 'package:flutter/material.dart'; | 4 | import 'package:flutter/material.dart'; |
| 5 | import 'package:image_picker/image_picker.dart'; | 5 | import 'package:image_picker/image_picker.dart'; |
| 6 | -import 'package:one_key/models/upload_img_model.dart'; | 6 | + |
| 7 | import 'package:one_key/provider/upload_img_provider.dart'; | 7 | import 'package:one_key/provider/upload_img_provider.dart'; |
| 8 | -import 'package:one_key/res/colors.dart'; | ||
| 9 | -import 'package:one_key/utils/dialog_util.dart'; | ||
| 10 | -import 'package:photo/photo.dart'; | 8 | + |
| 11 | import 'package:qiniu_flutter_sdk/qiniu_flutter_sdk.dart'; | 9 | import 'package:qiniu_flutter_sdk/qiniu_flutter_sdk.dart'; |
| 12 | -import 'package:photo_manager/photo_manager.dart'; | ||
| 13 | 10 | ||
| 14 | enum UploadType { | 11 | enum UploadType { |
| 15 | EnvironmentUploadType, //店铺环境 | 12 | EnvironmentUploadType, //店铺环境 |
| @@ -143,7 +143,7 @@ class Utils { | @@ -143,7 +143,7 @@ class Utils { | ||
| 143 | TextPainter painter = TextPainter( | 143 | TextPainter painter = TextPainter( |
| 144 | 144 | ||
| 145 | ///AUTO:华为手机如果不指定locale的时候,该方法算出来的文字高度是比系统计算偏小的。 | 145 | ///AUTO:华为手机如果不指定locale的时候,该方法算出来的文字高度是比系统计算偏小的。 |
| 146 | - locale: Localizations.localeOf(context, nullOk: true), | 146 | + locale: Localizations.localeOf(context), |
| 147 | maxLines: maxLines, | 147 | maxLines: maxLines, |
| 148 | textDirection: TextDirection.ltr, | 148 | textDirection: TextDirection.ltr, |
| 149 | text: TextSpan( | 149 | text: TextSpan( |
| @@ -49,7 +49,7 @@ packages: | @@ -49,7 +49,7 @@ packages: | ||
| 49 | name: async | 49 | name: async |
| 50 | url: "https://pub.flutter-io.cn" | 50 | url: "https://pub.flutter-io.cn" |
| 51 | source: hosted | 51 | source: hosted |
| 52 | - version: "2.5.0-nullsafety.1" | 52 | + version: "2.5.0" |
| 53 | audioplayers: | 53 | audioplayers: |
| 54 | dependency: "direct main" | 54 | dependency: "direct main" |
| 55 | description: | 55 | description: |
| @@ -63,7 +63,7 @@ packages: | @@ -63,7 +63,7 @@ packages: | ||
| 63 | name: boolean_selector | 63 | name: boolean_selector |
| 64 | url: "https://pub.flutter-io.cn" | 64 | url: "https://pub.flutter-io.cn" |
| 65 | source: hosted | 65 | source: hosted |
| 66 | - version: "2.1.0-nullsafety.1" | 66 | + version: "2.1.0" |
| 67 | build: | 67 | build: |
| 68 | dependency: transitive | 68 | dependency: transitive |
| 69 | description: | 69 | description: |
| @@ -133,14 +133,14 @@ packages: | @@ -133,14 +133,14 @@ packages: | ||
| 133 | name: characters | 133 | name: characters |
| 134 | url: "https://pub.flutter-io.cn" | 134 | url: "https://pub.flutter-io.cn" |
| 135 | source: hosted | 135 | source: hosted |
| 136 | - version: "1.1.0-nullsafety.3" | 136 | + version: "1.1.0" |
| 137 | charcode: | 137 | charcode: |
| 138 | dependency: transitive | 138 | dependency: transitive |
| 139 | description: | 139 | description: |
| 140 | name: charcode | 140 | name: charcode |
| 141 | url: "https://pub.flutter-io.cn" | 141 | url: "https://pub.flutter-io.cn" |
| 142 | source: hosted | 142 | source: hosted |
| 143 | - version: "1.2.0-nullsafety.1" | 143 | + version: "1.2.0" |
| 144 | checked_yaml: | 144 | checked_yaml: |
| 145 | dependency: transitive | 145 | dependency: transitive |
| 146 | description: | 146 | description: |
| @@ -161,7 +161,7 @@ packages: | @@ -161,7 +161,7 @@ packages: | ||
| 161 | name: clock | 161 | name: clock |
| 162 | url: "https://pub.flutter-io.cn" | 162 | url: "https://pub.flutter-io.cn" |
| 163 | source: hosted | 163 | source: hosted |
| 164 | - version: "1.1.0-nullsafety.1" | 164 | + version: "1.1.0" |
| 165 | code_builder: | 165 | code_builder: |
| 166 | dependency: transitive | 166 | dependency: transitive |
| 167 | description: | 167 | description: |
| @@ -175,7 +175,7 @@ packages: | @@ -175,7 +175,7 @@ packages: | ||
| 175 | name: collection | 175 | name: collection |
| 176 | url: "https://pub.flutter-io.cn" | 176 | url: "https://pub.flutter-io.cn" |
| 177 | source: hosted | 177 | source: hosted |
| 178 | - version: "1.15.0-nullsafety.3" | 178 | + version: "1.15.0" |
| 179 | common_utils: | 179 | common_utils: |
| 180 | dependency: "direct main" | 180 | dependency: "direct main" |
| 181 | description: | 181 | description: |
| @@ -308,7 +308,7 @@ packages: | @@ -308,7 +308,7 @@ packages: | ||
| 308 | name: fake_async | 308 | name: fake_async |
| 309 | url: "https://pub.flutter-io.cn" | 309 | url: "https://pub.flutter-io.cn" |
| 310 | source: hosted | 310 | source: hosted |
| 311 | - version: "1.2.0-nullsafety.1" | 311 | + version: "1.2.0" |
| 312 | ffi: | 312 | ffi: |
| 313 | dependency: transitive | 313 | dependency: transitive |
| 314 | description: | 314 | description: |
| @@ -533,7 +533,7 @@ packages: | @@ -533,7 +533,7 @@ packages: | ||
| 533 | name: js | 533 | name: js |
| 534 | url: "https://pub.flutter-io.cn" | 534 | url: "https://pub.flutter-io.cn" |
| 535 | source: hosted | 535 | source: hosted |
| 536 | - version: "0.6.2" | 536 | + version: "0.6.3" |
| 537 | json_annotation: | 537 | json_annotation: |
| 538 | dependency: "direct main" | 538 | dependency: "direct main" |
| 539 | description: | 539 | description: |
| @@ -582,14 +582,14 @@ packages: | @@ -582,14 +582,14 @@ packages: | ||
| 582 | name: matcher | 582 | name: matcher |
| 583 | url: "https://pub.flutter-io.cn" | 583 | url: "https://pub.flutter-io.cn" |
| 584 | source: hosted | 584 | source: hosted |
| 585 | - version: "0.12.10-nullsafety.1" | 585 | + version: "0.12.10" |
| 586 | meta: | 586 | meta: |
| 587 | dependency: transitive | 587 | dependency: transitive |
| 588 | description: | 588 | description: |
| 589 | name: meta | 589 | name: meta |
| 590 | url: "https://pub.flutter-io.cn" | 590 | url: "https://pub.flutter-io.cn" |
| 591 | source: hosted | 591 | source: hosted |
| 592 | - version: "1.3.0-nullsafety.3" | 592 | + version: "1.3.0" |
| 593 | mime: | 593 | mime: |
| 594 | dependency: transitive | 594 | dependency: transitive |
| 595 | description: | 595 | description: |
| @@ -659,7 +659,7 @@ packages: | @@ -659,7 +659,7 @@ packages: | ||
| 659 | name: path | 659 | name: path |
| 660 | url: "https://pub.flutter-io.cn" | 660 | url: "https://pub.flutter-io.cn" |
| 661 | source: hosted | 661 | source: hosted |
| 662 | - version: "1.8.0-nullsafety.1" | 662 | + version: "1.8.0" |
| 663 | path_drawing: | 663 | path_drawing: |
| 664 | dependency: transitive | 664 | dependency: transitive |
| 665 | description: | 665 | description: |
| @@ -930,7 +930,7 @@ packages: | @@ -930,7 +930,7 @@ packages: | ||
| 930 | name: source_span | 930 | name: source_span |
| 931 | url: "https://pub.flutter-io.cn" | 931 | url: "https://pub.flutter-io.cn" |
| 932 | source: hosted | 932 | source: hosted |
| 933 | - version: "1.8.0-nullsafety.2" | 933 | + version: "1.8.0" |
| 934 | sqflite: | 934 | sqflite: |
| 935 | dependency: "direct main" | 935 | dependency: "direct main" |
| 936 | description: | 936 | description: |
| @@ -951,14 +951,14 @@ packages: | @@ -951,14 +951,14 @@ packages: | ||
| 951 | name: stack_trace | 951 | name: stack_trace |
| 952 | url: "https://pub.flutter-io.cn" | 952 | url: "https://pub.flutter-io.cn" |
| 953 | source: hosted | 953 | source: hosted |
| 954 | - version: "1.10.0-nullsafety.1" | 954 | + version: "1.10.0" |
| 955 | stream_channel: | 955 | stream_channel: |
| 956 | dependency: transitive | 956 | dependency: transitive |
| 957 | description: | 957 | description: |
| 958 | name: stream_channel | 958 | name: stream_channel |
| 959 | url: "https://pub.flutter-io.cn" | 959 | url: "https://pub.flutter-io.cn" |
| 960 | source: hosted | 960 | source: hosted |
| 961 | - version: "2.1.0-nullsafety.1" | 961 | + version: "2.1.0" |
| 962 | stream_transform: | 962 | stream_transform: |
| 963 | dependency: transitive | 963 | dependency: transitive |
| 964 | description: | 964 | description: |
| @@ -972,7 +972,7 @@ packages: | @@ -972,7 +972,7 @@ packages: | ||
| 972 | name: string_scanner | 972 | name: string_scanner |
| 973 | url: "https://pub.flutter-io.cn" | 973 | url: "https://pub.flutter-io.cn" |
| 974 | source: hosted | 974 | source: hosted |
| 975 | - version: "1.1.0-nullsafety.1" | 975 | + version: "1.1.0" |
| 976 | synchronized: | 976 | synchronized: |
| 977 | dependency: transitive | 977 | dependency: transitive |
| 978 | description: | 978 | description: |
| @@ -993,14 +993,14 @@ packages: | @@ -993,14 +993,14 @@ packages: | ||
| 993 | name: term_glyph | 993 | name: term_glyph |
| 994 | url: "https://pub.flutter-io.cn" | 994 | url: "https://pub.flutter-io.cn" |
| 995 | source: hosted | 995 | source: hosted |
| 996 | - version: "1.2.0-nullsafety.1" | 996 | + version: "1.2.0" |
| 997 | test_api: | 997 | test_api: |
| 998 | dependency: transitive | 998 | dependency: transitive |
| 999 | description: | 999 | description: |
| 1000 | name: test_api | 1000 | name: test_api |
| 1001 | url: "https://pub.flutter-io.cn" | 1001 | url: "https://pub.flutter-io.cn" |
| 1002 | source: hosted | 1002 | source: hosted |
| 1003 | - version: "0.2.19-nullsafety.2" | 1003 | + version: "0.2.19" |
| 1004 | timing: | 1004 | timing: |
| 1005 | dependency: transitive | 1005 | dependency: transitive |
| 1006 | description: | 1006 | description: |
| @@ -1023,7 +1023,7 @@ packages: | @@ -1023,7 +1023,7 @@ packages: | ||
| 1023 | name: typed_data | 1023 | name: typed_data |
| 1024 | url: "https://pub.flutter-io.cn" | 1024 | url: "https://pub.flutter-io.cn" |
| 1025 | source: hosted | 1025 | source: hosted |
| 1026 | - version: "1.3.0-nullsafety.3" | 1026 | + version: "1.3.0" |
| 1027 | url_launcher: | 1027 | url_launcher: |
| 1028 | dependency: "direct main" | 1028 | dependency: "direct main" |
| 1029 | description: | 1029 | description: |
| @@ -1079,7 +1079,7 @@ packages: | @@ -1079,7 +1079,7 @@ packages: | ||
| 1079 | name: vector_math | 1079 | name: vector_math |
| 1080 | url: "https://pub.flutter-io.cn" | 1080 | url: "https://pub.flutter-io.cn" |
| 1081 | source: hosted | 1081 | source: hosted |
| 1082 | - version: "2.1.0-nullsafety.3" | 1082 | + version: "2.1.0" |
| 1083 | video_compress: | 1083 | video_compress: |
| 1084 | dependency: "direct main" | 1084 | dependency: "direct main" |
| 1085 | description: | 1085 | description: |
| @@ -1158,5 +1158,5 @@ packages: | @@ -1158,5 +1158,5 @@ packages: | ||
| 1158 | source: hosted | 1158 | source: hosted |
| 1159 | version: "2.2.1" | 1159 | version: "2.2.1" |
| 1160 | sdks: | 1160 | sdks: |
| 1161 | - dart: ">=2.10.0-110 <2.11.0" | ||
| 1162 | - flutter: ">=1.20.0 <2.0.0" | 1161 | + dart: ">=2.12.0-0.0 <3.0.0" |
| 1162 | + flutter: ">=1.20.0" |
-
Please register or login to post a comment