pans 6 месяцев назад
Родитель
Сommit
2c596a5b26

+ 2 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/mapper/NoticeMapper.java

@@ -21,6 +21,7 @@ import vip.xiaonuo.disk.param.notice.NoticePageParam;
 import vip.xiaonuo.disk.vo.notice.NoticeVo;
 
 import javax.validation.constraints.NotNull;
+import java.util.List;
 
 
 /**
@@ -30,7 +31,7 @@ import javax.validation.constraints.NotNull;
  * @date  2025/07/25 16:17
  **/
 public interface NoticeMapper extends BaseMapper<Notice> {
-    Page<NoticeVo> page(@Param("page") Page<Object> objectPage, @Param("noticePageParam") NoticePageParam noticePageParam);
+    Page<NoticeVo> page(@Param("page") Page<Object> objectPage, @Param("noticePageParam") NoticePageParam noticePageParam, @Param("typelist") List<String> typelist);
 
     NoticeVo detail(@NotNull(message = "noticeId不能为空") Long noticeId);
 

+ 9 - 0
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/mapper/mapping/NoticeMapper.xml

@@ -21,6 +21,15 @@
             <if test="noticePageParam.title!=null">
                 a.TITLE like concat('%',#{noticePageParam.title},'%')
             </if>
+            <if test="noticePageParam.userId!=null">
+                and a.CREATE_USER_ID = #{noticePageParam.userId}
+            </if>
+            <if test="typelist!=null">
+                and a.PLATFORM in
+                <foreach collection="typelist" item="item" index="index" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+            </if>
             and  a.DELETE_FLAG='NOT_DELETE'
         </where>
         order by a.MODIFY_TIME desc

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

@@ -46,4 +46,7 @@ public class NoticePageParam {
     @ApiModelProperty(value = "关键词")
     private String title;
 
+    private String userId;
+
+
 }

+ 17 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/impl/NoticeServiceImpl.java

@@ -32,6 +32,7 @@ import vip.xiaonuo.disk.param.notice.NoticePageParam;
 import vip.xiaonuo.disk.service.NoticeService;
 import vip.xiaonuo.disk.vo.notice.NoticeVo;
 
+import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
@@ -48,12 +49,27 @@ public class NoticeServiceImpl extends ServiceImpl<NoticeMapper, Notice> impleme
     private  NoticeMapper noticeMapper;
     @Override
     public Page<NoticeVo> page(NoticePageParam noticePageParam) {
-        return noticeMapper.page(CommonPageRequest.defaultPage(), noticePageParam);
+        List<String> typelist = null;
+        if("0".equals(StpLoginUserUtil.getLoginUser().getEduIdentity())){
+            typelist=Arrays.asList("3");
+        }
+        if("1".equals(StpLoginUserUtil.getLoginUser().getEduIdentity())){
+            typelist= Arrays.asList("1","2");
+            noticePageParam.setUserId(StpLoginUserUtil.getLoginUser().getId());
+        }
+        if("2".equals(StpLoginUserUtil.getLoginUser().getEduIdentity())){
+            typelist= Arrays.asList("1","2");
+        }
+        return noticeMapper.page(CommonPageRequest.defaultPage(), noticePageParam,typelist);
     }
 
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void add(NoticeAddParam noticeAddParam) {
+        //如果他是管理员身份,是系统公告
+          if("0".equals(StpLoginUserUtil.getLoginUser().getEduIdentity())){
+              noticeAddParam.setPlatform(3);
+          }
         Notice notice = BeanUtil.toBean(noticeAddParam, Notice.class);
         notice.setNoticeStatus(0);
         notice.setCreateUserId(StpLoginUserUtil.getLoginUser().getId());

+ 4 - 4
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/TExamController.java

@@ -79,8 +79,8 @@ public class TExamController extends BaseApiController {
     @SaCheckPermission("/api/admin/t_exam/add")
     @PostMapping("/add")
     public CommonResult<String> add(@RequestBody @Valid TExamAddParam tExamAddParam) {
-        tExamService.add(tExamAddParam);
-        return CommonResult.ok();
+
+        return tExamService.add(tExamAddParam);
     }
 
     /**
@@ -95,8 +95,8 @@ public class TExamController extends BaseApiController {
     @SaCheckPermission("/api/admin/t_exam/edit")
     @PostMapping("/edit")
     public CommonResult<String> edit(@RequestBody @Valid TExamEditParam tExamEditParam) {
-        tExamService.edit(tExamEditParam);
-        return CommonResult.ok();
+
+        return  tExamService.edit(tExamEditParam);
     }
 
     /**

+ 3 - 2
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/TExamService.java

@@ -14,6 +14,7 @@ package vip.xiaonuo.exam.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.exam.domain.TExam;
 import vip.xiaonuo.exam.domain.exam.TExamAddParam;
 import vip.xiaonuo.exam.domain.exam.TExamEditParam;
@@ -46,7 +47,7 @@ public interface TExamService extends IService<TExam> {
      * @author ZSS
      * @date  2025/07/22 10:51
      */
-    void add(TExamAddParam tExamAddParam);
+    CommonResult<String> add(TExamAddParam tExamAddParam);
 
     /**
      * 编辑考试表
@@ -54,7 +55,7 @@ public interface TExamService extends IService<TExam> {
      * @author ZSS
      * @date  2025/07/22 10:51
      */
-    void edit(TExamEditParam tExamEditParam);
+    CommonResult<String> edit(TExamEditParam tExamEditParam);
 
     /**
      * 删除考试表

+ 10 - 7
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/TExamServiceImpl.java

@@ -26,6 +26,7 @@ import org.springframework.transaction.annotation.Transactional;
 import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
 import vip.xiaonuo.common.exception.CommonException;
 import vip.xiaonuo.common.page.CommonPageRequest;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.dev.api.DevJobApi;
 import vip.xiaonuo.disk.api.NetDiskApi;
 import vip.xiaonuo.disk.mapper.CourseOpenMapper;
@@ -106,7 +107,7 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public void add(TExamAddParam tExamAddParam) {
+    public CommonResult<String> add(TExamAddParam tExamAddParam) {
         ExamPaper examPaper = examPaperService.selectById(Integer.parseInt(tExamAddParam.getPaperId()));
 
         ExamPaper newExamPaper=new ExamPaper();
@@ -132,7 +133,7 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
                 String studentIdsStr = String.join(",", studentAccounts);
                 tExam.setStudentIds(studentIdsStr);
             }else{
-                throw new CommonException("没有找到学生信息!!!");
+               return CommonResult.error("没有查询到学生信息!!!");
             }
         }
 
@@ -150,22 +151,23 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
             Date currentTime = new Date(System.currentTimeMillis());
             // 开始时间与结束时间不能小于当前时间
             if(currentTime.after(tExamAddParam.getStartTime()) || currentTime.after(tExamAddParam.getEndTime())){
-                throw new RuntimeException("开始时间与结束时间不能小于当前时间!!!");
+                return  CommonResult.error("开始时间与结束时间不能小于当前时间!!!");
             }
             this.addJob(tExam, "start");
             this.addJob(tExam, "end");
         }
+       return CommonResult.ok();
     }
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public void edit(TExamEditParam tExamEditParam) {
+    public CommonResult<String> edit(TExamEditParam tExamEditParam) {
         boolean updateJob = false;
         if(tExamEditParam.getStartTime() !=null || tExamEditParam.getEndTime() !=null){
             Date currentTime = new Date(System.currentTimeMillis());
             // 开始时间与结束时间不能小于当前时间
             if(currentTime.after(tExamEditParam.getStartTime()) || currentTime.after(tExamEditParam.getEndTime())){
-                throw new RuntimeException("开始时间与结束时间不能小于当前时间!!!");
+                return  CommonResult.error("开始时间与结束时间不能小于当前时间!!!");
             }
             updateJob = true;
         }
@@ -200,7 +202,7 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
                 String studentIdsStr = String.join(",", studentAccounts);
                 tExamEditParam.setStudentIds(studentIdsStr);
             }else{
-                throw new CommonException("没有找到学生信息!!!");
+                return CommonResult.error("没有查询到学生信息!!!");
             }
         }
 
@@ -233,7 +235,7 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
                     tExam = this.addJob(tExam, "end");
                 }else{
                     log.error("任务修改失败,删除过期任务异常。{}",deleteJobResult);
-                    throw new CommonException("任务修改失败,删除过期任务异常。");
+                    return CommonResult.error("任务修改失败,删除过期任务异常。");
                 }
             }else{
                 // 任务不存在,创建任务
@@ -244,6 +246,7 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
 
         BeanUtil.copyProperties(tExamEditParam, tExam);
         this.updateById(tExam);
+        return CommonResult.ok();
     }
 
     @Transactional(rollbackFor = Exception.class)