changes to support approval process

This commit is contained in:
Rich 2012-01-23 13:56:23 +00:00
parent 58454f44aa
commit 21ba5556f7
2 changed files with 108 additions and 12 deletions

View File

@ -303,12 +303,12 @@ namespace Volian.Controls.Library
cnt.UserID = Volian.Base.Library.VlnSettings.UserID;
cnt.Save();
}
using (Item itm = Item.Get(startitm.ItemID))
{
itm.DTS = DateTime.Now;
itm.UserID = Volian.Base.Library.VlnSettings.UserID;
itm.Save();
}
//using (Item itm = Item.Get(startitm.ItemID))
//{
// itm.DTS = DateTime.Now;
// itm.UserID = Volian.Base.Library.VlnSettings.UserID;
// itm.Save();
//}
startitm = (startitm.NextItem != null && startitm.NextItems.Count > 0 ? startitm.NextItems[0] : null);
}
msgBox = string.Format("All Step Types at this level were changed to {0}", listBoxStepTypes.Items[listBoxStepTypes.SelectedIndex]);
@ -322,12 +322,12 @@ namespace Volian.Controls.Library
cnt1.UserID = Volian.Base.Library.VlnSettings.UserID;
cnt1.Save();
}
using (Item itm1 = Item.Get(CurItemInfo.ItemID))
{
itm1.DTS = DateTime.Now;
itm1.UserID = Volian.Base.Library.VlnSettings.UserID;
itm1.Save();
}
//using (Item itm1 = Item.Get(CurItemInfo.ItemID))
//{
// itm1.DTS = DateTime.Now;
// itm1.UserID = Volian.Base.Library.VlnSettings.UserID;
// itm1.Save();
//}
msgBox = string.Format("This Step Type was changed to {0}", listBoxStepTypes.Items[listBoxStepTypes.SelectedIndex]);
}
topEditItem.SetAllTabs();

View File

@ -11,6 +11,8 @@ using System.Reflection;
using Csla;
using Csla.Validation;
using VEPROMS.CSLA.Library;
using System.IO;
using Volian.Base.Library;
namespace Volian.Controls.Library
{
@ -330,6 +332,26 @@ namespace Volian.Controls.Library
{
if (PrintAllProcedures != null) PrintAllProcedures(sender, args);
}
public event vlnTreeViewEvent ApproveProcedure;
private void OnApproveProcedure(object sender, vlnTreeEventArgs args)
{
if (ApproveProcedure != null) ApproveProcedure(sender, args);
}
public event vlnTreeViewEvent ApproveAllProcedures;
private void OnApproveAllProcedures(object sender, vlnTreeEventArgs args)
{
if (ApproveAllProcedures != null) ApproveAllProcedures(sender, args);
}
public event vlnTreeViewEvent ApproveSomeProcedures;
private void OnApproveSomeProcedures(object sender, vlnTreeEventArgs args)
{
if (ApproveSomeProcedures != null) ApproveSomeProcedures(sender, args);
}
public event vlnTreeViewEvent ReportAllProceduresInconsistencies;
private void OnReportAllProceduresInconsistencies(object sender, vlnTreeEventArgs args)
{
if (ReportAllProceduresInconsistencies != null) ReportAllProceduresInconsistencies(sender, args);
}
public event vlnTreeViewEvent NodeNew;
private void OnNodeNew(object sender, vlnTreeEventArgs args)
{
@ -424,6 +446,9 @@ namespace Volian.Controls.Library
{
cm.MenuItems.Add("New Procedure", new EventHandler(mi_Click));
cm.MenuItems.Add("Print All Procedures", new EventHandler(mi_Click));
cm.MenuItems.Add("Approve All Procedures", new EventHandler(mi_Click));
cm.MenuItems.Add("Approve Some Procedures", new EventHandler(mi_Click));
cm.MenuItems.Add("Report All Procedures Inconsistencies", new EventHandler(mi_Click));
}
else if (tn.VEObject as ProcedureInfo != null) // Procs can only contain sections
{
@ -433,6 +458,8 @@ namespace Volian.Controls.Library
cm.MenuItems.Add("Insert Procedure After", new EventHandler(mi_Click));
cm.MenuItems.Add("New Section", new EventHandler(mi_Click));
cm.MenuItems.Add("Print", new EventHandler(mi_Click));
cm.MenuItems.Add("Approve", new EventHandler(mi_Click));
AddApprovedRevisions(cm.MenuItems, pri);
}
else if (tn.VEObject as SectionInfo != null)
{
@ -505,6 +532,63 @@ namespace Volian.Controls.Library
}
}
private void AddApprovedRevisions(Menu.MenuItemCollection menuItemCollection, ProcedureInfo pri)
{
RevisionInfoList ril = RevisionInfoList.GetByItemID(pri.ItemID);
if (ril.Count == 0) return;
MenuItem mi = menuItemCollection.Add("Versions");
foreach (RevisionInfo ri in ril)
{
MenuItem mir = mi.MenuItems.Add(ri.ToString());
mir.Tag = ri;
mir.Click += new EventHandler(ApprovedRevision_Click);
//added jcb 20111031
MenuItem mirp = mir.MenuItems.Add("View Procedure");
mirp.Tag = ri;
mirp.Click += new EventHandler(ApprovedRevision_Click);
MenuItem mirs = mir.MenuItems.Add("View Summary of Changes");
mirs.Tag = ri;
mirs.Click += new EventHandler(SummaryOfChanges_Click);
//end added jcb 20111031
}
}
void ApprovedRevision_Click(object sender, EventArgs e)
{
MenuItem mi = sender as MenuItem;
if (mi == null) return;
RevisionInfo ri = mi.Tag as RevisionInfo;
System.Diagnostics.Process pp = System.Diagnostics.Process.Start(GetDocPdf(ri));
}
void SummaryOfChanges_Click(object sender, EventArgs e)
{
MenuItem mi = sender as MenuItem;
if (mi == null) return;
RevisionInfo ri = mi.Tag as RevisionInfo;
System.Diagnostics.Process pps = System.Diagnostics.Process.Start(GetDocSummaryPdf(ri));
}
private string GetDocPdf(RevisionInfo ri)
{
string fileName = Volian.Base.Library.TmpFile.CreateFileName(ItemInfo.Get(ri.ItemID).DisplayNumber);
FileInfo fi = new FileInfo(VlnSettings.TemporaryFolder + @"\" + fileName);
FileStream fs = fi.Create();
byte[] myPdf = ri.LatestVersion.PDF;
if (myPdf != null) fs.Write(myPdf, 0, myPdf.Length);
fs.Close();
return VlnSettings.TemporaryFolder + @"\" + fileName;
}
private string GetDocSummaryPdf(RevisionInfo ri)
{
string fileName = Volian.Base.Library.TmpFile.CreateFileName(ItemInfo.Get(ri.ItemID).DisplayNumber + " Summary of Changes");
FileInfo fi = new FileInfo(VlnSettings.TemporaryFolder + @"\" + fileName);
FileStream fs = fi.Create();
byte[] myPdf = ri.LatestVersion.SummaryPDF;
if (myPdf != null) fs.Write(myPdf, 0, myPdf.Length);
fs.Close();
return VlnSettings.TemporaryFolder + @"\" + fileName;
}
private bool AddToInsertMenu(ItemInfo ii, int ba) // 0 = before, 1 = after
{
// set up insert buttons based on format
@ -672,6 +756,18 @@ namespace Volian.Controls.Library
case "Print All Procedures":
OnPrintAllProcedures(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0));
break;
case "Approve":
OnApproveProcedure(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0));
break;
case "Approve All Procedures":
OnApproveAllProcedures(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0));
break;
case "Approve Some Procedures":
OnApproveSomeProcedures(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0));
break;
case "Report All Procedures Inconsistencies":
OnReportAllProceduresInconsistencies(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0));
break;
default:
MessageBox.Show(string.Format("Unrecognized Menu Item '{0}'", mi.Text));
break;