package service import ( "errors" "hospital-admin-api/api/dao" "hospital-admin-api/api/dto" ) // CaseService 病例 type CaseService struct { } // GetOrderInquiryCaseByInquiryCaseId 获取病例-问诊订单 func (r *CaseService) GetOrderInquiryCaseByInquiryCaseId(inquiryCaseId int64) (g *dto.OrderInquiryCaseDto, 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) // 获取用药意向 inquiryCaseProductDao := dao.InquiryCaseProductDao{} inquiryCaseProducts, err := inquiryCaseProductDao.GetInquiryCaseProductListByInquiryCaseId(orderInquiryCase.InquiryCaseId) // 处理返回数据 g = dto.GetOrderInquiryCaseDto(orderInquiryCase) // 加载健康属性 g.LoadPatientFamilyHealthAttr(patientFamilyHealth) // 加载个人情况属性 g.LoadPatientFamilyPersonalAttr(patientFamilyPersonal) // 加载用药意向 g.LoadInquiryCaseProduct(inquiryCaseProducts) return g, nil }