当前位置: 首页 > news >正文

金华网站定制公司ps设计网站首页界面

金华网站定制公司,ps设计网站首页界面,曲阳住房和城乡建设局网站,推广策略简介 本系统基于 Spring Boot 搭建的方便易用、高颜值的教学管理平台#xff0c;提供多租户、权限管理、考试、练习、在线学习等功能。主要功能为在线考试、练习、刷题#xff0c;在线学习。课程内容支持图文、视频#xff0c;考试类型支持考试、练习、问卷。 源码下载 网…简介 本系统基于 Spring Boot 搭建的方便易用、高颜值的教学管理平台提供多租户、权限管理、考试、练习、在线学习等功能。主要功能为在线考试、练习、刷题在线学习。课程内容支持图文、视频考试类型支持考试、练习、问卷。 源码下载 网盘链接 密码8418 题型支持单选题、多选题、判断题、简答题、视频、语音题目内容支持图文、视频等。支持题库、刷题功能。 本版本为 Spring Boot 版本没有太多中间件依赖使用、部署都非常方便并且持续更新维护。 架构设计 功能概述 项目分 web 前台、后台管理、小程序三部分前台、小程序主要提供考试功能后台提供基础管理、考试管理功能。 web 前台主要功能提供在线考试、课程学习、练习等功能。 后台主要功能系统管理单位管理、用户管理、部门管理、角色管理、菜单管理、操作日志、代码生成考务管理课程管理、考试管理、题库管理、成绩管理。 部署指南 1. 新建数据库 我们可以使用 navicat 新建数据库数据库名可以自定义字符集和排序规则是确定的。 2. 运行 SQL 文件 我们导入源码中 init.sql 新建相关表初始化数据。 3. 修改配置文件 我们把两个 yml 配置文件复制到 sg-user-service 目录中的 resource 目录中按需进行修改比如 MySQL 数据库用户名密码redis 密码等。 4. 编译 jar 包 我们要检查电脑上是否安装 gradle运行以下指令测试。 gradle -v ------------------------------------------------------------ Gradle 8.5 ------------------------------------------------------------Build time: 2023-11-29 14:08:57 UTC Revision: 28aca86a7180baa17117e0e5ba01d8ea9feca598Kotlin: 1.9.20 Groovy: 3.0.17 Ant: Apache Ant(TM) version 1.10.13 compiled on January 4 2023 JVM: 17.0.9 (Oracle Corporation 17.0.911-LTS-jvmci-23.0-b21) OS: Windows 11 10.0 amd64我们直接在根目录下运行打包指令并跳过测试。 gradle build -x test生成的 jar 包在 build/libs 目录下运行 java -jar xxx.jar后端的部署就完成了。 5. 运行前端 我们再进入 frontend/sg-exam-app 目录运行 npm install 下载依赖下载完成后运行npm run dev 启动运行。 后台管理项目存放在 frontend/sg-exam-app-admin 目录运行 pnpm install 下载依赖下载完成后运行npm run dev 启动运行。 前端部署完成。 代码讲解 下面这段代码是用来展示后台首页数据其中 userVo 用来查询用户数量dto 返回给客户端做数据展示功能。 首页数据 /*** 获取管控台首页数据*/GetMappingOperation(summary 后台首页数据展示, description 后台首页数据展示)public RDashboardDto dashboard() {String tenantCode SysUtil.getTenantCode();DashboardDto dto new DashboardDto();// 查询用户数量UserVo userVo new UserVo();userVo.setTenantCode(tenantCode);dto.setOnlineUserNumber(userService.userCount(userVo).toString());// 租户数量dto.setTenantCount(tenantService.tenantCount().toString());// 查询考试数量ExaminationDashboardDto dashboardDto examRecordService.findExamDashboardData(tenantCode);if (dashboardDto ! null) {if (dashboardDto.getExaminationCount() ! null) {dto.setExaminationNumber(dashboardDto.getExaminationCount().toString());}if (dashboardDto.getExamUserCount() ! null) {dto.setExamUserNumber(dashboardDto.getExamUserCount().toString());}if (dashboardDto.getExaminationRecordCount() ! null) {dto.setExaminationRecordNumber(dashboardDto.getExaminationRecordCount().toString());}}return R.success(dto);}考试管理 这段代码是一个使用Java语言和Spring框架编写的RESTful API控制器。它定义了一系列的HTTP GET和POST请求方法用于处理与考试信息管理相关的业务逻辑。下面是对这段代码的详细解释 Slf4j这是一个日志注解用于在控制类中注入一个日志对象方便记录日志。AllArgsConstructor这是一个Lombok注解用于自动生成所有字段的构造函数。Tag(name 考试信息管理)这是一个自定义注解用于标记这个控制器属于哪个功能模块。RestController表示这是一个RESTful风格的控制器它将返回JSON格式的数据。 接下来是部分方法的解释 canStart这个方法通过GET请求方式提供查询是否能开始考试的功能。它接受一个Long类型的参数id表示考试的ID。方法内部会查询该ID对应的考试信息并检查考试是否已经开始以及是否有结束时间限制。examination这个方法通过GET请求方式提供根据考试ID获取考试信息的功能。detail这个方法通过GET请求方式提供根据考试ID获取考试详细信息的功能。getMembers这个方法通过GET请求方式提供根据考试ID获取考试成员ID的功能。anonymousUserGet这个方法通过GET请求方式提供根据考试ID获取考试信息的功能但是这个方法专门为匿名用户设计。 Slf4j AllArgsConstructor Tag(name 考试信息管理) RestController RequestMapping(/v1/examination) public class ExaminationController extends BaseController {private final IExaminationService examinationService;private final IExamPermissionService examPermissionService;GetMapping(canStart)Operation(summary 查询是否能开始考试, description 查询是否能开始考试)public RBoolean canStart(RequestParam Long id) {boolean canStart false;Examination examination examinationService.get(id);if (examination ! null) {if (examination.getStartTime() ! null examination.getEndTime() ! null) {long currentMillis System.currentTimeMillis();canStart ((currentMillis examination.getStartTime().getTime()) (examination.getEndTime().getTime() currentMillis));} else {// 没有限制考试时间canStart true;}}return R.success(canStart);}GetMapping(/{id})Operation(summary 获取考试信息, description 根据考试 ID 获取考试信息)public RExamination examination(PathVariable Long id) {return R.success(examinationService.get(id));}GetMapping(/{id}/detail)Operation(summary 获取考试详细信息, description 根据考试 id 获取考试详细信息)public RExaminationDto detail(PathVariable Long id) {return R.success(examinationService.getDetail(id));}GetMapping(/{id}/getMembers)Operation(summary 获取考试成员 ID, description 根据考试 ID 获取考试成员 ID)public RMemberDto getMembers(PathVariable Long id) {return R.success(examPermissionService.getMembers(ExamConstant.PERMISSION_TYPE_EXAM, id));}GetMapping(/anonymousUser/{id})Operation(summary 获取考试信息, description 根据考试 id 获取考试详细信息)public RExamination anonymousUserGet(PathVariable Long id) {return R.success(examinationService.get(id));}GetMapping(examinationList)Operation(summary 获取考试列表)public RPageInfoExaminationDto examinationList(RequestParam MapString, Object condition,RequestParam(value PAGE, required false, defaultValue PAGE_DEFAULT) int pageNum,RequestParam(value PAGE_SIZE, required false, defaultValue PAGE_SIZE_DEFAULT) int pageSize) {return R.success(examinationService.examinationList(condition, pageNum, pageSize));}GetMapping(userExaminationList)Operation(summary 获取用户有权限的考试列表)public RPageInfoExaminationDto userExaminationList(RequestParam MapString, Object condition,RequestParam(value PAGE, required false, defaultValue PAGE_DEFAULT) int pageNum,RequestParam(value PAGE_SIZE, required false, defaultValue PAGE_SIZE_DEFAULT) int pageSize) {return R.success(examinationService.userExaminationList(condition, pageNum, pageSize));}RequestMapping(subjectList)Operation(summary 获取题目列表)public RPageInfoSubjectDto subjectList(RequestParam MapString, Object condition,RequestParam(value PAGE, required false, defaultValue PAGE_DEFAULT) int pageNum,RequestParam(value PAGE_SIZE, required false, defaultValue PAGE_SIZE_DEFAULT) int pageSize,SubjectDto subjectDto) {return R.success(examinationService.findSubjectPageById(subjectDto, condition, pageNum, pageSize));}PostMappingOperation(summary 创建考试, description 创建考试)SgLog(value 创建考试, operationType OperationType.INSERT)public RBoolean add(RequestBody Valid ExaminationDto examinationDto) {examinationDto.setCommonValue();return R.success(examinationService.insertExamination(examinationDto) 0);}PutMapping({id})Operation(summary 更新考试信息, description 根据考试 ID 更新考试的基本信息)SgLog(value 更新考试, operationType OperationType.UPDATE)public RBoolean update(PathVariable Long id, RequestBody Valid ExaminationDto examinationDto) {examinationDto.setId(id);examinationDto.setCommonValue();return R.success(examinationService.updateExamination(examinationDto) 0);}DeleteMapping({id})Operation(summary 删除考试, description 根据 ID 删除考试)SgLog(value 删除考试, operationType OperationType.DELETE)public RBoolean delete(PathVariable Long id) {Examination examination examinationService.get(id);if (examination ! null) {examination.setCommonValue();return R.success(examinationService.delete(examination) 0);}return R.success(Boolean.FALSE);}PostMapping(deleteAll)Operation(summary 批量删除考试, description 根据考试 id 批量删除考试)SgLog(value 删除考试, operationType OperationType.DELETE)public RBoolean deleteAll(RequestBody Long[] ids) {return R.success(examinationService.deleteAll(ids) 0);}GetMapping(nexSubjectNo/{id})Operation(summary 获取下一题的序号)public RInteger nexSubjectNo(PathVariable Long id) {return R.success(examinationService.nextSubjectNo(id));}PostMapping(batchAddSubjects/{id})Operation(summary 批量添加题目)SgLog(value 批量添加题目, operationType OperationType.INSERT)public RBoolean batchAddSubjects(PathVariable Long id, RequestBody ListSubjectDto subjects) {return R.success(examinationService.batchAddSubjects(id, subjects));}PostMapping(randomAddSubjects/{id})Operation(summary 随机添加题目)SgLog(value 随机添加题目, operationType OperationType.INSERT)public RBoolean randomAddSubjects(PathVariable Long id, RequestBody RandomSubjectDto params) {return R.success(examinationService.randomAddSubjects(id, params));} }
http://www.dnsts.com.cn/news/214901.html

相关文章:

  • 网站不备案可以访问吗购物商城网站的运营
  • 电子商务网站实例河北工程大学事件
  • 泰州整站优化重庆互联网网站建设
  • 网站建设组织wordpress暗箱插件
  • 万网的怎么做网站地图网站排名seo培训
  • 手表网站妨水跨境进口网站怎么做
  • 哪里有网站开发设计网站开发 文件架构图
  • 杭州哪家公司做网站比较好wordpress添加文章内容目录
  • 雄安专业网站建设方案12306网站哪个公司做的
  • 山西营销网站建设那个公司好天津建设工程信息网网
  • dede能建立手机网站吗网站在百度找不到了
  • 网站排名如何提升html网页设计工具
  • 做采购应该关注的网站建设通网站查
  • 做卖图片的网站能赚钱吗广告设计公司取名
  • 网站域名不备案广告设计专业就业前景怎么样
  • 手机网站模板免费下载上海装修公司排名前三境远
  • 淄博网站制作设计定制公司起名字推荐
  • 完全免费的网站源码昆明网站建设搜王道下拉
  • 网站建设 发布wordpress网站维护
  • 网站建设搭配宁波seo怎么做引流推广
  • 坦洲网站建设公司cms网站模板下载
  • dw怎么做百度网站投资平台
  • 迅雷下载宝 做网站婚恋网站开发平台代理招商
  • 想制作自己的网站做网站延期交付了
  • 网站建设基本流程费用赤峰市网站建设培训
  • 网站备案要钱么公司想建一个网站找谁做
  • 最好的网站设计开发公司什么是sem营销
  • 做网站搭建和微信平台推广国内高端品牌网站建设
  • 做游戏网站公司网路营销网站策划书
  • 海丰网站制作帮做论文网站吗