/// <summary> /// 审核专题 /// </summary> /// <param name="id"></param> /// <param name="auditStatus"></param> /// <returns></returns> public InvokeResult <bool> AuditTopic(string id, int auditStatus, string auditMessage) { var entity = GetForm(id); if (entity.TopicStatus == (int)TopicStatus.Audited) { return(RequestResult.Failed <bool>("该专题已审核成功,不能重复审核!")); } entity.TopicStatus = auditStatus; entity.EnabledMark = true; entity.AuditMessage = auditMessage; //审核其他文件操作 using (var tran = _Respository.BeginTransaction()) { try { var b = false; var articles = new List <Article>(); //先处理文件 string[] unZipFiles = new string[] { }; if (auditStatus == (int)TopicStatus.Audited && !entity.Attachment.IsEmpty()) { //后台审核通过时写入 //压缩包文件 解压,把数据写入文库 if (File.Exists(FileHelper.MapFilePath(entity.Attachment))) { var zipfileInfo = new FileInfo(FileHelper.MapFilePath(entity.Attachment));//存在则覆盖 var unzipDir = FileDownHelper.UnZip(zipfileInfo.FullName, zipfileInfo.FullName.Replace(zipfileInfo.Extension, "topic")); unZipFiles = Directory.GetFiles(unzipDir); if (!unZipFiles.Any()) { tran.Rollback(); return(RequestResult.Failed <bool>("资源解压后无文件,审核失败")); } System.Threading.Thread.Sleep(800); foreach (var file in unZipFiles) { var extension = FileHelper.GetExtension(file); var dir = $"/{ConfigManager.SysConfiguration.UploadFolder}/{DateTime.Now.ToString("yyyyMMdd")}"; if (!Directory.Exists(FileHelper.MapFilePath(dir))) { Directory.CreateDirectory(FileHelper.MapFilePath(dir)); } var newFileName = $"{dir}/{Common.GuId().Replace("-", "")}{extension}"; FileHelper.CopyFile(file, FileHelper.MapFilePath(newFileName)); var title = FileHelper.GetFileName(file, false); var article = new Article() { Title = title, ShortTitle = title, Keyword = title, Description = title, Attachment = newFileName, AllowDownload = false, SpecialTopicId = id, IsOnline = true, MemberId = entity.CreatorUserId, OnlinePageCount = 5, RequireAmount = 0, PageCount = 5, ResourceSize = (int)FileHelper.GetFileSize(file), ResourceType = extension.Replace(".", ""), BookStatus = (int)BookStatus.审核通过, HasImages = true, }; articles.Add(article); b = _ArticleRespository.CreateOrUpdate(article); if (!b) { tran.Rollback(); return(RequestResult.Failed <bool>("解压数据处理失败")); } CoreContextProvider.ConvertFileToImage(article.Attachment.Split(',').ToList(), article.PageCount, _logger); } } } //后处理专题 if (!articles.Any()) { tran.Rollback(); return(RequestResult.Failed <bool>("审核解压后文档数为0,审核失败!")); } entity.ResourceCount = articles.Count; b = _Respository.UpdateFields(entity, "TopicStatus", "AuditMessage", "ResourceCount", "EnabledMark"); if (!b) { tran.Rollback(); return(RequestResult.Failed <bool>("审核失败")); } if (!entity.CreatorUserId.IsEmpty()) { var memberScoreService = CoreContextProvider.GetService <IMemberScoreService>(); b = memberScoreService.AddScore(entity.CreatorUserId, ScoreType.addtopic, id).Success; if (!b) { tran.Rollback(); return(RequestResult.Failed <bool>("审核处理积分失败")); } } if (unZipFiles != null && unZipFiles.Any()) { //[method.AuditTopic(cea705b9-ae49-40f6-ad4c-bb06fef1ff7d,1)]:Cannot access destination table 'Article'. //insert into articles //articleService.AddBetch(articles); } tran.Commit(); return(RequestResult.Success(true)); } catch (Exception ex) { tran.Rollback(); _logger.LogError($"[method.AuditTopic({id},{auditStatus})]:" + ex.ToString()); return(RequestResult.Failed <bool>("审核失败,数据异常")); } } }
protected void Button2_Click(object sender, EventArgs e) { FileDownHelper.ResponseFile("动物世界", @"C:\Users\Public\Videos\Sample Videos\Wildlife.wmv", 102400); //Debug.WriteLine(_result.Item1 == true ? "成功" : "失败"); }
public void Export() { try { //总人数,单程人数,双程人数 var ToPosition = HttpUtility.UrlDecode(Request["ToPosition"]); string sql = GetGridOrderSql(null, true); var dataTable = Db.MySqlContext.FromSql(sql).ToDataTable(); NPOIExcel nPOIExcel = new NPOIExcel(); string baseDictioneryPath = AppDomain.CurrentDomain.BaseDirectory + "\\Excel"; if (!Directory.Exists(baseDictioneryPath)) { Directory.CreateDirectory(baseDictioneryPath); } string fileName = "订单列表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls"; string excelFilePath = baseDictioneryPath + "\\" + fileName; string CarNumber = HttpUtility.UrlDecode(Request["CarNumber"]); string DepartureTimeStart = Request["DepartureTimeStart"]; string DepartureTimeEnd = Request["DepartureTimeEnd"]; bool r = nPOIExcel.ToExcel(dataTable, "订单列表", "订单列表", excelFilePath, (workBook, sheet) => { //自定义行 object TotalAmountSum = dataTable.Compute("sum(车费)", "TRUE"); IRow row = sheet.CreateRow(0); var _DepartureTimeStart = DepartureTimeStart.ToDate().ToString("yyyy年MM月dd日"); var _DepartureTimeEnd = DepartureTimeEnd.ToDate().ToString("yyyy年MM月dd日"); var DepartureTimeStr = string.Empty; if (_DepartureTimeStart == _DepartureTimeEnd) { DepartureTimeStr = _DepartureTimeStart; } else { DepartureTimeStr = $"{ _DepartureTimeStart}-{ _DepartureTimeEnd}"; } int totalCount = dataTable.Rows.Count; //总人数 int singleCount = dataTable.Select("单程='是'").Count(); //单程 int doubleCount = totalCount - singleCount; //双程 row.CreateCell(0).SetCellValue($"目的地:{ToPosition} 车号:{CarNumber} 发车时间:{DepartureTimeStr} 合计:{TotalAmountSum} 总人数:{totalCount} 单程:{singleCount} 双程:{doubleCount} "); sheet.AddMergedRegion(new CellRangeAddress(0, 0, 0, dataTable.Columns.Count - 1)); row.Height = 500; ICellStyle cellStyle = workBook.CreateCellStyle(); IFont font = workBook.CreateFont(); font.FontName = "微软雅黑"; font.FontHeightInPoints = 17; cellStyle.SetFont(font); cellStyle.VerticalAlignment = VerticalAlignment.Center; cellStyle.Alignment = HorizontalAlignment.Left; row.Cells[0].CellStyle = cellStyle; return(1); }); FileDownHelper.DownLoadold(excelFilePath, fileName); } catch (Exception ex) { LogApp(f_ModuleName, DbLogType.Exception, ex.Message); } }