Как поставить инкрементный номер счета в DatabaseReference - PullRequest
0 голосов
/ 04 ноября 2019

Я создаю счет-фактуру с номерами приращений, начинающимися с # 1 # 2 # 3 ...., но я не знаю, с чего начать. Вот структура, которую я хочу иметь:

Invoice#1
|- info...
Invoice#2
|- info...
Invoice#3
|- info...
DatabaseReference ref 
 = FirebaseDatabase.getInstance().getReference().child("Invoice#" {increment}); //how to put increment here? if I declare i=1 in myActivity.java, it only runs in one

, и это является частью модели счета-фактуры, которую я имею

public class Invoice {
    String buyer, seller, typeOfPymt;
    int total;
    String billdate;
    int invoice_num;
    int discount;
    int tax;
    int grand_total;


    public Invoice(String buyer, String seller, int grand_total, String billdate, int invoice_num, int discount) {
        this.buyer = buyer;
        this.seller = seller;
        this.billdate = billdate;
        this.invoice_num = invoice_num;
        this.discount = discount;
        this.grand_total = grand_total;
    }

Как я могу добавить приращения внутри модели?

1 Ответ

0 голосов
/ 04 ноября 2019

Нет способа передать аргумент «приращения» в метод child(), который поможет вам прочитать последний номер счета и сгенерировать новый увеличенный номер.

В вашей базе данных более подходящийподход будет заключаться в использовании в качестве ключа вашего счета-фактуры случайного ключа, который генерируется методом push () и , а не этими увеличивающимися голосовыми номерами. Основная причина - масштабируемость, как объясняет @FrankvanPuffelen в следующем посте:

Используя вышеуказанный подход, номер вашего счета станет свойством в вашем объекте счета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...