package cn.com.lzt.message.data.dao; import cn.com.lzt.message.data.dto.MessageStatisReceiveDto; import cn.com.lzt.message.data.dto.MessageStatisSendDto; import cn.com.lzt.message.personal.entity.MPersonalMessageEntity; import org.jeecgframework.minidao.annotation.Arguments; import org.jeecgframework.minidao.annotation.MiniDao; import org.jeecgframework.minidao.annotation.ResultType; import org.jeecgframework.minidao.pojo.MiniDaoPage; import org.jeecgframework.web.system.pojo.base.TSDepart; import org.jeecgframework.web.system.pojo.base.TSUser; import java.util.List; import java.util.Map; /** * 消息数据 * */ @MiniDao public interface MessageDataDao { /** * 查询所有未离职员工 */ @ResultType(TSUser.class) public List getAllUser(); /** * 查询id对应员工 */ @Arguments({"userList"}) @ResultType(TSUser.class) public List getUserByIds(List userList); /** * 查询角色员工 */ @Arguments({"roleList"}) @ResultType(TSUser.class) public List getRoleUser(List roleList); /** * 查询分组员工 */ @Arguments({"groupList"}) @ResultType(TSUser.class) public List getRegularGroupUser(List groupList); /** * 查询部门员工 */ @Arguments({"depList"}) @ResultType(TSUser.class) public List getDepUser(List depList); /** * 查询部门 */ @Arguments({"departName"}) @ResultType(TSDepart.class) public List getDepart(String departName); /** * 查询用户部门 */ @Arguments({"userId"}) @ResultType(TSDepart.class) public TSDepart getUserDep(String userId); /** *接收统计 * @param title 标题 * @return */ @Arguments({"title","startTime","endTime"}) @ResultType(MessageStatisReceiveDto.class) public List statisReceive(String title, String startTime, String endTime); /** * 发送统计 ,按类型分组 * @param noticeType * @param startTime * @param endTime * @return */ @Arguments({"noticeType","startTime","endTime"}) @ResultType(MessageStatisSendDto.class) public List statisSendGroupBySendType(String noticeType,String startTime,String endTime); /** * 发送统计 ,按部门分组 */ @Arguments({"depName","startTime","endTime"}) @ResultType(MessageStatisSendDto.class) public List statisSendGroupByDep(String depName, String startTime, String endTime); /** * 发送统计 ,按用户分组 */ @Arguments({"realname","startTime","endTime"}) @ResultType(MessageStatisSendDto.class) public List statisSendGroupByUser(String realname, String startTime, String endTime); /** *发送者查看发送统计 * @param messageId * @return */ @Arguments({"messageId","page","rows"}) public MiniDaoPage> messageUserSendLogView(String messageId, Integer page, Integer rows); @Arguments({"userId","noticeType","isRead","page","rows"}) @ResultType(MPersonalMessageEntity.class) public MiniDaoPage getUserMessage(String userId, String noticeType, Integer isRead,Integer page, Integer rows); }