소스 검색

问答完善,加入提出时间,提出人的班级

honorfire 6 달 전
부모
커밋
6adcb42bca

+ 16 - 0
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/ResourceRecordController.java

@@ -498,6 +498,22 @@ public class ResourceRecordController {
         Map param =new HashMap();
         param.put("id", req.getParameter("id"));
         Map<String,Object> result=courseAuditRecordService.queryInfo(param);
+        //2025.8.20会议后,要求直接在详情进行验权
+        //如果资源是公开的,直接放行,没有权限直接返回错误信息
+        String isHaveAuth="0";
+        if("0".equals(result.get("authType")))
+        {
+            isHaveAuth="1";
+        }
+        else if("1".equals(result.get("authType")))//如果是私密的,检查是否有权限
+        {
+            param.put("resourceRecord", req.getParameter("id"));
+            param.put("userId", StpLoginUserUtil.getLoginUser().getId());
+            List<ResourceRecordUserRelate> userRelateList=resourceRecordUserRelateService.allList(param);
+            if(userRelateList.size()>0)isHaveAuth="1";
+        }
+        if("0".equals(isHaveAuth))return CommonResult.error("您没有访问权限");
+
         //评论数
         List<UserCommentVo> commentList=userCommentService.queryList(req.getParameter("id"));
         result.put("commentNum",commentList.size());

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

@@ -96,17 +96,21 @@
             IFNULL(cqa.PID,'') AS pid,
             IFNULL(cqa.INFO,'') AS info,
             IFNULL(cqa.GIVE_NUM ,'') AS giveNum,
+            IFNULL(cqa.CREATE_TIME,'') AS createTime,
             IFNULL(cqa.COURSE_ID,'') AS courseId,
             IFNULL(ci.COURSE_NAME,'') AS courseIdName,
             IFNULL(cqa.USER_ID,'') AS userId,
             IFNULL(su.NAME,'') AS userIdName,
             IFNULL(cr.MAIN_ID ,'') AS hourId,
-            IFNULL(cc.NAME,'') AS hourIdName
+            IFNULL(cc.NAME,'') AS hourIdName,
+            IFNULL (su.GRADES_ID,'') AS gradesId,
+            IFNULL (gr.grades_name,'') AS gradesIdName
         FROM COURSE_QUESTION_ANSWER cqa
         LEFT JOIN COURSE_INFO ci ON ci.COURSE_ID = cqa.COURSE_ID AND ci.DELETE_FLAG ='NOT_DELETE'
         LEFT JOIN COURSE_RELATE cr ON cr.RELATE_ID =cqa.ID AND cr.FUNC_TYPE ='7' AND cr.INFO_TYPE ='1' AND cr.CHAPTERHOUR_TYPE ='1'
         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'
+        LEFT JOIN grades gr ON su.GRADES_ID =gr.grades_id  AND gr.DELETE_FLAG ='NOT_DELETE'
         WHERE cqa.DELETE_FLAG ='NOT_DELETE'
         <if test="isPid !=null and isPid != ''">
             <if test="isPid ==1">
@@ -143,17 +147,21 @@
             IFNULL(cqa.PID,'') AS pid,
             IFNULL(cqa.INFO,'') AS info,
             IFNULL(cqa.GIVE_NUM ,'') AS giveNum,
+            IFNULL(cqa.CREATE_TIME,'') AS createTime,
             IFNULL(cqa.COURSE_ID,'') AS courseId,
             IFNULL(ci.COURSE_NAME,'') AS courseIdName,
             IFNULL(cqa.USER_ID,'') AS userId,
             IFNULL(su.NAME,'') AS userIdName,
             IFNULL(cr.MAIN_ID ,'') AS hourId,
-            IFNULL(cc.NAME,'') AS hourIdName
+            IFNULL(cc.NAME,'') AS hourIdName,
+            IFNULL (su.GRADES_ID,'') AS gradesId,
+            IFNULL (gr.grades_name,'') AS gradesIdName
         FROM COURSE_QUESTION_ANSWER cqa
         LEFT JOIN COURSE_INFO ci ON ci.COURSE_ID = cqa.COURSE_ID AND ci.DELETE_FLAG ='NOT_DELETE'
         LEFT JOIN COURSE_RELATE cr ON cr.RELATE_ID =cqa.ID AND cr.FUNC_TYPE ='7' AND cr.INFO_TYPE ='1' AND cr.CHAPTERHOUR_TYPE ='1'
         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'
+        LEFT JOIN grades gr ON su.GRADES_ID =gr.grades_id  AND gr.DELETE_FLAG ='NOT_DELETE'
         WHERE 1=1
         <if test="id !=null and id != ''">
             and cqa.ID= #{id}