From 7fd0771bbebafa36bc007ceb581cdaab4d290c82 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期四, 06 六月 2024 09:18:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/com/ycl/jxkg/service/ClassesNotifyService.java                     |   65 +++++
 src/main/java/com/ycl/jxkg/controller/admin/ClassesNotifyController.java         |   83 ++++++
 src/main/resources/mapper/QuestionMapper.xml                                     |   28 -
 src/main/java/com/ycl/jxkg/domain/vo/student/education/SubjectEditRequestVO.java |    5 
 src/main/java/com/ycl/jxkg/domain/entity/ClassesNotify.java                      |   34 ++
 src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectEditRequestVO.java   |    6 
 src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java          |    6 
 src/main/java/com/ycl/jxkg/domain/entity/Subject.java                            |   23 -
 src/main/java/com/ycl/jxkg/domain/entity/Question.java                           |   17 -
 src/main/java/com/ycl/jxkg/service/impl/QuestionServiceImpl.java                 |   48 +--
 src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditRequestVO.java   |    3 
 src/main/java/com/ycl/jxkg/domain/form/ClassesNotifyForm.java                    |   50 +++
 src/main/java/com/ycl/jxkg/domain/query/ClassesNotifyQuery.java                  |   22 +
 src/main/java/com/ycl/jxkg/service/SubjectService.java                           |    2 
 src/main/java/com/ycl/jxkg/service/impl/ClassesNotifyServiceImpl.java            |  119 +++++++++
 src/main/resources/mapper/SubjectMapper.xml                                      |   18 
 src/main/java/com/ycl/jxkg/service/QuestionService.java                          |    7 
 src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectPageRequestVO.java   |    4 
 src/main/java/com/ycl/jxkg/domain/vo/ClassesNotifyVO.java                        |   42 +++
 src/main/java/com/ycl/jxkg/domain/enums/general/StatusEnum.java                  |   27 ++
 src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectResponseVO.java      |    8 
 src/main/resources/mapper/ClassesNotifyMapper.xml                                |   46 +++
 src/main/java/com/ycl/jxkg/mapper/ClassesNotifyMapper.java                       |   34 ++
 /dev/null                                                                        |   26 --
 src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionResponseVO.java      |    5 
 src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionPageRequestVO.java   |    8 
 src/main/java/com/ycl/jxkg/domain/question/QuestionItemObject.java               |    2 
 src/main/java/com/ycl/jxkg/controller/admin/ClassesController.java               |    2 
 src/main/java/com/ycl/jxkg/controller/admin/QuestionController.java              |   28 -
 src/main/java/com/ycl/jxkg/service/impl/SubjectServiceImpl.java                  |    7 
 src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditItemVO.java      |    2 
 31 files changed, 617 insertions(+), 160 deletions(-)

diff --git a/src/main/java/com/ycl/jxkg/controller/admin/ClassesController.java b/src/main/java/com/ycl/jxkg/controller/admin/ClassesController.java
index 6af2f91..0f1a651 100644
--- a/src/main/java/com/ycl/jxkg/controller/admin/ClassesController.java
+++ b/src/main/java/com/ycl/jxkg/controller/admin/ClassesController.java
@@ -65,7 +65,7 @@
         return classesService.page(query);
     }
 
-    @GetMapping("/dissolution/{id}")
+    @PutMapping("/dissolution/{id}")
     @ApiOperation(value = "瑙f暎", notes = "瑙f暎")
     @PreAuthorize("hasAuthority('classes:dissolution')")
     public Result dissolution(@PathVariable("id") Integer id) {
diff --git a/src/main/java/com/ycl/jxkg/controller/admin/ClassesNotifyController.java b/src/main/java/com/ycl/jxkg/controller/admin/ClassesNotifyController.java
new file mode 100644
index 0000000..3a903ac
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/controller/admin/ClassesNotifyController.java
@@ -0,0 +1,83 @@
+package com.ycl.jxkg.controller.admin;
+
+import com.ycl.jxkg.group.Update;
+import com.ycl.jxkg.group.Add;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.security.access.prepost.PreAuthorize;
+import lombok.RequiredArgsConstructor;
+import java.util.List;
+import org.springframework.validation.annotation.Validated;
+import javax.validation.constraints.NotEmpty;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.ycl.jxkg.service.ClassesNotifyService;
+import com.ycl.jxkg.base.Result;
+import com.ycl.jxkg.domain.form.ClassesNotifyForm;
+import com.ycl.jxkg.domain.query.ClassesNotifyQuery;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 鐝骇閫氱煡 鍓嶇鎺у埗鍣�
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+@Validated
+@RequiredArgsConstructor
+@Api(value = "鐝骇閫氱煡", tags = "鐝骇閫氱煡绠$悊")
+@RestController
+@RequestMapping("/api/classes-notify")
+public class ClassesNotifyController {
+
+    private final ClassesNotifyService classesNotifyService;
+
+    @PostMapping
+    @ApiOperation(value = "娣诲姞", notes = "娣诲姞")
+    @PreAuthorize("hasAuthority('classesNotify:add')")
+    public Result add(@RequestBody @Validated(Add.class) ClassesNotifyForm form) {
+        return classesNotifyService.add(form);
+    }
+
+    @PutMapping
+    @ApiOperation(value = "淇敼", notes = "淇敼")
+    @PreAuthorize("hasAuthority('classesNotify:edit')")
+    public Result update(@RequestBody @Validated(Update.class) ClassesNotifyForm form) {
+        return classesNotifyService.update(form);
+    }
+
+    @DeleteMapping("/{id}")
+    @ApiOperation(value = "ID鍒犻櫎", notes = "ID鍒犻櫎")
+    @PreAuthorize("hasAuthority('classesNotify:del')")
+    public Result removeById(@PathVariable("id") String id) {
+        return classesNotifyService.removeById(id);
+    }
+
+    @DeleteMapping("/batch")
+    @ApiOperation(value = "鎵归噺鍒犻櫎", notes = "鎵归噺鍒犻櫎")
+    @PreAuthorize("hasAuthority('classesNotify:del:batch')")
+    public Result remove(@RequestBody @NotEmpty(message = "璇烽�夋嫨鏁版嵁") List<String> ids) {
+        return classesNotifyService.remove(ids);
+    }
+
+    @GetMapping("/page")
+    @ApiOperation(value = "鍒嗛〉", notes = "鍒嗛〉")
+    @PreAuthorize("hasAuthority('classesNotify:page')")
+    public Result page(ClassesNotifyQuery query) {
+        return classesNotifyService.page(query);
+    }
+
+    @GetMapping("/{id}")
+    @ApiOperation(value = "璇︽儏", notes = "璇︽儏")
+    @PreAuthorize("hasAuthority('classesNotify:detail')")
+    public Result detail(@PathVariable("id") Integer id) {
+        return classesNotifyService.detail(id);
+    }
+
+    @GetMapping("/list")
+    @PreAuthorize("hasAuthority('classesNotify:list')")
+    @ApiOperation(value = "鍒楄〃", notes = "鍒楄〃")
+    public Result list() {
+        return classesNotifyService.all();
+    }
+}
diff --git a/src/main/java/com/ycl/jxkg/controller/admin/QuestionController.java b/src/main/java/com/ycl/jxkg/controller/admin/QuestionController.java
index 49fbcde..7285a76 100644
--- a/src/main/java/com/ycl/jxkg/controller/admin/QuestionController.java
+++ b/src/main/java/com/ycl/jxkg/controller/admin/QuestionController.java
@@ -4,15 +4,16 @@
 import com.ycl.jxkg.base.BaseApiController;
 import com.ycl.jxkg.base.Result;
 import com.ycl.jxkg.base.SystemCode;
-import com.ycl.jxkg.domain.entity.Question;
 import com.ycl.jxkg.domain.enums.QuestionTypeEnum;
 import com.ycl.jxkg.domain.question.QuestionObject;
 import com.ycl.jxkg.domain.vo.admin.question.QuestionEditRequestVO;
 import com.ycl.jxkg.domain.vo.admin.question.QuestionPageRequestVO;
 import com.ycl.jxkg.domain.vo.admin.question.QuestionResponseVO;
 import com.ycl.jxkg.service.QuestionService;
-import com.ycl.jxkg.service.TextContentService;
-import com.ycl.jxkg.utils.*;
+import com.ycl.jxkg.utils.ErrorUtil;
+import com.ycl.jxkg.utils.HtmlUtil;
+import com.ycl.jxkg.utils.JsonUtil;
+import com.ycl.jxkg.utils.PageInfoHelper;
 import lombok.RequiredArgsConstructor;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -26,7 +27,6 @@
 public class QuestionController extends BaseApiController {
 
     private final QuestionService questionService;
-    private final TextContentService textContentService;
 
     @RequestMapping(value = "/page", method = RequestMethod.POST)
     public Result<PageInfo<QuestionResponseVO>> pageList(@RequestBody QuestionPageRequestVO model) {
@@ -34,7 +34,6 @@
         PageInfo<QuestionResponseVO> page = PageInfoHelper.copyMap(pageInfo, q -> {
             QuestionResponseVO vo = new QuestionResponseVO();
             BeanUtils.copyProperties(q, vo);
-            vo.setScore(ExamUtil.scoreToVM(Integer.valueOf(q.getScore())));
             QuestionObject questionObject = JsonUtil.toJsonObject(q.getContent(), QuestionObject.class);
             String clearHtml = HtmlUtil.clear(questionObject.getTitleContent());
             vo.setShortTitle(clearHtml);
@@ -68,8 +67,7 @@
 
     @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
     public Result delete(@PathVariable Integer id) {
-        Question question = questionService.getById(id);
-        questionService.updateById(question);
+        questionService.removeById(id);
         return Result.ok();
     }
 
@@ -82,15 +80,13 @@
                 return new Result<>(SystemCode.ParameterValidError.getCode(), errorMsg);
             }
         }
-
-        if (qType == QuestionTypeEnum.GapFilling.getCode()) {
-            Integer fillSumScore = model.getItems().stream().mapToInt(d -> ExamUtil.scoreFromVM(d.getScore())).sum();
-            Integer questionScore = ExamUtil.scoreFromVM(model.getScore());
-            if (!fillSumScore.equals(questionScore)) {
-                String errorMsg = ErrorUtil.parameterErrorFormat("score", "绌哄垎鏁板拰涓庨鐩�诲垎涓嶇浉绛�");
-                return new Result<>(SystemCode.ParameterValidError.getCode(), errorMsg);
-            }
-        }
         return Result.ok();
     }
+
+    @PostMapping(value = "/status")
+    public Result<String> status(@RequestBody QuestionResponseVO question) {
+        questionService.updateStatus(question);
+        return Result.ok("鎿嶄綔鎴愬姛");
+    }
+
 }
diff --git a/src/main/java/com/ycl/jxkg/domain/entity/ClassesNotify.java b/src/main/java/com/ycl/jxkg/domain/entity/ClassesNotify.java
new file mode 100644
index 0000000..6fe48ed
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/domain/entity/ClassesNotify.java
@@ -0,0 +1,34 @@
+package com.ycl.jxkg.domain.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import com.ycl.jxkg.domain.base.AbsEntity;
+import lombok.Data;
+
+/**
+ * 鐝骇閫氱煡
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+@Data
+@TableName("t_classes_notify")
+public class ClassesNotify extends AbsEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableField("classes_id")
+    /** 鐝骇 */
+    private Integer classesId;
+
+    @TableField("teacher_id")
+    /** 鍙戝嚭閫氱煡鑰� */
+    private Integer teacherId;
+
+    @TableField("notify_content")
+    /** 閫氱煡鍐呭 */
+    private String notifyContent;
+
+
+}
diff --git a/src/main/java/com/ycl/jxkg/domain/entity/Question.java b/src/main/java/com/ycl/jxkg/domain/entity/Question.java
index d32d719..f02b8a6 100644
--- a/src/main/java/com/ycl/jxkg/domain/entity/Question.java
+++ b/src/main/java/com/ycl/jxkg/domain/entity/Question.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.ycl.jxkg.domain.base.AbsEntity;
 import com.ycl.jxkg.domain.enums.QuestionTypeEnum;
+import com.ycl.jxkg.domain.enums.general.StatusEnum;
 import com.ycl.jxkg.utils.ExamUtil;
 import lombok.Data;
 
@@ -28,18 +29,6 @@
      */
     @TableField("subject_id")
     private Integer subjectId;
-
-    /**
-     * 棰樼洰鎬诲垎(鍗冨垎鍒�)
-     */
-    @TableField("score")
-    private Integer score;
-
-    /**
-     * 绾у埆
-     */
-    @TableField("grade_level")
-    private Integer gradeLevel;
 
     /**
      * 棰樼洰闅惧害
@@ -66,10 +55,10 @@
     private Integer createUser;
 
     /**
-     * 1.姝e父
+     * 1.鍚敤銆�2.绂佺敤
      */
     @TableField("status")
-    private Integer status;
+    private StatusEnum status;
 
     /**
      * 鍒涘缓鏃堕棿
diff --git a/src/main/java/com/ycl/jxkg/domain/entity/Subject.java b/src/main/java/com/ycl/jxkg/domain/entity/Subject.java
index a76e8b0..e305bcd 100644
--- a/src/main/java/com/ycl/jxkg/domain/entity/Subject.java
+++ b/src/main/java/com/ycl/jxkg/domain/entity/Subject.java
@@ -1,11 +1,12 @@
 package com.ycl.jxkg.domain.entity;
 
+import com.baomidou.mybatisplus.annotation.FieldFill;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.ycl.jxkg.domain.base.AbsEntity;
 import lombok.Data;
 
-import java.io.Serializable;
+import java.util.Date;
 
 @Data
 @TableName("t_subject")
@@ -18,22 +19,18 @@
     private String name;
 
     /**
-     * 骞寸骇 (1-12) 灏忓 鍒濅腑
-     */
-    @TableField("level")
-    private Integer level;
-
-    /**
-     * 涓�骞寸骇銆佷簩骞寸骇绛�
-     */
-    @TableField("level_name")
-    private String levelName;
-
-    /**
      * 鎺掑簭
      */
     @TableField("item_order")
     private Integer itemOrder;
 
+    @TableField("create_user")
+    private Integer createUser;
+
+    @TableField(value = "create_time", fill = FieldFill.INSERT)
+    private Date createTime;
+
+    @TableField(value = "status")
+    private Integer status;
 
 }
diff --git a/src/main/java/com/ycl/jxkg/domain/enums/QuestionStatusEnum.java b/src/main/java/com/ycl/jxkg/domain/enums/QuestionStatusEnum.java
deleted file mode 100644
index 1ee7f25..0000000
--- a/src/main/java/com/ycl/jxkg/domain/enums/QuestionStatusEnum.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.ycl.jxkg.domain.enums;
-
-public enum QuestionStatusEnum {
-
-    OK(1, "姝e父"),
-    Publish(2, "鍙戝竷");
-
-    private final Integer code;
-    private final String name;
-
-    QuestionStatusEnum(Integer code, String name) {
-        this.code = code;
-        this.name = name;
-    }
-
-
-    public Integer getCode() {
-        return code;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-
-}
diff --git a/src/main/java/com/ycl/jxkg/domain/enums/general/StatusEnum.java b/src/main/java/com/ycl/jxkg/domain/enums/general/StatusEnum.java
new file mode 100644
index 0000000..3f9162d
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/domain/enums/general/StatusEnum.java
@@ -0,0 +1,27 @@
+package com.ycl.jxkg.domain.enums.general;
+
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.fasterxml.jackson.annotation.JsonValue;
+import lombok.Getter;
+
+/**
+ * @author gonghl
+ * @since 2024/6/5 涓婂崍 10:54
+ */
+@Getter
+public enum StatusEnum {
+
+    ENABLE("1", "鍚敤"),
+    DISABLE("2", "绂佺敤"),
+    ;
+
+    @EnumValue
+    final String value;
+    @JsonValue
+    final String desc;
+
+    StatusEnum(String value, String desc) {
+        this.value = value;
+        this.desc = desc;
+    }
+}
diff --git a/src/main/java/com/ycl/jxkg/domain/form/ClassesNotifyForm.java b/src/main/java/com/ycl/jxkg/domain/form/ClassesNotifyForm.java
new file mode 100644
index 0000000..b660d7b
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/domain/form/ClassesNotifyForm.java
@@ -0,0 +1,50 @@
+package com.ycl.jxkg.domain.form;
+
+import com.ycl.jxkg.group.Update;
+import com.ycl.jxkg.group.Add;
+import com.ycl.jxkg.domain.base.AbsForm;
+import com.ycl.jxkg.domain.entity.ClassesNotify;
+import org.springframework.beans.BeanUtils;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import org.springframework.lang.NonNull;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+/**
+ * 鐝骇閫氱煡琛ㄥ崟
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+@Data
+@ApiModel(value = "ClassesNotify琛ㄥ崟", description = "鐝骇閫氱煡琛ㄥ崟")
+public class ClassesNotifyForm extends AbsForm {
+
+    @NotNull(message = "鐝骇涓嶈兘涓虹┖", groups = {Add.class, Update.class})
+    @ApiModelProperty("鐝骇")
+    private Integer classesId;
+
+    @NotNull(message = "鍙戝嚭閫氱煡鑰呬笉鑳戒负绌�", groups = {Add.class, Update.class})
+    @ApiModelProperty("鍙戝嚭閫氱煡鑰�")
+    private Integer teacherId;
+
+    @NotBlank(message = "閫氱煡鍐呭涓嶈兘涓虹┖", groups = {Add.class, Update.class})
+    @ApiModelProperty("閫氱煡鍐呭")
+    private String notifyContent;
+
+    @NotNull(message = "涓嶈兘涓虹┖", groups = {Add.class, Update.class})
+    @ApiModelProperty("")
+    private Date createTime;
+
+    public static ClassesNotify getEntityByForm(@NonNull ClassesNotifyForm form, ClassesNotify entity) {
+        if(entity == null) {
+          entity = new ClassesNotify();
+        }
+        BeanUtils.copyProperties(form, entity);
+        return entity;
+    }
+
+}
diff --git a/src/main/java/com/ycl/jxkg/domain/query/ClassesNotifyQuery.java b/src/main/java/com/ycl/jxkg/domain/query/ClassesNotifyQuery.java
new file mode 100644
index 0000000..1fb6795
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/domain/query/ClassesNotifyQuery.java
@@ -0,0 +1,22 @@
+package com.ycl.jxkg.domain.query;
+
+import com.ycl.jxkg.domain.base.AbsQuery;
+import java.util.List;
+import org.springframework.lang.NonNull;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 鐝骇閫氱煡鏌ヨ
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+@Data
+@ApiModel(value = "ClassesNotify鏌ヨ", description = "鐝骇閫氱煡鏌ヨ")
+public class ClassesNotifyQuery extends AbsQuery {
+}
+
diff --git a/src/main/java/com/ycl/jxkg/domain/question/QuestionItemObject.java b/src/main/java/com/ycl/jxkg/domain/question/QuestionItemObject.java
index 6e99f98..8ad44c7 100644
--- a/src/main/java/com/ycl/jxkg/domain/question/QuestionItemObject.java
+++ b/src/main/java/com/ycl/jxkg/domain/question/QuestionItemObject.java
@@ -9,8 +9,6 @@
 
     private String content;
 
-    private Integer score;
-
     private String itemUuid;
 
 }
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/ClassesNotifyVO.java b/src/main/java/com/ycl/jxkg/domain/vo/ClassesNotifyVO.java
new file mode 100644
index 0000000..84ad885
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/domain/vo/ClassesNotifyVO.java
@@ -0,0 +1,42 @@
+package com.ycl.jxkg.domain.vo;
+
+import com.ycl.jxkg.domain.base.AbsVo;
+import com.ycl.jxkg.domain.entity.ClassesNotify;
+import java.util.List;
+import org.springframework.lang.NonNull;
+import org.springframework.beans.BeanUtils;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+/**
+ * 鐝骇閫氱煡灞曠ず
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+@Data
+public class ClassesNotifyVO extends AbsVo {
+
+    /** 鐝骇 */
+    private Integer classesId;
+
+    /** 鍙戝嚭閫氱煡鑰� */
+    private Integer teacherId;
+
+    /** 閫氱煡鍐呭 */
+    private String notifyContent;
+
+    /**  */
+    private Date createTime;
+
+    public static ClassesNotifyVO getVoByEntity(@NonNull ClassesNotify entity, ClassesNotifyVO vo) {
+        if(vo == null) {
+            vo = new ClassesNotifyVO();
+        }
+        BeanUtils.copyProperties(entity, vo);
+        return vo;
+    }
+
+}
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectEditRequestVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectEditRequestVO.java
index 3085cc1..ef413bd 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectEditRequestVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectEditRequestVO.java
@@ -2,7 +2,6 @@
 
 import lombok.Data;
 
-
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
 
@@ -15,9 +14,6 @@
     private String name;
 
     @NotNull
-    private Integer level;
-
-    @NotBlank
-    private String levelName;
+    private Integer itemOrder;
 
 }
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectPageRequestVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectPageRequestVO.java
index 1c6ce24..cff8ffd 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectPageRequestVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectPageRequestVO.java
@@ -7,8 +7,8 @@
 @Data
 public class SubjectPageRequestVO extends BasePage {
 
-    private Integer id;
+    private Integer name;
 
-    private Integer level;
+    private Integer status;
 
 }
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectResponseVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectResponseVO.java
index 6d9d067..2594ca7 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectResponseVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/education/SubjectResponseVO.java
@@ -1,5 +1,6 @@
 package com.ycl.jxkg.domain.vo.admin.education;
 
+import com.ycl.jxkg.domain.enums.general.StatusEnum;
 import lombok.Data;
 
 
@@ -10,8 +11,11 @@
 
     private String name;
 
-    private Integer level;
+    private Integer itemOrder;
 
-    private String levelName;
+    private StatusEnum status;
+
+    private String createTime;
+
 
 }
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditItemVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditItemVO.java
index 52140e4..34a94d9 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditItemVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditItemVO.java
@@ -14,8 +14,6 @@
     @NotBlank
     private String content;
 
-    private String score;
-
     private String itemUuid;
 
 
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditRequestVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditRequestVO.java
index 6e927df..01de229 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditRequestVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionEditRequestVO.java
@@ -34,9 +34,6 @@
 
     private String correct;
 
-    @NotBlank
-    private String score;
-
     @Range(min = 1, max = 5, message = "璇烽�夋嫨棰樼洰闅惧害")
     private Integer difficult;
 
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionPageRequestVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionPageRequestVO.java
index 12e65a0..7a3eefe 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionPageRequestVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionPageRequestVO.java
@@ -3,17 +3,19 @@
 import com.ycl.jxkg.base.BasePage;
 import lombok.Data;
 
+import java.util.List;
+
 
 @Data
 public class QuestionPageRequestVO extends BasePage {
 
     private Integer id;
 
-    private Integer level;
+    private Integer status;
 
-    private Integer subjectId;
+    private List<Integer> subjectId;
 
-    private Integer questionType;
+    private List<Integer> questionType;
 
     private String content;
 
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionResponseVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionResponseVO.java
index 85fad0e..f0c721c 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionResponseVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/question/QuestionResponseVO.java
@@ -1,5 +1,6 @@
 package com.ycl.jxkg.domain.vo.admin.question;
 
+import com.ycl.jxkg.domain.enums.general.StatusEnum;
 import lombok.Data;
 
 
@@ -24,9 +25,7 @@
 
     private String createUserName;
 
-    private String score;
-
-    private Integer status;
+    private StatusEnum status;
 
     private String correct;
 
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/student/education/SubjectEditRequestVO.java b/src/main/java/com/ycl/jxkg/domain/vo/student/education/SubjectEditRequestVO.java
index 0892dda..74e2596 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/student/education/SubjectEditRequestVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/student/education/SubjectEditRequestVO.java
@@ -14,9 +14,6 @@
     private String name;
 
     @NotNull
-    private Integer level;
-
-    @NotBlank
-    private String levelName;
+    private Integer itemOrder;
 
 }
diff --git a/src/main/java/com/ycl/jxkg/mapper/ClassesNotifyMapper.java b/src/main/java/com/ycl/jxkg/mapper/ClassesNotifyMapper.java
new file mode 100644
index 0000000..a6d55a0
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/mapper/ClassesNotifyMapper.java
@@ -0,0 +1,34 @@
+package com.ycl.jxkg.mapper;
+
+import com.ycl.jxkg.domain.entity.ClassesNotify;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ycl.jxkg.domain.query.ClassesNotifyQuery;
+import com.ycl.jxkg.domain.vo.ClassesNotifyVO;
+import com.ycl.jxkg.domain.form.ClassesNotifyForm;
+import java.util.List;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 鐝骇閫氱煡 Mapper 鎺ュ彛
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+@Mapper
+public interface ClassesNotifyMapper extends BaseMapper<ClassesNotify> {
+
+    /**
+     * id鏌ユ壘鐝骇閫氱煡
+     * @param id
+     * @return
+     */
+    ClassesNotifyVO getById(Integer id);
+
+    /**
+    *  鍒嗛〉
+    */
+    IPage getPage(IPage page, @Param("query") ClassesNotifyQuery query);
+
+}
diff --git a/src/main/java/com/ycl/jxkg/service/ClassesNotifyService.java b/src/main/java/com/ycl/jxkg/service/ClassesNotifyService.java
new file mode 100644
index 0000000..ce849c1
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/service/ClassesNotifyService.java
@@ -0,0 +1,65 @@
+package com.ycl.jxkg.service;
+
+import com.ycl.jxkg.domain.entity.ClassesNotify;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ycl.jxkg.base.Result;
+import com.ycl.jxkg.domain.form.ClassesNotifyForm;
+import com.ycl.jxkg.domain.query.ClassesNotifyQuery;
+import java.util.List;
+
+/**
+ * 鐝骇閫氱煡 鏈嶅姟绫�
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+public interface ClassesNotifyService extends IService<ClassesNotify> {
+
+    /**
+     * 娣诲姞
+     * @param form
+     * @return
+     */
+    Result add(ClassesNotifyForm form);
+
+    /**
+     * 淇敼
+     * @param form
+     * @return
+     */
+    Result update(ClassesNotifyForm form);
+
+    /**
+     * 鎵归噺鍒犻櫎
+     * @param ids
+     * @return
+     */
+    Result remove(List<String> ids);
+
+    /**
+     * id鍒犻櫎
+     * @param id
+     * @return
+     */
+    Result removeById(String id);
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param query
+     * @return
+     */
+    Result page(ClassesNotifyQuery query);
+
+    /**
+     * 鏍规嵁id鏌ユ壘
+     * @param id
+     * @return
+     */
+    Result detail(Integer id);
+
+    /**
+     * 鍒楄〃
+     * @return
+     */
+    Result all();
+}
diff --git a/src/main/java/com/ycl/jxkg/service/QuestionService.java b/src/main/java/com/ycl/jxkg/service/QuestionService.java
index b3ae3e9..4dfcee0 100644
--- a/src/main/java/com/ycl/jxkg/service/QuestionService.java
+++ b/src/main/java/com/ycl/jxkg/service/QuestionService.java
@@ -24,4 +24,11 @@
     Integer selectAllCount();
 
     List<Integer> selectMothCount();
+
+    /**
+     * 鏇存柊棰樼洰鐘舵��
+     * @param question 棰樼洰
+     * @return 鏇存柊缁撴灉
+     */
+    Boolean updateStatus(QuestionResponseVO question);
 }
diff --git a/src/main/java/com/ycl/jxkg/service/SubjectService.java b/src/main/java/com/ycl/jxkg/service/SubjectService.java
index f8b0d2a..1ed80c9 100644
--- a/src/main/java/com/ycl/jxkg/service/SubjectService.java
+++ b/src/main/java/com/ycl/jxkg/service/SubjectService.java
@@ -13,7 +13,5 @@
 
     List<Subject> allSubject();
 
-    Integer levelBySubjectId(Integer id);
-
     PageInfo<Subject> page(SubjectPageRequestVO requestVM);
 }
diff --git a/src/main/java/com/ycl/jxkg/service/impl/ClassesNotifyServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/ClassesNotifyServiceImpl.java
new file mode 100644
index 0000000..7502ed6
--- /dev/null
+++ b/src/main/java/com/ycl/jxkg/service/impl/ClassesNotifyServiceImpl.java
@@ -0,0 +1,119 @@
+package com.ycl.jxkg.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ycl.jxkg.domain.entity.ClassesNotify;
+import com.ycl.jxkg.mapper.ClassesNotifyMapper;
+import com.ycl.jxkg.service.ClassesNotifyService;
+import com.ycl.jxkg.base.Result;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.jxkg.domain.form.ClassesNotifyForm;
+import com.ycl.jxkg.domain.vo.ClassesNotifyVO;
+import com.ycl.jxkg.domain.query.ClassesNotifyQuery;
+import org.springframework.stereotype.Service;
+import lombok.RequiredArgsConstructor;
+import com.ycl.jxkg.utils.PageUtil;
+import org.springframework.beans.BeanUtils;
+import org.springframework.util.Assert;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 鐝骇閫氱煡 鏈嶅姟瀹炵幇绫�
+ *
+ * @author xp
+ * @since 2024-06-05
+ */
+@Service
+@RequiredArgsConstructor
+public class ClassesNotifyServiceImpl extends ServiceImpl<ClassesNotifyMapper, ClassesNotify> implements ClassesNotifyService {
+
+    private final ClassesNotifyMapper classesNotifyMapper;
+
+    /**
+     * 娣诲姞
+     * @param form
+     * @return
+     */
+    @Override
+    public Result add(ClassesNotifyForm form) {
+        ClassesNotify entity = ClassesNotifyForm.getEntityByForm(form, null);
+        baseMapper.insert(entity);
+        return Result.ok("娣诲姞鎴愬姛");
+    }
+
+    /**
+     * 淇敼
+     * @param form
+     * @return
+     */
+    @Override
+    public Result update(ClassesNotifyForm form) {
+        ClassesNotify entity = baseMapper.selectById(form.getId());
+
+        // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊
+        Assert.notNull(entity, "璁板綍涓嶅瓨鍦�");
+        BeanUtils.copyProperties(form, entity);
+        baseMapper.updateById(entity);
+        return Result.ok("淇敼鎴愬姛");
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎
+     * @param ids
+     * @return
+     */
+    @Override
+    public Result remove(List<String> ids) {
+        baseMapper.deleteBatchIds(ids);
+        return Result.ok("鍒犻櫎鎴愬姛");
+    }
+
+    /**
+     * id鍒犻櫎
+     * @param id
+     * @return
+     */
+    @Override
+    public Result removeById(String id) {
+        baseMapper.deleteById(id);
+        return Result.ok("鍒犻櫎鎴愬姛");
+    }
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     * @param query
+     * @return
+     */
+    @Override
+    public Result page(ClassesNotifyQuery query) {
+        IPage<ClassesNotifyVO> page = PageUtil.getPage(query, ClassesNotifyVO.class);
+        baseMapper.getPage(page, query);
+        return Result.ok().data(page.getRecords()).total(page.getTotal());
+    }
+
+    /**
+     * 鏍规嵁id鏌ユ壘
+     * @param id
+     * @return
+     */
+    @Override
+    public Result detail(Integer id) {
+        ClassesNotifyVO vo = baseMapper.getById(id);
+        Assert.notNull(vo, "璁板綍涓嶅瓨鍦�");
+        return Result.ok().data(vo);
+    }
+
+    /**
+     * 鍒楄〃
+     * @return
+     */
+    @Override
+    public Result all() {
+        List<ClassesNotify> entities = baseMapper.selectList(null);
+        List<ClassesNotifyVO> vos = entities.stream()
+                .map(entity -> ClassesNotifyVO.getVoByEntity(entity, null))
+                .collect(Collectors.toList());
+        return Result.ok().data(vos);
+    }
+}
diff --git a/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java
index 9bfe852..41d8df1 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java
@@ -188,7 +188,7 @@
         ExamPaperQuestionCustomerAnswer examPaperQuestionCustomerAnswer = new ExamPaperQuestionCustomerAnswer();
         examPaperQuestionCustomerAnswer.setQuestionId(question.getId());
         examPaperQuestionCustomerAnswer.setExamPaperId(examPaper.getId());
-        examPaperQuestionCustomerAnswer.setQuestionScore(question.getScore());
+        examPaperQuestionCustomerAnswer.setQuestionScore(null);
         examPaperQuestionCustomerAnswer.setSubjectId(examPaper.getSubjectId());
         examPaperQuestionCustomerAnswer.setItemOrder(itemOrder);
         examPaperQuestionCustomerAnswer.setCreateTime(now);
@@ -217,13 +217,13 @@
             case TrueFalse:
                 examPaperQuestionCustomerAnswer.setAnswer(customerQuestionAnswer.getContent());
                 examPaperQuestionCustomerAnswer.setDoRight(question.getCorrect().equals(customerQuestionAnswer.getContent()));
-                examPaperQuestionCustomerAnswer.setCustomerScore(examPaperQuestionCustomerAnswer.getDoRight() ? question.getScore() : 0);
+                examPaperQuestionCustomerAnswer.setCustomerScore(examPaperQuestionCustomerAnswer.getDoRight() ? null : 0);
                 break;
             case MultipleChoice:
                 String customerAnswer = ExamUtil.contentToString(customerQuestionAnswer.getContentArray());
                 examPaperQuestionCustomerAnswer.setAnswer(customerAnswer);
                 examPaperQuestionCustomerAnswer.setDoRight(customerAnswer.equals(question.getCorrect()));
-                examPaperQuestionCustomerAnswer.setCustomerScore(examPaperQuestionCustomerAnswer.getDoRight() ? question.getScore() : 0);
+                examPaperQuestionCustomerAnswer.setCustomerScore(examPaperQuestionCustomerAnswer.getDoRight() ? null : 0);
                 break;
             case GapFilling:
                 String correctAnswer = JsonUtil.toJsonStr(customerQuestionAnswer.getContentArray());
diff --git a/src/main/java/com/ycl/jxkg/service/impl/QuestionServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/QuestionServiceImpl.java
index 7b83e10..4ceda84 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/QuestionServiceImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/QuestionServiceImpl.java
@@ -1,26 +1,24 @@
 package com.ycl.jxkg.service.impl;
 
+import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ycl.jxkg.domain.other.KeyValue;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.ycl.jxkg.domain.entity.Question;
-import com.ycl.jxkg.domain.entity.TextContent;
-import com.ycl.jxkg.domain.enums.QuestionStatusEnum;
 import com.ycl.jxkg.domain.enums.QuestionTypeEnum;
+import com.ycl.jxkg.domain.enums.general.StatusEnum;
+import com.ycl.jxkg.domain.other.KeyValue;
 import com.ycl.jxkg.domain.question.QuestionItemObject;
 import com.ycl.jxkg.domain.question.QuestionObject;
-import com.ycl.jxkg.domain.vo.admin.question.QuestionResponseVO;
-import com.ycl.jxkg.mapper.QuestionMapper;
-import com.ycl.jxkg.service.QuestionService;
-import com.ycl.jxkg.service.SubjectService;
-import com.ycl.jxkg.service.TextContentService;
-import com.ycl.jxkg.utils.DateTimeUtil;
-import com.ycl.jxkg.utils.JsonUtil;
-import com.ycl.jxkg.utils.ExamUtil;
 import com.ycl.jxkg.domain.vo.admin.question.QuestionEditItemVO;
 import com.ycl.jxkg.domain.vo.admin.question.QuestionEditRequestVO;
 import com.ycl.jxkg.domain.vo.admin.question.QuestionPageRequestVO;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
+import com.ycl.jxkg.domain.vo.admin.question.QuestionResponseVO;
+import com.ycl.jxkg.mapper.QuestionMapper;
+import com.ycl.jxkg.service.QuestionService;
+import com.ycl.jxkg.utils.DateTimeUtil;
+import com.ycl.jxkg.utils.ExamUtil;
+import com.ycl.jxkg.utils.JsonUtil;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
@@ -35,13 +33,11 @@
 public class QuestionServiceImpl extends ServiceImpl<QuestionMapper, Question> implements QuestionService {
 
     private final QuestionMapper questionMapper;
-    private final TextContentService textContentService;
-    private final SubjectService subjectService;
 
 
     @Override
     public PageInfo<QuestionResponseVO> page(QuestionPageRequestVO requestVM) {
-        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() ->
+        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "create_time desc").doSelectPageInfo(() ->
                 questionMapper.page(requestVM)
         );
     }
@@ -51,19 +47,16 @@
     @Transactional
     public Question insertFullQuestion(QuestionEditRequestVO model, Integer userId) {
         Date now = new Date();
-        Integer gradeLevel = subjectService.levelBySubjectId(model.getSubjectId());
 
         //棰樺共銆佽В鏋愩�侀�夐」绛� 鎻掑叆
         String questionObject = setQuestionInfoFromVM(model);
 
         Question question = new Question();
         question.setSubjectId(model.getSubjectId());
-        question.setGradeLevel(gradeLevel);
         question.setCreateTime(now);
         question.setQuestionType(model.getQuestionType());
-        question.setStatus(QuestionStatusEnum.OK.getCode());
+        question.setStatus(StatusEnum.ENABLE);
         question.setCorrectFromVM(model.getCorrect(), model.getCorrectArray());
-        question.setScore(ExamUtil.scoreFromVM(model.getScore()));
         question.setDifficult(model.getDifficult());
         question.setContent(questionObject);
         question.setCreateUser(userId);
@@ -74,11 +67,8 @@
     @Override
     @Transactional
     public Question updateFullQuestion(QuestionEditRequestVO model) {
-        Integer gradeLevel = subjectService.levelBySubjectId(model.getSubjectId());
         Question question = questionMapper.selectById(model.getId());
         question.setSubjectId(model.getSubjectId());
-        question.setGradeLevel(gradeLevel);
-        question.setScore(ExamUtil.scoreFromVM(model.getScore()));
         question.setDifficult(model.getDifficult());
         question.setCorrectFromVM(model.getCorrect(), model.getCorrectArray());
         //棰樺共銆佽В鏋愩�侀�夐」绛� 鏇存柊
@@ -123,7 +113,6 @@
             default:
                 break;
         }
-        questionEditRequestVO.setScore(ExamUtil.scoreToVM(question.getScore()));
         questionEditRequestVO.setAnalyze(questionObject.getAnalyze());
 
 
@@ -131,9 +120,6 @@
         List<QuestionEditItemVO> editItems = questionObject.getQuestionItemObjects().stream().map(o -> {
             QuestionEditItemVO questionEditItemVO = new QuestionEditItemVO();
             BeanUtils.copyProperties(o, questionEditItemVO);
-            if (o.getScore() != null) {
-                questionEditItemVO.setScore(ExamUtil.scoreToVM(o.getScore()));
-            }
             return questionEditItemVO;
         }).collect(Collectors.toList());
         questionEditRequestVO.setItems(editItems);
@@ -147,7 +133,6 @@
                     item.setPrefix(i.getPrefix());
                     item.setContent(i.getContent());
                     item.setItemUuid(i.getItemUuid());
-                    item.setScore(ExamUtil.scoreFromVM(i.getScore()));
                     return item;
                 }
         ).collect(Collectors.toList());
@@ -176,5 +161,12 @@
         }).collect(Collectors.toList());
     }
 
+    @Override
+    public Boolean updateStatus(QuestionResponseVO question) {
+        return new LambdaUpdateChainWrapper<>(questionMapper)
+                .set(Question::getStatus, question.getStatus())
+                .eq(Question::getId, question.getId())
+                .update();
+    }
 
 }
diff --git a/src/main/java/com/ycl/jxkg/service/impl/SubjectServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/SubjectServiceImpl.java
index 30bcd86..8ec423c 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/SubjectServiceImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/SubjectServiceImpl.java
@@ -29,13 +29,8 @@
     }
 
     @Override
-    public Integer levelBySubjectId(Integer id) {
-        return baseMapper.selectById(id).getLevel();
-    }
-
-    @Override
     public PageInfo<Subject> page(SubjectPageRequestVO requestVM) {
-        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() ->
+        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "item_order").doSelectPageInfo(() ->
                 subjectMapper.page(requestVM)
         );
     }
diff --git a/src/main/resources/mapper/ClassesNotifyMapper.xml b/src/main/resources/mapper/ClassesNotifyMapper.xml
new file mode 100644
index 0000000..95e4b83
--- /dev/null
+++ b/src/main/resources/mapper/ClassesNotifyMapper.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ycl.jxkg.mapper.ClassesNotifyMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.ycl.jxkg.domain.vo.ClassesNotifyVO">
+        <result column="classes_id" property="classesId" />
+        <result column="teacher_id" property="teacherId" />
+        <result column="notify_content" property="notifyContent" />
+        <result column="create_time" property="createTime" />
+    </resultMap>
+
+
+
+
+
+
+
+    <select id="getById" resultMap="BaseResultMap">
+        SELECT
+            TCN.classes_id,
+            TCN.teacher_id,
+            TCN.notify_content,
+            TCN.create_time,
+            TCN.id
+        FROM
+            t_classes_notify TCN
+        WHERE
+            TCN.id = #{id} AND TCN.deleted = 0
+    </select>
+
+
+    <select id="getPage" resultMap="BaseResultMap">
+        SELECT
+            TCN.classes_id,
+            TCN.teacher_id,
+            TCN.notify_content,
+            TCN.create_time,
+            TCN.id
+        FROM
+            t_classes_notify TCN
+        WHERE
+            TCN.deleted = 0
+    </select>
+
+</mapper>
diff --git a/src/main/resources/mapper/QuestionMapper.xml b/src/main/resources/mapper/QuestionMapper.xml
index 7a5a642..c0266f0 100644
--- a/src/main/resources/mapper/QuestionMapper.xml
+++ b/src/main/resources/mapper/QuestionMapper.xml
@@ -1,12 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ycl.jxkg.mapper.QuestionMapper">
+
     <resultMap id="BaseResultMap" type="com.ycl.jxkg.domain.entity.Question">
         <id column="id" jdbcType="INTEGER" property="id"/>
         <result column="question_type" jdbcType="INTEGER" property="questionType"/>
         <result column="subject_id" jdbcType="INTEGER" property="subjectId"/>
-        <result column="score" jdbcType="INTEGER" property="score"/>
-        <result column="grade_level" jdbcType="INTEGER" property="gradeLevel"/>
         <result column="difficult" jdbcType="INTEGER" property="difficult"/>
         <result column="correct" jdbcType="VARCHAR" property="correct"/>
         <result column="content" jdbcType="VARCHAR" property="content"/>
@@ -16,11 +15,8 @@
         <result column="deleted" jdbcType="BIT" property="deleted"/>
     </resultMap>
     <sql id="Base_Column_List">
-        id
-        , question_type, subject_id, score, grade_level, difficult, correct, content,
-    create_user, status, create_time, deleted
+        id, question_type, subject_id, difficult, correct, content, create_user, status, create_time, deleted
     </sql>
-
 
     <select id="page" resultType="com.ycl.jxkg.domain.vo.admin.question.QuestionResponseVO" parameterType="com.ycl.jxkg.domain.vo.admin.question.QuestionPageRequestVO">
         SELECT
@@ -32,20 +28,20 @@
         LEFT JOIN t_subject ts ON tq.subject_id = ts.id
         LEFT JOIN t_user tu ON tq.create_user = tu.id
         <where>
-            and tq.deleted=0
-            <if test="id != null ">
-                and tq.id= #{id}
+            and tq.deleted = 0
+            <if test="id != null">
+                and tq.id = #{id}
             </if>
-            <if test="level != null ">
-                and tq.grade_level= #{level}
+            <if test="status != null">
+                and tq.status = #{status}
             </if>
-            <if test="subjectId != null ">
-                and tq.subject_id= #{subjectId}
+            <if test="subjectId != null and subjectId.size() > 0">
+                and tq.subject_id in <foreach collection="subjectId" item="item" separator="," open="(" close=")"> #{item} </foreach>
             </if>
-            <if test="questionType != null ">
-                and tq.question_type= #{questionType}
+            <if test="questionType != null and questionType.size() > 0">
+                and tq.question_type in <foreach collection="questionType" item="item" separator="," open="(" close=")"> #{item} </foreach>
             </if>
-            <if test="content != null">
+            <if test="content != null and content != ''">
                 and instr(tq.content, #{content})
             </if>
         </where>
diff --git a/src/main/resources/mapper/SubjectMapper.xml b/src/main/resources/mapper/SubjectMapper.xml
index 1ea7ee5..3b31e9b 100644
--- a/src/main/resources/mapper/SubjectMapper.xml
+++ b/src/main/resources/mapper/SubjectMapper.xml
@@ -4,14 +4,14 @@
     <resultMap id="BaseResultMap" type="com.ycl.jxkg.domain.entity.Subject">
         <id column="id" jdbcType="INTEGER" property="id"/>
         <result column="name" jdbcType="VARCHAR" property="name"/>
-        <result column="level" jdbcType="INTEGER" property="level"/>
-        <result column="level_name" jdbcType="VARCHAR" property="levelName"/>
         <result column="item_order" jdbcType="INTEGER" property="itemOrder"/>
+        <result column="status" jdbcType="INTEGER" property="status"/>
+        <result column="create_user" jdbcType="INTEGER" property="createUser"/>
+        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
         <result column="deleted" jdbcType="BIT" property="deleted"/>
     </resultMap>
     <sql id="Base_Column_List">
-        id
-        , name, level, level_name, item_order, deleted
+        id, name, item_order, deleted, status, create_user, create_time
     </sql>
 
 
@@ -34,12 +34,12 @@
         <include refid="Base_Column_List"/>
         FROM t_subject
         <where>
-            and deleted=0
-            <if test="id != null ">
-                and id= #{id}
+            and deleted = 0
+            <if test="status != null">
+                and status = #{status}
             </if>
-            <if test="level != null ">
-                and level= #{level}
+            <if test="name != null and name != ''">
+                and instr(name, #{name})
             </if>
         </where>
     </select>

--
Gitblit v1.8.0