17
17
* limitations under the License.
18
18
* #L%
19
19
*/
20
+
20
21
package org .broadleafcommerce .core .catalog .domain ;
21
22
22
23
import org .broadleafcommerce .common .copy .MultiTenantCloneable ;
23
24
import org .broadleafcommerce .common .media .domain .Media ;
25
+ import org .broadleafcommerce .common .money .Money ;
24
26
import org .broadleafcommerce .common .vendor .service .type .ContainerShapeType ;
25
27
import org .broadleafcommerce .common .vendor .service .type .ContainerSizeType ;
26
28
@@ -183,7 +185,7 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
183
185
* @return a boolean indicates if the product is active.
184
186
*/
185
187
public boolean isActive ();
186
-
188
+
187
189
/**
188
190
* Gets the default {@link Sku} associated with this Product. A Product is
189
191
* required to have a default Sku which holds specific information about the Product
@@ -210,7 +212,7 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
210
212
* @param defaultSku - the Sku that should be the default for this Product
211
213
*/
212
214
public void setDefaultSku (Sku defaultSku );
213
-
215
+
214
216
/**
215
217
* @return whether or not the default sku can be used for a multi-sku product in the case that no
216
218
* product options are set. Defaults to false if not specified. Note that this only affects multi-sku
@@ -273,7 +275,7 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
273
275
* @return all the Skus associated to this Product
274
276
*/
275
277
public List <Sku > getAllSkus ();
276
-
278
+
277
279
/**
278
280
* Gets the media for this product. This serves as a pass-through to
279
281
* the {@link getDefaultSku()} media
@@ -314,7 +316,7 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
314
316
* @param category
315
317
*/
316
318
public void setCategory (Category category );
317
-
319
+
318
320
/**
319
321
* Returns the default {@link Category} this product is associated with. This method will delegate to
320
322
* {@link #getCategory()} by default, unless the "use.legacy.default.category.mode" property is set to
@@ -361,7 +363,7 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
361
363
* @param manufacturer
362
364
*/
363
365
public void setManufacturer (String manufacturer );
364
-
366
+
365
367
/**
366
368
* Returns the {@link Dimension} for this product
367
369
* <br />
@@ -456,7 +458,7 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
456
458
* @param depth
457
459
*/
458
460
public void setDepth (BigDecimal depth );
459
-
461
+
460
462
/**
461
463
* Gets the dimension girth
462
464
* <br />
@@ -467,7 +469,7 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
467
469
* @return the dimension girth
468
470
*/
469
471
public BigDecimal getGirth ();
470
-
472
+
471
473
/**
472
474
* Sets the dimension girth
473
475
* <br />
@@ -687,12 +689,12 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
687
689
* @param overrideGeneratedUrl
688
690
*/
689
691
public void setOverrideGeneratedUrl (Boolean overrideGeneratedUrl );
690
-
692
+
691
693
/**
692
694
* Sets a url-fragment. By default, the system will attempt to create a unique url-fragment for
693
695
* this product by taking the {@link Product.getName()} and removing special characters and replacing
694
696
* dashes with spaces.
695
- */
697
+ */
696
698
public String getUrlKey ();
697
699
698
700
/**
@@ -716,21 +718,21 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
716
718
* @param displayTemplate
717
719
*/
718
720
public void setDisplayTemplate (String displayTemplate );
719
-
721
+
720
722
/**
721
723
* Generates a URL that can be used to access the product.
722
724
* Builds the url by combining the url of the default category with the getUrlKey() of this product.
723
725
*/
724
726
public String getGeneratedUrl ();
725
-
727
+
726
728
/**
727
729
* Returns a list of the cross sale products for this product as well
728
730
* all cross sale products in all parent categories of this product.
729
731
*
730
732
* @return the cumulative cross sale products
731
733
*/
732
734
public List <RelatedProduct > getCumulativeCrossSaleProducts ();
733
-
735
+
734
736
/**
735
737
* Returns a list of the upsale products for this product as well as
736
738
* all upsale products in all parent categories of this product.
@@ -783,4 +785,17 @@ public interface Product extends Serializable, MultiTenantCloneable<Product> {
783
785
* @param taxCode
784
786
*/
785
787
public void setTaxCode (String taxCode );
788
+
789
+ /**
790
+ * added just for convenience, references to defaultSku.retailPrice
791
+ * @return
792
+ */
793
+ public Money getRetailPrice ();
794
+
795
+ /**
796
+ * added just for convenience, references defaultSku.retailPrice
797
+ * @return
798
+ */
799
+ public Money getSalePrice ();
800
+
786
801
}
0 commit comments