本系统中主要的功能。包括新生的入宿、在宿学生的管理、来访管理、宿舍扣分情况管理及值班日记等。其中,系统应能提供有效的、快捷的获知有空床位的寝室情况和该寝室内已住学生的基本信息;对各寝室在宿学生情况能有效管理;对外来人员的访问要详细登记证件号、要访问学生所在的公寓楼和宿舍号及时间等信息。
开发语言:Java
使用框架:spring boot
前端技术:JavaScript、Vue 、css3
开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code
数据库:MySQL 5.7/8.0
数据库管理工具:phpstudy/Navicat
JDK版本:jdk1.8
Maven: apache-maven 3.8.1-bin
该系统设计三个角色:系统管理员、公寓管理员、学生
(1)用户管理模块:
系统管理员作为使用者,能够开展一系列的操作,包括:分配权限、对用户信息进行增添/查看删除/修改、设置角色等。
(2)登录模块:
不同角色用户能够在输入用户名及密码之后,成功进入到系统内,并结合不同的需求开展相关操作。学生及公寓管理工作者能够进入到系统前台页面,在一些模块内进行操作;系统管理员能够在全部模块内开展操作。
(3)宿舍分配模块︰
公寓管理人员作为该模块的使用者,能够对学生房间号、宿舍学生信息等多种公寓宿舍分配信息进行查看。在对学生宿舍进行分配的过程中,管理员能够依据所查看的相关信息,制定出合理的分配决策,同时还能够删除、增添及修改宿舍信息,对宿舍的分配状况进行整理。
(4)人员来访登记模块:
对进出公寓人员的来访登记及结束访问进行详细记录。物品的名称、进出公寓的详细记录
(5)学生报修模块
(6)新闻公告模块
(7)卫生评比模块
可以对学生的宿舍卫生进行增扣分登记
详细说来,本系统应能完成业务:
1.系统管理:本功能应能完成对系统中所有日常数据的维护。包括对系统初始状态时的公寓楼管理、各公寓楼房间的管理、学院名称管理、专业名称管理、年级管理及系统管理员管理等。
2.日常管理:这是本系统中主要的功能。包括新生的入宿、在宿学生的管理、来访管理、宿舍扣分情况管理及值班日记等。其中,系统应能提供有效的、快捷的获知有空床位的寝室情况和该寝室内已住学生的基本信息;对各寝室在宿学生情况能有效管理;对外来人员的访问要详细登记证件号、要访问学生所在的公寓楼和宿舍号及时间等信息。
登录页面
学生管理
宿舍信息管理
来访登记管理
缺勤信息管理
宿舍评比管理
宿舍信息
/**
* 宿舍信息
* 后端接口
* @author
* @email
* @date 2023-04-22 17:58:16
*/
@RestController
@RequestMapping("/sushexinxi")
public class SushexinxiController {
@Autowired
private SushexinxiService sushexinxiService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,SushexinxiEntity sushexinxi,
HttpServletRequest request){
EntityWrapper<SushexinxiEntity> ew = new EntityWrapper<SushexinxiEntity>();
PageUtils page = sushexinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, sushexinxi), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,SushexinxiEntity sushexinxi,
HttpServletRequest request){
EntityWrapper<SushexinxiEntity> ew = new EntityWrapper<SushexinxiEntity>();
PageUtils page = sushexinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, sushexinxi), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( SushexinxiEntity sushexinxi){
EntityWrapper<SushexinxiEntity> ew = new EntityWrapper<SushexinxiEntity>();
ew.allEq(MPUtil.allEQMapPre( sushexinxi, "sushexinxi"));
return R.ok().put("data", sushexinxiService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(SushexinxiEntity sushexinxi){
EntityWrapper< SushexinxiEntity> ew = new EntityWrapper< SushexinxiEntity>();
ew.allEq(MPUtil.allEQMapPre( sushexinxi, "sushexinxi"));
SushexinxiView sushexinxiView = sushexinxiService.selectView(ew);
return R.ok("查询宿舍信息成功").put("data", sushexinxiView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
SushexinxiEntity sushexinxi = sushexinxiService.selectById(id);
return R.ok().put("data", sushexinxi);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
SushexinxiEntity sushexinxi = sushexinxiService.selectById(id);
return R.ok().put("data", sushexinxi);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody SushexinxiEntity sushexinxi, HttpServletRequest request){
sushexinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(sushexinxi);
sushexinxiService.insert(sushexinxi);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody SushexinxiEntity sushexinxi, HttpServletRequest request){
sushexinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(sushexinxi);
sushexinxiService.insert(sushexinxi);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
@Transactional
public R update(@RequestBody SushexinxiEntity sushexinxi, HttpServletRequest request){
//ValidatorUtils.validateEntity(sushexinxi);
sushexinxiService.updateById(sushexinxi);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
sushexinxiService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
}