import 'package:flutter/material.dart'; import 'package:rkm_educa_app/modelos/estudante_modelo.dart'; import 'package:rkm_educa_app/telas/tela_avisos.dart'; import 'package:rkm_educa_app/utils/cores.dart'; import 'package:rkm_educa_app/componentes/text_custom.dart'; import 'package:rkm_educa_app/utils/dimensoes.dart'; import 'package:syncfusion_flutter_charts/charts.dart'; import '../componentes/drawer_custom.dart'; class TelaSituacaoEscolar extends StatefulWidget { EstudanteModelo estudanteModelo; TelaSituacaoEscolar({ required this.estudanteModelo }); @override State createState() => _TelaSituacaoEscolarState(); } class _TelaSituacaoEscolarState extends State { late List<_ChartData> data; late TooltipBehavior _tooltip; @override void initState() { super.initState(); data = [ _ChartData('Faltas', 10,Color(0xffD9D9D9)), _ChartData('Presenças', 90,Color(0xff43A65F)), ]; _tooltip = TooltipBehavior(enable: true); } Widget graph(BuildContext context) { return SfCircularChart( tooltipBehavior: _tooltip, series: >[ DoughnutSeries<_ChartData, String>( dataSource: data, xValueMapper: (_ChartData data, _) => data.x, yValueMapper: (_ChartData data, _) => data.y, pointColorMapper: (_ChartData data, _) => data.color, radius:'45' ) ] ); } @override Widget build(BuildContext context) { return Scaffold( backgroundColor: PaletaCores.fundoTela, appBar: AppBar( iconTheme: IconThemeData(color: PaletaCores.cinza), backgroundColor: Colors.transparent, elevation: 0, actions: [ Padding( padding: const EdgeInsets.all(4.0), child: IconButton( onPressed: ()=>Navigator.push(context, MaterialPageRoute(builder: (context)=>TelaAvisos(estudanteModelo: widget.estudanteModelo,))), icon: Icon(Icons.notifications_outlined,size: 32), ) ) ], ), drawer: DrawerCustom(estudanteModelo: widget.estudanteModelo), body: ListView( children: [ Center( child: TextCustom(text: 'Situção Escolar',fontWeight: FontWeight.bold,size: 20.0,), ), SizedBox( height: Dimensoes.height*0.1, ), Card( margin: EdgeInsets.symmetric(horizontal: 30), child: Padding( padding: const EdgeInsets.all(8.0), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ TextCustom(text: 'Próximos Eventos',fontWeight: FontWeight.bold,), Row( children: [ Container( width: Dimensoes.width*0.5, child: TextCustom(text: 'Viagem para o Museu',) ), Container( alignment: Alignment.center, width: Dimensoes.width*0.3, child: TextCustom(text: '01/06/2023',) ), ], ), Row( children: [ Container( width: Dimensoes.width*0.5, child: TextCustom(text: 'Apresentação dia dos pais',) ), Container( alignment: Alignment.center, width: Dimensoes.width*0.3, child: TextCustom(text: '13/08/2023',) ), ], ), ], ), ), ), SizedBox( height: Dimensoes.height*0.03, ), Card( margin: EdgeInsets.symmetric(horizontal: 30), child: Padding( padding: const EdgeInsets.all(8.0), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ TextCustom(text: 'Última Ocorrência',fontWeight: FontWeight.bold,), Row( children: [ Container( width: Dimensoes.width*0.5, child: TextCustom(text: 'Aluno Ausente',) ), Container( alignment: Alignment.center, width: Dimensoes.width*0.3, child: TextCustom(text: '08/06/2023',) ), ], ), ], ), ), ), ], ), ); } } class _ChartData { _ChartData(this.x, this.y, this.color); final String x; final double y; final Color color; }