/*
  * Jika input adalah reception, maka data reception dihari yang sama tidak dihitung
  * namun deletion dan consumption akan dihitung. Tidak berlaku untuk kombinasi lainnya.
  *
  * Sementara, untuk konsumsi, jika time stampnya menunjukan waktu input paling baru, maka bisa di edit
  *
  * Mengembalikan nilai true jika ada entry baru setelah entry yang di input
  *
  * jika true: tidak bisa diedit jumlahnya dan tidak bisa dihapus
  */
 public boolean isAnyNewestItem(GoodsConsumption consumption) {
   return isAnyNewestItem(
       consumption.getConsumptionDate(),
       consumption.getGoods().getIdGoods(),
       StockType.CONSUMPTION,
       consumption.getTimestamp());
 }
  // Untuk menentukan suatu konsumsi merupakan yang terakhir di input
  private boolean isConsumptionNotLastOfTheDay(DateTime day, Goods goods, Date timestamp) {
    Date startDate = day.withMillisOfDay(0).toDate();
    Date endDate = day.withMillisOfDay(day.millisOfDay().getMaximumValue()).toDate();

    List<GoodsConsumption> goodList =
        server
            .find(GoodsConsumption.class)
            .where()
            .between("consumptionDate", startDate, endDate)
            .eq("goods", goods)
            .findList();
    for (GoodsConsumption consumption : goodList) {
      DateTime consumptionTimeStamp = new DateTime(consumption.getTimestamp());
      DateTime currentTimeStamp = new DateTime(timestamp);
      if (consumptionTimeStamp.isAfter(currentTimeStamp)) {
        return true;
      }
    }

    return false;
  }