/// <summary>
        /// icd10对码
        /// </summary>
        /// <param name="param"></param>
        public void Icd10PairCode(Icd10PairCodeParam param)
        {  //回参构建
            var icd10List = new List <Icd10PairCodeDateXml>();

            icd10List.Add(new Icd10PairCodeDateXml()
            {
                DiseaseId     = param.DiseaseId,
                DiseaseName   = param.ProjectName,
                DiseaseCoding = param.ProjectCode
            });
            var dd = new Icd10PairCodeDateXml()
            {
                DiseaseId     = param.DiseaseId,
                DiseaseName   = param.ProjectName,
                DiseaseCoding = param.ProjectCode
            };
            var xmlData = new Icd10PairCodeXml()
            {
                row = icd10List
            };
            var strXmlBackParam = XmlSerializeHelper.HisXmlSerialize(xmlData);
            var saveXml         = new SaveXmlDataParam()
            {
                User = param.User,
                MedicalInsuranceBackNum = "CXJB002",
                MedicalInsuranceCode    = "91",
                BusinessId = param.BusinessId,
                BackParam  = strXmlBackParam
            };

            //存基层
            _webServiceBasic.SaveXmlData(saveXml);
            _hisSqlRepository.Icd10PairCode(param);
        }
Exemplo n.º 2
0
        public ApiJsonResultData Icd10BatchUpload([FromBody] UiBaseDataParam param)
        {
            return(new ApiJsonResultData(ModelState, new UiInIParam()).RunWithTry(y =>
            {
                var userBase = webServiceBasicService.GetUserBaseInfo(param.UserId);
                userBase.TransKey = param.TransKey;
                var dataList = new List <Icd10PairCodeDataParam>();

                //基层
                var queryDataNew = _sqlSugarRepository.QueryICD10PairCode();
                var queryData = queryDataNew.Where(c => c.IsDelete == false && c.State == 0).ToList();
                if (queryData.Any())
                {
                    dataList = queryData.Select(d => new Icd10PairCodeDataParam
                    {
                        DiseaseId = d.DiseaseId,
                        ProjectName = d.ProjectName,
                        ProjectCode = d.ProjectCode
                    }).ToList();
                }

                if (dataList.Any())
                {
                    int a = 0;
                    int limit = 400; //限制条数
                    int num = dataList.Count;
                    var count = Convert.ToInt32(num / limit) + ((num % limit) > 0 ? 1 : 0);
                    var idList = new List <string>();
                    while (a < count)
                    {
                        //排除已上传数据

                        var rowDataListAll = dataList.Where(d => !idList.Contains(d.DiseaseId))
                                             .ToList();
                        var sendList = rowDataListAll.Take(limit).ToList();


                        //回参构建
                        var icd10List = new List <Icd10PairCodeDateXml>();
                        icd10List.AddRange(sendList.Select(c => new Icd10PairCodeDateXml()
                        {
                            DiseaseId = c.DiseaseId,
                            DiseaseName = c.ProjectName,
                            DiseaseCoding = c.ProjectCode
                        }));

                        var xmlData = new Icd10PairCodeXml()
                        {
                            row = icd10List
                        };
                        var strXmlBackParam = XmlSerializeHelper.HisXmlSerialize(xmlData);
                        var saveXml = new SaveXmlDataParam()
                        {
                            User = userBase,
                            MedicalInsuranceBackNum = "CXJB002",
                            MedicalInsuranceCode = "91",
                            BusinessId = param.BusinessId,
                            BackParam = strXmlBackParam
                        };
                        //存基层
                        webServiceBasic.SaveXmlData(saveXml);
                        idList.AddRange(sendList.Select(c => c.DiseaseId));
                        a++;
                    }


                    hisSqlRepository.ExecuteSql("update [dbo].[ICD10PairCode] set state=1 where  [PairCodeUserName]='医保接口对码'");
                }
            }));
        }