You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.6 KiB
55 lines
1.6 KiB
import 'package:flutter/material.dart';
|
|
import 'package:doctor/common/settings.dart';
|
|
import 'package:intl/intl.dart';
|
|
|
|
|
|
class BmiHistoryModel {
|
|
String bmiValue = '';
|
|
String height= '';
|
|
String weight= '';
|
|
String date= '';
|
|
String actualDate= '';
|
|
String displayDate='';
|
|
DateTime dateForFilter=new DateTime.now();
|
|
String bmiInfoId = '';
|
|
String bmiText = '';
|
|
Color bmiTextColor = Colors.black;
|
|
var number1;
|
|
var number2;
|
|
|
|
BmiHistoryModel();
|
|
|
|
factory BmiHistoryModel.fromJson(Map<String, dynamic> json){
|
|
BmiHistoryModel rtvm = new BmiHistoryModel();
|
|
|
|
rtvm.bmiValue = json['bmivalue'].toString() ?? '';
|
|
rtvm.bmiInfoId = json['bmiinfoid'].toString() ?? '';
|
|
rtvm.height = json['height'].toString() ?? '';
|
|
rtvm.weight = json['weight'].toString() ?? '';
|
|
rtvm.number1 = double.parse( rtvm.bmiValue);
|
|
rtvm.number2 = double.parse( rtvm.bmiValue);
|
|
rtvm.date = json['createdAt'].toString() ?? '';
|
|
rtvm.actualDate = json['date'].toString() ?? '';
|
|
rtvm.dateForFilter = DateFormat('dd-MM-yyyy').parse(rtvm.actualDate);
|
|
if(double.parse(rtvm.bmiValue)<18.5){
|
|
rtvm.bmiText='Underweight';
|
|
rtvm.bmiTextColor=Colors.red;
|
|
}
|
|
else if(double.parse(rtvm.bmiValue)>=18.5&&double.parse(rtvm.bmiValue)<=24.9){
|
|
rtvm.bmiText='Normal weight';
|
|
rtvm.bmiTextColor=buttonColors;
|
|
}
|
|
else if(double.parse(rtvm.bmiValue)>=25&&double.parse(rtvm.bmiValue)<=29.9){
|
|
rtvm.bmiText='Overweight';
|
|
rtvm.bmiTextColor=Colors.red;
|
|
}
|
|
else if(double.parse(rtvm.bmiValue)>=30){
|
|
rtvm.bmiText='Obesity';
|
|
rtvm.bmiTextColor=Colors.red;
|
|
}
|
|
|
|
|
|
return rtvm;
|
|
}
|
|
|
|
} |