张保健 vor 3 Jahren
Ursprung
Commit
36b96187b7

+ 7 - 1
controllers/dialysis_api_controller.go Datei anzeigen

3298
 		//
3298
 		//
3299
 
3299
 
3300
 		//新增逻辑
3300
 		//新增逻辑
3301
+		templateInfo, _ := service.GetOrgInfoTemplate(adminUserInfo.CurrentOrgId)
3301
 
3302
 
3302
 		var dewater_amount float64
3303
 		var dewater_amount float64
3303
 		dewater_amount = 0
3304
 		dewater_amount = 0
3304
 		if evaluation.DryWeight > 0 {
3305
 		if evaluation.DryWeight > 0 {
3305
 			dewater_amount = evaluation.WeightBefore - evaluation.DryWeight - evaluation.AdditionalWeight
3306
 			dewater_amount = evaluation.WeightBefore - evaluation.DryWeight - evaluation.AdditionalWeight
3307
+			if templateInfo.TemplateId == 17 {
3308
+				dewater_amount = dewater_amount * 1000
3309
+			}
3306
 			if dewater_amount <= 0 {
3310
 			if dewater_amount <= 0 {
3307
 				dewater_amount = 0
3311
 				dewater_amount = 0
3308
 			}
3312
 			}
4853
 			totalMin := prescription.DialysisDurationHour*60 + prescription.DialysisDurationMinute
4857
 			totalMin := prescription.DialysisDurationHour*60 + prescription.DialysisDurationMinute
4854
 			if template.TemplateId == 6 { //adminInfo.CurrentOrgId == 9538
4858
 			if template.TemplateId == 6 { //adminInfo.CurrentOrgId == 9538
4855
 				ultrafiltration_rate = math.Floor(prescription.TargetUltrafiltration / float64(totalMin) * 60 * 1000)
4859
 				ultrafiltration_rate = math.Floor(prescription.TargetUltrafiltration / float64(totalMin) * 60 * 1000)
4860
+				record.UltrafiltrationRate = ultrafiltration_rate
4856
 			}
4861
 			}
4857
 			// 只针对方济医院
4862
 			// 只针对方济医院
4858
 			if template.TemplateId == 1 {
4863
 			if template.TemplateId == 1 {
4859
 				value, _ := strconv.ParseFloat(fmt.Sprintf("%.3f", prescription.TargetUltrafiltration/float64(totalMin)*60), 6)
4864
 				value, _ := strconv.ParseFloat(fmt.Sprintf("%.3f", prescription.TargetUltrafiltration/float64(totalMin)*60), 6)
4860
 				ultrafiltration_rate = value
4865
 				ultrafiltration_rate = value
4866
+				record.UltrafiltrationRate = ultrafiltration_rate
4861
 			}
4867
 			}
4862
 		}
4868
 		}
4863
 	}
4869
 	}
4864
-	record.UltrafiltrationRate = ultrafiltration_rate
4870
+	// record.UltrafiltrationRate = ultrafiltration_rate
4865
 	record.UltrafiltrationVolume = 0
4871
 	record.UltrafiltrationVolume = 0
4866
 	if template.TemplateId == 1 {
4872
 	if template.TemplateId == 1 {
4867
 		if ultrafiltration_rate > 0 {
4873
 		if ultrafiltration_rate > 0 {

+ 18 - 0
controllers/mobile_api_controllers/check_weight_api_controller.go Datei anzeigen

679
 	}
679
 	}
680
 }
680
 }
681
 
681
 
682
+func (c *CheckWeightApiController) GetPatientList() {
683
+	syncTime,_ := c.GetInt64("synctime", 0)
684
+	force,_ := c.GetInt64("force", 0)
685
+	adminUserInfo := c.GetMobileAdminUserInfo()
686
+	patientList, total, error := service.GetPatientListByUpdateTime(adminUserInfo.Org.Id,syncTime, force)
687
+	if error != nil {
688
+		c.ErrorLog("获取病人列表失败:%v", error)
689
+		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
690
+		return
691
+	}
692
+	serviceTime := time.Now().Unix()
693
+	c.ServeSuccessJSON(map[string]interface{}{
694
+		"patientlist": patientList,
695
+		"total": total,
696
+		"servicetime": serviceTime,
697
+	})
698
+}
699
+
682
 func (c *CheckWeightApiController) GetPatientInfoDialysis() {
700
 func (c *CheckWeightApiController) GetPatientInfoDialysis() {
683
 	id, _ := c.GetInt64("patient", 0)
701
 	id, _ := c.GetInt64("patient", 0)
684
 	if id <= 0 {
702
 	if id <= 0 {

+ 3 - 1
controllers/mobile_api_controllers/dialysis_api_controller.go Datei anzeigen

5532
 			totalMin := prescription.DialysisDurationHour*60 + prescription.DialysisDurationMinute
5532
 			totalMin := prescription.DialysisDurationHour*60 + prescription.DialysisDurationMinute
5533
 			if template.TemplateId == 6 {
5533
 			if template.TemplateId == 6 {
5534
 				ultrafiltration_rate = math.Floor(prescription.TargetUltrafiltration / float64(totalMin) * 60 * 1000)
5534
 				ultrafiltration_rate = math.Floor(prescription.TargetUltrafiltration / float64(totalMin) * 60 * 1000)
5535
+				record.UltrafiltrationRate = ultrafiltration_rate
5535
 			}
5536
 			}
5536
 			// 只针对方济医院
5537
 			// 只针对方济医院
5537
 			if template.TemplateId == 1 {
5538
 			if template.TemplateId == 1 {
5538
 				value, _ := strconv.ParseFloat(fmt.Sprintf("%.3f", prescription.TargetUltrafiltration/float64(totalMin)*60), 6)
5539
 				value, _ := strconv.ParseFloat(fmt.Sprintf("%.3f", prescription.TargetUltrafiltration/float64(totalMin)*60), 6)
5539
 				ultrafiltration_rate = value
5540
 				ultrafiltration_rate = value
5541
+				record.UltrafiltrationRate = ultrafiltration_rate
5540
 			}
5542
 			}
5541
 		}
5543
 		}
5542
 	}
5544
 	}
5543
-	record.UltrafiltrationRate = ultrafiltration_rate
5545
+	// record.UltrafiltrationRate = ultrafiltration_rate
5544
 	record.UltrafiltrationVolume = 0
5546
 	record.UltrafiltrationVolume = 0
5545
 	if template.TemplateId == 1 { //adminInfo.Org.Id == 3907 || adminInfo.Org.Id == 4 || adminInfo.Org.Id == 12 || adminInfo.Org.Id == 13 || adminInfo.Org.Id == 9535adminInfo.Org.Id == 3907 || adminInfo.Org.Id == 4 || adminInfo.Org.Id == 12 || adminInfo.Org.Id == 13 || adminInfo.Org.Id == 9535
5547
 	if template.TemplateId == 1 { //adminInfo.Org.Id == 3907 || adminInfo.Org.Id == 4 || adminInfo.Org.Id == 12 || adminInfo.Org.Id == 13 || adminInfo.Org.Id == 9535adminInfo.Org.Id == 3907 || adminInfo.Org.Id == 4 || adminInfo.Org.Id == 12 || adminInfo.Org.Id == 13 || adminInfo.Org.Id == 9535
5546
 		if ultrafiltration_rate > 0 {
5548
 		if ultrafiltration_rate > 0 {

+ 1 - 0
controllers/mobile_api_controllers/mobile_api_router_register.go Datei anzeigen

11
 	// beego.Router("/m/api/test", &DialysisTestAPIController{}, "get:Test")
11
 	// beego.Router("/m/api/test", &DialysisTestAPIController{}, "get:Test")
12
 	beego.Router("/m/api/savebloodpressure", &CheckWeightApiController{}, "Post:SaveBloodPressure")
12
 	beego.Router("/m/api/savebloodpressure", &CheckWeightApiController{}, "Post:SaveBloodPressure")
13
 	beego.Router("/m/api/checkbeforedialysis", &CheckWeightApiController{}, "get:GetPatientInfoBeforeDialysis")
13
 	beego.Router("/m/api/checkbeforedialysis", &CheckWeightApiController{}, "get:GetPatientInfoBeforeDialysis")
14
+	beego.Router("/m/api/getpatientlist", &CheckWeightApiController{}, "get:GetPatientList")
14
 	beego.Router("/m/api/checkdialysis", &CheckWeightApiController{}, "get:GetPatientInfoDialysis")
15
 	beego.Router("/m/api/checkdialysis", &CheckWeightApiController{}, "get:GetPatientInfoDialysis")
15
 	beego.Router("/m/api/savecheckdialysis", &CheckWeightApiController{}, "Post:SavePatientInfoDialysis")
16
 	beego.Router("/m/api/savecheckdialysis", &CheckWeightApiController{}, "Post:SavePatientInfoDialysis")
16
 	beego.Router("/m/api/scheduals", &DialysisAPIController{}, "get:Scheduals")
17
 	beego.Router("/m/api/scheduals", &DialysisAPIController{}, "get:Scheduals")

+ 4 - 0
controllers/mobile_api_controllers/patient_api_controller.go Datei anzeigen

843
 		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
843
 		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
844
 		return
844
 		return
845
 	}
845
 	}
846
+	template, _ := service.GetOrgInfoTemplate(adminUserInfo.Org.Id)
846
 	//templateInfo,_ := service.GetOrgInfoTemplate(adminUserInfo.Org.Id)
847
 	//templateInfo,_ := service.GetOrgInfoTemplate(adminUserInfo.Org.Id)
847
 	appRole, _ := service.FindAdminRoleTypeById(adminUserInfo.Org.Id, adminUserInfo.AdminUser.Id, adminUserInfo.App.Id)
848
 	appRole, _ := service.FindAdminRoleTypeById(adminUserInfo.Org.Id, adminUserInfo.AdminUser.Id, adminUserInfo.App.Id)
848
 	var evaluation models.PredialysisEvaluation
849
 	var evaluation models.PredialysisEvaluation
890
 	dewater_amount = 0
891
 	dewater_amount = 0
891
 	if evaluation.DryWeight > 0 {
892
 	if evaluation.DryWeight > 0 {
892
 		dewater_amount = evaluation.WeightBefore - evaluation.DryWeight - evaluation.AdditionalWeight
893
 		dewater_amount = evaluation.WeightBefore - evaluation.DryWeight - evaluation.AdditionalWeight
894
+		if template.TemplateId == 17 {
895
+			dewater_amount = dewater_amount * 1000
896
+		}
893
 		if dewater_amount <= 0 {
897
 		if dewater_amount <= 0 {
894
 			dewater_amount = 0
898
 			dewater_amount = 0
895
 		}
899
 		}

+ 17 - 0
models/patient_models.go Datei anzeigen

1
 package models
1
 package models
2
 
2
 
3
+type PatientListForFace struct {
4
+	ID                           int64                `gorm:"column:id" json:"id" form:"id"`
5
+	UserOrgId                    int64                `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
6
+	Avatar                       string               `gorm:"column:avatar" json:"avatar" form:"avatar"`
7
+	DialysisNo                   string               `gorm:"column:dialysis_no" json:"dialysis_no" form:"dialysis_no"`
8
+	IdCardNo                     string               `gorm:"column:id_card_no" json:"id_card_no" form:"id_card_no"`
9
+	Birthday                     int64                `gorm:"column:birthday" json:"birthday" form:"birthday"`
10
+	Phone                        string               `gorm:"column:phone" json:"phone" form:"phone"`	
11
+	Age                          int64                `gorm:"column:age" json:"age"`
12
+	CreatedTime                  int64                `gorm:"column:created_time" json:"created_time" form:"created_time"`
13
+	UpdatedTime                  int64                `gorm:"column:updated_time" json:"updated_time" form:"updated_time"`
14
+}
15
+
16
+func (PatientListForFace) TableName() string {
17
+	return "xt_patients"
18
+}
19
+
3
 type Patients struct {
20
 type Patients struct {
4
 	ID                           int64                `gorm:"column:id" json:"id" form:"id"`
21
 	ID                           int64                `gorm:"column:id" json:"id" form:"id"`
5
 	UserOrgId                    int64                `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
22
 	UserOrgId                    int64                `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`

+ 9 - 0
service/patient_service.go Datei anzeigen

80
 	return
80
 	return
81
 }
81
 }
82
 
82
 
83
+func GetPatientListByUpdateTime(orgID int64,syncTime int64,force int64) (patients []*models.PatientListForFace, total int64, err error) {
84
+	db := readDb.Model(&models.PatientListForFace{}).Where("user_org_id=? and status=1", orgID)
85
+	if force == 0 {
86
+		db = db.Where("updated_time >= ?", syncTime)
87
+	}
88
+	err = db.Count(&total).Find(&patients).Error
89
+	return
90
+}
91
+
83
 func GetPatientCount(orgID int64) (total int64) {
92
 func GetPatientCount(orgID int64) (total int64) {
84
 	readDb.Model(&models.Patients{}).Where("user_org_id=? and status=1", orgID).Count(&total)
93
 	readDb.Model(&models.Patients{}).Where("user_org_id=? and status=1", orgID).Count(&total)
85
 	return
94
 	return