/// <summary> /// 获取当前用户的待办列表 /// </summary> /// <param name="userNo"></param> /// <returns></returns> public static string GetEmpWorks(string userNo, string[][] queryParams, int?page, int?pageSize) { UserLogin(userNo); DataTable table = BP.WF.Dev2Interface.DB_GenerEmpWorksOfDataTable(); table.Columns.Add("WFStateText"); table.Columns.Add("TitleUrl"); table.Columns.Add("FormUrl"); table.Columns.Add("BusinessStartTime"); table.Columns.Add("BusinessEndTime"); foreach (DataRow row in table.Rows) { var workID = row["WorkID"].ToString(); var fid = row["FID"].ToString(); var pWorkID = row["PWorkID"].ToString(); var url = "/WF/MyFlow.aspx?FK_Flow=" + row["FK_Flow"] + "&FK_Node=" + row["FK_Node"] + "&FID=" + row["FID"] + "&WorkID=" + row["WorkID"] + "&AtPara=" + row["AtPara"] + "&UserNo=" + userNo; row["TitleUrl"] = url; string node = row["FK_Node"] + ""; BP.WF.Node wfNode = new BP.WF.Node(); wfNode.NodeID = int.Parse(node); wfNode.Retrieve(); row["FormUrl"] = wfNode.FormUrl; string businessStartTime; string businessEndTime; GetBusniessStartAndEndTime(userNo, wfNode.FormUrl, workID, fid, pWorkID, out businessStartTime, out businessEndTime); row["BusinessStartTime"] = businessStartTime; row["BusinessEndTime"] = businessEndTime; if (!string.IsNullOrEmpty(businessEndTime)) { row["SDT"] = businessEndTime; } string text = ""; switch (row["WFState"] + "") { case "2": text = "运行中"; break; case "3": text = "已完成"; break; case "4": text = "挂起"; break; case "5": text = "退回"; break; case "6": text = "移交"; break; case "7": text = "删除(逻辑)"; break; case "8": text = "加签"; break; case "9": text = "冻结"; break; case "10": text = "批处理"; break; case "11": text = "加签回复"; break; default: break; } row["WFStateText"] = text; } DataTable filterTable = FilterTable(queryParams, table); DataTable finalTable = PageTable(page, pageSize, filterTable); string xml = WriteTableToXml(finalTable, filterTable.Rows.Count); return(xml); }