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

📄 webofficeserver.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;
using System.Data.SqlClient;
using DotNetOfficeServer;
using System.Text;

namespace OI.DocTemplate
{
	/// <summary>
	/// WebOfficeServer 的摘要说明。
	/// </summary>
	public class WebOfficeServer : System.Web.UI.Page
	{		
		private string myConnectionString=System.Configuration.ConfigurationSettings.AppSettings["conn"];
		private OI.DatabaseOper.DatabaseConnect DBAobj=new OI.DatabaseOper.DatabaseConnect();		

		private void Page_Load(object sender, System.EventArgs e)
		{

			byte[] x;
			x=Request.BinaryRead(Request.ContentLength);			
			OfficeServer mObj=new OfficeServer();
			mObj.SetObj(x);
			string option=mObj.GetFieldData("OPTION");
			
			switch (option)
			{
				case "SAVEFILE":					
					SaveFile(x,mObj);
					mObj.setfield("STATUS","保存成功!");
					mObj.Error="";
					break;
				case "LOADFILE":
					LoadFile(mObj);
					mObj.Error="";
					mObj.ClearFields();
					break;
				case "LOADVERSION":
					loadVersion(mObj);
					mObj.Error="";
					mObj.ClearFields();
					break;
				case "LISTVERSION":
					ListVersion(mObj);
					mObj.Error="";
					break;
				case "SAVEVERSION":
					SaveVersion(x,mObj);
					mObj.Error="";
					mObj.ClearFields();
					break;
				case "SaveMARKIMAGE":
					SaveMarkImage(x,mObj);
					mObj.Error="";
					mObj.ClearFields();
					break;
				case "LOADMARKIMAGE":
					LoadMarkImage(mObj);
					mObj.Error="";
					break;
				case "LOADMARKLIST":
					LoadMarkList(mObj);
					break;
			}
			Response.BinaryWrite(mObj.GetObj());	
			
		}
		public void LoadMarkList(OfficeServer mClass1)
		{
			string Sql= "SELECT MarkName FROM Signature";
			DataSet ds=new DataSet();
			 
			ds=DBAobj.getBinding(Sql,"a");
			mClass1.ClearFields();
			string data="";
			for (int i=0;i<ds.Tables[0].Rows.Count;i++)
			{
				data+=ds.Tables[0].Rows[i]["MarkName"].ToString()+"\r\n";
			}
			mClass1.setfield("MARKLIST",data);
		}
		public void LoadMarkImage(OfficeServer mClass1)
		{
			string mMarkName=mClass1.GetFieldData("IMAGENAME");		//'取得文档名    
			string  mPassword=mClass1.GetFieldData("PASSWORD");
			string Sql= "SELECT MarkBody,MarkSize,MarkType FROM Signature WHERE MarkName='" + mMarkName + "' and PassWord='" + mPassword + "'";
			SqlConnection conn=new SqlConnection();
			conn.ConnectionString=myConnectionString;
			conn.Open();	
			SqlDataReader sdr;
			SqlCommand comm=new SqlCommand(Sql  ,conn);
			sdr=comm.ExecuteReader();
			if (sdr.Read())
			{			
				int m=(int)sdr.GetValue(1);
				byte[] x=new byte[m];
				sdr.GetBytes(0,0,x,0,m);
				string type=sdr.GetValue(2).ToString();				
				mClass1.SetObj(x);			
				mClass1.setfield("STATUS","打开印章成功!");
				mClass1.setfield("IMAGETYPE",type);
			}
			sdr.Close();
     
		}
		public void SaveMarkImage(byte[] x,OfficeServer mClass1)
		{
			string mMarkName=mClass1.GetFieldData("IMAGENAME");		//'取得文档名    
			string  mPassword=mClass1.GetFieldData("PASSWORD");
			string  mFileType=mClass1.GetFieldData("FileType");
			SqlConnection Conn = new SqlConnection(myConnectionString);
			
			Conn.Open();			
			string Sql= "SELECT * FROM Signature WHERE MarkName='" + mMarkName + "' ";
			DataSet ds=new DataSet();
			 
			ds=DBAobj.getBinding(Sql,"b");
			if (ds.Tables[0].Rows.Count>0) 
			{
				SqlCommand addEmp = new SqlCommand("UPDATE Signature set PassWord=@PassWord,MarkName=@MarkName,MarkType=@MarkType,"+
					"MarkSize=@MarkSize,MarkDate=getdate(),MarkBody=@MarkBody,MarkPath=@MarkPath,UserName=@UserName where MarkName='" + mMarkName + "' ",Conn);
				addEmp.Parameters.Add("@PassWord",SqlDbType.VarChar, 16).Value = mClass1.GetFieldData("PASSWORD");
				addEmp.Parameters.Add("@MarkName",SqlDbType.VarChar, 254).Value = mClass1.GetFieldData("IMAGENAME");
				addEmp.Parameters.Add("@MarkType",SqlDbType.VarChar, 4).Value = mClass1.GetFieldData("FileType");
				addEmp.Parameters.Add("@MarkSize",SqlDbType.Int).Value = x.Length;
				addEmp.Parameters.Add("@MarkBody",SqlDbType.Image, x.Length).Value = x;
				addEmp.Parameters.Add("@MarkPath",SqlDbType.VarChar, 128).Value =mClass1.GetFieldData("FilePath");
				addEmp.Parameters.Add("@UserName",SqlDbType.VarChar,64).Value = mClass1.GetFieldData("UserName");								
				addEmp.ExecuteNonQuery();			
			}
			else
			{
				SqlCommand addEmp = new SqlCommand("INSERT INTO Signature (PassWord,MarkName,MarkType,MarkSize,MarkDate,MarkBody,MarkPath,UserName) " +
					"Values(@PassWord,@MarkName,@MarkType,@MarkSize,getdate(),@MarkBody,@MarkPath,@UserName)", Conn);		
				addEmp.Parameters.Add("@PassWord",SqlDbType.VarChar, 16).Value = mClass1.GetFieldData("PASSWORD");
				addEmp.Parameters.Add("@MarkName",SqlDbType.VarChar, 254).Value = mClass1.GetFieldData("IMAGENAME");
				addEmp.Parameters.Add("@MarkType",SqlDbType.VarChar, 4).Value = mClass1.GetFieldData("FileType");
				addEmp.Parameters.Add("@MarkSize",SqlDbType.Int).Value = x.Length;
				addEmp.Parameters.Add("@MarkBody",SqlDbType.Image, x.Length).Value = x;
				addEmp.Parameters.Add("@MarkPath",SqlDbType.VarChar, 128).Value =mClass1.GetFieldData("FilePath");
				addEmp.Parameters.Add("@UserName",SqlDbType.VarChar,64).Value = mClass1.GetFieldData("UserName");										
				addEmp.ExecuteNonQuery();

			}

		}
		public void SaveVersion(byte[] x,OfficeServer mClass1)
		{
			string mRecordID=mClass1.GetFieldData("RECORDID");		//取得文档编号
			SqlConnection Conn = new SqlConnection(myConnectionString);
			
			Conn.Open();			
			SqlCommand addEmp = new SqlCommand("INSERT INTO Document_File (RECORDID,FileName,FileType,FileSize,FileDate,FileBody,FilePath,UserName,Descript) " +
				"Values(@RECORDID,@FileName,@FileType,@FileSize,getdate(),@FileBody,@FilePath,@UserName,@Descript)", Conn);		
			addEmp.Parameters.Add("@RECORDID",SqlDbType.VarChar, 16).Value = mClass1.GetFieldData("RECORDID");
			addEmp.Parameters.Add("@FileName",SqlDbType.VarChar, 254).Value = mClass1.GetFieldData("FileName");
			addEmp.Parameters.Add("@FileType",SqlDbType.VarChar, 4).Value = mClass1.GetFieldData("FileType");
			addEmp.Parameters.Add("@FileSize",SqlDbType.Int).Value = x.Length;
			addEmp.Parameters.Add("@FileBody",SqlDbType.Image, x.Length).Value = x;
			addEmp.Parameters.Add("@FilePath",SqlDbType.VarChar, 128).Value =mClass1.GetFieldData("FilePath");
			addEmp.Parameters.Add("@UserName",SqlDbType.VarChar,64).Value = mClass1.GetFieldData("UserName");
			addEmp.Parameters.Add("@Descript",SqlDbType.VarChar, 255).Value = mClass1.GetFieldData("Descript");							
			addEmp.ExecuteNonQuery();
		}
		public void ListVersion(OfficeServer mClass1)
		{
			string mRecordID=mClass1.GetFieldData("RECORDID");		//取得文档编号
			string Sql= "SELECT FileID,FileDate,UserName,Descript FROM Document_File WHERE RecordID='" + mRecordID + "'";
			DataSet ds=new DataSet();
			 
			ds=DBAobj.getBinding(Sql,"c");
			mClass1.ClearFields();
			for (int i=0;i<ds.Tables[0].Rows.Count;i++)
			{
				string mFileID =ds.Tables[0].Rows[i]["FileID"].ToString();			//文件号列表
				string mDateTime =ds.Tables[0].Rows[i]["FileDate"].ToString();			//'日期列表
				string mUserName = ds.Tables[0].Rows[i]["UserName"].ToString();				//'用户名列表
				string mDescript =ds.Tables[0].Rows[i]["Descript"].ToString();//'				
				mClass1.setfield( "FILEID"+i.ToString(), mFileID)  ;
				mClass1.setfield( "DATETIME"+i.ToString(), mDateTime);
				mClass1.setfield( "USERNAME"+i.ToString(),mUserName );
				mClass1.setfield("DESCRIPT"+i.ToString(), mDescript );
			}
			mClass1.setfield("ROWCOUNT", ds.Tables[0].Rows.Count.ToString() );
		}
		public void loadVersion(OfficeServer mClass1)
		{
			string mRecordID=mClass1.GetFieldData("RECORDID");		//取得文档编号
			string mFileID=mClass1.GetFieldData("FILEID");			//取得版本文档号
			
			SqlConnection conn=new SqlConnection();
			conn.ConnectionString=myConnectionString;
			conn.Open();	
			SqlDataReader sdr;
			SqlCommand comm=new SqlCommand("select filebody,filesize from Document_File where FileID=" + mFileID ,conn);
			sdr=comm.ExecuteReader();
			sdr.Read();
			int m=(int)sdr.GetValue(1);
			byte[] x=new byte[m];
			sdr.GetBytes(0,0,x,0,m);
			sdr.Close();
			mClass1.SetObj(x);

		}
		public void LoadFile(OfficeServer mClass1)
		{
			string mRecordID=mClass1.GetFieldData("RECORDID");		//取得文档编号
			SqlConnection conn=new SqlConnection();
			conn.ConnectionString=myConnectionString;
			conn.Open();						
			SqlDataReader sdr;
			SqlCommand comm=new SqlCommand("select filebody,filesize from Document_File where RecordID='" + mRecordID + "'",conn);
			sdr=comm.ExecuteReader();
			sdr.Read();
			int m=(int)sdr.GetValue(1);
			byte[] x=new byte[m];
			sdr.GetBytes(0,0,x,0,m);
			sdr.Close();
			mClass1.SetObj(x);

		}
		public void SaveFile(byte[] x,OfficeServer mClass1)
		{
			string mRecordID=mClass1.GetFieldData("RECORDID");		//取得文档编号
			SqlConnection Conn = new SqlConnection(myConnectionString);
			string Sql= "SELECT * FROM Document_File WHERE RecordID='" + mRecordID + "'";
			Conn.Open();
			SqlDataAdapter sda=new SqlDataAdapter(Sql,Conn);
			SqlCommandBuilder scb=new SqlCommandBuilder(sda);
			DataTable  dt=new DataTable();
			sda.Fill(dt);
			
			if (dt.Rows.Count>0)
			{
				SqlCommand addEmp = new SqlCommand("UPDATE Document_File set RECORDID=@RECORDID,FileName=@FileName,FileType=@FileType,"+
					"FileSize=@FileSize,FileDate=getdate(),FileBody=@FileBody,FilePath=@FilePath,UserName=@UserName,Descript=@Descript where RecordID='" + mRecordID + "' ",Conn);
				addEmp.Parameters.Add("@RECORDID",SqlDbType.VarChar, 16).Value = mClass1.GetFieldData("RECORDID");
				addEmp.Parameters.Add("@FileName",SqlDbType.VarChar, 254).Value = mClass1.GetFieldData("FileName");
				addEmp.Parameters.Add("@FileType",SqlDbType.VarChar, 4).Value = mClass1.GetFieldData("FileType");
				addEmp.Parameters.Add("@FileSize",SqlDbType.Int).Value = x.Length;
				addEmp.Parameters.Add("@FileBody",SqlDbType.Image, x.Length).Value = x;
				addEmp.Parameters.Add("@FilePath",SqlDbType.VarChar, 128).Value =mClass1.GetFieldData("FilePath");
				addEmp.Parameters.Add("@UserName",SqlDbType.VarChar,64).Value = mClass1.GetFieldData("UserName");
				addEmp.Parameters.Add("@Descript",SqlDbType.VarChar, 255).Value = mClass1.GetFieldData("Descript");							
				addEmp.ExecuteNonQuery();			
			}
			else
			{
				SqlCommand addEmp = new SqlCommand("INSERT INTO Document_File (RECORDID,FileName,FileType,FileSize,FileDate,FileBody,FilePath,UserName,Descript) " +
					"Values(@RECORDID,@FileName,@FileType,@FileSize,getdate(),@FileBody,@FilePath,@UserName,@Descript)", Conn);		
				addEmp.Parameters.Add("@RECORDID",SqlDbType.VarChar, 16).Value = mClass1.GetFieldData("RECORDID");
				addEmp.Parameters.Add("@FileName",SqlDbType.VarChar, 254).Value = mClass1.GetFieldData("FileName");
				addEmp.Parameters.Add("@FileType",SqlDbType.VarChar, 4).Value = mClass1.GetFieldData("FileType");
				addEmp.Parameters.Add("@FileSize",SqlDbType.Int).Value = x.Length;
				addEmp.Parameters.Add("@FileBody",SqlDbType.Image, x.Length).Value = x;
				addEmp.Parameters.Add("@FilePath",SqlDbType.VarChar, 128).Value =mClass1.GetFieldData("FilePath");
				addEmp.Parameters.Add("@UserName",SqlDbType.VarChar,64).Value = mClass1.GetFieldData("UserName");
				addEmp.Parameters.Add("@Descript",SqlDbType.VarChar, 255).Value = mClass1.GetFieldData("Descript");							
				addEmp.ExecuteNonQuery();

			}			
		
			Conn.Close();
			
     
			
		}


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

⌨️ 快捷键说明

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