null safety
This commit is contained in:
@@ -14,14 +14,14 @@ import 'package:fcs/pages/widgets/multi_img_file.dart';
|
||||
import 'package:fcs/pages/widgets/progress.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_icons/flutter_icons.dart';
|
||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||
import 'package:permission_handler/permission_handler.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
typedef void FindCallBack();
|
||||
|
||||
class ReceivingEditor extends StatefulWidget {
|
||||
final Package package;
|
||||
final Package? package;
|
||||
const ReceivingEditor({this.package});
|
||||
@override
|
||||
_ReceivingEditorState createState() => _ReceivingEditorState();
|
||||
@@ -30,8 +30,8 @@ class ReceivingEditor extends StatefulWidget {
|
||||
class _ReceivingEditorState extends State<ReceivingEditor> {
|
||||
Package package = Package();
|
||||
bool _isLoading = false;
|
||||
bool _isNew;
|
||||
User user;
|
||||
late bool _isNew;
|
||||
User? user;
|
||||
TextEditingController _trackingIDCtl = new TextEditingController();
|
||||
TextEditingController _remarkCtl = new TextEditingController();
|
||||
MultiImgController _multiImgController = MultiImgController();
|
||||
@@ -41,7 +41,7 @@ class _ReceivingEditorState extends State<ReceivingEditor> {
|
||||
super.initState();
|
||||
_isNew = widget.package == null;
|
||||
if (!_isNew) {
|
||||
package = widget.package;
|
||||
package = widget.package!;
|
||||
_trackingIDCtl.text = package.trackingID;
|
||||
_remarkCtl.text = package.remark;
|
||||
_multiImgController.setImageUrls = package.photoUrls;
|
||||
@@ -71,7 +71,7 @@ class _ReceivingEditorState extends State<ReceivingEditor> {
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: DisplayText(
|
||||
text: user != null ? user.fcsID : "",
|
||||
text: user != null ? user!.fcsID : "",
|
||||
labelTextKey: "receiving.fcs.id",
|
||||
icon: FcsIDIcon(),
|
||||
)),
|
||||
@@ -124,7 +124,7 @@ class _ReceivingEditorState extends State<ReceivingEditor> {
|
||||
title: "Receiving",
|
||||
);
|
||||
final namebox = DisplayText(
|
||||
text: user != null ? user.name : "",
|
||||
text: user != null ? user!.name : "",
|
||||
labelTextKey: "receiving.consignee.name",
|
||||
iconData: Icons.person,
|
||||
);
|
||||
@@ -199,17 +199,17 @@ class _ReceivingEditorState extends State<ReceivingEditor> {
|
||||
}
|
||||
|
||||
_scan() async {
|
||||
PermissionStatus permission =
|
||||
await PermissionHandler().checkPermissionStatus(PermissionGroup.camera);
|
||||
if (permission != PermissionStatus.granted) {
|
||||
Map<PermissionGroup, PermissionStatus> permissions =
|
||||
await PermissionHandler()
|
||||
.requestPermissions([PermissionGroup.camera]);
|
||||
if (permissions[PermissionGroup.camera] != PermissionStatus.granted) {
|
||||
showMsgDialog(context, "Error", "Camera permission is not granted");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
// PermissionStatus permission =
|
||||
// await PermissionHandler().checkPermissionStatus(PermissionGroup.camera);
|
||||
// if (permission != PermissionStatus.granted) {
|
||||
// Map<PermissionGroup, PermissionStatus> permissions =
|
||||
// await PermissionHandler()
|
||||
// .requestPermissions([PermissionGroup.camera]);
|
||||
// if (permissions[PermissionGroup.camera] != PermissionStatus.granted) {
|
||||
// showMsgDialog(context, "Error", "Camera permission is not granted");
|
||||
// return null;
|
||||
// }
|
||||
// }
|
||||
|
||||
try {
|
||||
String barcode = await scanBarcode();
|
||||
@@ -239,12 +239,12 @@ class _ReceivingEditorState extends State<ReceivingEditor> {
|
||||
try {
|
||||
if (_isNew) {
|
||||
await packageModel.createReceiving(
|
||||
user, _p, _multiImgController.getAddedFile);
|
||||
user!, _p, _multiImgController.getAddedFile);
|
||||
} else {
|
||||
_p.id = widget.package.id;
|
||||
_p.id = widget.package!.id;
|
||||
_p.photoUrls = package.photoUrls;
|
||||
await packageModel.updateReceiving(
|
||||
user,
|
||||
user!,
|
||||
_p,
|
||||
_multiImgController.getAddedFile,
|
||||
_multiImgController.getDeletedUrl);
|
||||
@@ -269,9 +269,9 @@ class _ReceivingEditorState extends State<ReceivingEditor> {
|
||||
var _package = Package(
|
||||
trackingID: _trackingIDCtl.text,
|
||||
remark: _remarkCtl.text,
|
||||
fcsID: user.fcsID,
|
||||
photoUrls: widget.package.photoUrls);
|
||||
return widget.package.isChangedForEdit(_package) ||
|
||||
fcsID: user!.fcsID,
|
||||
photoUrls: widget.package!.photoUrls);
|
||||
return widget.package!.isChangedForEdit(_package) ||
|
||||
_multiImgController.getAddedFile.isNotEmpty ||
|
||||
_multiImgController.getDeletedUrl.isNotEmpty;
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ import 'package:fcs/pages/widgets/progress.dart';
|
||||
import 'package:fcs/pages/widgets/status_tree.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_icons/flutter_icons.dart';
|
||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
@@ -22,7 +22,7 @@ import 'receiving_editor.dart';
|
||||
final DateFormat dateFormat = DateFormat("d MMM yyyy");
|
||||
|
||||
class ReceivingInfo extends StatefulWidget {
|
||||
final Package package;
|
||||
final Package? package;
|
||||
ReceivingInfo({this.package});
|
||||
|
||||
@override
|
||||
@@ -30,14 +30,14 @@ class ReceivingInfo extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _ReceivingInfoState extends State<ReceivingInfo> {
|
||||
Package _package;
|
||||
Package? _package;
|
||||
bool _isLoading = false;
|
||||
MultiImgController multiImgController = MultiImgController();
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
initPackage(widget.package);
|
||||
initPackage(widget.package!);
|
||||
}
|
||||
|
||||
initPackage(Package package) {
|
||||
@@ -57,22 +57,22 @@ class _ReceivingInfoState extends State<ReceivingInfo> {
|
||||
bool isCustomer = Provider.of<MainModel>(context).isCustomer();
|
||||
|
||||
final trackingIdBox = DisplayText(
|
||||
text: _package.trackingID,
|
||||
text: _package!.trackingID,
|
||||
labelTextKey: "package.tracking.id",
|
||||
iconData: MaterialCommunityIcons.barcode_scan,
|
||||
);
|
||||
var fcsIDBox = DisplayText(
|
||||
text: _package.fcsID,
|
||||
text: _package!.fcsID,
|
||||
labelTextKey: "processing.fcs.id",
|
||||
icon: FcsIDIcon(),
|
||||
);
|
||||
final customerNameBox = DisplayText(
|
||||
text: _package.userName,
|
||||
text: _package!.userName,
|
||||
labelTextKey: "package.create.name",
|
||||
iconData: Icons.perm_identity,
|
||||
);
|
||||
final remarkBox = DisplayText(
|
||||
text: _package.remark ?? "-",
|
||||
text: _package!.remark ?? "-",
|
||||
labelTextKey: "package.edit.remark",
|
||||
iconData: Entypo.new_message,
|
||||
);
|
||||
@@ -123,10 +123,10 @@ class _ReceivingInfoState extends State<ReceivingInfo> {
|
||||
fcsIDBox,
|
||||
customerNameBox,
|
||||
remarkBox,
|
||||
_package.photoUrls.length == 0 ? Container() : img,
|
||||
_package!.photoUrls.length == 0 ? Container() : img,
|
||||
StatusTree(
|
||||
shipmentHistory: _package.shipmentHistory,
|
||||
currentStatus: _package.status),
|
||||
shipmentHistory: _package!.shipmentHistory,
|
||||
currentStatus: _package!.status),
|
||||
SizedBox(
|
||||
height: 20,
|
||||
)
|
||||
@@ -149,7 +149,7 @@ class _ReceivingInfoState extends State<ReceivingInfo> {
|
||||
);
|
||||
PackageModel packageModel =
|
||||
Provider.of<PackageModel>(context, listen: false);
|
||||
var pkg = await packageModel.getPackage(widget.package.id);
|
||||
var pkg = await packageModel.getPackage(widget.package!.id);
|
||||
initPackage(pkg);
|
||||
}
|
||||
|
||||
@@ -164,7 +164,7 @@ class _ReceivingInfoState extends State<ReceivingInfo> {
|
||||
try {
|
||||
PackageModel packageModel =
|
||||
Provider.of<PackageModel>(context, listen: false);
|
||||
await packageModel.deleteReceiving(_package);
|
||||
await packageModel.deleteReceiving(_package!);
|
||||
Navigator.pop(context);
|
||||
} catch (e) {
|
||||
showMsgDialog(context, "Error", e.toString());
|
||||
|
||||
@@ -3,7 +3,7 @@ import 'package:fcs/helpers/theme.dart';
|
||||
import 'package:fcs/pages/main/util.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_icons/flutter_icons.dart';
|
||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
|
||||
import 'receiving_info.dart';
|
||||
@@ -11,12 +11,12 @@ import 'receiving_info.dart';
|
||||
typedef CallbackPackageSelect(Package package);
|
||||
|
||||
class ReceivingListRow extends StatelessWidget {
|
||||
final Package package;
|
||||
final CallbackPackageSelect callbackPackageSelect;
|
||||
final Package? package;
|
||||
final CallbackPackageSelect? callbackPackageSelect;
|
||||
final double dotSize = 15.0;
|
||||
final DateFormat dateFormat = new DateFormat("dd MMM yyyy");
|
||||
|
||||
ReceivingListRow({Key key, this.package, this.callbackPackageSelect})
|
||||
ReceivingListRow({Key? key, this.package, this.callbackPackageSelect})
|
||||
: super(key: key);
|
||||
|
||||
@override
|
||||
@@ -24,7 +24,7 @@ class ReceivingListRow extends StatelessWidget {
|
||||
return InkWell(
|
||||
onTap: () {
|
||||
if (callbackPackageSelect != null) {
|
||||
callbackPackageSelect(package);
|
||||
callbackPackageSelect!(package!);
|
||||
return;
|
||||
}
|
||||
Navigator.push(
|
||||
@@ -55,7 +55,7 @@ class ReceivingListRow extends StatelessWidget {
|
||||
Padding(
|
||||
padding: const EdgeInsets.only(left: 8.0),
|
||||
child: new Text(
|
||||
package.id == null ? '' : package.trackingID,
|
||||
package!.id == null ? '' : package!.trackingID,
|
||||
style: new TextStyle(
|
||||
fontSize: 15.0, color: Colors.black),
|
||||
),
|
||||
@@ -63,7 +63,7 @@ class ReceivingListRow extends StatelessWidget {
|
||||
Padding(
|
||||
padding: const EdgeInsets.only(left: 8.0),
|
||||
child: new Text(
|
||||
package.market == null ? '' : package.market,
|
||||
package!.market == null ? '' : package!.market,
|
||||
style: new TextStyle(
|
||||
fontSize: 15.0, color: Colors.black),
|
||||
),
|
||||
@@ -79,12 +79,12 @@ class ReceivingListRow extends StatelessWidget {
|
||||
children: <Widget>[
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(3.0),
|
||||
child: getStatus(package.status),
|
||||
child: getStatus(package!.status),
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(0),
|
||||
child: new Text(
|
||||
dateFormat.format(package.currentStatusDate),
|
||||
dateFormat.format(package!.currentStatusDate),
|
||||
style: new TextStyle(fontSize: 15.0, color: Colors.grey),
|
||||
),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user