日期:2014-05-18 浏览次数:21105 次
using System;
using Server;
using PublicControl.Run;
using PublicControl.DataBas;
using System.Data;
using System.Data.SqlClient;
namespace Server.RUN
{
/// <summary>
/// RunApp 服务器执行的虚拟类
/// </summary>
public abstract class RunApp
{
/// <summary>
/// 使用本服务的用户
/// </summary>
protected OnlineUser onlineUser=new OnlineUser();
/// <summary>
/// 运行参数
/// </summary>
protected RunParam runParam;
/// <summary>
/// 共享服务提供类
/// </summary>
protected PublicServer publicServer;
/// <summary>
/// 数据库应用对象
/// </summary>
protected DataBasAPP dataBasAPP;
/// <summary>
/// 是否继续运行
/// </summary>
protected bool fContinueRUN=true;
/// <summary>
/// 挑选需要处理的数据
/// </summary>
protected virtual void SecurityCheck()
{
OnlineUserCache temp=(OnlineUserCache)this.publicServer[onlineUser.GetType().FullName];
OnlineUser user=temp.GetData(runParam.UserID,null);
if(user==null)
{
runParam.Error=true;
runParam.ErrorInfo="您没有登陆系统请登陆后在做操作.";
return;
}
if(user.SecurityPassword!=runParam.SecurityCheck)
{
runParam.Error=true;
runParam.ErrorInfo="信任关系校验失败,请重新登陆.\n很有可能是您又在其它地方登陆了.";
return;
}
onlineUser=user;
user.UserWorkTime=DateTime.Now;
}
/// <summary>
/// 挑选需要处理的数据
/// </summary>
protected abstract void SelectDataList();
/// <summary>
/// 开始预处理
/// </summary>
protected abstract void BeginRUNList();
/// <summary>
/// 处理结束收尾.
/// </summary>
protected abstract void EndRUNList();
/// <summary>
/// 更新数据库
/// </summary>
protected abstract void UpDataList();
/// <summary>
/// 是否继续运行
/// </summary>
protected bool Continue