0

予約システムに似たページがあります。私のページでは、予約の有効期限が切れているか、検証されているか、使用されているかを検出するメソッドを含む Java クラスをインポートします。
検証済みで使用済みの場合は問題ありませんが、期限切れのもの(使用後に期限切れではありませんが、一定時間後に検証されなかったために期限切れになったもの)については、次の問題を満たしています。

2013 年 11 月 6 日に使用する部屋を予約しましたが、有効ではありません。次に、システムの日付を 15-06-2013 に変更し、Web ページを更新しようとしましたが、ブック エントリが「期限切れ」として更新されません。しかし、Java クラスを実行すると、ブック エントリが更新されました。JSP はシステム日付の変更を認識しませんか?

情報: 私の有効期限は、予約が確認されずに 1 日以上経過した場合です。

編集:ここにいくつかのコードがあります

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
String code, status, count, standard, deluxe, superiors, superiord;
Date dateNow, dateIn, dateOut;
dateNow = cal.getTime();

rs = db.view("select * from booking");
try {
    while (rs.next()) {
        code = rs.getString("code");
        standard = rs.getString("standard");
        deluxe = rs.getString("deluxe");
        superiors = rs.getString("superiors");
        superiord = rs.getString("superiord");
        status = rs.getString("status");
        count = rs.getString("isCount");

        dateIn = dateFormat.parse(rs.getString("datein").toString());
        dateOut = dateFormat.parse(rs.getString("dateout").toString());

        if (dateNow.equals(dateIn)) {  //This is after being validated
            if (status.equalsIgnoreCase("Paid")) {
                if (count.equalsIgnoreCase("False")) {
                    db.insert("update room set standard=standard-" + standard + ", deluxe=deluxe-" + deluxe + ", superiors=superiors-" + superiors + ", superiord=superiord-" + superiord + "");
                    db.insert("update booking set status='Being used', isCount='True' where code='" + code + "'");
                }
            }
        } else if (dateNow.after(dateIn)) {  //This is expired one
            if (status.equalsIgnoreCase("Waiting")) {
                db.insert("delete from booking where code='" + code + "'");
            }
        } else if (dateNow.after(dateOut)) {  //This is after being used or finished
            if (status.equalsIgnoreCase("Dipakai")) {
                db.insert("update kamar set standard=standard+" + standard + ", deluxe=deluxe+" + deluxe + ", superiors=superiors+" + superiors + ", superiord=superiord+" + superiord);
                db.insert("update pesan set status='Selesai' where code='" + code + "'");
            }
        }
    }
} catch (Exception e) {
}

システムの日付を未来に変更した後、(有効期限が切れた) 場合、私のページは秒を読み取ることができません。

4

1 に答える 1