博主主页:猫头鹰源码
博主简介:Java领域优质创作者、博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战
项目介绍:
本系统采用前后端分离,项目代码工整,结构清晰,适合选题:博物馆、藏品、前后端分离类其他藏品等。系统采用springboot+vue整合开发,前端主要使用了element-ui框架、项目后端主要使用了springboot,数据层采用mybatis。
部分功能:
超级管理员模块
个人信息维护:编辑信息(账号和密码)
用户管理:
馆员管理:
藏品管理;
新闻资讯管理;
通知公告管理:
留言管理:
统计参馆人数;
馆员模块
个人信息维护:编辑信息(账号和密码)
藏品管理;
藏品入库管理:
藏品借出管理:
用户模块
分为游客和已注册用户。
按照权限划分功能,游客只能浏览首页中的信息(包含特色藏品信息、新闻资讯和通知公告),也可注册和编辑个人基本信息,成为用户;
已注册用户可登入用户界面或退出当前登录状态;
查看所有藏品
搜索藏品:已注册用户输入关键字,可搜索感兴趣的相关藏品及信息。监听搜索输入框的变化,在后台发送搜索请求,查询数据库获得符合条件的藏品列表并展示在前端;
搜索新闻动态:已注册用户输入关键字,可搜索新闻资讯的动态信息。
搜索通知公告:已注册用户输入关键字,可搜索通知公告的的信息。
用户留言评价:可留下参观心得和意见,也可查看其它用户的留言评论,进行交流互动。
系统包含技术:
后端:springboot,mybatis
前端:element-ui、js、css等
开发工具:idea/vscode
数据库:mysql 5.7
JDK版本:jdk1.8
文档:
部分截图说明:
部分代码:
/**
* 分页查询
*/
@PostMapping("selectAll")
public PageInfo<Collections> selectAll(@RequestBody Map<String,String> mp) {
PageHelper.startPage(Integer.parseInt(mp.get("currentPage").toString()), Integer.parseInt(mp.get("pagesize").toString()));
List<Collections> list = collectionsService.queryAllByLimit(mp);
for(int i=0;i<list.size();i++){
Map mps = new HashMap();
mps.put("cid",list.get(i).getId());
List<IntoStorage> intoStorages = collectionsService.queryStatus(mps);
if(intoStorages.size()==0){
list.get(i).setStatus("01");//未入库
}else{
if(intoStorages.get(0).getType().equals("into")){
list.get(i).setStatus("02");//已入库
}
if(intoStorages.get(0).getType().equals("out")){
list.get(i).setStatus("03");//已出库
}
}
}
PageInfo<Collections> pageInfo = new PageInfo<Collections>(list);
return pageInfo;
}
/**
* 查询所有
*/
@PostMapping("queryAll")
public List<Collections> queryAll() {
List<Collections> collections = collectionsService.queryCondition(new Collections());
return collections;
}
/**
* 修改
*/
@RequestMapping("edit")
public Result edit(@RequestBody Collections collections) {
try {
List<Collections> collections1 = collectionsService.queryCondition(new Collections());
for(int i=0;i<collections1.size();i++){
if(collections.getCno().equals(collections1.get(i).getCno()) && collections.getId() != collections1.get(i).getId()){
return Result.error("藏品编号重复,请重试");
}
}
collectionsService.update(collections);
return Result.success("修改成功");
}catch (Exception e){
e.printStackTrace();
return Result.error("修改失败");
}
}
/**
* 新增
*/
@RequestMapping("add")
public Result add(@RequestBody Collections collections) {
try {
List<Collections> collections1 = collectionsService.queryCondition(new Collections());
for(int i=0;i<collections1.size();i++){
if(collections.getCno().equals(collections1.get(i).getCno())){
return Result.error("藏品编号重复,请重试");
}
}
Date date = new Date();
collections.setCreateTime(date);
collectionsService.insert(collections);
return Result.success("新增成功");
}catch (Exception e){
e.printStackTrace();
return Result.error("新增失败");
}
}
/**
* 通过主键查询单条数据
*/
@GetMapping("selectOne")
public Collections selectOne(Integer id) {
return collectionsService.queryById(id);
}
以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。
好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~