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

📄 clsxuqiuchaxunkongzhi.cs

📁 怎样的图象处理的
💻 CS
📖 第 1 页 / 共 2 页
字号:
		/// 停止组件更新
		/// </summary>
		private void TingZhiZuJianGengXin()
		{
			if(this.shifouGengXin) 
			{
				//MUAB销毁
				this.gengXinKongZhi.StopUpdater();

				gengXinKongZhi = null;			
				//程序组件更新线程销毁			
				if( null != this. gengXinXC)
				{
					//  阻塞线程
					bool isThreadJoined = gengXinXC.Join( clsChangLiang.XIANCHENGZHUSAISHIJIAN);
					if( !isThreadJoined )
					{
						gengXinXC.Interrupt();
					
					}				
					gengXinXC = null;
				}
				//修改标识
				shifouGengXin = false;
			}
		}
		
		/// <summary>
		/// 重新发送需求
		/// </summary>
		private void ChongFaShuJu()
		{
			System.Data.DataSet chongfaShuJu = shujuGuanLi.ChongXinFaSong() ;
			//2004-11-22.&& chongfaShuJu.Tables["ShuJu"].Rows.Count>0 
			if(chongfaShuJu.Tables.Count > 0 && chongfaShuJu.Tables["ShuJu"].Rows.Count>0) 
			{
				XuQiuTiJiao(chongfaShuJu,0) ;
			}
		}

		#endregion

		#region 公有方法区域
		/// <summary>
		/// 构造器
		/// </summary>
		/// <param name="jieMian">需求查询界面引用</param> 
		public clsXuQiuChaXunKongZhi(XuQiuChaXunForm jieMian)
		{
			this.jieMian = jieMian;
			//获得MOAB实例
			lixianKongZhi = OfflineBlockBuilder.Instance; 
			//注册离线和在线事件			
			lixianKongZhi.ConnectionManager.ConnectionStateChangedEvent += 
				new ConnectionStateChangedEventHandler(
				ConnectionManagerConnectionStateChangedEvent);
			//注册错误处理
			FailsafeServiceAgent cuowuChuLi = lixianKongZhi.FailsafeServiceAgent;
			cuowuChuLi.ErrorEvent += new MethodExecutionFailureReportEventHandler(FailSafeServiceAgentErrorEvent);			
			//载入驻留在本地硬盘中的数据
			shujuGuanLi =  new clsShuJuGuanLi();
			shujuGuanLi.ZaiRuShuJu();
			//获得业务代表实例
			yewuDaiBiao = new clsYeWuDaiBiao(); 
			//注册业务代表的消息处理
			yewuDaiBiao.ReportErrorEvent += new ReportErrorEventHandler(YeWuDaiBiaoReportErrorEvent);			
			yewuDaiBiao.XuQiuTiJiaoFanHuiShiJian += new XuQiuTiJiaoFanHuiShiJianHandler(XuQiuTiJiaoFanHui);
			yewuDaiBiao.XuQiuChaXunFanHuiShiJian += new XuQiuChaXunFanHuiShiJianHandler(XuQiuChaXunFanHui);
			yewuDaiBiao.HuoDeJiBenShuJuFanHuiShiJian += new HuoDeJiBenShuJuFanHuiShiJianHandler(HuoDeJiBenShuJuFanHui);
			yewuDaiBiao.HuoDePeiZhiXinXiFanHuiShiJian += new HuoDePeiZhiXinXiFanHuiShiJianHandler(HuoDePeiZhiFanHui);
		}

		/// <summary>
		/// 控制器运行
		/// </summary>SheZhiShuJuYuan
		public void YunXin() 
		{
			try 
			{
				//界面填充数据
				jieMian.SheZhiShuJuYuan(this.shujuGuanLi.HuoDeShuJu(clsChangLiang.SHUJU_XUQIU));				
				//MOAB启动
				lixianKongZhi.Start();
				//zhangwj 11-23 增加对为提交数据的重新提交
				this.ChongFaShuJu() ;	
			}
			catch(Exception genException)
			{
				gengXinXC = null;
				throw new Exception("应用程序更新线程"+genException.Message) ;
			}

		}		

		/// <summary>
		/// 控制器销毁
		/// </summary>
		public void XiaoHui() 
		{
			
			try
			{
				//存放参考数据到本地文件
				shujuGuanLi.CunRuShuJu();
				shujuGuanLi = null;
				//停止数据更新
				this.TingZhiShuJuGengXin(); 
				
			}
			catch(Exception genException)
			{
				new Exception("数据更新线程停止错误!"+genException.Message); 
				throw;

			}
			
			try 
			{
				//停止应用程序组件更新
				TingZhiZuJianGengXin();
			}
			catch(Exception genException)
			{
				new Exception("应用程序组件停止错误!"+genException.Message); 
				throw;
			}

		}

		/// <summary>
		/// 需求提交
		/// </summary>
		public void XuQiuTiJiao(DataSet XuQiu) 
		{
			this.yewuDaiBiao.XuQiuTiJiao(XuQiu);  
			//界面显示
			try 
			{				
				DataSet shuJu = this.shujuGuanLi.XuQiuTianJian(XuQiu.Tables["ShuJu"]); 
				this.jieMian.GengXinXuQiu(shuJu);
			}
			catch(Exception e)
			{
				Console.WriteLine(e.Message);
			}
		}

		/// <summary>
		/// 需求提交  不更新界面
		/// </summary>
		public void XuQiuTiJiao(DataSet XuQiu,int BiaoZhi) 
		{
			this.yewuDaiBiao.XuQiuTiJiao(XuQiu);  
		}
		
		/// <summary>
		/// 需求查询
		/// </summary>
		public void XuQiuChaXun() 
		{
			yewuDaiBiao.XuQiuChaXun();  			
		}

		

		/// <summary>
		/// 获得基本数据
		/// </summary>
		public void HuoDeJiBenShuJu() 
		{
			yewuDaiBiao.HuoDeJiBenShuJu();  
			
		}
		
		/// <summary>
		/// 获得配置信息
		/// </summary>
		public void HuoDePeiZhi() 
		{
			yewuDaiBiao.HuoDePeiZhi();  			

		}		
		
		/// <summary>
		/// 数据查询,发出数据查询请求
		/// </summary>
		public void ShuJuChaXun() 
		{				
			if(this.shifouLianJie) //连接状态下查询最新的数据
			{ 
				this.XuQiuChaXun();
				this.HuoDeJiBenShuJu();
				this.HuoDePeiZhi(); 			
			}
			
		}

		/// <summary>
		/// 获得界面描述数据
		/// zhangwj  11.8
		/// </summary>
		/// <param name="Jian">键</param>
		/// <param name="Hang">行号</param> 
		/// <returns></returns>
		public System.Data.DataSet HuoDeShuJu(string Jian,int Hang)
		{
			System.Data.DataSet fanHui = null;
			System.Collections.Hashtable table = new System.Collections.Hashtable() ;
			fanHui = this.shujuGuanLi.HuoDeShuJu(Jian) ;
			if(Hang < 0 ) return null;
				
			DataTable shujuBiao = fanHui.Tables[0];
			DataRow   shujuHang = shujuBiao.Rows[Hang];
			DataTable xinShuJuBiao = shujuBiao.Copy(); 
			DataRow   xinShuJuHang =  xinShuJuBiao.NewRow();

			for (int i=0;i<xinShuJuBiao.Columns.Count;i++)
				table.Add(xinShuJuBiao.Columns[i].ColumnName,"") ;

			for(int Loop=0;Loop<shujuBiao.Columns.Count;Loop++) 
			{
				if (table.ContainsKey(shujuBiao.Columns[Loop].ColumnName))
				{
					if (!shujuHang.IsNull(shujuBiao.Columns[Loop].ColumnName))
						xinShuJuHang[shujuBiao.Columns[Loop].ColumnName]  = shujuHang[shujuBiao.Columns[Loop].ColumnName].ToString();
				}
			}
			xinShuJuBiao.Rows.Clear();
			xinShuJuBiao.Rows.Add(xinShuJuHang);
			fanHui = new DataSet() ;
			fanHui.Merge(xinShuJuBiao);
			return fanHui ;
		}
		
		/// <summary>
		/// 获得数据
		/// </summary>
		/// <param name="Jian"></param>
		/// <returns></returns>
		public System.Data.DataSet HuoDeShuJu(string Jian)
		{
			return this.shujuGuanLi.HuoDeShuJu(Jian);
			
		}
		/// <summary>
		/// 定时数据更新程序,线程序工作函数
		/// </summary>
		public void DingShiShuJuChaXun() 
		{						
			if(this.shifouLianJie) //连接状态下查询最新的数据
			{ 
				this.XuQiuChaXun();
				this.HuoDeJiBenShuJu();
				this.HuoDePeiZhi(); 
				
			}
		}
		/// <summary>
		/// 是否需要等待数据刷新
		/// </summary>
		/// <returns>true:需要数据刷新 false:不需要数据刷新</returns>
		public bool ShiFouXuYaoXiaZai() 
		{
			return this.shujuGuanLi.ShiFouXuYaoXiaZai(); 
		}

		/// <summary>
		/// 强制上线
		/// </summary>
		public void QiangZhiShangXian() 
		{
			try 
			{
				this.lixianKongZhi.ConnectionManager.GoOnline(); 
			}
			catch(Exception e) 
			{
				clsRiZhiChuLi.JiLuRiZhi("强制上线失败"+e.Message);
			}
		}
		
		/// <summary>
		/// 强制离线
		/// </summary>
		public void QiangZhiLiXian() 
		{
			try 
			{
				this.lixianKongZhi.ConnectionManager.GoOffline();
			}
			catch(Exception e) 
			{
				clsRiZhiChuLi.JiLuRiZhi("强制离线失败"+e.Message);
			}
		}
		#endregion
	}
}

⌨️ 快捷键说明

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