null safety
This commit is contained in:
@@ -15,7 +15,7 @@ import 'package:provider/provider.dart';
|
||||
typedef void FindCallBack();
|
||||
|
||||
class StaffEditor extends StatefulWidget {
|
||||
final User staff;
|
||||
final User? staff;
|
||||
const StaffEditor({this.staff});
|
||||
@override
|
||||
_StaffEditorState createState() => _StaffEditorState();
|
||||
@@ -25,8 +25,8 @@ class _StaffEditorState extends State<StaffEditor> {
|
||||
TextEditingController _phoneInput = new TextEditingController();
|
||||
|
||||
bool _isLoading = false;
|
||||
User user;
|
||||
User selectedUser;
|
||||
late User user;
|
||||
User? selectedUser;
|
||||
List<Privilege> privileges = [];
|
||||
bool isNew = true;
|
||||
|
||||
@@ -38,8 +38,8 @@ class _StaffEditorState extends State<StaffEditor> {
|
||||
user = User();
|
||||
if (!isNew) {
|
||||
user =
|
||||
User(name: widget.staff.name, phoneNumber: widget.staff.phoneNumber);
|
||||
user.privileges = widget.staff.privileges;
|
||||
User(name: widget.staff!.name, phoneNumber: widget.staff!.phoneNumber);
|
||||
user.privileges = widget.staff!.privileges;
|
||||
privileges.forEach((p) => user.privileges.contains(p.id)
|
||||
? p.isChecked = true
|
||||
: p.isChecked = false);
|
||||
@@ -64,7 +64,8 @@ class _StaffEditorState extends State<StaffEditor> {
|
||||
new Checkbox(
|
||||
value: p.isChecked == null ? false : p.isChecked,
|
||||
activeColor: primaryColor,
|
||||
onChanged: (bool value) {
|
||||
onChanged: (bool? value) {
|
||||
if(value != null)
|
||||
setState(() {
|
||||
p.isChecked = value;
|
||||
});
|
||||
@@ -110,7 +111,7 @@ class _StaffEditorState extends State<StaffEditor> {
|
||||
style: textStyle,
|
||||
decoration: new InputDecoration(
|
||||
labelText:
|
||||
AppTranslations.of(context).text('staff.phone.search'),
|
||||
AppTranslations.of(context)!.text('staff.phone.search'),
|
||||
labelStyle: languageModel.isEng ? labelStyle : labelStyleMM,
|
||||
// icon: Icon(
|
||||
// Icons.search,
|
||||
@@ -226,7 +227,7 @@ class _StaffEditorState extends State<StaffEditor> {
|
||||
});
|
||||
StaffModel staffModel = Provider.of<StaffModel>(context, listen: false);
|
||||
try {
|
||||
await staffModel.updatePrivileges(this.selectedUser.id, privilegesIDs());
|
||||
await staffModel.updatePrivileges(this.selectedUser!.id, privilegesIDs());
|
||||
Navigator.pop(context);
|
||||
} catch (e) {
|
||||
showMsgDialog(context, "Error", e.toString());
|
||||
@@ -248,7 +249,7 @@ class _StaffEditorState extends State<StaffEditor> {
|
||||
if (widget.staff == null) return;
|
||||
StaffModel staffModel = Provider.of<StaffModel>(context, listen: false);
|
||||
try {
|
||||
await staffModel.updatePrivileges(widget.staff.id, privilegesIDs());
|
||||
await staffModel.updatePrivileges(widget.staff!.id, privilegesIDs());
|
||||
Navigator.pop(context);
|
||||
} catch (e) {
|
||||
showMsgDialog(context, "Error", e.toString());
|
||||
|
||||
@@ -5,7 +5,6 @@ import 'package:fcs/pages/widgets/local_text.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:intl/intl.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
@@ -84,7 +83,7 @@ class _StaffListState extends State<StaffList> {
|
||||
padding: new EdgeInsets.symmetric(
|
||||
horizontal: 32.0 - dotSize / 2),
|
||||
child: Icon(
|
||||
MaterialCommunityIcons.worker,
|
||||
Icons.person,
|
||||
color: primaryColor,
|
||||
size: 40,
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user