package cn.iocoder.yudao.module.bpm.service.oa;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.module.bpm.controller.admin.oa.vo.OaNoticePageReqVO;
|
import cn.iocoder.yudao.module.bpm.controller.admin.oa.vo.OaNoticeSaveReqVO;
|
import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.OaNoticeDO;
|
|
/**
|
* OA 通知公告 Service 接口
|
*/
|
public interface OaNoticeService {
|
|
/**
|
* 创建通知公告
|
*
|
* @param userId 当前用户ID
|
* @param createReqVO 创建请求
|
* @return 通知公告ID
|
*/
|
Long createNotice(Long userId, OaNoticeSaveReqVO createReqVO);
|
|
/**
|
* 更新通知公告
|
*
|
* @param updateReqVO 更新请求
|
*/
|
void updateNotice(OaNoticeSaveReqVO updateReqVO);
|
|
/**
|
* 删除通知公告
|
*
|
* @param id 编号
|
*/
|
void deleteNotice(Long id);
|
|
/**
|
* 获得通知公告分页列表(按可见性过滤)
|
*
|
* @param userId 当前用户ID
|
* @param reqVO 分页条件
|
* @return 分页列表
|
*/
|
PageResult<OaNoticeDO> getNoticePage(Long userId, OaNoticePageReqVO reqVO);
|
|
/**
|
* 获得通知公告详情(同时标记已读)
|
*
|
* @param id 编号
|
* @param userId 当前用户ID
|
* @return 通知公告
|
*/
|
OaNoticeDO getNotice(Long id, Long userId);
|
|
/**
|
* 获取当前用户未读通知公告数量
|
*
|
* @param userId 当前用户ID
|
* @return 未读数量
|
*/
|
Long getUnreadCount(Long userId);
|
|
}
|