当前位置: 首页 > 知识库问答 >
问题:

Joda LocalDate-如何检查事件是否已经过了24小时

柴砚文
2023-03-14

描述:我正在为客户制作一个可以记录库存的移动应用程序,但两个库存记录不能在24小时内发生。

方法:在流程结束时,我将库存和日期作为字符串存储在Firestore上,格式为“dd/MM/yyyy hh:MM:ss”。

data class PastInventoryItem(
var username: String = "",
var date: String = "",
var countedquantity: ArrayList<Material> = arrayListOf()) : FireStoreData()
private boolean checkIf24HourReached() {
    db.collection("Project").document(Prefs.getString("ManageID",
            GlobalObject.FIRESTORE_ID))
            .collection("inventoryMode")
            .document(GlobalObject.INVENTORY_MODE_ID)
            .get()
            .addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
                @Override
                public void onSuccess(DocumentSnapshot documentSnapshot) {
                    PastInventoryItem pastInventoryItem = documentSnapshot.toObject(PastInventoryItem.class);
                    if(pastInventoryItem.getDate().isEmpty()){
                        proceedWithInventoryMode();
                    }

                    LocalDateTime date = new LocalDateTime(pastInventoryItem.getDate());
                    Date today = DateFormat.getDateTimeInstance().getCalendar().getTime();

                    Date twentyfourhoursbefore = DateFormat.getDateTimeInstance().getCalendar().getTime();
                    twentyfourhoursbefore.setTime(twentyfourhoursbefore.getTime() - (24 * 60 * 60 * 1000));

                    return !(date.after(twentyfourhoursbefore) && date.before(today));
                }
            });

}

问题:此代码无法编译,因为“后”和“前”方法来自Java。Util。日期。有没有办法获取字符串并检查自LocalDate值以来是否已经过了24小时?

共有1个答案

白翔
2023-03-14

在LocalDateTime类中,这样的方法名称是isBy和isBeer,但您不能使用Date类对象作为方法参数。您必须使用LocalDate或LocalDateTime对象。下面是LocalDateTime类的方法片段,用于您的参考-

public boolean isAfter(ChronoLocalDateTime<?> other) {
    if (other instanceof LocalDateTime) {
        return compareTo0((LocalDateTime) other) > 0;
    }
    return ChronoLocalDateTime.super.isAfter(other);
}
 类似资料:
  • 问题内容: 我有以下方法: 我想知道是否已经过去了24个小时,如何在Python中做到这一点? 问题答案: 是一个简单的datetime对象,表示UTC时间: 如果是本地时间(天真的(时区未知)日期时间对象): 如果是不明确的时间,例如DST转换结束时的时间(在许多时区中,一年一次),则有五十五十次机会返回错误的结果(例如,偏离一小时)。 如果库没有在给定平台上使用历史时区数据库,并且本地时区的U

  • 问题内容: 我有一个名为Person的表,一个名为ID的列,如何检查ID是否已经是FOREIGN KEY,原因是我想使用以下代码进行修改: 但是如果ID已经是FOREIGN KEY,则由于有两个级联的情况,它给我以下错误“可能导致循环或多个级联路径” …如何检查此字段是否为FOREIGN KEY以避免此错误? 问题答案: 您想看一下视图 虽然还不如应有的完整。这是您想要的最终查询: 浏览此处获取更

  • 问题内容: 我正在尝试检查是否已使用PDO注册了电子邮件,但是到目前为止,我还没有找到一种很好的方法来进行此操作。到目前为止,这就是我所拥有的。如果有帮助,则连接变量为“ $ con”。另外,我是否需要在同一文档中使用连接变量,还是在包含的文档中使用它? 问题答案: 尝试此操作,使用您的连接凭据填写DB_NAME,DB_USER_NAME和DB_USER_PASS,或者如果所有内容都正确地设置为P

  • 问题内容: 我需要编写一个自定义的批处理文件重命名器。我已经完成了大部分工作,除了我不知道如何检查文件是否已经打开。我只是在使用软件包,并且有一种方法,但是似乎无法测试该文件是否正在被另一个程序使用。关于如何进行这项工作的任何想法? 问题答案: 使用Apache Commons IO库…

  • 如果文档ID不存在,我想将数据添加到firestore数据库中。到目前为止,我一直在尝试: 目标是检查数据库中的所有文档ID,并查看与“varuId”变量的任何匹配。如果匹配,则不会创建文档。如果不匹配,它应该创建一个新文档