public object AddTaskHisAttachment() { //LogHelper<WorkFlowAppController>.Error("AddTaskHisAttachment"); JObject data = new JObject(); //var taskinstid = paramJo["taskinstid"].IsNullOrEmpty() == false ? (string)paramJo["taskinstid"] : string.Empty; //var filename = paramJo["filename"].IsNullOrEmpty() == false ? (string)paramJo["filename"] : string.Empty; var taskinstid = Pub.Request("taskinstid"); var filename = Pub.Request("filename"); var asr_fid = Pub.Request("asr_fid"); var guid = Pub.Request("asr_guid"); var mediaid = Pub.Request("mediaid"); //LogHelper<WorkFlowAppController>.Error("AddTaskHisAttachment:"+taskinstid+","+filename+","+guid); HttpFileCollection files = System.Web.HttpContext.Current.Request.Files; string errmsg = string.Empty; try { DbHelper.Open(); byte[] bb = null; if (!string.IsNullOrWhiteSpace(asr_fid)) { bb = NG3.WorkFlow.Engine.WorkFlowEngine.Instance.GetAttachmentByAsrFid(asr_fid); } else if (!string.IsNullOrWhiteSpace(mediaid)) { var url = string.Format("API/AppServer/Get?action=getattach&mediaid={0}&moduleno=MEA&ucode={1}", mediaid, EnvironmentHelp.GetDatabase(string.Empty).Replace("NG", "")); HttpClient client = EnvironmentHelp.GetHttpClientInst(); var resp = client.GetAsync(url).Result; resp.EnsureSuccessStatusCode(); var respContent = resp.Content.ReadAsStringAsync().Result; //LogHelper<WorkFlowAppController>.Error(string.Format("获取微信附件正文{0},url:{1}", respContent, url)); JObject o = JObject.Parse(respContent); if (o["success"].GetStringValue() == "true" && !string.IsNullOrWhiteSpace(o["file"].GetStringValue())) { bb = System.Convert.FromBase64String(o["file"].GetStringValue()); } if (string.IsNullOrWhiteSpace(filename)) { filename = Guid.NewGuid().ToString() + o["filetype"].GetStringValue(); } else if (!filename.Contains(".")) { filename += o["filetype"].GetStringValue(); } } else if (files != null && files.Count > 0) { if (string.IsNullOrEmpty(filename)) { filename = files[0].FileName; } using (Stream sr = files[0].InputStream) { bb = new byte[sr.Length]; sr.Read(bb, 0, bb.Length); sr.Close(); } } if (string.IsNullOrWhiteSpace(filename) || bb.Length < 1) { errmsg = "文件名为空或未上传正文!"; } guid = NG3.WorkFlow.Engine.WorkFlowEngine.Instance.AddTaskHisAttachment(guid, taskinstid, filename, bb); } catch (Exception ex) { return(DCHelper.ErrorMessage(ex.Message)); } finally { DbHelper.Close(); } data.Add("guid", guid); data.Add("errmsg", errmsg); data.Add("status", string.IsNullOrEmpty(guid) ? "error" : "succeed"); return(data); }
public object GetTaskBizContent([FromUri] BaseInfoModel paramters) { object obj = null; try { if (paramters.flowType == "af") { DllClassService dcs = new DllClassService("NG.AppFlow.Facade"); obj = dcs.Invoke("NG.AppFlow.Facade.AppFlowFacade", "GetBizContent4MobileApp", new object[] { paramters.piid }); //System.Text.StringBuilder sb = new System.Text.StringBuilder(); //sb.Append("{"); //sb.Append(string.Format("\"data\":\"{0}\"", obj.ToString())).Append(","); //sb.Append("\"name\":\"\","); //sb.Append("\"type\":\"bytes\","); //sb.Append("\"status\":\"succeed\","); //sb.Append("\"errmsg\":\"\"}"); JObject data = new JObject(); data.Add("data", obj.ToString()); data.Add("name", ""); data.Add("type", "bytes"); data.Add("status", "succeed"); return(data); } else if (paramters.flowType == "oawf") { DllClassService dcs = new DllClassService("NG.WorkFlow.Facade.dll"); obj = dcs.Invoke("NG.WorkFlow.Facade.WorkflowFacade", "GetBizContentUrl4MobileApp", new object[] { paramters.piid }); string[] ss = (obj.ToString()).Split(new string[] { "@@**" }, StringSplitOptions.None); string url = ss.Length > 0 ? ss[0] : string.Empty; string name = ss.Length > 1 ? ss[1] : string.Empty; //System.Text.StringBuilder sb = new System.Text.StringBuilder(); //sb.Append("{"); //sb.Append(string.Format("\"data\":\"{0}\"", url)).Append(","); //sb.Append(string.Format("\"name\":\"{0}\"", name)).Append(","); //sb.Append("\"type\":\"URL\","); //sb.Append("\"status\":\"succeed\","); //sb.Append("\"errmsg\":\"\"}"); //jsonStr = sb.ToString(); JObject data = new JObject(); data.Add("data", url); data.Add("name", name); data.Add("type", "URL"); data.Add("status", "succeed"); return(data); } else if (paramters.flowType == "psoftwf") { DllClassService dcs = new DllClassService("NG.AppFlow.Facade"); obj = dcs.Invoke("NG.AppFlow.Facade.PSoftWorkFlowFacade", "GetBizContent4MobileApp", new object[] { paramters.piid, string.Empty }); //System.Text.StringBuilder sb = new System.Text.StringBuilder(); //sb.Append("{"); //sb.Append(string.Format("\"data\":\"{0}\"", obj.ToString())).Append(","); //sb.Append("\"name\":\"\","); //sb.Append("\"type\":\"bytes\","); //sb.Append("\"status\":\"succeed\","); //sb.Append("\"errmsg\":\"\"}"); //jsonStr = sb.ToString(); JObject data = new JObject(); data.Add("data", obj.ToString()); data.Add("name", ""); data.Add("type", "bytes"); data.Add("status", "succeed"); return(data); } else if (paramters.flowType == "wf") { try { DbHelper.Open(); string fileName = string.Empty; string url = WorkFlowEngine.Instance.GetBizPdf(paramters.piid, out fileName); JObject data = new JObject(); data.Add("data", url); data.Add("name", fileName); data.Add("type", "URL"); data.Add("status", "succeed"); return(data); } finally { DbHelper.Close(); } } else { throw new Exception("获取正文出错"); } } catch (System.Exception ex) { return(DCHelper.ErrorMessage(ex.Message)); } }