|
@@ -16,7 +16,7 @@ class PersonchatService extends CrudService {
|
|
|
assert(content, '缺少发言内容');
|
|
|
assert(receiver_id, '缺少接收人信息');
|
|
|
assert(personroom_id, '缺少聊天房间信息');
|
|
|
- const send_time = moment().format("YYYY-MM-DD HH:mm:ss");
|
|
|
+ const send_time = moment().format('YYYY-MM-DD HH:mm:ss');
|
|
|
const res = await this.model.create({
|
|
|
sender_id,
|
|
|
sender_name,
|
|
@@ -53,6 +53,32 @@ class PersonchatService extends CrudService {
|
|
|
}
|
|
|
return res;
|
|
|
}
|
|
|
+
|
|
|
+ async received(data) {
|
|
|
+ const { ids, sender_id, receiver_id, personroom_id } = data;
|
|
|
+ for (const id of ids) {
|
|
|
+ const chat = await this.model.findById(id);
|
|
|
+ chat.status = '1';
|
|
|
+ await chat.save();
|
|
|
+ }
|
|
|
+ const { mq } = this.ctx;
|
|
|
+ if (mq) {
|
|
|
+ const exchange = 'person_chat';
|
|
|
+ const parm = {
|
|
|
+ durable: true,
|
|
|
+ headers: {
|
|
|
+ sender_id,
|
|
|
+ receiver_id,
|
|
|
+ },
|
|
|
+ };
|
|
|
+ await mq.topic(
|
|
|
+ exchange,
|
|
|
+ personroom_id + '_' + receiver_id,
|
|
|
+ '消息已查收',
|
|
|
+ parm
|
|
|
+ );
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
module.exports = PersonchatService;
|