文件服务.二开案例.使用本地服务预览自定义文件

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

文件服务.二开案例.使用本地服务预览自定义文件

【场景】预览自定义文件 【案例】预览在服务器自定义目录的文件 (1)数据准备,服务器临时目录下的文件 ![image.webp](/download/01003e65bbe621224c0e92e3d009fa8ef8db.webp) (2)插件案例 ![image.webp](/download/01008402c592ab284f399415dbdadb4c7229.webp) ```csharp using Kingdee.BOS.Core.Bill.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.JSON; using Kingdee.BOS.ServiceHelper.FileServer; using Kingdee.BOS.Util; using System; using System.Web; namespace DynamicFormPlugIn.Attachment { [Kingdee.BOS.Util.HotUpdate] public class CustomPdfPreviewPlugIn : AbstractBillPlugIn { public override void ButtonClick(ButtonClickEventArgs e) { if (string.Equals(e.Key, "F_BHR_CustomPdfPreview", StringComparison.OrdinalIgnoreCase)) { PreviewPdf(); } } /// <summary> /// 本地服务预览 pdf文件 /// </summary> private void PreviewPdf() { string fileName = "2.pdf"; string serverPath = string.Format("TempfilePath/{0}", fileName); string physicalPath = System.IO.Path.Combine(PathUtils.GetPhysicalPath("TempfilePath"), fileName); JSONObject webobj = new JSONObject(); webobj["action"] = "OpenRes";//使用客户端本地程序直接打开文件资源,如pdf默认谷歌浏览器打开,word默认使用office打开 string url = FileServerHelper.GetAppSiteOuterNetUrl(this.Context, HttpContext.Current.Request); string filepath = string.Format("{0}{1}", url, serverPath); //var logInfo = GetLogInfo(dyn); //if (logInfo != null) //{ // var detailedInfo = PathUtils.EncodeJsonWebToken(logInfo.ToDictionary(d => d.Key, d => (object)d.Value)); // filepath += string.Format("&detailedInfo={0}", detailedInfo); //} webobj["filepath"] = filepath;//文件下载url webobj["fileid"] = Guid.NewGuid().ToString();//用作本地服务缓存文件,如果每次都需要下载最新的就使用guid webobj["targetfilename"] = HttpUtility.UrlEncode(fileName);//文件名 webobj["pageid"] = this.View.PageId; this.View.AddAction("OpenClientLocalResource", webobj); this.View.SendDynamicFormAction(this.View); this.View.ShowMessage("附件正在加载中.."); CacheUtil.SetCache(this.Context.GetAreaCacheKey(), "OpenClientLocalResourceCall", this.View.PageId, this.View); } } } ``` 【效果】预览自定义文件 ![image.webp](/download/0100e0516e3eaeef429ca1cd66f3261378da.webp) ![image.webp](/download/010020eab70670704f90baee1404dd45b74b.webp)

文件服务.二开案例.使用本地服务预览自定义文件

【场景】预览自定义文件【案例】预览在服务器自定义目录的文件(1)数据准备,服务器临时目录下的文件![image.webp](/download/01003e65bbe62...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息