protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { string taskid = Request.QueryString["taskid"]; Guid taskID; if (taskid.IsGuid(out taskID)) { string user = Request.Form["user"]; string openerid = Request.QueryString["openerid"]; RoadFlow.Platform.WorkFlowTask btask = new RoadFlow.Platform.WorkFlowTask(); var users = new RoadFlow.Platform.Organize().GetAllUsers(user); System.Text.StringBuilder sb = new System.Text.StringBuilder(); foreach (var user1 in users) { btask.DesignateTask(taskID, user1); RoadFlow.Platform.Log.Add("管理员指派了流程任务", "将任务" + taskID + "指派给了:" + user1.Name + user1.ID, RoadFlow.Platform.Log.Types.流程相关); sb.Append(user1.Name); sb.Append(","); } string userNames = sb.ToString().TrimEnd(','); Page.ClientScript.RegisterStartupScript(Page.GetType(), "ok", "alert('已成功指派给:" + userNames + "!');new RoadUI.Window().reloadOpener();new RoadUI.Window().close();", true); } } }
public string Withdraw() { string taskid = Request.QueryString["taskid"]; Guid tid; if (!taskid.IsGuid(out tid)) { return("参数错误!"); } else if (new RoadFlow.Platform.WorkFlowTask().HasWithdraw(tid)) { bool success = new RoadFlow.Platform.WorkFlowTask().WithdrawTask(tid); if (success) { RoadFlow.Platform.Log.Add("收回了任务", "任务ID:" + taskid, RoadFlow.Platform.Log.Types.流程相关); return("收回成功!"); } else { return("收回失败!"); } } else { return("该任务不能收回!"); } }
protected void Page_Load(object sender, EventArgs e) { string taskid = Request.QueryString["taskid"]; Guid tid; if (!taskid.IsGuid(out tid)) { Response.Write("参数错误!"); Response.End(); } else if (new RoadFlow.Platform.WorkFlowTask().HasWithdraw(tid)) { bool success = new RoadFlow.Platform.WorkFlowTask().WithdrawTask(tid); if (success) { RoadFlow.Platform.Log.Add("收回了任务", "任务ID:" + taskid, RoadFlow.Platform.Log.Types.流程相关); Response.Write("收回成功!"); Response.End(); } else { Response.Write("收回失败!"); Response.End(); } } else { Response.Write("该任务不能收回!"); Response.End(); } }
public ActionResult Designate(FormCollection collection) { string taskid = Request.QueryString["taskid"]; Guid taskID; if (taskid.IsGuid(out taskID)) { string user = Request.Form["user"]; string openerid = Request.QueryString["openerid"]; RoadFlow.Platform.WorkFlowTask btask = new RoadFlow.Platform.WorkFlowTask(); var users = new RoadFlow.Platform.Organize().GetAllUsers(user); System.Text.StringBuilder sb = new System.Text.StringBuilder(); foreach (var user1 in users) { btask.DesignateTask(taskID, user1); RoadFlow.Platform.Log.Add("管理员指派了流程任务", "将任务" + taskID + "指派给了:" + user1.Name + user1.ID, RoadFlow.Platform.Log.Types.流程相关); sb.Append(user1.Name); sb.Append(","); } string userNames = sb.ToString().TrimEnd(','); ViewBag.Script = "alert('已成功指派给:" + userNames + "!');new RoadUI.Window().reloadOpener();new RoadUI.Window().close();"; } return(View()); }
public ActionResult GoTo(FormCollection collection) { if (collection != null) { string[] array = (base.Request.Form["step"] ?? "").Split(','); Dictionary <Guid, string> dictionary = new Dictionary <Guid, string>(); string[] array2 = array; foreach (string text in array2) { if (MyExtensions.IsGuid(text)) { string text2 = base.Request.Form["member_" + text]; if (!MyExtensions.IsNullOrEmpty(text2)) { dictionary.Add(MyExtensions.ToGuid(text), text2); } } } RoadFlow.Data.Model.WorkFlowTask workFlowTask = null; RoadFlow.Platform.WorkFlowTask workFlowTask2 = new RoadFlow.Platform.WorkFlowTask(); string text3 = base.Request.QueryString["taskid"]; workFlowTask = workFlowTask2.Get(MyExtensions.ToGuid(text3)); bool flag = workFlowTask2.GoToTask(workFlowTask, dictionary); base.ViewBag.script = "alert('跳转" + (flag ? "成功" : "失败") + "');new RoadUI.Window().reloadOpener();new RoadUI.Window().close();"; } return(View()); }
public ActionResult ChangeStatus(FormCollection collection) { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Data.Model.WorkFlowTask workFlowTask2 = null; string text = string.Empty; string empty = string.Empty; empty = base.Request.QueryString["taskid"]; if (MyExtensions.IsGuid(empty)) { workFlowTask2 = workFlowTask.Get(MyExtensions.ToGuid(empty)); } if (workFlowTask2 != null) { text = base.Request.Form["Status"]; if (MyExtensions.IsInt(text)) { string oldXML = MyExtensions.Serialize((object)workFlowTask2); workFlowTask2.Status = MyExtensions.ToInt(text); workFlowTask.Update(workFlowTask2); RoadFlow.Platform.Log.Add("改变了流程任务状态", "改变了流程任务状态", RoadFlow.Platform.Log.Types.流程相关, oldXML, MyExtensions.Serialize((object)workFlowTask2)); base.ViewBag.Script = "alert('设置成功!');new RoadUI.Window().reloadOpener();new RoadUI.Window().close();"; } } base.ViewBag.Status = text; return(View()); }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; string pageNumber = context.Request.QueryString["pagenumber"]; string pageSize = context.Request.QueryString["pagesize"]; string searchTitle = context.Request.QueryString["SearchTitle"]; long count; Guid userID = RoadFlow.Platform.WeiXin.Organize.CurrentUserID; var tasks = new RoadFlow.Platform.WorkFlowTask().GetTasks(userID, out count, pageSize.ToInt(15), pageNumber.ToInt(2), title: searchTitle, type: 1); LitJson.JsonData jd = new LitJson.JsonData(); if (tasks.Count == 0) { context.Response.Write("[]"); context.Response.End(); } foreach (var task in tasks) { LitJson.JsonData jd1 = new LitJson.JsonData(); jd1["id"] = task.ID.ToString(); jd1["title"] = task.Title; jd1["time"] = task.CompletedTime1.HasValue ? task.CompletedTime1.Value.ToDateTimeString() : ""; jd1["sender"] = task.SenderName; jd1["flowid"] = task.FlowID.ToString(); jd1["stepid"] = task.StepID.ToString(); jd1["instanceid"] = task.InstanceID; jd1["groupid"] = task.GroupID.ToString(); jd.Add(jd1); } context.Response.Write(jd.ToJson()); }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; string flowid = context.Request.QueryString["flowid1"]; string groupid = context.Request.QueryString["groupid"]; Guid fid, gid; if (flowid.IsGuid(out fid) && groupid.IsGuid(out gid)) { System.Text.StringBuilder delxml = new System.Text.StringBuilder(); var tasks = new RoadFlow.Platform.WorkFlowTask().GetTaskList(fid, gid); foreach (var task in tasks) { delxml.Append(task.Serialize()); } new RoadFlow.Platform.WorkFlowTask().DeleteInstance(fid, gid); RoadFlow.Platform.Log.Add("管理员删除了流程实例", delxml.ToString(), RoadFlow.Platform.Log.Types.流程相关); context.Response.Write("删除成功!"); } else { context.Response.Write("参数错误!"); } }
public ActionResult Detail() { RoadFlow.Platform.WorkFlowTask bworkFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow bworkFlow = new RoadFlow.Platform.WorkFlow(); string flowid = Request.QueryString["flowid1"] ?? Request.QueryString["flowid"]; string groupid = Request.QueryString["groupid"]; string displayModel = Request.QueryString["displaymodel"]; var wfInstall = bworkFlow.GetWorkFlowRunModel(flowid); var tasks = bworkFlowTask.GetTaskList(flowid.ToGuid(), groupid.ToGuid()).OrderBy(p => p.Sort); string query = string.Format("&flowid1={0}&groupid={1}&appid={2}&tabid={3}&title={4}&flowid={5}&sender={6}&date1={7}&date2={8}&iframeid={9}&openerid={10}", flowid, groupid, Request.QueryString["appid"], Request.QueryString["tabid"], Request.QueryString["title"].UrlEncode(), Request.QueryString["flowid"], Request.QueryString["sender"], Request.QueryString["date1"], Request.QueryString["date2"], Request.QueryString["iframeid"], Request.QueryString["openerid"] ); ViewBag.flowid = flowid; ViewBag.groupid = groupid; ViewBag.displayModel = displayModel; ViewBag.wfInstall = wfInstall; ViewBag.query = query; return(View(tasks)); }
public string QueryCompletedList() { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow workFlow = new RoadFlow.Platform.WorkFlow(); RoadFlow.Platform.AppLibrary appLibrary = new RoadFlow.Platform.AppLibrary(); string text = base.Request.Form["title"]; string flowid = base.Request.Form["flowid"]; string sender = base.Request.Form["sender"]; string date = base.Request.Form["date1"]; string date2 = base.Request.Form["date2"]; string text2 = base.Request.Form["sidx"]; string text3 = base.Request.Form["sord"]; string text4 = ""; int pageSize = RoadFlow.Utility.Tools.GetPageSize(); int pageNumber = RoadFlow.Utility.Tools.GetPageNumber(); string order = (MyExtensions.IsNullOrEmpty(text2) ? "CompletedTime1" : text2) + " " + (MyExtensions.IsNullOrEmpty(text3) ? "asc" : text3); long count; List <RoadFlow.Data.Model.WorkFlowTask> tasks = workFlowTask.GetTasks(MyController.CurrentUserID, out count, pageSize, pageNumber, MyExtensions.Trim1(text), flowid, sender, date, date2, 1, order); JsonData jsonData = new JsonData(); foreach (RoadFlow.Data.Model.WorkFlowTask item in tasks) { bool isHasten = false; RoadFlow.Data.Model.AppLibrary byCode = appLibrary.GetByCode(item.FlowID.ToString()); int num = 0; int num2 = 1000; int num3 = 500; if (byCode != null) { num = byCode.OpenMode; num2 = (byCode.Width.HasValue ? byCode.Width.Value : 1000); num3 = (byCode.Height.HasValue ? byCode.Height.Value : 500); } StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("<a class=\"viewlink\" href=\"javascript:void(0);\" onclick=\"detail('" + item.FlowID + "','" + item.GroupID + "','" + item.ID + "');return false;\">查看</a>"); if (item.Status == 2 && workFlowTask.HasWithdraw(item.ID, out isHasten)) { stringBuilder.Append("<a style=\"background:url(" + base.Url.Content("~/Images/ico/back.gif") + ") no-repeat left center; padding-left:18px;margin-left:5px;\" href=\"javascript:void(0);\" onclick=\"withdraw('" + item.ID + "');\">收回</a>"); } if (isHasten) { stringBuilder.Append("<a style=\"background:url(" + base.Url.Content("~/Images/ico/comment_reply.png") + ") no-repeat left center; padding-left:18px;margin-left:5px;\" href=\"javascript:void(0);\" onclick=\"hasten('" + item.ID + "');\">催办</a>"); } JsonData jsonData2 = new JsonData(); jsonData2["id"] = item.ID.ToString(); jsonData2["FlowName"] = workFlow.GetFlowName(item.FlowID); jsonData2["Note"] = item.Note; jsonData2["ReceiveTime"] = MyExtensions.ToDateTimeString(item.ReceiveTime); jsonData2["CompletedTime"] = (item.CompletedTime1.HasValue ? MyExtensions.ToDateTimeString(item.CompletedTime1.Value) : ""); jsonData2["SenderName"] = item.SenderName; jsonData2["StepName"] = item.StepName; jsonData2["Title"] = "<a href=\"javascript:void(0);\" onclick=\"openTask('/WorkFlowRun/Index?" + $"flowid={item.FlowID}&stepid={item.StepID}&instanceid={item.InstanceID}&taskid={item.ID}&groupid={item.GroupID}&appid={text4}&display=1" + "','" + MyExtensions.UrlEncode(MyExtensions.RemoveHTML(item.Title)) + "','" + item.ID + "'," + num + "," + num2 + "," + num3 + ");return false;\">" + MyExtensions.HtmlEncode(item.Title) + "</a>"; jsonData2["Opation"] = stringBuilder.ToString(); jsonData.Add(jsonData2); } return("{\"userdata\":{\"total\":" + count + ",\"pagesize\":" + pageSize + ",\"pagenumber\":" + pageNumber + "},\"rows\":" + jsonData.ToJson() + "}"); }
public ActionResult DetailSubFlow() { RoadFlow.Platform.WorkFlowTask bworkFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow bworkFlow = new RoadFlow.Platform.WorkFlow(); string query = string.Format("&flowid1={0}&groupid={1}&appid={2}&tabid={3}&title={4}&flowid={5}&sender={6}&date1={7}&date2={8}&iframeid={9}&openerid={10}&taskid={11}", Request.QueryString["flowid"], Request.QueryString["groupid"], Request.QueryString["appid"], Request.QueryString["tabid"], Request.QueryString["title"].UrlEncode(), Request.QueryString["flowid"], Request.QueryString["sender"], Request.QueryString["date1"], Request.QueryString["date2"], Request.QueryString["iframeid"], Request.QueryString["openerid"], Request.QueryString["taskid"] ); ViewBag.flowid = Request.QueryString["flowid"]; ViewBag.groupid = Request.QueryString["groupid"]; ViewBag.displayModel = Request.QueryString["displaymodel"]; ViewBag.wfInstall = null; ViewBag.query = query; string taskid = Request.QueryString["taskid"]; string displayModel = Request.QueryString["displaymodel"]; if (!taskid.IsGuid()) { return(View(new List <RoadFlow.Data.Model.WorkFlowTask>())); } var task = bworkFlowTask.Get(taskid.ToGuid()); if (task == null || !task.SubFlowGroupID.HasValue) { return(View(new List <RoadFlow.Data.Model.WorkFlowTask>())); } var subFlowTasks = bworkFlowTask.GetTaskList(Guid.Empty, task.SubFlowGroupID.Value); if (subFlowTasks.Count == 0) { return(View(new List <RoadFlow.Data.Model.WorkFlowTask>())); } var wfInstall = bworkFlow.GetWorkFlowRunModel(subFlowTasks.First().FlowID); var tasks = subFlowTasks.OrderBy(p => p.Sort); ViewBag.wfInstall = wfInstall; ViewBag.flowid = subFlowTasks.First().FlowID.ToString(); return(View(tasks)); }
public ActionResult CompletedList(FormCollection collection) { RoadFlow.Platform.WorkFlowTask bworkFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow bworkFlow = new RoadFlow.Platform.WorkFlow(); string title = ""; string flowid = ""; string sender = ""; string date1 = ""; string date2 = ""; if (collection != null) { title = Request.Form["Title"]; flowid = Request.Form["FlowID"]; sender = Request.Form["SenderID"]; date1 = Request.Form["Date1"]; date2 = Request.Form["Date2"]; } else { title = Request.QueryString["title"]; flowid = Request.QueryString["flowid"]; sender = Request.QueryString["sender"]; date1 = Request.QueryString["date1"]; date2 = Request.QueryString["date2"]; } ViewBag.title = title; ViewBag.flowid = flowid; ViewBag.sender = sender; ViewBag.date1 = date1; ViewBag.date2 = date2; string query2 = string.Format("&appid={0}&tabid={1}&title={2}&flowid={3}&sender={4}&date1={5}&date2={6}", Request.QueryString["appid"], Request.QueryString["tabid"], title.UrlEncode(), flowid, sender, date1, date2 ); string query = string.Format("{0}&pagesize={1}&pagenumber={2}", query2, Request.QueryString["pagesize"], Request.QueryString["pagenumber"] ); string pager; var taskList = bworkFlowTask.GetTasks(RoadFlow.Platform.Users.CurrentUserID, out pager, query2, title, flowid, sender, date1, date2, 1); ViewBag.pager = pager; ViewBag.flowOptions = bworkFlow.GetOptions(flowid); ViewBag.query = query; return(View(taskList)); }
public ActionResult Hasten(FormCollection collection) { if (collection != null) { string users = base.Request.Form["HastenUsers"]; string types = base.Request.Form["HastenType"]; string contents = base.Request.Form["Contents"]; RoadFlow.Data.Model.WorkFlowTask task = new RoadFlow.Platform.WorkFlowTask().Get(MyExtensions.ToGuid(base.Request.QueryString["taskid"])); RoadFlow.Platform.HastenLog.Hasten(types, users, contents, task); base.ViewBag.script = "alert('催办成功!');new RoadUI.Window().close()"; } return(View()); }
public string deleteTask() { string text2 = base.Request.QueryString["flowid"]; string text3 = base.Request.QueryString["groupid"]; string text = base.Request.QueryString["taskid"]; RoadFlow.Data.Model.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask().Get(MyExtensions.ToGuid(text)); if (workFlowTask == null) { return("未找到当前任务!"); } new RoadFlow.Platform.WorkFlowTask().DeleteInstance(workFlowTask.FlowID, workFlowTask.GroupID); RoadFlow.Platform.Log.Add("作废了流程实例-" + workFlowTask.Title, MyExtensions.Serialize((object)workFlowTask), RoadFlow.Platform.Log.Types.流程相关); return("作废成功!"); }
public ActionResult Index(FormCollection coll) { List <RoadFlow.Data.Model.WorkFlowTask> list = new List <RoadFlow.Data.Model.WorkFlowTask>(); string empty = string.Empty; RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WeiXin.Organize.CheckLogin(); Guid currentUserID = RoadFlow.Platform.WeiXin.Organize.CurrentUserID; empty = base.Request.QueryString["searchkey"]; if (coll != null) { empty = base.Request.Form["SearchTitle"]; } ref long count;
public ActionResult Index(FormCollection coll) { RoadFlow.Platform.WeiXin.Organize.CheckLogin(); Guid currentUserId = RoadFlow.Platform.WeiXin.Organize.CurrentUserID; RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); List <RoadFlow.Data.Model.WorkFlowTask> workFlowTaskList = new List <RoadFlow.Data.Model.WorkFlowTask>(); string str = this.Request.QueryString["searchkey"]; if (coll != null) { str = this.Request.Form["searchkey"]; } Guid userID = currentUserId; long num; ref long local = ref num;
public ActionResult DetailSubFlow() { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow workFlow = new RoadFlow.Platform.WorkFlow(); string text = string.Format("&flowid1={0}&groupid={1}&appid={2}&tabid={3}&title={4}&flowid={5}&sender={6}&date1={7}&date2={8}&iframeid={9}&openerid={10}&taskid={11}", base.Request.QueryString["flowid"], base.Request.QueryString["groupid"], base.Request.QueryString["appid"], base.Request.QueryString["tabid"], MyExtensions.UrlEncode(base.Request.QueryString["title"]), base.Request.QueryString["flowid"], base.Request.QueryString["sender"], base.Request.QueryString["date1"], base.Request.QueryString["date2"], base.Request.QueryString["iframeid"], base.Request.QueryString["openerid"], base.Request.QueryString["taskid"]); base.ViewBag.flowid = base.Request.QueryString["flowid"]; base.ViewBag.groupid = base.Request.QueryString["groupid"]; base.ViewBag.displayModel = base.Request.QueryString["displaymodel"]; base.ViewBag.wfInstall = null; base.ViewBag.query = text; string text2 = base.Request.QueryString["taskid"]; string text4 = base.Request.QueryString["displaymodel"]; if (!MyExtensions.IsGuid(text2)) { return(View(new List <RoadFlow.Data.Model.WorkFlowTask>())); } RoadFlow.Data.Model.WorkFlowTask workFlowTask2 = workFlowTask.Get(MyExtensions.ToGuid(text2)); if (workFlowTask2 == null || MyExtensions.IsNullOrEmpty(workFlowTask2.SubFlowGroupID)) { return(View(new List <RoadFlow.Data.Model.WorkFlowTask>())); } List <RoadFlow.Data.Model.WorkFlowTask> list = new List <RoadFlow.Data.Model.WorkFlowTask>(); string[] array = workFlowTask2.SubFlowGroupID.Split(','); foreach (string text3 in array) { list.AddRange(workFlowTask.GetTaskList(Guid.Empty, MyExtensions.ToGuid(text3))); } if (list.Count == 0) { base.Response.Write("未找到任务"); base.Response.End(); return(null); } WorkFlowInstalled workFlowRunModel = workFlow.GetWorkFlowRunModel(list.FirstOrDefault().FlowID); base.ViewBag.wfInstall = workFlowRunModel; base.ViewBag.flowid = list.FirstOrDefault().FlowID.ToString(); return(View(list)); }
public ActionResult ShowForm() { string str = this.Request.QueryString["taskid"]; if (str.IsGuid()) { RoadFlow.Platform.WorkFlowTask workFlowTask1 = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Data.Model.WorkFlowTask workFlowTask2 = workFlowTask1.Get(str.ToGuid()); if (workFlowTask2 != null) { List <RoadFlow.Data.Model.WorkFlowTask> bySubFlowGroupId = workFlowTask1.GetBySubFlowGroupID(workFlowTask2.GroupID); if (bySubFlowGroupId.Count > 0) { RoadFlow.Data.Model.WorkFlowTask workFlowTask3 = bySubFlowGroupId.OrderByDescending <RoadFlow.Data.Model.WorkFlowTask, int>((Func <RoadFlow.Data.Model.WorkFlowTask, int>)(p => p.Sort)).FirstOrDefault <RoadFlow.Data.Model.WorkFlowTask>(); return((ActionResult)this.Redirect(("1" == this.Request.QueryString["ismobile"] ? (object)"Index_App" : (object)"Index").ToString() + "?flowid=" + (object)workFlowTask3.FlowID + "&stepid=" + (object)workFlowTask3.StepID + "&instanceid=" + workFlowTask3.InstanceID + "&taskid=" + (object)workFlowTask3.ID + "&groupid=" + (object)workFlowTask3.GroupID + "&appid=" + this.Request.QueryString["appid"] + "&display=1&tabid=" + this.Request.QueryString["tabid"])); } } } return((ActionResult)this.View()); }
public ActionResult ChangeStatus() { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Data.Model.WorkFlowTask workFlowTask2 = null; string empty = string.Empty; empty = base.Request.QueryString["taskid"]; if (MyExtensions.IsGuid(empty)) { workFlowTask2 = workFlowTask.Get(MyExtensions.ToGuid(empty)); } string text = ""; if (workFlowTask2 != null) { text = workFlowTask2.Status.ToString(); } base.ViewBag.Status = text; return(View()); }
public ActionResult InstanceManage() { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow workFlow = new RoadFlow.Platform.WorkFlow(); string text = base.Request.QueryString["flowid1"]; string text2 = base.Request.QueryString["groupid"]; WorkFlowInstalled workFlowRunModel = workFlow.GetWorkFlowRunModel(text); IOrderedEnumerable <RoadFlow.Data.Model.WorkFlowTask> orderedEnumerable = from p in workFlowTask.GetTaskList(MyExtensions.ToGuid(text), MyExtensions.ToGuid(text2)) orderby p.Sort select p; JsonData jsonData = new JsonData(); foreach (RoadFlow.Data.Model.WorkFlowTask item in orderedEnumerable) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("<a style=\"background:url(" + base.Url.Content("~/Images/ico/permission.gif") + ") no-repeat left center; padding-left:18px;\" href=\"javascript:void(0);\" onclick=\"cngStatus('" + item.ID + "');\">状态</a>"); if (MyExtensions.In(item.Status, new int[2] { 0, 1 })) { stringBuilder.Append("<a style=\"background:url(" + base.Url.Content("~/Images/ico/arrow_medium_lower_left.png") + ") no-repeat left center; padding-left:16px;\" href=\"javascript:void(0);\" onclick=\"designate('" + item.ID + "');\">指派</a>"); stringBuilder.Append("<a style=\"background:url(" + base.Url.Content("~/Images/ico/arrow_medium_lower_right.png") + ") no-repeat left center; padding-left:16px;\" href=\"javascript:void(0);\" onclick=\"goTo('" + item.ID + "');\">跳转</a>"); } JsonData jsonData2 = new JsonData(); jsonData2["id"] = item.ID.ToString(); jsonData2["StepID"] = workFlow.GetStepName(item.StepID, workFlowRunModel); jsonData2["SenderName"] = item.SenderName; jsonData2["ReceiveTime"] = MyExtensions.ToDateTimeStringS(item.ReceiveTime); jsonData2["ReceiveName"] = item.ReceiveName; jsonData2["CompletedTime1"] = (item.CompletedTime1.HasValue ? MyExtensions.ToDateTimeStringS(item.CompletedTime1.Value) : ""); jsonData2["Status"] = workFlowTask.GetStatusTitle(item.Status); jsonData2["Comment"] = item.Comment; jsonData2["Opation"] = stringBuilder.ToString(); jsonData.Add(jsonData2); } base.ViewBag.list = jsonData.ToJson(); return(View()); }
public ActionResult Detail() { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow workFlow = new RoadFlow.Platform.WorkFlow(); string text = base.Request.QueryString["flowid1"] ?? base.Request.QueryString["flowid"]; string text2 = base.Request.QueryString["groupid"]; string text3 = base.Request.QueryString["displaymodel"]; WorkFlowInstalled workFlowRunModel = workFlow.GetWorkFlowRunModel(text); IOrderedEnumerable <RoadFlow.Data.Model.WorkFlowTask> orderedEnumerable = from p in workFlowTask.GetTaskList(MyExtensions.ToGuid(text), MyExtensions.ToGuid(text2)) where p.Status != -1 orderby p.Sort, p.StepSort select p; string text4 = string.Format("&flowid1={0}&groupid={1}&appid={2}&tabid={3}&iframeid={4}&openerid={5}", text, text2, base.Request.QueryString["appid"], base.Request.QueryString["tabid"], base.Request.QueryString["iframeid"], base.Request.QueryString["openerid"]); string text5 = string.Format("&groupid={0}&appid={1}&tabid={2}&ismobile={3}", text2, base.Request.QueryString["appid"], base.Request.QueryString["tabid"], base.Request.QueryString["ismobile"]); base.ViewBag.flowid = text; base.ViewBag.groupid = text2; base.ViewBag.displayModel = text3; base.ViewBag.wfInstall = workFlowRunModel; base.ViewBag.query = text4; base.ViewBag.query1 = text5; JsonData jsonData = new JsonData(); foreach (RoadFlow.Data.Model.WorkFlowTask item in orderedEnumerable) { JsonData jsonData2 = new JsonData(); jsonData2["StepName"] = item.StepName; jsonData2["SenderName"] = item.SenderName; jsonData2["SenderTime"] = MyExtensions.ToDateTimeStringS(item.SenderTime); jsonData2["ReceiveName"] = item.ReceiveName; jsonData2["CompletedTime1"] = (item.CompletedTime1.HasValue ? MyExtensions.ToDateTimeStringS(item.CompletedTime1.Value) : ""); jsonData2["StatusTitle"] = workFlowTask.GetStatusTitle(item.Status); jsonData2["Comment"] = item.Comment; jsonData2["Note"] = item.Note; jsonData.Add(jsonData2); } base.ViewBag.list = (jsonData.IsArray ? jsonData.ToJson() : "{}"); return(View(orderedEnumerable)); }
/// /// </summary> /// <param name="userID"></param> /// <param name="key">表字段</param> /// <param name="where"></param> /// <returns></returns> public static Dictionary <KeyValuePair <string, RoadFlow.Data.Model.SQLFilterType>, object> GetAllTaskByUserId(Guid userID, string key, Dictionary <KeyValuePair <string, RoadFlow.Data.Model.SQLFilterType>, object> where) { RoadFlow.Platform.WorkFlowTask taskDb = new RoadFlow.Platform.WorkFlowTask(); string p = string.Empty; List <RoadFlow.Data.Model.WorkFlowTask> list = taskDb.GetTasks(userID, out p, "", "", "", "", "", "", 1); List <string> listStr = new List <string>(); foreach (var item in list) { listStr.Add(item.InstanceID); } if (listStr.Count > 0 && RoadFlow.Platform.UsersBLL.CurrentUserName != "系统管理员") { where.Add(new KeyValuePair <string, RoadFlow.Data.Model.SQLFilterType>(key, RoadFlow.Data.Model.SQLFilterType.IN), listStr); } else if (RoadFlow.Platform.UsersBLL.CurrentUserName != "系统管理员") { where.Add(new KeyValuePair <string, RoadFlow.Data.Model.SQLFilterType>(key, RoadFlow.Data.Model.SQLFilterType.EQUAL), "00000000-0000-0000-0000-000000000000"); } return(where); }
public ActionResult Designate(FormCollection collection) { Guid guid = default(Guid); if (MyExtensions.IsGuid(base.Request.QueryString["taskid"], ref guid)) { string idString = base.Request.Form["user"]; string text = base.Request.QueryString["openerid"]; RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); List <RoadFlow.Data.Model.Users> allUsers = new RoadFlow.Platform.Organize().GetAllUsers(idString); StringBuilder stringBuilder = new StringBuilder(); foreach (RoadFlow.Data.Model.Users item in allUsers) { workFlowTask.DesignateTask(guid, item); RoadFlow.Platform.Log.Add("管理员指派了流程任务", "将任务" + guid + "指派给了:" + item.Name + item.ID, RoadFlow.Platform.Log.Types.流程相关); stringBuilder.Append(item.Name); stringBuilder.Append(","); } string str = stringBuilder.ToString().TrimEnd(','); base.ViewBag.Script = "alert('已成功指派给:" + str + "!');new RoadUI.Window().reloadOpener();new RoadUI.Window().close();"; } return(View()); }
public string Delete() { string flowid = Request.QueryString["flowid1"]; string groupid = Request.QueryString["groupid"]; Guid fid, gid; if (flowid.IsGuid(out fid) && groupid.IsGuid(out gid)) { System.Text.StringBuilder delxml = new System.Text.StringBuilder(); var tasks = new RoadFlow.Platform.WorkFlowTask().GetTaskList(fid, gid); foreach (var task in tasks) { delxml.Append(task.Serialize()); } new RoadFlow.Platform.WorkFlowTask().DeleteInstance(fid, gid); RoadFlow.Platform.Log.Add("管理员删除了流程实例", delxml.ToString(), RoadFlow.Platform.Log.Types.流程相关); return("删除成功!"); } else { return("参数错误!"); } }
public ActionResult instanceList1(FormCollection collection) { RoadFlow.Platform.WorkFlowTask bworkFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow bworkFlow = new RoadFlow.Platform.WorkFlow(); string title = ""; string flowid = ""; string sender = ""; string date1 = ""; string date2 = ""; string status = ""; string typeid = Request.QueryString["typeid"]; if (collection != null) { title = Request.Form["Title"]; flowid = Request.Form["FlowID"]; sender = Request.Form["SenderID"]; date1 = Request.Form["Date1"]; date2 = Request.Form["Date2"]; status = Request.Form["Status"]; } else { title = Request.QueryString["Title"]; flowid = Request.QueryString["FlowID"]; sender = Request.QueryString["SenderID"]; date1 = Request.QueryString["Date1"]; date2 = Request.QueryString["Date2"]; status = Request.QueryString["Status"]; } string query1 = string.Format("&appid={0}&tabid={1}&title={2}&flowid={3}&sender={4}&date1={5}&date2={6}&status={7}&typeid={8}", Request.QueryString["appid"], Request.QueryString["tabid"], title.UrlEncode(), flowid, sender, date1, date2, status, typeid); string query = string.Format("{0}&pagesize={1}&pagenumber={2}", query1, Request.QueryString["pagesize"], Request.QueryString["pagenumber"]); string pager; List <SelectListItem> statusItems = new List <SelectListItem>(); statusItems.Add(new SelectListItem() { Text = "==全部==", Value = "0", Selected = "0" == status }); statusItems.Add(new SelectListItem() { Text = "未完成", Value = "1", Selected = "1" == status }); statusItems.Add(new SelectListItem() { Text = "已完成", Value = "2", Selected = "2" == status }); //可管理的流程ID数组 var flows = bworkFlow.GetInstanceManageFlowIDList(RoadFlow.Platform.Users.CurrentUserID, typeid); List <Guid> flowids = new List <Guid>(); foreach (var flow in flows.OrderBy(p => p.Value)) { flowids.Add(flow.Key); } Guid[] manageFlows = flowids.ToArray(); string flowOptions = bworkFlow.GetOptions(flows, typeid, flowid); var taskList = bworkFlowTask.GetInstances(manageFlows, new Guid[] { }, sender.IsNullOrEmpty() ? new Guid[] { } : new Guid[] { sender.Replace(RoadFlow.Platform.Users.PREFIX, "").ToGuid() }, out pager, query1, title, flowid, date1, date2, status.ToInt()); ViewBag.Query = query; ViewBag.Pager = pager; ViewBag.StatusItems = statusItems; ViewBag.Title1 = title; ViewBag.FlowOptions = flowOptions; ViewBag.Sender = sender; ViewBag.Date1 = date1; ViewBag.Date2 = date2; return(View(taskList)); }
public string QueryWaitList() { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow workFlow = new RoadFlow.Platform.WorkFlow(); RoadFlow.Platform.AppLibrary appLibrary = new RoadFlow.Platform.AppLibrary(); string text = base.Request.Form["title"]; string flowid = base.Request.Form["flowid"]; string sender = base.Request.Form["sender"]; string date = base.Request.Form["date1"]; string date2 = base.Request.Form["date2"]; string text2 = base.Request.Form["sidx"]; string text3 = base.Request.Form["sord"]; string text4 = ""; int pageSize = RoadFlow.Utility.Tools.GetPageSize(); int pageNumber = RoadFlow.Utility.Tools.GetPageNumber(); long count; List <RoadFlow.Data.Model.WorkFlowTask> obj = workFlowTask.GetTasks(order: (MyExtensions.IsNullOrEmpty(text2) ? "ReceiveTime" : text2) + " " + (MyExtensions.IsNullOrEmpty(text3) ? "asc" : text3), userID: MyController.CurrentUserID, count: out count, size: pageSize, number: pageNumber, title: MyExtensions.Trim1(text), flowid: flowid, sender: sender, date1: date, date2: date2); JsonData jsonData = new JsonData(); Guid currentUserID = MyController.CurrentUserID; foreach (RoadFlow.Data.Model.WorkFlowTask item in obj) { RoadFlow.Data.Model.AppLibrary byCode = appLibrary.GetByCode(item.FlowID.ToString()); int num = 0; int num2 = 1000; int num3 = 500; if (byCode != null) { num = byCode.OpenMode; num2 = (byCode.Width.HasValue ? byCode.Width.Value : 1000); num3 = (byCode.Height.HasValue ? byCode.Height.Value : 500); } WorkFlowInstalled workFlowRunModel = workFlow.GetWorkFlowRunModel(item.FlowID); JsonData jsonData2 = new JsonData(); jsonData2["id"] = item.ID.ToString(); jsonData2["FlowName"] = workFlow.GetFlowName(item.FlowID); jsonData2["StepName"] = item.StepName; jsonData2["Note"] = item.Note; jsonData2["ReceiveTime"] = MyExtensions.ToDateTimeString(item.ReceiveTime); jsonData2["SenderName"] = item.SenderName; if (item.CompletedTime.HasValue) { if (item.CompletedTime.Value < DateTimeNew.get_Now()) { jsonData2["StatusTitle"] = "<i title=\"已过期\" class=\"fa fa-bell\" style=\"color:red;font-weight:bold;\"><span title=\"要求完成时间:" + MyExtensions.ToDateTimeString(item.CompletedTime.Value) + "\">已过期</span></i>"; } else if ((item.CompletedTime.Value - DateTimeNew.get_Now()).Days <= 3) { jsonData2["StatusTitle"] = "<i title=\"即将过期\" class=\"fa fa-bell\" style=\"color:#fd8a02;font-weight:bold;\"><span title=\"要求完成时间:" + MyExtensions.ToDateTimeString(item.CompletedTime.Value) + "\">即将到期</span></i>"; } else { jsonData2["StatusTitle"] = "<i title=\"正常\" class=\"fa fa-bell\" style=\"color:#666;font-weight:bold;\"></i><span title=\"要求完成时间:" + MyExtensions.ToDateTimeString(item.CompletedTime.Value) + "\">正常</span></i>"; } } else { jsonData2["StatusTitle"] = "<i title=\"正常\" class=\"fa fa-bell\" style=\"color:#666;font-weight:bold;\"></i><span title=\"要求完成时间:无时间要求\">正常</span></i>"; } jsonData2["Title"] = "<a href=\"javascript:void(0);\" class=\"blue\" onclick=\"openTask('/WorkFlowRun/Index?" + $"flowid={item.FlowID}&stepid={item.StepID}&instanceid={item.InstanceID}&taskid={item.ID}&groupid={item.GroupID}&appid={text4}" + "','" + MyExtensions.UrlEncode(MyExtensions.RemoveHTML(item.Title)) + "','" + item.ID + "'," + num + "," + num2 + "," + num3 + ");return false;\">" + MyExtensions.HtmlEncode(item.Title) + "</a>"; string text5 = "<a href=\"javascript:void(0);\" class=\"editlink\" onclick=\"openTask('/WorkFlowRun/Index?" + $"flowid={item.FlowID}&stepid={item.StepID}&instanceid={item.InstanceID}&taskid={item.ID}&groupid={item.GroupID}&appid={text4}" + "','" + MyExtensions.UrlEncode(MyExtensions.RemoveHTML(item.Title)) + "','" + item.ID + "'," + num + "," + num2 + "," + num3 + ");return false;\">处理</a> <a class=\"viewlink\" href=\"javascript:void(0);\" onclick=\"detail('" + item.FlowID + "','" + item.GroupID + "','" + item.ID + "');return false;\">查看</a>"; if (workFlowRunModel != null && workFlowRunModel.FirstStepID == item.StepID && item.SenderID == currentUserID) { text5 = text5 + " <a class=\"deletelink\" href=\"javascript:void(0);\" onclick=\"delTask('" + item.FlowID + "','" + item.GroupID + "','" + item.ID + "');return false;\">作废</a>"; } jsonData2["Opation"] = text5; jsonData.Add(jsonData2); } return("{\"userdata\":{\"total\":" + count + ",\"pagesize\":" + pageSize + ",\"pagenumber\":" + pageNumber + "},\"rows\":" + jsonData.ToJson() + "}"); }
public string QueryInstanceList() { RoadFlow.Platform.WorkFlowTask workFlowTask = new RoadFlow.Platform.WorkFlowTask(); RoadFlow.Platform.WorkFlow workFlow = new RoadFlow.Platform.WorkFlow(); string text = base.Request.Form["Title"]; string flowid = base.Request.Form["FlowID"]; string text2 = base.Request.Form["SenderID"]; string date = base.Request.Form["Date1"]; string date2 = base.Request.Form["Date2"]; string text3 = base.Request.Form["Status"]; string text4 = base.Request.Form["sidx"]; string text5 = base.Request.Form["sord"]; string typeID = base.Request.Form["typeid"]; string text6 = base.Request.Form["appid"]; Dictionary <Guid, string> instanceManageFlowIDList = workFlow.GetInstanceManageFlowIDList(RoadFlow.Platform.Users.CurrentUserID, typeID); List <Guid> list = new List <Guid>(); foreach (KeyValuePair <Guid, string> item in from p in instanceManageFlowIDList orderby p.Value select p) { list.Add(item.Key); } Guid[] flowID = list.ToArray(); int pageSize = RoadFlow.Utility.Tools.GetPageSize(); int pageNumber = RoadFlow.Utility.Tools.GetPageNumber(); string order = (MyExtensions.IsNullOrEmpty(text4) ? "SenderTime" : text4) + " " + (MyExtensions.IsNullOrEmpty(text5) ? "asc" : text5); long count; DataTable instances = workFlowTask.GetInstances1(flowID, new Guid[0], MyExtensions.IsNullOrEmpty(text2) ? new Guid[0] : new Guid[1] { MyExtensions.ToGuid(text2.Replace("u_", "")) }, out count, pageSize, pageNumber, MyExtensions.Trim1(text), flowid, date, date2, MyExtensions.ToInt(text3), order); JsonData jsonData = new JsonData(); foreach (DataRow row in instances.Rows) { RoadFlow.Data.Model.WorkFlowTask lastTask = workFlowTask.GetLastTask(MyExtensions.ToGuid(row["FlowID"].ToString()), MyExtensions.ToGuid(row["GroupID"].ToString())); if (lastTask != null) { string flowName; string stepName = workFlow.GetStepName(lastTask.StepID, lastTask.FlowID, out flowName); string text7 = $"flowid={lastTask.FlowID}&stepid={lastTask.StepID}&instanceid={lastTask.InstanceID}&taskid={lastTask.ID}&groupid={lastTask.GroupID}&appid={text6}&display=1"; StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("<a style=\"margin-right:5px; background:url(" + base.Url.Content("~/Images/ico/mouse.png") + ") no-repeat left center; padding-left:18px;\" href=\"javascript:void(0);\" onclick=\"manage('" + lastTask.FlowID.ToString() + "','" + lastTask.GroupID.ToString() + "');\">管理</a>"); if (MyExtensions.In(lastTask.Status, new int[3] { -1, 0, 1 })) { stringBuilder.Append("<a style=\"background:url(" + base.Url.Content("~/Images/ico/trash.gif") + ") no-repeat left center; padding-left:18px;\" href=\"javascript:void(0);\" onclick=\"delete1('" + lastTask.FlowID.ToString() + "','" + lastTask.GroupID.ToString() + "');\">删除</a>"); } JsonData jsonData2 = new JsonData(); jsonData2["id"] = lastTask.ID.ToString(); jsonData2["Title"] = "<a href=\"javascript:void(0);\" onclick=\"openTask('/WorkFlowRun/Index?" + text7 + "','" + MyExtensions.UrlEncode(MyExtensions.RemoveHTML(lastTask.Title)) + "','" + lastTask.ID + "');return false;\" class=\"blue\">" + MyExtensions.HtmlEncode(lastTask.Title) + "</a>"; jsonData2["FlowName"] = flowName; jsonData2["StepName"] = stepName; jsonData2["ReceiveName"] = lastTask.ReceiveName; jsonData2["ReceiveTime"] = MyExtensions.ToDateTimeStringS(lastTask.ReceiveTime); jsonData2["StatusTitle"] = lastTask.Status; jsonData2["Opation"] = stringBuilder.ToString(); jsonData.Add(jsonData2); } } return("{\"userdata\":{\"total\":" + count + ",\"pagesize\":" + pageSize + ",\"pagenumber\":" + pageNumber + "},\"rows\":" + jsonData.ToJson() + "}"); }
public ActionResult FlowCopyFor(FormCollection collection) { RoadFlow.Platform.WorkFlow workFlow = new RoadFlow.Platform.WorkFlow(); RoadFlow.Platform.WorkFlowTask workFlowTask1 = new RoadFlow.Platform.WorkFlowTask(); string str1 = this.Request.QueryString["flowid"]; string stepid = this.Request.QueryString["stepid"]; string str2 = this.Request.QueryString["groupid"]; string str3 = this.Request.QueryString["instanceid"]; string flowID = str1; int num = 1; WorkFlowInstalled workFlowRunModel = workFlow.GetWorkFlowRunModel(flowID, num != 0); if (workFlowRunModel == null) { this.Response.Write("未找到流程运行实体"); this.Response.End(); return((ActionResult)null); } if (workFlowRunModel.Steps.Where <Step>((Func <Step, bool>)(p => p.ID == stepid.ToGuid())).Count <Step>() == 0) { this.Response.Write("未找到当前步骤"); this.Response.End(); return((ActionResult)null); } RoadFlow.Data.Model.WorkFlowTask workFlowTask2 = workFlowTask1.Get(this.Request.QueryString["taskid"].ToGuid()); if (workFlowTask2 == null) { this.Response.Write("当前任务为空,请先保存再抄送!"); this.Response.End(); return((ActionResult)null); } if (collection != null) { List <RoadFlow.Data.Model.WorkFlowTask> taskList = workFlowTask1.GetTaskList(workFlowTask2.ID, true); List <RoadFlow.Data.Model.Users> allUsers = new RoadFlow.Platform.Organize().GetAllUsers(this.Request.Form["user"] ?? ""); StringBuilder stringBuilder = new StringBuilder(); foreach (RoadFlow.Data.Model.Users users in allUsers) { RoadFlow.Data.Model.Users user = users; if (taskList.Find((Predicate <RoadFlow.Data.Model.WorkFlowTask>)(p => p.ReceiveID == user.ID)) == null) { Step step = workFlowRunModel.Steps.Where <Step>((Func <Step, bool>)(p => p.ID == this.Request.QueryString["stepid"].ToGuid())).First <Step>(); RoadFlow.Data.Model.WorkFlowTask model = new RoadFlow.Data.Model.WorkFlowTask(); if (step.WorkTime > Decimal.Zero) { model.CompletedTime = new DateTime?(DateTimeNew.Now.AddHours((double)step.WorkTime)); } model.FlowID = workFlowTask2.FlowID; model.GroupID = workFlowTask2.GroupID; model.ID = Guid.NewGuid(); model.Type = 5; model.InstanceID = workFlowTask2.InstanceID; model.Note = "抄送任务"; model.PrevID = workFlowTask2.PrevID; model.PrevStepID = workFlowTask2.PrevStepID; model.ReceiveID = user.ID; model.ReceiveName = user.Name; model.ReceiveTime = DateTimeNew.Now; model.SenderID = workFlowTask2.ReceiveID; model.SenderName = workFlowTask2.ReceiveName; model.SenderTime = model.ReceiveTime; model.Status = 0; model.StepID = workFlowTask2.StepID; model.StepName = workFlowTask2.StepName; model.Sort = workFlowTask2.Sort; model.Title = workFlowTask2.Title; workFlowTask1.Add(model); stringBuilder.Append(model.ReceiveName); stringBuilder.Append(","); } } // ISSUE: reference to a compiler-generated field if (WorkFlowRunController.\u003C\u003Eo__18.\u003C\u003Ep__0 == null) { // ISSUE: reference to a compiler-generated field WorkFlowRunController.\u003C\u003Eo__18.\u003C\u003Ep__0 = CallSite <Func <CallSite, object, string, object> > .Create(Binder.SetMember(CSharpBinderFlags.None, "script", typeof(WorkFlowRunController), (IEnumerable <CSharpArgumentInfo>) new CSharpArgumentInfo[2] { CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, (string)null), CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, (string)null) })); } // ISSUE: reference to a compiler-generated field // ISSUE: reference to a compiler-generated field object obj = WorkFlowRunController.\u003C\u003Eo__18.\u003C\u003Ep__0.Target((CallSite)WorkFlowRunController.\u003C\u003Eo__18.\u003C\u003Ep__0, this.ViewBag, "alert('成功抄送给:" + stringBuilder.ToString().TrimEnd(',') + "');new RoadUI.Window().close();"); } return((ActionResult)this.View()); }