Пример #1
0
        public static byte[] HandlerFile(string file)
        {
            // 在此处放置用户代码以初始化页面
            MsgObj = new DBstep.iMsgServer2000();

            MsgObj.MsgVariant(System.Web.HttpContext.Current.Request.BinaryRead(System.Web.HttpContext.Current.Request.ContentLength));
            if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP"))                               //如果是合法的信息包
            {
                mOption   = MsgObj.GetMsgByName("OPTION");                                    //取得操作信息
                mUserName = MsgObj.GetMsgByName("USERNAME");                                  //取得操作用户名称
                if (mOption.Equals("LOADFILE"))                                               //下面的代码为打开服务器数据库里的文件
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");                              //取得文档编号
                    mFileType = MsgObj.GetMsgByName("FILETYPE");                              //取得文档类型
                    MsgObj.MsgTextClear();                                                    //清除文本信息

                    if (MsgObj.MsgFileLoad(file))                                             //调入文档
                    {
                        //MsgObj.MsgFileBody(mFileBody);					                  //将文件信息打包,mFileBody为从数据库中读取,类型byte[]
                        MsgObj.SetMsgByName("STATUS", "打开全文批注成功!");                           //设置状态信息
                        MsgObj.MsgError("");                                                  //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("打开全文批注失败!");                                     //设置错误信息
                    }
                }
                else if (mOption.Equals("SAVEFILE"))                                                      //下面的代码为保存文件在服务器的数据库里
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");                                          //取得文档编号
                    mFileType = MsgObj.GetMsgByName("FILETYPE");                                          //取得文档类型
                    //mMyDefine1=MsgObj.GetMsgByName("MyDefine1");	                          //取得客户端传递变量值 MyDefine1="自定义变量值1"
                    //mFileBody=MsgObj.MsgFileBody();	                                      //取得文档内容 mFileBody可以保存到数据库中,类型byte[]
                    MsgObj.MsgTextClear();                                                //清除文本信息
                    if (MsgObj.MsgFileSave(file))                                         //保存文档内容
                    {
                        MsgObj.SetMsgByName("STATUS", "保存全文批注成功!");                       //设置状态信息
                        MsgObj.MsgError("");                                              //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("保存全文批注失败!");                                      //设置错误信息
                    }
                    MsgObj.MsgFileClear();
                }
            }
            else
            {
                MsgObj.MsgError("客户端发送数据包错误!");
                MsgObj.MsgTextClear();
                MsgObj.MsgFileClear();
            }

            return(MsgObj.MsgVariant());
        }
Пример #2
0
        public void LoadSighture(HttpContext context)
        {
            try
            {
            MsgObj = new DBstep.iMsgServer2000();
            mFilePath = Utility.RootPath; //Server.MapPath(".");
            MsgObj.MsgVariant(context.Request.BinaryRead(context.Request.ContentLength));     //读取客户端发送来的数据包
            if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP"))               //检测客户端传递的数据包格式
            {
                mOption = MsgObj.GetMsgByName("OPTION");                        //取得操作类型
                if (mOption.Equals("SIGNATRUELIST"))                           //下面的代码为创建印章列表
                {
                    MsgObj.MsgTextClear();                                    //清除SetMsgByName设置的值
                    if (SignatureList())                                      //调入印章列表
                    {
                        MsgObj.SetMsgByName("SIGNATRUELIST", mMarkList);       //设置印章列表字符串
                        MsgObj.MsgError("");                                  //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("创建印章列表失败!");                 //设置错误信息
                    }
                }

                if (mOption.Equals("SIGNATRUEIMAGE"))                         //下面的代码为调入印章图案
                {
                    mMarkName = MsgObj.GetMsgByName("IMAGENAME");                //取得印章名称
                    mUserName = MsgObj.GetMsgByName("USERNAME");                 //取得用户名
                    mPassword = MsgObj.GetMsgByName("PASSWORD");                 //取得印章密码
                    mFileType = ".jpg";                                        //默认为.jpg类型
                    MsgObj.MsgTextClear();                                   //清除SetMsgByName设置的值
                    if (SignatureImage(mMarkName, mPassword))                //调入印章
                    {
                        MsgObj.SetMsgByName("IMAGETYPE", mFileType);         //设置图片类型
                        MsgObj.MsgFileBody(mFileBody);                      //将签章数据信息打包
                        MsgObj.SetMsgByName("STATUS", "打开成功!");         //设置状态信息
                        MsgObj.MsgError("");                                //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("签名或密码错误!");                    //设置错误信息
                    }
                }

                if (mOption.Equals("SAVESIGNATURE"))                         //下面的代码为保存印章数据
                {

                    mRecordID = MsgObj.GetMsgByName("RECORDID");                //取得文档编号
                    mFieldName = MsgObj.GetMsgByName("FIELDNAME");          //取得签章字段名称
                    mFieldValue = MsgObj.GetMsgByName("FIELDVALUE");            //取得签章数据内容
                    mUserName = MsgObj.GetMsgByName("USERNAME");                //取得用户名称
                    if (mUserName != "")
                    {
                        //mDateTime = MsgObj.GetMsgByName("DATETIME");		        //取得签章日期时间
                        //mHostName = Request.UserHostAddress;                      //取得客户端IP
                        MsgObj.MsgTextClear();
                        //在数据库中查找是否生成过,若生成过则删除
                        if (mRecordID == "" || mRecordID == null)
                        {
                            MsgObj.MsgError("业务未生成,请重新生成");
                            //return;
                        }
                        string[] array = mFieldName.Split('/');
                        tableName = array[0];
                        columnsName = array[1];
                        string msg = SaveSighture(tableName, columnsName, mUserName);
                        if (msg != "")
                        {
                            MsgObj.MsgError(msg);
                            MsgObj.SetMsgByName("STATUS", "保存失败");  //设置状态信息
                        }
                    }
                }

                if (mOption.Equals("LOADSIGNATURE"))                        //下面的代码为调入签章数据
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");               //取得文档编号
                    mFieldName = MsgObj.GetMsgByName("FIELDNAME");         //取得签章字段名称

                    mUserName = MsgObj.GetMsgByName("USERNAME");               //取得用户名称
                    MsgObj.MsgTextClear();                                 //清除SetMsgByName设置的值
                    if (LoadSignature())                                   //调入签章数据信息
                    {
                        MsgObj.SetMsgByName("FIELDVALUE", mFieldValue);     //设置签章数据
                        MsgObj.SetMsgByName("STATUS", "调入成功!");        //设置状态信息
                        MsgObj.MsgError("");                               //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("调入标签失败!");                //设置错误信息
                    }
                }

                if (mOption.Equals("SAVEHISTORY"))                         //下面的代码为保存印章历史信息
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");              //取得文档编号
                    mFieldName = MsgObj.GetMsgByName("FIELDNAME");        //取得签章字段名称
                    mMarkName = MsgObj.GetMsgByName("MARKNAME");              //取得签章名称
                    mUserName = MsgObj.GetMsgByName("USERNAME");              //取得用户名称
                    mDateTime = MsgObj.GetMsgByName("DATETIME");              //取得签章日期时间
                    mHostName = context.Request.UserHostAddress;                   //取得客户端IP
                    mMarkGuid = MsgObj.GetMsgByName("MARKGUID");            //取得序列号
                    MsgObj.MsgTextClear();
                    if (SaveHistory())                                    //保存印章历史信息
                    {
                        MsgObj.SetMsgByName("MARKNAME", mMarkName);        //将签章名称列表打包
                        MsgObj.SetMsgByName("USERNAME", mUserName);        //将用户名列表打包
                        MsgObj.SetMsgByName("DATETIME", mDateTime);        //将签章日期列表打包
                        MsgObj.SetMsgByName("HOSTNAME", mHostName);        //将客户端IP列表打包
                        MsgObj.SetMsgByName("MARKGUID", mMarkGuid);        //将序列号列表打包
                        MsgObj.SetMsgByName("STATUS", "保存印章日志成功!");//设置状态信息
                        MsgObj.MsgError("");                              //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("保存印章日志失败!");             //设置错误信息
                    }
                }

                if (mOption.Equals("SHOWHISTORY"))                         //下面的代码为打开签章历史信息
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");              //取得文档编号
                    mFieldName = MsgObj.GetMsgByName("FIELDNAME");        //取得签章字段名称
                    mUserName = MsgObj.GetMsgByName("USERNAME");              //取得用户名
                    MsgObj.MsgTextClear();                                //清除SetMsgByName设置的值
                    if (ShowHistory())                                //调入印章历史信息
                    {
                        MsgObj.SetMsgByName("MARKNAME", mMarkName);       //将签章名称列表打包
                        MsgObj.SetMsgByName("USERNAME", mUserName);       //将用户名列表打包
                        MsgObj.SetMsgByName("DATETIME", mDateTime);       //将签章日期列表打包
                        MsgObj.SetMsgByName("HOSTNAME", mHostName);       //将客户端IP列表打包
                        MsgObj.SetMsgByName("MARKGUID", mMarkGuid);        //将序列号列表打包
                        MsgObj.SetMsgByName("STATUS", "调入印章日志成功"); //设置状态信息
                        MsgObj.MsgError("");
                        //清除错误信息
                    }
                    else
                    {
                        MsgObj.SetMsgByName("STATUS", "调入印章日志失败");  //设置状态信息
                        MsgObj.MsgError("调入印章日志失败");                //设置错误信息
                    }
                }

                if (mOption.Equals("SENDMESSAGE"))
                {
                    mCommand = MsgObj.GetMsgByName("COMMAND");
                    mInfo = MsgObj.GetMsgByName("TESTINFO");
                    MsgObj.MsgTextClear();
                    MsgObj.MsgFileClear();
                    if (mCommand.Equals("SELFINFO"))
                    {
                        mInfo = "服务器端收到客户端传来的信息:“" + mInfo + "”\r\n";
                        //组合返回给客户端的信息
                        mInfo = mInfo + "服务器端发回当前服务器时间:" + DateTime.Now;
                        MsgObj.SetMsgByName("RETURNINFO", mInfo);                   //将返回的信息设置到信息包中
                    }

                }
            }
            else
            {
                MsgObj.MsgError("客户端发送数据包错误!");
                MsgObj.MsgTextClear();
                MsgObj.MsgFileClear();
            }
            context.Response.BinaryWrite(MsgObj.MsgVariant());
            }
             catch (Exception ex)
             {
                 ComBase.Logger(ex);
                 throw (new Exception("获取数据失败!", ex));
             }
        }
Пример #3
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            // 在此处放置用户代码以初始化页面

            MsgObj    = new DBstep.iMsgServer2000();
            mFilePath = Server.MapPath(".");

            MsgObj.MsgVariant(Request.BinaryRead(Request.ContentLength));
            if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP"))                                            //如果是合法的信息包
            {
                mOption   = MsgObj.GetMsgByName("OPTION");                                                 //取得操作信息
                mUserName = MsgObj.GetMsgByName("USERNAME");                                               //取得操作用户名称
                if (mOption.Equals("LOADFILE"))                                                            //下面的代码为打开服务器数据库里的文件
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");                                           //取得文档编号
                    mFileType = MsgObj.GetMsgByName("FILETYPE");                                           //取得文档类型
                    MsgObj.MsgTextClear();                                                                 //清除文本信息
                    mFilePath = mFilePath + "/Document/" + mRecordID + mFileType;                          //全文批注文件的完整路径
                    if (MsgObj.MsgFileLoad(mFilePath))                                                     //调入文档
                    {
                        //MsgObj.MsgFileBody(mFileBody);					                  //将文件信息打包,mFileBody为从数据库中读取,类型byte[]
                        MsgObj.SetMsgByName("STATUS", "打开全文批注成功!");                                                   //设置状态信息
                        MsgObj.MsgError("");                                                                          //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("打开全文批注失败!");                                                             //设置错误信息
                    }
                }
                else if (mOption.Equals("SAVEFILE"))                                                                      //下面的代码为保存文件在服务器的数据库里
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");                                                          //取得文档编号
                    mFileType = MsgObj.GetMsgByName("FILETYPE");                                                          //取得文档类型
                    //mMyDefine1=MsgObj.GetMsgByName("MyDefine1");	                          //取得客户端传递变量值 MyDefine1="自定义变量值1"
                    //mFileBody=MsgObj.MsgFileBody();	                                      //取得文档内容 mFileBody可以保存到数据库中,类型byte[]
                    MsgObj.MsgTextClear();                                                                        //清除文本信息
                    mFilePath = mFilePath + "/Document/" + mRecordID + mFileType;                                 //全文批注文件的完整路径
                    if (MsgObj.MsgFileSave(mFilePath))                                                            //保存文档内容
                    {
                        MsgObj.SetMsgByName("STATUS", "保存全文批注成功!");                                               //设置状态信息
                        MsgObj.MsgError("");                                                                      //清除错误信息
                    }
                    else
                    {
                        MsgObj.MsgError("保存全文批注失败!");                                                              //设置错误信息
                    }
                    MsgObj.MsgFileClear();
                }
            }
            else
            {
                MsgObj.MsgError("客户端发送数据包错误!");
                MsgObj.MsgTextClear();
                MsgObj.MsgFileClear();
            }
            byte[] arr = MsgObj.MsgVariant();

            MsgObj = null;

            Response.BinaryWrite(arr);
        }
        protected void Page_Load(object sender, System.EventArgs e)
        {
            singleProjectID = DNTRequest.GetQueryString("singleProjectID");
            pdfFileName     = DNTRequest.GetQueryString("pdfFileName");

            // 在此处放置用户代码以初始化页面

            MsgObj = new DBstep.iMsgServer2000();

            //mFilePath = Path.Combine(mFilePath, "Document");
            MsgObj.MsgVariant(Request.BinaryRead(Request.ContentLength));
            if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP"))             //如果是合法的信息包
            {
                mOption   = MsgObj.GetMsgByName("OPTION");
                mRecordID = MsgObj.GetMsgByName("RECORDID");     //取得文档编号
                mFilePath = GetFilePath(mRecordID);              //取得操作信息


                //string tmpFileName = Path.GetFileNameWithoutExtension(mFileName) + ".tmp";
                if (mOption.Equals("LOADFILE"))                                //下面的代码为打开服务器数据库里的文件
                {
                    mRecordID = MsgObj.GetMsgByName("RECORDID");               //取得文档编号
                    //mFilePath = GetFilePath(mRecordID, out mFileName);
                    if (System.IO.File.Exists(mFilePath))
                    {
                        //tmpFileName = Guid.NewGuid().ToString() + Path.GetExtension(mFileName);
                        //if (!System.IO.File.Exists(mFilePath + "\\" + tmpFileName))
                        //    System.IO.File.Copy(mFilePath + "\\" + mFileName, mFilePath + "\\" + tmpFileName);
                        //清除文本信息
                        MsgObj.MsgTextClear();                       //清除文本信息
                        if (MsgObj.MsgFileLoad(mFilePath))           //读取临时文件
                        {
                            MsgObj.SetMsgByName("STATUS", "打开成功!."); //设置状态信息
                            MsgObj.MsgError(string.Empty);
                            MsgObj.MsgTextClear();                   //清除错误信息
                        }
                        else
                        {
                            MsgObj.MsgError("打开失败!");                                             //设置错误信息
                        }
                    }
                    else
                    {
                        MsgObj.MsgError("打开失败!");                                                 //设置错误信息
                    }
                }
                else if (mOption.Equals("SAVEFILE"))                                          //下面的代码为保存文件在服务器的数据库里
                {
                    MsgObj.MsgTextClear();                                                    //清除文本信息


                    if (MsgObj.MsgFileSave(mFilePath))                                    //保存文档内容到文件夹中
                    {
                        MsgObj.SetMsgByName("STATUS", "保存成功!");                           //设置状态信息
                        MsgObj.MsgError("");                                              //清除错误信息
                        MsgObj.MsgFileClear();
                    }
                    else
                    {
                        //MsgObj.MsgError("保存失败!");		                                  //设置错误信息
                        MsgObj.MsgError("Error:packet message");
                        MsgObj.MsgTextClear();
                        MsgObj.MsgFileClear();
                    }
                }
            }
            else
            {
                MsgObj.MsgError("Error:packet message");
                MsgObj.MsgTextClear();
                MsgObj.MsgFileClear();
            }
            MsgObj.Send(Response);
            //Response.BinaryWrite(MsgObj.MsgVariant());
        }