项目运行
环境配置:
Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。
项目技术:
ssm + mybatis + Maven +mysql5.7或8.0等等组成,B/S模式 + Maven管理等等。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 4G内存以上;或者 Mac OS;
5.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
6.数据库:MySql 5.7/8.0等版本均可;
毕设帮助,指导,本源码分享,调试部署(见文末)
系统介绍:
系统功能模块
会员制医疗预约服务管理信息系统,提供以下功能模块:
系统首页
- 查看首页、医院信息、坐诊信息、核酸检测、疾控通知、健康资讯、就诊引导、个人中心、后台管理等内容
- 进行详细操作
医院信息
- 查看医院名称、医院地址、院长、成立时间、联系电话、医院简介、医院详情等内容
- 进行收藏操作
坐诊信息
- 查看医生姓名、工号、性别、医院名称、医院地址、科室名称、科室地址、挂号费、医生简介等内容
- 进行预约、咨询和收藏操作
会员注册
- 通过填写账号、密码、确认密码、姓名、身份证、手机号码等信息进行会员注册操作
个人中心
- 通过填写账号、密码、姓名、性别、身份证、手机号码、上传图片等内容进行更新信息
- 对我的收藏进行操作
5.2 管理员功能模块
管理员登录系统后,可进行以下功能模块的操作管理:
管理员功能
- 对首页、个人中心、会员管理、医生管理、医院信息管理、科室信息管理、坐诊信息管理、核酸检测管理、挂号预约管理、药品信息管理、诊断信息管理、处方信息管理、住院信息管理、在线咨询管理、咨询回复管理、核酸预约管理、疾控通知管理、健康资讯管理、健康档案管理、系统管理等功能进行操作管理
会员管理
- 对索引、账号、密码、姓名、性别、身份证、手机号码、相片等内容进行详情、修改和删除等操作
医生管理
- 对索引、工号、医生姓名、性别、身份证、手机号码、相片、医院名称、医院地址、科室名称、科室地址等内容进行详情、修改和删除等操作
医院信息管理
- 对索引、医院名称、医院地址、医院图片、院长、成立时间、联系电话等内容进行详情、修改和删除等操作
科室信息管理
- 对索引、科室名称、科室地址内容进行详情、修改和删除等操作
坐诊信息管理
- 对索引、工号、医生姓名、性别、医院名称、医院地址、科室名称、科室地址、相片、挂号费、审核回复、审核状态、审核等内容进行详情、修改和删除等操作
核酸检测管理
- 对索引、检测名称、检测封面、检测地点、检测类型、费用、发布时间等内容进行详情、修改和删除等操作
药品信息管理
- 对索引、药品名称、药品图片、药品功效、服用方式、单价、生产商内容进行详情、修改和删除等操作
处方信息管理
- 对索引、工号、医生姓名、医院名称、科室名称、处方名称、药品名称、单价、数量、金额、账号、姓名、操作日期、是否支付等内容进行详情和删除等操作
在线咨询管理
- 对索引、工号、医生姓名、咨询内容、账号、姓名、咨询日期等内容进行详情和删除等操作
疾控通知管理
- 对索引、标题、封面、注意事项、工号、医生姓名、发布日期内容进行详情和删除等操作
健康资讯管理
- 对索引、资讯标题、资讯封面、资讯类型、工号、医生姓名、发布时间等内容进行详情和删除等操作
5.3 医生功能模块
医生登录系统后,可进行以下功能模块的操作管理:
医生功能
- 对首页、个人中心、坐诊信息管理、挂号预约管理、药品信息管理、诊断信息管理、处方信息管理、住院信息管理、在线咨询管理、咨询回复管理、疾控通知管理、健康资讯管理等功能进行操作管理
坐诊信息管理
- 对索引、工号、医生姓名、性别、医院名称、医院地址、科室名称、科室地址、相片、挂号费、审核回复、审核状态等内容进行详情、修改和删除等操作
药品信息管理
- 对索引、药品名称、药品图片、药品功效、服用方式、单价、生产商内容进行详情等操作
疾控通知管理
- 对索引、标题、封面、注意事项、工号、医生姓名、发布日期内容进行详情、修改和删除等操作
5.3 会员功能模块
会员登录系统后,可进行以下功能模块的操作管理:
会员功能
- 对首页、个人中心、挂号预约管理、诊断信息管理、处方信息管理、住院信息管理、在线咨询管理、咨询回复管理、核酸预约管理、健康档案管理、我的收藏管理等功能进行操作管理
个人中心
- 通过填写账号、姓名、性别、身份证、手机号码、相片等信息进行修改操作
在线咨询管理
- 对索引、工号、医生姓名、咨询内容、账号、姓名、咨询日期等内容进行详情、修改和删除等操作
代码实现:
@Controller
@RequestMapping(value = {"/user"})
public class UserLoginController {
/**
* 最开始希望用Map的形式接参数,后来不用了,将请求对应的接受方式记录一下
*
* @RequestBody Map<String,Object> map post请求
* @RequestParam Map<String,Object> map get请求
*/
/**
* 注入service
*/
@Autowired
private UserLoginService userLoginService;
@Autowired
private JdbcTemplate jdbcTemplate;
/**
* 同时这个时候可以自己了解一下@Controller与@RestController的区别,以及@ResponseBody的用法。
*/
/**
* 跳转到用户登录页面
* @return 登录页面
*/
@RequestMapping(value = {"/loginHtml"})
public String loginHtml(){
return "userLogin";
}
/**
* 跳转到用户注册页面
* @return 注册页面
*/
@RequestMapping(value = {"/registerpage"})
public String registerpage(){
return "register";
}
/**
* 获取用户名与密码,用户登录
* @return 登录成功页面
*/
@RequestMapping(value = {"/userLogin"})
public String userLogin(@RequestParam("username") String username,
@RequestParam("password") String password,
Model model, HttpServletRequest request){
if(StringUtils.isEmpty(username)){
return "用户名不能为空";
}
if(StringUtils.isEmpty(password)){
return "密码不能为空";
}
User user = userLoginService.userLogin(username,password);
if(user != null){ //登录成功
request.getSession().setAttribute("session_user",user.getUsername()); //将用户信息放入session 用于后续的拦截器
//获取当前登录用户
Map<String, Object> map = new HashMap<>();
map.put("sessionId", request.getSession().getId()); // 取值
map.put("message", request.getSession().getAttribute("session_user"));
model.addAttribute("user",map.get("message"));
String sql2 = "select * from userinfo where iusername=?";
RowMapper<userinfo> rowMapper2=new BeanPropertyRowMapper<userinfo>(userinfo.class);
List<userinfo> userinfo= jdbcTemplate.query(sql2, rowMapper2,map.get("message"));
//userinfo thisinfo= jdbcTemplate.queryForObject(sql2, rowMapper2,map.get("message"));
if(userinfo.size()==0){
String sql="insert into userinfo(iusername,iage,iphone) values (?,?,?)";
jdbcTemplate.update(sql,map.get("message"),0,0);
List<userinfo> userinfo2= jdbcTemplate.query(sql2, rowMapper2,map.get("message"));
model.addAttribute("info",userinfo2.get(0));//添加一个值为"hello thymeleaf"的hello变量到视图
model.addAttribute("name",map.get("message"));
return "myhome";
}
model.addAttribute("info",userinfo.get(0));//添加一个值为"hello thymeleaf"的hello变量到视图
model.addAttribute("name",map.get("message"));
return "myhome";
}
return "userLogin";
}
/**
* 注册新用户
* @return 注册结果
*/
@ResponseBody
@RequestMapping(value = {"/uregister"})
public String addUser(@RequestParam("username") String username,
@RequestParam("password") String password,
@RequestParam("password2") String password2,
@RequestParam("age") int age){
if(StringUtils.isEmpty(username)){
return "用户名不能为空";
}
if(StringUtils.isEmpty(password)){
return "密码不能为空";
}
if(StringUtils.isEmpty(password2)){
return "确认密码不能为空";
}
if(!password.equals(password2)){
return "两次密码不相同,注册失败!!";
}else {
int res = userLoginService.adduser(username,password,age);
if(res == 0){
return "注册失败!";
}else {
return "注册成功!";
}
}
}
/**
* 用于测试拦截器(用户是否登录,查看session)
* 查询用户列表 http://localhost:8080/user/queryAllUser
* @return 用户列表(json串)
*/
@ResponseBody
@RequestMapping(value = {"/queryAllUser"})
public List<Map<String,Object>> queryAllUser(){
return userLoginService.queryAllUser();
}
}
源码获取:
大家点赞、收藏、关注、评论啦 、查看👇🏻获取联系方式👇🏻