IDEMPIERE-2999 : refactoring as per Hengsin's review comments (#427)

* IDEMPIERE-2999 : refactoring as per Hengsin's review comments

* IDEMPIERE-2999: Fixing compilation issue

* IDEMPIERE-2999: Fixing as per Hengsin'e review
This commit is contained in:
Deepak Pansheriya 2020-12-02 20:29:23 +05:30 committed by GitHub
parent acf59cccbb
commit 8b672a3a51
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 107 additions and 38 deletions

View File

@ -29,6 +29,7 @@ import org.compiere.util.CCache;
import org.compiere.util.CLogger;
import org.compiere.util.DB;
import org.compiere.util.Env;
import org.compiere.util.KeyNamePair;
import org.compiere.util.Msg;
import org.idempiere.cache.ImmutablePOSupport;
@ -205,8 +206,8 @@ public class MAttribute extends X_M_Attribute implements ImmutablePOSupport
/**
* Set Attribute Instance
* @param value value
* @param M_AttributeSetInstance_ID id
* @param value value
*/
public void setMAttributeInstance (int M_AttributeSetInstance_ID, MAttributeValue value)
{
@ -239,8 +240,8 @@ public class MAttribute extends X_M_Attribute implements ImmutablePOSupport
/**
* Set Attribute Instance
* @param value string value
* @param M_AttributeSetInstance_ID id
* @param value string value
*/
public void setMAttributeInstance (int M_AttributeSetInstance_ID, String value)
{
@ -255,8 +256,8 @@ public class MAttribute extends X_M_Attribute implements ImmutablePOSupport
/**
* Set Attribute Instance
* @param value number value
* @param M_AttributeSetInstance_ID id
* @param value number value
*/
public void setMAttributeInstance (int M_AttributeSetInstance_ID, BigDecimal value)
{
@ -270,21 +271,43 @@ public class MAttribute extends X_M_Attribute implements ImmutablePOSupport
} // setAttributeInstance
/**
* Set Attribute Instance
*
* @param valueInt Integer value
* @param M_AttributeSetInstance_ID id
* @param value
* Set Attribute Instance
* @param M_AttributeSetInstance_ID id
* @param value int
*/
public void setMAttributeInstance(int M_AttributeSetInstance_ID, int valueInt, String value)
public void setMAttributeInstance (int M_AttributeSetInstance_ID, int value)
{
MAttributeInstance instance = getMAttributeInstance(M_AttributeSetInstance_ID);
if (instance == null)
instance = new MAttributeInstance(getCtx(), getM_Attribute_ID(), M_AttributeSetInstance_ID, valueInt, get_TrxName());
instance.setValueInt(valueInt, value);
instance = new MAttributeInstance (getCtx(), getM_Attribute_ID(),
M_AttributeSetInstance_ID, value, get_TrxName());
else
instance.setValueInt(value);
instance.saveEx();
} // setAttributeInstance
/**
* Set Attribute Instance
*
* @param M_AttributeSetInstance_ID id
* @param value KeyNamePair
*/
public void setMAttributeInstance(int M_AttributeSetInstance_ID, KeyNamePair value)
{
MAttributeInstance instance = getMAttributeInstance(M_AttributeSetInstance_ID);
if (instance == null)
instance = new MAttributeInstance(getCtx(), getM_Attribute_ID(), M_AttributeSetInstance_ID, value, get_TrxName());
else
instance.setValueKeyNamePair(value);
instance.saveEx();
} // setAttributeInstance
/**
* Set Attribute Instance
*
* @param M_AttributeSetInstance_ID id
* @param value Timestamp
*/
public void setMAttributeInstance(int M_AttributeSetInstance_ID, Timestamp value)
{
MAttributeInstance instance = getMAttributeInstance(M_AttributeSetInstance_ID);

View File

@ -23,6 +23,7 @@ import java.text.SimpleDateFormat;
import java.util.Properties;
import org.compiere.util.DisplayType;
import org.compiere.util.KeyNamePair;
/**
* Product Attribute Set
@ -52,7 +53,7 @@ public class MAttributeInstance extends X_M_AttributeInstance
} // MAttributeInstance
/**
* Load Cosntructor
* Load Constructor
* @param ctx context
* @param rs result set
* @param trxName transaction
@ -62,6 +63,21 @@ public class MAttributeInstance extends X_M_AttributeInstance
super(ctx, rs, trxName);
} // MAttributeInstance
/**
* General Constructor
*
* @param ctx context
* @param M_Attribute_ID attribute
* @param M_AttributeSetInstance_ID instance
* @param trxName transaction
*/
public MAttributeInstance(Properties ctx, int M_Attribute_ID, int M_AttributeSetInstance_ID, String trxName)
{
super(ctx, 0, trxName);
setM_Attribute_ID(M_Attribute_ID);
setM_AttributeSetInstance_ID(M_AttributeSetInstance_ID);
} // MAttributeInstance
/**
* String Value Constructor
* @param ctx context
@ -73,14 +89,12 @@ public class MAttributeInstance extends X_M_AttributeInstance
public MAttributeInstance (Properties ctx, int M_Attribute_ID,
int M_AttributeSetInstance_ID, String Value, String trxName)
{
super(ctx, 0, trxName);
setM_Attribute_ID (M_Attribute_ID);
setM_AttributeSetInstance_ID (M_AttributeSetInstance_ID);
this(ctx, M_Attribute_ID, M_AttributeSetInstance_ID, trxName);
setValue (Value);
} // MAttributeInstance
/**
* Number Value Constructior
* Number Value Constructor
* @param ctx context
* @param M_Attribute_ID attribute
* @param M_AttributeSetInstance_ID instance
@ -90,9 +104,7 @@ public class MAttributeInstance extends X_M_AttributeInstance
public MAttributeInstance (Properties ctx, int M_Attribute_ID,
int M_AttributeSetInstance_ID, BigDecimal BDValue, String trxName)
{
super(ctx, 0, trxName);
setM_Attribute_ID (M_Attribute_ID);
setM_AttributeSetInstance_ID (M_AttributeSetInstance_ID);
this(ctx, M_Attribute_ID, M_AttributeSetInstance_ID, trxName);
setValueNumber(BDValue);
} // MAttributeInstance
@ -108,32 +120,56 @@ public class MAttributeInstance extends X_M_AttributeInstance
public MAttributeInstance(Properties ctx, int M_Attribute_ID, int M_AttributeSetInstance_ID,
int M_AttributeValue_ID, String Value, String trxName)
{
super(ctx, 0, trxName);
setM_Attribute_ID(M_Attribute_ID);
setM_AttributeSetInstance_ID(M_AttributeSetInstance_ID);
this(ctx, M_Attribute_ID, M_AttributeSetInstance_ID, trxName);
setM_AttributeValue_ID(M_AttributeValue_ID);
setValue(Value);
} // MAttributeInstance
/**
* Integer Value Constructor
* @param ctx
* @param M_Attribute_ID
* @param M_AttributeSetInstance_ID
* @param Value
* @param trxName
*/
public MAttributeInstance (Properties ctx, int M_Attribute_ID,
int M_AttributeSetInstance_ID, int Value, String trxName)
{
super(ctx, 0, trxName);
setM_Attribute_ID (M_Attribute_ID);
setM_AttributeSetInstance_ID (M_AttributeSetInstance_ID);
this(ctx, M_Attribute_ID, M_AttributeSetInstance_ID, trxName);
setValueNumber(BigDecimal.valueOf(Value));
} // MAttributeInstance
public MAttributeInstance(Properties ctx, int m_Attribute_ID, int m_AttributeSetInstance_ID, Timestamp value,
/**
* TimeStamp Value Constructor
* @param ctx
* @param M_Attribute_ID
* @param M_AttributeSetInstance_ID
* @param value
* @param trxName
*/
public MAttributeInstance(Properties ctx, int M_Attribute_ID, int M_AttributeSetInstance_ID, Timestamp value,
String trxName)
{
super(ctx, 0, trxName);
setM_Attribute_ID(m_Attribute_ID);
setM_AttributeSetInstance_ID(m_AttributeSetInstance_ID);
this(ctx, M_Attribute_ID, M_AttributeSetInstance_ID, trxName);
setValueDate(value);
} // MAttributeInstance
/**
* KeyNamePair Value Constructor
* Use for table direct or table type reference
* @param ctx
* @param M_Attribute_ID
* @param M_AttributeSetInstance_ID
* @param value
* @param trxName
*/
public MAttributeInstance(Properties ctx, int M_Attribute_ID, int M_AttributeSetInstance_ID, KeyNamePair value, String trxName)
{
this(ctx, M_Attribute_ID, M_AttributeSetInstance_ID, trxName);
setValueKeyNamePair(value);
} // MAttributeInstance
/**
* Set ValueNumber
* @param ValueNumber number
@ -213,11 +249,10 @@ public class MAttributeInstance extends X_M_AttributeInstance
* @param valueInt
* @param value
*/
public void setValueInt(int valueInt, String value)
public void setValueInt(int valueInt)
{
super.setValueNumber(BigDecimal.valueOf(valueInt));
if (value == null)
value = String.valueOf(valueInt);
String value = String.valueOf(valueInt);
setValue(value);
} // setValueInt
@ -234,6 +269,17 @@ public class MAttributeInstance extends X_M_AttributeInstance
return super.getValueNumber().intValue();
} // getValueInt
/**
* Set Value as keyNamePair
* @param value
*/
public void setValueKeyNamePair(KeyNamePair value)
{
super.setValueNumber(BigDecimal.valueOf(value.getKey()));
setValue(value.getName());
} // setValueKeyNamePair
/**
* String Representation
* @return info

View File

@ -1160,7 +1160,7 @@ public class WPAttributeDialog extends Window implements EventListener<Event>
if (attributes.isMandatory() && value == null)
mandatory += " - " + attributes.getName();
if (displayType == DisplayType.Integer)
attributes.setMAttributeInstance(m_M_AttributeSetInstance_ID, value == null ? 0 : ((Number) value).intValue(), null);
attributes.setMAttributeInstance(m_M_AttributeSetInstance_ID, (int)(value == null ? 0 : ((Number) value).intValue()));
else
attributes.setMAttributeInstance(m_M_AttributeSetInstance_ID, (BigDecimal) value);
}
@ -1176,16 +1176,16 @@ public class WPAttributeDialog extends Window implements EventListener<Event>
if (attributes.isMandatory() && value == null)
mandatory += " - " + attributes.getName();
String valueLable = null;
String valueLabel = null;
if (displayType == DisplayType.TableDir
|| displayType == DisplayType.Table
|| displayType == DisplayType.Search
|| displayType == DisplayType.Account)
{
valueLable = editor.getDisplay();
valueLabel = editor.getDisplay();
}
attributes.setMAttributeInstance(m_M_AttributeSetInstance_ID, value == null ? 0 : value.intValue(), valueLable);
attributes.setMAttributeInstance(m_M_AttributeSetInstance_ID, new KeyNamePair(value == null ? 0 : value.intValue(), valueLabel));
}
else
{