leaveBalanceReportWidget method

Widget leaveBalanceReportWidget()

Implementation

Widget leaveBalanceReportWidget() {
  List<TableRow> detailsWidget = [];
  detailsWidget.add(
    TableRow(
      children: [
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Leave Type",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Emp ID",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Employee Name",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Leaves Allocated",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Leaves Expired",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Opening Balance",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Leaves Taken",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(
            "Closing Balance",
            style: TextStyle(fontWeight: FontWeight.bold),
          ),
        ),
      ],
    ),
  );
  for (var leaveBalances in leaveBalanceReport) {
    detailsWidget.add(
      TableRow(
        children: [
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.leaveType),
          ),
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.employee),
          ),
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.employeeName),
          ),
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.leavesAllocated.toString()),
          ),
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.leavesExpired.toString()),
          ),
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.openingBalance.toString()),
          ),
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.leavesTaken.toString()),
          ),
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: Text(leaveBalances.closingBalance.toString()),
          ),
        ],
      ),
    );
  }
  return SingleChildScrollView(
    child: Padding(
      padding: const EdgeInsets.all(8.0),
      child: SingleChildScrollView(
        scrollDirection: Axis.horizontal,
        child: SizedBox(
          width: 1000,
          child: Table(
            border: TableBorder.all(color: Colors.black),
            children: detailsWidget,
          ),
        ),
      ),
    ),
  );
}