图3.4 系统功能示意图
图3.5 WardSigns
业务逻辑层,主要是用于实现业务逻辑以及事务规则处理。如本系统中涉及到的业务事务,如WardSignsMessageOperator(全科体征)SignsUpdateOperator(体征更新),是通过中间服务器实现的,界面如图3.5所示,ListenThread.cs接收表示层传递过来数据,再跳转到相应的类中去。这里数据的交互就成为了难点,这里是通过TCPIP协议来发送接收数据。
try
{
cn.Open();
MessageOperator messageOperator = null;
switch (operationname)
{
case "全科体征":
messageOperator = new WardSignsMessageOperator(cn);
break;
case "体征更新":
messageOperator = new SignsUpdateOperator(cn);
break;
default:
break;
}
if (messageOperator != null)
return messageOperator.handle(message);
else
return new DefaultQueryMessageOperator(cn).handle(message);
}
catch (Exception e)
{
return new MessageResult(false, e.Message);
}
数据访问层,是通过业务逻辑层中传递过来的数据,查询数据库并获得结果,返回给业务逻辑层,然后返回给表示层。这里是通过ToolFunction.cs来实现,里面有相应的连接及访问数据库的语句。
static public DataTable ExecuteBySQL(string sql, Dictionary<string, string> dictionary, string tablename, DbCommand cmd)
{
DataTable table = new DataTable(tablename); 基于.NET的三层构架的护理文书系统的设计与实现(7):http://www.youerw.com/jisuanji/lunwen_617.html