honorfire преди 7 месеца
родител
ревизия
c914f05bc0

+ 19 - 0
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/CourseQuestionAnswerController.java

@@ -19,6 +19,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import com.github.xiaoymin.knife4j.annotations.ApiSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -28,9 +29,13 @@ import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
 import vip.xiaonuo.common.annotation.CommonLog;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.common.pojo.CommonValidList;
+import vip.xiaonuo.disk.domain.Chapter;
+import vip.xiaonuo.disk.domain.ClassHour;
 import vip.xiaonuo.disk.domain.CourseRelate;
 import vip.xiaonuo.disk.domain.QuestionAnswer;
 import vip.xiaonuo.disk.param.*;
+import vip.xiaonuo.disk.service.ChapterService;
+import vip.xiaonuo.disk.service.ClassHourService;
 import vip.xiaonuo.disk.service.CourseRelateService;
 import vip.xiaonuo.disk.service.QuestionAnswerService;
 import vip.xiaonuo.disk.vo.questionanswer.QuestionAnswerVo;
@@ -62,6 +67,10 @@ public class CourseQuestionAnswerController {
     private QuestionAnswerService questionAnswerService;
     @Resource
     private CourseRelateService courseRelateService;
+    @Resource
+    private ChapterService chapterService;
+    @Resource
+    private ClassHourService classHourService;
 
     /**
      * 获取课程问答分页
@@ -77,11 +86,14 @@ public class CourseQuestionAnswerController {
         param.put("courseId", req.getParameter("courseId"));
         param.put("hourId", req.getParameter("hourId"));
         param.put("userId", StpLoginUserUtil.getLoginUser().getId());
+        //是否是查父级评论,0否1是
+        param.put("isPid", "1");
         //查询一级评论问题
         Page<Map<String,Object>> page=questionAnswerService.queryList(param);
         List<Map<String,Object>> recordList=page.getRecords();
         List<String> recordIdList=  recordList.stream().map(map -> (String) map.get("id")).collect(Collectors.toList());
         param.clear();
+        param.put("isPid", "0");
         param.put("pidList", recordIdList);
         //查询二级评论问题
         List<Map<String,Object>> recordTwoList=questionAnswerService.queryMapList(param);
@@ -123,6 +135,13 @@ public class CourseQuestionAnswerController {
     public CommonResult<String> add(@RequestBody @Valid QuestionAnswerAddParam questionAnswerAddParam) {
         //1.添加问答信息
         QuestionAnswer questionAnswer = BeanUtil.toBean(questionAnswerAddParam, QuestionAnswer.class);
+        questionAnswer.setUserId(StpLoginUserUtil.getLoginUser().getId());
+        if(StringUtils.isEmpty(questionAnswer.getCourseId()))
+        {
+            ClassHour classHour = classHourService.queryEntity(questionAnswerAddParam.getHourId());
+            Chapter chapter = chapterService.queryEntity(classHour.getChapterId());
+            questionAnswer.setCourseId(chapter.getCourseId());
+        }
         questionAnswer=questionAnswerService.addOne(questionAnswer);
         //2.添加进课程关联信息
         CourseRelate courseRelate=new CourseRelate();

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/CourseStudentRelateController.java

@@ -324,7 +324,7 @@ public class CourseStudentRelateController {
      */
     @ApiOperationSupport(order = 1)
     @ApiOperation("获取关联学生-下拉列表")
-//    @SaCheckPermission("/disk/coursestudentrelate/downList")
+    @SaCheckPermission("/disk/coursestudentrelate/downList")
     @GetMapping("/disk/coursestudentrelate/downList")
     public CommonResult<Page<Map<String,Object>>> downList(CourseStudentRelatePageParam courseStudentRelatePageParam, HttpServletRequest req) {
         Map param =new HashMap();

+ 30 - 5
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/mapper/mapping/QuestionAnswerMapper.xml

@@ -39,8 +39,11 @@
     <select id="queryList" resultType="java.util.Map">
         SELECT
             cqa.ID AS id,
+            IFNULL(cqa.PID,'') AS pid,
+            IFNULL(cqa.INFO,'') AS info,
+            IFNULL(cqa.GIVE_NUM ,'') AS giveNum,
             IFNULL(cqa.COURSE_ID,'') AS courseId,
-            IFNULL(ci.COURSE_NAME,'') AS courseName,
+            IFNULL(ci.COURSE_NAME,'') AS courseIdName,
             IFNULL(cqa.USER_ID,'') AS userId,
             IFNULL(su.NAME,'') AS userIdName,
             IFNULL(cr.MAIN_ID ,'') AS hourId,
@@ -51,6 +54,14 @@
         LEFT JOIN COURSE_CLASSHOUR cc ON cc.ID = cr.MAIN_ID AND cc.DELETE_FLAG ='NOT_DELETE'
         LEFT JOIN SYS_USER su ON su.ID=cqa.USER_ID AND su.DELETE_FLAG ='NOT_DELETE'
         WHERE cqa.DELETE_FLAG ='NOT_DELETE'
+        <if test="param.isPid !=null and param.isPid != ''">
+            <if test="param.isPid ==1">
+                and cqa.PID is null
+            </if>
+            <if test="param.isPid ==0">
+                and cqa.PID is not null
+            </if>
+        </if>
         <if test="param.courseId !=null and param.courseId != ''">
             and cqa.COURSE_ID=#{param.courseId}
         </if>
@@ -58,7 +69,7 @@
             and cqa.USER_ID=#{param.userId}
         </if>
         <if test="param.hourId !=null and param.hourId != ''">
-            and cqa.MAIN_ID=#{param.hourId}
+            and cr.MAIN_ID=#{param.hourId}
         </if>
         <if test="param.pid !=null and param.pid != ''">
             and cqa.PID=#{param.pid}
@@ -74,8 +85,11 @@
     <select id="queryMapList" resultType="java.util.Map">
         SELECT
             cqa.ID AS id,
+            IFNULL(cqa.PID,'') AS pid,
+            IFNULL(cqa.INFO,'') AS info,
+            IFNULL(cqa.GIVE_NUM ,'') AS giveNum,
             IFNULL(cqa.COURSE_ID,'') AS courseId,
-            IFNULL(ci.COURSE_NAME,'') AS courseName,
+            IFNULL(ci.COURSE_NAME,'') AS courseIdName,
             IFNULL(cqa.USER_ID,'') AS userId,
             IFNULL(su.NAME,'') AS userIdName,
             IFNULL(cr.MAIN_ID ,'') AS hourId,
@@ -86,6 +100,14 @@
         LEFT JOIN COURSE_CLASSHOUR cc ON cc.ID = cr.MAIN_ID AND cc.DELETE_FLAG ='NOT_DELETE'
         LEFT JOIN SYS_USER su ON su.ID=cqa.USER_ID AND su.DELETE_FLAG ='NOT_DELETE'
         WHERE cqa.DELETE_FLAG ='NOT_DELETE'
+        <if test="isPid !=null and isPid != ''">
+            <if test="isPid ==1">
+                and cqa.PID is null
+            </if>
+            <if test="isPid ==0">
+                and cqa.PID is not null
+            </if>
+        </if>
         <if test="courseId !=null and courseId != ''">
             and cqa.COURSE_ID=#{courseId}
         </if>
@@ -93,7 +115,7 @@
             and cqa.USER_ID=#{userId}
         </if>
         <if test="hourId !=null and hourId != ''">
-            and cqa.MAIN_ID=#{hourId}
+            and cr.MAIN_ID=#{hourId}
         </if>
         <if test="pid !=null and pid != ''">
             and cqa.PID=#{pid}
@@ -110,8 +132,11 @@
     <select id="queryInfo" resultType="java.util.Map">
         SELECT
             cqa.ID AS id,
+            IFNULL(cqa.PID,'') AS pid,
+            IFNULL(cqa.INFO,'') AS info,
+            IFNULL(cqa.GIVE_NUM ,'') AS giveNum,
             IFNULL(cqa.COURSE_ID,'') AS courseId,
-            IFNULL(ci.COURSE_NAME,'') AS courseName,
+            IFNULL(ci.COURSE_NAME,'') AS courseIdName,
             IFNULL(cqa.USER_ID,'') AS userId,
             IFNULL(su.NAME,'') AS userIdName,
             IFNULL(cr.MAIN_ID ,'') AS hourId,

+ 3 - 0
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/QuestionAnswerAddParam.java

@@ -16,6 +16,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
 
+import javax.validation.constraints.NotBlank;
 import java.util.Date;
 
 /**
@@ -34,6 +35,7 @@ public class QuestionAnswerAddParam {
 
     /** 问答信息 */
     @ApiModelProperty(value = "问答信息", position = 3)
+    @NotBlank(message = "问答信息不能为空")
     private String info;
 
     /** 人员id */
@@ -50,6 +52,7 @@ public class QuestionAnswerAddParam {
 
     /** 课时id */
     @ApiModelProperty(value = "课时id", position = 3)
+    @NotBlank(message = "课时id不能为空")
     private String hourId;
 
 }

+ 18 - 24
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/QuestionAnswerEditParam.java

@@ -16,6 +16,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
 
+import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
 import java.util.Date;
 
@@ -33,36 +34,29 @@ public class QuestionAnswerEditParam {
     @ApiModelProperty(value = "ID", required = true, position = 1)
     @NotNull(message = "id不能为空")
     private String id;
+    /** 父主键id */
+    @ApiModelProperty(value = "父主键id", position = 2)
+    private String pid;
 
-    /** PID */
-    @ApiModelProperty(value = "PID", position = 2)
-    private Integer pid;
+    /** 问答信息 */
+    @ApiModelProperty(value = "问答信息", position = 3)
+    private String info;
 
-    /** NAME */
-    @ApiModelProperty(value = "NAME", position = 3)
-    private String name;
-
-    /** USER_ID */
-    @ApiModelProperty(value = "USER_ID", position = 4)
+    /** 人员id */
+    @ApiModelProperty(value = "人员id", position = 4)
     private String userId;
 
-    /** TIME */
-    @ApiModelProperty(value = "TIME", position = 5)
-    private Date time;
-
-    /** DESC */
-    @ApiModelProperty(value = "REMARK", position = 6)
-    private String remark;
-
-    /** RESOURCE_ID */
-    @ApiModelProperty(value = "RESOURCE_ID", position = 12)
-    private String resourceId;
+    /** 课程id */
+    @ApiModelProperty(value = "课程id", position = 5)
+    private String courseId;
 
-    /** GIVE_NUM */
-    @ApiModelProperty(value = "GIVE_NUM", position = 13)
-    private String giveNum;
+    /** 点赞数量 */
+    @ApiModelProperty(value = "点赞数量", position = 6)
+    private Long giveNum;
 
-    private  String courseId;
+    /** 课时id */
+    @ApiModelProperty(value = "课时id", position = 3)
+    private String hourId;
 
     private  String chapterId;