Files
fcs/lib/pages/invoice/invoice_discount_table.dart

89 lines
2.1 KiB
Dart
Raw Normal View History

2020-10-24 06:14:07 +06:30
import 'package:fcs/domain/entities/discount.dart';
import 'package:fcs/helpers/theme.dart';
import 'package:fcs/pages/widgets/local_text.dart';
import 'package:fcs/pages/widgets/my_data_table.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class InvoiceDiscountTable extends StatelessWidget {
final List<Discount> discounts;
const InvoiceDiscountTable({
Key key,
this.discounts,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
centerTitle: true,
leading: new IconButton(
icon: new Icon(CupertinoIcons.back),
onPressed: () => Navigator.pop(context),
),
backgroundColor: primaryColor,
title: LocalText(
context,
"invoice.shipment.discount.title",
fontSize: 20,
color: Colors.white,
),
),
body: Padding(
padding: const EdgeInsets.all(8.0),
child: table(context),
));
}
Widget table(BuildContext context) {
return MyDataTable(
headingRowHeight: 40,
columns: [
MyDataColumn(
label: LocalText(
context,
"discount.code",
color: Colors.grey,
),
),
MyDataColumn(
label: LocalText(
context,
"discount.amount",
color: Colors.grey,
),
),
],
rows: getRows(context),
);
}
List<MyDataRow> getRows(BuildContext context) {
if (discounts == null) {
return [];
}
var rows = discounts.map((c) {
return MyDataRow(
onSelectChanged: (value) => Navigator.pop(context, c),
cells: [
MyDataCell(new Text(
c.code ?? "",
style: textStyle,
)),
MyDataCell(
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [
Text(c.amount?.toStringAsFixed(2) ?? "0", style: textStyle),
],
),
),
],
);
}).toList();
return rows;
}
}