基于SSM+SpringBoot+Vue的高校竞赛赛事管理系统

登陆

注册

赛事查询

作品提交

报名信息

公告信息

用户管理

角色管理

菜单管理

学院管理

通知公告

赛事查询

报名管理

作品提交

个人基本信息

任务书

课题名称

基于Web的学科竞赛管理系统的设计与实现

主要任务

与目标

主要任务:

设计一个学科竞赛管理系统系统,用于帮助高校实现学科竞赛管理工作规范化、人性化、流程化和网络化,提高学科竞赛活动的组织效率,规范并简化学科竞赛过程的管理,保障学科竞赛的公平、公正与公开。

主要目标:

通过本课题的研究,掌握一定的系统分析、设计方法,根据理解的软件系统的体系结构结合市场上主流的开发技术进行落地实现,熟练掌握数据库知识和应用技术,能熟练运用主流DBMS。学习主流框架和成熟的开发技术,在课内知识掌握的前提下进一步进行自身技能的拓展。

主要内容与

基本要求

随着我国高等教育的快速发展,高校学生综合素质的提高越来越受关注,鼓励高校学生参加各级各类竞赛成为培养学生综合素质的重要措施。传统的学生参赛管理主要依靠人工操作,但是由于高校学科竞赛涉及专业广泛、参赛人数众多和赛程赛制区别较大等特点,导致高校在组织开展和信息监控的过程中面临许多管理方面的困难,效率低、难监控、易出错、难共享。

本课题的主要任务是实现一个Web数据库应用系统,旨在帮助高校实现学科竞赛管理工作规范化、人性化、流程化和网络化,提高学科竞赛活动的组织效率,规范并简化学科竞赛过程的管理。整个系统包括面向学校的管理端和面向学生的客户端,要求完成以下基本功能:

学校管理端:

  1. 竞赛信息的发布和维护
  2. 报名数据和参赛学生信息查询、汇总
  3. 竞赛结果公布
  4. 各类资讯或通知信息的发布和维护

学生客户端:

  1. 注册登录及报名实现
  2. 竞赛作品提交
  3. 竞赛成绩查询

本课题对学生有几个基本技能要求:

  1. 掌握C#.NET或Java、JavaScript等编程语言,掌握ASP.NET或JAVAEE技术;
  2. 掌握SQL Server、MySQL、Oracle、MongoDB中的一个数据库管理系统。

主要参

考资料

及文献

阅读任务

主要参考资料:

  1. 杨彩凤, 常洁, 刘涛, 章平, 王振昕. 基于SSH框架的高校学生参赛管理系统[J]. 江苏工程职业技术学院学报. 2021,21(02): 9-12.
  2. 彭杨丽, 徐家喜, 陈培培. 基于Java EE学科竞赛管理系统的设计与实现[J]. 电脑知识与技术. 2018,14(19): 93-95.
  3. 罗玲玲. 高校学科竞赛信息管理系统的研究与分析[D]. 昆明: 云南大学, 2015.

文献阅读任务:

至少阅读5篇中文期刊和3篇外文期刊。

外文

翻译任务

阅读3篇(每篇约5000字符)的外文材料,完成对将其中2篇的翻译,翻译后的中文字数不得少于2000字。

计划进度:

起止时间

内容

2021.11.22 ~ 2021.12.26

课题分析,资料搜集;完成文献综述、科技文献翻译、开题报告

2021.12.27 ~ 2022.01.08

文献综述、科技文献翻译、开题报告整改;准备开题答辩

2022.01.09 ~ 2022.01.15

研究并学习基于SSH框架的学科竞赛系统的设计与实现方案,并编写测试相关算法代码

2022.01.16 ~ 2022.01.22

确定系统的总体结构,定义系统的数据流,分析各模块的详细功能,设计各模块的流程图

2022.01.23 ~ 2022.02.09

实现参赛学生信息管理、竞赛项目管理、竞赛发布及公告通知管理功能的编码

2022.02.10 ~ 2022.02.29

实现对、竞赛报名与作品提交管理、奖励标准管理、竞赛结果等功能的编码

2022.03.01 ~ 2022.03.20

对系统功能模块实现联调和优化,准备中期检查

2022.03.20 ~ 2022.04.17

整理各类设计文档和数据,撰写毕业论文

2022.04.18 ~ 2022.04.26

根据导师意见修改应用系统的代码及毕业论文

2022.04.27 ~ 2022.05.03

根据评阅意见修改论文,准备毕业设计答辩

实习地点

指导教师

签    名

年   月   日

专业负责人意 见

签名:

                       年   月   日

package cn.code51.dashboard.modules.dev.CompInfo.controller.CompInfo;

import cn.code51.dashboard.modules.dev.CompInfo.controller.CompInfo.vo.*;
import cn.code51.dashboard.modules.dev.CompInfo.convert.CompInfo.CompInfoConvert;
import cn.code51.dashboard.modules.dev.CompInfo.dal.dataobject.CompInfo.CompInfoDO;
import cn.code51.dashboard.modules.dev.CompInfo.service.CompInfo.CompInfoService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;

import io.swagger.annotations.*;

import javax.validation.constraints.*;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;

import cn.code51.dashboard.common.pojo.PageResult;
import cn.code51.dashboard.common.pojo.CommonResult;
import static cn.code51.dashboard.common.pojo.CommonResult.success;

import cn.code51.dashboard.framework.excel.core.util.ExcelUtils;

import cn.code51.dashboard.framework.logger.operatelog.core.annotations.OperateLog;
import static cn.code51.dashboard.framework.logger.operatelog.core.enums.OperateTypeEnum.*;


@Api(tags = "竞赛")
@RestController
@RequestMapping("/comp/info")
@Validated
public class CompInfoController {

    @Resource
    private CompInfoService infoService;

    @PostMapping("/create")
    @ApiOperation("创建竞赛")
    public CommonResult<Long> createInfo(@Valid @RequestBody CompInfoCreateReqVO createReqVO) {
        return success(infoService.createInfo(createReqVO));
    }

    @PutMapping("/update")
    @ApiOperation("更新竞赛")
    public CommonResult<Boolean> updateInfo(@Valid @RequestBody CompInfoUpdateReqVO updateReqVO) {
        infoService.updateInfo(updateReqVO);
        return success(true);
    }

    @DeleteMapping("/delete")
    @ApiOperation("删除竞赛")
    @ApiImplicitParam(name = "id", value = "编号", required = true)
    public CommonResult<Boolean> deleteInfo(@RequestParam("id") Long id) {
        infoService.deleteInfo(id);
        return success(true);
    }

    @GetMapping("/get")
    @ApiOperation("获得竞赛")
    @ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Long.class)
    public CommonResult<CompInfoRespVO> getInfo(@RequestParam("id") Long id) {
        CompInfoDO info = infoService.getInfo(id);
        return success(CompInfoConvert.INSTANCE.convert(info));
    }

    @GetMapping("/list")
    @ApiOperation("获得竞赛列表")
    @ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class)
    public CommonResult<List<CompInfoRespVO>> getInfoList(@RequestParam("ids") Collection<Long> ids) {
        List<CompInfoDO> list = infoService.getInfoList(ids);
        return success(CompInfoConvert.INSTANCE.convertList(list));
    }

    @GetMapping("/page")
    @ApiOperation("获得竞赛分页")
    public CommonResult<PageResult<CompInfoRespVO>> getInfoPage(@Valid CompInfoPageReqVO pageVO) {
        PageResult<CompInfoDO> pageResult = infoService.getInfoPage(pageVO);
        return success(CompInfoConvert.INSTANCE.convertPage(pageResult));
    }

    @GetMapping("/export-excel")
    @ApiOperation("导出竞赛 Excel")
    @OperateLog(type = EXPORT)
    public void exportInfoExcel(@Valid CompInfoExportReqVO exportReqVO,
              HttpServletResponse response) throws IOException {
        List<CompInfoDO> list = infoService.getInfoList(exportReqVO);
        // 导出 Excel
        List<CompInfoExcelVO> datas = CompInfoConvert.INSTANCE.convertList02(list);
        ExcelUtils.write(response, "竞赛.xls", "数据", CompInfoExcelVO.class, datas);
    }

}

猜你喜欢

转载自blog.csdn.net/qq_36155000/article/details/125589155