]> git.mxchange.org Git - jfinancials-core.git/commitdiff
Continued:
authorRoland Häder <roland@mxchange.org>
Fri, 24 Apr 2020 15:02:04 +0000 (17:02 +0200)
committerRoland Häder <roland@mxchange.org>
Fri, 24 Apr 2020 15:02:04 +0000 (17:02 +0200)
- added utilities method copyReceiptItemData()

Signed-off-by: Roland Häder <roland@mxchange.org>
src/org/mxchange/jfinancials/model/receipt_item/ReceiptItems.java

index 3783c02a62f5b29f6fdb729b61eddcf7c00da2ab..9668012743511d784796461495e217aba5939067 100644 (file)
@@ -21,7 +21,7 @@ import java.text.MessageFormat;
 import java.util.Objects;
 
 /**
- * A utilities class for receipts
+ * A utilities class for receipt items
  *
  * @author Roland Häder<roland@mxchange.org>
  */
@@ -32,6 +32,44 @@ public class ReceiptItems implements Serializable {
         */
        private static final long serialVersionUID = 2_867_938_676_165_402L;
 
+       /**
+        * Copies all fields from source entity to target entity. An exception might
+        * be thrown when both instances are the same.
+        * <p>
+        * @param sourceReceiptItem Source receipt item instance
+        * @param targetReceiptItem Target receipt item instance
+        */
+       public static void copyReceiptItemData (final BillableReceiptItem sourceReceiptItem, final BillableReceiptItem targetReceiptItem) {
+               // Check parameter
+               if (null == sourceReceiptItem) {
+                       // Throw NPE
+                       throw new NullPointerException("sourceReceiptItem is null"); //NOI18N
+               } else if (null == targetReceiptItem) {
+                       // Throw NPE
+                       throw new NullPointerException("targetReceiptItem is null"); //NOI18N
+               } else if (Objects.equals(sourceReceiptItem, targetReceiptItem)) {
+                       // Throw IAE
+                       throw new IllegalArgumentException("sourceReceiptItem and targetReceiptItem are the same."); //NOI18N
+               }
+
+               // Copy all fields
+               sourceReceiptItem.setItemBrandName(targetReceiptItem.getItemBrandName());
+               sourceReceiptItem.setItemCouponNumber(targetReceiptItem.getItemCouponNumber());
+               sourceReceiptItem.setItemEntryCreated(targetReceiptItem.getItemEntryCreated());
+               sourceReceiptItem.setItemEntryUpdated(targetReceiptItem.getItemEntryUpdated());
+               sourceReceiptItem.setItemGrossPrice(targetReceiptItem.getItemGrossPrice());
+               sourceReceiptItem.setItemId(targetReceiptItem.getItemId());
+               sourceReceiptItem.setItemIsDiscount(targetReceiptItem.getItemIsDiscount());
+               sourceReceiptItem.setItemIsRefund(targetReceiptItem.getItemIsRefund());
+               sourceReceiptItem.setItemManufacturer(targetReceiptItem.getItemManufacturer());
+               sourceReceiptItem.setItemNetPrice(targetReceiptItem.getItemNetPrice());
+               sourceReceiptItem.setItemNumber(targetReceiptItem.getItemNumber());
+               sourceReceiptItem.setItemProduct(targetReceiptItem.getItemProduct());
+               sourceReceiptItem.setItemProductQuantity(targetReceiptItem.getItemProductQuantity());
+               sourceReceiptItem.setItemReceipt(targetReceiptItem.getItemReceipt());
+               sourceReceiptItem.setItemTaxRate(targetReceiptItem.getItemTaxRate());
+       }
+
        /**
         * Checks if both receipt items are the same by assigned receipt, product
         * and quantity.