没有备案的网站,wordpress登录界面logo,桂林网站制作,做网站的技巧博主介绍#xff1a;✌从事软件开发10年之余#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ #x1f345;文末获取源码联系#x1f345; #x1f447;#x1f3fb; 精… 博主介绍✌从事软件开发10年之余专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 文末获取源码联系 精彩专栏推荐订阅 不然下次找不到哟 ————————————————计算机毕业设计《1000套》✌ 目录
1、项目介绍及开发技术
1.1 项目介绍
1.2 开发技术
2、系统功能设计结构图
3、功能截图
3.1 前台功能
3.2 后台功能
4、数据库表结构设计
5、关键代码
5.1 挂号Controller模块
5.2 挂号Service模块
5.3 挂号ServiceImpl模块
5.4 挂号Dao模块
6、论文目录结构
7、源码获取 1、项目介绍及开发技术 1.1 项目介绍
在当前社会随着人们健康意识的增强和医疗需求的多样化社区医疗服务作为公共医疗体系的重要组成部分其作用日益凸显。然而传统的社区医疗服务模式存在诸多不便如信息不对称、服务效率低下、资源分配不均等问题这些问题限制了社区医疗服务的进一步发展。为了解决这些问题提升社区医疗服务的质量和效率我们设计并开发了一个社区医疗服务系统。
背景 社区医疗服务系统旨在通过数字化手段为社区居民提供更加便捷、高效的医疗服务。随着互联网技术的普及越来越多的服务开始向线上转移医疗健康服务也不例外。社区居民对于在线咨询、预约挂号、健康管理等方面的需求日益增长这要求社区医疗服务必须与时俱进利用现代信息技术提供更好的服务。
目的意义
1. 提升服务效率系统通过提供在线预约挂号、咨询等功能减少了居民前往医疗机构的时间和精力提高了服务效率。2. 优化资源配置系统能够根据居民的医疗需求和医生的专业特长合理分配医疗资源提高资源利用效率。3. 增强互动交流通过论坛和留言板功能居民可以与其他用户和医生进行交流分享医疗经验增强社区的凝聚力。4. 提高健康意识防范指南模块为用户提供了丰富的健康知识帮助居民提高健康意识和自我保健能力。5. 支持决策制定系统收集的用户数据和反馈信息为医疗机构提供了决策支持有助于优化服务流程和提高服务质量。
综上所述社区医疗服务系统的设计与实现不仅能够为社区居民提供一个全面、便捷的医疗服务平台还能够为医疗机构提供一个高效、智能的管理工具。通过技术手段优化社区医疗服务流程该系统有望成为推动社区医疗服务创新的重要力量为提升居民健康水平和生活质量做出贡献。
1.2 开发技术
类别技术名称用途/描述开发语言Java一种广泛使用的面向对象编程语言。框架Spring Boot简化Spring应用的初始搭建以及开发过程。ORM工具MyBatis PlusMyBatis的增强工具简化CRUD操作。数据库MySQL流行的关系型数据库管理系统。构建工具Maven项目管理和理解工具。开发工具IDEA集成开发环境用于代码编写和调试。JDK版本JDK 1.8Java开发工具包提供运行Java程序所需的环境。前端框架Vue用于构建用户界面的渐进式JavaScript框架。UI框架Element UI基于Vue的桌面端组件库。前端技术HTML网页内容的标准标记语言。前端技术CSS描述HTML文档的样式。前端技术JS网页脚本语言用于实现网页的动态效果。 2、系统功能设计结构图 功能模块结构图 │ ├── 前端 │ ├── 登录 │ ├── 注册 │ ├── 首页 │ ├── 论坛 │ ├── 留言板 │ ├── 社区公告 │ ├── 医生 │ │ ├── 立即挂号 │ │ └── 咨询 │ ├── 防范指南 │ └── 个人中心 │ ├── 个人信息 │ ├── 医生收藏 │ ├── 医生评价 │ ├── 挂号 │ ├── 防范指南收藏 │ └── 防范指南留言 │ └── 后端 ├── 登录 ├── 首页 ├── 个人中心 ├── 管理员管理 ├── 用户管理 ├── 医生管理 ├── 挂号管理 ├── 防范指南管理 ├── 基础数据管理 ├── 论坛管理 ├── 留言板管理 └── 社区公告管理 └── 轮播图信息管理 系统MVC框架请求流程展示 3、功能截图 3.1 前台功能 3.2 后台功能 4、数据库表结构设计 CREATE TABLE news (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,news_name varchar(200) DEFAULT NULL COMMENT 公告标题 Search111 ,news_types int(11) DEFAULT NULL COMMENT 公告类型 Search111 ,news_photo varchar(200) DEFAULT NULL COMMENT 公告图片,insert_time timestamp NULL DEFAULT NULL COMMENT 添加时间,news_content longtext COMMENT 公告详情,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show1 show2 nameShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT15 DEFAULT CHARSETutf8 COMMENT社区公告;DROP TABLE IF EXISTS users;CREATE TABLE users (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,username varchar(100) NOT NULL COMMENT 医院名,password varchar(100) NOT NULL COMMENT 密码,role varchar(100) DEFAULT 管理员 COMMENT 角色,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 新增时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT2 DEFAULT CHARSETutf8 COMMENT管理员;DROP TABLE IF EXISTS yisheng_commentback;CREATE TABLE yisheng_commentback (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,yisheng_id int(11) DEFAULT NULL COMMENT 医生,yonghu_id int(11) DEFAULT NULL COMMENT 用户,yisheng_commentback_text longtext COMMENT 评价内容,insert_time timestamp NULL DEFAULT NULL COMMENT 评价时间,reply_text longtext COMMENT 回复内容,update_time timestamp NULL DEFAULT NULL COMMENT 回复时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 listShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT医生评价;/*Table structure for table yisheng_yuyue */DROP TABLE IF EXISTS yisheng_yuyue;CREATE TABLE yisheng_yuyue (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,yisheng_id int(11) DEFAULT NULL COMMENT 医生,yonghu_id int(11) DEFAULT NULL COMMENT 用户,yisheng_yuyue_uuid_number varchar(200) DEFAULT NULL COMMENT 就诊识别码,yisheng_yuyue_time date DEFAULT NULL COMMENT 挂号时间 Search111,time_types int(11) DEFAULT NULL COMMENT 时间类型 Search111,yisheng_yuyue_types int(11) DEFAULT NULL COMMENT 挂号状态,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 listShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT20 DEFAULT CHARSETutf8 COMMENT挂号;DROP TABLE IF EXISTS yonghu;CREATE TABLE yonghu (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,username varchar(200) DEFAULT NULL COMMENT 账户,password varchar(200) DEFAULT NULL COMMENT 密码,yonghu_name varchar(200) DEFAULT NULL COMMENT 用户名称 Search111 ,yonghu_phone varchar(200) DEFAULT NULL COMMENT 用户手机号,yonghu_id_number varchar(200) DEFAULT NULL COMMENT 用户身份证号,yonghu_photo varchar(200) DEFAULT NULL COMMENT 用户头像,sex_types int(11) DEFAULT NULL COMMENT 性别 Search111,yonghu_email varchar(200) DEFAULT NULL COMMENT 用户邮箱,new_money decimal(10,2) DEFAULT NULL COMMENT 余额 ,yonghu_delete int(11) DEFAULT NULL COMMENT 逻辑删除,insert_time timestamp NULL DEFAULT NULL COMMENT 添加时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8 COMMENT用户;DROP TABLE IF EXISTS zhinan;CREATE TABLE zhinan (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,zhinan_uuid_number varchar(200) DEFAULT NULL COMMENT 指南编号,zhinan_name varchar(200) DEFAULT NULL COMMENT 指南标题 Search111 ,zhinan_photo varchar(200) DEFAULT NULL COMMENT 指南图片,zhinan_video varchar(200) DEFAULT NULL COMMENT 指南视频,zhinan_types int(11) DEFAULT NULL COMMENT 指南类型 Search111,zhinan_clicknum int(11) DEFAULT NULL COMMENT 指南热度,zan_number int(11) DEFAULT NULL COMMENT 赞,cai_number int(11) DEFAULT NULL COMMENT 踩,zhinan_content longtext COMMENT 指南介绍 ,zhinan_delete int(11) DEFAULT NULL COMMENT 逻辑删除,insert_time timestamp NULL DEFAULT NULL COMMENT 录入时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show1 show2 photoShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT15 DEFAULT CHARSETutf8 COMMENT防范指南;/*Table structure for table zhinan_collection */DROP TABLE IF EXISTS zhinan_collection;CREATE TABLE zhinan_collection (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,zhinan_id int(11) DEFAULT NULL COMMENT 指南,yonghu_id int(11) DEFAULT NULL COMMENT 用户,zhinan_collection_types int(11) DEFAULT NULL COMMENT 类型,insert_time timestamp NULL DEFAULT NULL COMMENT 收藏时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 photoShow,PRIMARY KEY (id)
) DROP TABLE IF EXISTS zhinan_liuyan;CREATE TABLE zhinan_liuyan (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,zhinan_id int(11) DEFAULT NULL COMMENT 指南,yonghu_id int(11) DEFAULT NULL COMMENT 用户,zhinan_liuyan_text longtext COMMENT 留言内容,insert_time timestamp NULL DEFAULT NULL COMMENT 留言时间,reply_text longtext COMMENT 回复内容,update_time timestamp NULL DEFAULT NULL COMMENT 回复时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 listShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT指南留言; 5、关键代码 5.1 挂号Controller模块
package com.controller;import java.io.File;
import java.math.BigDecimal;
import java.net.URL;
import java.text.SimpleDateFormat;import com.alibaba.fastjson.JSONObject;import java.util.*;import org.springframework.beans.BeanUtils;import javax.servlet.http.HttpServletRequest;import org.springframework.web.context.ContextLoader;import javax.servlet.ServletContext;import com.service.TokenService;
import com.utils.*;import java.lang.reflect.InvocationTargetException;import com.service.DictionaryService;
import org.apache.commons.lang3.StringUtils;
import com.annotation.IgnoreAuth;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.*;
import com.entity.view.*;
import com.service.*;
import com.utils.PageUtils;
import com.utils.R;
import com.alibaba.fastjson.*;/*** 挂号* 后端接口** author* email*/
RestController
Controller
RequestMapping(/yishengYuyue)
public class YishengYuyueController {private static final Logger logger LoggerFactory.getLogger(YishengYuyueController.class);private static final String TABLE_NAME yishengYuyue;Autowiredprivate YishengYuyueService yishengYuyueService;Autowiredprivate TokenService tokenService;Autowiredprivate DictionaryService dictionaryService;//字典Autowiredprivate ForumService forumService;//论坛Autowiredprivate LiuyanService liuyanService;//留言板Autowiredprivate NewsService newsService;//社区公告Autowiredprivate YishengService yishengService;//医生Autowiredprivate YishengChatService yishengChatService;//用户咨询Autowiredprivate YishengCollectionService yishengCollectionService;//医生收藏Autowiredprivate YishengCommentbackService yishengCommentbackService;//医生评价Autowiredprivate YonghuService yonghuService;//用户Autowiredprivate ZhinanService zhinanService;//防范指南Autowiredprivate ZhinanCollectionService zhinanCollectionService;//指南收藏Autowiredprivate ZhinanLiuyanService zhinanLiuyanService;//指南留言Autowiredprivate UsersService usersService;//管理员/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params, HttpServletRequest request) {logger.debug(page方法:,,Controller:{},,params:{}, this.getClass().getName(), JSONObject.toJSONString(params));String role String.valueOf(request.getSession().getAttribute(role));if (false)return R.error(511, 永不会进入);else if (用户.equals(role))params.put(yonghuId, request.getSession().getAttribute(userId));else if (医生.equals(role))params.put(yishengId, request.getSession().getAttribute(userId));CommonUtil.checkMap(params);PageUtils page yishengYuyueService.queryPage(params);//字典表数据转换ListYishengYuyueView list (ListYishengYuyueView) page.getList();for (YishengYuyueView c : list) {//修改对应字典表字段dictionaryService.dictionaryConvert(c, request);}return R.ok().put(data, page);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id, HttpServletRequest request) {logger.debug(info方法:,,Controller:{},,id:{}, this.getClass().getName(), id);YishengYuyueEntity yishengYuyue yishengYuyueService.selectById(id);if (yishengYuyue ! null) {//entity转viewYishengYuyueView view new YishengYuyueView();BeanUtils.copyProperties(yishengYuyue, view);//把实体数据重构到view中//级联表 医生//级联表YishengEntity yisheng yishengService.selectById(yishengYuyue.getYishengId());if (yisheng ! null) {BeanUtils.copyProperties(yisheng, view, new String[]{id, createTime, insertTime, updateTime, yonghuId, yishengId});//把级联的数据添加到view中,并排除id和创建时间字段,当前表的级联注册表view.setYishengId(yisheng.getId());}//级联表 用户//级联表YonghuEntity yonghu yonghuService.selectById(yishengYuyue.getYonghuId());if (yonghu ! null) {BeanUtils.copyProperties(yonghu, view, new String[]{id, createTime, insertTime, updateTime, yonghuId, yishengId});//把级联的数据添加到view中,并排除id和创建时间字段,当前表的级联注册表view.setYonghuId(yonghu.getId());}//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);} else {return R.error(511, 查不到数据);}}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody YishengYuyueEntity yishengYuyue, HttpServletRequest request) {logger.debug(save方法:,,Controller:{},,yishengYuyue:{}, this.getClass().getName(), yishengYuyue.toString());String role String.valueOf(request.getSession().getAttribute(role));if (false)return R.error(511, 永远不会进入);else if (用户.equals(role))yishengYuyue.setYonghuId(Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId))));else if (医生.equals(role))yishengYuyue.setYishengId(Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId))));WrapperYishengYuyueEntity queryWrapper new EntityWrapperYishengYuyueEntity().eq(yisheng_id, yishengYuyue.getYishengId()).eq(yonghu_id, yishengYuyue.getYonghuId()).eq(yisheng_yuyue_time, new SimpleDateFormat(yyyy-MM-dd).format(yishengYuyue.getYishengYuyueTime())).eq(time_types, yishengYuyue.getTimeTypes()).eq(yisheng_yuyue_types, yishengYuyue.getYishengYuyueTypes());logger.info(sql语句: queryWrapper.getSqlSegment());YishengYuyueEntity yishengYuyueEntity yishengYuyueService.selectOne(queryWrapper);if (yishengYuyueEntity null) {yishengYuyue.setCreateTime(new Date());yishengYuyueService.insert(yishengYuyue);return R.ok();} else {return R.error(511, 表中有相同数据);}}/*** 后端修改*/RequestMapping(/update)public R update(RequestBody YishengYuyueEntity yishengYuyue, HttpServletRequest request) throws NoSuchFieldException, ClassNotFoundException, IllegalAccessException, InstantiationException {logger.debug(update方法:,,Controller:{},,yishengYuyue:{}, this.getClass().getName(), yishengYuyue.toString());YishengYuyueEntity oldYishengYuyueEntity yishengYuyueService.selectById(yishengYuyue.getId());//查询原先数据String role String.valueOf(request.getSession().getAttribute(role));
// if(false)
// return R.error(511,永远不会进入);
// else if(用户.equals(role))
// yishengYuyue.setYonghuId(Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId))));
// else if(医生.equals(role))
// yishengYuyue.setYishengId(Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId))));yishengYuyueService.updateById(yishengYuyue);//根据id更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Integer[] ids, HttpServletRequest request) {logger.debug(delete:,,Controller:{},,ids:{}, this.getClass().getName(), ids.toString());ListYishengYuyueEntity oldYishengYuyueList yishengYuyueService.selectBatchIds(Arrays.asList(ids));//要删除的数据yishengYuyueService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 批量上传*/RequestMapping(/batchInsert)public R save(String fileName, HttpServletRequest request) {logger.debug(batchInsert方法:,,Controller:{},,fileName:{}, this.getClass().getName(), fileName);Integer yonghuId Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId)));SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);//.eq(time, new SimpleDateFormat(yyyy-MM-dd).format(new Date()))try {ListYishengYuyueEntity yishengYuyueList new ArrayList();//上传的东西MapString, ListString seachFields new HashMap();//要查询的字段Date date new Date();int lastIndexOf fileName.lastIndexOf(.);if (lastIndexOf -1) {return R.error(511, 该文件没有后缀);} else {String suffix fileName.substring(lastIndexOf);if (!.xls.equals(suffix)) {return R.error(511, 只支持后缀为xls的excel文件);} else {URL resource this.getClass().getClassLoader().getResource(static/upload/ fileName);//获取文件路径File file new File(resource.getFile());if (!file.exists()) {return R.error(511, 找不到上传文件请联系管理员);} else {ListListString dataList PoiUtil.poiImport(file.getPath());//读取xls文件dataList.remove(0);//删除第一行因为第一行是提示for (ListString data : dataList) {//循环YishengYuyueEntity yishengYuyueEntity new YishengYuyueEntity();
// yishengYuyueEntity.setYishengId(Integer.valueOf(data.get(0))); //医生 要改的
// yishengYuyueEntity.setYonghuId(Integer.valueOf(data.get(0))); //用户 要改的
// yishengYuyueEntity.setYishengYuyueUuidNumber(data.get(0)); //就诊识别码 要改的
// yishengYuyueEntity.setYishengYuyueTime(sdf.parse(data.get(0))); //挂号时间 要改的
// yishengYuyueEntity.setTimeTypes(Integer.valueOf(data.get(0))); //时间类型 要改的
// yishengYuyueEntity.setYishengYuyueTypes(Integer.valueOf(data.get(0))); //挂号状态 要改的
// yishengYuyueEntity.setCreateTime(date);//时间yishengYuyueList.add(yishengYuyueEntity);//把要查询是否重复的字段放入map中//就诊识别码if (seachFields.containsKey(yishengYuyueUuidNumber)) {ListString yishengYuyueUuidNumber seachFields.get(yishengYuyueUuidNumber);yishengYuyueUuidNumber.add(data.get(0));//要改的} else {ListString yishengYuyueUuidNumber new ArrayList();yishengYuyueUuidNumber.add(data.get(0));//要改的seachFields.put(yishengYuyueUuidNumber, yishengYuyueUuidNumber);}}//查询是否重复//就诊识别码ListYishengYuyueEntity yishengYuyueEntities_yishengYuyueUuidNumber yishengYuyueService.selectList(new EntityWrapperYishengYuyueEntity().in(yisheng_yuyue_uuid_number, seachFields.get(yishengYuyueUuidNumber)));if (yishengYuyueEntities_yishengYuyueUuidNumber.size() 0) {ArrayListString repeatFields new ArrayList();for (YishengYuyueEntity s : yishengYuyueEntities_yishengYuyueUuidNumber) {repeatFields.add(s.getYishengYuyueUuidNumber());}return R.error(511, 数据库的该表中的 [就诊识别码] 字段已经存在 存在数据为: repeatFields.toString());}yishengYuyueService.insertBatch(yishengYuyueList);return R.ok();}}}} catch (Exception e) {e.printStackTrace();return R.error(511, 批量插入数据异常请联系管理员);}}/*** 前端列表*/IgnoreAuthRequestMapping(/list)public R list(RequestParam MapString, Object params, HttpServletRequest request) {logger.debug(list方法:,,Controller:{},,params:{}, this.getClass().getName(), JSONObject.toJSONString(params));CommonUtil.checkMap(params);PageUtils page yishengYuyueService.queryPage(params);//字典表数据转换ListYishengYuyueView list (ListYishengYuyueView) page.getList();for (YishengYuyueView c : list)dictionaryService.dictionaryConvert(c, request); //修改对应字典表字段return R.ok().put(data, page);}/*** 前端详情*/RequestMapping(/detail/{id})public R detail(PathVariable(id) Long id, HttpServletRequest request) {logger.debug(detail方法:,,Controller:{},,id:{}, this.getClass().getName(), id);YishengYuyueEntity yishengYuyue yishengYuyueService.selectById(id);if (yishengYuyue ! null) {//entity转viewYishengYuyueView view new YishengYuyueView();BeanUtils.copyProperties(yishengYuyue, view);//把实体数据重构到view中//级联表YishengEntity yisheng yishengService.selectById(yishengYuyue.getYishengId());if (yisheng ! null) {BeanUtils.copyProperties(yisheng, view, new String[]{id, createDate});//把级联的数据添加到view中,并排除id和创建时间字段view.setYishengId(yisheng.getId());}//级联表YonghuEntity yonghu yonghuService.selectById(yishengYuyue.getYonghuId());if (yonghu ! null) {BeanUtils.copyProperties(yonghu, view, new String[]{id, createDate});//把级联的数据添加到view中,并排除id和创建时间字段view.setYonghuId(yonghu.getId());}//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);} else {return R.error(511, 查不到数据);}}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody YishengYuyueEntity yishengYuyue, HttpServletRequest request) {YonghuEntity userId yonghuService.selectById((Integer) request.getSession().getAttribute(userId));YishengEntity yishengEntity yishengService.selectById(yishengYuyue.getYishengId());if(userId.getNewMoney() yishengEntity.getYishengNewMoney()){return R.error(余额不足请充值);}userId.setNewMoney(userId.getNewMoney() - yishengEntity.getYishengNewMoney());yonghuService.updateById(userId);yishengYuyue.setCreateTime(new Date());yishengYuyueService.insert(yishengYuyue);return R.ok();}/*** 取消*/RequestMapping(/refund)public R refund(Integer id, HttpServletRequest request) {logger.debug(refund方法:,,Controller:{},,id:{}, this.getClass().getName(), id);String role String.valueOf(request.getSession().getAttribute(role));YishengYuyueEntity yishengYuyue yishengYuyueService.selectById(id);//当前表serviceInteger yishengId yishengYuyue.getYishengId();if (yishengId null)return R.error(511, 查不到该医生);YishengEntity yishengEntity yishengService.selectById(yishengId);if (yishengEntity null)return R.error(511, 查不到该医生);Double yishengNewMoney yishengEntity.getYishengNewMoney();if (yishengNewMoney null)return R.error(511, 医生价格不能为空);Integer userId (Integer) request.getSession().getAttribute(userId);YonghuEntity yonghuEntity yonghuService.selectById(userId);if (yonghuEntity null)return R.error(511, 用户不能为空);if (yonghuEntity.getNewMoney() null)return R.error(511, 用户金额不能为空);Double zhekou 1.0;//计算金额Double money yishengEntity.getYishengNewMoney() * 1 * zhekou;//计算所获得积分Double buyJifen 0.0;yonghuEntity.setNewMoney(yonghuEntity.getNewMoney() money); //设置金额yishengYuyue.setYishengYuyueTypes(102);//设置订单状态为已取消yishengYuyueService.updateAllColumnById(yishengYuyue);//根据id更新yonghuService.updateById(yonghuEntity);//更新用户信息yishengService.updateById(yishengEntity);//更新订单中医生的信息return R.ok();}/*** 评论*/RequestMapping(/commentback)public R commentback(Integer id, String commentbackText, Integer yishengCommentbackPingfenNumber, HttpServletRequest request) {logger.debug(commentback方法:,,Controller:{},,id:{}, this.getClass().getName(), id);YishengYuyueEntity yishengYuyue yishengYuyueService.selectById(id);if (yishengYuyue null)return R.error(511, 查不到该订单);Integer yishengId yishengYuyue.getYishengId();if (yishengId null)return R.error(511, 查不到该医生);YishengCommentbackEntity yishengCommentbackEntity new YishengCommentbackEntity();yishengCommentbackEntity.setId(id);yishengCommentbackEntity.setYishengId(yishengId);yishengCommentbackEntity.setYonghuId((Integer) request.getSession().getAttribute(userId));yishengCommentbackEntity.setYishengCommentbackText(commentbackText);yishengCommentbackEntity.setInsertTime(new Date());yishengCommentbackEntity.setReplyText(null);yishengCommentbackEntity.setUpdateTime(null);yishengCommentbackEntity.setCreateTime(new Date());yishengCommentbackService.insert(yishengCommentbackEntity);yishengYuyue.setYishengYuyueTypes(105);//设置订单状态为已评论yishengYuyueService.updateById(yishengYuyue);//根据id更新return R.ok();}/*** 完成*/RequestMapping(/deliver)public R deliver(Integer id, HttpServletRequest request) {logger.debug(refund:,,Controller:{},,ids:{}, this.getClass().getName(), id.toString());YishengYuyueEntity yishengYuyueEntity yishengYuyueService.selectById(id);yishengYuyueEntity.setYishengYuyueTypes(103);//设置订单状态为已完成yishengYuyueService.updateById(yishengYuyueEntity);return R.ok();}}
5.2 挂号Service模块 package com.service;import com.baomidou.mybatisplus.service.IService;
import com.utils.PageUtils;
import com.entity.YishengYuyueEntity;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.springframework.lang.Nullable;
import java.util.List;/*** 挂号 服务类*/
public interface YishengYuyueService extends IServiceYishengYuyueEntity {/*** param params 查询参数* return 带分页的查询出来的数据*/PageUtils queryPage(MapString, Object params);}
5.3 挂号ServiceImpl模块 package com.service.impl;import com.utils.StringUtil;
import com.service.DictionaryService;
import com.utils.ClazzDiff;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.lang.reflect.Field;
import java.util.*;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import com.utils.PageUtils;
import com.utils.Query;
import org.springframework.web.context.ContextLoader;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import org.springframework.lang.Nullable;
import org.springframework.util.Assert;
import com.dao.YishengYuyueDao;
import com.entity.YishengYuyueEntity;
import com.service.YishengYuyueService;
import com.entity.view.YishengYuyueView;/*** 挂号 服务实现类*/
Service(yishengYuyueService)
Transactional
public class YishengYuyueServiceImpl extends ServiceImplYishengYuyueDao, YishengYuyueEntity implements YishengYuyueService {Overridepublic PageUtils queryPage(MapString,Object params) {PageYishengYuyueView page new QueryYishengYuyueView(params).getPage();page.setRecords(baseMapper.selectListView(page,params));return new PageUtils(page);}}5.4 挂号Dao模块 package com.dao;import com.entity.YishengYuyueEntity;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.plugins.pagination.Pagination;import org.apache.ibatis.annotations.Param;
import com.entity.view.YishengYuyueView;/*** 挂号 Dao 接口** author */
public interface YishengYuyueDao extends BaseMapperYishengYuyueEntity {ListYishengYuyueView selectListView(Pagination page,Param(params)MapString,Object params);}6、论文目录结构 摘要... I
Abstract... II
1 绪论... 1 1.1 项目简介... 1 1.2 调查研究... 1 1.2.1 研究背景及意义... 1 1.2.2 国内外研究现状... 2 1.2.3 研究主要内容... 2 1.3 论文的章节安排... 3
2 系统相关技术介绍... 4 2.1 Java语言... 4 2.2 SpringBoot框架... 4 2.3 Vue框架... 4 2.4 MySQL数据库... 4
3 系统需求分析... 6 3.1 可行性分析... 6 3.1.1 技术可行性... 6 3.1.2 经济可行性... 6 3.1.3 操作可行性... 6 3.2 系统功能需求... 6 3.2.1 用户端功能需求... 6 3.2.2 XX端功能需求... 6 3.2.3 管理员端功能需求... 6 3.3 系统性能需求... 6
4 系统总体设计... 7 4.1 系统总体架构设计... 7 4.2 系统的功能设计... 7 4.3 数据库设计... 7 4.3.1 概念设计E-R图... 7 4.3.2 逻辑设计关系模式... 7 4.3.3 数据库物理设计... 7
5 系统详细实现... 14 5.1 系统实现环境... 14 5.2 用户端... 14 5.2.1 登录页面... 14 5.2.2 注册页面... 14 5.2.3 XXXX页面... 14 5.2.4 XXXX页面... 14 5.2.5 XXXX页面... 14 5.3 XXXX端... 15 5.3.1 XXXX页面... 15 5.3.2 XXXX页面... 15 5.3.3 XXXX页面... 15 5.3.4 XXXX页面... 15 5.4 管理端... 15 5.4.1 用户管理页面... 15 5.4.2 XXXX页面... 15 5.4.3 XXXX页面... 16 5.4.4 XXXX页面... 16
6 系统测试... 16 6.1 测试目的... 16 6.2 测试方法... 16 6.3 测试用例... 16 6.3.1 XXXX测试... 16 6.3.2 XXXX测试... 16 6.4 测试结果... 16
结论... 17
参考文献... 18
致谢... 19
更多源码
计算机毕业设计选题1000套等你来 7、源码获取 感谢大家的阅读如有不懂的问题可以评论区交流或私聊!
喜欢文章可以点赞、收藏、关注、评论啦
→下方联系方式获取源码←