⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 doidiograph.aspx.cs

📁 很不错的公文流转系统
💻 CS
字号:
using System; 
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace OI.Document
{
	/// <summary>
	/// doIdiograph 的摘要说明。
	/// </summary>
	public class doIdiograph : OI.PageBase
	{
		protected System.Web.UI.WebControls.Label LabelTitle;
		protected System.Web.UI.WebControls.Label LabelSecret;
		protected System.Web.UI.WebControls.Label LabelType;
		protected System.Web.UI.WebControls.Label LabelExigDegree;
		protected System.Web.UI.WebControls.Label LabelContent;
		protected System.Web.UI.WebControls.RadioButtonList isAgree;
		protected System.Web.UI.WebControls.TextBox idea;
		protected System.Web.UI.WebControls.ImageButton OK;
		protected System.Web.UI.WebControls.TextBox doucumentid;
		protected System.Web.UI.WebControls.TextBox CuenceNodeId;
		private OI.DatabaseOper .DatabaseConnect dc;
	
		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
			if (Session["userid"]==null)
			{
				Response.Write ("<script>alert('超时,请重新登录');top.location.href='../userpass.aspx';</script>");
				Response.End ();
			}
			dc=new OI.DatabaseOper.DatabaseConnect ();
			if(!this.IsPostBack )
			{
				try
				{
					doucumentid.Text =Request.Params ["documentid"].ToString ();
				}
				catch
				{
					doucumentid.Text="17";
				}
				this.BindDisp ();
			}
		}
		private void BindDisp()
		{
			string sql="SELECT dbo.Document.Title, dbo.Document.Content, dbo.Document.CurrentStepID, "+
				"dbo.ExigenceDegree.ExigenceDegreeName, dbo.SecretGread.SecretGreadName, "+
				"dbo.VIEW_DocumentType.DocumentTypeName "+
				"FROM dbo.Document INNER JOIN "+
				"dbo.ExigenceDegree ON "+
				"dbo.Document.ExigenceDegreeID = dbo.ExigenceDegree.ExigenceDegreeID INNER JOIN "+
				"dbo.SecretGread ON "+
				"dbo.Document.SecretGreadID = dbo.SecretGread.SecretGreadID INNER JOIN "+
				"dbo.VIEW_DocumentType ON "+
				"dbo.Document.DocumentTypeID = dbo.VIEW_DocumentType.DocumentTypeID "+
				"WHERE Document.DocumentID='"+doucumentid.Text .Trim ().Replace ("'","")+"'";
			ArrayList al=dc.getData (sql);
			if(al.Count >0)
			{
				LabelTitle.Text =al[0].ToString ();				
				LabelContent.Text =al[1].ToString ();
				CuenceNodeId.Text =al[2].ToString ();
				LabelExigDegree.Text =al[3].ToString ();
				LabelSecret.Text =al[4].ToString ();
				LabelType.Text =al[5].ToString ();
			}
		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.OK.Click += new System.Web.UI.ImageClickEventHandler(this.OK_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		private void OK_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
			int nAgree=1;//1为同意,0为不同意
			OI.cs .readStream rs=new OI.cs.readStream ();
			rs.doucmentID =int.Parse (doucumentid.Text .Trim ());
			int nPreNode=rs.GetPrivateNodeID (CuenceNodeId.Text );
			string sql="SELECT TOP 1 TransactDate FROM DocumentTransact WHERE StepID='"+nPreNode.ToString ()+"'and DocumentID='"+doucumentid.Text .Trim ()+"'";
			ArrayList al=dc.getData (sql);
			DateTime dtNodeDone;
			if(al.Count >0)
				dtNodeDone=DateTime.Parse (al[0].ToString ());
			else
			{
				//Page.RegisterStartupScript ("","<script>alert(\"没有前一个节点\")</script>");
				dtNodeDone=DateTime.Today ;
				//return;
			}
			if(isAgree.Items [0].Selected )
				nAgree=1;
			else
				nAgree=0;

			string strCount="select top 1 backstate from dbo.DocumentTransact where documentid='"+doucumentid.Text .Trim ()
							+"' and stepid='"+CuenceNodeId.Text+"' order by transactdate desc";
			ArrayList alCount=dc.getData (strCount);
			int nCount=(alCount.Count >0?1+int.Parse (alCount[0].ToString ()):0);

			
			string strCurrNode=(nAgree==0?rs.GetQcNodeID ():rs.GetNextNodeIdByID (CuenceNodeId.Text));

			bool isComplete=false;//该文档是否在流程中到达最后一个节点
			if(rs.GetNextNodeIdByID (CuenceNodeId.Text )=="2")
				isComplete=true;

			string strSQL="";
			if(isComplete)
				strSQL="UPDATE document SET completesign='1' WHERE DocumentID='"+doucumentid.Text .Trim ()+"'";

			sql="INSERT INTO DocumentTransact(StepID,ManageID,DocumentID,UserID,TransactSign,Idea,TransactDate,TransactLimitDate,backstate) "+
				"VALUES('"+CuenceNodeId.Text +"','"+nAgree+"','"+doucumentid.Text +"','"+Session["userid"].ToString ()+"','2','"+idea.Text .Trim ().Replace ("'","")+
				"','"+DateTime.Now +"','"+ dtNodeDone.AddDays (rs.GetTimeLength (CuenceNodeId.Text ))+"','"+nCount+"')";
			string sql1="UPDATE document SET CurrentStepID='"+strCurrNode+"' WHERE DocumentID='"+doucumentid.Text .Trim ()+"'";

			//string strNextNode=rs.GetNextNodeIdByID (doucumentid.Text .Trim ());
			string [] strUser=rs.GetCurrentNodeUsersByID(strCurrNode );
			string strCurType=rs.GetCurrentOprateTypeByNodeID (doucumentid.Text .Trim ());
			string strNextType=rs.GetCurrentOprateTypeByNodeID (strCurrNode);
			string [] strSql=new string [strUser.Length ];
			for(int i=0;i<strUser.Length ;i++)
			{
				strSql[i]="INSERT INTO message(SendUserId, ReceiveUserId, DocumentId,FileTable,MessageContent) "+
					"VALUES('"+Session["userid"].ToString ()+"','"+strUser[i]+"','"+doucumentid.Text .Trim ()+"','Document','"
					+"公文《"+LabelTitle.Text+"》“"+strCurType+"”完毕,请“"+strNextType+"”处理!')";
			}

			try
			{
				dc.ExcuteSqls (strSql);//发短消息
				
				if(isComplete)
					dc.updateData (strSQL);//置完成标志

				dc.addData (sql);
				dc.updateData (sql1);
				Page.RegisterStartupScript ("","<script>alert(\"处理成功\")</script>");
			}
			catch
			{
				Page.RegisterStartupScript ("","<script>alert(\"处理失败\")</script>");
				return;
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -