package service import ( "errors" "hospital-admin-api/api/dao" "hospital-admin-api/api/responses/orderInquiryCaseResponse" "strconv" ) // CaseService 病例 type CaseService struct { } // GetOrderInquiryCaseByInquiryCaseId 获取病例-问诊订单 func (r *CaseService) GetOrderInquiryCaseByInquiryCaseId(inquiryCaseId int64) (u *orderInquiryCaseResponse.OrderInquiryCase, err error) { orderInquiryCaseDao := dao.OrderInquiryCaseDao{} orderInquiryCase, err := orderInquiryCaseDao.GetOrderInquiryCaseById(inquiryCaseId) if orderInquiryCase == nil { return nil, errors.New("数据错误,无问诊病例") } // 获取患者家庭成员信息-健康情况 patientFamilyHealthDao := dao.PatientFamilyHealthDao{} patientFamilyHealth, err := patientFamilyHealthDao.GetPatientFamilyHealthByFamilyId(orderInquiryCase.FamilyId) // 获取患者家庭成员信息表-个人情况 patientFamilyPersonalDao := dao.PatientFamilyPersonalDao{} patientFamilyPersonal, err := patientFamilyPersonalDao.GetPatientFamilyPersonalByFamilyId(orderInquiryCase.FamilyId) // 处理返回数据 u = &orderInquiryCaseResponse.OrderInquiryCase{ InquiryCaseId: strconv.FormatInt(orderInquiryCase.InquiryCaseId, 10), UserId: strconv.FormatInt(orderInquiryCase.UserId, 10), PatientId: strconv.FormatInt(orderInquiryCase.PatientId, 10), OrderInquiryId: strconv.FormatInt(orderInquiryCase.OrderInquiryId, 10), FamilyId: strconv.FormatInt(orderInquiryCase.FamilyId, 10), Relation: orderInquiryCase.Relation, Status: orderInquiryCase.Status, Name: orderInquiryCase.Name, Sex: orderInquiryCase.Sex, Age: orderInquiryCase.Age, Height: orderInquiryCase.Height, Weight: orderInquiryCase.Weight, DiseaseClassId: strconv.FormatInt(orderInquiryCase.DiseaseClassId, 10), DiseaseClassName: orderInquiryCase.DiseaseClassName, DiagnosisDate: orderInquiryCase.DiagnosisDate, DiseaseDesc: orderInquiryCase.DiseaseDesc, DiagnoseImages: orderInquiryCase.DiagnoseImages, IsAllergyHistory: orderInquiryCase.IsAllergyHistory, AllergyHistory: orderInquiryCase.AllergyHistory, IsFamilyHistory: orderInquiryCase.IsFamilyHistory, FamilyHistory: orderInquiryCase.FamilyHistory, IsPregnant: orderInquiryCase.IsPregnant, Pregnant: orderInquiryCase.Pregnant, IsTaboo: orderInquiryCase.IsTaboo, CreatedAt: orderInquiryCase.CreatedAt, UpdatedAt: orderInquiryCase.UpdatedAt, } if patientFamilyHealth != nil { u.DiagnosisHospital = patientFamilyHealth.DiagnosisHospital u.IsTakeMedicine = patientFamilyHealth.IsTakeMedicine u.DrugsName = patientFamilyHealth.DrugsName } if patientFamilyPersonal != nil { u.DrinkWineStatus = patientFamilyPersonal.DrinkWineStatus u.SmokeStatus = patientFamilyPersonal.SmokeStatus u.ChemicalCompoundStatus = patientFamilyPersonal.ChemicalCompoundStatus u.ChemicalCompoundDescribe = patientFamilyPersonal.ChemicalCompoundDescribe u.IsOperation = patientFamilyPersonal.IsOperation u.Operation = patientFamilyPersonal.Operation } return u, nil }