/// <summary> /// 获取门诊职工异地刷卡参数 /// </summary> /// <param name="param"></param> public YdBaseParam GetYdOutpatientPayCardParam( GetYdOutpatientPayCardParam param) { var userBase = _serviceBasicService.GetUserBaseInfo(param.UserId); userBase.TransKey = param.TransKey; var result = new YdBaseParam(); StringBuilder ctrXml = new StringBuilder(); ctrXml.Append("<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>"); ctrXml.Append("<row>"); ctrXml.Append($"<pi_xzqh>{param.AreaCode}</pi_xzqh>"); //行政区划 ctrXml.Append($"<pi_fyze>{param.DownAmount}</pi_fyze>"); //费用总额 ctrXml.Append($"<pi_cardid>{param.InsuranceNo}</pi_cardid>"); //费用总额 ctrXml.Append($"<pi_hklb>1</pi_hklb>"); //划卡类别 ctrXml.Append($"<pi_jbr>{userBase.UserName}</pi_jbr>"); //经办人 ctrXml.Append("</row>"); result.TransactionCode = "YYJK014"; result.InputXml = ctrXml.ToString(); var deleteData = _hisSqlRepository.DeleteDatabase(new DeleteDatabaseParam() { User = userBase, Field = "BusinessId", Value = param.BusinessId, TableName = "MedicalInsurance" }); var medicalInsurance = new MedicalInsurance() { Id = Guid.NewGuid(), InsuranceNo = param.InsuranceNo, AdmissionInfoJson = result.InputXml, MedicalInsuranceState = (int)MedicalInsuranceState.MedicalInsurancePreSettlement, InsuranceType = 310, AreaCode = param.AreaCode, IsBirthHospital = false, BusinessId = param.BusinessId, }; _medicalInsuranceMap.InsertData(medicalInsurance, userBase); return(result); }
/// <summary> /// 获取住院病人信息 /// </summary> /// <param name="infoParam"></param> /// <returns></returns> public InpatientInfoDto GetInpatientInfo(GetInpatientInfoParam param) { var resultData = new InpatientInfoDto(); var xmlData = new MedicalInsuranceXmlDto(); xmlData.BusinessId = param.BusinessId; xmlData.HealthInsuranceNo = "21"; xmlData.TransactionId = param.User.TransKey; xmlData.AuthCode = param.User.AuthCode; xmlData.UserId = param.User.UserId; xmlData.OrganizationCode = param.User.OrganizationCode; var data = _webServiceBasic.HIS_Interface("39", JsonConvert.SerializeObject(xmlData)); InpatientInfoJsonDto dataValue = JsonConvert.DeserializeObject <InpatientInfoJsonDto>(data.Msg); if (dataValue != null && dataValue.InpatientInfoJsonData != null) { var diagnosisList = dataValue.DiagnosisJson.Select(c => new InpatientDiagnosisDto() { DiseaseCoding = c.DiseaseCoding, DiseaseName = c.DiseaseName, IsMainDiagnosis = c.IsMainDiagnosis == "是" ? true : false, ProjectCode = c.ProjectCode, }).ToList(); resultData = new InpatientInfoDto() { DiagnosisList = diagnosisList, HospitalizationId = dataValue.InpatientInfoJsonData.HospitalizationId, BusinessId = param.BusinessId, DiagnosisJson = JsonConvert.SerializeObject(dataValue.DiagnosisJson), AdmissionBed = dataValue.InpatientInfoJsonData.AdmissionBed, AdmissionDate = dataValue.InpatientInfoJsonData.AdmissionDate, AdmissionDiagnosticDoctor = dataValue.InpatientInfoJsonData.AdmissionDiagnosticDoctor, AdmissionDiagnosticDoctorId = dataValue.InpatientInfoJsonData.AdmissionDiagnosticDoctorId, AdmissionMainDiagnosis = dataValue.InpatientInfoJsonData.AdmissionMainDiagnosis, AdmissionMainDiagnosisIcd10 = dataValue.InpatientInfoJsonData.AdmissionMainDiagnosisIcd10, AdmissionOperateTime = dataValue.InpatientInfoJsonData.AdmissionOperateTime, AdmissionOperator = dataValue.InpatientInfoJsonData.AdmissionOperator, AdmissionWard = dataValue.InpatientInfoJsonData.AdmissionWard, FamilyAddress = dataValue.InpatientInfoJsonData.FamilyAddress, IdCardNo = dataValue.InpatientInfoJsonData.IdCardNo, PatientName = dataValue.InpatientInfoJsonData.PatientName, PatientSex = dataValue.InpatientInfoJsonData.PatientSex, ContactName = dataValue.InpatientInfoJsonData.ContactName, ContactPhone = dataValue.InpatientInfoJsonData.ContactPhone, Remark = dataValue.InpatientInfoJsonData.Remark, HospitalName = param.User.OrganizationName, HospitalizationNo = dataValue.InpatientInfoJsonData.HospitalizationNo, TransactionId = param.User.TransKey, InDepartmentName = dataValue.InpatientInfoJsonData.InDepartmentName, InDepartmentId = dataValue.InpatientInfoJsonData.InDepartmentId, DocumentNo = dataValue.InpatientInfoJsonData.DocumentNo, }; if (param.IsSave == true) { //删除以前记录 var deleteData = _hisSqlRepository.DeleteDatabase(new DeleteDatabaseParam() { User = param.User, Field = "BusinessId", Value = param.BusinessId, TableName = "Inpatient" }); //添加病人信息 var inpatientEntity = new InpatientEntity(); var insertEntity = AutoMapper.Mapper.Map <InpatientEntity>(resultData); insertEntity.Id = Guid.NewGuid(); inpatientBaseService.Insert(insertEntity, param.User); } } return(resultData); }