You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			88 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Dart
		
	
		
		
			
		
	
	
			88 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Dart
		
	
| 
								 
											3 years ago
										 
									 | 
							
								
							 | 
						||
| 
								 | 
							
								import 'package:flutter/cupertino.dart';
							 | 
						||
| 
								 | 
							
								import 'package:flutter/material.dart';
							 | 
						||
| 
								 | 
							
								import 'package:flutter_svg/svg.dart';
							 | 
						||
| 
								 | 
							
								import 'package:queuing_system/core/config/config.dart';
							 | 
						||
| 
								 | 
							
								import 'package:queuing_system/core/config/size_config.dart';
							 | 
						||
| 
								 | 
							
								import 'package:queuing_system/core/response_model/patient_call.dart';
							 | 
						||
| 
								 | 
							
								import 'package:queuing_system/home/priority_calls.dart';
							 | 
						||
| 
								 | 
							
								import 'package:queuing_system/utils/call_type.dart';
							 | 
						||
| 
								 | 
							
								import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Widget noPatientInQueue(){
							 | 
						||
| 
								 | 
							
								  return Column(
							 | 
						||
| 
								 | 
							
								    mainAxisAlignment: MainAxisAlignment.center,
							 | 
						||
| 
								 | 
							
								    children: [
							 | 
						||
| 
								 | 
							
								      Center(
							 | 
						||
| 
								 | 
							
								        child: AppText("Awaiting Patients Arrival",
							 | 
						||
| 
								 | 
							
								            fontFamily: 'Poppins-SemiBold.ttf',
							 | 
						||
| 
								 | 
							
								            fontSize: SizeConfig.getWidthMultiplier() * 9),
							 | 
						||
| 
								 | 
							
								      ),
							 | 
						||
| 
								 | 
							
								    ],
							 | 
						||
| 
								 | 
							
								  );
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Widget priorityTickets(List<Tickets> tickets){
							 | 
						||
| 
								 | 
							
								  return PriorityTickets(tickets);
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Widget priorityTicketsWithSideList(List<Tickets> tickets){
							 | 
						||
| 
								 | 
							
								  final priorityTickets = tickets.sublist(0,3);
							 | 
						||
| 
								 | 
							
								  final otherTickets = tickets.sublist(3,tickets.length);
							 | 
						||
| 
								 | 
							
								  return Row(
							 | 
						||
| 
								 | 
							
								    children: [
							 | 
						||
| 
								 | 
							
								      Expanded(
							 | 
						||
| 
								 | 
							
								        flex: 3,
							 | 
						||
| 
								 | 
							
								          child: PriorityTickets(priorityTickets)
							 | 
						||
| 
								 | 
							
								      ),
							 | 
						||
| 
								 | 
							
								      Container(color: Colors.grey.withOpacity(0.1), width: 10, margin: const EdgeInsets.symmetric(horizontal: 20, vertical: 50)),
							 | 
						||
| 
								 | 
							
								      Expanded(
							 | 
						||
| 
								 | 
							
								        flex: 2,
							 | 
						||
| 
								 | 
							
								        child: ListView.builder(
							 | 
						||
| 
								 | 
							
								          padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 50),
							 | 
						||
| 
								 | 
							
								          itemCount: otherTickets.length,
							 | 
						||
| 
								 | 
							
								          itemBuilder: (ctx,idx){
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            final itm = otherTickets[idx];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            return ListTile(
							 | 
						||
| 
								 | 
							
								              contentPadding: const EdgeInsets.all(8),
							 | 
						||
| 
								 | 
							
								              title: Row(
							 | 
						||
| 
								 | 
							
								                crossAxisAlignment: CrossAxisAlignment.center,
							 | 
						||
| 
								 | 
							
								                children: [
							 | 
						||
| 
								 | 
							
								                  SizedBox(
							 | 
						||
| 
								 | 
							
								                    width: 140,
							 | 
						||
| 
								 | 
							
								                    child: AppText(
							 | 
						||
| 
								 | 
							
								                      itm.callNo.toString(),
							 | 
						||
| 
								 | 
							
								                      letterSpacing: -2.32,
							 | 
						||
| 
								 | 
							
								                      fontWeight: FontWeight.bold,
							 | 
						||
| 
								 | 
							
								                      fontSize: SizeConfig.getWidthMultiplier() * 5,
							 | 
						||
| 
								 | 
							
								                      textAlign: TextAlign.end,
							 | 
						||
| 
								 | 
							
								                    ),
							 | 
						||
| 
								 | 
							
								                  ),
							 | 
						||
| 
								 | 
							
								                  Row(
							 | 
						||
| 
								 | 
							
								                    crossAxisAlignment: CrossAxisAlignment.end,
							 | 
						||
| 
								 | 
							
								                    children: [
							 | 
						||
| 
								 | 
							
								                      itm.getCallType().icon(SizeConfig.getHeightMultiplier()*2.5),
							 | 
						||
| 
								 | 
							
								                      const SizedBox(width: 10),
							 | 
						||
| 
								 | 
							
								                      AppText(
							 | 
						||
| 
								 | 
							
								                        itm.getCallType().message('en'),
							 | 
						||
| 
								 | 
							
								                        color: itm.getCallType().color(),
							 | 
						||
| 
								 | 
							
								                        letterSpacing: -1.5,
							 | 
						||
| 
								 | 
							
								                        fontSize: SizeConfig.getWidthMultiplier() * 3.3,
							 | 
						||
| 
								 | 
							
								                        fontWeight: FontWeight.w600,
							 | 
						||
| 
								 | 
							
								                        fontHeight: 0.5,
							 | 
						||
| 
								 | 
							
								                      ),
							 | 
						||
| 
								 | 
							
								                    ],
							 | 
						||
| 
								 | 
							
								                  )
							 | 
						||
| 
								 | 
							
								                ],
							 | 
						||
| 
								 | 
							
								              ),
							 | 
						||
| 
								 | 
							
								            );
							 | 
						||
| 
								 | 
							
								          },
							 | 
						||
| 
								 | 
							
								        ),
							 | 
						||
| 
								 | 
							
								      )
							 | 
						||
| 
								 | 
							
								    ],
							 | 
						||
| 
								 | 
							
								  );
							 | 
						||
| 
								 | 
							
								}
							 |