Commit 6ea651d4 authored by 刘可心's avatar 刘可心

标记为已读

parent ebe4b2d6
......@@ -115,4 +115,13 @@ public class MessageController extends Controller {
}
/**
* LiuKexin 20210402 批量标记为已读,且将通知性消息标为已读,下载或跳转的消息不批量已读
*/
public void allMsgReaded() {
String username = this.getAttr("username");
Ret allMsgReaded = messageService.allMsgReaded(username);
renderJson(allMsgReaded);
}
}
......@@ -7,6 +7,7 @@ import org.apache.log4j.Logger;
import com.archser.aserver.model.Message;
import com.archser.aserver.websocket.MessageRefreshTrigger;
import com.jfinal.kit.Kv;
import com.jfinal.kit.Ret;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Page;
import com.jfinal.plugin.activerecord.Record;
......@@ -175,6 +176,27 @@ public class MessageService {
return true;
}
/**
* LiuKexin 20210402 批量标记为已读,且将通知性消息标为已读,下载或跳转的消息不批量已读
*/
public Ret allMsgReaded(String username) {
try {
Integer userId = Db.queryInt(Db.getSql("getUserId"), username);
List<Record> getUnReadMsg = Db.find(Db.getSqlPara("message.getMessageInUnread", Kv.by("send_to_id", userId)));
if(getUnReadMsg.size() == 0) {
return Ret.fail("msg", "暂没有未读消息");
}
for (Record readMsg : getUnReadMsg) {
if(readMsg.getStr("path") == null || "".equals(readMsg.getStr("path"))) {
Db.update(Db.getSqlPara("message.markRead", Kv.by("id", readMsg.getStr("id"))));
}
}
return Ret.ok("msg", "已将通知性消息全部标记为已读");
} catch (Exception e) {
return Ret.fail("msg", "批量标为已读失败");
}
}
}
#namespace("message")
#sql("getMessageInUnread")
select t.id, t.sender_id,t.send_to_id,t.title,t.content,t.system_id,
t.path,t.params,t.operate,t.read,t.send_time,
su.name as sender, ru.name as receive, asys.title as system
from as_message t
left join as_user su
on su.id = t.sender_id
left join as_user ru
on ru.id = t.send_to_id
left join as_system asys
on asys.id = t.system_id
where t.send_to_id = #para(send_to_id) and read is null
order by id desc
#end
#sql("getMessagePageData")
select t.id, t.sender_id,t.send_to_id,t.title,t.content,t.system_id,
t.path,t.params,t.operate,t.read,t.send_time,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment