package controllers import ( "XT_New/enums" "XT_New/service/statistics_service" "XT_New/utils" "github.com/astaxie/beego" "time" ) func PCIndexEvaluationApiControllersRegisterRouters() { beego.Router("/api/dialysisprocessindex/chart", &PCIndexEvaluationApiController{}, "Get:GetDialysisProcessIndexChartData") beego.Router("/api/dialysisprocessindex/table", &PCIndexEvaluationApiController{}, "Get:GetDialysisProcessIndexTableData") beego.Router("/api/dialysiswatch/chart", &PCIndexEvaluationApiController{}, "Get:GetDialysisWatchChartData") beego.Router("/api/dialysiswatch/table", &PCIndexEvaluationApiController{}, "Get:GetDialysisWatchTableData") beego.Router("/api/dialysisbloodpressure/chart", &PCIndexEvaluationApiController{}, "Get:GetDialysisBloodPressureChartData") beego.Router("/api/dialysisbloodpressure/table", &PCIndexEvaluationApiController{}, "Get:GetDialysisBloodPressureTableData") beego.Router("/api/patientdialysisbloodpressure/chart", &PCIndexEvaluationApiController{}, "Get:GetDialysisPatientBloodPressureChartData") beego.Router("/api/dialysisweight/chart", &PCIndexEvaluationApiController{}, "Get:GetDialysisWeightChartData") beego.Router("/api/dialysisweight/table", &PCIndexEvaluationApiController{}, "Get:GetDialysisWeightTableData") beego.Router("/api/patientdialysisweight/chart", &PCIndexEvaluationApiController{}, "Get:GetDialysisPatientWeightChartData") beego.Router("/api/doctorworkload/chart", &PCIndexEvaluationApiController{}, "Get:GetDoctorWorkloadChartData") beego.Router("/api/doctorworkload/table", &PCIndexEvaluationApiController{}, "Get:GetDoctorWorkloadTableData") beego.Router("/api/nurseworkload/chart", &PCIndexEvaluationApiController{}, "Get:GetNurseWorkloadChartData") beego.Router("/api/nurseworkload/table", &PCIndexEvaluationApiController{}, "Get:GetNurseWorkloadTableData") beego.Router("/api/adminuser/all", &PCIndexEvaluationApiController{}, "Get:GetAdminUser") beego.Router("/api/defalutpatient/get", &PCIndexEvaluationApiController{}, "Get:GetDefaultPatient") } type PCIndexEvaluationApiController struct { BaseAuthAPIController } func (this *PCIndexEvaluationApiController) GetAdminUser() { admins, _ := statistics_service.GetAllAdminUser(this.GetAdminUserInfo().CurrentOrgId) this.ServeSuccessJSON(map[string]interface{}{ "admin": admins, }) } func (this *PCIndexEvaluationApiController) GetDialysisProcessIndexChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } if patient_id == 0 { patientInfo, _ := statistics_service.GetOrgFirstPatientInfo(adminUserInfo.CurrentOrgId) if patientInfo == nil { this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeOrgNoPatient) return } if statistics_type == 9 || statistics_type == 10 { data, _ := statistics_service.GetDialysisProcessIndexOtherChartData(adminUserInfo.CurrentOrgId, patientInfo.ID, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } else { data, _ := statistics_service.GetDialysisProcessIndexChartData(adminUserInfo.CurrentOrgId, patientInfo.ID, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } } else { if statistics_type == 9 || statistics_type == 10 { data, _ := statistics_service.GetDialysisProcessIndexOtherChartData(adminUserInfo.CurrentOrgId, patient_id, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } else { data, _ := statistics_service.GetDialysisProcessIndexChartData(adminUserInfo.CurrentOrgId, patient_id, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } } } func (this *PCIndexEvaluationApiController) GetDialysisProcessIndexTableData() { adminUserInfo := this.GetAdminUserInfo() start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") page, _ := this.GetInt64("page") limit, _ := this.GetInt64("limit") if page == 0 { page = 1 } if limit == 0 { limit = 20 } timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } if patient_id == 0 { patientInfo, _ := statistics_service.GetOrgFirstPatientInfo(adminUserInfo.CurrentOrgId) if patientInfo == nil { this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeOrgNoPatient) return } data, total, _ := statistics_service.GetDialysisProcessIndexTableData(adminUserInfo.CurrentOrgId, patientInfo.ID, page, limit, theStartTIme, theEndtTIme) this.ServeSuccessJSON(map[string]interface{}{ "data": data, "total": total, }) } else { data, total, _ := statistics_service.GetDialysisProcessIndexTableData(adminUserInfo.CurrentOrgId, patient_id, page, limit, theStartTIme, theEndtTIme) this.ServeSuccessJSON(map[string]interface{}{ "data": data, "total": total, }) } } func (this *PCIndexEvaluationApiController) GetDialysisWatchChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } if patient_id == 0 { patientInfo, _ := statistics_service.GetOrgFirstPatientInfo(adminUserInfo.CurrentOrgId) if patientInfo == nil { this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeOrgNoPatient) return } data, _ := statistics_service.GetDialysisWatchChartData(adminUserInfo.CurrentOrgId, patientInfo.ID, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } else { data, _ := statistics_service.GetDialysisWatchChartData(adminUserInfo.CurrentOrgId, patient_id, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } } func (this *PCIndexEvaluationApiController) GetDialysisWatchTableData() { adminUserInfo := this.GetAdminUserInfo() start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") page, _ := this.GetInt64("page") limit, _ := this.GetInt64("limit") if page == 0 { page = 1 } if limit == 0 { limit = 20 } timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } if patient_id == 0 { patientInfo, _ := statistics_service.GetOrgFirstPatientInfo(adminUserInfo.CurrentOrgId) if patientInfo == nil { this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeOrgNoPatient) return } data, total, _ := statistics_service.GetDialysisWatchTableData(adminUserInfo.CurrentOrgId, patientInfo.ID, page, limit, theStartTIme, theEndtTIme) this.ServeSuccessJSON(map[string]interface{}{ "data": data, "total": total, }) } else { data, total, _ := statistics_service.GetDialysisWatchTableData(adminUserInfo.CurrentOrgId, patient_id, page, limit, theStartTIme, theEndtTIme) this.ServeSuccessJSON(map[string]interface{}{ "data": data, "total": total, }) } } func (this *PCIndexEvaluationApiController) GetDialysisBloodPressureChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetBloodPressureChartData(adminUserInfo.CurrentOrgId, theStartTIme, theEndtTIme, statistics_type, patient_id) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetDialysisBloodPressureTableData() { adminUserInfo := this.GetAdminUserInfo() start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") page, _ := this.GetInt64("page") limit, _ := this.GetInt64("limit") if page == 0 { page = 1 } if limit == 0 { limit = 20 } timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, total, _ := statistics_service.GetBloodPressureTableData(adminUserInfo.CurrentOrgId, patient_id, page, limit, theStartTIme, theEndtTIme) this.ServeSuccessJSON(map[string]interface{}{ "data": data, "total": total, }) } func (this *PCIndexEvaluationApiController) GetDialysisPatientBloodPressureChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetPatientBloodPressureChartData(adminUserInfo.CurrentOrgId, patient_id, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetDialysisWeightChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetDialysisWeightChartData(adminUserInfo.CurrentOrgId, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetDialysisWeightTableData() { adminUserInfo := this.GetAdminUserInfo() start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") page, _ := this.GetInt64("page") limit, _ := this.GetInt64("limit") if page == 0 { page = 1 } if limit == 0 { limit = 20 } timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, total, _ := statistics_service.GetDialysisWeightTableData(adminUserInfo.CurrentOrgId, patient_id, page, limit, theStartTIme, theEndtTIme) this.ServeSuccessJSON(map[string]interface{}{ "data": data, "total": total, }) } func (this *PCIndexEvaluationApiController) GetDialysisPatientWeightChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") patient_id, _ := this.GetInt64("patient_id") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetPatientDialysisWeightChartData(adminUserInfo.CurrentOrgId, patient_id, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetDoctorWorkloadChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetDoctorWorkloadChartData(adminUserInfo.CurrentOrgId, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetDoctorWorkloadTableData() { adminUserInfo := this.GetAdminUserInfo() start_time := this.GetString("start_time") end_time := this.GetString("end_time") admin_user_id, _ := this.GetInt64("admin_user_id") page, _ := this.GetInt64("page") limit, _ := this.GetInt64("limit") if page == 0 { page = 1 } if limit == 0 { limit = 20 } timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetDoctorWorkloadTableData(adminUserInfo.CurrentOrgId, theStartTIme, theEndtTIme, admin_user_id) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetNurseWorkloadChartData() { adminUserInfo := this.GetAdminUserInfo() statistics_type, _ := this.GetInt("statistics_type") start_time := this.GetString("start_time") end_time := this.GetString("end_time") timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetNurseWorkloadChartData(adminUserInfo.CurrentOrgId, theStartTIme, theEndtTIme, statistics_type) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetNurseWorkloadTableData() { adminUserInfo := this.GetAdminUserInfo() start_time := this.GetString("start_time") end_time := this.GetString("end_time") admin_user_id, _ := this.GetInt64("admin_user_id") page, _ := this.GetInt64("page") limit, _ := this.GetInt64("limit") if page == 0 { page = 1 } if limit == 0 { limit = 20 } timeLayout := "2006-01-02" loc, _ := time.LoadLocation("Local") var theStartTIme int64 if len(start_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc) if err != nil { utils.ErrorLog(err.Error()) } theStartTIme = theTime.Unix() } var theEndtTIme int64 if len(end_time) > 0 { theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc) if err != nil { utils.ErrorLog(err.Error()) } theEndtTIme = theTime.Unix() } data, _ := statistics_service.GetNurseWorkloadTableData(adminUserInfo.CurrentOrgId, theStartTIme, theEndtTIme, admin_user_id) this.ServeSuccessJSON(map[string]interface{}{ "data": data, }) } func (this *PCIndexEvaluationApiController) GetDefaultPatient() { adminUserInfo := this.GetAdminUserInfo() patientInfo, _ := statistics_service.GetOrgFirstPatientInfo(adminUserInfo.CurrentOrgId) if patientInfo == nil { this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeOrgNoPatient) return } this.ServeSuccessJSON(map[string]interface{}{ "patient": patientInfo, }) }