一、源码特点
asp.net门诊管理系统网站是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言
开发。
应用技术:asp.net c#+sqlserver
开发工具:vs2010 +sqlserver
二、功能介绍
系统功能图:
前台:
(1)首页浏览
(2)科室、医生浏览查看
(3)医生预约、查看已经预约信息查看病例信息
(4)浏览公告
(5)注册、登录 修改个人信息
后台:
(1)管理员管理:对管理员信息进行添加、删除、修改和查看
(2)用户管理:对用户信息进行添加、删除、修改和查看
(3)科室管理:对科室信息进行添加、删除、修改和查看
(4)医生管理:对医生信息进行添加、删除、修改和查看
(5)预约管理:对预约信息进行删除、修改和查看
(6)病例管理:对病例信息进行添加、删除、修改和查看
(7)公告管理:对公告信息进行添加、删除、修改和查看
(8)浏览管理:对浏览信息进行删除、修改和查看
(9)个人信息修改
表结构设计
由以上关系模式以及根据需求分析阶段数据字典的数据项描述,给出各数据表结构。
(1)管理员信息表如表3.1所示:
表3.1 管理员信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | glyid | INTEGER | 11 | 是 | 管理员编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
(2)用户信息表如表3.2所示:
表3.2 用户信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | yhid | INTEGER | 11 | 是 | 用户编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | zcsj | VARCHAR | 40 | 否 | 注册时间 |
6 | dz | VARCHAR | 40 | 否 | 地址 |
7 | dh | VARCHAR | 40 | 否 | 电话 |
8 | bz | VARCHAR | 40 | 否 | 备注 |
(3)科室信息表如表3.3所示:
表3.3 科室信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | ksid | INTEGER | 11 | 是 | 科室编号 |
2 | ks | VARCHAR | 40 | 否 | 科室 |
3 | dh | VARCHAR | 40 | 否 | 电话 |
4 | dz | VARCHAR | 40 | 否 | 地址 |
5 | tp | VARCHAR | 40 | 否 | 图片 |
6 | js | VARCHAR | 40 | 否 | 介绍 |
(4)医生信息表如表3.4所示:
表3.4 医生信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | ysid | INTEGER | 11 | 是 | 医生编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | ks | VARCHAR | 40 | 否 | 科室 |
6 | tz | VARCHAR | 40 | 否 | 特长 |
7 | js | VARCHAR | 40 | 否 | 介绍 |
8 | zc | VARCHAR | 40 | 否 | 职称 |
9 | bz | VARCHAR | 40 | 否 | 备注 |
10 | jzrs | VARCHAR | 40 | 否 | 接诊人数 |
(5)预约信息表如表3.5所示:
表3.5 预约信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | yyid | INTEGER | 11 | 是 | 预约编号 |
2 | ys | VARCHAR | 40 | 否 | 医生 |
3 | yh | VARCHAR | 40 | 否 | 用户 |
4 | sj | VARCHAR | 40 | 否 | 时间 |
5 | bz | VARCHAR | 40 | 否 | 备注 |
6 | sm | VARCHAR | 40 | 否 | 说明 |
(6)病例信息表如表3.6所示:
表3.6 病例信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | blid | INTEGER | 11 | 是 | 病例编号 |
2 | bl | VARCHAR | 40 | 否 | 病例 |
3 | yh | VARCHAR | 40 | 否 | 用户 |
4 | sj | VARCHAR | 40 | 否 | 时间 |
5 | by | VARCHAR | 40 | 否 | 病因 |
6 | zz | VARCHAR | 40 | 否 | 诊治 |
7 | yy | VARCHAR | 40 | 否 | 用药 |
8 | cf | VARCHAR | 40 | 否 | 处方 |
9 | pszy | VARCHAR | 40 | 否 | 平时注意 |
10 | bz | VARCHAR | 40 | 否 | 备注 |
(7)公告信息表如表3.7所示:
表3.7 公告信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | ggid | INTEGER | 11 | 是 | 公告编号 |
2 | bt | VARCHAR | 40 | 否 | 标题 |
3 | nr | VARCHAR | 40 | 否 | 内容 |
4 | fbsj | VARCHAR | 40 | 否 | 发布时间 |
(8)浏览信息表如表3.8所示:
表3.8 浏览信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | llid | INTEGER | 11 | 是 | 浏览编号 |
2 | yh | VARCHAR | 40 | 否 | 用户 |
3 | ks | VARCHAR | 40 | 否 | 科室 |
4 | llsj | VARCHAR | 40 | 否 | 浏览时间 |
过滤算法设计
public class SlopeOne
{
public RatingDifferenceCollection _DiffMarix = new RatingDifferenceCollection(); // The dictionary to keep the diff matrix
public HashSet<int> _Items = new HashSet<int>(); // Tracking how many items totally
public void AddUserRatings(IDictionary<int, float> userRatings)
{
foreach (var item1 in userRatings)
{
int item1Id = item1.Key;
float item1Rating = item1.Value;
_Items.Add(item1.Key);
foreach (var item2 in userRatings)
{
if (item2.Key <= item1Id) continue; // Eliminate redundancy
int item2Id = item2.Key;
float item2Rating = item2.Value;
Rating ratingDiff;
if (_DiffMarix.Contains(item1Id, item2Id))
{
ratingDiff = _DiffMarix[item1Id, item2Id];
}
else
{
ratingDiff = new Rating();
_DiffMarix[item1Id, item2Id] = ratingDiff;
}
ratingDiff.Value += item1Rating - item2Rating;
ratingDiff.Freq += 1;
}
}
}
// Input ratings of all users
public void AddUerRatings(IList<IDictionary<int, float>> Ratings)
{
foreach (var userRatings in Ratings)
{
AddUserRatings(userRatings);
}
}
public IDictionary<int, float> Predict(IDictionary<int, float> userRatings)
{
Dictionary<int, float> Predictions = new Dictionary<int, float>();
foreach (var itemId in this._Items)
{
if (userRatings.Keys.Contains(itemId)) continue; // User has rated this item, just skip it
Rating itemRating = new Rating();
foreach (var userRating in userRatings)
{
if (userRating.Key == itemId) continue;
int inputItemId = userRating.Key;
if (_DiffMarix.Contains(itemId, inputItemId))
{
Rating diff = _DiffMarix[itemId, inputItemId];
itemRating.Value += diff.Freq * (userRating.Value + diff.AverageValue * ((itemId < inputItemId) ? 1 : -1));
itemRating.Freq += diff.Freq;
}
}
Predictions.Add(itemId, itemRating.AverageValue);
}
return Predictions;
}
三、注意事项
1、管理员账号:admin 密码:admin
2、开发环境为vs2010,数据库为sqlserver2008或者以上版本都可以运行,使用c#语言开发。
3、数据库文件名是aspnetmenzhen.mdf
4.登录地址:qt/index.aspx
四系统实现