基于springboot+vue的大学生创新创业系统(前后端分离)

博主主页猫头鹰源码

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

主要内容 :毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询

文末联系获取

项目介绍:

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

部分功能:

进入平台来到首页,首页展示轮播图、创新创业政策信息以及优质项目。点击政策信息和项目信息可以跳转详情页面查看信息。首页右上角为登录/注销功能,登录后为个人中心,点击个人中心跳转当前用户页面。用户分为四个角色:管理员、专家评审组、教师、学生。管理员身份不能进行注册

管理员:
用户管理:维护不同角色用户(增删改查)
政策信息管理:维护相关政策信息。
项目管理:项目的增删改查
项目审核:审核项目、查看审核
项目计划管理:查看计划
项目评价管理:查看评价
成果管理:维护成果展示

专家皮评审组:
登录注册,维护个人信息(增删改查)
项目管理:查看负责的项目信息
项目审核:审核负责的项目
项目计划管理:查看计划、计划审核
项目评价管理:专家评审组进行评
成果管理:查看成果展示

指导教师:
登录注册,维护个人信息
项目管理:查看负责的项目
项目审核:审核项目和查看专家审核结果
项目计划管理:查看计划、计划审核
项目评价管理:指导教师进行评价、查看专家评价
成果管理:查看成果展示
项目选择:学生团队可以申请教师成为项目指导教师、教师可以同意或拒绝。

学生:
登录注册,维护个人信息
项目申报:申报项目(多人项目可依据账号添加成员)
项目管理:对进行中的项目增删改,查看项目审核结果
项目计划管理:维护计划
项目评价管理:查看评价
成果管理:查看成果展示
教师选择:项目申报时申请指导教师。(可多选,最多三名)

系统包含技术:

后端:springboot,mybatis

前端:element-ui、js、css等

开发工具:idea/vscode

数据库:mysql 5.7

JDK版本:jdk1.8

部分截图说明:

下面是首页

政策列表

政策详情

优质项目

登录

用户管理

项目管理

项目计划管理

项目评价管理

部分代码:

 /**
     * 分页查询
     */
    @PostMapping("selectAll")
    public PageInfo<Application> selectAll(@RequestBody Map<String,String> mp) {
        PageHelper.startPage(Integer.parseInt(mp.get("currentPage").toString()), Integer.parseInt(mp.get("pagesize").toString()));
        List<Application> list = applicationService.queryAllByLimit(mp);
        PageInfo<Application> pageInfo = new PageInfo<Application>(list);
        return pageInfo;
    }

    /**
     * 修改
     */
    @RequestMapping("edit")
    public String edit(@RequestBody Application application) {
        try {
            applicationService.update(application);
            Application application2 = applicationService.queryById(application.getId());
            Application application1 = new Application();
            application1.setPid(application2.getPid());
            List<Application> applications = applicationService.queryCondition(application1);
            //如果全部审核过了就修改项目状态
            if(applications.size()>0){
                int s = 0;
                for(int i=0;i<applications.size();i++){
                    if(applications.get(i).getStatus().equals("02")){
                        s++;
                    }
                }
                if(s==applications.size()){
                    Project project = new Project();
                    project.setId(Integer.parseInt(application2.getPid()));
                    project.setStatus("02");
                    projectService.update(project);
                    //然后生成项目审核记录,等待审核
                    for(int n=0;n<applications.size();n++){
                        if(applications.get(n).getStatus().equals("02")){
                            Check check = new Check();
                            check.setPid(applications.get(n).getPid());
                            check.setUid(applications.get(n).getTid());
                            check.setType("01");
                            check.setStatus("01");
                            Date date = new Date();
                            check.setCreateTime(date);
                            checkService.insert(check);
                        }
                    }
                }
            }
            return "200";
        }catch (Exception e){
            e.printStackTrace();
            return "201";
        }
    }

    /**
     * 新增
     */
    @RequestMapping("add")
    public String add(@RequestBody Application application) {
        try {
            Application application1 = new Application();
            application1.setPid(application.getPid());
            List<Application> applications2 = applicationService.queryCondition(application1);
            application1.setTid(application.getTid());
            List<Application> applications = applicationService.queryCondition(application1);
            if(applications.size()>0){
                return "202";
            }
            if(applications2.size()==3){
                return "203";
            }
            Date date = new Date();
            application.setCreateTime(date);
            applicationService.insert(application);
            return "200";
        }catch (Exception e){
            e.printStackTrace();
            return "201";
        }
    }

    /**
     * 通过主键查询单条数据
     */
    @GetMapping("selectOne")
    public Application selectOne(Integer id) {
        return applicationService.queryById(id);
    }

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

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

相关推荐
训山4 分钟前
4000字浅谈Java网络编程
java·开发语言·网络
VertexGeek10 分钟前
Rust学习(四):作用域、所有权和生命周期:
java·学习·rust
豌豆花下猫14 分钟前
REST API 已经 25 岁了:它是如何形成的,将来可能会怎样?
后端·python·ai
NoloveisGod14 分钟前
Vue的基础使用
前端·javascript·vue.js
GISer_Jing16 分钟前
前端系统设计面试题(二)Javascript\Vue
前端·javascript·vue.js
喔喔咿哈哈26 分钟前
【手撕 Spring】 -- Bean 的创建以及获取
java·后端·spring·面试·开源·github
码农小丘28 分钟前
了解springboot国际化用途以及使用
java·spring boot·spring
卡皮巴拉吖32 分钟前
【JavaEE初阶】多线程上部
java·jvm·java-ee
tian-ming33 分钟前
JavaWeb后端开发知识储备1
java·spring boot·nginx·spring·maven
spy47_34 分钟前
JavaEE 重要的API阅读
java·笔记·java-ee·api文档阅读