diff --git a/lib/features/lab/lab_view_model.dart b/lib/features/lab/lab_view_model.dart index a787c6b6..07cbbde3 100644 --- a/lib/features/lab/lab_view_model.dart +++ b/lib/features/lab/lab_view_model.dart @@ -377,8 +377,7 @@ class LabViewModel extends ChangeNotifier { LoaderBottomSheet.hideLoader(); if (apiResponse.messageStatus == 2) { } else if (apiResponse.messageStatus == 1) { - var sortedResult = sort(apiResponse.data!); - var recentThree = sortedResult.take(3).toList(); + var recentThree = sort(apiResponse.data!); mainLabResults = recentThree; double highRefrenceValue = double.negativeInfinity; @@ -386,12 +385,11 @@ class LabViewModel extends ChangeNotifier { double lowRefenceValue = double.infinity; String? flagForLowReferenceRange; - sortedResult.take(3).toList().reversed.forEach((element) { + recentThree.reversed.forEach((element) { try { var dateTime = DateUtil.convertStringToDate(element.verifiedOnDateTime!); var resultValue = double.parse(element.resultValue!); - // var transformedValue = transformValueInRange(double.parse(element.resultValue!), element.calculatedResultFlag ?? ""); - var transformedValue = resultValue; + var transformedValue = transformValueInRange(double.parse(element.resultValue!), element.calculatedResultFlag ?? ""); if (resultValue > maxY) { maxY = resultValue; maxX = maxY; @@ -423,9 +421,9 @@ class LabViewModel extends ChangeNotifier { highRefrenceValue = maxY; lowRefenceValue = minY; } - // + if (minY > lowRefenceValue) { - minY = lowRefenceValue - getInterval(); + minY = lowRefenceValue - 25; } this.flagForHighReferenceRange = flagForHighReferenceRange; @@ -434,16 +432,12 @@ class LabViewModel extends ChangeNotifier { lowTransformedReferenceValue = double.parse(transformValueInRange(lowRefenceValue, flagForLowReferenceRange ?? "").toStringAsFixed(1)); this.highRefrenceValue = double.parse(highRefrenceValue.toStringAsFixed(1)); this.lowRefenceValue = double.parse(lowRefenceValue.toStringAsFixed(1)); - if(maxY=1.0 && maxX < 5.0) return .3; - if(maxX >=5.0 && maxX < 10.0) return 1.5; - if(maxX >=10.0 && maxX < 50.0) return 2.5; - if(maxX >=50.0 && maxX < 100.0) return 5; - if(maxX >=100.0 && maxX < 200.0) return 10; - return 15; - } void checkIfGraphShouldBeDisplayed(LabResult recentResult) { shouldShowGraph = recentResult.checkIfGraphShouldBeDisplayed(); @@ -593,8 +576,7 @@ class LabViewModel extends ChangeNotifier { try { var dateTime = DateUtil.convertStringToDate(element.verifiedOnDateTime!); var resultValue = double.parse(element.resultValue!); - // var transformedValue = transformValueInRange(double.parse(element.resultValue!), element.calculatedResultFlag ?? ""); - var transformedValue = double.parse(element.resultValue!); + var transformedValue = transformValueInRange(double.parse(element.resultValue!), element.calculatedResultFlag ?? ""); if (resultValue > maxY) { maxY = resultValue; } diff --git a/lib/presentation/lab/lab_results/lab_result_details.dart b/lib/presentation/lab/lab_results/lab_result_details.dart index d1ed1470..d2c1b524 100644 --- a/lib/presentation/lab/lab_results/lab_result_details.dart +++ b/lib/presentation/lab/lab_results/lab_result_details.dart @@ -326,20 +326,20 @@ class LabResultDetails extends StatelessWidget { }, leftLabelFormatter: (value) { value = double.parse(value.toStringAsFixed(1)); - return leftLabels(value.toStringAsFixed(2)); - // if (value == labmodel.highRefrenceValue) { - // return leftLabels(LocaleKeys.high.tr()); - // } - // - // if (value == labmodel.lowRefenceValue) { - // return leftLabels(LocaleKeys.low.tr()); - // } + // return leftLabels(value.toStringAsFixed(2)); + if (value == labmodel.highRefrenceValue) { + return leftLabels(LocaleKeys.high.tr()); + } + + if (value == labmodel.lowRefenceValue) { + return leftLabels(LocaleKeys.low.tr()); + } return SizedBox.shrink(); // } }, - graphColor: AppColors.graphGridColor, - graphShadowColor: AppColors.graphGridColor.withOpacity(.5), + graphColor: AppColors.blackColor, + graphShadowColor: Colors.transparent, graphGridColor: graphColor.withOpacity(.4), bottomLabelFormatter: (value, data) { if (data.isEmpty) return SizedBox.shrink(); @@ -371,7 +371,7 @@ class LabResultDetails extends StatelessWidget { ranges.add(HorizontalRangeAnnotation( y1: model.minY, y2: model.lowRefenceValue, - color: Colors.transparent, + color: AppColors.highAndLow.withOpacity(0.05), )); ranges.add(HorizontalRangeAnnotation( @@ -383,7 +383,7 @@ class LabResultDetails extends StatelessWidget { ranges.add(HorizontalRangeAnnotation( y1: model.highRefrenceValue, y2: model.maxY, - color: Colors.transparent, + color: AppColors.criticalLowAndHigh.withOpacity(0.05), )); return ranges; } @@ -412,17 +412,15 @@ class LabResultDetails extends StatelessWidget { } double? getInterval(LabViewModel labmodel) { - // return .1; - var maxX = labmodel.maxY; - if(maxX<1) return .3; - if(maxX >1 && maxX <= 5) return .7; - if(maxX >5 && maxX <= 10) return 2.5; - if(maxX >10 && maxX <= 50) return 5; - if(maxX >50 && maxX <= 100) return 10; - if(maxX >100 && maxX <= 200) return 30; - if(maxX >200 && maxX <= 300) return 50; - if(maxX >300 && maxX <= 400) return 100; - return 200 ; + return .1; + // var maxX = labmodel.maxY; + // if(maxX<1) return .5; + // if(maxX >1 && maxX < 5) return 1; + // if(maxX >5 && maxX < 10) return 5; + // if(maxX >10 && maxX < 50) return 10; + // if(maxX >50 && maxX < 100) return 20; + // if(maxX >100 && maxX < 200) return 30; + // return 50; } Widget getLabDescription(BuildContext context) { diff --git a/lib/widgets/graph/custom_graph.dart b/lib/widgets/graph/custom_graph.dart index 3b0629f0..d9a69a99 100644 --- a/lib/widgets/graph/custom_graph.dart +++ b/lib/widgets/graph/custom_graph.dart @@ -257,7 +257,7 @@ class CustomGraph extends StatelessWidget { isCurved: true, isStrokeCapRound: true, isStrokeJoinRound: true, - barWidth: 3, + barWidth: 2, gradient: LinearGradient( colors: [resolvedGraphColor, resolvedGraphColor], begin: Alignment.centerLeft,