import 'dart:math'; import 'package:marco/controller/my_controller.dart'; import 'package:marco/helpers/extensions/string.dart'; import 'package:marco/helpers/widgets/my_text_utils.dart'; import 'package:marco/model/visitor_by_channels_model.dart'; import 'package:marco/view/other/basic_table_screen.dart'; import 'package:flutter/material.dart'; class BasicTableController extends MyController { List datas = Data.factory(); DataTableSource? data; List visitorByChannel = []; @override void onInit() { super.onInit(); VisitorByChannelsModel.dummyList.then((value) { visitorByChannel = value; update(); }); data = MyData(datas); } void removeData(index) { visitorByChannel.removeAt(index); update(); } } class Data { final int id, qty; final String name; final String code; final double amount; Data(this.id, this.qty, this.name, this.code, this.amount); static factory([int seeds = 30]) { return List.generate( seeds, (index) => Data(index + 1, Random().nextInt(100), MyTextUtils.getDummyText(2, withStop: false), MyTextUtils.getDummyText(1, withStop: false).toLowerCase(), (Random().nextDouble() * 100).toStringAsPrecision(2).toDouble())); } }