Browse Source

Merge branch 'xt_statistics_branch'

csx 4 years ago
parent
commit
ebf59832a0
1 changed files with 23 additions and 10 deletions
  1. 23 10
      service/statistics_service/index_evaluation_service.go

+ 23 - 10
service/statistics_service/index_evaluation_service.go View File

@@ -477,12 +477,16 @@ func GetDialysisWeightChartData(user_org_id int64, start_time int64, end_time in
477 477
 		}
478 478
 		var weights []*weight
479 479
 		var weightAdd []float64
480
-		db.Raw("Select xt_assessment_after_dislysis.weight_after as weight_after ,xt_assessment_before_dislysis.weight_before as weight_before from `xt_assessment_before_dislysis`   INNER JOIN  `xt_assessment_after_dislysis`  On xt_assessment_before_dislysis.`patient_id` = xt_assessment_after_dislysis.`patient_id` AND xt_assessment_before_dislysis.assessment_date = xt_assessment_after_dislysis.assessment_date AND xt_assessment_after_dislysis.weight_after != 0   Where  xt_assessment_before_dislysis.user_org_id = ? AND xt_assessment_before_dislysis.created_time >= ? AND  xt_assessment_before_dislysis.created_time <= ?", user_org_id, start_time, end_time).Scan(&weights)
480
+		db.Raw("Select xt_assessment_after_dislysis.weight_after as weight_after ,xt_assessment_before_dislysis.weight_before as weight_before from `xt_assessment_before_dislysis`   LEFT JOIN  `xt_assessment_after_dislysis`  On xt_assessment_before_dislysis.`patient_id` = xt_assessment_after_dislysis.`patient_id` AND xt_assessment_before_dislysis.assessment_date = xt_assessment_after_dislysis.assessment_date AND xt_assessment_after_dislysis.weight_after != 0   Where  xt_assessment_before_dislysis.user_org_id = ? AND xt_assessment_before_dislysis.created_time >= ? AND  xt_assessment_before_dislysis.created_time <= ? Order by xt_assessment_before_dislysis.assessment_date desc", user_org_id, start_time, end_time).Scan(&weights)
481 481
 		for index, _ := range weights {
482 482
 			if index+1 < len(weights) {
483
+				if weights[index+1].WeightAfter == 0 || weights[index].WeightBefore == 0 {
484
+					continue
485
+				}
483 486
 				weightAdd = append(weightAdd, weights[index].WeightBefore-weights[index+1].WeightAfter)
484 487
 			}
485 488
 		}
489
+		fmt.Println(weightAdd)
486 490
 
487 491
 		var total_one int64
488 492
 		var total_two int64
@@ -686,10 +690,10 @@ func GetPatientDialysisWeightChartData(user_org_id int64, patient_id int64, star
686 690
 	db := service.XTReadDB()
687 691
 	switch statistics_type {
688 692
 	case 1:
689
-		err = db.Raw("select from_unixtime(assessment_date, '%Y-%m-%d') as date, dry_weight as value from xt_assessment_before_dislysis  Where status = 1 AND user_org_id = ? AND patient_id = ?  created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
693
+		err = db.Raw("select from_unixtime(assessment_date, '%Y-%m-%d') as date, dry_weight as value from xt_assessment_before_dislysis  Where status = 1 AND user_org_id = ? AND patient_id = ? AND created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
690 694
 		break
691 695
 	case 2:
692
-		err = db.Raw("select from_unixtime(assessment_date, '%Y-%m-%d') as date, weight_before as value from xt_assessment_before_dislysis  Where status = 1 AND user_org_id = ? AND patient_id = ?  created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
696
+		err = db.Raw("select from_unixtime(assessment_date, '%Y-%m-%d') as date, weight_before as value from xt_assessment_before_dislysis  Where status = 1 AND user_org_id = ? AND patient_id = ? AND  created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
693 697
 		break
694 698
 	case 3:
695 699
 
@@ -700,20 +704,29 @@ func GetPatientDialysisWeightChartData(user_org_id int64, patient_id int64, star
700 704
 		}
701 705
 
702 706
 		var weights []*weight
703
-		db.Raw("Select xt_assessment_after_dislysis.weight_after as weight_after ,xt_assessment_before_dislysis.weight_before as weight_before,from_unixtime(xt_assessment_before_dislysis.assessment_date,'%Y-%m-%d') as date from `xt_assessment_before_dislysis`   INNER JOIN  `xt_assessment_after_dislysis`  On xt_assessment_before_dislysis.`patient_id` = xt_assessment_after_dislysis.`patient_id` AND xt_assessment_before_dislysis.assessment_date = xt_assessment_after_dislysis.assessment_date AND xt_assessment_after_dislysis.weight_after != 0   Where  xt_assessment_before_dislysis.user_org_id = ? AND xt_assessment_before_dislysis.created_time >= ? AND  xt_assessment_before_dislysis.created_time <= ? AND xt_assessment_before_dislysis.patient_id = ?", user_org_id, start_time, end_time, patient_id).Scan(&weights)
707
+		db.Raw("Select xt_assessment_after_dislysis.weight_after as weight_after ,xt_assessment_before_dislysis.weight_before as weight_before,from_unixtime(xt_assessment_before_dislysis.assessment_date,'%Y-%m-%d') as date from `xt_assessment_before_dislysis`   LEFT JOIN  `xt_assessment_after_dislysis`  On xt_assessment_before_dislysis.`patient_id` = xt_assessment_after_dislysis.`patient_id` AND xt_assessment_before_dislysis.assessment_date = xt_assessment_after_dislysis.assessment_date AND xt_assessment_after_dislysis.weight_after != 0   Where  xt_assessment_before_dislysis.user_org_id = ? AND xt_assessment_before_dislysis.created_time >= ? AND  xt_assessment_before_dislysis.created_time <= ? AND xt_assessment_before_dislysis.patient_id = ? Order by date desc", user_org_id, start_time, end_time, patient_id).Scan(&weights)
708
+		fmt.Println(len(weights))
704 709
 		for index, _ := range weights {
710
+
705 711
 			if index+1 < len(weights) {
706
-				var weight_add *ProcessIndexDataStruct
712
+				var weight_add ProcessIndexDataStruct
713
+				fmt.Println(weights[index+1].WeightAfter)
714
+				fmt.Println(weights[index].WeightBefore)
715
+
716
+				if weights[index+1].WeightAfter == 0 || weights[index].WeightBefore == 0 {
717
+					continue
718
+				}
707 719
 				add := weights[index].WeightBefore - weights[index+1].WeightAfter
708 720
 				weight_add.Value = add
709 721
 				weight_add.Date = weights[index].Date
710
-				datas = append(datas, weight_add)
722
+				datas = append(datas, &weight_add)
723
+
711 724
 			}
712 725
 		}
713 726
 
714 727
 		break
715 728
 	case 4:
716
-		err = db.Raw("select assessment_date as date, weight_after as value from xt_assessment_after_dislysis Where status = 1 AND user_org_id = ? AND patient_id = ?  created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
729
+		err = db.Raw("select assessment_date as date, weight_after as value from xt_assessment_after_dislysis Where status = 1 AND user_org_id = ? AND patient_id = ? AND  created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
717 730
 		break
718 731
 
719 732
 	}
@@ -961,13 +974,13 @@ type BPDataStruct struct {
961 974
 }
962 975
 
963 976
 func GetPatientBloodPressureChartData(user_org_id int64, patient_id int64, start_time int64, end_time int64, statistics_type int) (datas []*BPDataStruct, err error) {
977
+	fmt.Println("8u8923u213u8129")
964 978
 	db := service.XTReadDB()
965 979
 	switch statistics_type {
966
-
967
-	case 2:
980
+	case 1:
968 981
 		err = db.Raw("select from_unixtime(assessment_date, '%Y-%m-%d') as date, systolic_blood_pressure as systolic_blood_pressure, diastolic_blood_pressure as diastolic_blood_pressure from xt_assessment_before_dislysis  Where status = 1 AND user_org_id = ? AND patient_id = ? AND   created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
969 982
 		break
970
-	case 3:
983
+	case 2:
971 984
 		err = db.Raw("select from_unixtime(assessment_date, '%Y-%m-%d') as date, systolic_blood_pressure as systolic_blood_pressure, diastolic_blood_pressure as diastolic_blood_pressure from xt_assessment_after_dislysis Where status = 1 AND user_org_id = ? AND patient_id = ? AND  created_time <= ? AND  created_time >= ? ", user_org_id, patient_id, end_time, start_time).Scan(&datas).Error
972 985
 		break
973 986