Exemplo n.º 1
0
        public HttpResponseMessage GetPreviewFile(int infoId)
        {
            var files = Core.FileManager.GetList(new FileParameter
            {
                InfoId = infoId,
                Inline = true,
            });
            var file = files.OrderByDescending(e => e.ID).FirstOrDefault();

            if (file == null)
            {
                return(Index(0));
            }
            //如果是word文档,则需要转为pdf 并替换原来的word文件
            if (file.IsWordFile)
            {
                var pdfFile = Core.FileManager.GetList(new FileParameter {
                    ParentId = file.ID
                }).ToList().Where(e => e.FileName.EndsWith("pdf")).FirstOrDefault();
                if (pdfFile == null)
                {
                    var docPath = Path.Combine(Environment.CurrentDirectory, file.AbsolutelyPath);
                    var pdfPath = docPath + ".pdf";
                    if (Core.FileManager.TryConvertToPdf(docPath, pdfPath))
                    {
                        pdfFile = new OA.Models.File
                        {
                            FileName = file.FileName + ".pdf",
                            InfoId   = file.InfoId,
                            SavePath = file.SavePath + ".pdf",
                            Size     = file.Size,
                            Inline   = true,
                            ParentId = file.ID
                        };
                        Core.FileManager.Save(pdfFile);
                    }
                    else
                    {
                        return(Index(file.ID));
                    }
                }
                return(Index(pdfFile.ID));
            }
            return(Index(file.ID));
        }
Exemplo n.º 2
0
 public void Update(OA.Models.File model)
 {
     Core.FileManager.Save(model);
 }