import 'package:cssd/models/cycles_models.dart'; import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; class CycleDetailsDataBox extends StatelessWidget { const CycleDetailsDataBox({ Key key, @required this.datas, @required double deviceBlockSize, }) : _deviceBlockSize = deviceBlockSize, super(key: key); final CycleDetailObject datas; final double _deviceBlockSize; @override Widget build(BuildContext context) { return Padding( padding: EdgeInsets.all(20), child: ListView(children: [ SizedBox( height: 10, ), Text( 'CYCLE DETAILS', style: TextStyle( fontWeight: FontWeight.w700, fontSize: 5 * _deviceBlockSize, letterSpacing: 3, ), ), SizedBox( height: 10, ), Container( padding: EdgeInsets.all(10), decoration: BoxDecoration( color: Color.fromRGBO(235, 235, 235, 1), border: Border( left: BorderSide( color: Colors.black54, width: 2, ), ), ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ Text( DateFormat.yMMMd().format( DateTime.parse( datas.createDate, ), ), style: TextStyle( color: Colors.red, ), ), Divider(), Text( 'ID: ${datas.id}', style: TextStyle( color: Colors.red, fontWeight: FontWeight.w700, ), ), SizedBox( height: 30, ), Row( children: [ Container( width: 35 * _deviceBlockSize, child: Text( 'Sterilizer ID', style: TextStyle( color: Colors.grey, ), ), ), Container( width: 45 * _deviceBlockSize, child: Text( datas.sterileId.toString(), style: TextStyle( fontWeight: FontWeight.w700, ), overflow: TextOverflow.clip, ), ), ], ), Divider(), SizedBox( height: 5, ), Row( children: [ Container( width: 35 * _deviceBlockSize, child: Text( 'Cycle Number', style: TextStyle( color: Colors.grey, ), ), ), Container( width: 45 * _deviceBlockSize, child: Text( datas.cycleNumber.toString(), style: TextStyle( fontWeight: FontWeight.w700, ), overflow: TextOverflow.clip, ), ), ], ), Divider(), SizedBox( height: 5, ), Row( children: [ Container( width: 35 * _deviceBlockSize, child: Text( 'Date', style: TextStyle( color: Colors.grey, ), ), ), Container( width: 45 * _deviceBlockSize, child: Text( DateFormat('d-M-y').format( DateTime.parse( datas.date, ), ), style: TextStyle( fontWeight: FontWeight.w700, ), overflow: TextOverflow.clip, ), ), ], ), Divider(), SizedBox( height: 5, ), Row( children: [ Container( width: 35 * _deviceBlockSize, child: Text( 'Description', style: TextStyle( color: Colors.grey, ), ), ), Container( width: 45 * _deviceBlockSize, child: Text( datas.description.toString(), style: TextStyle( fontWeight: FontWeight.w700, ), overflow: TextOverflow.clip, ), ), ], ), Divider(), SizedBox( height: 30, ), Text( 'LABELS INCLUDED', style: TextStyle( color: Colors.orange, letterSpacing: 3, fontWeight: FontWeight.w700, fontSize: 4.5 * _deviceBlockSize, ), ), Container( width: double.infinity, padding: EdgeInsets.symmetric(vertical: 10, horizontal: 20), decoration: BoxDecoration( borderRadius: BorderRadius.circular(5), border: Border.all( color: Colors.grey, ), ), child: ListView.separated( shrinkWrap: true, itemBuilder: (ctx, index) => RichText( text: TextSpan( text: 'Label ID ', style: TextStyle(color: Colors.grey,fontFamily: 'montserrat',), // style: DefaultTextStyle.of(context).style, children: [ TextSpan( text: datas.labels[index], style: TextStyle( fontWeight: FontWeight.bold, color: Colors.orange, ), ), ], ), ), separatorBuilder: (ctx, index) => Divider(), itemCount: datas.labels.length, ), ), SizedBox(height: 50,) ], ), ), ]), ); } }