import 'package:fcs/domain/entities/carton.dart';
import 'package:fcs/domain/entities/discount.dart';
import 'package:fcs/helpers/theme.dart';
import 'package:fcs/pages/discount/discount_editor.dart';
import 'package:fcs/pages/main/util.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_icons/flutter_icons.dart';
import 'package:intl/intl.dart';

typedef OnSelect(Discount discount);

class DiscountListRow extends StatelessWidget {
  final OnSelect onSelect;
  final Discount discount;
  DiscountListRow({Key key, this.discount, this.onSelect}) : super(key: key);

  final DateFormat dateFormat = new DateFormat("dd MMM yyyy");

  @override
  Widget build(BuildContext context) {
    return InkWell(
      onTap: () {
        if (onSelect != null) {
          onSelect(discount);
        }
      },
      child: Container(
        padding: EdgeInsets.only(left: 15, right: 15),
        child: Row(
          children: <Widget>[
            Expanded(
              child: new Padding(
                padding: const EdgeInsets.symmetric(vertical: 16.0),
                child: new Row(
                  children: <Widget>[
                    Container(
                      padding: EdgeInsets.only(left: 5, right: 10),
                      child: Icon(
                        Entypo.price_ribbon,
                        color: primaryColor,
                        size: 30,
                      ),
                    ),
                    new Expanded(
                      child: new Column(
                        crossAxisAlignment: CrossAxisAlignment.start,
                        children: <Widget>[
                          Padding(
                            padding: const EdgeInsets.only(left: 8.0),
                            child: new Text(
                              discount.code ?? "",
                              style: new TextStyle(
                                  fontSize: 15.0, color: Colors.black),
                            ),
                          ),
                          Padding(
                            padding: const EdgeInsets.only(left: 10.0, top: 10),
                            child: new Text(
                              discount.customerName ?? "",
                              style: new TextStyle(
                                  fontSize: 15.0, color: Colors.grey),
                            ),
                          )
                        ],
                      ),
                    ),
                  ],
                ),
              ),
            ),
            Column(
              children: <Widget>[
                Padding(
                  padding: const EdgeInsets.all(0),
                  child: Text(discount.status),
                ),
                Padding(
                  padding: const EdgeInsets.only(left: 8.0, top: 5, bottom: 5),
                  child: Row(
                    children: <Widget>[
                      new Text(
                        "${discount.amount ?? ''}",
                        style:
                            new TextStyle(fontSize: 15.0, color: Colors.grey),
                      ),
                    ],
                  ),
                ),
              ],
            )
          ],
        ),
      ),
    );
  }
}
