コード例 #1
0
        /// <summary>
        /// 获取生育入院登记入参
        /// </summary>
        /// <param name="inpatientInfo"></param>
        /// <param name="param"></param>
        /// <returns></returns>
        private WorkerBirthHospitalizationRegisterParam GetWorkerHospitalizationWorkerBirth
            (InpatientInfoDto inpatientInfo, WorkerBirthHospitalizationRegisterUiParam param)
        {
            var iniParam = new WorkerBirthHospitalizationRegisterParam()
            {
                IdentityMark            = param.IdentityMark,
                AfferentSign            = param.AfferentSign,
                MedicalCategory         = param.MedicalCategory,
                FetusNumber             = param.FetusNumber,
                SpouseIdCardNo          = param.SpouseIdCardNo,
                SpouseName              = param.SpouseName,
                AdmissionDate           = Convert.ToDateTime(inpatientInfo.AdmissionDate).ToString("yyyyMMdd"),
                HospitalizationNo       = inpatientInfo.HospitalizationNo,
                Operators               = inpatientInfo.AdmissionOperator,
                InpatientDepartmentCode = inpatientInfo.InDepartmentName,
            };
            var diagnosisData = CommonHelp.GetDiagnosis(param.DiagnosisList);

            iniParam.AdmissionMainDiagnosisIcd10 = diagnosisData.AdmissionMainDiagnosisIcd10;
            iniParam.DiagnosisIcd10Two           = diagnosisData.DiagnosisIcd10Two;
            iniParam.DiagnosisIcd10Three         = diagnosisData.DiagnosisIcd10Three;
            iniParam.AdmissionMainDiagnosis      = diagnosisData.DiagnosisDescribe;
            return(iniParam);
        }
コード例 #2
0
        /// <summary>
        /// 职工生育入院登记
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public WorkerBirthHospitalizationRegisterDto WorkerBirthHospitalizationRegister(WorkerBirthHospitalizationRegisterUiParam param)
        {
            var userBase = _serviceBasicService.GetUserBaseInfo(param.UserId);

            userBase.TransKey = param.TransKey;
            var infoData = new GetInpatientInfoParam()
            {
                User       = userBase,
                BusinessId = param.BusinessId,
            };
            //获取病人
            var inpatientData = _serviceBasicService.GetInpatientInfo(infoData);

            if (inpatientData == null)
            {
                throw new Exception("获取基层病人失败!!!");
            }
            var paramIni = GetWorkerHospitalizationWorkerBirth(inpatientData, param);
            var data     = _workerMedicalInsuranceRepository.WorkerBirthHospitalizationRegister(paramIni);

            if (data == null)
            {
                throw new Exception("职工生育入院登记未反馈数据!!!");
            }

            var saveData = new MedicalInsuranceDto
            {
                AdmissionInfoJson = JsonConvert.SerializeObject(paramIni),
                BusinessId        = param.BusinessId,
                Id                                = Guid.NewGuid(),
                IsModify                          = false,
                InsuranceType                     = 310,
                MedicalInsuranceState             = MedicalInsuranceState.MedicalInsuranceHospitalized,
                MedicalInsuranceHospitalizationNo = data.MedicalInsuranceInpatientNo,
                IsBirthHospital                   = 1,
                IdentityMark                      = param.IdentityMark,
                AfferentSign                      = param.AfferentSign
            };

            ////存中间库
            _medicalInsuranceSqlRepository.SaveMedicalInsurance(userBase, saveData);
            //回参构建
            var xmlData = new HospitalizationRegisterXml()
            {
                MedicalInsuranceType = "1",
                MedicalInsuranceHospitalizationNo = data.MedicalInsuranceInpatientNo,
                InsuranceNo = null,
            };
            var strXmlBackParam = XmlSerializeHelper.HisXmlSerialize(xmlData);
            var saveXml         = new SaveXmlDataParam()
            {
                User = userBase,
                MedicalInsuranceBackNum = "zydj",
                MedicalInsuranceCode    = "21",
                BusinessId = param.BusinessId,
                BackParam  = strXmlBackParam
            };

            //存基层
            _webBasicRepository.SaveXmlData(saveXml);
            saveData.MedicalInsuranceState = MedicalInsuranceState.HisHospitalized;
            //更新中间库
            _medicalInsuranceSqlRepository.SaveMedicalInsurance(userBase, saveData);
            //保存入院数据
            infoData.IsSave = true;
            _serviceBasicService.GetInpatientInfo(infoData);
            return(data);
        }