目录

基于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);
    }

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

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

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
二川bro17 分钟前
Vue 项目中 package.json 文件的深度解析
前端·vue.js·json
猿java18 分钟前
你使用过 Service Mesh吗?
java·面试·service mesh
小蓝波28 分钟前
Docker部署jenkins
java·docker·jenkins
风象南29 分钟前
SpringBoot中的4种重试机制实现方案
java·spring boot·后端
Java致死37 分钟前
MybatisPlus
java·mybatis·mybatisplus
chian-ocean2 小时前
解密 Linux 线程:多线程编程与资源管理
java·linux·redis
re1ife3 小时前
Android Studio开发知识:从基础到进阶
android·java·开发语言·android studio
callJJ4 小时前
从零开始的图论讲解(1)——图的概念,图的存储,图的遍历与图的拓扑排序
java·数据结构·算法·深度优先·图论·广度优先·图搜索算法
喜欢便码5 小时前
JS小练习0.1——弹出姓名
java·前端·javascript
Asthenia04127 小时前
为什么说MVCC无法彻底解决幻读的问题?
后端