public async Task <IActionResult> ExportData(string ids)// { var result = new ResultContract <ResultContract <string> >() { Code = 0, Msg = "导出成功" }; try { DataTable tblDatas = new DataTable("Datas"); DataColumn dc = null; dc = tblDatas.Columns.Add("序号", Type.GetType("System.Int32")); dc.AutoIncrement = true; //自动增加 dc.AutoIncrementSeed = 1; //起始为1 dc.AutoIncrementStep = 1; //步长为1 dc.AllowDBNull = false; // dc = tblDatas.Columns.Add("来源", Type.GetType("System.String")); dc = tblDatas.Columns.Add("所属系统", Type.GetType("System.String")); dc = tblDatas.Columns.Add("时间", Type.GetType("System.String")); dc = tblDatas.Columns.Add("图片", Type.GetType("System.String")); List <string> idList = ids.Split(",").ToList(); foreach (var id in idList) { var returnResult = logic.GetTagsInfo(id); EsContract contract = SerializeHelper.deserializeToObject <EsContract>(returnResult.Data.ToString()); DataRow newRow; newRow = tblDatas.NewRow(); newRow["来源"] = contract.orgName; ApplicationContract appContract = new ApplicationContract(); appContract.Id = Guid.Parse(contract.appId); var applist = applicationService.GetApplication(appContract); newRow["所属系统"] = applist.Count > 0 ? applist[0].AppName : ""; DateTime time = (DateTime)contract.uploadTime; newRow["时间"] = time.ToString("yyyy-MM-dd hh:mm:ss"); newRow["图片"] = contract.url; tblDatas.Rows.Add(newRow); } MemoryStream ms = ExportHelper.RenderDataTableToExcel(tblDatas) as MemoryStream; return(File(ms.ToArray(), "application/vnd.ms-excel", "ExportImage.xls")); } catch (Exception e) { LogHelper.logError("查询ES失败:" + e.StackTrace); result.Code = -1; result.Msg = e.StackTrace; } return(null); }
/// <summary> /// ES批量新增数据 /// </summary> /// <param name="contract"></param> /// <returns></returns> public bool InsertESList(List <UploadContract> contractlist) { try { List <EsContract> list = new List <EsContract>(); foreach (var contract in contractlist) { EsContract data = new EsContract { fileId = contract.FileId, userId = contract.UserId, orgId = contract.OrgId, appId = contract.AppId, orgName = contract.OrgName, fileName = contract.FileName, newFileName = contract.NewFileName, upload = contract.IsUpload, url = contract.Url, thumbnailUrl = contract.ThumbnailUrl, tags = contract.Tags, uploadTime = contract.UploadTime, insertTime = DateTime.Now, displayName = contract.DisplayName, fileType = contract.FileType, groupId = contract.GroupId, remark = contract.Remark, order = contract.Order, themeType = contract.ThemeType }; list.Add(data); } LogHelper.logInfo("批量添加:" + SerializeHelper.serializeToString(list)); var result = HttpHelper.HttpPost(SerializeHelper.serializeToString(list), ESAddress + "/document/addTagsinfo?index=themevideo&type=tagsinfo"); ResultContract <object> res = SerializeHelper.deserializeToObject <ResultContract <object> >(result); if (res.Code == 200) { return(true); } return(false); } catch (Exception e) { LogHelper.logInfo("ES批量新增数据异常:" + e.ToString()); return(false); } }
/// <summary> /// ES新增数据 /// </summary> /// <param name="contract"></param> /// <returns></returns> public bool InsertES(UploadContract contract) { try { var data = new EsContract() { fileId = contract.FileId, userId = contract.UserId, orgId = contract.OrgId, appId = contract.AppId, orgName = contract.OrgName, fileName = contract.FileName, thumbnailUrl = contract.ThumbnailUrl, newFileName = contract.NewFileName, upload = contract.IsUpload, url = contract.Url, tags = contract.Tags, uploadTime = contract.UploadTime, insertTime = DateTime.Now, displayName = contract.DisplayName, fileType = contract.FileType, groupId = contract.GroupId, remark = contract.Remark, order = contract.Order, themeType = contract.ThemeType }; LogHelper.logInfo("单个添加:" + SerializeHelper.serializeToString(data)); var result = HttpHelper.HttpPost(SerializeHelper.serializeToString(data), ESAddress + "/document/addTaginfo"); ResultContract <object> res = SerializeHelper.deserializeToObject <ResultContract <object> >(result); if (res.Code == 200) { return(true); } return(false); } catch (Exception e) { LogHelper.logInfo("单个添加异常:" + e.ToString()); return(false); } }