public static void Delegate(IWfBox box, IWfDialog wfDlg) { IDictionary<string, WorkItem> workItems = null; WorkItem firstSelectedWorkItem = null; try { DataRowView[] selectedRows = GetSelectedRows(box.DataSource as DataView); workItems = GetWorkItems(box, selectedRows); firstSelectedWorkItem = GetFirstSelectedWorkItem(box); } catch (NotSelectException) { } wfDlg.WorkItem = firstSelectedWorkItem; if (wfDlg.ShowDialog() == DialogResult.OK) { WfLogicalAbnormalContextData contextData = new WfLogicalAbnormalContextData(); wfDlg.SetContextData(contextData); WfUtil.SetAbnormalContextData(contextData); WorkflowService.WfcInstance.Delegate(workItems); box.RefreshData(); WfUtil.FreeAbnormalContextData(); if (firstSelectedWorkItem == null) { WorkflowService.IsMyAllDelegated = true; } } }
public static void AddDataTable(IWfBox box, DataTable table) { table.TableName = box.BoxName; AddTable(ref table); DataView defaultView = table.DefaultView; WfViewHelper.DataViewChanged(defaultView, null); defaultView.ListChanged += new ListChangedEventHandler(WfViewHelper.DataViewChanged); }
private void AcceptAndOpenView(IWfBox box, IWfView view, DataRowView row, int index) { int[] numArray; WorkItem workItem = BoxHelper.GetWorkItem(row, box); if (this.accept) { WorkflowService.DelegateEvent(workItem, new WfClientAPIHandler(WorkflowService.WfcInstance.Accept)); } DataRowView[] navigationDataRowViews = BoxHelper.GetNavigationDataRowViews(row, index, out numArray); WfViewHelper.OpenView(view, workItem, row, navigationDataRowViews, numArray, this.CanEdit); }
protected void Run(IWfBox box, int index) { AbstractBoxCommand.WaitDialogHelper.Show(); try { DataRowView dataRowView = BoxHelper.GetDataRowView(box, index); WfView view = new WfView(); view.WfBox = box; view.Navigate += new WfViewNavigationHandle(this.OpenView); this.OpenView(box, view, dataRowView, this.Index); } finally { AbstractBoxCommand.WaitDialogHelper.Close(); } }
protected virtual void OpenView(IWfBox box, IWfView view, DataRowView row, int index) { WfViewHelper.OpenView(box, view, row, index, this.CanEdit); }
public static void DelegateEvent(IWfBox box, DataRowView row, WfClientAPIHandler handle) { WorkItem workItem = GetWorkItem(row, box); Dictionary<string, WorkItem> workItems = new Dictionary<string, WorkItem>(1); workItems.Add(workItem.Id, workItem); handle(workItems); if (row.Row.RowState != DataRowState.Deleted) { row.Delete(); } }
private static IDictionary<string, WorkItem> GetWorkItems(IWfBox box, DataRowView[] rows) { IDictionary<string, WorkItem> dictionary = new Dictionary<string, WorkItem>(); foreach (DataRowView view in rows) { WorkItem workItem = GetWorkItem(view, box); dictionary.Add(workItem.Id, workItem); } return dictionary; }
public static void CreateProcessAndAccept(IWfBox box, Prodef prodef, int num) { string id = prodef.Id; WorkflowService.WfcInstance.CreateWfProcessAndAccept(id, num); }
private static WorkItem GetFirstSelectedWorkItem(IWfBox box) { int firstSelectedIndex = GetFirstSelectedIndex(box); return GetWorkItem(GetDataRowView(box, firstSelectedIndex), box); }
public static void PassToNext(IWfBox box, IWfDialog wfDlg) { DataRowView[] selectedRows = GetSelectedRows(box.DataSource as DataView); if (LoggingService.IsInfoEnabled) { LoggingService.InfoFormatted("选中了{0}件可转出的业务", new object[] { selectedRows.Length }); } PassToNext(GetWorkItems(box, selectedRows), selectedRows, wfDlg); }
public static void DelegateEvent(IWfBox box, IWfDialog wfDlg, WfClientAPIHandler handle, string[] batchField) { try { DataRowView[] selectedRows = GetSelectedRows(box.DataSource as DataView, batchField); IDictionary<string, WorkItem> workItems = GetWorkItems(box, selectedRows); IEnumerator<KeyValuePair<string, WorkItem>> enumerator = workItems.GetEnumerator(); enumerator.MoveNext(); KeyValuePair<string, WorkItem> current = enumerator.Current; wfDlg.WorkItem = current.Value; if (wfDlg.ShowDialog() == DialogResult.OK) { WfLogicalAbnormalContextData contextData = new WfLogicalAbnormalContextData(); wfDlg.SetContextData(contextData); WfUtil.SetAbnormalContextData(contextData); DelegateEvent(selectedRows, workItems, handle); WfUtil.FreeAbnormalContextData(); } } finally { wfDlg.Close(); } }
private static void DelegateEvent(IWfBox box, DataRow row, WfClientAPIHandler handle, string idField) { WorkItem workItem = GetWorkItem(row, idField); Dictionary<string, WorkItem> workItems = new Dictionary<string, WorkItem>(1); workItems.Add(workItem.Id, workItem); handle(workItems); box.DeleteRows(new DataRow[] { row }); }
public static void DelegateEvent(IWfBox box, WfClientAPIHandler handle, string[] batchField) { DataRow[] selectedRows = box.GetSelectedRows(batchField); if (selectedRows.Length > 0) { IDictionary<string, WorkItem> workItems = GetWorkItems(selectedRows, box.IdField); DelegateEvent(box, selectedRows, workItems, handle); } }
public static int GetFirstSelectedIndex(IWfBox box) { DataView dataSource = (DataView) box.DataSource; DataRowView view2 = null; for (int i = 0; i < dataSource.Count; i++) { view2 = dataSource[i]; if (view2["sel"].ToString().Equals("True")) { return i; } } throw new NotSelectException(); }
public static DataRowView GetDataRowView(IWfBox box, int index) { DataView dataSource = box.DataSource as DataView; if ((index > -1) && (index < dataSource.Count)) { return GetDataRowView(dataSource, index); } return null; }
public static DataView GetData(IWfBox box, string nameSpace, string queryName, string[] vals) { DataTable rs = null; if (string.IsNullOrEmpty(nameSpace)) { rs = WorkflowService.GetRs(box.QueryName, vals); } else { rs = WorkflowService.GetRs(nameSpace, queryName, vals); } rs.AcceptChanges(); AddDataTable(box, rs); return rs.DefaultView; }
public static DataView GetData(IWfBox box, string[] vals) { return GetData(box, box.DAONameSpace, box.QueryName, vals); }
public static DataView GetData(IWfBox box) { string[] queryParameters = GetQueryParameters(box.QueryParameters); return GetData(box, queryParameters); }
public static void DelegateEvent(IWfBox box, WfClientAPIHandler handle, string[] batchField) { DataRowView[] selectedRows = GetSelectedRows(box.DataSource as DataView, batchField); IDictionary<string, WorkItem> workItems = GetWorkItems(box, selectedRows); DelegateEvent(selectedRows, workItems, handle); }
public static void DelegateEvent(IWfBox box, WfClientAPIHandler handle) { DelegateEvent(box, handle, null); }
public static void DelegateEvent(IWfBox box, IWfDialog wfDlg, WfClientAPIHandler handle) { DelegateEvent(box, wfDlg, handle, null); }
public static DataTable GetBoxItems(IWfBox box) { string[] queryParameterValues = GetQueryParameterValues(box.QueryParameters); DataTable rs = GetRs(box.QueryName, queryParameterValues); rs.Columns.Add("sel", typeof(bool)); return rs; }
public static WorkItem GetWorkItem(DataRowView row, IWfBox box) { WorkItem item = new WorkItem(); item.ActdefId = GetColumnValue("ACTDEF_ID", row); item.ProinstId = GetColumnValue("PROINST_ID", row); item.ProinstName = GetColumnValue("PROINST_NAME", row); item.ActinstId = GetColumnValue("ACTINST_ID", row); item.ActinstName = GetColumnValue("ACTINST_NAME", row); item.AssignId = GetColumnValue("ASSIGN_ID", row); item.AbnormalAuditId = GetColumnValue("ABNORMALAUDIT_ID", row); item.ProjectId = GetColumnValue("PROJECT_ID", row); item.ProdefId = GetColumnValue("PRODEF_ID", row); if (box != null) { item.Id = GetColumnValue(box.IdField, row); } return item; }
private static void DelegateEvent(IWfBox box, DataRow[] rows, IDictionary<string, WorkItem> workItems, WfClientAPIHandler handle) { handle(workItems); box.DeleteRows(rows); }
public static bool IsSelected(IWfBox box) { DataView dataSource = (DataView) box.DataSource; DataRowView view2 = null; for (int i = 0; i < dataSource.Count; i++) { view2 = dataSource[i]; if (view2["sel"].ToString().Equals("True")) { return true; } } return false; }