springboot070基于springboot的大创管理系统设计与实现

博主介绍:专注于Java(springboot ssm 等开发框架) vue  .net  php phython node.js    uniapp 微信小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作
☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟
我的博客空间发布了2000+毕设题目 方便大家学习使用
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人
文末下方有源码获取地址

4.2系统结构

本系统是基于B/S架构的网站系统,设计的管理员功能结构图如下图所示:

图4-2管理员功能结构图

本系统是基于B/S架构的网站系统,设计的指导老师功能结构图如下图所示:

图4-3 指导老师功能结构图

本系统是基于B/S架构的网站系统,设计的员工功能结构图如下图所示:

图4-4 学生功能结构图

4.3.数据库设计

4.3.1数据库实体

概念设计的目标是设计出反映某个组织部门信息需求的数据库系统概念模式,数据库系统的概念模式独立于数据库系统的逻辑结构、独立于数据库管理系统(DBMS)、独立于计算机系统。

概念模式的设计方法是在需求分析的基础上,用概念数据模型(例如E-R模型)表示数据及数据之间的相互联系,设计出反映用户信息需求和处理需求的数据库系统概念模式。概念设计的目标是准确描述应用领域的信息模式,支持用户的各种应用,这样既容易转换为数据库系统逻辑模式,又容易为用户理解。数据库系统概念模式是面向现实世界的数据模型,不能直接用于数据库系统的实现。在此阶段,用户可以参与和评价数据库系统的设计,从而有利于保证数据库系统的设计与用户的需求相吻合。在概念模式的设计中,E-R模型法是最常见的设计方法。本系统的E-R图如下图所示:

4.3.2数据库设计表

大创管理系统需要后台数据库,下面介绍数据库中的各个表的详细信息:

表4.1 大创资讯

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

title

varchar(200)

标题

introduction

longtext

NULL

简介

picture

varchar(200)

图片

content

longtext

内容

表4.2 评审方案

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

biaoti

varchar(200)

NULL

标题

chuangxindian

longtext

NULL

创新点

qianqizhunbei

longtext

NULL

前期准备

shishifangan

longtext

NULL

实施方案

yuqichengguo

longtext

NULL

预期成果

jingfeiyusuan

longtext

NULL

经费预算

chengyuansuzhi

longtext

NULL

成员素质

tupian

varchar(200)

NULL

图片

表4.3 管理员表

字段

类型

默认

注释

id (主键)

bigint(20)

主键

username

varchar(100)

用户名

password

varchar(100)

密码

role

varchar(100)

管理员

角色

addtime

timestamp

CURRENT_TIMESTAMP

新增时间

表4.4 项目结项

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmumingcheng

varchar(200)

项目名称

xiangmuleixing

varchar(200)

NULL

项目类型

xiangmujianjie

longtext

NULL

项目简介

lilunyiju

longtext

NULL

理论依据

zhuyaochengguo

longtext

NULL

主要成果

zhongjiechengguo

longtext

NULL

终结成果

zhidaolaoshiyijian

longtext

NULL

指导老师意见

yuanxiguanliyuanyijian

longtext

NULL

院系管理员意见

wenjian

varchar(200)

NULL

文件

zhanghao

varchar(200)

NULL

账号

xingming

varchar(200)

NULL

姓名

sfsh

varchar(200)

是否审核

shhf

longtext

NULL

审核回复

表4.5 项目类型

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmuleixing

varchar(200)

NULL

项目类型

表4.6 项目评审

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmumingcheng

varchar(200)

NULL

项目名称

xiangmuleixing

varchar(200)

NULL

项目类型

xiangmumiaoshu

longtext

NULL

项目描述

xueshengtuandui

longtext

NULL

学生团队

chengyuanjieshao

longtext

NULL

成员介绍

wenjian

varchar(200)

NULL

文件

zhanghao

varchar(200)

NULL

账号

xingming

varchar(200)

NULL

姓名

表4.7 项目申报

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmumingcheng

varchar(200)

NULL

项目名称

xiangmuleixing

varchar(200)

NULL

项目类型

xiangmumiaoshu

varchar(200)

NULL

项目描述

shejilingyu

varchar(200)

NULL

涉及领域

xueshengtuandui

longtext

学生团队

chengyuanjieshao

longtext

NULL

成员介绍

zhidaolaoshi

varchar(200)

NULL

指导老师

zhanghao

varchar(200)

NULL

账号

xingming

varchar(200)

NULL

姓名

tupian

varchar(200)

NULL

图片

zhidaolaoshiyijian

longtext

NULL

指导老师意见

yuanxiguanliyuanyijian

longtext

NULL

院系管理员意见

beizhu

longtext

NULL

备注

sfsh

varchar(200)

是否审核

shhf

longtext

NULL

审核回复

表4.8 项目信息

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmumingcheng

varchar(200)

NULL

项目名称

xiangmuleixing

varchar(200)

NULL

项目类型

xiangmumiaoshu

longtext

NULL

项目描述

shejilingyu

longtext

NULL

涉及领域

wendang

varchar(200)

NULL

文档

tupian

varchar(200)

NULL

图片

表4.9 项目中检

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmumingcheng

varchar(200)

项目名称

xiangmuleixing

varchar(200)

项目类型

xiangmumiaoshu

varchar(200)

NULL

项目描述

xueshengtuandui

varchar(200)

NULL

学生团队

chengyuanjieshao

varchar(200)

NULL

成员介绍

lixiangshijian

date

NULL

立项时间

jihuajieshushijian

date

NULL

计划结束时间

xiangmujinzhanqingkuang

longtext

NULL

项目进展情况

xiangmuchengyuanshifoubianhua

varchar(200)

NULL

项目成员是否变化

nengfouanshiwanchengjihua

varchar(200)

NULL

能否按时完成计划

qianqijingfeishiyongqingkuang

longtext

NULL

前旗经费使用情况

qitaxushuomingdewenti

longtext

NULL

其他需说明的问题

zhidaolaoshiyijian

longtext

NULL

指导老师意见

yuanxiguanliyuanyijian

longtext

NULL

院系管理员意见

wenjian

varchar(200)

NULL

文件

zhanghao

varchar(200)

NULL

账号

xingming

varchar(200)

NULL

姓名

sfsh

varchar(200)

是否审核

shhf

longtext

NULL

审核回复

表4.10 学生

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

zhanghao

varchar(200)

账号

mima

varchar(200)

密码

xingming

varchar(200)

NULL

姓名

xingbie

varchar(200)

NULL

性别

shouji

varchar(200)

NULL

手机

youxiang

varchar(200)

NULL

邮箱

touxiang

varchar(200)

NULL

头像

表4.11 优秀项目

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmumingcheng

varchar(200)

项目名称

xiangmuleixing

varchar(200)

项目类型

xiangmujianjie

longtext

NULL

项目简介

xueshengfuzeren

varchar(200)

NULL

学生负责人

zhidaolaoshi

varchar(200)

NULL

指导老师

pingshenyijian

longtext

NULL

评审意见

tupian

varchar(200)

NULL

图片

表4.12 院系管理员

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

zhanghao

varchar(200)

账号

mima

varchar(200)

密码

xingming

varchar(200)

NULL

姓名

xingbie

varchar(200)

NULL

性别

shouji

varchar(200)

NULL

手机

youxiang

varchar(200)

NULL

邮箱

touxiang

varchar(200)

NULL

头像

表4.13 指导老师

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

zhanghao

varchar(200)

账号

mima

varchar(200)

密码

xingming

varchar(200)

NULL

姓名

xingbie

varchar(200)

NULL

性别

shouji

varchar(200)

NULL

手机

youxiang

varchar(200)

NULL

邮箱

touxiang

varchar(200)

NULL

头像

表4.14 专家评审

字段

类型

默认

注释

id (主键)

bigint(20)

主键

addtime

timestamp

CURRENT_TIMESTAMP

创建时间

xiangmumingcheng

varchar(200)

NULL

项目名称

xiangmuleixing

varchar(200)

NULL

项目类型

xiangmumiaoshu

longtext

NULL

项目描述

xueshengtuandui

longtext

NULL

学生团队

chengyuanjieshao

longtext

NULL

成员介绍

wenjian

varchar(200)

NULL

文件

zhanghao

varchar(200)

NULL

账号

xingming

varchar(200)

NULL

姓名

pingshenzhuanjia

varchar(200)

NULL

评审专家

pingweiyijian

longtext

NULL

评委意见

pingshenriqi

date

NULL

评审日期

5系统详细实现

5.1 管理员模块的实现

5.1.1 项目中检管理

大创管理系统的系统管理员可以管理项目中检,可以对项目中检信息添加修改删除以及查询操作。具体界面的展示如图5.1所示。

图5.1 项目中检信息管理界面

5.1.2 专家评审管理

系统管理员可以查看对专家评审信息进行添加,修改,删除以及查询操作。具体界面如图5.2所示。

图5.2 专家评审信息管理界面

5.2 指导老师模块的实现

5.2.1 项目申报管理

指导老师可以对项目申报信息进行修改,删除以及查询操作。界面如下图所示:

图5.3 项目申报信息管理界面

package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.XiangmushenbaoEntity;
import com.entity.view.XiangmushenbaoView;

import com.service.XiangmushenbaoService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;


/**
 * 项目申报
 * 后端接口
 * @author 
 * @email 
 * @date 2021-04-21 16:28:27
 */
@RestController
@RequestMapping("/xiangmushenbao")
public class XiangmushenbaoController {
    @Autowired
    private XiangmushenbaoService xiangmushenbaoService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,XiangmushenbaoEntity xiangmushenbao,
		HttpServletRequest request){
		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("xuesheng")) {
			xiangmushenbao.setZhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<XiangmushenbaoEntity> ew = new EntityWrapper<XiangmushenbaoEntity>();
		PageUtils page = xiangmushenbaoService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xiangmushenbao), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,XiangmushenbaoEntity xiangmushenbao, HttpServletRequest request){
        EntityWrapper<XiangmushenbaoEntity> ew = new EntityWrapper<XiangmushenbaoEntity>();
		PageUtils page = xiangmushenbaoService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xiangmushenbao), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( XiangmushenbaoEntity xiangmushenbao){
       	EntityWrapper<XiangmushenbaoEntity> ew = new EntityWrapper<XiangmushenbaoEntity>();
      	ew.allEq(MPUtil.allEQMapPre( xiangmushenbao, "xiangmushenbao")); 
        return R.ok().put("data", xiangmushenbaoService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(XiangmushenbaoEntity xiangmushenbao){
        EntityWrapper< XiangmushenbaoEntity> ew = new EntityWrapper< XiangmushenbaoEntity>();
 		ew.allEq(MPUtil.allEQMapPre( xiangmushenbao, "xiangmushenbao")); 
		XiangmushenbaoView xiangmushenbaoView =  xiangmushenbaoService.selectView(ew);
		return R.ok("查询项目申报成功").put("data", xiangmushenbaoView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        XiangmushenbaoEntity xiangmushenbao = xiangmushenbaoService.selectById(id);
        return R.ok().put("data", xiangmushenbao);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        XiangmushenbaoEntity xiangmushenbao = xiangmushenbaoService.selectById(id);
        return R.ok().put("data", xiangmushenbao);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody XiangmushenbaoEntity xiangmushenbao, HttpServletRequest request){
    	xiangmushenbao.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(xiangmushenbao);
        xiangmushenbaoService.insert(xiangmushenbao);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody XiangmushenbaoEntity xiangmushenbao, HttpServletRequest request){
    	xiangmushenbao.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(xiangmushenbao);
        xiangmushenbaoService.insert(xiangmushenbao);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody XiangmushenbaoEntity xiangmushenbao, HttpServletRequest request){
        //ValidatorUtils.validateEntity(xiangmushenbao);
        xiangmushenbaoService.updateById(xiangmushenbao);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        xiangmushenbaoService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<XiangmushenbaoEntity> wrapper = new EntityWrapper<XiangmushenbaoEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("xuesheng")) {
			wrapper.eq("zhanghao", (String)request.getSession().getAttribute("username"));
		}

		int count = xiangmushenbaoService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	


}

5.2.1 项目结项管理

指导老师可以对项目结项信息进行修改操作,还可以对项目结项信息进行查询。界面如下图所示:

图5.4 项目结项管理界面

大家点赞、收藏、关注、评论啦  其他的定制服务 商务合作  下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 或者私信作者
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翰文编程

你的鼓励 是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值