| <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | ||||
| <plist version="1.0"> | <plist version="1.0"> | ||||
| <dict> | <dict> | ||||
| <key>CFBundleDevelopmentRegion</key> | |||||
| <string>$(DEVELOPMENT_LANGUAGE)</string> | |||||
| <key>CFBundleExecutable</key> | |||||
| <string>App</string> | |||||
| <key>CFBundleIdentifier</key> | |||||
| <string>io.flutter.flutter.app</string> | |||||
| <key>CFBundleInfoDictionaryVersion</key> | |||||
| <string>6.0</string> | |||||
| <key>CFBundleName</key> | |||||
| <string>App</string> | |||||
| <key>CFBundlePackageType</key> | |||||
| <string>FMWK</string> | |||||
| <key>CFBundleShortVersionString</key> | |||||
| <string>1.0</string> | |||||
| <key>CFBundleSignature</key> | |||||
| <string>????</string> | |||||
| <key>CFBundleVersion</key> | |||||
| <string>1.0</string> | |||||
| <key>MinimumOSVersion</key> | |||||
| <string>8.0</string> | |||||
| <key>CFBundleDevelopmentRegion</key> | |||||
| <string>$(DEVELOPMENT_LANGUAGE)</string> | |||||
| <key>CFBundleExecutable</key> | |||||
| <string>App</string> | |||||
| <key>CFBundleIdentifier</key> | |||||
| <string>io.flutter.flutter.app</string> | |||||
| <key>CFBundleInfoDictionaryVersion</key> | |||||
| <string>6.0</string> | |||||
| <key>CFBundleName</key> | |||||
| <string>App</string> | |||||
| <key>CFBundlePackageType</key> | |||||
| <string>FMWK</string> | |||||
| <key>CFBundleShortVersionString</key> | |||||
| <string>1.0</string> | |||||
| <key>CFBundleSignature</key> | |||||
| <string>????</string> | |||||
| <key>CFBundleVersion</key> | |||||
| <string>1.0</string> | |||||
| <key>MinimumOSVersion</key> | |||||
| <string>9.0</string> | |||||
| </dict> | </dict> | ||||
| </plist> | </plist> |
| GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||||
| GCC_WARN_UNUSED_FUNCTION = YES; | GCC_WARN_UNUSED_FUNCTION = YES; | ||||
| GCC_WARN_UNUSED_VARIABLE = YES; | GCC_WARN_UNUSED_VARIABLE = YES; | ||||
| IPHONEOS_DEPLOYMENT_TARGET = 8.0; | |||||
| IPHONEOS_DEPLOYMENT_TARGET = 9.0; | |||||
| MTL_ENABLE_DEBUG_INFO = NO; | MTL_ENABLE_DEBUG_INFO = NO; | ||||
| SDKROOT = iphoneos; | SDKROOT = iphoneos; | ||||
| SUPPORTED_PLATFORMS = iphoneos; | SUPPORTED_PLATFORMS = iphoneos; | ||||
| ); | ); | ||||
| MARKETING_VERSION = 0.1.0; | MARKETING_VERSION = 0.1.0; | ||||
| PRODUCT_BUNDLE_IDENTIFIER = vn.azteam.tpfarm; | PRODUCT_BUNDLE_IDENTIFIER = vn.azteam.tpfarm; | ||||
| PRODUCT_NAME = "$(TARGET_NAME)"; | |||||
| PRODUCT_NAME = Runner; | |||||
| SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | ||||
| SWIFT_VERSION = 5.0; | SWIFT_VERSION = 5.0; | ||||
| VERSIONING_SYSTEM = "apple-generic"; | VERSIONING_SYSTEM = "apple-generic"; | ||||
| GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||||
| GCC_WARN_UNUSED_FUNCTION = YES; | GCC_WARN_UNUSED_FUNCTION = YES; | ||||
| GCC_WARN_UNUSED_VARIABLE = YES; | GCC_WARN_UNUSED_VARIABLE = YES; | ||||
| IPHONEOS_DEPLOYMENT_TARGET = 8.0; | |||||
| IPHONEOS_DEPLOYMENT_TARGET = 9.0; | |||||
| MTL_ENABLE_DEBUG_INFO = YES; | MTL_ENABLE_DEBUG_INFO = YES; | ||||
| ONLY_ACTIVE_ARCH = YES; | ONLY_ACTIVE_ARCH = YES; | ||||
| SDKROOT = iphoneos; | SDKROOT = iphoneos; | ||||
| GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||||
| GCC_WARN_UNUSED_FUNCTION = YES; | GCC_WARN_UNUSED_FUNCTION = YES; | ||||
| GCC_WARN_UNUSED_VARIABLE = YES; | GCC_WARN_UNUSED_VARIABLE = YES; | ||||
| IPHONEOS_DEPLOYMENT_TARGET = 8.0; | |||||
| IPHONEOS_DEPLOYMENT_TARGET = 9.0; | |||||
| MTL_ENABLE_DEBUG_INFO = NO; | MTL_ENABLE_DEBUG_INFO = NO; | ||||
| SDKROOT = iphoneos; | SDKROOT = iphoneos; | ||||
| SUPPORTED_PLATFORMS = iphoneos; | SUPPORTED_PLATFORMS = iphoneos; | ||||
| ); | ); | ||||
| MARKETING_VERSION = 0.1.0; | MARKETING_VERSION = 0.1.0; | ||||
| PRODUCT_BUNDLE_IDENTIFIER = vn.azteam.tpfarm; | PRODUCT_BUNDLE_IDENTIFIER = vn.azteam.tpfarm; | ||||
| PRODUCT_NAME = "$(TARGET_NAME)"; | |||||
| PRODUCT_NAME = Runner; | |||||
| SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | ||||
| SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | ||||
| SWIFT_VERSION = 5.0; | SWIFT_VERSION = 5.0; | ||||
| ); | ); | ||||
| MARKETING_VERSION = 0.1.0; | MARKETING_VERSION = 0.1.0; | ||||
| PRODUCT_BUNDLE_IDENTIFIER = vn.azteam.tpfarm; | PRODUCT_BUNDLE_IDENTIFIER = vn.azteam.tpfarm; | ||||
| PRODUCT_NAME = "$(TARGET_NAME)"; | |||||
| PRODUCT_NAME = Runner; | |||||
| SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | ||||
| SWIFT_VERSION = 5.0; | SWIFT_VERSION = 5.0; | ||||
| VERSIONING_SYSTEM = "apple-generic"; | VERSIONING_SYSTEM = "apple-generic"; |
| <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | ||||
| <plist version="1.0"> | <plist version="1.0"> | ||||
| <dict> | <dict> | ||||
| <key>FirebaseAppDelegateProxyEnabled</key> | |||||
| <string>NO</string> | |||||
| <key>CFBundleDevelopmentRegion</key> | <key>CFBundleDevelopmentRegion</key> | ||||
| <string>$(DEVELOPMENT_LANGUAGE)</string> | <string>$(DEVELOPMENT_LANGUAGE)</string> | ||||
| <key>CFBundleExecutable</key> | <key>CFBundleExecutable</key> | ||||
| <key>CFBundleInfoDictionaryVersion</key> | <key>CFBundleInfoDictionaryVersion</key> | ||||
| <string>6.0</string> | <string>6.0</string> | ||||
| <key>CFBundleName</key> | <key>CFBundleName</key> | ||||
| <string>farm_tpf</string> | |||||
| <string>Tiên Phong Farm</string> | |||||
| <key>CFBundlePackageType</key> | <key>CFBundlePackageType</key> | ||||
| <string>APPL</string> | <string>APPL</string> | ||||
| <key>CFBundleShortVersionString</key> | <key>CFBundleShortVersionString</key> | ||||
| <string>????</string> | <string>????</string> | ||||
| <key>CFBundleVersion</key> | <key>CFBundleVersion</key> | ||||
| <string>$(CURRENT_PROJECT_VERSION)</string> | <string>$(CURRENT_PROJECT_VERSION)</string> | ||||
| <key>FirebaseAppDelegateProxyEnabled</key> | |||||
| <string>NO</string> | |||||
| <key>LSRequiresIPhoneOS</key> | <key>LSRequiresIPhoneOS</key> | ||||
| <true/> | <true/> | ||||
| <key>NSCameraUsageDescription</key> | <key>NSCameraUsageDescription</key> |
| builder: (BuildContext context) => PlotDetailScreen( | builder: (BuildContext context) => PlotDetailScreen( | ||||
| cropId: item.id, | cropId: item.id, | ||||
| initialIndex: 0, | initialIndex: 0, | ||||
| cropType: item.type, | |||||
| ))); | ))); | ||||
| }); | }); | ||||
| } | } |
| class PlotActionScreen extends StatefulWidget { | class PlotActionScreen extends StatefulWidget { | ||||
| int cropId; | int cropId; | ||||
| String cropCode; | String cropCode; | ||||
| PlotActionScreen({this.cropId, this.cropCode}); | |||||
| int cropType; | |||||
| PlotActionScreen({this.cropId, this.cropCode, this.cropType}); | |||||
| @override | @override | ||||
| _PlotActionScreenState createState() => _PlotActionScreenState(); | _PlotActionScreenState createState() => _PlotActionScreenState(); | ||||
| } | } | ||||
| } | } | ||||
| _initActionButtons() { | _initActionButtons() { | ||||
| //TODO: Check is nursery | |||||
| if (1 == 1) { | |||||
| //type: 0- Trồng, 1- ướm | |||||
| if (widget.cropType == 1) { | |||||
| actions.add(ActionType( | actions.add(ActionType( | ||||
| plot_action_nursery, | plot_action_nursery, | ||||
| EditActionNurseryScreen( | EditActionNurseryScreen( | ||||
| cropId: widget.cropId, | cropId: widget.cropId, | ||||
| ))); | ))); | ||||
| } else { | |||||
| } else if (widget.cropType == 0) { | |||||
| actions.add(ActionType( | actions.add(ActionType( | ||||
| plot_action_plant, | plot_action_plant, | ||||
| EditActionPlantScreen( | EditActionPlantScreen( | ||||
| bool _showTitle(BuildContext context) { | bool _showTitle(BuildContext context) { | ||||
| var kExpandedHeight = MediaQuery.of(context).size.width * 0.625 + 24; | var kExpandedHeight = MediaQuery.of(context).size.width * 0.625 + 24; | ||||
| // print("height: $kExpandedHeight"); | |||||
| // print('offset ${_scrollController.offset}'); | |||||
| return _scrollController.hasClients && | return _scrollController.hasClients && | ||||
| _scrollController.offset > kExpandedHeight - kToolbarHeight; | _scrollController.offset > kExpandedHeight - kToolbarHeight; | ||||
| } | } |
| class PlotDetailScreen extends StatefulWidget { | class PlotDetailScreen extends StatefulWidget { | ||||
| int cropId; | int cropId; | ||||
| String cropCode; | String cropCode; | ||||
| int cropType; | |||||
| int initialIndex; | int initialIndex; | ||||
| PlotDetailScreen({this.cropId, this.initialIndex = 0, this.cropCode}); | |||||
| PlotDetailScreen( | |||||
| {this.cropId, this.initialIndex = 0, this.cropCode, this.cropType}); | |||||
| @override | @override | ||||
| _PlotDetailScreenState createState() => _PlotDetailScreenState(); | _PlotDetailScreenState createState() => _PlotDetailScreenState(); | ||||
| } | } | ||||
| PlotActionScreen( | PlotActionScreen( | ||||
| cropId: widget.cropId, | cropId: widget.cropId, | ||||
| cropCode: widget.cropCode, | cropCode: widget.cropCode, | ||||
| cropType: widget.cropType, | |||||
| ) | ) | ||||
| ], | ], | ||||
| ), | ), |