Forráskód Böngészése

系统通知(群发模式,选择模式)

wangzhe 4 éve
szülő
commit
23fa5eb94e

+ 3 - 0
leiSP-admin/src/main/java/com/sooka/web/controller/system/SysNoticeController.java

@@ -57,6 +57,9 @@ public class SysNoticeController extends BaseController
     @DataScope(deptAlias = "t")
     public TableDataInfo list(SysNotice notice)
     {
+        //notice.setIsGroupNotice("1");//群发消息
+        SysUser sysUser = userInfoUtil.getLoginUserInfo();
+        notice.setUserId(sysUser.getUserId());
         startPage();
         List<SysNotice> list = noticeService.selectNoticeList(notice);
         return getDataTable(list);

+ 1 - 0
leiSP-system/src/main/java/com/sooka/system/domain/SysNotice.java

@@ -24,6 +24,7 @@ public class SysNotice extends BaseEntity
     private String isGroupNotice;//是否群发 1是 0否 数据库新增字段
     private String globalUserIds;//非数据库新增字段 通知用户集合
     private String globalDeptIds;//非数据库新增字段 通知部门集合
+    private Long userId;//非数据库新增字段 当前登录用户ID
 
     private List depts;
     /**

+ 6 - 6
leiSP-system/src/main/java/com/sooka/system/service/ISysNoticeService.java

@@ -5,14 +5,14 @@ import com.sooka.system.domain.SysNotice;
 
 /**
  * 公告 服务层
- * 
+ *
  * @author lei_wang
  */
 public interface ISysNoticeService
 {
     /**
      * 查询公告信息
-     * 
+     *
      * @param noticeId 公告ID
      * @return 公告信息
      */
@@ -20,7 +20,7 @@ public interface ISysNoticeService
 
     /**
      * 查询公告列表
-     * 
+     *
      * @param notice 公告信息
      * @return 公告集合
      */
@@ -28,7 +28,7 @@ public interface ISysNoticeService
 
     /**
      * 新增公告
-     * 
+     *
      * @param notice 公告信息
      * @return 结果
      */
@@ -36,7 +36,7 @@ public interface ISysNoticeService
 
     /**
      * 修改公告
-     * 
+     *
      * @param notice 公告信息
      * @return 结果
      */
@@ -44,7 +44,7 @@ public interface ISysNoticeService
 
     /**
      * 删除公告信息
-     * 
+     *
      * @param ids 需要删除的数据ID
      * @return 结果
      */

+ 3 - 0
leiSP-system/src/main/resources/mapper/system/SysNoticeMapper.xml

@@ -49,6 +49,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			<if test="createBy != null and createBy != ''">
 				AND create_by like concat('%', #{createBy}, '%')
 			</if>
+            <if test="userId != null and userId != ''">
+                and t.notice_id in (select notice_id from sys_notice_to where user_id = #{userId}) or t.is_group_notice = '1'
+            </if>
 		</where>
         order by create_time desc
     </select>