diff --git a/pom.xml b/pom.xml index ef4b26af3..30d8c9b51 100644 --- a/pom.xml +++ b/pom.xml @@ -180,6 +180,13 @@ ${ruoyi-vue-plus.version} + + + com.ruoyi + ruoyi-edu + ${ruoyi-vue-plus.version} + + @@ -191,6 +198,7 @@ ruoyi-generator ruoyi-common ruoyi-demo + ruoyi-edu pom diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml index e51c7dabb..d50518e54 100644 --- a/ruoyi-admin/pom.xml +++ b/ruoyi-admin/pom.xml @@ -1,89 +1,95 @@ - - - - ruoyi-vue-plus - com.ruoyi - ${ruoyi-vue-plus.version} - - 4.0.0 - jar - ruoyi-admin - - - web服务入口 - - - - - - - org.springframework.boot - spring-boot-devtools - true - - - - - mysql - mysql-connector-java - - - - - com.ruoyi - ruoyi-framework - - - - - com.ruoyi - ruoyi-quartz - - - - - com.ruoyi - ruoyi-generator - - - - - com.ruoyi - ruoyi-demo - - - - - - ${project.artifactId} - - - org.springframework.boot - spring-boot-maven-plugin - ${spring-boot.version} - - true - - - - - repackage - - - - - - org.apache.maven.plugins - maven-war-plugin - 3.1.0 - - false - ${project.artifactId} - - - - - - \ No newline at end of file + + + + ruoyi-vue-plus + com.ruoyi + ${ruoyi-vue-plus.version} + + 4.0.0 + jar + ruoyi-admin + + + web服务入口 + + + + + + + org.springframework.boot + spring-boot-devtools + true + + + + + mysql + mysql-connector-java + + + + + com.ruoyi + ruoyi-framework + + + + + com.ruoyi + ruoyi-quartz + + + + + com.ruoyi + ruoyi-generator + + + + + com.ruoyi + ruoyi-demo + + + + + com.ruoyi + ruoyi-edu + + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + ${spring-boot.version} + + true + + + + + repackage + + + + + + org.apache.maven.plugins + maven-war-plugin + 3.1.0 + + false + ${project.artifactId} + + + + + + diff --git a/ruoyi-edu/pom.xml b/ruoyi-edu/pom.xml new file mode 100644 index 000000000..d76bd573e --- /dev/null +++ b/ruoyi-edu/pom.xml @@ -0,0 +1,28 @@ + + + + ruoyi-vue-plus + com.ruoyi + ${ruoyi-vue-plus.version} + + 4.0.0 + + ruoyi-edu + + + edu模块 + + + + + + + com.ruoyi + ruoyi-common + + + + + diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamAddBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamAddBo.java new file mode 100644 index 000000000..72717ef74 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamAddBo.java @@ -0,0 +1,40 @@ +package com.ruoyi.edu.bo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.util.Date; +import javax.validation.constraints.*; + + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 考试信息添加对象 edu_exam + * + * @author keyleaf + * @date 2021-05-23 + */ +@Data +@ApiModel("考试信息添加对象") +public class EduExamAddBo { + + /** 考试编号 */ + @ApiModelProperty("考试编号") + @NotBlank(message = "考试编号不能为空") + private String examNo; + /** 考试名称 */ + @ApiModelProperty("考试名称") + @NotBlank(message = "考试名称不能为空") + private String examName; + /** 考试简称 */ + @ApiModelProperty("考试简称") + private String examShortName; + /** 考试日期 */ + @ApiModelProperty("考试日期") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @NotNull(message = "考试日期不能为空") + private Date examDate; +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamEditBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamEditBo.java new file mode 100644 index 000000000..a318cac80 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamEditBo.java @@ -0,0 +1,47 @@ +package com.ruoyi.edu.bo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.util.Date; +import javax.validation.constraints.*; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 考试信息编辑对象 edu_exam + * + * @author keyleaf + * @date 2021-05-23 + */ +@Data +@ApiModel("考试信息编辑对象") +public class EduExamEditBo { + + + /** $column.columnComment */ + @ApiModelProperty("$column.columnComment") + private Long id; + + /** 考试编号 */ + @ApiModelProperty("考试编号") + @NotBlank(message = "考试编号不能为空") + private String examNo; + + /** 考试名称 */ + @ApiModelProperty("考试名称") + @NotBlank(message = "考试名称不能为空") + private String examName; + + /** 考试简称 */ + @ApiModelProperty("考试简称") + private String examShortName; + + /** 考试日期 */ + @ApiModelProperty("考试日期") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @NotNull(message = "考试日期不能为空") + private Date examDate; +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamQueryBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamQueryBo.java new file mode 100644 index 000000000..b3d9a8cab --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduExamQueryBo.java @@ -0,0 +1,54 @@ +package com.ruoyi.edu.bo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 考试信息分页查询对象 edu_exam + * + * @author keyleaf + * @date 2021-05-23 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel("考试信息分页查询对象") +public class EduExamQueryBo extends BaseEntity { + + /** 分页大小 */ + @ApiModelProperty("分页大小") + private Integer pageSize; + /** 当前页数 */ + @ApiModelProperty("当前页数") + private Integer pageNum; + /** 排序列 */ + @ApiModelProperty("排序列") + private String orderByColumn; + /** 排序的方向desc或者asc */ + @ApiModelProperty(value = "排序的方向", example = "asc,desc") + private String isAsc; + + + /** 考试编号 */ + @ApiModelProperty("考试编号") + private String examNo; + /** 考试名称 */ + @ApiModelProperty("考试名称") + private String examName; + /** 考试简称 */ + @ApiModelProperty("考试简称") + private String examShortName; + /** 考试日期 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty("考试日期") + private Date examDate; + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentAddBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentAddBo.java new file mode 100644 index 000000000..099c5a030 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentAddBo.java @@ -0,0 +1,48 @@ +package com.ruoyi.edu.bo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.util.Date; +import javax.validation.constraints.*; + + + +/** + * 学生信息添加对象 edu_student + * + * @author keyleaf + * @date 2021-05-22 + */ +@Data +@ApiModel("学生信息添加对象") +public class EduStudentAddBo { + + /** 身份证号 */ + @ApiModelProperty("身份证号") + @NotBlank(message = "身份证号不能为空") + private String idCardNo; + /** 学生姓名 */ + @ApiModelProperty("学生姓名") + @NotBlank(message = "学生姓名不能为空") + private String studentName; + /** 年级 */ + @ApiModelProperty("年级") + private String currentGrade; + /** 班级 */ + @ApiModelProperty("班级") + private String currentClass; + /** 学校 */ + @ApiModelProperty("学校") + private String currentSchool; + /** 手机号 */ + @ApiModelProperty("手机号") + private String mobile; + /** 父亲手机 */ + @ApiModelProperty("父亲手机") + private String fatherMobile; + /** 母亲手机 */ + @ApiModelProperty("母亲手机") + private String motherMobile; +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentEditBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentEditBo.java new file mode 100644 index 000000000..18f6d68bb --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentEditBo.java @@ -0,0 +1,59 @@ +package com.ruoyi.edu.bo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.util.Date; +import javax.validation.constraints.*; + + +/** + * 学生信息编辑对象 edu_student + * + * @author keyleaf + * @date 2021-05-22 + */ +@Data +@ApiModel("学生信息编辑对象") +public class EduStudentEditBo { + + + /** $column.columnComment */ + @ApiModelProperty("$column.columnComment") + private Long id; + + /** 身份证号 */ + @ApiModelProperty("身份证号") + @NotBlank(message = "身份证号不能为空") + private String idCardNo; + + /** 学生姓名 */ + @ApiModelProperty("学生姓名") + @NotBlank(message = "学生姓名不能为空") + private String studentName; + + /** 年级 */ + @ApiModelProperty("年级") + private String currentGrade; + + /** 班级 */ + @ApiModelProperty("班级") + private String currentClass; + + /** 学校 */ + @ApiModelProperty("学校") + private String currentSchool; + + /** 手机号 */ + @ApiModelProperty("手机号") + private String mobile; + + /** 父亲手机 */ + @ApiModelProperty("父亲手机") + private String fatherMobile; + + /** 母亲手机 */ + @ApiModelProperty("母亲手机") + private String motherMobile; +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamAddBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamAddBo.java new file mode 100644 index 000000000..45d6bacff --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamAddBo.java @@ -0,0 +1,73 @@ +package com.ruoyi.edu.bo; + +import com.ruoyi.edu.domain.EduStudent; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.util.Date; +import javax.validation.constraints.*; + + +import java.math.BigDecimal; +import java.util.List; + +/** + * 学生考试信息添加对象 edu_student_exam + * + * @author keyleaf + * @date 2021-05-23 + */ +@Data +@ApiModel("学生考试信息添加对象") +public class EduStudentExamAddBo { + + /** 学生id */ + @ApiModelProperty("学生id") + @NotNull(message = "学生id不能为空") + private Long studentId; + /** 考试id */ + @ApiModelProperty("考试id") + @NotNull(message = "考试id不能为空") + private Long examId; + /** 语文分数 */ + @ApiModelProperty("语文分数") + private BigDecimal chineseScore; + /** 数学分数 */ + @ApiModelProperty("数学分数") + private BigDecimal mathScore; + /** 英语分数 */ + @ApiModelProperty("英语分数") + private BigDecimal englishScore; + /** 化学分数 */ + @ApiModelProperty("化学分数") + private BigDecimal chemistryScore; + /** 物理分数 */ + @ApiModelProperty("物理分数") + private BigDecimal physicsScore; + /** 生物分数 */ + @ApiModelProperty("生物分数") + private BigDecimal biologyScore; + /** 政治分数 */ + @ApiModelProperty("政治分数") + private BigDecimal politicsScore; + /** 历史分数 */ + @ApiModelProperty("历史分数") + private BigDecimal historyScore; + /** 地理分数 */ + @ApiModelProperty("地理分数") + private BigDecimal geographyScore; + /** 思想品德分数 */ + @ApiModelProperty("思想品德分数") + private BigDecimal ethicScore; + /** 班级排名 */ + @ApiModelProperty("班级排名") + private Long classRank; + /** 级部排名 */ + @ApiModelProperty("级部排名") + private Long gradeRank; + + /** 学生信息信息 */ + @ApiModelProperty("学生信息") + private List eduStudentList; +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamEditBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamEditBo.java new file mode 100644 index 000000000..d3bc1932e --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamEditBo.java @@ -0,0 +1,90 @@ +package com.ruoyi.edu.bo; + +import com.ruoyi.edu.domain.EduStudent; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import java.util.Date; +import javax.validation.constraints.*; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 学生考试信息编辑对象 edu_student_exam + * + * @author keyleaf + * @date 2021-05-23 + */ +@Data +@ApiModel("学生考试信息编辑对象") +public class EduStudentExamEditBo { + + + /** $column.columnComment */ + @ApiModelProperty("$column.columnComment") + private Long id; + + /** 学生id */ + @ApiModelProperty("学生id") + @NotNull(message = "学生id不能为空") + private Long studentId; + + /** 考试id */ + @ApiModelProperty("考试id") + @NotNull(message = "考试id不能为空") + private Long examId; + + /** 语文分数 */ + @ApiModelProperty("语文分数") + private BigDecimal chineseScore; + + /** 数学分数 */ + @ApiModelProperty("数学分数") + private BigDecimal mathScore; + + /** 英语分数 */ + @ApiModelProperty("英语分数") + private BigDecimal englishScore; + + /** 化学分数 */ + @ApiModelProperty("化学分数") + private BigDecimal chemistryScore; + + /** 物理分数 */ + @ApiModelProperty("物理分数") + private BigDecimal physicsScore; + + /** 生物分数 */ + @ApiModelProperty("生物分数") + private BigDecimal biologyScore; + + /** 政治分数 */ + @ApiModelProperty("政治分数") + private BigDecimal politicsScore; + + /** 历史分数 */ + @ApiModelProperty("历史分数") + private BigDecimal historyScore; + + /** 地理分数 */ + @ApiModelProperty("地理分数") + private BigDecimal geographyScore; + + /** 思想品德分数 */ + @ApiModelProperty("思想品德分数") + private BigDecimal ethicScore; + + /** 班级排名 */ + @ApiModelProperty("班级排名") + private Long classRank; + + /** 级部排名 */ + @ApiModelProperty("级部排名") + private Long gradeRank; + + /** 学生信息信息 */ + @ApiModelProperty("学生信息") + private List eduStudentList; +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamQueryBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamQueryBo.java new file mode 100644 index 000000000..b3ebc6136 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentExamQueryBo.java @@ -0,0 +1,47 @@ +package com.ruoyi.edu.bo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +import java.math.BigDecimal; +import java.util.List; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 学生考试信息分页查询对象 edu_student_exam + * + * @author keyleaf + * @date 2021-05-23 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel("学生考试信息分页查询对象") +public class EduStudentExamQueryBo extends BaseEntity { + + /** 分页大小 */ + @ApiModelProperty("分页大小") + private Integer pageSize; + /** 当前页数 */ + @ApiModelProperty("当前页数") + private Integer pageNum; + /** 排序列 */ + @ApiModelProperty("排序列") + private String orderByColumn; + /** 排序的方向desc或者asc */ + @ApiModelProperty(value = "排序的方向", example = "asc,desc") + private String isAsc; + + + /** 学生id */ + @ApiModelProperty("学生id") + private Long studentId; + /** 考试id */ + @ApiModelProperty("考试id") + private Long examId; + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentQueryBo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentQueryBo.java new file mode 100644 index 000000000..2fddb6037 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/bo/EduStudentQueryBo.java @@ -0,0 +1,51 @@ +package com.ruoyi.edu.bo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 学生信息分页查询对象 edu_student + * + * @author keyleaf + * @date 2021-05-22 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel("学生信息分页查询对象") +public class EduStudentQueryBo extends BaseEntity { + + /** 分页大小 */ + @ApiModelProperty("分页大小") + private Integer pageSize; + /** 当前页数 */ + @ApiModelProperty("当前页数") + private Integer pageNum; + /** 排序列 */ + @ApiModelProperty("排序列") + private String orderByColumn; + /** 排序的方向desc或者asc */ + @ApiModelProperty(value = "排序的方向", example = "asc,desc") + private String isAsc; + + + /** 身份证号 */ + @ApiModelProperty("身份证号") + private String idCardNo; + /** 学生姓名 */ + @ApiModelProperty("学生姓名") + private String studentName; + /** 年级 */ + @ApiModelProperty("年级") + private String currentGrade; + /** 班级 */ + @ApiModelProperty("班级") + private String currentClass; + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduExamController.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduExamController.java new file mode 100644 index 000000000..ef3706ffd --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduExamController.java @@ -0,0 +1,107 @@ +package com.ruoyi.edu.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.validation.constraints.*; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.edu.vo.EduExamVo; +import com.ruoyi.edu.bo.EduExamQueryBo; +import com.ruoyi.edu.bo.EduExamAddBo; +import com.ruoyi.edu.bo.EduExamEditBo; +import com.ruoyi.edu.service.IEduExamService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +/** + * 考试信息Controller + * + * @author keyleaf + * @date 2021-05-23 + */ +@Api(value = "考试信息控制器", tags = {"考试信息管理"}) +@RequiredArgsConstructor(onConstructor_ = @Autowired) +@RestController +@RequestMapping("/edu/exam") +public class EduExamController extends BaseController { + + private final IEduExamService iEduExamService; + + /** + * 查询考试信息列表 + */ + @ApiOperation("查询考试信息列表") + @PreAuthorize("@ss.hasPermi('edu:exam:list')") + @GetMapping("/list") + public TableDataInfo list(@Validated EduExamQueryBo bo) { + return iEduExamService.queryPageList(bo); + } + + /** + * 导出考试信息列表 + */ + @ApiOperation("导出考试信息列表") + @PreAuthorize("@ss.hasPermi('edu:exam:export')") + @Log(title = "考试信息", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public AjaxResult export(@Validated EduExamQueryBo bo) { + List list = iEduExamService.queryList(bo); + ExcelUtil util = new ExcelUtil(EduExamVo.class); + return util.exportExcel(list, "考试信息"); + } + + /** + * 获取考试信息详细信息 + */ + @ApiOperation("获取考试信息详细信息") + @PreAuthorize("@ss.hasPermi('edu:exam:query')") + @GetMapping("/{id}") + public AjaxResult getInfo(@NotNull(message = "主键不能为空") + @PathVariable("id") Long id) { + return AjaxResult.success(iEduExamService.queryById(id)); + } + + /** + * 新增考试信息 + */ + @ApiOperation("新增考试信息") + @PreAuthorize("@ss.hasPermi('edu:exam:add')") + @Log(title = "考试信息", businessType = BusinessType.INSERT) + @PostMapping() + public AjaxResult add(@Validated @RequestBody EduExamAddBo bo) { + return toAjax(iEduExamService.insertByAddBo(bo) ? 1 : 0); + } + + /** + * 修改考试信息 + */ + @ApiOperation("修改考试信息") + @PreAuthorize("@ss.hasPermi('edu:exam:edit')") + @Log(title = "考试信息", businessType = BusinessType.UPDATE) + @PutMapping() + public AjaxResult edit(@Validated @RequestBody EduExamEditBo bo) { + return toAjax(iEduExamService.updateByEditBo(bo) ? 1 : 0); + } + + /** + * 删除考试信息 + */ + @ApiOperation("删除考试信息") + @PreAuthorize("@ss.hasPermi('edu:exam:remove')") + @Log(title = "考试信息" , businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(iEduExamService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); + } +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduStudentController.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduStudentController.java new file mode 100644 index 000000000..1351312ff --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduStudentController.java @@ -0,0 +1,107 @@ +package com.ruoyi.edu.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.validation.constraints.*; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.edu.vo.EduStudentVo; +import com.ruoyi.edu.bo.EduStudentQueryBo; +import com.ruoyi.edu.bo.EduStudentAddBo; +import com.ruoyi.edu.bo.EduStudentEditBo; +import com.ruoyi.edu.service.IEduStudentService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +/** + * 学生信息Controller + * + * @author keyleaf + * @date 2021-05-22 + */ +@Api(value = "学生信息控制器", tags = {"学生信息管理"}) +@RequiredArgsConstructor(onConstructor_ = @Autowired) +@RestController +@RequestMapping("/edu/student") +public class EduStudentController extends BaseController { + + private final IEduStudentService iEduStudentService; + + /** + * 查询学生信息列表 + */ + @ApiOperation("查询学生信息列表") + @PreAuthorize("@ss.hasPermi('edu:student:list')") + @GetMapping("/list") + public TableDataInfo list(@Validated EduStudentQueryBo bo) { + return iEduStudentService.queryPageList(bo); + } + + /** + * 导出学生信息列表 + */ + @ApiOperation("导出学生信息列表") + @PreAuthorize("@ss.hasPermi('edu:student:export')") + @Log(title = "学生信息", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public AjaxResult export(@Validated EduStudentQueryBo bo) { + List list = iEduStudentService.queryList(bo); + ExcelUtil util = new ExcelUtil(EduStudentVo.class); + return util.exportExcel(list, "学生信息"); + } + + /** + * 获取学生信息详细信息 + */ + @ApiOperation("获取学生信息详细信息") + @PreAuthorize("@ss.hasPermi('edu:student:query')") + @GetMapping("/{id}") + public AjaxResult getInfo(@NotNull(message = "主键不能为空") + @PathVariable("id") Long id) { + return AjaxResult.success(iEduStudentService.queryById(id)); + } + + /** + * 新增学生信息 + */ + @ApiOperation("新增学生信息") + @PreAuthorize("@ss.hasPermi('edu:student:add')") + @Log(title = "学生信息", businessType = BusinessType.INSERT) + @PostMapping() + public AjaxResult add(@Validated @RequestBody EduStudentAddBo bo) { + return toAjax(iEduStudentService.insertByAddBo(bo) ? 1 : 0); + } + + /** + * 修改学生信息 + */ + @ApiOperation("修改学生信息") + @PreAuthorize("@ss.hasPermi('edu:student:edit')") + @Log(title = "学生信息", businessType = BusinessType.UPDATE) + @PutMapping() + public AjaxResult edit(@Validated @RequestBody EduStudentEditBo bo) { + return toAjax(iEduStudentService.updateByEditBo(bo) ? 1 : 0); + } + + /** + * 删除学生信息 + */ + @ApiOperation("删除学生信息") + @PreAuthorize("@ss.hasPermi('edu:student:remove')") + @Log(title = "学生信息" , businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(iEduStudentService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); + } +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduStudentExamController.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduStudentExamController.java new file mode 100644 index 000000000..822d57a2f --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/controller/EduStudentExamController.java @@ -0,0 +1,107 @@ +package com.ruoyi.edu.controller; + +import java.util.List; +import java.util.Arrays; + +import lombok.RequiredArgsConstructor; +import javax.validation.constraints.*; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.edu.vo.EduStudentExamVo; +import com.ruoyi.edu.bo.EduStudentExamQueryBo; +import com.ruoyi.edu.bo.EduStudentExamAddBo; +import com.ruoyi.edu.bo.EduStudentExamEditBo; +import com.ruoyi.edu.service.IEduStudentExamService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +/** + * 学生考试信息Controller + * + * @author keyleaf + * @date 2021-05-23 + */ +@Api(value = "学生考试信息控制器", tags = {"学生考试信息管理"}) +@RequiredArgsConstructor(onConstructor_ = @Autowired) +@RestController +@RequestMapping("/edu/score") +public class EduStudentExamController extends BaseController { + + private final IEduStudentExamService iEduStudentExamService; + + /** + * 查询学生考试信息列表 + */ + @ApiOperation("查询学生考试信息列表") + @PreAuthorize("@ss.hasPermi('edu:score:list')") + @GetMapping("/list") + public TableDataInfo list(@Validated EduStudentExamQueryBo bo) { + return iEduStudentExamService.queryPageList(bo); + } + + /** + * 导出学生考试信息列表 + */ + @ApiOperation("导出学生考试信息列表") + @PreAuthorize("@ss.hasPermi('edu:score:export')") + @Log(title = "学生考试信息", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public AjaxResult export(@Validated EduStudentExamQueryBo bo) { + List list = iEduStudentExamService.queryList(bo); + ExcelUtil util = new ExcelUtil(EduStudentExamVo.class); + return util.exportExcel(list, "学生考试信息"); + } + + /** + * 获取学生考试信息详细信息 + */ + @ApiOperation("获取学生考试信息详细信息") + @PreAuthorize("@ss.hasPermi('edu:score:query')") + @GetMapping("/{id}") + public AjaxResult getInfo(@NotNull(message = "主键不能为空") + @PathVariable("id") Long id) { + return AjaxResult.success(iEduStudentExamService.queryById(id)); + } + + /** + * 新增学生考试信息 + */ + @ApiOperation("新增学生考试信息") + @PreAuthorize("@ss.hasPermi('edu:score:add')") + @Log(title = "学生考试信息", businessType = BusinessType.INSERT) + @PostMapping() + public AjaxResult add(@Validated @RequestBody EduStudentExamAddBo bo) { + return toAjax(iEduStudentExamService.insertByAddBo(bo) ? 1 : 0); + } + + /** + * 修改学生考试信息 + */ + @ApiOperation("修改学生考试信息") + @PreAuthorize("@ss.hasPermi('edu:score:edit')") + @Log(title = "学生考试信息", businessType = BusinessType.UPDATE) + @PutMapping() + public AjaxResult edit(@Validated @RequestBody EduStudentExamEditBo bo) { + return toAjax(iEduStudentExamService.updateByEditBo(bo) ? 1 : 0); + } + + /** + * 删除学生考试信息 + */ + @ApiOperation("删除学生考试信息") + @PreAuthorize("@ss.hasPermi('edu:score:remove')") + @Log(title = "学生考试信息" , businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(iEduStudentExamService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); + } +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduExam.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduExam.java new file mode 100644 index 000000000..690e98776 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduExam.java @@ -0,0 +1,59 @@ +package com.ruoyi.edu.domain; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; +import java.io.Serializable; +import java.util.Date; +import java.math.BigDecimal; +import com.ruoyi.common.annotation.Excel; + +/** + * 考试信息对象 edu_exam + * + * @author keyleaf + * @date 2021-05-23 + */ +@Data +@NoArgsConstructor +@Accessors(chain = true) +@TableName("edu_exam") +public class EduExam implements Serializable { + +private static final long serialVersionUID=1L; + + + /** $column.columnComment */ + @TableId(value = "id") + private Long id; + + /** 考试编号 */ + private String examNo; + + /** 考试名称 */ + private String examName; + + /** 考试简称 */ + private String examShortName; + + /** 考试日期 */ + private Date examDate; + + /** 创建时间 */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + /** 创建人id */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** 修改时间 */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private Date updateTime; + + /** 修改人id */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String updateBy; + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduStudent.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduStudent.java new file mode 100644 index 000000000..3d9234f98 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduStudent.java @@ -0,0 +1,71 @@ +package com.ruoyi.edu.domain; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; +import java.io.Serializable; +import java.util.Date; +import java.math.BigDecimal; +import com.ruoyi.common.annotation.Excel; + +/** + * 学生信息对象 edu_student + * + * @author keyleaf + * @date 2021-05-22 + */ +@Data +@NoArgsConstructor +@Accessors(chain = true) +@TableName("edu_student") +public class EduStudent implements Serializable { + +private static final long serialVersionUID=1L; + + + /** $column.columnComment */ + @TableId(value = "id") + private Long id; + + /** 身份证号 */ + private String idCardNo; + + /** 学生姓名 */ + private String studentName; + + /** 年级 */ + private String currentGrade; + + /** 班级 */ + private String currentClass; + + /** 学校 */ + private String currentSchool; + + /** 手机号 */ + private String mobile; + + /** 父亲手机 */ + private String fatherMobile; + + /** 母亲手机 */ + private String motherMobile; + + /** 创建时间 */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + /** 创建人id */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** 修改时间 */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private Date updateTime; + + /** 修改人id */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String updateBy; + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduStudentExam.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduStudentExam.java new file mode 100644 index 000000000..53d21dfff --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/domain/EduStudentExam.java @@ -0,0 +1,89 @@ +package com.ruoyi.edu.domain; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; +import java.io.Serializable; +import java.util.Date; +import java.math.BigDecimal; +import com.ruoyi.common.annotation.Excel; + +/** + * 学生考试信息对象 edu_student_exam + * + * @author keyleaf + * @date 2021-05-23 + */ +@Data +@NoArgsConstructor +@Accessors(chain = true) +@TableName("edu_student_exam") +public class EduStudentExam implements Serializable { + +private static final long serialVersionUID=1L; + + + /** $column.columnComment */ + @TableId(value = "id") + private Long id; + + /** 学生id */ + private Long studentId; + + /** 考试id */ + private Long examId; + + /** 语文分数 */ + private BigDecimal chineseScore; + + /** 数学分数 */ + private BigDecimal mathScore; + + /** 英语分数 */ + private BigDecimal englishScore; + + /** 化学分数 */ + private BigDecimal chemistryScore; + + /** 物理分数 */ + private BigDecimal physicsScore; + + /** 生物分数 */ + private BigDecimal biologyScore; + + /** 政治分数 */ + private BigDecimal politicsScore; + + /** 历史分数 */ + private BigDecimal historyScore; + + /** 地理分数 */ + private BigDecimal geographyScore; + + /** 思想品德分数 */ + private BigDecimal ethicScore; + + /** 班级排名 */ + private Long classRank; + + /** 级部排名 */ + private Long gradeRank; + + /** 创建时间 */ + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + /** 创建人id */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** 修改时间 */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private Date updateTime; + + /** 修改人id */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private String updateBy; + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduExamMapper.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduExamMapper.java new file mode 100644 index 000000000..7685de70c --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduExamMapper.java @@ -0,0 +1,14 @@ +package com.ruoyi.edu.mapper; + +import com.ruoyi.edu.domain.EduExam; +import com.ruoyi.common.core.page.BaseMapperPlus; + +/** + * 考试信息Mapper接口 + * + * @author keyleaf + * @date 2021-05-23 + */ +public interface EduExamMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduStudentExamMapper.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduStudentExamMapper.java new file mode 100644 index 000000000..30b3393f6 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduStudentExamMapper.java @@ -0,0 +1,14 @@ +package com.ruoyi.edu.mapper; + +import com.ruoyi.edu.domain.EduStudentExam; +import com.ruoyi.common.core.page.BaseMapperPlus; + +/** + * 学生考试信息Mapper接口 + * + * @author keyleaf + * @date 2021-05-23 + */ +public interface EduStudentExamMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduStudentMapper.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduStudentMapper.java new file mode 100644 index 000000000..c1bd61ae7 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/mapper/EduStudentMapper.java @@ -0,0 +1,14 @@ +package com.ruoyi.edu.mapper; + +import com.ruoyi.edu.domain.EduStudent; +import com.ruoyi.common.core.page.BaseMapperPlus; + +/** + * 学生信息Mapper接口 + * + * @author keyleaf + * @date 2021-05-22 + */ +public interface EduStudentMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduExamService.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduExamService.java new file mode 100644 index 000000000..0459cd92e --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduExamService.java @@ -0,0 +1,57 @@ +package com.ruoyi.edu.service; + +import com.ruoyi.edu.domain.EduExam; +import com.ruoyi.edu.vo.EduExamVo; +import com.ruoyi.edu.bo.EduExamQueryBo; +import com.ruoyi.edu.bo.EduExamAddBo; +import com.ruoyi.edu.bo.EduExamEditBo; +import com.ruoyi.common.core.page.IServicePlus; +import com.ruoyi.common.core.page.TableDataInfo; + +import java.util.Collection; +import java.util.List; + +/** + * 考试信息Service接口 + * + * @author keyleaf + * @date 2021-05-23 + */ +public interface IEduExamService extends IServicePlus { + /** + * 查询单个 + * @return + */ + EduExamVo queryById(Long id); + + /** + * 查询列表 + */ + TableDataInfo queryPageList(EduExamQueryBo bo); + /** + * 查询列表 + */ + List queryList(EduExamQueryBo bo); + + /** + * 根据新增业务对象插入考试信息 + * @param bo 考试信息新增业务对象 + * @return + */ + Boolean insertByAddBo(EduExamAddBo bo); + + /** + * 根据编辑业务对象修改考试信息 + * @param bo 考试信息编辑业务对象 + * @return + */ + Boolean updateByEditBo(EduExamEditBo bo); + + /** + * 校验并删除数据 + * @param ids 主键集合 + * @param isValid 是否校验,true-删除前校验,false-不校验 + * @return + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduStudentExamService.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduStudentExamService.java new file mode 100644 index 000000000..4a901f775 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduStudentExamService.java @@ -0,0 +1,57 @@ +package com.ruoyi.edu.service; + +import com.ruoyi.edu.domain.EduStudentExam; +import com.ruoyi.edu.vo.EduStudentExamVo; +import com.ruoyi.edu.bo.EduStudentExamQueryBo; +import com.ruoyi.edu.bo.EduStudentExamAddBo; +import com.ruoyi.edu.bo.EduStudentExamEditBo; +import com.ruoyi.common.core.page.IServicePlus; +import com.ruoyi.common.core.page.TableDataInfo; + +import java.util.Collection; +import java.util.List; + +/** + * 学生考试信息Service接口 + * + * @author keyleaf + * @date 2021-05-23 + */ +public interface IEduStudentExamService extends IServicePlus { + /** + * 查询单个 + * @return + */ + EduStudentExamVo queryById(Long id); + + /** + * 查询列表 + */ + TableDataInfo queryPageList(EduStudentExamQueryBo bo); + /** + * 查询列表 + */ + List queryList(EduStudentExamQueryBo bo); + + /** + * 根据新增业务对象插入学生考试信息 + * @param bo 学生考试信息新增业务对象 + * @return + */ + Boolean insertByAddBo(EduStudentExamAddBo bo); + + /** + * 根据编辑业务对象修改学生考试信息 + * @param bo 学生考试信息编辑业务对象 + * @return + */ + Boolean updateByEditBo(EduStudentExamEditBo bo); + + /** + * 校验并删除数据 + * @param ids 主键集合 + * @param isValid 是否校验,true-删除前校验,false-不校验 + * @return + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduStudentService.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduStudentService.java new file mode 100644 index 000000000..df911e17d --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/IEduStudentService.java @@ -0,0 +1,57 @@ +package com.ruoyi.edu.service; + +import com.ruoyi.edu.domain.EduStudent; +import com.ruoyi.edu.vo.EduStudentVo; +import com.ruoyi.edu.bo.EduStudentQueryBo; +import com.ruoyi.edu.bo.EduStudentAddBo; +import com.ruoyi.edu.bo.EduStudentEditBo; +import com.ruoyi.common.core.page.IServicePlus; +import com.ruoyi.common.core.page.TableDataInfo; + +import java.util.Collection; +import java.util.List; + +/** + * 学生信息Service接口 + * + * @author keyleaf + * @date 2021-05-22 + */ +public interface IEduStudentService extends IServicePlus { + /** + * 查询单个 + * @return + */ + EduStudentVo queryById(Long id); + + /** + * 查询列表 + */ + TableDataInfo queryPageList(EduStudentQueryBo bo); + /** + * 查询列表 + */ + List queryList(EduStudentQueryBo bo); + + /** + * 根据新增业务对象插入学生信息 + * @param bo 学生信息新增业务对象 + * @return + */ + Boolean insertByAddBo(EduStudentAddBo bo); + + /** + * 根据编辑业务对象修改学生信息 + * @param bo 学生信息编辑业务对象 + * @return + */ + Boolean updateByEditBo(EduStudentEditBo bo); + + /** + * 校验并删除数据 + * @param ids 主键集合 + * @param isValid 是否校验,true-删除前校验,false-不校验 + * @return + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduExamServiceImpl.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduExamServiceImpl.java new file mode 100644 index 000000000..eb80cd781 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduExamServiceImpl.java @@ -0,0 +1,89 @@ +package com.ruoyi.edu.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; +import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.common.core.page.PagePlus; +import com.ruoyi.common.core.page.TableDataInfo; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.ruoyi.edu.bo.EduExamAddBo; +import com.ruoyi.edu.bo.EduExamQueryBo; +import com.ruoyi.edu.bo.EduExamEditBo; +import com.ruoyi.edu.domain.EduExam; +import com.ruoyi.edu.mapper.EduExamMapper; +import com.ruoyi.edu.vo.EduExamVo; +import com.ruoyi.edu.service.IEduExamService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 考试信息Service业务层处理 + * + * @author keyleaf + * @date 2021-05-23 + */ +@Service +public class EduExamServiceImpl extends ServiceImpl implements IEduExamService { + + @Override + public EduExamVo queryById(Long id){ + return getVoById(id, EduExamVo.class); + } + + @Override + public TableDataInfo queryPageList(EduExamQueryBo bo) { + PagePlus result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo), EduExamVo.class); + return PageUtils.buildDataInfo(result); + } + + @Override + public List queryList(EduExamQueryBo bo) { + return listVo(buildQueryWrapper(bo), EduExamVo.class); + } + + private LambdaQueryWrapper buildQueryWrapper(EduExamQueryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StrUtil.isNotBlank(bo.getExamNo()), EduExam::getExamNo, bo.getExamNo()); + lqw.like(StrUtil.isNotBlank(bo.getExamName()), EduExam::getExamName, bo.getExamName()); + lqw.like(StrUtil.isNotBlank(bo.getExamShortName()), EduExam::getExamShortName, bo.getExamShortName()); + lqw.eq(bo.getExamDate() != null, EduExam::getExamDate, bo.getExamDate()); + return lqw; + } + + @Override + public Boolean insertByAddBo(EduExamAddBo bo) { + EduExam add = BeanUtil.toBean(bo, EduExam.class); + validEntityBeforeSave(add); + return save(add); + } + + @Override + public Boolean updateByEditBo(EduExamEditBo bo) { + EduExam update = BeanUtil.toBean(bo, EduExam.class); + validEntityBeforeSave(update); + return updateById(update); + } + + /** + * 保存前的数据校验 + * + * @param entity 实体类数据 + */ + private void validEntityBeforeSave(EduExam entity){ + //TODO 做一些数据校验,如唯一约束 + } + + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return removeByIds(ids); + } +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduStudentExamServiceImpl.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduStudentExamServiceImpl.java new file mode 100644 index 000000000..d3b4496f1 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduStudentExamServiceImpl.java @@ -0,0 +1,92 @@ +package com.ruoyi.edu.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.common.core.page.PagePlus; +import com.ruoyi.common.core.page.TableDataInfo; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.ruoyi.edu.bo.EduStudentExamAddBo; +import com.ruoyi.edu.bo.EduStudentExamQueryBo; +import com.ruoyi.edu.bo.EduStudentExamEditBo; +import com.ruoyi.edu.domain.EduStudentExam; +import com.ruoyi.edu.mapper.EduStudentExamMapper; +import com.ruoyi.edu.vo.EduStudentExamVo; +import com.ruoyi.edu.service.IEduStudentExamService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 学生考试信息Service业务层处理 + * + * @author keyleaf + * @date 2021-05-23 + */ +@Service +public class EduStudentExamServiceImpl extends ServiceImpl implements IEduStudentExamService { + + @Override + public EduStudentExamVo queryById(Long id){ + return getVoById(id, EduStudentExamVo.class); + } + + @Override + public TableDataInfo queryPageList(EduStudentExamQueryBo bo) { + PagePlus result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo), EduStudentExamVo.class); + return PageUtils.buildDataInfo(result); + } + + @Override + public List queryList(EduStudentExamQueryBo bo) { + return listVo(buildQueryWrapper(bo), EduStudentExamVo.class); + } + + private Wrapper buildQueryWrapper(EduStudentExamQueryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getStudentId() != null, EduStudentExam::getStudentId, bo.getStudentId()); + lqw.eq(bo.getExamId() != null, EduStudentExam::getExamId, bo.getExamId()); + + QueryWrapper qw = new QueryWrapper<>(); +// qw.eq("b.id", 2); + return qw; + } + + @Override + public Boolean insertByAddBo(EduStudentExamAddBo bo) { + EduStudentExam add = BeanUtil.toBean(bo, EduStudentExam.class); + validEntityBeforeSave(add); + return save(add); + } + + @Override + public Boolean updateByEditBo(EduStudentExamEditBo bo) { + EduStudentExam update = BeanUtil.toBean(bo, EduStudentExam.class); + validEntityBeforeSave(update); + return updateById(update); + } + + /** + * 保存前的数据校验 + * + * @param entity 实体类数据 + */ + private void validEntityBeforeSave(EduStudentExam entity){ + //TODO 做一些数据校验,如唯一约束 + } + + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return removeByIds(ids); + } +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduStudentServiceImpl.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduStudentServiceImpl.java new file mode 100644 index 000000000..70bf267c9 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/service/impl/EduStudentServiceImpl.java @@ -0,0 +1,89 @@ +package com.ruoyi.edu.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; +import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.common.core.page.PagePlus; +import com.ruoyi.common.core.page.TableDataInfo; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.ruoyi.edu.bo.EduStudentAddBo; +import com.ruoyi.edu.bo.EduStudentQueryBo; +import com.ruoyi.edu.bo.EduStudentEditBo; +import com.ruoyi.edu.domain.EduStudent; +import com.ruoyi.edu.mapper.EduStudentMapper; +import com.ruoyi.edu.vo.EduStudentVo; +import com.ruoyi.edu.service.IEduStudentService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 学生信息Service业务层处理 + * + * @author keyleaf + * @date 2021-05-22 + */ +@Service +public class EduStudentServiceImpl extends ServiceImpl implements IEduStudentService { + + @Override + public EduStudentVo queryById(Long id){ + return getVoById(id, EduStudentVo.class); + } + + @Override + public TableDataInfo queryPageList(EduStudentQueryBo bo) { + PagePlus result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo), EduStudentVo.class); + return PageUtils.buildDataInfo(result); + } + + @Override + public List queryList(EduStudentQueryBo bo) { + return listVo(buildQueryWrapper(bo), EduStudentVo.class); + } + + private LambdaQueryWrapper buildQueryWrapper(EduStudentQueryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StrUtil.isNotBlank(bo.getIdCardNo()), EduStudent::getIdCardNo, bo.getIdCardNo()); + lqw.like(StrUtil.isNotBlank(bo.getStudentName()), EduStudent::getStudentName, bo.getStudentName()); + lqw.eq(StrUtil.isNotBlank(bo.getCurrentGrade()), EduStudent::getCurrentGrade, bo.getCurrentGrade()); + lqw.eq(StrUtil.isNotBlank(bo.getCurrentClass()), EduStudent::getCurrentClass, bo.getCurrentClass()); + return lqw; + } + + @Override + public Boolean insertByAddBo(EduStudentAddBo bo) { + EduStudent add = BeanUtil.toBean(bo, EduStudent.class); + validEntityBeforeSave(add); + return save(add); + } + + @Override + public Boolean updateByEditBo(EduStudentEditBo bo) { + EduStudent update = BeanUtil.toBean(bo, EduStudent.class); + validEntityBeforeSave(update); + return updateById(update); + } + + /** + * 保存前的数据校验 + * + * @param entity 实体类数据 + */ + private void validEntityBeforeSave(EduStudent entity){ + //TODO 做一些数据校验,如唯一约束 + } + + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return removeByIds(ids); + } +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduExamVo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduExamVo.java new file mode 100644 index 000000000..f33c8b67d --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduExamVo.java @@ -0,0 +1,47 @@ +package com.ruoyi.edu.vo; + +import com.ruoyi.common.annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.util.Date; + + + +/** + * 考试信息视图对象 mall_package + * + * @author keyleaf + * @date 2021-05-23 + */ +@Data +@ApiModel("考试信息视图对象") +public class EduExamVo { + private static final long serialVersionUID = 1L; + + /** $pkColumn.columnComment */ + @ApiModelProperty("$pkColumn.columnComment") + private Long id; + + /** 考试编号 */ + @Excel(name = "考试编号") + @ApiModelProperty("考试编号") + private String examNo; + /** 考试名称 */ + @Excel(name = "考试名称") + @ApiModelProperty("考试名称") + private String examName; + /** 考试简称 */ + @Excel(name = "考试简称") + @ApiModelProperty("考试简称") + private String examShortName; + /** 考试日期 */ + @Excel(name = "考试日期" , width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty("考试日期") + private Date examDate; + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduStudentExamVo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduStudentExamVo.java new file mode 100644 index 000000000..e692b7c9e --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduStudentExamVo.java @@ -0,0 +1,110 @@ +package com.ruoyi.edu.vo; + +import com.ruoyi.common.annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; +import java.math.BigDecimal; +import java.util.List; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.util.Date; + + + +/** + * 学生考试信息视图对象 mall_package + * + * @author keyleaf + * @date 2021-05-25 + */ +@Data +@ApiModel("学生考试信息视图对象") +public class EduStudentExamVo { + private static final long serialVersionUID = 1L; + + /** $pkColumn.columnComment */ + @ApiModelProperty("$pkColumn.columnComment") + private Long id; + + /** 语文分数 */ + @Excel(name = "语文分数") + @ApiModelProperty("语文分数") + private BigDecimal chineseScore; + /** 数学分数 */ + @Excel(name = "数学分数") + @ApiModelProperty("数学分数") + private BigDecimal mathScore; + /** 英语分数 */ + @Excel(name = "英语分数") + @ApiModelProperty("英语分数") + private BigDecimal englishScore; + /** 化学分数 */ + @Excel(name = "化学分数") + @ApiModelProperty("化学分数") + private BigDecimal chemistryScore; + /** 物理分数 */ + @Excel(name = "物理分数") + @ApiModelProperty("物理分数") + private BigDecimal physicsScore; + /** 生物分数 */ + @Excel(name = "生物分数") + @ApiModelProperty("生物分数") + private BigDecimal biologyScore; + /** 政治分数 */ + @Excel(name = "政治分数") + @ApiModelProperty("政治分数") + private BigDecimal politicsScore; + /** 历史分数 */ + @Excel(name = "历史分数") + @ApiModelProperty("历史分数") + private BigDecimal historyScore; + /** 地理分数 */ + @Excel(name = "地理分数") + @ApiModelProperty("地理分数") + private BigDecimal geographyScore; + /** 思想品德分数 */ + @Excel(name = "思想品德分数") + @ApiModelProperty("思想品德分数") + private BigDecimal ethicScore; + /** 班级排名 */ + @Excel(name = "班级排名") + @ApiModelProperty("班级排名") + private Long classRank; + /** 级部排名 */ + @Excel(name = "级部排名") + @ApiModelProperty("级部排名") + private Long gradeRank; + + // 补充主表字段 + private Long studentId; + // 关联表 eduStudent 字段 + @Excel(name = "身份证号") + private String eduStudentIdCardNo; + @Excel(name = "班级") + private String eduStudentCurrentClass; + @Excel(name = "年级") + private String eduStudentCurrentGrade; + @Excel(name = "学生姓名") + private String eduStudentStudentName; + @Excel(name = "手机号") + private String eduStudentMobile; + @Excel(name = "父亲手机") + private String eduStudentFatherMobile; + @Excel(name = "母亲手机") + private String eduStudentMotherMobile; + @Excel(name = "学校") + private String eduStudentCurrentSchool; + + // 补充主表字段 + private Long examId; + // 关联表 eduExam 字段 + @Excel(name = "考试日期" , width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date eduExamExamDate; + @Excel(name = "考试编号") + private String eduExamExamNo; + @Excel(name = "考试名称") + private String eduExamExamName; + + +} diff --git a/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduStudentVo.java b/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduStudentVo.java new file mode 100644 index 000000000..debbc8df8 --- /dev/null +++ b/ruoyi-edu/src/main/java/com/ruoyi/edu/vo/EduStudentVo.java @@ -0,0 +1,60 @@ +package com.ruoyi.edu.vo; + +import com.ruoyi.common.annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.util.Date; + + + +/** + * 学生信息视图对象 mall_package + * + * @author keyleaf + * @date 2021-05-22 + */ +@Data +@ApiModel("学生信息视图对象") +public class EduStudentVo { + private static final long serialVersionUID = 1L; + + /** $pkColumn.columnComment */ + @ApiModelProperty("$pkColumn.columnComment") + private Long id; + + /** 身份证号 */ + @Excel(name = "身份证号") + @ApiModelProperty("身份证号") + private String idCardNo; + /** 学生姓名 */ + @Excel(name = "学生姓名") + @ApiModelProperty("学生姓名") + private String studentName; + /** 年级 */ + @Excel(name = "年级") + @ApiModelProperty("年级") + private String currentGrade; + /** 班级 */ + @Excel(name = "班级") + @ApiModelProperty("班级") + private String currentClass; + /** 学校 */ + @Excel(name = "学校") + @ApiModelProperty("学校") + private String currentSchool; + /** 手机号 */ + @Excel(name = "手机号") + @ApiModelProperty("手机号") + private String mobile; + /** 父亲手机 */ + @Excel(name = "父亲手机") + @ApiModelProperty("父亲手机") + private String fatherMobile; + /** 母亲手机 */ + @Excel(name = "母亲手机") + @ApiModelProperty("母亲手机") + private String motherMobile; + +} diff --git a/ruoyi-edu/src/main/resources/mapper/edu/EduExamMapper.xml b/ruoyi-edu/src/main/resources/mapper/edu/EduExamMapper.xml new file mode 100644 index 000000000..33d20f8a1 --- /dev/null +++ b/ruoyi-edu/src/main/resources/mapper/edu/EduExamMapper.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + diff --git a/ruoyi-edu/src/main/resources/mapper/edu/EduStudentExamMapper.xml b/ruoyi-edu/src/main/resources/mapper/edu/EduStudentExamMapper.xml new file mode 100644 index 000000000..e63238f1c --- /dev/null +++ b/ruoyi-edu/src/main/resources/mapper/edu/EduStudentExamMapper.xml @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select + + edu_student_exam.id as id, + edu_student_exam.student_id as student_id, + edu_student_exam.exam_id as exam_id, + edu_student_exam.chinese_score as chinese_score, + edu_student_exam.math_score as math_score, + edu_student_exam.english_score as english_score, + edu_student_exam.chemistry_score as chemistry_score, + edu_student_exam.physics_score as physics_score, + edu_student_exam.biology_score as biology_score, + edu_student_exam.politics_score as politics_score, + edu_student_exam.history_score as history_score, + edu_student_exam.geography_score as geography_score, + edu_student_exam.ethic_score as ethic_score, + edu_student_exam.class_rank as class_rank, + edu_student_exam.grade_rank as grade_rank, + edu_student_exam.create_time as create_time, + edu_student_exam.create_by as create_by, + edu_student_exam.update_time as update_time, + edu_student_exam.update_by as update_by, + + + edu_student.id_card_no as edu_student_id_card_no, + edu_student.current_class as edu_student_current_class, + edu_student.current_grade as edu_student_current_grade, + edu_student.student_name as edu_student_student_name, + edu_student.mobile as edu_student_mobile, + edu_student.father_mobile as edu_student_father_mobile, + edu_student.mother_mobile as edu_student_mother_mobile, + edu_student.current_school as edu_student_current_school, + + edu_exam.exam_date as edu_exam_exam_date, + edu_exam.exam_no as edu_exam_exam_no, + edu_exam.exam_name as edu_exam_exam_name + + from edu_student_exam + left join edu_student on edu_student_exam.student_id = edu_student.id + left join edu_exam on edu_student_exam.exam_id = edu_exam.id + + + + + + + + + + + diff --git a/ruoyi-edu/src/main/resources/mapper/edu/EduStudentMapper.xml b/ruoyi-edu/src/main/resources/mapper/edu/EduStudentMapper.xml new file mode 100644 index 000000000..647442756 --- /dev/null +++ b/ruoyi-edu/src/main/resources/mapper/edu/EduStudentMapper.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/ruoyi-edu/src/main/resources/sql/edu.sql b/ruoyi-edu/src/main/resources/sql/edu.sql new file mode 100644 index 000000000..2eb4ddb66 --- /dev/null +++ b/ruoyi-edu/src/main/resources/sql/edu.sql @@ -0,0 +1,63 @@ +create table edu_exam +( + id int auto_increment + primary key, + exam_no varchar(64) null comment '考试编号', + exam_name varchar(64) null comment '考试名称', + exam_short_name varchar(64) null comment '考试简称', + exam_date datetime null comment '考试日期', + create_time datetime null comment '创建时间', + create_by varchar(64) null comment '创建人id', + update_time datetime null comment '修改时间', + update_by varchar(64) null comment '修改人id', + constraint edu_exam_exam_no_uindex + unique (exam_no) +) + comment '考试信息' charset=utf8; + +create table ruoyi.edu_student +( + id int auto_increment + primary key, + id_card_no varchar(64) null comment '身份证号', + student_name varchar(64) null comment '学生姓名', + current_grade varchar(64) null comment '学生当前所在年级', + current_class varchar(64) null comment '学生当前所在班级', + current_school varchar(64) null comment '学生当前所在学校', + mobile varchar(64) null comment '手机号', + father_mobile varchar(64) null comment '父亲手机', + mother_mobile varchar(64) null comment '母亲手机', + create_time datetime null comment '创建时间', + create_by varchar(64) null comment '创建人id', + update_time datetime null comment '修改时间', + update_by varchar(64) null comment '修改人id', + constraint edu_student_id_card_no_uindex + unique (id_card_no) +) + comment '学生信息表' charset=utf8; + +create table ruoyi.edu_student_exam +( + id int auto_increment + primary key, + student_id int null comment '学生id', + exam_id int null comment '考试id', + chinese_score decimal(10,2) null comment '语文分数', + math_score decimal(10,2) null comment '数学分数', + english_score decimal(10,2) null comment '英语分数', + chemistry_score decimal(10,2) null comment '化学分数', + physics_score decimal(10,2) null comment '物理分数', + biology_score decimal(10,2) null comment '生物分数', + politics_score decimal(10,2) null comment '政治分数', + history_score decimal(10,2) null comment '历史分数', + geography_score decimal(10,2) null comment '地理分数', + ethic_score decimal(10,2) null comment '思想品德分数', + class_rank int null comment '班级排名', + grade_rank int null comment '级部排名', + create_time datetime null comment '创建时间', + create_by varchar(64) null comment '创建人id', + update_time datetime null comment '修改时间', + update_by varchar(64) null comment '修改人id' +) + comment '学生考试信息' charset=utf8; + diff --git a/ruoyi-ui/src/api/edu/exam.js b/ruoyi-ui/src/api/edu/exam.js new file mode 100644 index 000000000..638765e8d --- /dev/null +++ b/ruoyi-ui/src/api/edu/exam.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询考试信息列表 +export function listExam(query) { + return request({ + url: '/edu/exam/list', + method: 'get', + params: query + }) +} + +// 查询考试信息详细 +export function getExam(id) { + return request({ + url: '/edu/exam/' + id, + method: 'get' + }) +} + +// 新增考试信息 +export function addExam(data) { + return request({ + url: '/edu/exam', + method: 'post', + data: data + }) +} + +// 修改考试信息 +export function updateExam(data) { + return request({ + url: '/edu/exam', + method: 'put', + data: data + }) +} + +// 删除考试信息 +export function delExam(id) { + return request({ + url: '/edu/exam/' + id, + method: 'delete' + }) +} + +// 导出考试信息 +export function exportExam(query) { + return request({ + url: '/edu/exam/export', + method: 'get', + params: query + }) +} \ No newline at end of file diff --git a/ruoyi-ui/src/api/edu/score.js b/ruoyi-ui/src/api/edu/score.js new file mode 100644 index 000000000..57d15379b --- /dev/null +++ b/ruoyi-ui/src/api/edu/score.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询学生考试信息列表 +export function listScore(query) { + return request({ + url: '/edu/score/list', + method: 'get', + params: query + }) +} + +// 查询学生考试信息详细 +export function getScore(id) { + return request({ + url: '/edu/score/' + id, + method: 'get' + }) +} + +// 新增学生考试信息 +export function addScore(data) { + return request({ + url: '/edu/score', + method: 'post', + data: data + }) +} + +// 修改学生考试信息 +export function updateScore(data) { + return request({ + url: '/edu/score', + method: 'put', + data: data + }) +} + +// 删除学生考试信息 +export function delScore(id) { + return request({ + url: '/edu/score/' + id, + method: 'delete' + }) +} + +// 导出学生考试信息 +export function exportScore(query) { + return request({ + url: '/edu/score/export', + method: 'get', + params: query + }) +} \ No newline at end of file diff --git a/ruoyi-ui/src/api/edu/student.js b/ruoyi-ui/src/api/edu/student.js new file mode 100644 index 000000000..77969f20d --- /dev/null +++ b/ruoyi-ui/src/api/edu/student.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询学生信息列表 +export function listStudent(query) { + return request({ + url: '/edu/student/list', + method: 'get', + params: query + }) +} + +// 查询学生信息详细 +export function getStudent(id) { + return request({ + url: '/edu/student/' + id, + method: 'get' + }) +} + +// 新增学生信息 +export function addStudent(data) { + return request({ + url: '/edu/student', + method: 'post', + data: data + }) +} + +// 修改学生信息 +export function updateStudent(data) { + return request({ + url: '/edu/student', + method: 'put', + data: data + }) +} + +// 删除学生信息 +export function delStudent(id) { + return request({ + url: '/edu/student/' + id, + method: 'delete' + }) +} + +// 导出学生信息 +export function exportStudent(query) { + return request({ + url: '/edu/student/export', + method: 'get', + params: query + }) +} \ No newline at end of file diff --git a/ruoyi-ui/src/views/edu/score/index.vue b/ruoyi-ui/src/views/edu/score/index.vue new file mode 100644 index 000000000..5e9e61f42 --- /dev/null +++ b/ruoyi-ui/src/views/edu/score/index.vue @@ -0,0 +1,442 @@ + + + diff --git a/ruoyi-ui/src/views/edu/student/index.vue b/ruoyi-ui/src/views/edu/student/index.vue new file mode 100644 index 000000000..77367482a --- /dev/null +++ b/ruoyi-ui/src/views/edu/student/index.vue @@ -0,0 +1,425 @@ + + +