mirror of
https://git.meshkee.com/applications/cssd.git
synced 2026-10-13 11:18:56 +03:30
2.1.0
This commit is contained in:
BIN
Binary file not shown.
@@ -42,9 +42,11 @@ class Routes {
|
|||||||
static const myItemsDetailScreen = '/MyItemsDetailScreen';
|
static const myItemsDetailScreen = '/MyItemsDetailScreen';
|
||||||
static const itemsTransferScreen = '/ItemsTransferScreen';
|
static const itemsTransferScreen = '/ItemsTransferScreen';
|
||||||
static const myItemsHistoryScreen = '/MyItemsHistoryScreen';
|
static const myItemsHistoryScreen = '/MyItemsHistoryScreen';
|
||||||
|
static const myItemsScanScreen = '/MyItemsScanScreen';
|
||||||
static const myPackagesResultScreen = '/MyPackagesResultScreen';
|
static const myPackagesResultScreen = '/MyPackagesResultScreen';
|
||||||
static const myPackagesFilterScreen = '/MyPackagesFilterScreen';
|
static const myPackagesFilterScreen = '/MyPackagesFilterScreen';
|
||||||
static const myPackagesDetailScreen = '/MyPackagesDetailScreen';
|
static const myPackagesDetailScreen = '/MyPackagesDetailScreen';
|
||||||
static const packagesTransferScreen = '/PackagesTransferScreen';
|
static const packagesTransferScreen = '/PackagesTransferScreen';
|
||||||
static const myPackagesHistoryScreen = '/MyPackagesHistoryScreen';
|
static const myPackagesHistoryScreen = '/MyPackagesHistoryScreen';
|
||||||
|
static const myPackagesScanScreen = '/MyPackagesScanScreen';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,11 +10,13 @@ import 'package:cssd/pages/MyItemsPages/Result/my_items_result_screen.dart';
|
|||||||
import 'package:cssd/pages/MyItemsPages/my_items_detail_screen.dart';
|
import 'package:cssd/pages/MyItemsPages/my_items_detail_screen.dart';
|
||||||
import 'package:cssd/pages/MyItemsPages/my_items_filter_screen.dart';
|
import 'package:cssd/pages/MyItemsPages/my_items_filter_screen.dart';
|
||||||
import 'package:cssd/pages/MyItemsPages/my_items_history_screen.dart';
|
import 'package:cssd/pages/MyItemsPages/my_items_history_screen.dart';
|
||||||
|
import 'package:cssd/pages/MyItemsPages/my_items_scan_screen.dart';
|
||||||
import 'package:cssd/pages/MyItemsPages/my_items_transfer_screen.dart';
|
import 'package:cssd/pages/MyItemsPages/my_items_transfer_screen.dart';
|
||||||
import 'package:cssd/pages/MyPackagesPages/Result/my_packages_result_screen.dart';
|
import 'package:cssd/pages/MyPackagesPages/Result/my_packages_result_screen.dart';
|
||||||
import 'package:cssd/pages/MyPackagesPages/my_packages_detail_screen.dart';
|
import 'package:cssd/pages/MyPackagesPages/my_packages_detail_screen.dart';
|
||||||
import 'package:cssd/pages/MyPackagesPages/my_packages_filter_screen.dart';
|
import 'package:cssd/pages/MyPackagesPages/my_packages_filter_screen.dart';
|
||||||
import 'package:cssd/pages/MyPackagesPages/my_packages_history_screen.dart';
|
import 'package:cssd/pages/MyPackagesPages/my_packages_history_screen.dart';
|
||||||
|
import 'package:cssd/pages/MyPackagesPages/my_packages_scan_screen.dart';
|
||||||
import 'package:cssd/pages/MyPackagesPages/my_packages_transfer_screen.dart';
|
import 'package:cssd/pages/MyPackagesPages/my_packages_transfer_screen.dart';
|
||||||
import 'package:cssd/pages/PackagePages/package_add_screen.dart';
|
import 'package:cssd/pages/PackagePages/package_add_screen.dart';
|
||||||
import 'package:cssd/pages/PackagePages/package_detail_screen.dart';
|
import 'package:cssd/pages/PackagePages/package_detail_screen.dart';
|
||||||
@@ -182,6 +184,7 @@ class MyApp extends StatelessWidget {
|
|||||||
Routes.myItemsFilterScreen: (ctx) => MyItemsFilterScreen(),
|
Routes.myItemsFilterScreen: (ctx) => MyItemsFilterScreen(),
|
||||||
Routes.myItemsDetailScreen: (ctx) => MyItemsDetailScreen(),
|
Routes.myItemsDetailScreen: (ctx) => MyItemsDetailScreen(),
|
||||||
Routes.itemsTransferScreen: (ctx) => ItemsTransferScreen(),
|
Routes.itemsTransferScreen: (ctx) => ItemsTransferScreen(),
|
||||||
|
Routes.myItemsScanScreen: (ctx) => MyItemsScanScreen(),
|
||||||
Routes.myItemsHistoryScreen: (ctx) => MyItemsHistoryScreen(),
|
Routes.myItemsHistoryScreen: (ctx) => MyItemsHistoryScreen(),
|
||||||
Routes.myPackagesResultScreen: (ctx) =>
|
Routes.myPackagesResultScreen: (ctx) =>
|
||||||
MyPackagesResultScreen(),
|
MyPackagesResultScreen(),
|
||||||
@@ -191,6 +194,7 @@ class MyApp extends StatelessWidget {
|
|||||||
Routes.packagesTransferScreen: (ctx) => PackageTransferScreen(),
|
Routes.packagesTransferScreen: (ctx) => PackageTransferScreen(),
|
||||||
Routes.myPackagesHistoryScreen: (ctx) =>
|
Routes.myPackagesHistoryScreen: (ctx) =>
|
||||||
MyPackagesHistoryScreen(),
|
MyPackagesHistoryScreen(),
|
||||||
|
Routes.myPackagesScanScreen: (ctx) => MyPackagesScanScreen(),
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -40,12 +40,12 @@ class MyPackageResultObject extends Equatable {
|
|||||||
class MyPackageFilterObject extends Equatable {
|
class MyPackageFilterObject extends Equatable {
|
||||||
final String id;
|
final String id;
|
||||||
final String name;
|
final String name;
|
||||||
final String udi;
|
// final String udi;
|
||||||
|
|
||||||
MyPackageFilterObject({
|
MyPackageFilterObject({
|
||||||
required this.id,
|
required this.id,
|
||||||
required this.name,
|
required this.name,
|
||||||
required this.udi,
|
// required this.udi,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -53,7 +53,7 @@ class MyPackageFilterObject extends Equatable {
|
|||||||
return [
|
return [
|
||||||
id,
|
id,
|
||||||
name,
|
name,
|
||||||
udi,
|
// udi,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class PackageDetailObject extends Equatable {
|
|||||||
final String description;
|
final String description;
|
||||||
final String createDate;
|
final String createDate;
|
||||||
final String hospitalName;
|
final String hospitalName;
|
||||||
final String udi;
|
// final String udi;
|
||||||
final List<String> items;
|
final List<String> items;
|
||||||
|
|
||||||
PackageDetailObject({
|
PackageDetailObject({
|
||||||
@@ -38,7 +38,7 @@ class PackageDetailObject extends Equatable {
|
|||||||
required this.description,
|
required this.description,
|
||||||
required this.createDate,
|
required this.createDate,
|
||||||
required this.hospitalName,
|
required this.hospitalName,
|
||||||
required this.udi,
|
// required this.udi,
|
||||||
required this.items,
|
required this.items,
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -50,7 +50,7 @@ class PackageDetailObject extends Equatable {
|
|||||||
description,
|
description,
|
||||||
createDate,
|
createDate,
|
||||||
hospitalName,
|
hospitalName,
|
||||||
udi,
|
// udi,
|
||||||
items,
|
items,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@@ -63,13 +63,13 @@ class PackageFilterObject extends Equatable {
|
|||||||
final String id;
|
final String id;
|
||||||
final String name;
|
final String name;
|
||||||
final String hospital;
|
final String hospital;
|
||||||
final String udi;
|
// final String udi;
|
||||||
|
|
||||||
PackageFilterObject({
|
PackageFilterObject({
|
||||||
required this.id,
|
required this.id,
|
||||||
required this.name,
|
required this.name,
|
||||||
required this.hospital,
|
required this.hospital,
|
||||||
required this.udi,
|
// required this.udi,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -78,7 +78,7 @@ class PackageFilterObject extends Equatable {
|
|||||||
id,
|
id,
|
||||||
name,
|
name,
|
||||||
hospital,
|
hospital,
|
||||||
udi,
|
// udi,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ class _ItemAddScreenState extends State<ItemAddScreen> {
|
|||||||
void didChangeDependencies() async {
|
void didChangeDependencies() async {
|
||||||
if (isInit) {
|
if (isInit) {
|
||||||
var itemProviderObject = Provider.of<ItemProvider>(context);
|
var itemProviderObject = Provider.of<ItemProvider>(context);
|
||||||
|
itemProviderObject.catchImages.clear();
|
||||||
itemProviderObject.getItemResults().then(
|
itemProviderObject.getItemResults().then(
|
||||||
(result) {
|
(result) {
|
||||||
setState(
|
setState(
|
||||||
|
|||||||
@@ -286,7 +286,7 @@ class _ItemFilterScreenState extends State<ItemFilterScreen> {
|
|||||||
print('access');
|
print('access');
|
||||||
} else {
|
} else {
|
||||||
print(result);
|
print(result);
|
||||||
idCTRL.text = result;
|
udiCTRL.text = result;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -61,8 +61,8 @@ class _ItemResultScreenState extends State<ItemResultScreen> {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final _media = MediaQuery.of(context);
|
final _media = MediaQuery.of(context);
|
||||||
final double _devicewidth = _media.size.width;
|
final double _deviceWidth = _media.size.width;
|
||||||
final double _deviceBlockSize = _devicewidth / 100;
|
final double _deviceBlockSize = _deviceWidth / 100;
|
||||||
return SafeArea(
|
return SafeArea(
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
|
|||||||
@@ -34,6 +34,8 @@ class _LabelAddScreenState extends State<LabelAddScreen> {
|
|||||||
List<Map<String, String>> packageVals = [];
|
List<Map<String, String>> packageVals = [];
|
||||||
List<String> packageValue = [];
|
List<String> packageValue = [];
|
||||||
bool isInit = true;
|
bool isInit = true;
|
||||||
|
// String? packageId;
|
||||||
|
// String? previousRoute;
|
||||||
|
|
||||||
List<TextEditingController> labelsCTRL = [TextEditingController()];
|
List<TextEditingController> labelsCTRL = [TextEditingController()];
|
||||||
int curLabelVal = 1;
|
int curLabelVal = 1;
|
||||||
@@ -47,7 +49,15 @@ class _LabelAddScreenState extends State<LabelAddScreen> {
|
|||||||
@override
|
@override
|
||||||
void didChangeDependencies() async {
|
void didChangeDependencies() async {
|
||||||
if (isInit) {
|
if (isInit) {
|
||||||
|
// final pastRoute = ModalRoute.of(context)!.settings.name;
|
||||||
|
// previousRoute = pastRoute;
|
||||||
|
// print(previousRoute);
|
||||||
var labelProviderObject = Provider.of<LabelsProvider>(context);
|
var labelProviderObject = Provider.of<LabelsProvider>(context);
|
||||||
|
// var arguments = ModalRoute.of(context)!.settings.arguments;
|
||||||
|
// if (arguments != null && arguments is Map<dynamic, dynamic>) {
|
||||||
|
// packageId = arguments['id'];
|
||||||
|
// }
|
||||||
|
// print(packageId);
|
||||||
labelProviderObject.resetPackageVals();
|
labelProviderObject.resetPackageVals();
|
||||||
labelProviderObject.getPackageFilters().then(
|
labelProviderObject.getPackageFilters().then(
|
||||||
(result) {
|
(result) {
|
||||||
@@ -67,6 +77,7 @@ class _LabelAddScreenState extends State<LabelAddScreen> {
|
|||||||
final _media = MediaQuery.of(context);
|
final _media = MediaQuery.of(context);
|
||||||
final double _devicewidth = _media.size.width;
|
final double _devicewidth = _media.size.width;
|
||||||
final double _deviceBlockSize = _devicewidth / 100;
|
final double _deviceBlockSize = _devicewidth / 100;
|
||||||
|
// String initialLabelValue;
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
onWillPop: () async {
|
onWillPop: () async {
|
||||||
Navigator.pushReplacementNamed(
|
Navigator.pushReplacementNamed(
|
||||||
@@ -286,8 +297,15 @@ class _LabelAddScreenState extends State<LabelAddScreen> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Consumer<LabelsProvider>(
|
Consumer<LabelsProvider>(
|
||||||
builder: (ctx, labelProvider, _) =>
|
builder: (ctx, labelProvider, _) {
|
||||||
ListView.builder(
|
// if (previousRoute ==
|
||||||
|
// '/PackageDetailScreen') {
|
||||||
|
// initialLabelValue = packageId!;
|
||||||
|
// } else {
|
||||||
|
// initialLabelValue =
|
||||||
|
// labelProvider.initialPackageValue;
|
||||||
|
// }
|
||||||
|
return ListView.builder(
|
||||||
physics: NeverScrollableScrollPhysics(),
|
physics: NeverScrollableScrollPhysics(),
|
||||||
shrinkWrap: true,
|
shrinkWrap: true,
|
||||||
itemBuilder: (ctx, index) =>
|
itemBuilder: (ctx, index) =>
|
||||||
@@ -304,8 +322,8 @@ class _LabelAddScreenState extends State<LabelAddScreen> {
|
|||||||
),
|
),
|
||||||
itemCount:
|
itemCount:
|
||||||
labelProvider.packageValues.length,
|
labelProvider.packageValues.length,
|
||||||
),
|
);
|
||||||
),
|
}),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 10,
|
height: 10,
|
||||||
),
|
),
|
||||||
@@ -330,7 +348,10 @@ class _LabelAddScreenState extends State<LabelAddScreen> {
|
|||||||
lotNumberCTRL: lotNumberCTRL,
|
lotNumberCTRL: lotNumberCTRL,
|
||||||
cycleNumberCTRL: cycleNumberCTRL,
|
cycleNumberCTRL: cycleNumberCTRL,
|
||||||
sDateCTRL: sDateCTRL,
|
sDateCTRL: sDateCTRL,
|
||||||
packageValue: packageValue,
|
packageValue: Provider.of<LabelsProvider>(
|
||||||
|
context,
|
||||||
|
listen: false,
|
||||||
|
).packageValues,
|
||||||
eDateCTRL: eDateCTRL,
|
eDateCTRL: eDateCTRL,
|
||||||
striizerIdCTRL: striizerIdCTRL,
|
striizerIdCTRL: striizerIdCTRL,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
|
|||||||
@@ -67,8 +67,9 @@ class _LabelResultScreenState extends State<LabelResultScreen> {
|
|||||||
FocusManager.instance.primaryFocus?.unfocus();
|
FocusManager.instance.primaryFocus?.unfocus();
|
||||||
},
|
},
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
floatingActionButton:
|
floatingActionButton: LabelFloatingButtons(
|
||||||
LabelFloatingButtons(deviceBlockSize: _deviceBlockSize),
|
deviceBlockSize: _deviceBlockSize,
|
||||||
|
),
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
titleSpacing: -10,
|
titleSpacing: -10,
|
||||||
title: Text('Home'),
|
title: Text('Home'),
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
import 'package:cssd/widgets/LabelScreens/Add/selector_box.dart';
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
import 'package:intl/intl.dart' as DateEditor;
|
import 'package:intl/intl.dart' as DateEditor;
|
||||||
@@ -27,7 +26,7 @@ class _LabelUpdateScreenState extends State<LabelUpdateScreen> {
|
|||||||
TextEditingController striizerIdCTRL = new TextEditingController();
|
TextEditingController striizerIdCTRL = new TextEditingController();
|
||||||
TextEditingController sDateCTRL = new TextEditingController();
|
TextEditingController sDateCTRL = new TextEditingController();
|
||||||
TextEditingController eDateCTRL = new TextEditingController();
|
TextEditingController eDateCTRL = new TextEditingController();
|
||||||
TextEditingController packageCTRL = new TextEditingController();
|
// TextEditingController packageCTRL = new TextEditingController();
|
||||||
|
|
||||||
DateTime? dateTimeS;
|
DateTime? dateTimeS;
|
||||||
// String sDateValue;
|
// String sDateValue;
|
||||||
@@ -35,8 +34,8 @@ class _LabelUpdateScreenState extends State<LabelUpdateScreen> {
|
|||||||
|
|
||||||
final _form = GlobalKey<FormState>();
|
final _form = GlobalKey<FormState>();
|
||||||
|
|
||||||
List<Map<String, String>> packageVals = [];
|
// List<Map<String, String>> packageVals = [];
|
||||||
List<String> packageValue = [];
|
// List<String> packageValue = [];
|
||||||
bool isEmpty = false;
|
bool isEmpty = false;
|
||||||
bool isInit = true;
|
bool isInit = true;
|
||||||
LabelDetailsObject? datas;
|
LabelDetailsObject? datas;
|
||||||
@@ -67,9 +66,9 @@ class _LabelUpdateScreenState extends State<LabelUpdateScreen> {
|
|||||||
striizerIdCTRL.text = datas!.sterileId;
|
striizerIdCTRL.text = datas!.sterileId;
|
||||||
sDateCTRL.text = datas!.sterileDate;
|
sDateCTRL.text = datas!.sterileDate;
|
||||||
eDateCTRL.text = datas!.expireDate;
|
eDateCTRL.text = datas!.expireDate;
|
||||||
packageValue.add(datas!.packageId);
|
// packageValue.add(datas!.packageId);
|
||||||
packageValue.add(datas!.package);
|
// packageValue.add(datas!.package);
|
||||||
packageCTRL.text = datas!.package;
|
// packageCTRL.text = datas!.package;
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -256,15 +255,15 @@ class _LabelUpdateScreenState extends State<LabelUpdateScreen> {
|
|||||||
SizedBox(
|
SizedBox(
|
||||||
height: 20,
|
height: 20,
|
||||||
),
|
),
|
||||||
LabelAddSelectorBox(
|
// LabelAddSelectorBox(
|
||||||
deviceBlockSize: _deviceBlockSize,
|
// deviceBlockSize: _deviceBlockSize,
|
||||||
packageCTRL: packageCTRL,
|
// packageCTRL: packageCTRL,
|
||||||
packageVals: packageVals,
|
// packageVals: packageVals,
|
||||||
packageValue: packageValue,
|
// packageValue: packageValue,
|
||||||
),
|
// ),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 20,
|
// height: 20,
|
||||||
),
|
// ),
|
||||||
LabelAddDatePicker(
|
LabelAddDatePicker(
|
||||||
dateCTRL: sDateCTRL,
|
dateCTRL: sDateCTRL,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
@@ -287,7 +286,7 @@ class _LabelUpdateScreenState extends State<LabelUpdateScreen> {
|
|||||||
lotNumberCTRL: lotNumberCTRL,
|
lotNumberCTRL: lotNumberCTRL,
|
||||||
cycleNumberCTRL: cycleNumberCTRL,
|
cycleNumberCTRL: cycleNumberCTRL,
|
||||||
sDateCTRL: sDateCTRL,
|
sDateCTRL: sDateCTRL,
|
||||||
packageValue: packageValue,
|
// packageValue: packageValue,
|
||||||
eDateCTRL: eDateCTRL,
|
eDateCTRL: eDateCTRL,
|
||||||
striizerIdCTRL: striizerIdCTRL,
|
striizerIdCTRL: striizerIdCTRL,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:cssd/config/colors.dart';
|
import 'package:cssd/config/colors.dart';
|
||||||
|
import 'package:cssd/config/routes.dart';
|
||||||
import 'package:cssd/pages/MyItemsPages/Result/my_items_mine_screen.dart';
|
import 'package:cssd/pages/MyItemsPages/Result/my_items_mine_screen.dart';
|
||||||
import 'package:cssd/pages/MyItemsPages/Result/my_items_requests_screen.dart';
|
import 'package:cssd/pages/MyItemsPages/Result/my_items_requests_screen.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
@@ -28,6 +29,9 @@ class _MyItemsResultScreenState extends State<MyItemsResultScreen>
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
final _media = MediaQuery.of(context);
|
||||||
|
final double _deviceWidth = _media.size.width;
|
||||||
|
final double _deviceBlockSize = _deviceWidth / 100;
|
||||||
return SafeArea(
|
return SafeArea(
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
@@ -60,6 +64,9 @@ class _MyItemsResultScreenState extends State<MyItemsResultScreen>
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
floatingActionButton: MyItemResultFloatingButton(
|
||||||
|
deviceBlockSize: _deviceBlockSize,
|
||||||
|
),
|
||||||
body: TabBarView(
|
body: TabBarView(
|
||||||
controller: _tabController,
|
controller: _tabController,
|
||||||
children: [
|
children: [
|
||||||
@@ -73,3 +80,35 @@ class _MyItemsResultScreenState extends State<MyItemsResultScreen>
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class MyItemResultFloatingButton extends StatelessWidget {
|
||||||
|
const MyItemResultFloatingButton({
|
||||||
|
Key? key,
|
||||||
|
required double deviceBlockSize,
|
||||||
|
}) : _deviceBlockSize = deviceBlockSize,
|
||||||
|
super(key: key);
|
||||||
|
|
||||||
|
final double _deviceBlockSize;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return InkWell(
|
||||||
|
customBorder: CircleBorder(),
|
||||||
|
onTap: () {
|
||||||
|
Navigator.of(context).pushNamed(Routes.myItemsScanScreen);
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(2.5 * _deviceBlockSize),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
child: Icon(
|
||||||
|
Icons.qr_code_scanner,
|
||||||
|
size: 7.1 * _deviceBlockSize,
|
||||||
|
color: Colors.white,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,195 @@
|
|||||||
|
import 'package:cssd/config/colors.dart';
|
||||||
|
import 'package:cssd/utils/scan.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
import 'package:url_launcher/url_launcher.dart';
|
||||||
|
|
||||||
|
import '../../providers/connectivity.dart';
|
||||||
|
import '../../widgets/Global/internet_error.dart';
|
||||||
|
|
||||||
|
class MyItemsScanScreen extends StatefulWidget {
|
||||||
|
@override
|
||||||
|
State<StatefulWidget> createState() {
|
||||||
|
return _MyItemsScanScreenState();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class _MyItemsScanScreenState extends State<MyItemsScanScreen> {
|
||||||
|
TextEditingController idCTRL = new TextEditingController();
|
||||||
|
final _form = GlobalKey<FormState>();
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
final _media = MediaQuery.of(context);
|
||||||
|
// final double _pixelRatio = (_media.size.height / _media.size.width * 7 / 5);
|
||||||
|
final double _deviceWidth = _media.size.width;
|
||||||
|
final double _deviceBlockSize = _deviceWidth / 100;
|
||||||
|
return SafeArea(
|
||||||
|
child: GestureDetector(
|
||||||
|
onTap: () {
|
||||||
|
FocusManager.instance.primaryFocus?.unfocus();
|
||||||
|
},
|
||||||
|
child: Scaffold(
|
||||||
|
appBar: AppBar(
|
||||||
|
titleSpacing: -10,
|
||||||
|
title: Text('My Items'),
|
||||||
|
backgroundColor: Colors.black,
|
||||||
|
leading: IconButton(
|
||||||
|
icon: Icon(
|
||||||
|
Icons.keyboard_arrow_left,
|
||||||
|
size: 35,
|
||||||
|
),
|
||||||
|
onPressed: () => Navigator.of(context).pop(),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
body: Consumer<ConnectivityProvider>(
|
||||||
|
builder: (ct, connection, _) {
|
||||||
|
return connection.conStatus != 'offline'
|
||||||
|
? ListView(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 20),
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
padding: EdgeInsets.only(top: 30),
|
||||||
|
child: Text(
|
||||||
|
'Looking for a Item?',
|
||||||
|
textAlign: TextAlign.left,
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.black,
|
||||||
|
fontSize: 5.5 * _deviceBlockSize,
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
letterSpacing: 3,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
GestureDetector(
|
||||||
|
child: Container(
|
||||||
|
margin: EdgeInsets.symmetric(vertical: 10),
|
||||||
|
height: 200,
|
||||||
|
decoration: BoxDecoration(border: Border.all()),
|
||||||
|
child: Center(
|
||||||
|
child: Text(
|
||||||
|
'Please Scan The Item Barcode',
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.black,
|
||||||
|
fontSize: 5 * _deviceBlockSize,
|
||||||
|
fontWeight: FontWeight.w100,
|
||||||
|
letterSpacing: 3,
|
||||||
|
),
|
||||||
|
textAlign: TextAlign.center,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
onTap: () {
|
||||||
|
scan().then(
|
||||||
|
(String result) {
|
||||||
|
if (result == 'cancel') {
|
||||||
|
print('cancel');
|
||||||
|
} else if (result == 'error') {
|
||||||
|
print('error');
|
||||||
|
} else if (result == 'access') {
|
||||||
|
print('access');
|
||||||
|
} else {
|
||||||
|
launch(
|
||||||
|
'https://cssd-doc.com/Show/Item/$result',
|
||||||
|
);
|
||||||
|
// Navigator.of(context).pushNamed(
|
||||||
|
// Routes.cycleDetailScreen,
|
||||||
|
// arguments: result,
|
||||||
|
// );
|
||||||
|
}
|
||||||
|
},
|
||||||
|
);
|
||||||
|
},
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 10.0,
|
||||||
|
),
|
||||||
|
Form(
|
||||||
|
key: _form,
|
||||||
|
child: TextFormField(
|
||||||
|
validator: (val) {
|
||||||
|
if (val!.isEmpty) {
|
||||||
|
return 'Id required!!';
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
|
controller: idCTRL,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
icon: Icon(
|
||||||
|
FontAwesomeIcons.sortNumericDown,
|
||||||
|
size: 6 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
labelStyle: TextStyle(
|
||||||
|
fontWeight: FontWeight.w100,
|
||||||
|
fontSize: 4 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
isDense: true,
|
||||||
|
labelText: 'Or enter a Item ID',
|
||||||
|
contentPadding: EdgeInsets.symmetric(
|
||||||
|
vertical: 2,
|
||||||
|
horizontal: 3,
|
||||||
|
),
|
||||||
|
focusedBorder: UnderlineInputBorder(
|
||||||
|
// borderRadius: BorderRadius.only(Radius.circular(4)),
|
||||||
|
borderSide: BorderSide(
|
||||||
|
color: Colors.grey,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
style: TextStyle(
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
fontSize: 5 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
keyboardType: TextInputType.number,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 70,
|
||||||
|
),
|
||||||
|
InkWell(
|
||||||
|
onTap: () {
|
||||||
|
if (!_form.currentState!.validate()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
launch(
|
||||||
|
'https://cssd-doc.com/Show/Item/${idCTRL.text}',
|
||||||
|
);
|
||||||
|
// Navigator.of(context).pushNamed(
|
||||||
|
// Routes.cycleDetailScreen,
|
||||||
|
// arguments: idCTRL.text,
|
||||||
|
// );
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.symmetric(
|
||||||
|
horizontal: 5 * _deviceBlockSize,
|
||||||
|
vertical: 10,
|
||||||
|
),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
gradient: LinearGradient(
|
||||||
|
colors: [kDarkBlue, kDarkBlueSub],
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(7),
|
||||||
|
),
|
||||||
|
child: Align(
|
||||||
|
alignment: Alignment.center,
|
||||||
|
child: Text(
|
||||||
|
'Search',
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white,
|
||||||
|
fontSize: 5 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
: ConnectionErrorBox();
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -118,7 +118,7 @@ class _MyPackagesMineScreenState extends State<MyPackagesMineScreen> {
|
|||||||
label: 'ID',
|
label: 'ID',
|
||||||
id: '',
|
id: '',
|
||||||
name: package.filters!.name,
|
name: package.filters!.name,
|
||||||
udi: package.filters!.udi,
|
// udi: package.filters!.udi,
|
||||||
)
|
)
|
||||||
: Container(),
|
: Container(),
|
||||||
package.filters!.name != ''
|
package.filters!.name != ''
|
||||||
@@ -127,18 +127,18 @@ class _MyPackagesMineScreenState extends State<MyPackagesMineScreen> {
|
|||||||
label: 'Package Name',
|
label: 'Package Name',
|
||||||
id: package.filters!.id,
|
id: package.filters!.id,
|
||||||
name: '',
|
name: '',
|
||||||
udi: package.filters!.udi,
|
// udi: package.filters!.udi,
|
||||||
)
|
|
||||||
: Container(),
|
|
||||||
package.filters!.udi != ''
|
|
||||||
? MyPackageFilterChip(
|
|
||||||
deviceBlockSize: _deviceBlockSize,
|
|
||||||
label: 'UDI',
|
|
||||||
id: package.filters!.id,
|
|
||||||
name: package.filters!.name,
|
|
||||||
udi: '',
|
|
||||||
)
|
)
|
||||||
: Container(),
|
: Container(),
|
||||||
|
// package.filters!.udi != ''
|
||||||
|
// ? MyPackageFilterChip(
|
||||||
|
// deviceBlockSize: _deviceBlockSize,
|
||||||
|
// label: 'UDI',
|
||||||
|
// id: package.filters!.id,
|
||||||
|
// name: package.filters!.name,
|
||||||
|
// udi: '',
|
||||||
|
// )
|
||||||
|
// : Container(),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:cssd/config/colors.dart';
|
import 'package:cssd/config/colors.dart';
|
||||||
|
import 'package:cssd/config/routes.dart';
|
||||||
import 'package:cssd/pages/MyPackagesPages/Result/my_packages_mine_screen.dart';
|
import 'package:cssd/pages/MyPackagesPages/Result/my_packages_mine_screen.dart';
|
||||||
import 'package:cssd/pages/MyPackagesPages/Result/my_packages_requests_screen.dart';
|
import 'package:cssd/pages/MyPackagesPages/Result/my_packages_requests_screen.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
@@ -28,6 +29,9 @@ class _MyPackagesResultScreenState extends State<MyPackagesResultScreen>
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
final _media = MediaQuery.of(context);
|
||||||
|
final double _deviceWidth = _media.size.width;
|
||||||
|
final double _deviceBlockSize = _deviceWidth / 100;
|
||||||
return SafeArea(
|
return SafeArea(
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
@@ -60,6 +64,9 @@ class _MyPackagesResultScreenState extends State<MyPackagesResultScreen>
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
floatingActionButton: MyPackageResultFloatingButton(
|
||||||
|
deviceBlockSize: _deviceBlockSize,
|
||||||
|
),
|
||||||
body: TabBarView(
|
body: TabBarView(
|
||||||
controller: _tabController,
|
controller: _tabController,
|
||||||
children: [
|
children: [
|
||||||
@@ -73,3 +80,35 @@ class _MyPackagesResultScreenState extends State<MyPackagesResultScreen>
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class MyPackageResultFloatingButton extends StatelessWidget {
|
||||||
|
const MyPackageResultFloatingButton({
|
||||||
|
Key? key,
|
||||||
|
required double deviceBlockSize,
|
||||||
|
}) : _deviceBlockSize = deviceBlockSize,
|
||||||
|
super(key: key);
|
||||||
|
|
||||||
|
final double _deviceBlockSize;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return InkWell(
|
||||||
|
customBorder: CircleBorder(),
|
||||||
|
onTap: () {
|
||||||
|
Navigator.of(context).pushNamed(Routes.myPackagesScanScreen);
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(2.5 * _deviceBlockSize),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
child: Icon(
|
||||||
|
Icons.qr_code_scanner,
|
||||||
|
size: 7.1 * _deviceBlockSize,
|
||||||
|
color: Colors.white,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ class _MyPackageFilterScreenState extends State<MyPackageFilterScreen> {
|
|||||||
TextEditingController idCTRL = new TextEditingController();
|
TextEditingController idCTRL = new TextEditingController();
|
||||||
TextEditingController hospitalCTRL = new TextEditingController();
|
TextEditingController hospitalCTRL = new TextEditingController();
|
||||||
TextEditingController nameCTRL = new TextEditingController();
|
TextEditingController nameCTRL = new TextEditingController();
|
||||||
TextEditingController udiCTRL = new TextEditingController();
|
// TextEditingController udiCTRL = new TextEditingController();
|
||||||
|
|
||||||
bool isInit = true;
|
bool isInit = true;
|
||||||
PackageFilterObject? filters;
|
PackageFilterObject? filters;
|
||||||
@@ -32,7 +32,7 @@ class _MyPackageFilterScreenState extends State<MyPackageFilterScreen> {
|
|||||||
idCTRL.text = filters!.id;
|
idCTRL.text = filters!.id;
|
||||||
hospitalCTRL.text = filters!.hospital;
|
hospitalCTRL.text = filters!.hospital;
|
||||||
nameCTRL.text = filters!.name;
|
nameCTRL.text = filters!.name;
|
||||||
udiCTRL.text = filters!.udi;
|
// udiCTRL.text = filters!.udi;
|
||||||
super.initState();
|
super.initState();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -203,82 +203,82 @@ class _MyPackageFilterScreenState extends State<MyPackageFilterScreen> {
|
|||||||
.requestFocus(_udiFocusNode);
|
.requestFocus(_udiFocusNode);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 30,
|
// height: 30,
|
||||||
),
|
// ),
|
||||||
Row(
|
// Row(
|
||||||
children: [
|
// children: [
|
||||||
Flexible(
|
// Flexible(
|
||||||
flex: 8,
|
// flex: 8,
|
||||||
child: TextFormField(
|
// child: TextFormField(
|
||||||
controller: udiCTRL,
|
// controller: udiCTRL,
|
||||||
decoration: InputDecoration(
|
// decoration: InputDecoration(
|
||||||
icon: Icon(
|
// icon: Icon(
|
||||||
FontAwesomeIcons.alignLeft,
|
// FontAwesomeIcons.alignLeft,
|
||||||
size: 6 * _deviceBlockSize,
|
// size: 6 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
labelStyle: TextStyle(
|
// labelStyle: TextStyle(
|
||||||
fontWeight: FontWeight.w100,
|
// fontWeight: FontWeight.w100,
|
||||||
fontSize: 4 * _deviceBlockSize,
|
// fontSize: 4 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
labelText: 'UDI',
|
// labelText: 'UDI',
|
||||||
isDense: true,
|
// isDense: true,
|
||||||
contentPadding: EdgeInsets.symmetric(
|
// contentPadding: EdgeInsets.symmetric(
|
||||||
vertical: 2,
|
// vertical: 2,
|
||||||
horizontal: 3,
|
// horizontal: 3,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
fontWeight: FontWeight.w700,
|
// fontWeight: FontWeight.w700,
|
||||||
fontSize: 5 * _deviceBlockSize,
|
// fontSize: 5 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
focusNode: _udiFocusNode,
|
// focusNode: _udiFocusNode,
|
||||||
keyboardType: TextInputType.text,
|
// keyboardType: TextInputType.text,
|
||||||
textInputAction: TextInputAction.next,
|
// textInputAction: TextInputAction.next,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
Flexible(
|
// Flexible(
|
||||||
flex: 1,
|
// flex: 1,
|
||||||
child: InkWell(
|
// child: InkWell(
|
||||||
onTap: () {
|
// onTap: () {
|
||||||
scan().then(
|
// scan().then(
|
||||||
(String result) {
|
// (String result) {
|
||||||
if (result == 'cancel') {
|
// if (result == 'cancel') {
|
||||||
print('cancel');
|
// print('cancel');
|
||||||
} else if (result == 'error') {
|
// } else if (result == 'error') {
|
||||||
print('error');
|
// print('error');
|
||||||
} else if (result == 'access') {
|
// } else if (result == 'access') {
|
||||||
print('access');
|
// print('access');
|
||||||
} else {
|
// } else {
|
||||||
print(result);
|
// print(result);
|
||||||
idCTRL.text = result;
|
// idCTRL.text = result;
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
);
|
// );
|
||||||
},
|
// },
|
||||||
child: Container(
|
// child: Container(
|
||||||
padding: EdgeInsets.all(8),
|
// padding: EdgeInsets.all(8),
|
||||||
decoration: BoxDecoration(
|
// decoration: BoxDecoration(
|
||||||
shape: BoxShape.circle,
|
// shape: BoxShape.circle,
|
||||||
color: Colors.black,
|
// color: Colors.black,
|
||||||
),
|
// ),
|
||||||
child: Icon(
|
// child: Icon(
|
||||||
Icons.qr_code_scanner,
|
// Icons.qr_code_scanner,
|
||||||
size: 5 * _deviceBlockSize,
|
// size: 5 * _deviceBlockSize,
|
||||||
color: Colors.white,
|
// color: Colors.white,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
)
|
// )
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 90,
|
height: 90,
|
||||||
),
|
),
|
||||||
MyPackagesFilterSaveButton(
|
MyPackagesFilterSaveButton(
|
||||||
idCTRL: idCTRL,
|
idCTRL: idCTRL,
|
||||||
nameCTRL: nameCTRL,
|
nameCTRL: nameCTRL,
|
||||||
udiCTRL: udiCTRL,
|
// udiCTRL: udiCTRL,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
firstColor: kDarkPurple,
|
firstColor: kDarkPurple,
|
||||||
secondColor: kDarkPurpleSub,
|
secondColor: kDarkPurpleSub,
|
||||||
|
|||||||
@@ -0,0 +1,195 @@
|
|||||||
|
import 'package:cssd/config/colors.dart';
|
||||||
|
import 'package:cssd/utils/scan.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
import 'package:url_launcher/url_launcher.dart';
|
||||||
|
|
||||||
|
import '../../providers/connectivity.dart';
|
||||||
|
import '../../widgets/Global/internet_error.dart';
|
||||||
|
|
||||||
|
class MyPackagesScanScreen extends StatefulWidget {
|
||||||
|
@override
|
||||||
|
State<StatefulWidget> createState() {
|
||||||
|
return _MyPackagesScanScreenState();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class _MyPackagesScanScreenState extends State<MyPackagesScanScreen> {
|
||||||
|
TextEditingController idCTRL = new TextEditingController();
|
||||||
|
final _form = GlobalKey<FormState>();
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
final _media = MediaQuery.of(context);
|
||||||
|
// final double _pixelRatio = (_media.size.height / _media.size.width * 7 / 5);
|
||||||
|
final double _deviceWidth = _media.size.width;
|
||||||
|
final double _deviceBlockSize = _deviceWidth / 100;
|
||||||
|
return SafeArea(
|
||||||
|
child: GestureDetector(
|
||||||
|
onTap: () {
|
||||||
|
FocusManager.instance.primaryFocus?.unfocus();
|
||||||
|
},
|
||||||
|
child: Scaffold(
|
||||||
|
appBar: AppBar(
|
||||||
|
titleSpacing: -10,
|
||||||
|
title: Text('My Packages'),
|
||||||
|
backgroundColor: Colors.black,
|
||||||
|
leading: IconButton(
|
||||||
|
icon: Icon(
|
||||||
|
Icons.keyboard_arrow_left,
|
||||||
|
size: 35,
|
||||||
|
),
|
||||||
|
onPressed: () => Navigator.of(context).pop(),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
body: Consumer<ConnectivityProvider>(
|
||||||
|
builder: (ct, connection, _) {
|
||||||
|
return connection.conStatus != 'offline'
|
||||||
|
? ListView(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 20),
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
padding: EdgeInsets.only(top: 30),
|
||||||
|
child: Text(
|
||||||
|
'Looking for a Package?',
|
||||||
|
textAlign: TextAlign.left,
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.black,
|
||||||
|
fontSize: 5.5 * _deviceBlockSize,
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
letterSpacing: 3,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
GestureDetector(
|
||||||
|
child: Container(
|
||||||
|
margin: EdgeInsets.symmetric(vertical: 10),
|
||||||
|
height: 200,
|
||||||
|
decoration: BoxDecoration(border: Border.all()),
|
||||||
|
child: Center(
|
||||||
|
child: Text(
|
||||||
|
'Please Scan The Package Barcode',
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.black,
|
||||||
|
fontSize: 5 * _deviceBlockSize,
|
||||||
|
fontWeight: FontWeight.w100,
|
||||||
|
letterSpacing: 3,
|
||||||
|
),
|
||||||
|
textAlign: TextAlign.center,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
onTap: () {
|
||||||
|
scan().then(
|
||||||
|
(String result) {
|
||||||
|
if (result == 'cancel') {
|
||||||
|
print('cancel');
|
||||||
|
} else if (result == 'error') {
|
||||||
|
print('error');
|
||||||
|
} else if (result == 'access') {
|
||||||
|
print('access');
|
||||||
|
} else {
|
||||||
|
launch(
|
||||||
|
'https://cssd-doc.com/Show/Package/$result',
|
||||||
|
);
|
||||||
|
// Navigator.of(context).pushNamed(
|
||||||
|
// Routes.cycleDetailScreen,
|
||||||
|
// arguments: result,
|
||||||
|
// );
|
||||||
|
}
|
||||||
|
},
|
||||||
|
);
|
||||||
|
},
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 10.0,
|
||||||
|
),
|
||||||
|
Form(
|
||||||
|
key: _form,
|
||||||
|
child: TextFormField(
|
||||||
|
validator: (val) {
|
||||||
|
if (val!.isEmpty) {
|
||||||
|
return 'Id required!!';
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
|
controller: idCTRL,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
icon: Icon(
|
||||||
|
FontAwesomeIcons.sortNumericDown,
|
||||||
|
size: 6 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
labelStyle: TextStyle(
|
||||||
|
fontWeight: FontWeight.w100,
|
||||||
|
fontSize: 4 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
isDense: true,
|
||||||
|
labelText: 'Or enter a Package ID',
|
||||||
|
contentPadding: EdgeInsets.symmetric(
|
||||||
|
vertical: 2,
|
||||||
|
horizontal: 3,
|
||||||
|
),
|
||||||
|
focusedBorder: UnderlineInputBorder(
|
||||||
|
// borderRadius: BorderRadius.only(Radius.circular(4)),
|
||||||
|
borderSide: BorderSide(
|
||||||
|
color: Colors.grey,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
style: TextStyle(
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
fontSize: 5 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
keyboardType: TextInputType.number,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 70,
|
||||||
|
),
|
||||||
|
InkWell(
|
||||||
|
onTap: () {
|
||||||
|
if (!_form.currentState!.validate()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
launch(
|
||||||
|
'https://cssd-doc.com/Show/Package/${idCTRL.text}',
|
||||||
|
);
|
||||||
|
// Navigator.of(context).pushNamed(
|
||||||
|
// Routes.cycleDetailScreen,
|
||||||
|
// arguments: idCTRL.text,
|
||||||
|
// );
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.symmetric(
|
||||||
|
horizontal: 5 * _deviceBlockSize,
|
||||||
|
vertical: 10,
|
||||||
|
),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
gradient: LinearGradient(
|
||||||
|
colors: [kDarkPurple, kDarkPurpleSub],
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(7),
|
||||||
|
),
|
||||||
|
child: Align(
|
||||||
|
alignment: Alignment.center,
|
||||||
|
child: Text(
|
||||||
|
'Search',
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white,
|
||||||
|
fontSize: 5 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
: ConnectionErrorBox();
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
import 'package:cssd/config/colors.dart';
|
import 'package:cssd/config/colors.dart';
|
||||||
import 'package:cssd/models/package_model.dart';
|
import 'package:cssd/models/package_model.dart';
|
||||||
import 'package:cssd/providers/packages.dart';
|
import 'package:cssd/providers/packages.dart';
|
||||||
|
import 'package:cssd/widgets/PackageScreens/Add/add_item_box.dart';
|
||||||
import 'package:cssd/widgets/PackageScreens/Add/package_save_button.dart';
|
import 'package:cssd/widgets/PackageScreens/Add/package_save_button.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
@@ -9,7 +10,6 @@ import 'package:provider/provider.dart';
|
|||||||
|
|
||||||
import '../../config/routes.dart';
|
import '../../config/routes.dart';
|
||||||
import '../../providers/connectivity.dart';
|
import '../../providers/connectivity.dart';
|
||||||
import '../../widgets/CycleScreens/Add/add_label_box.dart';
|
|
||||||
import '../../widgets/Global/internet_error.dart';
|
import '../../widgets/Global/internet_error.dart';
|
||||||
|
|
||||||
class PackageAddScreen extends StatefulWidget {
|
class PackageAddScreen extends StatefulWidget {
|
||||||
@@ -21,7 +21,7 @@ class _PackageAddScreenState extends State<PackageAddScreen> {
|
|||||||
final _packageUdiFocusNode = FocusNode();
|
final _packageUdiFocusNode = FocusNode();
|
||||||
final _descriptionFocusNode = FocusNode();
|
final _descriptionFocusNode = FocusNode();
|
||||||
TextEditingController descriptionCTRL = new TextEditingController();
|
TextEditingController descriptionCTRL = new TextEditingController();
|
||||||
TextEditingController udiCTRL = new TextEditingController();
|
// TextEditingController udiCTRL = new TextEditingController();
|
||||||
TextEditingController nameCTRL = new TextEditingController();
|
TextEditingController nameCTRL = new TextEditingController();
|
||||||
TextEditingController dateCTRL = new TextEditingController();
|
TextEditingController dateCTRL = new TextEditingController();
|
||||||
final _form = GlobalKey<FormState>();
|
final _form = GlobalKey<FormState>();
|
||||||
@@ -32,7 +32,7 @@ class _PackageAddScreenState extends State<PackageAddScreen> {
|
|||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
descriptionCTRL.text = '';
|
descriptionCTRL.text = '';
|
||||||
udiCTRL.text = '';
|
// udiCTRL.text = '';
|
||||||
nameCTRL.text = '';
|
nameCTRL.text = '';
|
||||||
dateCTRL.text = DateFormat('y-M-d').format(DateTime.now());
|
dateCTRL.text = DateFormat('y-M-d').format(DateTime.now());
|
||||||
super.initState();
|
super.initState();
|
||||||
@@ -152,43 +152,43 @@ class _PackageAddScreenState extends State<PackageAddScreen> {
|
|||||||
SizedBox(
|
SizedBox(
|
||||||
height: 30,
|
height: 30,
|
||||||
),
|
),
|
||||||
TextFormField(
|
// TextFormField(
|
||||||
validator: (val) {
|
// validator: (val) {
|
||||||
if (val!.isEmpty) {
|
// if (val!.isEmpty) {
|
||||||
return 'UDI required!';
|
// return 'UDI required!';
|
||||||
}
|
// }
|
||||||
return null;
|
// return null;
|
||||||
},
|
// },
|
||||||
controller: udiCTRL,
|
// controller: udiCTRL,
|
||||||
decoration: InputDecoration(
|
// decoration: InputDecoration(
|
||||||
icon: Icon(
|
// icon: Icon(
|
||||||
FontAwesomeIcons.alignLeft,
|
// FontAwesomeIcons.alignLeft,
|
||||||
size: 7 * _deviceBlockSize,
|
// size: 7 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
labelStyle: TextStyle(
|
// labelStyle: TextStyle(
|
||||||
fontWeight: FontWeight.w100,
|
// fontWeight: FontWeight.w100,
|
||||||
fontSize: 4 * _deviceBlockSize,
|
// fontSize: 4 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
isDense: true,
|
// isDense: true,
|
||||||
labelText: 'UDI',
|
// labelText: 'UDI',
|
||||||
contentPadding: EdgeInsets.symmetric(
|
// contentPadding: EdgeInsets.symmetric(
|
||||||
vertical: 2, horizontal: 3),
|
// vertical: 2, horizontal: 3),
|
||||||
),
|
// ),
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
fontWeight: FontWeight.w700,
|
// fontWeight: FontWeight.w700,
|
||||||
fontSize: 5 * _deviceBlockSize,
|
// fontSize: 5 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
focusNode: _packageUdiFocusNode,
|
// focusNode: _packageUdiFocusNode,
|
||||||
keyboardType: TextInputType.visiblePassword,
|
// keyboardType: TextInputType.visiblePassword,
|
||||||
textInputAction: TextInputAction.next,
|
// textInputAction: TextInputAction.next,
|
||||||
onFieldSubmitted: (_) {
|
// onFieldSubmitted: (_) {
|
||||||
FocusScope.of(context)
|
// FocusScope.of(context)
|
||||||
.requestFocus(_descriptionFocusNode);
|
// .requestFocus(_descriptionFocusNode);
|
||||||
},
|
// },
|
||||||
),
|
// ),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 20,
|
// height: 20,
|
||||||
),
|
// ),
|
||||||
Container(
|
Container(
|
||||||
margin: EdgeInsets.symmetric(vertical: 5),
|
margin: EdgeInsets.symmetric(vertical: 5),
|
||||||
child: Text(
|
child: Text(
|
||||||
@@ -205,14 +205,14 @@ class _PackageAddScreenState extends State<PackageAddScreen> {
|
|||||||
ListView.builder(
|
ListView.builder(
|
||||||
physics: NeverScrollableScrollPhysics(),
|
physics: NeverScrollableScrollPhysics(),
|
||||||
shrinkWrap: true,
|
shrinkWrap: true,
|
||||||
itemBuilder: (ctx, index) => AddLabelBox(
|
itemBuilder: (ctx, index) => AddItemBox(
|
||||||
text: 'Select Items Included',
|
text: 'Select Items Included',
|
||||||
iconColor: kPurpleSub,
|
iconColor: kPurpleSub,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
values:
|
values:
|
||||||
packageProvider.itemValues[index],
|
packageProvider.itemValues[index],
|
||||||
vals: packageProvider.itemVals,
|
vals: packageProvider.itemVals,
|
||||||
initialLabelValue:
|
initialItemValue:
|
||||||
packageProvider.initialItemValue,
|
packageProvider.initialItemValue,
|
||||||
index: index,
|
index: index,
|
||||||
),
|
),
|
||||||
@@ -258,7 +258,7 @@ class _PackageAddScreenState extends State<PackageAddScreen> {
|
|||||||
listen: false,
|
listen: false,
|
||||||
).itemValues,
|
).itemValues,
|
||||||
nameCTRL: nameCTRL,
|
nameCTRL: nameCTRL,
|
||||||
udiCTRL: udiCTRL,
|
// udiCTRL: udiCTRL,
|
||||||
dateValue: dateCTRL.text,
|
dateValue: dateCTRL.text,
|
||||||
descriptionCTRL: descriptionCTRL,
|
descriptionCTRL: descriptionCTRL,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ class _PackageFilterScreenState extends State<PackageFilterScreen> {
|
|||||||
TextEditingController idCTRL = new TextEditingController();
|
TextEditingController idCTRL = new TextEditingController();
|
||||||
TextEditingController hospitalCTRL = new TextEditingController();
|
TextEditingController hospitalCTRL = new TextEditingController();
|
||||||
TextEditingController nameCTRL = new TextEditingController();
|
TextEditingController nameCTRL = new TextEditingController();
|
||||||
TextEditingController udiCTRL = new TextEditingController();
|
// TextEditingController udiCTRL = new TextEditingController();
|
||||||
|
|
||||||
List<Map<String, String>> hospitalVals = [];
|
List<Map<String, String>> hospitalVals = [];
|
||||||
bool isInit = true;
|
bool isInit = true;
|
||||||
@@ -33,7 +33,7 @@ class _PackageFilterScreenState extends State<PackageFilterScreen> {
|
|||||||
idCTRL.text = filters!.id;
|
idCTRL.text = filters!.id;
|
||||||
hospitalCTRL.text = filters!.hospital;
|
hospitalCTRL.text = filters!.hospital;
|
||||||
nameCTRL.text = filters!.name;
|
nameCTRL.text = filters!.name;
|
||||||
udiCTRL.text = filters!.udi;
|
// udiCTRL.text = filters!.udi;
|
||||||
super.initState();
|
super.initState();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -233,35 +233,35 @@ class _PackageFilterScreenState extends State<PackageFilterScreen> {
|
|||||||
SizedBox(
|
SizedBox(
|
||||||
height: 30,
|
height: 30,
|
||||||
),
|
),
|
||||||
TextFormField(
|
// TextFormField(
|
||||||
controller: udiCTRL,
|
// controller: udiCTRL,
|
||||||
decoration: InputDecoration(
|
// decoration: InputDecoration(
|
||||||
icon: Icon(
|
// icon: Icon(
|
||||||
FontAwesomeIcons.alignLeft,
|
// FontAwesomeIcons.alignLeft,
|
||||||
size: 6 * _deviceBlockSize,
|
// size: 6 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
labelStyle: TextStyle(
|
// labelStyle: TextStyle(
|
||||||
fontWeight: FontWeight.w100,
|
// fontWeight: FontWeight.w100,
|
||||||
fontSize: 4 * _deviceBlockSize,
|
// fontSize: 4 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
labelText: 'UDI',
|
// labelText: 'UDI',
|
||||||
isDense: true,
|
// isDense: true,
|
||||||
contentPadding: EdgeInsets.symmetric(
|
// contentPadding: EdgeInsets.symmetric(
|
||||||
vertical: 2,
|
// vertical: 2,
|
||||||
horizontal: 3,
|
// horizontal: 3,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
fontWeight: FontWeight.w700,
|
// fontWeight: FontWeight.w700,
|
||||||
fontSize: 5 * _deviceBlockSize,
|
// fontSize: 5 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
focusNode: _udiFocusNode,
|
// focusNode: _udiFocusNode,
|
||||||
keyboardType: TextInputType.text,
|
// keyboardType: TextInputType.text,
|
||||||
textInputAction: TextInputAction.next,
|
// textInputAction: TextInputAction.next,
|
||||||
),
|
// ),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 30.0,
|
// height: 30.0,
|
||||||
),
|
// ),
|
||||||
FilterHospitalBox(
|
FilterHospitalBox(
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
hospitalCTRL: hospitalCTRL,
|
hospitalCTRL: hospitalCTRL,
|
||||||
@@ -276,7 +276,7 @@ class _PackageFilterScreenState extends State<PackageFilterScreen> {
|
|||||||
hospitalCTRL: hospitalCTRL,
|
hospitalCTRL: hospitalCTRL,
|
||||||
idCTRL: idCTRL,
|
idCTRL: idCTRL,
|
||||||
nameCTRL: nameCTRL,
|
nameCTRL: nameCTRL,
|
||||||
udiCTRL: udiCTRL,
|
// udiCTRL: udiCTRL,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
),
|
),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ class _PackageResultScreenState extends State<PackageResultScreen> {
|
|||||||
id: '',
|
id: '',
|
||||||
name: package.filters!.name,
|
name: package.filters!.name,
|
||||||
hospital: package.filters!.hospital,
|
hospital: package.filters!.hospital,
|
||||||
udi: package.filters!.udi,
|
// udi: package.filters!.udi,
|
||||||
)
|
)
|
||||||
: Container(),
|
: Container(),
|
||||||
package.filters!.name != ''
|
package.filters!.name != ''
|
||||||
@@ -125,7 +125,7 @@ class _PackageResultScreenState extends State<PackageResultScreen> {
|
|||||||
label: 'Package Name',
|
label: 'Package Name',
|
||||||
id: package.filters!.id,
|
id: package.filters!.id,
|
||||||
name: '',
|
name: '',
|
||||||
udi: package.filters!.udi,
|
// udi: package.filters!.udi,
|
||||||
hospital: package.filters!.hospital,
|
hospital: package.filters!.hospital,
|
||||||
)
|
)
|
||||||
: Container(),
|
: Container(),
|
||||||
@@ -135,20 +135,20 @@ class _PackageResultScreenState extends State<PackageResultScreen> {
|
|||||||
label: 'Hospital',
|
label: 'Hospital',
|
||||||
id: package.filters!.id,
|
id: package.filters!.id,
|
||||||
name: package.filters!.name,
|
name: package.filters!.name,
|
||||||
udi: package.filters!.udi,
|
// udi: package.filters!.udi,
|
||||||
hospital: '',
|
hospital: '',
|
||||||
)
|
)
|
||||||
: Container(),
|
: Container(),
|
||||||
package.filters!.udi != ''
|
// package.filters!.udi != ''
|
||||||
? PackageFilterChip(
|
// ? PackageFilterChip(
|
||||||
deviceBlockSize: _deviceBlockSize,
|
// deviceBlockSize: _deviceBlockSize,
|
||||||
label: 'UDI',
|
// label: 'UDI',
|
||||||
id: package.filters!.id,
|
// id: package.filters!.id,
|
||||||
name: package.filters!.name,
|
// name: package.filters!.name,
|
||||||
udi: '',
|
// udi: '',
|
||||||
hospital: package.filters!.hospital,
|
// hospital: package.filters!.hospital,
|
||||||
)
|
// )
|
||||||
: Container(),
|
// : Container(),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class _PackageUpdateScreenState extends State<PackageUpdateScreen> {
|
|||||||
final _udiFocusNode = FocusNode();
|
final _udiFocusNode = FocusNode();
|
||||||
final _descriptionFocusNode = FocusNode();
|
final _descriptionFocusNode = FocusNode();
|
||||||
TextEditingController nameCTRL = new TextEditingController();
|
TextEditingController nameCTRL = new TextEditingController();
|
||||||
TextEditingController udiCTRL = new TextEditingController();
|
// TextEditingController udiCTRL = new TextEditingController();
|
||||||
TextEditingController descriptionCTRL = new TextEditingController();
|
TextEditingController descriptionCTRL = new TextEditingController();
|
||||||
TextEditingController itemCTRL = new TextEditingController();
|
TextEditingController itemCTRL = new TextEditingController();
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ class _PackageUpdateScreenState extends State<PackageUpdateScreen> {
|
|||||||
() {
|
() {
|
||||||
datas = result;
|
datas = result;
|
||||||
nameCTRL.text = datas!.name;
|
nameCTRL.text = datas!.name;
|
||||||
udiCTRL.text = datas!.udi;
|
// udiCTRL.text = datas!.udi;
|
||||||
descriptionCTRL.text = datas!.description;
|
descriptionCTRL.text = datas!.description;
|
||||||
for (String item in datas!.items) {
|
for (String item in datas!.items) {
|
||||||
itemCTRL.text = item;
|
itemCTRL.text = item;
|
||||||
@@ -149,43 +149,43 @@ class _PackageUpdateScreenState extends State<PackageUpdateScreen> {
|
|||||||
SizedBox(
|
SizedBox(
|
||||||
height: 20,
|
height: 20,
|
||||||
),
|
),
|
||||||
TextFormField(
|
// TextFormField(
|
||||||
validator: (val) {
|
// validator: (val) {
|
||||||
if (val!.isEmpty) {
|
// if (val!.isEmpty) {
|
||||||
return 'UDI required!';
|
// return 'UDI required!';
|
||||||
}
|
// }
|
||||||
return null;
|
// return null;
|
||||||
},
|
// },
|
||||||
controller: udiCTRL,
|
// controller: udiCTRL,
|
||||||
decoration: InputDecoration(
|
// decoration: InputDecoration(
|
||||||
icon: Icon(
|
// icon: Icon(
|
||||||
FontAwesomeIcons.alignLeft,
|
// FontAwesomeIcons.alignLeft,
|
||||||
size: 7 * _deviceBlockSize,
|
// size: 7 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
labelStyle: TextStyle(
|
// labelStyle: TextStyle(
|
||||||
fontWeight: FontWeight.w100,
|
// fontWeight: FontWeight.w100,
|
||||||
fontSize: 4 * _deviceBlockSize,
|
// fontSize: 4 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
isDense: true,
|
// isDense: true,
|
||||||
labelText: 'UDI',
|
// labelText: 'UDI',
|
||||||
contentPadding: EdgeInsets.symmetric(
|
// contentPadding: EdgeInsets.symmetric(
|
||||||
vertical: 2, horizontal: 3),
|
// vertical: 2, horizontal: 3),
|
||||||
),
|
// ),
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
fontWeight: FontWeight.w700,
|
// fontWeight: FontWeight.w700,
|
||||||
fontSize: 5 * _deviceBlockSize,
|
// fontSize: 5 * _deviceBlockSize,
|
||||||
),
|
// ),
|
||||||
focusNode: _udiFocusNode,
|
// focusNode: _udiFocusNode,
|
||||||
keyboardType: TextInputType.text,
|
// keyboardType: TextInputType.text,
|
||||||
textInputAction: TextInputAction.done,
|
// textInputAction: TextInputAction.done,
|
||||||
onFieldSubmitted: (_) {
|
// onFieldSubmitted: (_) {
|
||||||
FocusScope.of(context)
|
// FocusScope.of(context)
|
||||||
.requestFocus(_descriptionFocusNode);
|
// .requestFocus(_descriptionFocusNode);
|
||||||
},
|
// },
|
||||||
),
|
// ),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 20,
|
// height: 20,
|
||||||
),
|
// ),
|
||||||
TextFormField(
|
TextFormField(
|
||||||
controller: descriptionCTRL,
|
controller: descriptionCTRL,
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
@@ -218,7 +218,7 @@ class _PackageUpdateScreenState extends State<PackageUpdateScreen> {
|
|||||||
form: _form,
|
form: _form,
|
||||||
id: datas!.id,
|
id: datas!.id,
|
||||||
nameCTRL: nameCTRL,
|
nameCTRL: nameCTRL,
|
||||||
udiCTRL: udiCTRL,
|
// udiCTRL: udiCTRL,
|
||||||
itemCTRL: itemCTRL,
|
itemCTRL: itemCTRL,
|
||||||
deviceBlockSize: _deviceBlockSize,
|
deviceBlockSize: _deviceBlockSize,
|
||||||
descriptionCTRL: descriptionCTRL,
|
descriptionCTRL: descriptionCTRL,
|
||||||
|
|||||||
@@ -182,6 +182,8 @@ class ItemProvider extends ChangeNotifier {
|
|||||||
'Authorization': User.token,
|
'Authorization': User.token,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
print(response.body);
|
||||||
|
|
||||||
if (response.statusCode == 200) {
|
if (response.statusCode == 200) {
|
||||||
items!.removeWhere((item) {
|
items!.removeWhere((item) {
|
||||||
return item.id.toString() == id;
|
return item.id.toString() == id;
|
||||||
|
|||||||
@@ -86,8 +86,9 @@ class LabelsProvider extends ChangeNotifier {
|
|||||||
List<String> result = [];
|
List<String> result = [];
|
||||||
var filterDatas = json.decode(response.body);
|
var filterDatas = json.decode(response.body);
|
||||||
for (var package in filterDatas['data']) {
|
for (var package in filterDatas['data']) {
|
||||||
result.add(
|
// result.add(
|
||||||
"${package['name']} - ${package['udi'] != null ? package['udi'] : ''}");
|
// "${package['name']} - ${package['package_id'] != null ? package['package_id'] : ''}");
|
||||||
|
result.add(package['id'].toString());
|
||||||
}
|
}
|
||||||
packageVals = result;
|
packageVals = result;
|
||||||
initialPackageValue = packageVals[0];
|
initialPackageValue = packageVals[0];
|
||||||
@@ -98,9 +99,12 @@ class LabelsProvider extends ChangeNotifier {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> createLabelResult(lotNumber, cycleNumber, sterileDate, package,
|
Future<void> createLabelResult(lotNumber, cycleNumber, sterileDate, packages,
|
||||||
expireDate, sterilizerId) async {
|
expireDate, sterilizerId) async {
|
||||||
// print(labs);
|
List<Map<String, Object>> pkgs = [];
|
||||||
|
for (var package in packages) {
|
||||||
|
pkgs.add({'name': '', 'id': package});
|
||||||
|
}
|
||||||
var response = await http.post(Uri.parse(Url.createLabelResult),
|
var response = await http.post(Uri.parse(Url.createLabelResult),
|
||||||
body: json.encode(
|
body: json.encode(
|
||||||
{
|
{
|
||||||
@@ -109,7 +113,7 @@ class LabelsProvider extends ChangeNotifier {
|
|||||||
'sterilizer_id': sterilizerId,
|
'sterilizer_id': sterilizerId,
|
||||||
'cycle_number': cycleNumber,
|
'cycle_number': cycleNumber,
|
||||||
'lot_number': lotNumber,
|
'lot_number': lotNumber,
|
||||||
'package_id': package['id']
|
'package_id': pkgs,
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
headers: {
|
headers: {
|
||||||
@@ -118,7 +122,6 @@ class LabelsProvider extends ChangeNotifier {
|
|||||||
"Content-Type": "application/json",
|
"Content-Type": "application/json",
|
||||||
"Accept": "application/json"
|
"Accept": "application/json"
|
||||||
});
|
});
|
||||||
|
|
||||||
print(response.body);
|
print(response.body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -127,7 +130,7 @@ class LabelsProvider extends ChangeNotifier {
|
|||||||
lotNumber,
|
lotNumber,
|
||||||
cycleNumber,
|
cycleNumber,
|
||||||
sterileDate,
|
sterileDate,
|
||||||
package,
|
// package,
|
||||||
expireDate,
|
expireDate,
|
||||||
sterilizerId,
|
sterilizerId,
|
||||||
) async {
|
) async {
|
||||||
@@ -139,7 +142,7 @@ class LabelsProvider extends ChangeNotifier {
|
|||||||
'sterilizer_id': sterilizerId,
|
'sterilizer_id': sterilizerId,
|
||||||
'cycle_number': cycleNumber,
|
'cycle_number': cycleNumber,
|
||||||
'lot_number': lotNumber,
|
'lot_number': lotNumber,
|
||||||
'package_id': package['id'],
|
// 'package_id': package['id'],
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
var response = await http.put(Uri.parse(Url.updateLabelResult(id)),
|
var response = await http.put(Uri.parse(Url.updateLabelResult(id)),
|
||||||
@@ -150,7 +153,7 @@ class LabelsProvider extends ChangeNotifier {
|
|||||||
'sterilizer_id': sterilizerId,
|
'sterilizer_id': sterilizerId,
|
||||||
'cycle_number': cycleNumber,
|
'cycle_number': cycleNumber,
|
||||||
'lot_number': lotNumber,
|
'lot_number': lotNumber,
|
||||||
'package_id': package['id'],
|
// 'package_id': package['id'],
|
||||||
// 'package': {
|
// 'package': {
|
||||||
// 'id': package['id'],
|
// 'id': package['id'],
|
||||||
// 'name': package['name'],
|
// 'name': package['name'],
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ class MyPackageProvider extends ChangeNotifier {
|
|||||||
MyPackageFilterObject? filters = MyPackageFilterObject(
|
MyPackageFilterObject? filters = MyPackageFilterObject(
|
||||||
id: '',
|
id: '',
|
||||||
name: '',
|
name: '',
|
||||||
udi: '',
|
// udi: '',
|
||||||
);
|
);
|
||||||
int pageNumber = 1;
|
int pageNumber = 1;
|
||||||
void resetPageNumber() => pageNumber = 1;
|
void resetPageNumber() => pageNumber = 1;
|
||||||
@@ -64,15 +64,15 @@ class MyPackageProvider extends ChangeNotifier {
|
|||||||
void setFilters(
|
void setFilters(
|
||||||
id,
|
id,
|
||||||
name,
|
name,
|
||||||
udi,
|
// udi,
|
||||||
) {
|
) {
|
||||||
pageNumber = 1;
|
pageNumber = 1;
|
||||||
filters = MyPackageFilterObject(
|
filters = MyPackageFilterObject(
|
||||||
id: id,
|
id: id,
|
||||||
name: name,
|
name: name,
|
||||||
udi: udi,
|
// udi: udi,
|
||||||
);
|
);
|
||||||
if (filters!.id == '' && filters!.name == '' && filters!.udi == '') {
|
if (filters!.id == '' && filters!.name == '') {
|
||||||
filterOn = false;
|
filterOn = false;
|
||||||
} else {
|
} else {
|
||||||
filterOn = true;
|
filterOn = true;
|
||||||
@@ -89,9 +89,9 @@ class MyPackageProvider extends ChangeNotifier {
|
|||||||
if (filters!.name != '') {
|
if (filters!.name != '') {
|
||||||
url += '&name=${filters!.name}';
|
url += '&name=${filters!.name}';
|
||||||
}
|
}
|
||||||
if (filters!.udi != '') {
|
// if (filters!.udi != '') {
|
||||||
url += '&udi=${filters!.udi}';
|
// url += '&package_id=${filters!.udi}';
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
var response = await http.get(
|
var response = await http.get(
|
||||||
Uri.parse(url),
|
Uri.parse(url),
|
||||||
@@ -126,9 +126,9 @@ class MyPackageProvider extends ChangeNotifier {
|
|||||||
if (filters!.name != '') {
|
if (filters!.name != '') {
|
||||||
url += '&name=${filters!.name}';
|
url += '&name=${filters!.name}';
|
||||||
}
|
}
|
||||||
if (filters!.udi != '') {
|
// if (filters!.udi != '') {
|
||||||
url += '&udi=${filters!.udi}';
|
// url += '&package_id=${filters!.udi}';
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
var response = await http.get(
|
var response = await http.get(
|
||||||
Uri.parse(url),
|
Uri.parse(url),
|
||||||
|
|||||||
+18
-20
@@ -44,7 +44,7 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
id: '',
|
id: '',
|
||||||
hospital: '',
|
hospital: '',
|
||||||
name: '',
|
name: '',
|
||||||
udi: '',
|
// udi: '',
|
||||||
);
|
);
|
||||||
int pageNumber = 1;
|
int pageNumber = 1;
|
||||||
void resetPageNumber() => pageNumber = 1;
|
void resetPageNumber() => pageNumber = 1;
|
||||||
@@ -87,6 +87,7 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
List<String> result = [];
|
List<String> result = [];
|
||||||
var filterData = json.decode(response.body);
|
var filterData = json.decode(response.body);
|
||||||
for (var item in filterData['data']) {
|
for (var item in filterData['data']) {
|
||||||
|
// result.add("${item['name']} - ${item['udi'] != null ? item['udi'] : ''}");
|
||||||
result.add(item['id'].toString());
|
result.add(item['id'].toString());
|
||||||
}
|
}
|
||||||
itemVals = result;
|
itemVals = result;
|
||||||
@@ -100,22 +101,22 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
|
|
||||||
Future<void> createPackageResult(
|
Future<void> createPackageResult(
|
||||||
name,
|
name,
|
||||||
udi,
|
// udi,
|
||||||
items,
|
items,
|
||||||
note,
|
note,
|
||||||
) async {
|
) async {
|
||||||
List<Map<String, Object>> items = [];
|
List<Map<String, Object>> itms = [];
|
||||||
for (var item in items) {
|
for (var item in items) {
|
||||||
items.add({'name': '', 'id': item});
|
itms.add({'id': item});
|
||||||
}
|
}
|
||||||
var response = await http.post(
|
var response = await http.post(
|
||||||
Uri.parse(Url.createPackageResult),
|
Uri.parse(Url.createPackageResult),
|
||||||
body: json.encode(
|
body: json.encode(
|
||||||
{
|
{
|
||||||
'note': note,
|
'note': note,
|
||||||
'items': items,
|
'items': itms,
|
||||||
'name': name,
|
'name': name,
|
||||||
'udi': udi,
|
// 'package_id': udi,
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
headers: {
|
headers: {
|
||||||
@@ -132,7 +133,7 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
Future<void> updatePackageResult(
|
Future<void> updatePackageResult(
|
||||||
id,
|
id,
|
||||||
name,
|
name,
|
||||||
udi,
|
// udi,
|
||||||
description,
|
description,
|
||||||
items,
|
items,
|
||||||
) async {
|
) async {
|
||||||
@@ -143,14 +144,14 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
print({
|
print({
|
||||||
'note': description,
|
'note': description,
|
||||||
'name': name,
|
'name': name,
|
||||||
'udi': udi,
|
// 'package_id': udi,
|
||||||
'items': items,
|
'items': items,
|
||||||
});
|
});
|
||||||
var response = await http.put(Uri.parse(Url.updatePackageResult(id)),
|
var response = await http.put(Uri.parse(Url.updatePackageResult(id)),
|
||||||
body: json.encode(
|
body: json.encode(
|
||||||
{
|
{
|
||||||
'name': name,
|
'name': name,
|
||||||
'udi': udi,
|
// 'package_id': udi,
|
||||||
'note': description,
|
'note': description,
|
||||||
'items': items,
|
'items': items,
|
||||||
},
|
},
|
||||||
@@ -186,19 +187,16 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
id,
|
id,
|
||||||
name,
|
name,
|
||||||
hospital,
|
hospital,
|
||||||
udi,
|
// udi,
|
||||||
) {
|
) {
|
||||||
pageNumber = 1;
|
pageNumber = 1;
|
||||||
filters = PackageFilterObject(
|
filters = PackageFilterObject(
|
||||||
id: id,
|
id: id,
|
||||||
name: name,
|
name: name,
|
||||||
hospital: hospital,
|
hospital: hospital,
|
||||||
udi: udi,
|
// udi: udi,
|
||||||
);
|
);
|
||||||
if (filters!.id == '' &&
|
if (filters!.id == '' && filters!.name == '' && filters!.hospital == '') {
|
||||||
filters!.name == '' &&
|
|
||||||
filters!.hospital == '' &&
|
|
||||||
filters!.udi != '') {
|
|
||||||
filterOn = false;
|
filterOn = false;
|
||||||
} else {
|
} else {
|
||||||
filterOn = true;
|
filterOn = true;
|
||||||
@@ -229,9 +227,9 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
if (filters!.hospital != '') {
|
if (filters!.hospital != '') {
|
||||||
url += '&medical_center_id=${filters!.hospital}';
|
url += '&medical_center_id=${filters!.hospital}';
|
||||||
}
|
}
|
||||||
if (filters!.udi != '') {
|
// if (filters!.udi != '') {
|
||||||
url += '&udi=${filters!.udi}';
|
// url += '&package_id=${filters!.udi}';
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
var response = await http.get(
|
var response = await http.get(
|
||||||
Uri.parse(url),
|
Uri.parse(url),
|
||||||
@@ -270,7 +268,7 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
description: 'null',
|
description: 'null',
|
||||||
createDate: '2020-07-14 13:50:42',
|
createDate: '2020-07-14 13:50:42',
|
||||||
hospitalName: 'null',
|
hospitalName: 'null',
|
||||||
udi: 'null',
|
// udi: 'null',
|
||||||
items: [],
|
items: [],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -284,7 +282,7 @@ class PackageProvider extends ChangeNotifier {
|
|||||||
id: data['id'].toString(),
|
id: data['id'].toString(),
|
||||||
name: data['name'] != null ? data['name'] : '',
|
name: data['name'] != null ? data['name'] : '',
|
||||||
description: data['note'] != null ? data['note'] : '',
|
description: data['note'] != null ? data['note'] : '',
|
||||||
udi: data['udi'] != null ? data['udi'] : '',
|
// udi: data['package_id'] != null ? data['package_id'] : '',
|
||||||
createDate: data['created_at'] != null ? data['created_at'] : '',
|
createDate: data['created_at'] != null ? data['created_at'] : '',
|
||||||
hospitalName:
|
hospitalName:
|
||||||
data['user'] != null ? data['user']['medical_center']['name'] : '',
|
data['user'] != null ? data['user']['medical_center']['name'] : '',
|
||||||
|
|||||||
@@ -190,7 +190,8 @@ class AddLabelBox extends StatelessWidget {
|
|||||||
right: 0,
|
right: 0,
|
||||||
child: InkWell(
|
child: InkWell(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
Provider.of<CyclesProvider>(context).addLabelVal();
|
Provider.of<CyclesProvider>(context, listen: false)
|
||||||
|
.addLabelVal();
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
padding: EdgeInsets.all(3),
|
padding: EdgeInsets.all(3),
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ class CycleAddSaveButton extends StatelessWidget {
|
|||||||
if (!_form.currentState!.validate()) {
|
if (!_form.currentState!.validate()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<String> labels = [];
|
List<String> labels = [];
|
||||||
for (TextEditingController label in labelValues) {
|
for (TextEditingController label in labelValues) {
|
||||||
labels.add(label.text);
|
labels.add(label.text);
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import 'package:cssd/config/routes.dart';
|
||||||
import 'package:cssd/providers/items.dart';
|
import 'package:cssd/providers/items.dart';
|
||||||
import 'package:file_picker/file_picker.dart';
|
import 'package:file_picker/file_picker.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
@@ -51,6 +52,30 @@ class UploaderImage extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
SizedBox(
|
||||||
|
height: 10,
|
||||||
|
),
|
||||||
|
InkWell(
|
||||||
|
onTap: () async {
|
||||||
|
await Navigator.of(context)
|
||||||
|
.pushNamed(Routes.captureImageScreen);
|
||||||
|
// await captureImage(context);
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
width: MediaQuery.of(context).size.width - 40,
|
||||||
|
padding: EdgeInsets.symmetric(vertical: 10, horizontal: 30),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
borderRadius: BorderRadius.circular(5),
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
child: Text(
|
||||||
|
'+ Add an image from camera',
|
||||||
|
textDirection: TextDirection.ltr,
|
||||||
|
style: TextStyle(color: Colors.white),
|
||||||
|
textAlign: TextAlign.center,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -120,16 +120,39 @@ class ItemItemBox extends StatelessWidget {
|
|||||||
: InkWell(
|
: InkWell(
|
||||||
customBorder: CircleBorder(),
|
customBorder: CircleBorder(),
|
||||||
onTap: () {
|
onTap: () {
|
||||||
Provider.of<ItemProvider>(context,
|
showDialog(
|
||||||
listen: false)
|
context: context,
|
||||||
.changeStatus(item!.id)
|
builder: (context) {
|
||||||
.then(
|
return AlertDialog(
|
||||||
(value) {
|
title: Text(
|
||||||
if (value) {
|
'Do you want to change the status of the item?'),
|
||||||
print('true');
|
actions: <Widget>[
|
||||||
}
|
TextButton(
|
||||||
Navigator.of(context).popAndPushNamed(
|
onPressed: () {
|
||||||
Routes.itemResultScreen);
|
Provider.of<ItemProvider>(context,
|
||||||
|
listen: false)
|
||||||
|
.changeStatus(item!.id)
|
||||||
|
.then(
|
||||||
|
(value) {
|
||||||
|
if (value) {
|
||||||
|
print('true');
|
||||||
|
}
|
||||||
|
Navigator.of(context)
|
||||||
|
.popAndPushNamed(Routes
|
||||||
|
.itemResultScreen);
|
||||||
|
},
|
||||||
|
);
|
||||||
|
},
|
||||||
|
child: Text('Yes'),
|
||||||
|
),
|
||||||
|
TextButton(
|
||||||
|
onPressed: () {
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
},
|
||||||
|
child: Text('No'),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -185,26 +185,26 @@ class AddPackageBox extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Positioned(
|
// Positioned(
|
||||||
bottom: 15,
|
// bottom: 15,
|
||||||
right: 0,
|
// right: 0,
|
||||||
child: InkWell(
|
// child: InkWell(
|
||||||
onTap: () {
|
// onTap: () {
|
||||||
Provider.of<LabelsProvider>(context).addPackageVal();
|
// Provider.of<LabelsProvider>(context, listen: false).addPackageVal();
|
||||||
},
|
// },
|
||||||
child: Container(
|
// child: Container(
|
||||||
padding: EdgeInsets.all(3),
|
// padding: EdgeInsets.all(3),
|
||||||
decoration: BoxDecoration(
|
// decoration: BoxDecoration(
|
||||||
shape: BoxShape.circle,
|
// shape: BoxShape.circle,
|
||||||
color: iconColor,
|
// color: iconColor,
|
||||||
),
|
// ),
|
||||||
child: Icon(
|
// child: Icon(
|
||||||
Icons.add,
|
// Icons.add,
|
||||||
color: Colors.white,
|
// color: Colors.white,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ class LabelAddSaveButton extends StatelessWidget {
|
|||||||
final TextEditingController lotNumberCTRL;
|
final TextEditingController lotNumberCTRL;
|
||||||
final TextEditingController cycleNumberCTRL;
|
final TextEditingController cycleNumberCTRL;
|
||||||
final TextEditingController sDateCTRL;
|
final TextEditingController sDateCTRL;
|
||||||
final List<String> packageValue;
|
final List<TextEditingController> packageValue;
|
||||||
final TextEditingController eDateCTRL;
|
final TextEditingController eDateCTRL;
|
||||||
final TextEditingController striizerIdCTRL;
|
final TextEditingController striizerIdCTRL;
|
||||||
final double _deviceBlockSize;
|
final double _deviceBlockSize;
|
||||||
@@ -36,12 +36,17 @@ class LabelAddSaveButton extends StatelessWidget {
|
|||||||
if (!_form.currentState!.validate()) {
|
if (!_form.currentState!.validate()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
List<String> packages = [];
|
||||||
|
for (TextEditingController package in packageValue) {
|
||||||
|
packages.add(package.text);
|
||||||
|
}
|
||||||
Provider.of<LabelsProvider>(context, listen: false).createLabelResult(
|
Provider.of<LabelsProvider>(context, listen: false).createLabelResult(
|
||||||
lotNumberCTRL.text,
|
lotNumberCTRL.text,
|
||||||
cycleNumberCTRL.text,
|
cycleNumberCTRL.text,
|
||||||
sDateCTRL.text,
|
sDateCTRL.text,
|
||||||
// sDateValue,
|
// sDateValue,
|
||||||
{'id': packageValue[0], 'name': packageValue[1]},
|
// {'id': packageValue[0], 'name': packageValue[1]},
|
||||||
|
packages,
|
||||||
eDateCTRL.text,
|
eDateCTRL.text,
|
||||||
// eDateValue,
|
// eDateValue,
|
||||||
striizerIdCTRL.text,
|
striizerIdCTRL.text,
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ class LabelUpdateButton extends StatelessWidget {
|
|||||||
required this.lotNumberCTRL,
|
required this.lotNumberCTRL,
|
||||||
required this.cycleNumberCTRL,
|
required this.cycleNumberCTRL,
|
||||||
required this.sDateCTRL,
|
required this.sDateCTRL,
|
||||||
required this.packageValue,
|
// required this.packageValue,
|
||||||
required this.eDateCTRL,
|
required this.eDateCTRL,
|
||||||
required this.striizerIdCTRL,
|
required this.striizerIdCTRL,
|
||||||
required double deviceBlockSize,
|
required double deviceBlockSize,
|
||||||
@@ -26,7 +26,7 @@ class LabelUpdateButton extends StatelessWidget {
|
|||||||
final TextEditingController lotNumberCTRL;
|
final TextEditingController lotNumberCTRL;
|
||||||
final TextEditingController cycleNumberCTRL;
|
final TextEditingController cycleNumberCTRL;
|
||||||
final TextEditingController sDateCTRL;
|
final TextEditingController sDateCTRL;
|
||||||
final List<String> packageValue;
|
// final List<String> packageValue;
|
||||||
final TextEditingController eDateCTRL;
|
final TextEditingController eDateCTRL;
|
||||||
final TextEditingController striizerIdCTRL;
|
final TextEditingController striizerIdCTRL;
|
||||||
final double _deviceBlockSize;
|
final double _deviceBlockSize;
|
||||||
@@ -43,7 +43,7 @@ class LabelUpdateButton extends StatelessWidget {
|
|||||||
lotNumberCTRL.text,
|
lotNumberCTRL.text,
|
||||||
cycleNumberCTRL.text,
|
cycleNumberCTRL.text,
|
||||||
sDateCTRL.text,
|
sDateCTRL.text,
|
||||||
{'id': packageValue[0]},
|
// {'id': packageValue[0]},
|
||||||
eDateCTRL.text,
|
eDateCTRL.text,
|
||||||
striizerIdCTRL.text,
|
striizerIdCTRL.text,
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -129,33 +129,33 @@ class MyPackageDetailsDataBox extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
Divider(),
|
// Divider(),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 5,
|
// height: 5,
|
||||||
),
|
// ),
|
||||||
Row(
|
// Row(
|
||||||
children: <Widget>[
|
// children: <Widget>[
|
||||||
Container(
|
// Container(
|
||||||
width: 35 * _deviceBlockSize,
|
// width: 35 * _deviceBlockSize,
|
||||||
child: Text(
|
// child: Text(
|
||||||
'UDI',
|
// 'UDI',
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
color: Colors.grey,
|
// color: Colors.grey,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
Container(
|
// Container(
|
||||||
width: 45 * _deviceBlockSize,
|
// width: 45 * _deviceBlockSize,
|
||||||
child: Text(
|
// child: Text(
|
||||||
datas.udi.toString(),
|
// datas.udi.toString(),
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
fontWeight: FontWeight.w700,
|
// fontWeight: FontWeight.w700,
|
||||||
),
|
// ),
|
||||||
overflow: TextOverflow.clip,
|
// overflow: TextOverflow.clip,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
Divider(),
|
Divider(),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 5,
|
height: 5,
|
||||||
|
|||||||
@@ -10,19 +10,19 @@ class MyPackageFilterChip extends StatelessWidget {
|
|||||||
required String label,
|
required String label,
|
||||||
required String id,
|
required String id,
|
||||||
required String name,
|
required String name,
|
||||||
required String udi,
|
// required String udi,
|
||||||
}) : _deviceBlockSize = deviceBlockSize,
|
}) : _deviceBlockSize = deviceBlockSize,
|
||||||
_label = label,
|
_label = label,
|
||||||
_id = id,
|
_id = id,
|
||||||
_name = name,
|
_name = name,
|
||||||
_udi = udi,
|
// _udi = udi,
|
||||||
super(key: key);
|
super(key: key);
|
||||||
|
|
||||||
final double _deviceBlockSize;
|
final double _deviceBlockSize;
|
||||||
final String _label;
|
final String _label;
|
||||||
final String _id;
|
final String _id;
|
||||||
final String _name;
|
final String _name;
|
||||||
final String _udi;
|
// final String _udi;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
@@ -50,7 +50,7 @@ class MyPackageFilterChip extends StatelessWidget {
|
|||||||
packageProvider.setFilters(
|
packageProvider.setFilters(
|
||||||
_id,
|
_id,
|
||||||
_name,
|
_name,
|
||||||
_udi,
|
// _udi,
|
||||||
);
|
);
|
||||||
packageProvider.setLoading();
|
packageProvider.setLoading();
|
||||||
if (userData['roles']?.contains('User')) {
|
if (userData['roles']?.contains('User')) {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ class MyPackagesFilterSaveButton extends StatelessWidget {
|
|||||||
Key? key,
|
Key? key,
|
||||||
required this.idCTRL,
|
required this.idCTRL,
|
||||||
required this.nameCTRL,
|
required this.nameCTRL,
|
||||||
required this.udiCTRL,
|
// required this.udiCTRL,
|
||||||
required this.firstColor,
|
required this.firstColor,
|
||||||
required this.secondColor,
|
required this.secondColor,
|
||||||
required this.push,
|
required this.push,
|
||||||
@@ -17,7 +17,7 @@ class MyPackagesFilterSaveButton extends StatelessWidget {
|
|||||||
|
|
||||||
final TextEditingController idCTRL;
|
final TextEditingController idCTRL;
|
||||||
final TextEditingController nameCTRL;
|
final TextEditingController nameCTRL;
|
||||||
final TextEditingController udiCTRL;
|
// final TextEditingController udiCTRL;
|
||||||
final Color firstColor;
|
final Color firstColor;
|
||||||
final Color secondColor;
|
final Color secondColor;
|
||||||
final String push;
|
final String push;
|
||||||
@@ -30,7 +30,7 @@ class MyPackagesFilterSaveButton extends StatelessWidget {
|
|||||||
Provider.of<MyPackageProvider>(context, listen: false).setFilters(
|
Provider.of<MyPackageProvider>(context, listen: false).setFilters(
|
||||||
idCTRL.text,
|
idCTRL.text,
|
||||||
nameCTRL.text,
|
nameCTRL.text,
|
||||||
udiCTRL.text,
|
// udiCTRL.text,
|
||||||
);
|
);
|
||||||
showDialog(
|
showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
|
|||||||
@@ -0,0 +1,213 @@
|
|||||||
|
import 'package:cssd/providers/packages.dart';
|
||||||
|
import 'package:cssd/utils/scan.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
|
class AddItemBox extends StatelessWidget {
|
||||||
|
const AddItemBox({
|
||||||
|
Key? key,
|
||||||
|
required double deviceBlockSize,
|
||||||
|
required this.values,
|
||||||
|
required this.vals,
|
||||||
|
required this.initialItemValue,
|
||||||
|
required this.index,
|
||||||
|
required this.text,
|
||||||
|
this.iconColor,
|
||||||
|
}) : _deviceBlockSize = deviceBlockSize,
|
||||||
|
super(key: key);
|
||||||
|
|
||||||
|
final double _deviceBlockSize;
|
||||||
|
final TextEditingController values;
|
||||||
|
final List<String> vals;
|
||||||
|
final String initialItemValue;
|
||||||
|
final int index;
|
||||||
|
final String text;
|
||||||
|
final Color? iconColor;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Container(
|
||||||
|
height: 150,
|
||||||
|
child: Stack(
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
padding: EdgeInsets.only(
|
||||||
|
right: 10,
|
||||||
|
bottom: 25,
|
||||||
|
left: 10,
|
||||||
|
top: 10,
|
||||||
|
),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
border: Border(
|
||||||
|
left: BorderSide(color: Colors.black, width: 2),
|
||||||
|
right: BorderSide(color: Colors.grey),
|
||||||
|
bottom: BorderSide(color: Colors.grey),
|
||||||
|
top: BorderSide(color: Colors.grey),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
height: 120,
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.symmetric(vertical: 5),
|
||||||
|
// height: 65,
|
||||||
|
child: Row(
|
||||||
|
// width: double.infinity,
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
|
mainAxisSize: MainAxisSize.min,
|
||||||
|
children: <Widget>[
|
||||||
|
Icon(
|
||||||
|
FontAwesomeIcons.alignLeft,
|
||||||
|
color: Colors.grey,
|
||||||
|
size: 7 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
width: 4 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
Expanded(
|
||||||
|
// width: MediaQuery.of(context).size.width - 70,
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: <Widget>[
|
||||||
|
Row(
|
||||||
|
children: <Widget>[
|
||||||
|
SizedBox(
|
||||||
|
width: _deviceBlockSize,
|
||||||
|
),
|
||||||
|
Text(
|
||||||
|
text,
|
||||||
|
style: TextStyle(
|
||||||
|
fontSize: 3.5 * _deviceBlockSize,
|
||||||
|
color: Colors.grey,
|
||||||
|
fontWeight: FontWeight.w100,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
width: MediaQuery.of(context).size.width -
|
||||||
|
(40 * _deviceBlockSize),
|
||||||
|
// height: 30,
|
||||||
|
child: DropdownButtonFormField(
|
||||||
|
decoration: InputDecoration(
|
||||||
|
contentPadding: EdgeInsets.only(
|
||||||
|
left: _deviceBlockSize,
|
||||||
|
),
|
||||||
|
border: InputBorder.none,
|
||||||
|
),
|
||||||
|
iconSize: 7 * _deviceBlockSize,
|
||||||
|
icon: Icon(
|
||||||
|
FontAwesomeIcons.angleDown,
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
isExpanded: true,
|
||||||
|
hint: Container(
|
||||||
|
// width: 100,
|
||||||
|
height: 70,
|
||||||
|
padding:
|
||||||
|
const EdgeInsets.symmetric(horizontal: 0),
|
||||||
|
child: TextFormField(
|
||||||
|
controller: values,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
contentPadding: EdgeInsets.only(
|
||||||
|
bottom: 12,
|
||||||
|
),
|
||||||
|
isDense: true,
|
||||||
|
),
|
||||||
|
style: TextStyle(
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
color: Colors.black,
|
||||||
|
fontSize: 5 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
isDense: true,
|
||||||
|
items: vals.map((val) {
|
||||||
|
return new DropdownMenuItem<String>(
|
||||||
|
value: val,
|
||||||
|
child: Container(
|
||||||
|
child: Text(
|
||||||
|
val,
|
||||||
|
style: TextStyle(
|
||||||
|
fontSize: 4 * _deviceBlockSize,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}).toList(),
|
||||||
|
onChanged: (val) {
|
||||||
|
Provider.of<PackageProvider>(context,
|
||||||
|
listen: false)
|
||||||
|
.changeItemVal(val!, index);
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Spacer(),
|
||||||
|
InkWell(
|
||||||
|
onTap: () {
|
||||||
|
scan().then(
|
||||||
|
(String result) {
|
||||||
|
if (result == 'cancel') {
|
||||||
|
print('cancel');
|
||||||
|
} else if (result == 'error') {
|
||||||
|
print('error');
|
||||||
|
} else if (result == 'access') {
|
||||||
|
print('access');
|
||||||
|
} else {
|
||||||
|
print(result);
|
||||||
|
Provider.of<PackageProvider>(context,
|
||||||
|
listen: false)
|
||||||
|
.changeItemVal(result, index);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
);
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(8),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
child: Icon(
|
||||||
|
Icons.qr_code_scanner,
|
||||||
|
size: 5 * _deviceBlockSize,
|
||||||
|
color: Colors.white,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Positioned(
|
||||||
|
bottom: 15,
|
||||||
|
right: 0,
|
||||||
|
child: InkWell(
|
||||||
|
onTap: () {
|
||||||
|
Provider.of<PackageProvider>(context, listen: false)
|
||||||
|
.addItemVal();
|
||||||
|
},
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(3),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
color: iconColor,
|
||||||
|
),
|
||||||
|
child: Icon(
|
||||||
|
Icons.add,
|
||||||
|
color: Colors.white,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -12,7 +12,7 @@ class PackageAddSaveButton extends StatelessWidget {
|
|||||||
required this.itemValues,
|
required this.itemValues,
|
||||||
required this.nameCTRL,
|
required this.nameCTRL,
|
||||||
required this.descriptionCTRL,
|
required this.descriptionCTRL,
|
||||||
required this.udiCTRL,
|
// required this.udiCTRL,
|
||||||
required this.dateValue,
|
required this.dateValue,
|
||||||
required double deviceBlockSize,
|
required double deviceBlockSize,
|
||||||
}) : _form = form,
|
}) : _form = form,
|
||||||
@@ -23,7 +23,7 @@ class PackageAddSaveButton extends StatelessWidget {
|
|||||||
final List<TextEditingController> itemValues;
|
final List<TextEditingController> itemValues;
|
||||||
final TextEditingController nameCTRL;
|
final TextEditingController nameCTRL;
|
||||||
final TextEditingController descriptionCTRL;
|
final TextEditingController descriptionCTRL;
|
||||||
final TextEditingController udiCTRL;
|
// final TextEditingController udiCTRL;
|
||||||
final String dateValue;
|
final String dateValue;
|
||||||
final double _deviceBlockSize;
|
final double _deviceBlockSize;
|
||||||
|
|
||||||
@@ -34,7 +34,6 @@ class PackageAddSaveButton extends StatelessWidget {
|
|||||||
if (!_form.currentState!.validate()) {
|
if (!_form.currentState!.validate()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<String> items = [];
|
List<String> items = [];
|
||||||
for (TextEditingController item in itemValues) {
|
for (TextEditingController item in itemValues) {
|
||||||
items.add(item.text);
|
items.add(item.text);
|
||||||
@@ -42,7 +41,7 @@ class PackageAddSaveButton extends StatelessWidget {
|
|||||||
Provider.of<PackageProvider>(context, listen: false)
|
Provider.of<PackageProvider>(context, listen: false)
|
||||||
.createPackageResult(
|
.createPackageResult(
|
||||||
nameCTRL.text,
|
nameCTRL.text,
|
||||||
udiCTRL.text,
|
// udiCTRL.text,
|
||||||
items,
|
items,
|
||||||
descriptionCTRL.text,
|
descriptionCTRL.text,
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class PackageUpdateButton extends StatelessWidget {
|
|||||||
required this.id,
|
required this.id,
|
||||||
required this.descriptionCTRL,
|
required this.descriptionCTRL,
|
||||||
required this.nameCTRL,
|
required this.nameCTRL,
|
||||||
required this.udiCTRL,
|
// required this.udiCTRL,
|
||||||
required this.itemCTRL,
|
required this.itemCTRL,
|
||||||
required double deviceBlockSize,
|
required double deviceBlockSize,
|
||||||
}) : _form = form,
|
}) : _form = form,
|
||||||
@@ -23,7 +23,7 @@ class PackageUpdateButton extends StatelessWidget {
|
|||||||
final String id;
|
final String id;
|
||||||
final TextEditingController descriptionCTRL;
|
final TextEditingController descriptionCTRL;
|
||||||
final TextEditingController nameCTRL;
|
final TextEditingController nameCTRL;
|
||||||
final TextEditingController udiCTRL;
|
// final TextEditingController udiCTRL;
|
||||||
final TextEditingController itemCTRL;
|
final TextEditingController itemCTRL;
|
||||||
final double _deviceBlockSize;
|
final double _deviceBlockSize;
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ class PackageUpdateButton extends StatelessWidget {
|
|||||||
.updatePackageResult(
|
.updatePackageResult(
|
||||||
id,
|
id,
|
||||||
nameCTRL.text,
|
nameCTRL.text,
|
||||||
udiCTRL.text,
|
// udiCTRL.text,
|
||||||
descriptionCTRL.text,
|
descriptionCTRL.text,
|
||||||
int.parse(itemCTRL.text),
|
int.parse(itemCTRL.text),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -129,33 +129,33 @@ class PackageDetailsDataBox extends StatelessWidget {
|
|||||||
SizedBox(
|
SizedBox(
|
||||||
height: 5,
|
height: 5,
|
||||||
),
|
),
|
||||||
Row(
|
// Row(
|
||||||
children: <Widget>[
|
// children: <Widget>[
|
||||||
Container(
|
// Container(
|
||||||
width: 35 * _deviceBlockSize,
|
// width: 35 * _deviceBlockSize,
|
||||||
child: Text(
|
// child: Text(
|
||||||
'UDI',
|
// 'UDI',
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
color: Colors.grey,
|
// color: Colors.grey,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
Container(
|
// Container(
|
||||||
width: 45 * _deviceBlockSize,
|
// width: 45 * _deviceBlockSize,
|
||||||
child: Text(
|
// child: Text(
|
||||||
datas.udi.toString(),
|
// datas.udi.toString(),
|
||||||
style: TextStyle(
|
// style: TextStyle(
|
||||||
fontWeight: FontWeight.w700,
|
// fontWeight: FontWeight.w700,
|
||||||
),
|
// ),
|
||||||
overflow: TextOverflow.clip,
|
// overflow: TextOverflow.clip,
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
Divider(),
|
// Divider(),
|
||||||
SizedBox(
|
// SizedBox(
|
||||||
height: 5,
|
// height: 5,
|
||||||
),
|
// ),
|
||||||
Row(
|
Row(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Container(
|
Container(
|
||||||
@@ -254,7 +254,25 @@ class PackageDetailsDataBox extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 50,
|
height: 50,
|
||||||
)
|
),
|
||||||
|
// TransferDestroyButton(
|
||||||
|
// deviceBlockSize: _deviceBlockSize,
|
||||||
|
// firstColor: kPurple,
|
||||||
|
// secondColor: kPurpleSub,
|
||||||
|
// onTap: () {
|
||||||
|
// Navigator.pushNamed(
|
||||||
|
// context,
|
||||||
|
// Routes.labelAddScreen,
|
||||||
|
// arguments: {
|
||||||
|
// 'id': datas.id,
|
||||||
|
// },
|
||||||
|
// );
|
||||||
|
// },
|
||||||
|
// text: 'Make a Label For Package',
|
||||||
|
// ),
|
||||||
|
// SizedBox(
|
||||||
|
// height: 5.0,
|
||||||
|
// ),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class PackageFilterSaveButton extends StatelessWidget {
|
|||||||
required this.hospitalCTRL,
|
required this.hospitalCTRL,
|
||||||
required this.idCTRL,
|
required this.idCTRL,
|
||||||
required this.nameCTRL,
|
required this.nameCTRL,
|
||||||
required this.udiCTRL,
|
// required this.udiCTRL,
|
||||||
required double deviceBlockSize,
|
required double deviceBlockSize,
|
||||||
}) : _deviceBlockSize = deviceBlockSize,
|
}) : _deviceBlockSize = deviceBlockSize,
|
||||||
super(key: key);
|
super(key: key);
|
||||||
@@ -21,7 +21,7 @@ class PackageFilterSaveButton extends StatelessWidget {
|
|||||||
final TextEditingController hospitalCTRL;
|
final TextEditingController hospitalCTRL;
|
||||||
final TextEditingController idCTRL;
|
final TextEditingController idCTRL;
|
||||||
final TextEditingController nameCTRL;
|
final TextEditingController nameCTRL;
|
||||||
final TextEditingController udiCTRL;
|
// final TextEditingController udiCTRL;
|
||||||
final double _deviceBlockSize;
|
final double _deviceBlockSize;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -40,7 +40,7 @@ class PackageFilterSaveButton extends StatelessWidget {
|
|||||||
idCTRL.text,
|
idCTRL.text,
|
||||||
nameCTRL.text,
|
nameCTRL.text,
|
||||||
hospitalID,
|
hospitalID,
|
||||||
udiCTRL.text,
|
// udiCTRL.text,
|
||||||
);
|
);
|
||||||
showDialog(
|
showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
|
|||||||
@@ -10,13 +10,13 @@ class PackageFilterChip extends StatelessWidget {
|
|||||||
required String id,
|
required String id,
|
||||||
required String name,
|
required String name,
|
||||||
required String hospital,
|
required String hospital,
|
||||||
required String udi,
|
// required String udi,
|
||||||
}) : _deviceBlockSize = deviceBlockSize,
|
}) : _deviceBlockSize = deviceBlockSize,
|
||||||
_label = label,
|
_label = label,
|
||||||
_id = id,
|
_id = id,
|
||||||
_name = name,
|
_name = name,
|
||||||
_hospital = hospital,
|
_hospital = hospital,
|
||||||
_udi = udi,
|
// _udi = udi,
|
||||||
super(key: key);
|
super(key: key);
|
||||||
|
|
||||||
final double _deviceBlockSize;
|
final double _deviceBlockSize;
|
||||||
@@ -24,7 +24,7 @@ class PackageFilterChip extends StatelessWidget {
|
|||||||
final String _id;
|
final String _id;
|
||||||
final String _name;
|
final String _name;
|
||||||
final String _hospital;
|
final String _hospital;
|
||||||
final String _udi;
|
// final String _udi;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
@@ -52,7 +52,7 @@ class PackageFilterChip extends StatelessWidget {
|
|||||||
_id,
|
_id,
|
||||||
_name,
|
_name,
|
||||||
_hospital,
|
_hospital,
|
||||||
_udi,
|
// _udi,
|
||||||
);
|
);
|
||||||
packageProvider.setLoading();
|
packageProvider.setLoading();
|
||||||
packageProvider.getPackageResults().then(
|
packageProvider.getPackageResults().then(
|
||||||
|
|||||||
Reference in New Issue
Block a user