/// <summary> /// 3.4 获取三大目录 /// </summary> /// <param name="param"></param> /// <returns></returns> public string GetCatalog(UserInfoDto user, CatalogParam param) { var time = _hisSqlRepository.GetTime(Convert.ToInt16(param.CatalogType)); _hisSqlRepository.DeleteCatalog(user, Convert.ToInt16(param.CatalogType)); var timeNew = Convert.ToDateTime(time).ToString("yyyy-MM-dd HH:ss:mm") ?? DateTime.Now.AddYears(-40).ToString("yyyy-MM-dd HH:ss:mm"); var oCatalogInfo = new CatalogInfoDto { 目录类型 = Convert.ToInt16(param.CatalogType).ToString(), 目录名称 = "", 开始时间 = timeNew, 结束时间 = DateTime.Now.ToString("yyyy-MM-dd HH:ss:mm"), 验证码 = param.AuthCode, 机构编码 = param.OrganizationCode, }; var data = _webServiceBasic.HIS_InterfaceList("06", JsonConvert.SerializeObject(oCatalogInfo)); List <ListCount> nums; var init = new ListCount(); nums = GetResultData(init, data); var cnt = Convert.ToInt32(nums?.FirstOrDefault()?.行数); var resultCatalogDtoList = new List <CatalogDto>(); var i = 0; while (i < cnt) { oCatalogInfo.开始行数 = i; oCatalogInfo.结束行数 = i + param.Nums; var catalogDtoData = _webServiceBasic.HIS_InterfaceList("05", JsonConvert.SerializeObject(oCatalogInfo)); List <CatalogDto> resultCatalogDto; var initCatalogDto = new CatalogDto(); resultCatalogDto = GetResultData(initCatalogDto, catalogDtoData); if (resultCatalogDto.Any()) { resultCatalogDtoList.AddRange(resultCatalogDto); } if (resultCatalogDto.Count > 1) //排除单条更新 { _hisSqlRepository.AddCatalog(user, resultCatalogDto, param.CatalogType); } i = i + param.Nums; } Int64 allNum = resultCatalogDtoList.Count() == 1 ? 0 : resultCatalogDtoList.Count(); return("下载【" + param.CatalogType + "】成功 共" + allNum.ToString() + "条记录"); }