Package org.compiere.model
Class MDiscountSchema
java.lang.Object
org.compiere.model.PO
org.compiere.model.X_M_DiscountSchema
org.compiere.model.MDiscountSchema
- All Implemented Interfaces:
Serializable,Cloneable,Comparator<Object>,I_M_DiscountSchema,I_Persistent,Evaluatee,ImmutablePOSupport
Discount Schema Model
- Version:
- $Id: MDiscountSchema.java,v 1.3 2006/07/30 00:51:04 jjanke Exp $
- Author:
- Jorg Janke
- See Also:
-
Field Summary
Fields inherited from class org.compiere.model.X_M_DiscountSchema
CUMULATIVELEVEL_AD_Reference_ID, CUMULATIVELEVEL_Line, DISCOUNTTYPE_AD_Reference_ID, DISCOUNTTYPE_Breaks, DISCOUNTTYPE_FlatPercent, DISCOUNTTYPE_Formula, DISCOUNTTYPE_PricelistFields inherited from class org.compiere.model.PO
ACCESSLEVEL_ALL, ACCESSLEVEL_CLIENT, ACCESSLEVEL_CLIENTORG, ACCESSLEVEL_ORG, ACCESSLEVEL_SYSTEM, ACCESSLEVEL_SYSTEMCLIENT, ENTITYTYPE_Dictionary, ENTITYTYPE_UserMaintained, I_ZERO, LOCAL_TRX_PREFIX, log, p_ctx, p_info, UUID_NEW_RECORD, XML_ATTRIBUTE_AD_Table_ID, XML_ATTRIBUTE_Record_IDFields inherited from interface org.compiere.model.I_M_DiscountSchema
accessLevel, COLUMNNAME_AD_Client_ID, COLUMNNAME_AD_Org_ID, COLUMNNAME_Created, COLUMNNAME_CreatedBy, COLUMNNAME_CumulativeLevel, COLUMNNAME_Description, COLUMNNAME_DiscountType, COLUMNNAME_FlatDiscount, COLUMNNAME_IsActive, COLUMNNAME_IsBPartnerFlatDiscount, COLUMNNAME_IsQuantityBased, COLUMNNAME_M_DiscountSchema_ID, COLUMNNAME_M_DiscountSchema_UU, COLUMNNAME_Name, COLUMNNAME_Processing, COLUMNNAME_Script, COLUMNNAME_Updated, COLUMNNAME_UpdatedBy, COLUMNNAME_ValidFrom, Model, Table_ID, Table_Name -
Constructor Summary
ConstructorsConstructorDescriptionMDiscountSchema(Properties ctx, int M_DiscountSchema_ID, String trxName) Standard ConstructorMDiscountSchema(Properties ctx, String M_DiscountSchema_UU, String trxName) UUID based ConstructorMDiscountSchema(Properties ctx, ResultSet rs, String trxName) Load ConstructorMDiscountSchema(Properties ctx, MDiscountSchema copy) Copy constructorMDiscountSchema(Properties ctx, MDiscountSchema copy, String trxName) Copy constructorCopy constructor -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanbeforeSave(boolean newRecord) Called before Save for Pre-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.calculateDiscount(BigDecimal Qty, BigDecimal Price, int M_Product_ID, int M_Product_Category_ID, BigDecimal BPartnerFlatDiscount) Calculate Discount Percentagestatic BigDecimalcalculateDiscountedPrice(BigDecimal price, BigDecimal discount) Calculate discounted pricecalculatePrice(BigDecimal Qty, BigDecimal Price, int M_Product_ID, int M_Product_Category_ID, BigDecimal BPartnerFlatDiscount) Calculate Discounted Pricestatic MDiscountSchemaget(int M_DiscountSchema_ID) Get Discount Schema from Cache (immutable)static MDiscountSchemaget(Properties ctx, int M_DiscountSchema_ID) Get Discount Schema from Cache (immutable)getBreaks(boolean reload) Get BreaksgetLines(boolean reload) Get Linesmark PO as immutableintreSeq()Renumber SeqNoMethods inherited from class org.compiere.model.X_M_DiscountSchema
get_AccessLevel, getCumulativeLevel, getDescription, getDiscountType, getFlatDiscount, getKeyNamePair, getM_DiscountSchema_ID, getM_DiscountSchema_UU, getName, getScript, getValidFrom, initPO, isBPartnerFlatDiscount, isProcessing, isQuantityBased, setCumulativeLevel, setDescription, setDiscountType, setFlatDiscount, setIsBPartnerFlatDiscount, setIsQuantityBased, setM_DiscountSchema_ID, setM_DiscountSchema_UU, setName, setProcessing, setScript, setValidFrom, toStringMethods inherited from class org.compiere.model.PO
afterDelete, afterSave, beforeDelete, buildInsertSQL, checkImmutable, clearCrossTenantSafe, clone, columnExists, columnExists, compare, copyPO, copyValues, copyValues, createAttachment, delete, delete, delete_Accounting, delete_Tree, deleteEx, deleteEx, dump, dump, equals, get_Attribute, get_Attributes, get_ColumnCount, get_ColumnDescription, get_ColumnDisplayType, get_ColumnIndex, get_ColumnLabel, get_ColumnLookup, get_ColumnName, get_DisplayValue, get_HashMap, get_ID, get_IDOld, get_KeyColumns, get_Logger, get_OptimisticLockingColumns, get_Table_ID, get_TableAttribute, get_TableAttributeAsBoolean, get_TableAttributeAsInt, get_TableAttributes, get_TableName, get_Translation, get_Translation, get_Translation, get_Translation, get_Translation, get_TrxName, get_UUID, get_Value, get_Value, get_ValueAsBoolean, get_ValueAsInt, get_ValueAsInt, get_ValueAsString, get_ValueAsString, get_ValueDifference, get_ValueDifference, get_ValueE, get_ValueOfColumn, get_ValueOld, get_ValueOld, get_ValueOldAsInt, get_WhereClause, get_WhereClause, get_xmlDocument, get_xmlString, getAD_Client_ID, getAD_Org_ID, getAllIDs, getAttachment, getAttachment, getAttachmentData, getCreated, getCreatedBy, getCtx, getDoc, getFindParameter, getPdfAttachment, getUpdated, getUpdatedBy, getUUIDColumnName, getUUIDColumnName, hashCode, insert_Accounting, insert_Tree, insert_Tree, is_Changed, is_Immutable, is_new, is_UseOptimisticLocking, is_ValueChanged, is_ValueChanged, isActive, isAttachment, isColumnMandatory, isColumnUpdateable, isMandatoryOK, isPdfAttachment, isReplication, load, load, load, load, loadByUU, loadComplete, loadDefaults, loadPO, loadSpecial, lock, makeImmutable, postDelete, retrieveIdOfParentValue, retrieveIdOfParentValue, save, save, saveCrossTenantSafe, saveCrossTenantSafeEx, saveCrossTenantSafeEx, saveEx, saveEx, saveNew_afterSetID, saveNew_getID, saveNewSpecial, saveReplica, saveUpdate, set_Attribute, set_ColumnUpdateable, set_CustomColumn, set_CustomColumnReturningBoolean, set_OptimisticLockingColumns, set_TrxName, set_TrxName, set_UseOptimisticLocking, set_Value, set_Value, set_Value, set_Value, set_ValueE, set_ValueNoCheck, set_ValueNoCheckE, set_ValueOfColumn, set_ValueOfColumn, set_ValueOfColumnReturningBoolean, set_ValueOfColumnReturningBoolean, setAD_Client_ID, setAD_Org_ID, setClientOrg, setClientOrg, setCrossTenantSafe, setDoc, setDocWorkflowMgr, setIsActive, setProcessedOn, setReplication, setStandardDefaults, setUpdateable, setUpdatedBy, toInsertSQL, unlock, update_Tree, validForeignKeys, validForeignKeysExMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Comparator
reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLongMethods inherited from interface org.compiere.model.I_M_DiscountSchema
getAD_Client_ID, getAD_Org_ID, getCreated, getCreatedBy, getUpdated, getUpdatedBy, isActive, setAD_Org_ID, setIsActiveMethods inherited from interface org.compiere.model.I_Persistent
save
-
Constructor Details
-
MDiscountSchema
UUID based Constructor- Parameters:
ctx- ContextM_DiscountSchema_UU- UUID keytrxName- Transaction
-
MDiscountSchema
Standard Constructor- Parameters:
ctx- contextM_DiscountSchema_ID- idtrxName- transaction
-
MDiscountSchema
Load Constructor- Parameters:
ctx- contextrs- result settrxName- transaction
-
MDiscountSchema
Copy constructor- Parameters:
copy-
-
MDiscountSchema
Copy constructor- Parameters:
ctx-copy-
-
MDiscountSchema
Copy constructor- Parameters:
ctx-copy-trxName-
-
-
Method Details
-
get
Get Discount Schema from Cache (immutable)- Parameters:
M_DiscountSchema_ID- id- Returns:
- MDiscountSchema
-
get
Get Discount Schema from Cache (immutable)- Parameters:
ctx- contextM_DiscountSchema_ID- id- Returns:
- MDiscountSchema
-
getBreaks
Get Breaks- Parameters:
reload- true to reload from DB- Returns:
- breaks
-
getLines
Get Lines- Parameters:
reload- reload- Returns:
- lines
-
calculatePrice
public BigDecimal calculatePrice(BigDecimal Qty, BigDecimal Price, int M_Product_ID, int M_Product_Category_ID, BigDecimal BPartnerFlatDiscount) Calculate Discounted Price- Parameters:
Qty- quantityPrice- priceM_Product_ID- productM_Product_Category_ID- categoryBPartnerFlatDiscount- flat discount- Returns:
- Discounted Price
-
calculateDiscountedPrice
Calculate discounted price- Parameters:
price- input pricediscount- discount percentage, for e.g 5.00 for 5%- Returns:
- discounted price
-
calculateDiscount
public BigDecimal calculateDiscount(BigDecimal Qty, BigDecimal Price, int M_Product_ID, int M_Product_Category_ID, BigDecimal BPartnerFlatDiscount) Calculate Discount Percentage- Parameters:
Qty- quantityPrice- priceM_Product_ID- productM_Product_Category_ID- categoryBPartnerFlatDiscount- flat discount- Returns:
- discount or zero
-
beforeSave
protected boolean beforeSave(boolean newRecord) Description copied from class:POCalled before Save for Pre-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.- Overrides:
beforeSavein classPO- Parameters:
newRecord- true if it is a new record- Returns:
- true if record can be saved
-
reSeq
public int reSeq()Renumber SeqNo- Returns:
- lines updated
-
markImmutable
Description copied from interface:ImmutablePOSupportmark PO as immutable- Specified by:
markImmutablein interfaceImmutablePOSupport- Returns:
- PO
-