Вычтите два значения с другим путем в базе данных реального времени и сохраните результат в другом пути - PullRequest
0 голосов
/ 31 марта 2019

Я хочу вычесть два значения из разных путей базы данных и сохранить результат в базе данных.Это должно быть сделано для каждой группы (например, 1551406426951) всех пользователей в каждой группе (например, n8pn ... r1).

Затем сохраните счет, как показано в дереве базы данных.Пример кода был бы очень полезен.


totalMessages - readMessages = count 30 - 17 = 13

сохранить счетчик в каждом userId-пути (структура s)

Структура выглядит следующим образом:

groupId1
  totalMessages
  userId1
    readMessages
    count<-save here
  userId2
    readMessages
    count<-save here
  ...
groupId2
  totalMessages
  userId1
    readMessages
    count<-save here
  userId2
    readMessages
    count<-save here
  ...

enter image description here


Код прилагается.Он пишет 'count' под правильным userId, но это то же значение, что и 'readMessages'.Я пытаюсь получить const 'test', чтобы вычесть из него readMessages.Но не уверен, как построить вычитание.

     exports.readMessages = functions.database.ref('messageCounter/{groupid}/{userid}/readMessages/')
.onWrite((change, context) => {

const group = context.params.groupid;
const user = context.params.userid;
const readMessages = change.after.val();
  console.log('Uppercasing', context.params.groupid, readMessages);

const test = functions.database.ref('messageCounter/{groupid}/totalMessages')

  return admin.database().ref('messageCounter/'+group+'/'+user).child('count').set(readMessages);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...