博主主页:猫头鹰源码

博主简介:Java领域优质创作者、博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战


项目介绍: 

本系统采用前后端分离,项目代码工整,结构清晰,适合选题:博物馆、藏品、前后端分离类其他藏品等。系统采用springboot+vue整合开发,前端主要使用了element-ui框架、项目后端主要使用了springboot,数据层采用mybatis。

部分功能:

超级管理员模块
个人信息维护:编辑信息(账号和密码)
用户管理:
馆员管理:
藏品管理;
新闻资讯管理;
通知公告管理:
留言管理:
统计参馆人数;

馆员模块
个人信息维护:编辑信息(账号和密码)
藏品管理;
藏品入库管理:
藏品借出管理:


用户模块
分为游客和已注册用户。
按照权限划分功能,游客只能浏览首页中的信息(包含特色藏品信息、新闻资讯和通知公告),也可注册和编辑个人基本信息,成为用户;
已注册用户可登入用户界面或退出当前登录状态;
查看所有藏品
搜索藏品:已注册用户输入关键字,可搜索感兴趣的相关藏品及信息。监听搜索输入框的变化,在后台发送搜索请求,查询数据库获得符合条件的藏品列表并展示在前端;
搜索新闻动态:已注册用户输入关键字,可搜索新闻资讯的动态信息。
搜索通知公告:已注册用户输入关键字,可搜索通知公告的的信息。
用户留言评价:可留下参观心得和意见,也可查看其它用户的留言评论,进行交流互动。

系统包含技术:

后端:springboot,mybatis
前端:element-ui、js、css等
开发工具:idea/vscode
数据库:mysql 5.7
JDK版本:jdk1.8

文档:

基于springboot+vue的博物馆藏品系统(前后端分离)_开发语言

部分截图说明:

基于springboot+vue的博物馆藏品系统(前后端分离)_spring boot_02

基于springboot+vue的博物馆藏品系统(前后端分离)_vue.js_03

基于springboot+vue的博物馆藏品系统(前后端分离)_开发语言_04

基于springboot+vue的博物馆藏品系统(前后端分离)_开发语言_05

基于springboot+vue的博物馆藏品系统(前后端分离)_vue.js_06

基于springboot+vue的博物馆藏品系统(前后端分离)_vue.js_07

基于springboot+vue的博物馆藏品系统(前后端分离)_后端_08

基于springboot+vue的博物馆藏品系统(前后端分离)_开发语言_09

基于springboot+vue的博物馆藏品系统(前后端分离)_后端_10

基于springboot+vue的博物馆藏品系统(前后端分离)_开发语言_11

基于springboot+vue的博物馆藏品系统(前后端分离)_java_12

部分代码:

/**
     * 分页查询
     */
    @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);
    }

以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~