——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot核酸疫苗预约管理系统(java+springboot+layui+jsp+mysql)
项目简述:
功能: 本系统共分为三个角色:系统管理员、医生、用户 功能模块:系统管理-用户管理、页面管理、角色管理 接诊人管理-接诊人列表、接诊人健康史 预约管理-预约时间、医生时间 日常健康-健康指南、健康监测、健康标准 接诊人档案 医院管理
项目运行:
环境配置:
Jdk1.8 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
项目技术:
JSP +SpringBoot + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。
——————————CodeStart——————————
预约记录相关数据接口:
@Api(tags = “预约记录相关数据接口”)
@CrossOrigin
@RestController
@RequestMapping(“/yuyue”)
public class YuyueController {
@Autowired
private IYuyueService iYuyueService;
@Autowired
private UserService userService;
@Autowired
private IJiezhongdianService jiezhongdianService;
@ApiOperation(“分页获取疫苗记录的信息”)
@CrossOrigin
@RequestMapping(value = “/pageQuery”,method = {RequestMethod.POST,RequestMethod.GET})
public DataVo
//如果起始页为空则默认为第一页
if(page==null)page=1;
//如果每页数为空则默认为10条数据
if(limit==null)limit=10;
//分页插件
Page
//将每页数设置进去
districtPage.setSize(limit);
//将起始页设置进去
districtPage.setCurrent(page);
//针对预约表查询
QueryWrapper
//从用户表查询出搜索栏中的用户集合
QueryWrapper
if (!StringUtils.isEmpty(user)) {
qwUser.like(“real_name”, user);
List
//这里是将查询出来的接种者集合遍历出来id,再去预约表中查询userID,将userID作为条件在预约表中查询
for (int i = 0; i < list.size(); i++) {
Long id = list.get(i).getId();
qw.eq(“user_id”, id);
// qw.orderByAsc(“code”);// 按照编码的升序显示;
districtPage = iYuyueService.page(districtPage,qw);
//将查询出来的预约记录导入list中
List
//将上面的记录进行封装,实体类为vo中的Iyuyue
List
for (int i=0;i<records.size();i++){
//创建一个Iyuyue对象,对数据进行封装
Iyuyue iyuyue = new Iyuyue();
iyuyue.setId(records.get(i).getId());
//从用户表中查询用户,通过预约表中的用户ID
User byId = userService.getById(records.get(i).getUserId());
iyuyue.setUser(byId.getRealName());
//从接种点表中查询出接种点信息,通过预约表中的接种点ID
Jiezhongdian byId1 = jiezhongdianService.getById(records.get(i).getJiezhongdianId());
iyuyue.setJiezhongdianName(byId1.getName());
iyuyue.setJiezhongdianAddress(byId1.getAddress());
iyuyue.setYuyueriqi(records.get(i).getYuyueriqi());
iyuyue.setStatus(records.get(i).getStatus());
iyuyue.setQrCodePath(records.get(i).getQrCodePath());
iyuyues.add(iyuyue);
DataVo
dataVo.setMsg(“成功获取数据”);
dataVo.setCode(0);
dataVo.setCount((int) districtPage.getTotal());
dataVo.setData(iyuyues);
return dataVo;
// @ApiOperation(“分页获取疫苗记录的信息”)
// @CrossOrigin
// @RequestMapping(value = “/pageQuery”,method = {RequestMethod.POST,RequestMethod.GET})
// public DataVo
// if(page==null)page=1;
// if(limit==null)limit=10;
// Page
// districtPage.setSize(limit);
// districtPage.setCurrent(page);
// QueryWrapper
// if(yuyueriqi != null){
// qw.eq(“yuyueriqi”,yuyueriqi);
// }
qw.orderByAsc(“code”);// 按照编码的升序显示;
// districtPage = iYuyueService.page(districtPage,qw);
// DataVo
// dataVo.setMsg(“成功获取数据”);
// dataVo.setCode(0);
// dataVo.setCount((int) districtPage.getTotal());
// dataVo.setData(districtPage.getRecords());
// return dataVo;
// }
疫苗相关数据接口:
@Api(tags = “疫苗相关数据接口”)
@CrossOrigin
@RestController
@RequestMapping(“/yimiao”)
public class YimiaoController {
@Autowired
private IYimiaoService iYimiaoService;
@GetMapping(“/findAll”)
public Result findAll(){
return Result.ok(iYimiaoService.list());
@ApiOperation(“分页获取疫苗记录的信息”)
@CrossOrigin
@GetMapping(“/pageQuery”)
public DataVo
if(page==null)page=1;
if(limit==null)limit=10;
Page
districtPage.setSize(limit);
districtPage.setCurrent(page);
QueryWrapper
if(StringUtils.isNotEmpty(yimiaoZhonglei)){
qw.like(“yimiao_zhonglei”,yimiaoZhonglei);
// qw.orderByAsc(“code”);// 按照编码的升序显示;
districtPage = iYimiaoService.page(districtPage,qw);
DataVo
dataVo.setMsg(“成功获取数据”);
dataVo.setCode(0);
dataVo.setCount((int) districtPage.getTotal());
dataVo.setData(districtPage.getRecords());
return dataVo;
@ApiOperation(“新增疫苗信息”)
@PostMapping(“/save”)
public Result save(Yimiao yimiao){
try{
iYimiaoService.save(yimiao);
return Result.ok(“新增成功”);
}catch (Exception e){
e.printStackTrace();
return Result.error(“新增失败:”+e.getMessage());
@ApiOperation(“修改疫苗信息”)
@PostMapping(“/update”)
public Result update(Yimiao yimiao){
try{
iYimiaoService.updateById(yimiao);
return Result.ok(“修改成功”);
}catch (Exception e){
e.printStackTrace();
return Result.error(“修改失败:”+e.getMessage());
@ApiOperation(“删除疫苗信息”)
@GetMapping(“/del/{id}”)
public Result del(@PathVariable Long id){
try{
System.out.println(id);
System.out.println(iYimiaoService.removeById(id));
return Result.ok(“删除成功”);
}catch (Exception e){
e.printStackTrace();
return Result.error(“删除失败:”+e.getMessage());
接种者用户管理相关接口:
@Api(tags=”接种者用户管理相关接口”)
@RestController
@RequestMapping(“/user”)
public class UserController {
@Resource
private UserService userService;
@Autowired
private IYuyueService iYuyueService;
@Autowired
private IJiezhongService iJiezhongService;
// 接种人员注册
@PostMapping(“/register”)
@ApiOperation(“用户注册”)
public Result register(@RequestBody User user){
try{
if(StringUtils.isEmpty(user.getUsername()))
user.setUsername(user.getPhone());// 手机号码作为登录账号
userService.register(user);
return Result.ok(“注册成功”);
}catch (Exception e){
return Result.error(“注册失败”);
/**
预约
@param yuyue
@param token
@return
*/
@ApiOperation(“预约登记”)
@PostMapping(“/yuyue”)
public Result yuyue(@RequestBody Yuyue yuyue, @RequestHeader(“x-token”) String token){
// 获取 token 中的 user Name
try {
String userId = JwtUtils.getAudience(token);
yuyue.setUserId(Integer.parseInt(userId));// 设置预约人
// yuyue.setYuyueriqi(LocalDate.now());
yuyue.setStatus(0);// 0表示未完成;1表示已完成;
iYuyueService.yuyue(yuyue);
return Result.ok(“添加历史成功”);
}catch (TokenUnavailable e){
Result result = Result.error(“验证失败:”+e.getMessage());
result.setCode(501);
return result;
}catch (Exception e){
return Result.error(“发生错误:”+e.getMessage());
@ApiOperation(“获取接种人员预约记录”)
@GetMapping(value = “/findMyYuyues”)
public Result findMyYuyues( @RequestHeader(“x-token”) String token){
try{
String userId = JwtUtils.getAudience(token);
QueryWrapper
qw.eq(“user_id”,Integer.parseInt(userId));
qw.orderByDesc(“yuyueriqi”);
return Result.ok(iYuyueService.list(qw));
}catch (TokenUnavailable e){
Result result = Result.error(“验证失败:”+e.getMessage());
result.setCode(501);
return result;
}catch (Exception e){
return Result.error(“发生错误:”+e.getMessage());
@ApiOperation(“获取接种人员接种记录”)
@GetMapping(value = “/findMyJiezhong”)
public Result findMyJiezhong( @RequestHeader(“x-token”) String token){
try{
String userId = JwtUtils.getAudience(token);
QueryWrapper
qw.eq(“jiezhongren”,Integer.parseInt(userId));
qw.orderByDesc(“create_time”);
return Result.ok(iJiezhongService.list(qw));
}catch (TokenUnavailable e){
Result result = Result.error(“验证失败:”+e.getMessage());
result.setCode(501);
return result;
}catch (Exception e){
return Result.error(“发生错误:”+e.getMessage());
/**
*分页查询
@param page 当前页码
@param limit 最大记录数
@return 分页结果
*/
@ApiOperation(value = “分页获取所有用户”)
@PostMapping(“/list”)
@CrossOrigin
public DataVo list(@RequestParam(defaultValue = “1”) Integer page,
@RequestParam(defaultValue = “5”) Integer limit){
Page
p1.setCurrent(page);//当前页
p1.setSize((long)limit);//每页最多条数
Page
page1.getRecords().forEach(s-> System.out.println(s.toString()));
DataVo dataVo=new DataVo();
dataVo.setCode(0);
dataVo.setMsg(“成功”);
dataVo.setCount((int)page1.getTotal());
dataVo.setData(page1.getRecords());
// Result.ok(page1.getRecords()).setCode(0);
return dataVo;
///
@ApiOperation(value = “添加用户”)
@PostMapping(“/save”)
@CrossOrigin
public String sava1(User user){
//调用service
try {
boolean save = userService.save(user);
return “ok”;
}catch (Exception e){
return “错误:”+e.getMessage();
/**
更新用户信息方法
注意点:
1.账号唯一
2.密码长度2-12
@param admin
@return 执行结果
*/
@ApiOperation(value = “更新用户信息”)
@PostMapping(“/update”)
@CrossOrigin
public String update1(User admin){
//调用service
try {
boolean save = userService.updateById(admin);
return “ok”;
}catch (Exception e){
return “错误:”+e.getMessage();
/**
删除用户
@param id 用户id
@return 执行结果
*/
@ApiOperation(value = “删除用户”)
@GetMapping(“/delate”)
@CrossOrigin
public String delate1(int id){
//调用service
try {
boolean b = userService.removeById(id);
System.out.println(b);
if (b){
return “ok”;
}else {
return “no”;
}catch (Exception e){
return “错误:”+e.getMessage();
// // 登录(不验证)
// @CrossOrigin(origins = “*”)
// @PassToken(required = false)
// @RequestMapping(value = “/validate”, method = RequestMethod.POST)
// public Result validate(@RequestBody UserToken userToken) {
// System.out.println(“>>>” + userToken);
// try {
// // 获取 token 中的 user Name
// String userType = JwtUtils.getClaimByName(userToken.getToken(),”userType”).asString();
// if(!”jiezhongzhe”.equals(userType)){
// throw new RuntimeException(“用户的身份不符”);
// }
// String userId = JwtUtils.getAudience(userToken.getToken());
// System.out.println(“>>>” + userId);
// JwtUtils.verifyToken(userToken.getToken(), userId);
// return Result.ok(“验证成功”);
// } catch (Exception e) {
// Result result = Result.error(“验证失败”);
// result.setCode(510);
// return result;
// }
//
// }
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=011422322105200jk
https://javayms.pages.dev?id=011422322105200jk