学生成绩管理系统(教师端显示学生成绩完成)

功能概述

1.显示学生成绩

 1效果图

     

2.功能说明 

显示学生成绩可以完成三个显示并且是分页显示,分别是查看全部学生成绩,查看总成绩合格学生成绩,查看不合格学生总成绩。另外学生的总成绩可以根据以小到大的顺序或者相反排序。

3.技术说明

分页采用了 mybatis-plus 的分页插件 表单页面采用了 element-plus 表单组件

4.重要代码体现

1.前端表单页面设计
<div class="manage">
    <h1>学生成绩管理系统(教师端)</h1>
    <div align="left" style="margin: 10px 0">
      <el-input v-model="search" placeholder=" 请 输 入 关 键 字 " style="width: 30%"></el-input>
      <el-button style="margin-left: 10px" type="primary" @click="list">查询</el-button>
      <el-button style="margin-left: 10px" type="primary" @click="add">新增学生</el-button>
      <el-button style="margin-left: 10px" type="primary" @click="all">全部学生</el-button>
      <el-button style="margin-left: 10px" type="primary" v-model="choose" @click="qualified">合格学生</el-button>
      <el-button style="margin-left: 10px" type="primary" v-model="choose" @click="unqualified">挂科学生</el-button>
    </div>
    <el-table :data="tableData" stripe style="width: 90%">
      <el-table-column prop="username" label="学号"></el-table-column>
      <el-table-column prop="name" label="姓名"></el-table-column>
      <el-table-column prop="midscore" label="期中成绩(40%)"></el-table-column>
      <el-table-column prop="finalscore" label="期末成绩(40%)"></el-table-column>
      <el-table-column prop="dailyscore" label="平时成绩(20%)"></el-table-column>
      <el-table-column sortable prop="totalscore" label="最终成绩"></el-table-column>
      <el-table-column>
        <template #default="scope">
          <el-button v-model="choose1" @click="handleEdit(scope.row.username)" type="text">编辑</el-button>
          <el-popconfirm title="确认删除吗?" @confirm="handleDelete(scope.row.username)">
            <template #reference>
              <el-button size="small" type="danger">删除</el-button>
            </template>
          </el-popconfirm>
        </template>
      </el-table-column>
    </el-table>
    <el-dialog title="提示" v-model="dialogVisible" width="30%">
      <el-form :model="form" label-width="120px" :rules="rules" ref="form">
        <el-form-item label="学号" prop="username">
          <el-input v-model="form.username" style="width: 80%"></el-input>
          {{ this.validMsg.username }}
        </el-form-item>
        <el-form-item label="姓名" prop="name">
          <el-input v-model="form.name" style="width: 80%"></el-input>
          {{ this.validMsg.name }}
        </el-form-item>
        <el-form-item label="期中成绩(40%)" prop="midscore">
          <el-input v-model="form.midscore" style="width: 80%"></el-input>
          {{ this.validMsg.midscore }}
        </el-form-item>
        <el-form-item label="期末成绩(40%)" prop="finalscore">
          <el-input v-model="form.finalscore" style="width: 80%"></el-input>
          {{ this.validMsg.finalscore }}
        </el-form-item>
        <el-form-item label="平时成绩(20%)" prop="dailyscore">
          <el-input v-model="form.dailyscore" style="width: 80%"></el-input>
          {{ this.validMsg.dailyscore }}
        </el-form-item>
      </el-form>
      <template #footer><span class="dialog-footer">
        <el-button @click="dialogVisible = false">取 消</el-button>
        <el-button
            type="primary" @click="save()">确 定</el-button> </span>
      </template>
    </el-dialog>
    <!--添加分页导航-->
    <div style="margin: 10px 0">
      <el-pagination
          @size-change="handlePageSizeChange"
          @current-change="handleCurrentChange"
          :current-page="currentPage"
          :page-sizes="[3,5,10]"
          :page-size="pageSize"
          layout="total, sizes, prev, pager, next, jumper"
          :total="total">
      </el-pagination>
    </div>
  </div>
2.后端分页显示请求设计
    //全部成绩请求
    @GetMapping(value = "/gradeByConditionPage")
    public Result listGradeByConditionPage(@RequestParam(defaultValue = "1") Integer pageNum,
                                            @RequestParam(defaultValue = "5") Integer pageSize,
                                            @RequestParam(defaultValue = "") String search) {
        LambdaQueryWrapper<Grade> queryWrapper = Wrappers.lambdaQuery();
        if (StringUtils.hasText(search)) {
            queryWrapper.like(Grade:: getName, search);
        }
        Page<Grade> page = gradeService.page(new Page<>(pageNum, pageSize), queryWrapper);
        return Result.success(page);
    }

   
    //不合格成绩请求
    @GetMapping(value = "/unqualified")
    public Result selectGradeUnqualified(@RequestParam(defaultValue = "1") Integer pageNum,
                                         @RequestParam(defaultValue = "5") Integer pageSize) {
        LambdaQueryWrapper<Grade> queryWrapper = Wrappers.lambdaQuery();
        queryWrapper.lt(Grade::getTotalscore, 60);
        Page<Grade> page = gradeService.page(new Page<>(pageNum, pageSize), queryWrapper);
        return Result.success(page);
    }
    //合格成绩请求
    @GetMapping(value = "/qualified")
    public Result selectGradeQualified(@RequestParam(defaultValue = "1") Integer pageNum,
                                       @RequestParam(defaultValue = "5") Integer pageSize) {
        LambdaQueryWrapper<Grade> queryWrapper = Wrappers.lambdaQuery();
        queryWrapper.ge(Grade::getTotalscore, 60);
        Page<Grade> page = gradeService.page(new Page<>(pageNum, pageSize), queryWrapper);
        return Result.success(page);
    }

总结

教师端的学生成绩显示功能分为三种情况,合格,不合格,全部,依次对应三种请求,接受三种返回数据并且完美显示到界面,后端有着 装配分页插件,使用了lambda表达式,按照条件查询数据。以上就是学生成绩显示功能,添加,删除功能后续发布,敬请期待,有缺漏的地方欢迎指正

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
学生成绩管理系统是一种用于管理学生学习成绩的软件系统。它可以帮助学校、教师和学生轻松地记录、查询和分析学生的成绩信息。Visual Studio是一款集成开发环境(IDE),它提供了丰富的工具和功能,可以用于开发各种类型的应用程序,包括学生成绩管理系统。 在Visual Studio中开发学生成绩管理系统,你可以使用多种编程语言,如C#、VB.NET等。通过使用这些编程语言,你可以创建一个用户友好的界面,实现学生信息的录入、成绩的录入和查询、成绩统计等功能。 以下是学生成绩管理系统在Visual Studio中的一般开发步骤: 1. 设计数据库:首先,你需要设计一个数据库来存储学生信息和成绩数据。你可以使用SQL Server或者其他数据库管理系统来创建和管理数据库。 2. 创建项目:在Visual Studio中创建一个新的项目,并选择适合的编程语言。 3. 设计界面:使用Visual Studio提供的界面设计工具,设计一个用户友好的界面,包括学生信息录入表单、成绩录入表单、成绩查询界面等。 4. 编写代码:根据系统需求,编写相应的代码来实现各个功能模块,如学生信息的添加、修改和删除,成绩的录入和查询等。 5. 连接数据库:使用数据库连接工具,将学生成绩管理系统与数据库进行连接,实现数据的读取和存储。 6. 测试和调试:在开发过程中,进行系统的测试和调试,确保系统的功能正常运行。 7. 部署和发布:完成开发后,将学生成绩管理系统部署到目标计算机上,并发布给相关用户使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值