XMLWAN 4 年之前
父節點
當前提交
4c5d8b9d6a

+ 0 - 2
controllers/data_api_controller.go 查看文件

@@ -54,9 +54,7 @@ func DataApiRegistRouters() {
54 54
 //GetPatientsList 取配置信息列表
55 55
 func (c *DataApiController) GetConfigList() {
56 56
 	adminUserInfo := c.GetAdminUserInfo()
57
-
58 57
 	configList, _ := service.GetConfigList(adminUserInfo.CurrentOrgId)
59
-
60 58
 	c.ServeSuccessJSON(map[string]interface{}{
61 59
 		"configlist": configList,
62 60
 	})

+ 59 - 2
controllers/new_mobile_api_controllers/common_api_controller.go 查看文件

@@ -5,6 +5,7 @@ import (
5 5
 	"XT_New/enums"
6 6
 	"XT_New/models"
7 7
 	"XT_New/service"
8
+	"XT_New/utils"
8 9
 	"encoding/json"
9 10
 	"fmt"
10 11
 	"github.com/jinzhu/gorm"
@@ -468,12 +469,19 @@ func (this *CommonApiController) GetTotalDialysisCount() {
468 469
 	fmt.Println(startime)
469 470
 	endtime, _ := this.GetInt64("endtime")
470 471
 	fmt.Println(endtime)
472
+	recordDateStr := time.Now().Format("2006-01-02")
473
+	recordDate, parseDateErr := utils.ParseTimeStringToTime("2006-01-02", recordDateStr)
474
+	fmt.Println("parseDateErr", parseDateErr)
475
+	nowtime := recordDate.Unix()
471 476
 	//统计透析总人数
472 477
 	total := service.GetPatientTotalCount(orgid)
473
-	fmt.Println("total--------------", total)
478
+	fmt.Println("total", total)
474 479
 	//获取该机构下的所有病人数据
475 480
 	patients, err := service.GetTotalDialysisAgeCount(orgid)
476
-	fmt.Println("patients--------", patients)
481
+	fmt.Println("patients", patients)
482
+
483
+	//统计透年龄
484
+	dataage, _ := service.GetDialysisAgeData(orgid)
477 485
 	if err != nil {
478 486
 		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
479 487
 		return
@@ -481,5 +489,54 @@ func (this *CommonApiController) GetTotalDialysisCount() {
481 489
 	this.ServeSuccessJSON(map[string]interface{}{
482 490
 		"total":    total,
483 491
 		"patients": patients,
492
+		"nowtime":  nowtime,
493
+		"dataage":  dataage,
494
+	})
495
+}
496
+
497
+func (this *CommonApiController) GetCurentOrgPatients() {
498
+
499
+	adminUser := this.GetAdminUserInfo()
500
+	orgid := adminUser.CurrentOrgId
501
+	patients, err := service.GetCurentOrgPatients(orgid)
502
+	if err != nil {
503
+		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
504
+		return
505
+	}
506
+	this.ServeSuccessJSON(map[string]interface{}{
507
+		"patients": patients,
508
+	})
509
+}
510
+
511
+func (this *CommonApiController) GetDialysislist() {
512
+	startime := this.GetString("startime")
513
+	fmt.Println("startime", startime)
514
+	endtime := this.GetString("endtime")
515
+	fmt.Println("enditme", endtime)
516
+
517
+	startDate, parseDateErr := utils.ParseTimeStringToTime("2006-01-02", startime)
518
+	fmt.Println("parseDateErr", parseDateErr)
519
+	statime := startDate.Unix()
520
+	fmt.Println("开始时间", statime)
521
+	endDate, _ := utils.ParseTimeStringToTime("2006-01-02", endtime)
522
+
523
+	entime := endDate.Unix()
524
+	fmt.Println("开始时间", statime)
525
+	page, _ := this.GetInt64("page")
526
+	fmt.Println("page", page)
527
+	limit, _ := this.GetInt64("limit")
528
+	fmt.Println("limit", limit)
529
+	adminUser := this.GetAdminUserInfo()
530
+	orgId := adminUser.CurrentOrgId
531
+
532
+	dialysislist, total, err := service.GetDialysisList(statime, entime, page, limit, orgId)
533
+	fmt.Println("err----------------", err)
534
+	if err != nil {
535
+		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
536
+		return
537
+	}
538
+	this.ServeSuccessJSON(map[string]interface{}{
539
+		"dialysislist": dialysislist,
540
+		"total":        total,
484 541
 	})
485 542
 }

+ 2 - 0
controllers/new_mobile_api_controllers/common_api_router.go 查看文件

@@ -27,4 +27,6 @@ func CommonApiControllersRegisterRouters() {
27 27
 	beego.Router("/com/api/gettoalinfectiouscount", &CommonApiController{}, "Get:GetTotalInfectiouscount")
28 28
 	beego.Router("/com/api/gettotalagecount", &CommonApiController{}, "Get:GetTotalAgeCount")
29 29
 	beego.Router("/com/api/gettotaldialysiscount", &CommonApiController{}, "Get:GetTotalDialysisCount")
30
+	beego.Router("/com/api/getcurentorgpatients", &CommonApiController{}, "Get:GetCurentOrgPatients")
31
+	beego.Router("/com/api/getdialysislist", &CommonApiController{}, "Get:GetDialysislist")
30 32
 }

+ 28 - 0
controllers/new_mobile_api_controllers/new_common_api_controller.go 查看文件

@@ -4,6 +4,7 @@ import (
4 4
 	"XT_New/controllers/mobile_api_controllers"
5 5
 	"XT_New/enums"
6 6
 	"XT_New/service"
7
+	"XT_New/utils"
7 8
 	"fmt"
8 9
 	"time"
9 10
 )
@@ -123,3 +124,30 @@ func (this *NewCommonApiController) GetMobileTotalAgeCount() {
123 124
 		"ageCount": agecount,
124 125
 	})
125 126
 }
127
+
128
+func (this *NewCommonApiController) GetMobileTotalDialysisCount() {
129
+	startime, _ := this.GetInt64("startime")
130
+	fmt.Println("开始时间", startime)
131
+	endtime, _ := this.GetInt64("endtime")
132
+	fmt.Println("结束时间", endtime)
133
+	adminUser := this.GetMobileAdminUserInfo()
134
+	orgid := adminUser.Org.Id
135
+	recordDateStr := time.Now().Format("2006-01-02")
136
+	recordDate, parseDateErr := utils.ParseTimeStringToTime("2006-01-02", recordDateStr)
137
+	fmt.Println(parseDateErr)
138
+	nowtime := recordDate.Unix()
139
+	//统计透析总人数
140
+	total := service.GetPatientTotalCount(orgid)
141
+	fmt.Println("total", total)
142
+	//获取该机构下的所有病人数据
143
+	patients, err := service.GetTotalDialysisAgeCount(orgid)
144
+	if err != nil {
145
+		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
146
+		return
147
+	}
148
+	this.ServeSuccessJSON(map[string]interface{}{
149
+		"total":    total,
150
+		"patients": patients,
151
+		"nowtime":  nowtime,
152
+	})
153
+}

+ 1 - 0
controllers/new_mobile_api_controllers/new_common_api_router.go 查看文件

@@ -9,4 +9,5 @@ func NewCommonApiControllersRegisterRouters() {
9 9
 	beego.Router("/m/api/getmobiletotalsexcount", &NewCommonApiController{}, "Get:GetMobileTotalSexCount")
10 10
 	beego.Router("/m/api/getmobiletotalinfectiouscount", &NewCommonApiController{}, "Get:GetMobileTotalInfectiousCout")
11 11
 	beego.Router("/m/api/getmobiletotalagecount", &NewCommonApiController{}, "Get:GetMobileTotalAgeCount")
12
+	beego.Router("/m/api/getmobiletotaldialysiscount", &NewCommonApiController{}, "Get:GetMobileTotalDialysisCount")
12 13
 }

+ 172 - 0
models/common_models.go 查看文件

@@ -109,3 +109,175 @@ type PatientAgeCountStruct struct {
109 109
 	Age   int64 `json:"age"`
110 110
 	Count int64 `json:"count"`
111 111
 }
112
+
113
+type DialysisAgePieDataStruct struct {
114
+	Age   int64 `json:"age"`
115
+	Count int64 `json:"count"`
116
+}
117
+
118
+type BloodPatients struct {
119
+	ID                           int64   `gorm:"column:id" json:"id" form:"id"`
120
+	UserOrgId                    int64   `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
121
+	UserId                       int64   `gorm:"column:user_id" json:"user_id" form:"user_id"`
122
+	Avatar                       string  `gorm:"column:avatar" json:"avatar" form:"avatar"`
123
+	PatientType                  int64   `gorm:"column:patient_type" json:"patient_type" form:"patient_type"`
124
+	DialysisNo                   string  `gorm:"column:dialysis_no" json:"dialysis_no" form:"dialysis_no"`
125
+	AdmissionNumber              string  `gorm:"column:admission_number" json:"admission_number" form:"admission_number"`
126
+	Source                       int64   `gorm:"column:source" json:"source" form:"source"`
127
+	Lapseto                      int64   `gorm:"column:lapseto" json:"lapseto" form:"lapseto"`
128
+	PartitionId                  int64   `gorm:"column:partition_id" json:"partition_id" form:"partition_id"`
129
+	BedId                        int64   `gorm:"column:bed_id" json:"bed_id" form:"bed_id"`
130
+	Name                         string  `gorm:"column:name" json:"name" form:"name"`
131
+	Alias                        string  `gorm:"column:alias" json:"alias" form:"alias"`
132
+	Gender                       int64   `gorm:"column:gender" json:"gender" form:"gender"`
133
+	MaritalStatus                int64   `gorm:"column:marital_status" json:"marital_status" form:"marital_status"`
134
+	IdCardNo                     string  `gorm:"column:id_card_no" json:"id_card_no" form:"id_card_no"`
135
+	Birthday                     int64   `gorm:"column:birthday" json:"birthday" form:"birthday"`
136
+	ReimbursementWayId           int64   `gorm:"column:reimbursement_way_id" json:"reimbursement_way_id" form:"reimbursement_way_id"`
137
+	HealthCareType               int64   `gorm:"column:health_care_type" json:"health_care_type" form:"health_care_type"`
138
+	HealthCareNo                 string  `gorm:"column:health_care_no" json:"health_care_no" form:"health_care_no"`
139
+	HealthCareDueDate            int64   `gorm:"column:health_care_due_date" json:"health_care_due_date" form:"health_care_due_date"`
140
+	Height                       int64   `gorm:"column:height" json:"height" form:"height"`
141
+	BloodType                    int64   `gorm:"column:blood_type" json:"blood_type" form:"blood_type"`
142
+	Rh                           int64   `gorm:"column:rh" json:"rh" form:"rh"`
143
+	HealthCareDueAlertDate       int64   `gorm:"column:health_care_due_alert_date" json:"health_care_due_alert_date" form:"health_care_due_alert_date"`
144
+	EducationLevel               int64   `gorm:"column:education_level" json:"education_level" form:"education_level"`
145
+	Profession                   int64   `gorm:"column:profession" json:"profession" form:"profession"`
146
+	Phone                        string  `gorm:"column:phone" json:"phone" form:"phone"`
147
+	HomeTelephone                string  `gorm:"column:home_telephone" json:"home_telephone" form:"home_telephone"`
148
+	RelativePhone                string  `gorm:"column:relative_phone" json:"relative_phone" form:"relative_phone"`
149
+	RelativeRelations            string  `gorm:"column:relative_relations" json:"relative_relations" form:"relative_relations"`
150
+	HomeAddress                  string  `gorm:"column:home_address" json:"home_address" form:"home_address"`
151
+	WorkUnit                     string  `gorm:"column:work_unit" json:"work_unit" form:"work_unit"`
152
+	UnitAddress                  string  `gorm:"column:unit_address" json:"unit_address" form:"unit_address"`
153
+	Children                     int64   `gorm:"column:children" json:"children" form:"children"`
154
+	ReceivingDate                int64   `gorm:"column:receiving_date" json:"receiving_date" form:"receiving_date"`
155
+	IsHospitalFirstDialysis      int64   `gorm:"column:is_hospital_first_dialysis" json:"is_hospital_first_dialysis" form:"is_hospital_first_dialysis"`
156
+	FirstDialysisDate            int64   `gorm:"column:first_dialysis_date" json:"first_dialysis_date" form:"first_dialysis_date"`
157
+	FirstDialysisHospital        string  `gorm:"column:first_dialysis_hospital" json:"first_dialysis_hospital" form:"first_dialysis_hospital"`
158
+	PredialysisCondition         string  `gorm:"column:predialysis_condition" json:"predialysis_condition" form:"predialysis_condition"`
159
+	PreHospitalDialysisFrequency string  `gorm:"column:pre_hospital_dialysis_frequency" json:"pre_hospital_dialysis_frequency" form:"pre_hospital_dialysis_frequency"`
160
+	PreHospitalDialysisTimes     int64   `gorm:"column:pre_hospital_dialysis_times" json:"pre_hospital_dialysis_times" form:"pre_hospital_dialysis_times"`
161
+	HospitalFirstDialysisDate    int64   `gorm:"column:hospital_first_dialysis_date" json:"hospital_first_dialysis_date" form:"hospital_first_dialysis_date"`
162
+	InductionPeriod              int64   `gorm:"column:induction_period" json:"induction_period" form:"induction_period"`
163
+	InitialDialysis              int64   `gorm:"column:initial_dialysis" json:"initial_dialysis" form:"initial_dialysis"`
164
+	TotalDialysis                int64   `gorm:"column:total_dialysis" json:"total_dialysis" form:"total_dialysis"`
165
+	AttendingDoctorId            int64   `gorm:"column:attending_doctor_id" json:"attending_doctor_id" form:"attending_doctor_id"`
166
+	HeadNurseId                  int64   `gorm:"column:head_nurse_id" json:"head_nurse_id" form:"head_nurse_id"`
167
+	Evaluate                     string  `gorm:"column:evaluate" json:"evaluate" form:"evaluate"`
168
+	Diagnose                     string  `gorm:"column:diagnose" json:"diagnose" form:"diagnose"`
169
+	Remark                       string  `gorm:"column:remark" json:"remark" form:"remark"`
170
+	RegistrarsId                 int64   `gorm:"column:registrars_id" json:"registrars_id" form:"registrars_id"`
171
+	Registrars                   string  `gorm:"column:registrars" json:"registrars" form:"registrars"`
172
+	QrCode                       string  `gorm:"column:qr_code" json:"qr_code" form:"qr_code"`
173
+	BindingState                 int64   `gorm:"column:binding_state" json:"binding_state" form:"binding_state"`
174
+	PatientComplains             string  `gorm:"column:patient_complains" json:"patient_complains" form:"patient_complains"`
175
+	PresentHistory               string  `gorm:"column:present_history" json:"present_history" form:"present_history"`
176
+	PastHistory                  string  `gorm:"column:past_history" json:"past_history" form:"past_history"`
177
+	Temperature                  float64 `gorm:"column:temperature" json:"temperature" form:"temperature"`
178
+	Pulse                        int64   `gorm:"column:pulse" json:"pulse" form:"pulse"`
179
+	Respiratory                  int64   `gorm:"column:respiratory" json:"respiratory" form:"respiratory"`
180
+	Sbp                          int64   `gorm:"column:sbp" json:"sbp" form:"sbp"`
181
+	Dbp                          int64   `gorm:"column:dbp" json:"dbp" form:"dbp"`
182
+	Status                       int64   `gorm:"column:status" json:"status" form:"status"`
183
+	CreatedTime                  int64   `gorm:"column:created_time" json:"created_time" form:"created_time"`
184
+	UpdatedTime                  int64   `gorm:"column:updated_time" json:"updated_time" form:"updated_time"`
185
+	Nation                       string  `gorm:"column:nation" json:"nation" form:"nation"`
186
+	NativePlace                  string  `gorm:"column:native_place" json:"native_place" form:"native_place"`
187
+	Age                          int64   `gorm:"column:age" json:"age" form:"age"`
188
+	InfectiousNextRecordTime     int64   `gorm:"column:infectious_next_record_time" json:"infectious_next_record_time" form:"infectious_next_record_time"`
189
+	IsInfectious                 int64   `gorm:"column:is_infectious" json:"is_infectious" form:"is_infectious"`
190
+	RemindCycle                  int64   `gorm:"column:remind_cycle" json:"remind_cycle" form:"remind_cycle"`
191
+	ResponseResult               string  `gorm:"column:response_result" json:"response_result" form:"response_result"`
192
+	IsOpenRemind                 int64   `gorm:"column:is_open_remind" json:"is_open_remind" form:"is_open_remind"`
193
+	FirstTreatmentDate           int64   `gorm:"column:first_treatment_date" json:"first_treatment_date" form:"first_treatment_date"`
194
+	DialysisAge                  int64   `gorm:"column:dialysis_age" json:"dialysis_age" form:"dialysis_age"`
195
+	ExpenseKind                  int64   `gorm:"column:expense_kind" json:"expense_kind" form:"expense_kind"`
196
+	TellPhone                    string  `gorm:"column:tell_phone" json:"tell_phone" form:"tell_phone"`
197
+	ContactName                  string  `gorm:"column:contact_name" json:"contact_name" form:"contact_name"`
198
+	UserSysBeforeCount           int64   `gorm:"column:user_sys_before_count" json:"user_sys_before_count" form:"user_sys_before_count"`
199
+	IsExcelExport                int64   `gorm:"column:is_excel_export" json:"is_excel_export" form:"is_excel_export"`
200
+}
201
+
202
+func (BloodPatients) TableName() string {
203
+	return "xt_patients"
204
+}
205
+
206
+type BloodDialysisPrescription struct {
207
+	ID                         int64   `gorm:"column:id" json:"id" form:"id"`
208
+	UserOrgId                  int64   `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
209
+	PatientId                  int64   `gorm:"column:patient_id" json:"patient_id" form:"patient_id"`
210
+	Dialyzer                   int64   `gorm:"column:dialyzer" json:"dialyzer" form:"dialyzer"`
211
+	MachineType                string  `gorm:"column:machine_type" json:"machine_type" form:"machine_type"`
212
+	DewaterAmount              float64 `gorm:"column:dewater_amount" json:"dewater_amount" form:"dewater_amount"`
213
+	DialyzerPerfusionApparatus string  `gorm:"column:dialyzer_perfusion_apparatus" json:"dialyzer_perfusion_apparatus" form:"dialyzer_perfusion_apparatus"`
214
+	PrescriptionDewatering     float64 `gorm:"column:prescription_dewatering" json:"prescription_dewatering" form:"prescription_dewatering"`
215
+	Anticoagulant              int64   `gorm:"column:anticoagulant" json:"anticoagulant" form:"anticoagulant"`
216
+	AnticoagulantShouji        float64 `gorm:"column:anticoagulant_shouji" json:"anticoagulant_shouji" form:"anticoagulant_shouji"`
217
+	AnticoagulantWeichi        float64 `gorm:"column:anticoagulant_weichi" json:"anticoagulant_weichi" form:"anticoagulant_weichi"`
218
+	AnticoagulantZongliang     float64 `gorm:"column:anticoagulant_zongliang" json:"anticoagulant_zongliang" form:"anticoagulant_zongliang"`
219
+	AnticoagulantGaimingcheng  string  `gorm:"column:anticoagulant_gaimingcheng" json:"anticoagulant_gaimingcheng" form:"anticoagulant_gaimingcheng"`
220
+	AnticoagulantGaijiliang    string  `gorm:"column:anticoagulant_gaijiliang" json:"anticoagulant_gaijiliang" form:"anticoagulant_gaijiliang"`
221
+	ModeId                     int64   `gorm:"column:mode_id" json:"mode_id" form:"mode_id"`
222
+	DialysisDurationHour       int64   `gorm:"column:dialysis_duration_hour" json:"dialysis_duration_hour" form:"dialysis_duration_hour"`
223
+	DialysisDurationMinute     int64   `gorm:"column:dialysis_duration_minute" json:"dialysis_duration_minute" form:"dialysis_duration_minute"`
224
+	DialysisDuration           float64 `gorm:"column:dialysis_duration" json:"dialysis_duration" form:"dialysis_duration"`
225
+	ReplacementTotal           float64 `gorm:"column:replacement_total" json:"replacement_total" form:"replacement_total"`
226
+	ReplacementWay             int64   `gorm:"column:replacement_way" json:"replacement_way" form:"replacement_way"`
227
+	HemodialysisMachine        int64   `gorm:"column:hemodialysis_machine" json:"hemodialysis_machine" form:"hemodialysis_machine"`
228
+	BloodFilter                int64   `gorm:"column:blood_filter" json:"blood_filter" form:"blood_filter"`
229
+	PerfusionApparatus         int64   `gorm:"column:perfusion_apparatus" json:"perfusion_apparatus" form:"perfusion_apparatus"`
230
+	DryWeight                  float64 `gorm:"column:dry_weight" json:"dry_weight" form:"dry_weight"`
231
+	VascularAccessMode         int64   `gorm:"column:vascular_access_mode" json:"vascular_access_mode" form:"vascular_access_mode"`
232
+	VascularAccess             int64   `gorm:"column:vascular_access" json:"vascular_access" form:"vascular_access"`
233
+	BloodFlowVolume            float64 `gorm:"column:blood_flow_volume" json:"blood_flow_volume" form:"blood_flow_volume"`
234
+	DialysateFlow              float64 `gorm:"column:dialysate_flow" json:"dialysate_flow" form:"dialysate_flow"`
235
+	DisplaceLiqui              float64 `gorm:"column:displace_liqui" json:"displace_liqui" form:"displace_liqui"`
236
+	Kalium                     float64 `gorm:"column:kalium" json:"kalium" form:"kalium"`
237
+	Sodium                     float64 `gorm:"column:sodium" json:"sodium" form:"sodium"`
238
+	Calcium                    float64 `gorm:"column:calcium" json:"calcium" form:"calcium"`
239
+	Bicarbonate                float64 `gorm:"column:bicarbonate" json:"bicarbonate" form:"bicarbonate"`
240
+	Glucose                    float64 `gorm:"column:glucose" json:"glucose" form:"glucose"`
241
+	DialysateTemperature       float64 `gorm:"column:dialysate_temperature" json:"dialysate_temperature" form:"dialysate_temperature"`
242
+	Conductivity               float64 `gorm:"column:conductivity" json:"conductivity" form:"conductivity"`
243
+	PrescriptionDoctor         int64   `gorm:"column:prescription_doctor" json:"prescription_doctor" form:"prescription_doctor"`
244
+	Creater                    int64   `gorm:"column:creater" json:"creater" form:"creater"`
245
+	Modifier                   int64   `gorm:"column:modifier" json:"modifier" form:"modifier"`
246
+	Remark                     string  `gorm:"column:remark" json:"remark" form:"remark"`
247
+	Status                     int64   `gorm:"column:status" json:"status" form:"status"`
248
+	CreatedTime                int64   `gorm:"column:created_time" json:"created_time" form:"created_time"`
249
+	UpdatedTime                int64   `gorm:"column:updated_time" json:"updated_time" form:"updated_time"`
250
+	RecordDate                 int64   `gorm:"column:record_date" json:"record_date" form:"record_date"`
251
+	RecordId                   int64   `gorm:"column:record_id" json:"record_id" form:"record_id"`
252
+	TargetUltrafiltration      float64 `gorm:"column:target_ultrafiltration" json:"target_ultrafiltration" form:"target_ultrafiltration"`
253
+	DialysateFormulation       int64   `gorm:"column:dialysate_formulation" json:"dialysate_formulation" form:"dialysate_formulation"`
254
+	BodyFluid                  int64   `gorm:"column:body_fluid" json:"body_fluid" form:"body_fluid"`
255
+	SpecialMedicine            int64   `gorm:"column:special_medicine" json:"special_medicine" form:"special_medicine"`
256
+	SpecialMedicineOther       string  `gorm:"column:special_medicine_other" json:"special_medicine_other" form:"special_medicine_other"`
257
+	DisplaceLiquiPart          int64   `gorm:"column:displace_liqui_part" json:"displace_liqui_part" form:"displace_liqui_part"`
258
+	BloodAccess                int64   `gorm:"column:blood_access" json:"blood_access" form:"blood_access"`
259
+	DisplaceLiquiValue         float64 `gorm:"column:displace_liqui_value" json:"displace_liqui_value" form:"displace_liqui_value"`
260
+	Ultrafiltration            float64 `gorm:"column:ultrafiltration" json:"ultrafiltration" form:"ultrafiltration"`
261
+	BodyFluidOther             string  `gorm:"column:body_fluid_other" json:"body_fluid_other" form:"body_fluid_other"`
262
+	Niprocart                  int64   `gorm:"column:niprocart" json:"niprocart" form:"niprocart"`
263
+	Jms                        int64   `gorm:"column:jms" json:"jms" form:"jms"`
264
+	FistulaNeedleSet           int64   `gorm:"column:fistula_needle_set" json:"fistula_needle_set" form:"fistula_needle_set"`
265
+	FistulaNeedleSet16         int64   `gorm:"column:fistula_needle_set_16" json:"fistula_needle_set_16" form:"fistula_needle_set_16"`
266
+	Hemoperfusion              int64   `gorm:"column:hemoperfusion" json:"hemoperfusion" form:"hemoperfusion"`
267
+	DialyserSterilised         int64   `gorm:"column:dialyser_sterilised" json:"dialyser_sterilised" form:"dialyser_sterilised"`
268
+	Filtryzer                  int64   `gorm:"column:filtryzer" json:"filtryzer" form:"filtryzer"`
269
+	TargetKtv                  float64 `gorm:"column:target_ktv" json:"target_ktv" form:"target_ktv"`
270
+	Dialyzers                  int64   `gorm:"column:dialyzers" json:"dialyzers" form:"dialyzers"`
271
+	Injector                   int64   `gorm:"column:injector" json:"injector" form:"injector"`
272
+	Bloodlines                 int64   `gorm:"column:bloodlines" json:"bloodlines" form:"bloodlines"`
273
+	TubingHemodialysis         int64   `gorm:"column:tubing_hemodialysis" json:"tubing_hemodialysis" form:"tubing_hemodialysis"`
274
+	Package                    int64   `gorm:"column:package" json:"package" form:"package"`
275
+	ALiquid                    int64   `gorm:"column:a_liquid" json:"a_liquid" form:"a_liquid"`
276
+	Name                       string  `gorm:"column:name" json:"name" form:"name"`
277
+	DialysisNo                 string  `gorm:"column:dialysis_no" json:"dialysis_no" form:"dialysis_no"`
278
+	IdCardNo                   string  `gorm:"column:id_card_no" json:"id_card_no" form:"id_card_no"`
279
+}
280
+
281
+func (BloodDialysisPrescription) TableName() string {
282
+	return "xt_dialysis_prescription"
283
+}

+ 75 - 0
service/common_service.go 查看文件

@@ -263,3 +263,78 @@ func GetTotalDialysisAgeCount(orgid int64) (patients []*models.XtPatients, err e
263 263
 	err = XTReadDB().Where("user_org_id = ? and status =1", orgid).Find(&patients).Error
264 264
 	return patients, err
265 265
 }
266
+
267
+func GetDialysisAgeData(orgID int64) (counts []*models.DialysisAgePieDataStruct, err error) {
268
+	loc, _ := time.LoadLocation("Local")
269
+	nowTime := time.Now()
270
+	nowDay := nowTime.Format("2006-01-02")
271
+	dayTime, err := time.ParseInLocation("2006-01-02 15:04:05", nowDay+" 00:00:00", loc)
272
+	fmt.Println("datTime", dayTime)
273
+	if err != nil {
274
+		return
275
+	}
276
+	oneYearPoint := dayTime.AddDate(-12, 0, 0).Unix()
277
+
278
+	fiveYearPoint := dayTime.AddDate(-36, 0, 0).Unix()
279
+
280
+	tenYearPoint := dayTime.AddDate(-60, 0, 0).Unix()
281
+
282
+	twentyYearPoint := dayTime.AddDate(-61, 0, 0).Unix()
283
+
284
+	db := readDb.Table("xt_patients").Where("status=1")
285
+	countSQL := "SELECT nnd AS 'age',COUNT(*) AS 'count' FROM(" +
286
+		"SELECT " +
287
+		"CASE " +
288
+		" WHEN first_dialysis_date<>0 AND first_dialysis_date>? THEN '1'" +
289
+		" WHEN first_dialysis_date<>0 AND first_dialysis_date>? && first_dialysis_date<=? THEN '2'" +
290
+		" WHEN first_dialysis_date<>0 AND first_dialysis_date>? && first_dialysis_date<=? THEN '3'" +
291
+		" WHEN first_dialysis_date<>0 AND first_dialysis_date>? && first_dialysis_date<=? THEN '4'" +
292
+		" WHEN first_dialysis_date<>0 AND first_dialysis_date<=? THEN '5'" +
293
+		" ELSE '0'" +
294
+		"END AS nnd FROM xt_patients WHERE status=1"
295
+	countParams := make([]interface{}, 0)
296
+	countParams = append(countParams, oneYearPoint)
297
+	countParams = append(countParams, fiveYearPoint)
298
+	countParams = append(countParams, oneYearPoint)
299
+	countParams = append(countParams, tenYearPoint)
300
+	countParams = append(countParams, fiveYearPoint)
301
+	countParams = append(countParams, twentyYearPoint)
302
+	countParams = append(countParams, tenYearPoint)
303
+	countParams = append(countParams, twentyYearPoint)
304
+
305
+	if orgID > 0 {
306
+		db = db.Where("user_org_id=?", orgID)
307
+		countSQL += " AND user_org_id=?"
308
+		countParams = append(countParams, orgID)
309
+	}
310
+
311
+	countSQL += ")a GROUP BY nnd"
312
+	err = readDb.Raw(countSQL, countParams...).Scan(&counts).Error
313
+	return
314
+
315
+}
316
+
317
+func GetCurentOrgPatients(orgid int64) (patients []*models.XtPatients, err error) {
318
+
319
+	err = XTReadDB().Where("user_org_id = ? and status =1", orgid).Order("created_time desc").Find(&patients).Error
320
+	return patients, err
321
+}
322
+
323
+func GetDialysisList(startime int64, endtime int64, page int64, limit int64, orgid int64) (prescription []*models.BloodDialysisPrescription, total int64, err error) {
324
+	fmt.Println(startime, endtime)
325
+	db := XTReadDB().Table("xt_dialysis_prescription as p").Where("p.status =1 ")
326
+	table := XTReadDB().Table("xt_patients as s")
327
+	fmt.Println("table", table)
328
+	if orgid > 0 {
329
+		db = db.Where("p.user_org_id = ?", orgid)
330
+	}
331
+	if startime > 0 {
332
+		db = db.Where("p.record_date >= ?", startime)
333
+	}
334
+	if endtime > 0 {
335
+		db = db.Where("p.record_date <=?", endtime)
336
+	}
337
+	offset := (page - 1) * limit
338
+	err = db.Group("p.patient_id,p.mode_id").Select("p.mode_id,p.patient_id,s.name,s.id_card_no,s.dialysis_no").Joins("left join xt_patients as s on s.id = p.patient_id").Count(&total).Offset(offset).Limit(limit).Scan(&prescription).Error
339
+	return prescription, total, err
340
+}

+ 3 - 1
service/qcd_service.go 查看文件

@@ -114,6 +114,7 @@ func GetProcessIndicatorsData(orgID, page, limit, lapseto, dialysisAge, projectI
114 114
 			nowTime := time.Now()
115 115
 			nowDay := nowTime.Format("2006-01-02")
116 116
 			dayTime, err := time.ParseInLocation("2006-01-02 15:04:05", nowDay+" 00:00:00", loc)
117
+
117 118
 			if err != nil {
118 119
 				return inspections, references, patients, counts, total, err
119 120
 			}
@@ -526,6 +527,7 @@ type PADialysisAgePieDataStruct struct {
526 527
 }
527 528
 
528 529
 func GetPADialysisAgeData(orgID, page, limit, lapseto, age, dialysisAge, startTime, endTime int64, isStartTime, isEndTime bool) (patients []*models.Patients, counts []*PADialysisAgePieDataStruct, total int64, err error) {
530
+
529 531
 	loc, _ := time.LoadLocation("Local")
530 532
 	nowTime := time.Now()
531 533
 	nowDay := nowTime.Format("2006-01-02")
@@ -550,7 +552,7 @@ func GetPADialysisAgeData(orgID, page, limit, lapseto, age, dialysisAge, startTi
550 552
 		" WHEN first_dialysis_date<>0 AND first_dialysis_date>? && first_dialysis_date<=? THEN '4'" +
551 553
 		" WHEN first_dialysis_date<>0 AND first_dialysis_date<=? THEN '5'" +
552 554
 		" ELSE '0'" +
553
-		"END AS nnd FROM xt_patients WHERE status=1 "
555
+		"END AS nnd FROM xt_patients WHERE status=1"
554 556
 	countParams := make([]interface{}, 0)
555 557
 	countParams = append(countParams, oneYearPoint)
556 558
 	countParams = append(countParams, fiveYearPoint)