add package list
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import 'package:fcs/model/main_model.dart';
|
||||
import 'package:fcs/pages_fcs/package_list.dart';
|
||||
import 'package:fcs/widget/bottom_up_page_route.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_icons/flutter_icons.dart';
|
||||
@@ -96,35 +97,17 @@ class _HomePageState extends State<HomePage> {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
login=Provider.of<MainModel>(context).isLogin();
|
||||
final helpBtn = _buildBtn2("manual.title",
|
||||
icon: FontAwesomeIcons.readme,
|
||||
imgIcon: Image.asset(
|
||||
"assets/manual.png",
|
||||
width: 40,
|
||||
height: 40,
|
||||
color: primaryColor,
|
||||
),
|
||||
login = Provider.of<MainModel>(context).isLogin();
|
||||
final packagesBtn = _buildBtn2("package.name",
|
||||
icon: Octicons.package,
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(BottomUpPageRoute(ManualPage()))
|
||||
// btnCallback: () => Navigator.of(context)
|
||||
// .push(MaterialPageRoute(builder: (_) => TestList()))
|
||||
);
|
||||
.push(MaterialPageRoute(builder: (_) => PackageList())));
|
||||
|
||||
final announcementBtn = _buildBtn2("announcement.title",
|
||||
icon: Icons.announcement,
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(MaterialPageRoute(builder: (_) => AnnouncementList())));
|
||||
|
||||
final buyerBtn = _buildBtn("buyer.title",
|
||||
imgIcon: Image.asset(
|
||||
"assets/buyer.png",
|
||||
width: 40,
|
||||
height: 40,
|
||||
color: primaryColor,
|
||||
),
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(MaterialPageRoute(builder: (_) => BuyerList())));
|
||||
|
||||
final reportBtn = _buildBtn2("report.title",
|
||||
icon: FontAwesomeIcons.paperPlane,
|
||||
imgIcon: Image.asset(
|
||||
@@ -138,47 +121,19 @@ class _HomePageState extends State<HomePage> {
|
||||
|
||||
final pickUpBtn = _buildBtn2("pickup",
|
||||
icon: MaterialCommunityIcons.directions,
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(BottomUpPageRoute(PickUpList())));
|
||||
btnCallback: () =>
|
||||
Navigator.of(context).push(BottomUpPageRoute(PickUpList())));
|
||||
|
||||
final shipmentCostBtn = _buildBtn2("rate",
|
||||
icon: FontAwesomeIcons.calculator,
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(BottomUpPageRoute(ShipmentRates())));
|
||||
btnCallback: () =>
|
||||
Navigator.of(context).push(BottomUpPageRoute(ShipmentRates())));
|
||||
|
||||
final fcsProfileBtn = _buildBtn2("profile.title",
|
||||
icon: Icons.account_circle,
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(MaterialPageRoute(builder: (_) => FCSProfilePage())));
|
||||
|
||||
final myRegBtn = _buildBtn("myreg.title",
|
||||
imgIcon: Image.asset(
|
||||
"assets/reg.png",
|
||||
width: 40,
|
||||
height: 30,
|
||||
color: primaryColor,
|
||||
),
|
||||
btnCallback: () async {});
|
||||
|
||||
final posBtn = _buildBtn("po.title",
|
||||
imgIcon: Image.asset(
|
||||
"assets/pay.png",
|
||||
width: 40,
|
||||
height: 40,
|
||||
color: primaryColor,
|
||||
),
|
||||
btnCallback: () {});
|
||||
|
||||
final dosBtn = _buildBtn("do.title",
|
||||
imgIcon: Image.asset(
|
||||
"assets/do.png",
|
||||
width: 40,
|
||||
height: 40,
|
||||
color: primaryColor,
|
||||
),
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(MaterialPageRoute(builder: (_) => DOList())));
|
||||
|
||||
final shipmentBtn = _buildBtn2("shipment.title",
|
||||
icon: Ionicons.ios_airplane,
|
||||
imgIcon: Image.asset(
|
||||
@@ -190,26 +145,6 @@ class _HomePageState extends State<HomePage> {
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(MaterialPageRoute(builder: (_) => ShipmentList())));
|
||||
|
||||
final storageBtn = _buildBtn("storage.title",
|
||||
imgIcon: Image.asset(
|
||||
"assets/inventory.png",
|
||||
width: 40,
|
||||
height: 40,
|
||||
color: primaryColor,
|
||||
),
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(MaterialPageRoute(builder: (_) => StorageList())));
|
||||
|
||||
final pdosBtn = _buildBtn("pd.title",
|
||||
imgIcon: Image.asset(
|
||||
"assets/pdo.png",
|
||||
width: 40,
|
||||
height: 40,
|
||||
color: primaryColor,
|
||||
),
|
||||
btnCallback: () => Navigator.of(context)
|
||||
.push(MaterialPageRoute(builder: (_) => PDList())));
|
||||
|
||||
final termBtn = _buildBtn2("term.title",
|
||||
icon: FontAwesomeIcons.fileContract,
|
||||
imgIcon: Image.asset(
|
||||
@@ -221,22 +156,11 @@ class _HomePageState extends State<HomePage> {
|
||||
Navigator.push(context, MaterialPageRoute(builder: (context) => Term()));
|
||||
});
|
||||
|
||||
final userBtn =
|
||||
_buildBtn("users.title", icon: Icons.group, btnCallback: () {
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(builder: (context) => UserList()),
|
||||
);
|
||||
});
|
||||
|
||||
|
||||
final buyingBtn = _buildBtn2("buy_online",
|
||||
icon: MaterialCommunityIcons.cart_outline, btnCallback: () {
|
||||
Navigator.push(
|
||||
context,
|
||||
BottomUpPageRoute(BuyingOnlinePage())
|
||||
// MaterialPageRoute(builder: (context) => BuyingOnlinePage()),
|
||||
);
|
||||
Navigator.push(context, BottomUpPageRoute(BuyingOnlinePage())
|
||||
// MaterialPageRoute(builder: (context) => BuyingOnlinePage()),
|
||||
);
|
||||
});
|
||||
|
||||
final notiBtn = _buildBtn2("notifications.title", icon: Icons.notifications,
|
||||
@@ -266,116 +190,13 @@ class _HomePageState extends State<HomePage> {
|
||||
widgets.add(shipmentBtn);
|
||||
widgets.add(notiBtn);
|
||||
widgets.add(staffBtn);
|
||||
// widgets.add(_bankAccountsBtn);
|
||||
widgets.add(announcementBtn);
|
||||
widgets.add(fcsProfileBtn);
|
||||
widgets.add(shipmentCostBtn);
|
||||
widgets.add(reportBtn);
|
||||
widgets.add(termBtn);
|
||||
widgets.add(_bankAccountsBtn);
|
||||
|
||||
var revenueChart = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[RevenueLineChart()],
|
||||
));
|
||||
|
||||
var productListBox = Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: <Widget>[
|
||||
LocalText(context, 'products.prices', color: primaryColor),
|
||||
Row(
|
||||
children: <Widget>[
|
||||
LocalText(context, 'products.gas',
|
||||
color: Colors.black,
|
||||
fontSize: 19,
|
||||
fontWeight: FontWeight.w700),
|
||||
Consumer<ProductModel>(builder: (context, model, child) {
|
||||
return Text(' ${model.products.length}',
|
||||
style: TextStyle(
|
||||
color: Colors.black,
|
||||
fontWeight: FontWeight.w700,
|
||||
fontSize: 19.0));
|
||||
}),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
Material(
|
||||
color: thirdColor,
|
||||
borderRadius: BorderRadius.circular(10.0),
|
||||
child: Center(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.all(5.0),
|
||||
child: //Icon(Icons.timeline, color: Colors.white, size: 30.0),
|
||||
Image.asset(
|
||||
"assets/product.png",
|
||||
width: 60,
|
||||
height: 70,
|
||||
color: Colors.white,
|
||||
))))
|
||||
]);
|
||||
|
||||
var poqtyByProductChart = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[BarChart()],
|
||||
));
|
||||
|
||||
var poChart = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[POLineChart()],
|
||||
));
|
||||
|
||||
var doChart = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[DOLineChart()],
|
||||
));
|
||||
|
||||
var deliveryChart = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[DeliveryBarChart()],
|
||||
));
|
||||
|
||||
var deliveryDOChart = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[DODeliveryLineChart()],
|
||||
));
|
||||
|
||||
var deliveryDoSummary = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[DeliveryDoSummaryChart()],
|
||||
));
|
||||
var deliverySummary = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[DeliverySummary()],
|
||||
));
|
||||
var poBalancebyBuyerChart = Padding(
|
||||
padding: const EdgeInsets.all(10.0),
|
||||
child: ListView(
|
||||
shrinkWrap: true,
|
||||
children: <Widget>[POBalanceChart()],
|
||||
));
|
||||
List<Widget> chartWidgets = [];
|
||||
widgets.add(packagesBtn);
|
||||
|
||||
return OfflineRedirect(
|
||||
child: FlavorBanner(
|
||||
@@ -413,7 +234,7 @@ class _HomePageState extends State<HomePage> {
|
||||
),
|
||||
]
|
||||
: <Widget>[
|
||||
FlatButton(
|
||||
FlatButton(
|
||||
onPressed: () {
|
||||
Navigator.push(
|
||||
context,
|
||||
@@ -422,7 +243,10 @@ class _HomePageState extends State<HomePage> {
|
||||
);
|
||||
},
|
||||
// iconSize: 30,
|
||||
child: Text("Sign in",style: siginButtonStyle,),
|
||||
child: Text(
|
||||
"Sign in",
|
||||
style: siginButtonStyle,
|
||||
),
|
||||
),
|
||||
IconButton(
|
||||
onPressed: () {
|
||||
@@ -492,47 +316,7 @@ class _HomePageState extends State<HomePage> {
|
||||
],
|
||||
)
|
||||
],
|
||||
)
|
||||
// child: StaggeredGridView.count(
|
||||
// crossAxisCount: 3,
|
||||
// crossAxisSpacing: 12.0,
|
||||
// mainAxisSpacing: 12.0,
|
||||
// padding: EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
|
||||
// children: <Widget>[
|
||||
// _buildTile(
|
||||
// Padding(
|
||||
// padding: const EdgeInsets.all(20.0),
|
||||
// child: productListBox,
|
||||
// ),
|
||||
// onTap: () => Navigator.of(context).push(
|
||||
// MaterialPageRoute(builder: (_) => ProductsList())),
|
||||
// ),
|
||||
// new GridView.count(
|
||||
// shrinkWrap: true,
|
||||
// scrollDirection: Axis.horizontal,
|
||||
// crossAxisCount: 1,
|
||||
// crossAxisSpacing: 12,
|
||||
// mainAxisSpacing: 12,
|
||||
// padding: EdgeInsets.only(bottom: 5, left: 10, right: 5),
|
||||
// children: widgets,
|
||||
// ),
|
||||
// Container(
|
||||
// color:Colors.red
|
||||
// ),
|
||||
|
||||
// _buildTile(
|
||||
// PageView(
|
||||
// children: chartWidgets,
|
||||
// ),
|
||||
// ),
|
||||
// ],
|
||||
// staggeredTiles: [
|
||||
// StaggeredTile.extent(5, 110.0),
|
||||
// StaggeredTile.extent(3, 110.0),
|
||||
// StaggeredTile.extent(3, 250.0),
|
||||
// ],
|
||||
// ),
|
||||
)),
|
||||
))),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import 'package:fcs/widget/label_widgets.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_colorpicker/flutter_colorpicker.dart';
|
||||
import 'package:flutter_icons/flutter_icons.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
@@ -200,17 +201,11 @@ void showCommentDialog(BuildContext context, commentCallback(comment)) {
|
||||
|
||||
Widget getStatus(String status) {
|
||||
return status == "Delivered"
|
||||
? Chip(
|
||||
backgroundColor: Colors.green,
|
||||
avatar: Icon(
|
||||
Icons.check,
|
||||
color: Colors.white,
|
||||
size: 14,
|
||||
),
|
||||
label: Text(
|
||||
status,
|
||||
style: TextStyle(color: Colors.white, fontSize: 12),
|
||||
))
|
||||
? Text(
|
||||
status,
|
||||
style: TextStyle(
|
||||
color: primaryColor, fontSize: 18, fontWeight: FontWeight.bold),
|
||||
)
|
||||
: status == "rejected"
|
||||
? Chip(
|
||||
backgroundColor: Colors.red,
|
||||
@@ -243,12 +238,14 @@ Widget getStatus(String status) {
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold),
|
||||
)
|
||||
: status == "Pending" || status == "Rescheduled"
|
||||
: status == "Pending" ||
|
||||
status == "Rescheduled" ||
|
||||
status == "Processing"
|
||||
? Row(
|
||||
children: <Widget>[
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Icon(Icons.schedule),
|
||||
child: Icon(Icons.schedule, color: primaryColor),
|
||||
),
|
||||
Text(
|
||||
status,
|
||||
@@ -259,12 +256,13 @@ Widget getStatus(String status) {
|
||||
)
|
||||
],
|
||||
)
|
||||
: status == "Assigned"
|
||||
: status == "Ready to ship"
|
||||
? Row(
|
||||
children: <Widget>[
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Icon(Icons.check),
|
||||
child: Icon(Ionicons.ios_airplane,
|
||||
color: primaryColor),
|
||||
),
|
||||
Text(
|
||||
status,
|
||||
@@ -275,26 +273,60 @@ Widget getStatus(String status) {
|
||||
)
|
||||
],
|
||||
)
|
||||
: status == "Canceled"
|
||||
? Text(
|
||||
status,
|
||||
style: TextStyle(
|
||||
color: primaryColor,
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold),
|
||||
)
|
||||
: status == "Delivered"
|
||||
? Text(
|
||||
: status == "Received"
|
||||
? Row(
|
||||
children: <Widget>[
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Icon(
|
||||
MaterialCommunityIcons.package_down,
|
||||
color: primaryColor)),
|
||||
Text(
|
||||
status,
|
||||
style: TextStyle(
|
||||
color: Colors.green, fontSize: 12),
|
||||
color: primaryColor,
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold),
|
||||
)
|
||||
: Chip(
|
||||
avatar: Icon(
|
||||
Icons.check,
|
||||
size: 14,
|
||||
),
|
||||
label: Text(status));
|
||||
],
|
||||
)
|
||||
: status == "Assigned"
|
||||
? Row(
|
||||
children: <Widget>[
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Icon(Icons.check),
|
||||
),
|
||||
Text(
|
||||
status,
|
||||
style: TextStyle(
|
||||
color: primaryColor,
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold),
|
||||
)
|
||||
],
|
||||
)
|
||||
: status == "Canceled"
|
||||
? Text(
|
||||
status,
|
||||
style: TextStyle(
|
||||
color: primaryColor,
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold),
|
||||
)
|
||||
: status == "Delivered"
|
||||
? Text(
|
||||
status,
|
||||
style: TextStyle(
|
||||
color: Colors.green,
|
||||
fontSize: 12),
|
||||
)
|
||||
: Chip(
|
||||
avatar: Icon(
|
||||
Icons.check,
|
||||
size: 14,
|
||||
),
|
||||
label: Text(status));
|
||||
}
|
||||
|
||||
call(BuildContext context, String phone) {
|
||||
@@ -400,7 +432,7 @@ Widget phoneWidget(BuildContext context, String phone) {
|
||||
}
|
||||
|
||||
Widget fcsInput(String label, IconData iconData,
|
||||
{TextEditingController controller,String value}) {
|
||||
{TextEditingController controller, String value}) {
|
||||
return Row(
|
||||
children: <Widget>[
|
||||
Padding(
|
||||
@@ -413,7 +445,7 @@ Widget fcsInput(String label, IconData iconData,
|
||||
child: Row(children: <Widget>[
|
||||
Expanded(
|
||||
child: TextFormField(
|
||||
initialValue: value,
|
||||
initialValue: value,
|
||||
controller: controller,
|
||||
cursorColor: primaryColor,
|
||||
textAlign: TextAlign.left,
|
||||
@@ -473,7 +505,7 @@ Widget _dropDown() {
|
||||
);
|
||||
}
|
||||
|
||||
Widget fcsButton(BuildContext context, String text,{Function callack}) {
|
||||
Widget fcsButton(BuildContext context, String text, {Function callack}) {
|
||||
return Container(
|
||||
padding: EdgeInsets.only(left: 10, right: 10, top: 10),
|
||||
child: Container(
|
||||
|
||||
Reference in New Issue
Block a user