public string GetLinkEditorEdit([FromUri] RecordRequest recordRequest) { var conn = new InforConnection(tu: _tu, tup: _tup); var id = recordRequest.Id; var ip = Request.UserHostName; var compName = Classes.Helpers.DetermineCompName(ip); var fileName = conn.GetRecordDocumentWeb((long)id, true, AppUserState.UserName, AppUserState.Wgs, AppUserState.Ds).ToLower(); return(fileName); }
public static string GetDocumentForEdit(long uri, string username, string wgs, string ds) { try { var conn = new InforConnection(tu: Tu, tup: Tup); var fileName = conn.GetRecordDocumentWeb(Convert.ToInt64(uri), true, username, wgs, ds, StoragePath()).ToLower(); var curExt = (Path.GetExtension(fileName) ?? "").ToLower(); if (!FileExts.Contains(curExt)) { throw new Exception("File type is not supported"); } fileName = GetCorrectName(fileName); return(fileName); } catch (Exception ex) { return(null); } }
public string GetDocumentLink(string wopiHost, string file, string username, string wgs, string ds) { try { var uri = file; var conn = new InforConnection(tu: Tu, tup: Tup); var rec = conn.GetRecordWeb(Convert.ToInt64(uri), username, wgs, ds); var fileName = conn.GetRecordDocumentWeb(Convert.ToInt64(uri), _updateEnabled, username, wgs, ds).ToLower(); Logger.Info($"Get docuemnt link {fileName}"); var accessToken = GetToken(fileName); var fileExt = fileName.Substring(fileName.LastIndexOf('.') + 1).ToLower(); Logger.Info($"Extension {fileExt}"); var netzone = _wopiDiscovery.netzone.FirstOrDefault(f => f.name.Contains("external")); var netzoneApp = netzone.app.AsEnumerable() .Where(c => c.action.Where(d => d.ext == fileExt).Count() > 0); var appName = netzoneApp.FirstOrDefault(); if (null == appName) { return(null); } var fn = fileName.Substring(fileName.LastIndexOf('\\') + 1); var rv = GetDocumentLink(appName.name, fileExt, $"{wopiHost}{fn}", accessToken); return(rv); } catch (Exception ex) { return(null); } }