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.
healthcare-doctor/lib/models/bmi_history_model.dart

55 lines
1.6 KiB

6 months ago
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;
}
}