CEMS大学生综合测评管理系统

这篇具有很好参考价值的文章主要介绍了CEMS大学生综合测评管理系统。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

功能介绍

登录

CEMS大学生综合测评管理系统

首页

CEMS大学生综合测评管理系统

修改密码

CEMS大学生综合测评管理系统

提交申请

CEMS大学生综合测评管理系统

提交列表

CEMS大学生综合测评管理系统

数据可视化

CEMS大学生综合测评管理系统

审核列表

CEMS大学生综合测评管理系统

前端

components结构

CEMS大学生综合测评管理系统

搭建Vue项目

​ Vue3快速上手:

​ https://cn.vuejs.org/guide/quick-start.html#creating-a-vue-application

页面布局

<template>
  <el-container >
    <el-header>
      <HomeHeader/>
    </el-header>
    <el-container>
      <el-aside width="250px">
        <HomeAside/>
      </el-aside>
      <el-main>
        <router-view></router-view>
      </el-main>
    </el-container>
  </el-container>
</template>

<script>
import HomeAside from './HomeAside.vue';
import HomeHeader from './HomeHeader.vue';

export default {
  components: {
    HomeAside,
    HomeHeader
  }
}
</script>

<style>
.el-header{
  background-color: #B3C0D1;
  color: #333;
  text-align: center;
  line-height: 60px;
}
.el-aside {
  background-color: #E9EEF3;
  color: #333;
  text-align: center;
  line-height: 160px;
}
html,body,#app,.demo,.el-container {
  height: 100%;
  width: 100%;
}
</style>

组件通信

​ js-cookie的使用:

​ https://blog.csdn.net/weixin_52615140/article/details/128543259

Echarts

​ 在vue中使用echarts:

​ https://www.bilibili.com/video/BV16Z4y1U7BW

​ Vue-ECharts:

​ https://github.com/ecomfe/vue-echarts/tree/main

​ 注意:采用created方法进行echarts组件数据的初始化

生命周期应用

​ https://www.bilibili.com/video/BV1Rs4y127j8/?p=35&vd_source=b53d35d0f1e32279da1e60b030a06429

表格中预览大图

​ https://blog.csdn.net/weixin_47390965/article/details/127402967

​ 注意:原文章在调用弹框组件时,错误使用了:show.sync="LicenseBigDialog",而应该写成v-model="LicenseBigDialog"

低代码表单

​ Variant Form:

​ https://vform666.com/

UI 框架

​ Element Plus:

​ https://element-plus.org/zh-CN/#/zh-CN

  1. 表单进阶(插入图片、获取表单所在行数)

    <template>
      <el-table class="submitList" :data="tableData" stripe border>
        
        <!-- 插入图片 -->
        <el-table-column prop='evidence' label="加分材料" width="130" >
        <template #default="scope">
          <el-image :src="scope.row.evidence" @click="showBigImage(scope.row.evidence)" preview-src-list min-width="70" height="70" />
        </template>
        </el-table-column>
    
        <!-- 获取表单的所在行数 -->
        <el-table-column label="是否通过" width="130" >
          <template #default="scope">
            <button @click="submit(scope.$index)">通过</button>
          </template>
        </el-table-column>
    
      </el-table>
    </template>
    

网络请求

​ axios在vue中的使用:

​ https://blog.csdn.net/m0_67403188/article/details/123420220

后端

接口实例

​ 这里以登录接口为例,介绍了怎么创建一个接口。

class LoginClass(BaseModel):
    id: str
    password: str


@app.post("/login")
async def login(lc: LoginClass):
    conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456',
                           db='student_evaluation_and_management_system', charset='utf8')
    # 创建游标对象
    cursor = conn.cursor()
    cursor.execute("select * from admin where id = %s and password = %s", (lc.id, lc.password))
    conn.commit()
    results = cursor.fetchall()
    if len(results) != 0:
        return {"code": "003", "id": results[0][0], "msg": "登陆成功"}
    cursor.execute("select * from student where id = %s and password = %s", (lc.id, lc.password))
    conn.commit()
    results = cursor.fetchall()
    # 关闭游标对象
    cursor.close()
    # 关闭连接
    conn.close()
    if len(results) != 0:
        return {"code": "001", "id": results[0][0], "msg": "登陆成功"}
    else:
        return {"code": "002", "msg": "账号密码错误"}

接口结构

CEMS大学生综合测评管理系统

保存与读取图片

# 生成随机文件名
def generate_random_string(length):
    letters = string.ascii_lowercase
    return ''.join(random.choice(letters) for _ in range(length))

# 上传图片时,把照片保存在本地
@app.post("/imgs/upload")
def upload_image(file: UploadFile = File(...)):
    # 获取当前文件所在的目录路径
    current_dir = os.path.dirname(os.path.abspath(__file__))
    # 构建目标文件夹路径
    target_folder = os.path.join(current_dir, "img")
    # 确保目标文件夹存在
    os.makedirs(target_folder, exist_ok=True)
    # 生成随机字符串作为文件名
    file_name = generate_random_string(8)
    # 获取文件的扩展名
    extension = os.path.splitext(file.filename)[1]
    # 构建文件的完整路径
    file_path = os.path.join(target_folder, f"{file_name}{extension}")
    # 保存文件到目标路径
    with open(file_path, "wb") as buffer:
        shutil.copyfileobj(file.file, buffer)
    # 返回文件的名字
    return {"data": {"url": f"{file_name}{extension}"}}

# 从本地读取图片
@app.get('/img')
def get_image(name):
    # 获取与 Python 文件同级的目录路径
    base_dir = os.path.dirname(os.path.realpath(__file__))
    # 构建图片文件路径
    image_path = os.path.join(base_dir, "img", name)
    print(image_path)
    if os.path.exists(image_path):
        # 返回图片作为响应
        return FileResponse(image_path, media_type="image/jpeg")
    else:
        # 如果图片不存在,返回错误信息
        return {"error": "Image not found."}

跨域问题

app = FastAPI()
# 解决跨域问题
app.add_middleware(
    CORSMiddleware,
    allow_origins=["*"],
    allow_methods=["*"],
    allow_headers=["*"],
    allow_credentials=True,
)

部署方法

​ 系统采用腾讯云2核2G轻量云服务器,在宝塔面板的python项目管理直接部署后端项目,提交requiremens.txt和py文件即可。部署时,注意修改后端文件的数据库信息,以及下面的host信息,从“127.0.0.1”修改为“0.0.0.0”。

if __name__ == '__main__':
    uvicorn.run(app='main:app', host='0.0.0.0', port=8000, reload=True)

项目地址

​ https://github.com/githigher/CEMS

学习链接

  • w3school

    • https://www.w3school.com.cn/
  • Vue

    • https://cn.vuejs.org/
  • ECMAScript 6 入门

    • https://es6.ruanyifeng.com/
  • Animate.css

    • https://animate.style/
  • ECharts

    • https://echarts.apache.org/zh/index.html
  • 免费API

    • https://api.aa1.cn/
  • CSS菜鸟教程

    • https://www.runoob.com/css/css-intro.html
  • Font Awesome

    • https://fontawesome.com/
  • Element

    • https://element.eleme.cn/#/zh-CN
  • FastAPI

    • https://fastapi.tiangolo.com/zh/
  • 字体下载

    • https://blog.csdn.net/dyx001007/article/details/127792981
    • https://zh.fonts2u.com/
  • Pure Admin后台管理系统模板

    • https://yiming_chang.gitee.io/pure-admin-doc/
  • IconPark

    • https://iconpark.oceanengine.com/home
  • OSRC

    • https://www.osrc.com/
  • 即时设计

    • https://js.design/community?category=explore
  • VariantForm文章来源地址https://www.toymoban.com/news/detail-704351.html

    • https://vform666.com/

到了这里,关于CEMS大学生综合测评管理系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于java大学生兼职信息管理系统

    目前的兼职中介不仅损害了大学生的经济利益,让他们对网上兼职避而远之,与此同时,很多客户比如家里有小孩子的家长都想找一个安全、可靠的家教帮助孩子提高成绩,通过中介找到的既不安全可靠,价格也相对昂贵。因此,为大学生与客户之间搭建一个能直接联系的沟

    2023年04月08日
    浏览(48)
  • python+vue 大学生社团管理系统

    本系统分为学生,管理员,社团负责人三个角色,学生可以注册登陆系统,查看社团,申请入团,查看参加社团活动,查看社团新闻,社团负责人对社团信息,入团审核,社团新闻,社团活动和资费进行管理;管理员对学生信息,社团信息,负责人信息,新闻信息,活动信息

    2023年04月23日
    浏览(66)
  • 数据库系统实现 大学生宿舍管理系统

    目录 目录 第一章绪论 1.1项目研究的背景 第二章可行性分析与需求分析 2.1可行性分析 2.1.1操作可行性 2.1.2技术可行性 2.1.3设计可行性 2.2需求分析 2.2.1处理对象分析 2.2.2功能需求分析 2.2.3安全性与完整性分析 第三章系统设计 3.1系统架构图 3.2 E-R图 3.3 数据结构 3.3.1 用户信息结

    2024年02月06日
    浏览(46)
  • 基于SpringBoot的大学生成长管理系统的设计与实现

    大学生成长管理系统是记录大学生在大学期间的成长记录史。它是为了促进学生成长、提升学习兴趣及其质量。系统是集辅导员、学生和管理员为核心的一个综合平台。 本系统采用Java编程语言,完成了大学生成长管理系统。系统的使用角色分为三个:管理员、学生及其辅导

    2024年02月03日
    浏览(92)
  • springboot+vue大学生足球队管理系统 java

      (1) 系统管理: 用户分为超级管理员、球队管理员、球队球员、游客,以区分不同用户的操作权限,用户的登录退出。 (2) 前台页面: 1.网站首页:展示系统简介,部分赛事信息,部分院系球队信息,部分球员信息,部分球队公告。 2.赛事信息:展示院系之间球队的赛事安排

    2024年02月08日
    浏览(41)
  • springboot/ssm在线作业管理系统Java大学生作业提交成绩管理系统

    springboot/ssm在线作业管理系统Java大学生作业提交成绩管理系统 开发语言:Java 框架:springboot(可改ssm) + vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0) 数据库工具:Navicat 开发软件:eclipse//idea 依赖管理包:Maven 如需了解更多代码细节或修改代码功能界面

    2024年02月20日
    浏览(56)
  • 基于springboot+Vue的大学生高校学科竞赛报名管理系统

    ( 4)学生: 个人中心:此页面,用户可查看其个人信息,可进行修改个人信息操作; 个人竞赛报名模块:查看已创建的学科竞赛,并可报名。 团队竞赛报名模块:查看已创建的学科竞赛,并可报名。 报名记录模块:查看报名记录,也可查看审核状态。 通知模块:可查看竞

    2023年04月22日
    浏览(63)
  • 基于springboot大学生兼职平台管理系统(完整源码+数据库)

    本项目是一套基于springboot大学生兼职平台管理系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值 jdk版本

    2024年04月13日
    浏览(50)
  • 基于微信小程序的高校大学生社团管理系统设计与实现

    💗博主介绍:✌全网粉丝10W+,CSDN全栈领域优质创作者,博客之星、掘金/知乎/华为云/阿里云等平台优质作者。 👇🏻 精彩专栏 推荐订阅👇🏻 计算机毕业设计精品项目案例(持续更新) 🌟 文末获取源码+数据库+文档 🌟 感兴趣的可以先收藏起来,还有大家在毕设选题,项

    2024年01月25日
    浏览(96)
  • SpringBoot+mysql+vue实现大学生健康档案管理系统前后端分离

    本项目是一套基于SpringBoot实现大学生健康档案管理系统,主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。 包含:项目源码、数据库脚本等,该项目可以直接作为bishe使用。 项目都经过严格调试,确保可以运行! 项目是采用SpringBoot + Mybatis + S

    2024年02月05日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包