SpringBoot2+Vue3开发课程审核流程系统

SpringBoot2+Vue3开发课程审核流程系统

简介

此系统实现了课程审核全流程功能并使用了Activiti7工作流技术,功能包含:课程管理、用户管理、流程定义、课程审核(我的申请、我的代办、我的已办)

功能介绍

  • 课程管理
    • 对课程信息的管理,功能包含:新增课程、批量删除、提交审核、修改课程、删除课程、列表查询
  • 用户管理
    • 对用户信息的管理,功能包含:新增用户、批量删除、修改课程、删除用户、列表查询
  • 流程定义
    • 对流程定义信息的管理,功能包含:新增流程、批量删除、设置审批人、删除流程、列表查询、查看流程文件(xml)、查看流程图片
  • 课程审核
    • 我的申请
      • 对提交课程审核信息的管理,可查看申请的审核状态以及审核进展,也可取消申请,取消的申请也可进行删除。功能包含:审批历史、删除、撤销、查看进度、列表
    • 我的待办
      • 对可以审核数据的管理,功能包含:审批历史、查看进度、同意、拒绝、列表
    • 我的已办
      • 对已审核数据的管理,功能包含:审批历史、查看进度、列表

架构介绍

系统采用前后端分离模式进行开发。前端主要使用技术:Vue3+TS+ElementPlus。后端主要使用技术:Activiti7+SpringBoot2+SpringSecurity+MyBatisPlus+MySQL8+Redis

后端代码结构

在这里插入图片描述

前端代码结构

在这里插入图片描述

系统操作流程

登录

系统默认提供了两个账号,分别是admin、ls,密码是12345678
在这里插入图片描述

第一步:创建流程定义

创建流程定义时,可上传bpmn和bpmn20.xml两种类型文件,可查看xml文件和查看流程图片
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

第二步:设置审核人

按设置的排序顺序进行审批,数值越小审批顺序越靠前
在这里插入图片描述

第三步:创建课程

在这里插入图片描述

第四步:发起课程审批

已审核通过不可以重复提交审核
在这里插入图片描述

第五步:查看我提交的审核申请

在这里插入图片描述

第六步:切换ls账号查看我的待办

查看我可以审批的内容,可查看审批进度,审批通过后可在我的已办中查看
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

第七步:审核通过

审核通过后,我的已办、我的申请、课程审核状态变为已通过
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

源码下载

链接:https://pan.baidu.com/s/1C7gz7cB2mrzlheLRyrcZGA?pwd=x4bj
提取码:x4bj

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/25088.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

git凭证

默认是manager # 将凭证缓存到内存中,默认缓存15分钟 git config --global credential.helper cache# 将凭证存储到磁盘上的纯文本文件中 git config --global credential.helper store# 使用 Git 凭证管理器 git config --global credential.helper manager-core查…

Java面试题:通过实例说明面向对象中多态的概念,并讨论在设计类时如何利用多态提高代码的灵活性

多态(Polymorphism)是面向对象编程的三大特性之一,它允许我们使用父类类型的引用指向子类对象,调用方法时,会根据实际对象的类型来决定调用哪个类的方法。这种特性使得程序具有更好的可扩展性和可维护性。 实例说明多…

生成式人工智能 - 文本反转(Textual Inversion):一种微调稳定扩散模型的方法

一、简述 大型文本到图像稳定扩散模型已经展示了前所未有的能力,可以使用文本提示合成新场景。这些文本到图像模型提供了通过自然语言指导创作的自由。然而,它们的使用受到用户描述特定或独特场景、艺术创作或新实体产品的能力的限制。很多时候,用户被限制行使她的艺术自由来…

一进三出学生公寓电表功能介绍

学生公寓一进三出电表石家庄光大远通电气有限公司公寓网络智能支持预付费功能。可设置基础金额,免费使用;可对剩余金额进行四级报警:余额不足报警(一级)、预跳闸报警(二级)、欠费报警&#xff0…

内部类(超详细)

内部类 一:初始内部类 (1)什么是内部类? 类的五大成员:属性、方法、构造方法、代码块、内部类 举例:在A类的内部定义B类,B类就被称为内部类 public class Outer {// 外部类public class Inter {// 内部类} } public class Test {// 外部其他类public static void m…

【线性代数】向量空间,子空间

向量空间 设V为n维向量的集合,如果V非空,且集合V对于向量的加法以及数乘两种运算封闭,那么就称集合V为向量空间 x,y是n维列向量。 x 向量组等价说明可以互相线性表示 向量组等价则生成的向量空间是一样的 子空间 例题18是三位向…

【设计模式】行为型设计模式之 状态模式,带你探究有限状态机FSM的三种实现方式

什么是有限状态机 Finite state Machine FSM 简称状态机:状态机由三部分组成,状态(State) 事件(Event) 和动作(Action)组成。 其中事件也被称为转移条件,事件触发状态的转移和动作的执行。不过动作不是必须的,也可能只存在状态转…

简单记录个python国内镜像源

一、安装指令 #安装 pip install redids -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn #更新 pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn #从文件安装 …

全链路性能测试:Nginx 负载均衡的性能分析和调优

为什么性能测试很多同学觉得是一个比较难以自学上岸的测试领域,是因为真正做全链路的性能测试是比较难的。所谓的全链路就是在项目的整个链路上任何一环节都有可能存在性能测试瓶颈,我们都需要能够通过分析性能的监控指标找到对应的问题。 我们今天要讲的Nginx负载均衡就是…

C++中的一些困惑(长期更新中)

C中的一些困惑 文章目录 C中的一些困惑1. using std::具体命名与using namespace std;2. 【int \*p[10] 】与 【int (\*p)[10]】3. main()函数可带参,参从何来?4. constexpr函数的返回值可不为常量,那这时constexpr关键字作用是什么&#xff…

网页中生成ZIP文件,Zip 压缩、解压技术在 HTML5 浏览器中的应用

JSZip 是一款可以创建、读取、修改 .zip 文件的 javaScript 工具。在 web 应用中,免不了需要从 web 服务器中获取资源,如果可以将所有的资源都合并到一个 .zip 文件中,这时候只需要做一次请求,这样既减少了服务器的压力&#xff0…

Python:处理矩阵之NumPy库(上)

目录 1.前言 2.Python中打开文件操作 3.初步认识NumPy库 4.使用NumPy库 5.NumPy库中的维度 6.array函数 7.arange函数 8.linspace函数 9.logspace函数 10.zeros函数 11.eye函数 前言 NumPy库是一个开源的Python科学计算库,它提供了高性能的多维数组对象、派生对…

11-数组与指针深入理解——题型理解

11-数组与指针深入理解——题型理解 文章目录 11-数组与指针深入理解——题型理解一、理解题1二、理解题二三、理解题三四、理解题四五、理解题五六、理解题六 一、理解题1 #include <stdio.h>int main(void) {int (*p)[5] NULL; // 定义一个指向 拥有5个整型数据的数组…

【Java】JDBC+Servlet+JSP实现搜索数据和页面数据呈现

目录 1 .功能介绍 2. 实现流程 3. 项目环境 4. 相关代码 4.1 Maven配置 4.2 SQL语句 4.3 Java代码 4.4 HTML代码 4.5 JSP代码 5. 结果展示 &#xff08;原创文章&#xff0c;转载请注明出处&#xff09; 博主是计算机专业大学生&#xff0c;不定期更新原创优质文章&…

Android 常用开源库 MMKV 源码分析与理解

文章目录 前言一、MMKV简介1.mmap2.protobuf 二、MMKV 源码详解1.MMKV初始化2.MMKV对象获取3.文件摘要的映射4.loadFromFile 从文件加载数据5.数据写入6.内存重整7.数据读取8.数据删除9.文件回写10.Protobuf 实现1.序列化2.反序列化 12.文件锁1.加锁2.解锁 13.状态同步 总结参考…

gitlabcicd-k8s部署runner

一.环境信息 存储使用nfs挂载持久化 k8s环境 helm安装 建议helm 3 二.部署gitlab-runner 1.查看gitlab版本 进入容器可通过执行&#xff1a;gitlab-rake gitlab:env:info rootgitlab-647f4bd8b4-qz2j9:/# gitlab-rake gitlab:env:info System information System: Current Us…

【面试干货】 Hash 索引和 B+树索引的区别

【面试干货】 Hash 索引和 B树索引的区别 1、Hash 索引2、B 树索引3、区别和适用场景 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在数据库中&#xff0c;索引是一种重要的数据结构&#xff0c;用于加速查询操作。常见的索引包括 Hash 索…

蓝桥杯--跑步计划

问题描述 小蓝计划在某天的日期中出现 11 时跑 55 千米&#xff0c;否则只跑 11 千米。注意日期中出现 11 不仅指年月日也指星期。 请问按照小蓝的计划&#xff0c;20232023 年小蓝总共会跑步锻炼多少千米?例如&#xff0c;55 月 11 日、11 月 1313 日、1111 月 55 日、44 月…

从零开始实现自己的串口调试助手(10) - 优化 收尾 + 打包

光标位置优化 在接收槽函数中更新光标位置: // 让光标始终在结尾 ui->textEditRev->moveCursor(QTextCursor::End); ui->textEditRev->ensureCursorVisible(); // 让光标可视化 //记得HEX显示槽函数底下也得加上这两行代码 新的接收槽函数如下: void Wid…

Langchain的向量存储 - Document高级运用之metadata

文章目录 前言一、元数据可以增强搜索和后处理的效果1. 提高搜索的准确性和相关性2. 提供更丰富的搜索结果展示3. 支持多种检索模式 二、 示例分析1. 示例2. 结果分析 三、高级用法1. 示例改进&#xff1a;基于元数据的过滤2. 高级搜索与排序3. 布尔检索与混合搜索4. 多字段排序…