support null safety 1

merge-requests/2/head
nextwo 3 years ago
parent 216aabaf8a
commit bb6dd618fc

@ -213,4 +213,4 @@ SPEC CHECKSUMS:
PODFILE CHECKSUM: 4e8f8b2be68aeea4c0d5beb6ff1e79fface1d048 PODFILE CHECKSUM: 4e8f8b2be68aeea4c0d5beb6ff1e79fface1d048
COCOAPODS: 1.11.3 COCOAPODS: 1.10.2

@ -3,7 +3,7 @@
archiveVersion = 1; archiveVersion = 1;
classes = { classes = {
}; };
objectVersion = 51; objectVersion = 54;
objects = { objects = {
/* Begin PBXBuildFile section */ /* Begin PBXBuildFile section */
@ -227,6 +227,7 @@
}; };
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
isa = PBXShellScriptBuildPhase; isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
); );
@ -258,6 +259,7 @@
}; };
9740EEB61CF901F6004384FC /* Run Script */ = { 9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase; isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
); );

@ -60,5 +60,7 @@
</array> </array>
<key>UIViewControllerBasedStatusBarAppearance</key> <key>UIViewControllerBasedStatusBarAppearance</key>
<false/> <false/>
<key>UIApplicationSupportsIndirectInputEvents</key>
<true/>
</dict> </dict>
</plist> </plist>

@ -1,5 +1,6 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:test_sa/models/lookup.dart'; //import 'package:test_sa/models/lookup.dart';
class AColors { class AColors {
AColors._(); AColors._();
static const Color white = Color(0xffffffff); static const Color white = Color(0xffffffff);

@ -1,24 +1,25 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:test_sa/controllers/localization/localization.dart'; import '../../../controllers/localization/localization.dart';
import 'package:test_sa/controllers/providers/api/device_transfer_provider.dart'; import '../../../controllers/providers/api/device_transfer_provider.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart'; import '../../../controllers/providers/api/user_provider.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.dart'; import '../../../controllers/providers/settings/setting_provider.dart';
import 'package:test_sa/models/device/device_transfer.dart'; import '../../../extensions/int_extensions.dart';
import 'package:test_sa/models/device/device_transfer_info.dart'; import '../../../models/device/device_transfer.dart';
import 'package:test_sa/models/subtitle.dart'; import '../../../models/device/device_transfer_info.dart';
import 'package:test_sa/views/app_style/colors.dart'; import '../../../models/subtitle.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import '../../app_style/colors.dart';
import 'package:test_sa/views/pages/device_transfer/update_device_transfer.dart'; import '../../app_style/sizing.dart';
import 'package:test_sa/views/widgets/buttons/app_back_button.dart'; import '../../widgets/buttons/app_back_button.dart';
import 'package:test_sa/views/widgets/buttons/app_small_button.dart'; import '../../widgets/buttons/app_small_button.dart';
import 'package:test_sa/views/widgets/device_trancfer/device_transfer_info_section.dart'; import '../../widgets/device_trancfer/device_transfer_info_section.dart';
import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; import '../../widgets/loaders/loading_manager.dart';
import 'package:test_sa/views/widgets/requests/info_row.dart'; import '../../widgets/requests/info_row.dart';
import 'update_device_transfer.dart';
class DeviceTransferDetails extends StatefulWidget { class DeviceTransferDetails extends StatefulWidget {
final DeviceTransfer model; final DeviceTransfer model;
const DeviceTransferDetails({Key key, this.model}) : super(key: key); const DeviceTransferDetails({Key? key, required this.model}) : super(key: key);
@override @override
State<DeviceTransferDetails> createState() => _DeviceTransferDetailsState(); State<DeviceTransferDetails> createState() => _DeviceTransferDetailsState();
@ -29,18 +30,16 @@ class _DeviceTransferDetailsState extends State<DeviceTransferDetails> {
final DeviceTransferInfo _model = DeviceTransferInfo(); final DeviceTransferInfo _model = DeviceTransferInfo();
bool _isSender = false; bool _isSender = false;
bool _isReceiver = false; bool _isReceiver = false;
UserProvider _userProvider; UserProvider? _userProvider;
SettingProvider _settingProvider; SettingProvider? _settingProvider;
DeviceTransferProvider _deviceTransferProvider; DeviceTransferProvider? _deviceTransferProvider;
bool _isLoading = false; bool _isLoading = false;
Subtitle _subtitle; Subtitle? _subtitle;
final GlobalKey<FormState> _formKey = GlobalKey<FormState>(); final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>(); final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>();
@override @override
void initState() { void initState() {
super.initState(); super.initState();
} }
@ -50,8 +49,8 @@ class _DeviceTransferDetailsState extends State<DeviceTransferDetails> {
_userProvider = Provider.of<UserProvider>(context); _userProvider = Provider.of<UserProvider>(context);
_settingProvider = Provider.of<SettingProvider>(context); _settingProvider = Provider.of<SettingProvider>(context);
_deviceTransferProvider = Provider.of<DeviceTransferProvider>(context); _deviceTransferProvider = Provider.of<DeviceTransferProvider>(context);
_isSender = _userProvider.user.id == widget.model.sender?.userId; _isSender = _userProvider?.user.id == widget.model.sender?.userId;
_isReceiver = _userProvider.user.id == widget.model.receiver?.userId; _isReceiver = _userProvider?.user.id == widget.model.receiver?.userId;
return Scaffold( return Scaffold(
key: _scaffoldKey, key: _scaffoldKey,
body: SafeArea( body: SafeArea(
@ -69,12 +68,12 @@ class _DeviceTransferDetailsState extends State<DeviceTransferDetails> {
padding: const EdgeInsets.symmetric(horizontal: 0,vertical: 4), padding: const EdgeInsets.symmetric(horizontal: 0,vertical: 4),
child: Row( child: Row(
children: [ children: [
const ABackButton(), ABackButton(),
Expanded( Expanded(
child: Center( child: Center(
child: Text( child: Text(
_subtitle.details, _subtitle?.details??"",
style: Theme.of(context).textTheme.headline6.copyWith( style: Theme.of(context).textTheme.headline6?.copyWith(
color: AColors.white, color: AColors.white,
fontStyle: FontStyle.italic fontStyle: FontStyle.italic
), ),
@ -92,11 +91,11 @@ class _DeviceTransferDetailsState extends State<DeviceTransferDetails> {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
RequestInfoRow( RequestInfoRow(
title: _subtitle.title, title: _subtitle?.title??"",
info: widget.model.title, info: widget.model.title,
), ),
RequestInfoRow( RequestInfoRow(
title: _subtitle.device, title: _subtitle?.device??"",
info: widget.model.device.serialNumber, info: widget.model.device.serialNumber,
), ),
const SizedBox(height:8), const SizedBox(height:8),
@ -110,7 +109,7 @@ class _DeviceTransferDetailsState extends State<DeviceTransferDetails> {
), ),
if(_isSender) if(_isSender)
ASmallButton( ASmallButton(
text: _subtitle.edit, text: _subtitle?.edit??"",
onPressed: (){ onPressed: (){
Navigator.of(context).push( Navigator.of(context).push(
MaterialPageRoute( MaterialPageRoute(
@ -136,7 +135,7 @@ class _DeviceTransferDetailsState extends State<DeviceTransferDetails> {
), ),
if(_isReceiver) if(_isReceiver)
ASmallButton( ASmallButton(
text: _subtitle.edit, text: _subtitle?.edit??"",
onPressed: (){ onPressed: (){
Navigator.of(context).push( Navigator.of(context).push(
MaterialPageRoute( MaterialPageRoute(

@ -1,27 +1,17 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:test_sa/controllers/http_status_manger/http_status_manger.dart';
import 'package:test_sa/controllers/providers/api/device_transfer_provider.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.dart';
import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/models/device/device_transfer.dart';
import 'package:test_sa/models/device/device_transfer_info.dart';
import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/views/app_style/sizing.dart';
import 'package:test_sa/views/widgets/buttons/app_button.dart';
import 'package:test_sa/views/widgets/departments/department_button.dart';
import 'package:test_sa/views/widgets/equipment/device_button.dart';
import 'package:test_sa/views/widgets/hospitals/hospital_button.dart';
import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
import 'package:test_sa/views/widgets/titles/app_sub_title.dart';
import '../../../../controllers/localization/localization.dart'; import '../../../controllers/providers/api/device_transfer_provider.dart';
import '../../../controllers/providers/api/user_provider.dart';
import '../../../controllers/providers/settings/setting_provider.dart';
import '../../../models/device/device_transfer.dart';
import '../../../models/device/device_transfer_info.dart';
import '../../../models/subtitle.dart';
class RequestDeviceTransfer extends StatefulWidget { class RequestDeviceTransfer extends StatefulWidget {
static const String id = "/request-device-transfer"; static const String id = "/request-device-transfer";
const RequestDeviceTransfer({Key key}) : super(key: key); const RequestDeviceTransfer({Key? key}) : super(key: key);
@override @override
State<RequestDeviceTransfer> createState() => _RequestDeviceTransferState(); State<RequestDeviceTransfer> createState() => _RequestDeviceTransferState();
@ -30,10 +20,10 @@ class RequestDeviceTransfer extends StatefulWidget {
class _RequestDeviceTransferState extends State<RequestDeviceTransfer> { class _RequestDeviceTransferState extends State<RequestDeviceTransfer> {
bool _isLoading = false; bool _isLoading = false;
bool _validate = false; bool _validate = false;
Subtitle _subtitle; Subtitle? _subtitle;
UserProvider _userProvider; UserProvider? _userProvider;
SettingProvider _settingProvider; SettingProvider? _settingProvider;
DeviceTransferProvider _deviceTransferProvider; DeviceTransferProvider? _deviceTransferProvider;
final TextEditingController _requestedQuantityController = TextEditingController(); final TextEditingController _requestedQuantityController = TextEditingController();
final DeviceTransfer _formModel = DeviceTransfer(receiver: DeviceTransferInfo()); final DeviceTransfer _formModel = DeviceTransfer(receiver: DeviceTransferInfo());
final GlobalKey<FormState> _formKey = GlobalKey<FormState>(); final GlobalKey<FormState> _formKey = GlobalKey<FormState>();

Loading…
Cancel
Save