From: Roland Häder <roland@mxchange.org>
Date: Fri, 24 Apr 2020 14:09:11 +0000 (+0200)
Subject: Don't cherry-pick:
X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=998c403e027bd97c13a929c5a7f8dd1913554e1a;p=jfinancials-core.git

Don't cherry-pick:
- renamed property itemCreated -> itemEntryCreated
- added itemEntryUpdated property
- added checked ReceiptItemNotFoundException

Signed-off-by: Roland Häder <roland@mxchange.org>
---

diff --git a/src/org/mxchange/jfinancials/exceptions/receipt/ReceiptNotFoundException.java b/src/org/mxchange/jfinancials/exceptions/receipt/ReceiptNotFoundException.java
index 3881c65..89d1f4e 100644
--- a/src/org/mxchange/jfinancials/exceptions/receipt/ReceiptNotFoundException.java
+++ b/src/org/mxchange/jfinancials/exceptions/receipt/ReceiptNotFoundException.java
@@ -39,9 +39,9 @@ public class ReceiptNotFoundException extends Exception {
 	}
 
 	/**
-	 * Constructor with receipt primary key
+	 * Constructor with receipt's primary key
 	 * <p>
-	 * @param receiptId Receipt primary key
+	 * @param receiptId Receipt's primary key
 	 */
 	public ReceiptNotFoundException (final Long receiptId) {
 		// Call super constructor
diff --git a/src/org/mxchange/jfinancials/exceptions/receipt_item/ReceiptItemNotFoundException.java b/src/org/mxchange/jfinancials/exceptions/receipt_item/ReceiptItemNotFoundException.java
new file mode 100644
index 0000000..6463489
--- /dev/null
+++ b/src/org/mxchange/jfinancials/exceptions/receipt_item/ReceiptItemNotFoundException.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2017 - 2020 Free Software Foundation
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jfinancials.exceptions.receipt_item;
+
+import java.text.MessageFormat;
+import org.mxchange.jfinancials.model.receipt_item.BillableReceiptItem;
+
+/**
+ * This exception is thrown when a receipt item was not found.
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+public class ReceiptItemNotFoundException extends Exception {
+
+	/**
+	 * Serial number
+	 */
+	private static final long serialVersionUID = 19_065_867_127_647_626L;
+
+	/**
+	 * Default constructor
+	 */
+	public ReceiptItemNotFoundException () {
+		super();
+	}
+
+	/**
+	 * Constructor with receipt item's primary key
+	 * <p>
+	 * @param receiptItemId Receipt item's primary key
+	 */
+	public ReceiptItemNotFoundException (final Long receiptItemId) {
+		// Call super constructor
+		super(MessageFormat.format("Receipt item with id {0} was not found.", receiptItemId));
+	}
+
+	/**
+	 * Constructor with receipt instance
+	 * <p>
+	 * @param receiptItem Receipt instance
+	 */
+	public ReceiptItemNotFoundException (final BillableReceiptItem receiptItem) {
+		// Invoke other contructor
+		this(receiptItem.getItemId());
+	}
+
+}
diff --git a/src/org/mxchange/jfinancials/model/receipt_item/BillableReceiptItem.java b/src/org/mxchange/jfinancials/model/receipt_item/BillableReceiptItem.java
index 4425e0e..5a8d38b 100644
--- a/src/org/mxchange/jfinancials/model/receipt_item/BillableReceiptItem.java
+++ b/src/org/mxchange/jfinancials/model/receipt_item/BillableReceiptItem.java
@@ -30,20 +30,6 @@ import org.mxchange.jproduct.model.product.Product;
  */
 public interface BillableReceiptItem extends Comparable<BillableReceiptItem>, Serializable {
 
-	/**
-	 * Getter when this receipt item has been created in database
-	 * <p>
-	 * @return When this item has been created
-	 */
-	Date getItemCreated ();
-
-	/**
-	 * Setter when this receipt item has been created in database
-	 * <p>
-	 * @param itemCreated When this item has been created
-	 */
-	void setItemCreated (final Date itemCreated);
-
 	/**
 	 * Getter for primary key
 	 * <p>
@@ -227,6 +213,34 @@ public interface BillableReceiptItem extends Comparable<BillableReceiptItem>, Se
 	 */
 	void setItemCouponNumber (final String itemCouponNumber);
 
+	/**
+	 * Getter when this receipt item has been created in database
+	 * <p>
+	 * @return When this item has been created
+	 */
+	Date getItemEntryCreated ();
+
+	/**
+	 * Setter when this receipt item has been updated in database
+	 * <p>
+	 * @param itemEntryCreated When this item has been updated
+	 */
+	void setItemEntryCreated (final Date itemEntryCreated);
+
+	/**
+	 * Getter when this receipt item has been updated in database
+	 * <p>
+	 * @return When this item has been updated
+	 */
+	Date getItemEntryUpdated ();
+
+	/**
+	 * Setter when this receipt item has been updated in database
+	 * <p>
+	 * @param itemEntryUpdated When this item has been updated
+	 */
+	void setItemEntryUpdated (final Date itemEntryUpdated);
+
 	@Override
 	boolean equals (final Object object);
 
diff --git a/src/org/mxchange/jfinancials/model/receipt_item/FinancialReceiptItem.java b/src/org/mxchange/jfinancials/model/receipt_item/FinancialReceiptItem.java
index f7eb6f9..31d2d85 100644
--- a/src/org/mxchange/jfinancials/model/receipt_item/FinancialReceiptItem.java
+++ b/src/org/mxchange/jfinancials/model/receipt_item/FinancialReceiptItem.java
@@ -88,8 +88,15 @@ public class FinancialReceiptItem implements BillableReceiptItem {
 	 */
 	@Basic (optional = false)
 	@Temporal (TemporalType.TIMESTAMP)
-	@Column (name = "item_created", nullable = false)
-	private Date itemCreated;
+	@Column (name = "item_entry_created", updatable = false, nullable = false)
+	private Date itemEntryCreated;
+
+	/**
+	 * When this item has been updated
+	 */
+	@Temporal (TemporalType.TIMESTAMP)
+	@Column (name = "item_entry_updated", insertable = false, nullable = false)
+	private Date itemEntryUpdated;
 
 	/**
 	 * Gross price of item
@@ -280,14 +287,26 @@ public class FinancialReceiptItem implements BillableReceiptItem {
 
 	@Override
 	@SuppressWarnings ("ReturnOfDateField")
-	public Date getItemCreated () {
-		return this.itemCreated;
+	public Date getItemEntryCreated () {
+		return this.itemEntryCreated;
+	}
+
+	@Override
+	@SuppressWarnings ("AssignmentToDateFieldFromParameter")
+	public void setItemEntryCreated (final Date itemEntryCreated) {
+		this.itemEntryCreated = itemEntryCreated;
+	}
+
+	@Override
+	@SuppressWarnings ("ReturnOfDateField")
+	public Date getItemEntryUpdated () {
+		return this.itemEntryUpdated;
 	}
 
 	@Override
 	@SuppressWarnings ("AssignmentToDateFieldFromParameter")
-	public void setItemCreated (final Date itemCreated) {
-		this.itemCreated = itemCreated;
+	public void setItemEntryUpdated (final Date itemEntryUpdated) {
+		this.itemEntryUpdated = itemEntryUpdated;
 	}
 
 	@Override