Commit 19c7b865 by Nilu

S26465112 # Client - Incoming Issues (raised by Client) #Refinements to the process

4. Ideally (this is not too important) we use a different identified than the message subject - assume we have 6 messages, it is hard to know which is which (when they occur) from the list of subjects.
parent 1bdf59f0
......@@ -8,6 +8,7 @@
<column name="object_id" type="Long" nullable="false" length="11"/>
<column name="object_last_updated_date" type="Date" nullable="false" length="22"/>
<column name="object_created_date" type="Date" nullable="false" length="22"/>
<column name="template_name" type="String" nullable="false" length="200"/>
<column name="subject" type="String" nullable="false" length="200"/>
<column name="application_status" type="String" nullable="false" length="200"/>
<column name="delay_hrs" type="Long" nullable="true"/>
......
......@@ -8,6 +8,7 @@ CREATE TABLE tl_message_template (
object_last_updated_date datetime DEFAULT getdate() NOT NULL ,
object_created_date datetime DEFAULT getdate() NOT NULL
,
template_name varchar(200) NOT NULL,
subject varchar(200) NOT NULL,
application_status varchar(200) NOT NULL,
delay_hrs numeric(12) NULL,
......
......@@ -9,6 +9,7 @@ CREATE TABLE tl_message_template (
object_last_updated_date date DEFAULT SYSDATE NOT NULL ,
object_created_date date DEFAULT SYSDATE NOT NULL
,
template_name varchar2(200) NOT NULL,
subject varchar2(200) NOT NULL,
application_status varchar2(200) NOT NULL,
delay_hrs number(12) NULL,
......
......@@ -9,6 +9,7 @@ CREATE TABLE tl_message_template (
object_last_updated_date timestamp DEFAULT NOW() NOT NULL ,
object_created_date timestamp DEFAULT NOW() NOT NULL
,
template_name varchar(200) NOT NULL,
subject varchar(200) NOT NULL,
application_status varchar(200) NOT NULL,
delay_hrs numeric(12) NULL,
......
......@@ -41,6 +41,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
// Static constants corresponding to field names
public static final String FIELD_TemplateName = "TemplateName";
public static final String FIELD_Subject = "Subject";
public static final String FIELD_ApplicationStatus = "ApplicationStatus";
public static final String FIELD_DelayHrs = "DelayHrs";
......@@ -54,6 +55,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
// Static constants corresponding to attribute helpers
private static final DefaultAttributeHelper<MessageTemplate> HELPER_TemplateName = DefaultAttributeHelper.INSTANCE;
private static final DefaultAttributeHelper<MessageTemplate> HELPER_Subject = DefaultAttributeHelper.INSTANCE;
private static final EnumeratedAttributeHelper<MessageTemplate, ApplicationStatus> HELPER_ApplicationStatus = new EnumeratedAttributeHelper<MessageTemplate, ApplicationStatus> (ApplicationStatus.FACTORY_ApplicationStatus);
private static final DefaultAttributeHelper<MessageTemplate> HELPER_DelayHrs = DefaultAttributeHelper.INSTANCE;
......@@ -64,6 +66,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
// Private attributes corresponding to business object data
private String _TemplateName;
private String _Subject;
private ApplicationStatus _ApplicationStatus;
private Integer _DelayHrs;
......@@ -83,6 +86,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
private static final Map ATTRIBUTES_METADATA_MessageTemplate = new HashMap ();
// Arrays of validators for each attribute
private static final AttributeValidator[] FIELD_TemplateName_Validators;
private static final AttributeValidator[] FIELD_Subject_Validators;
private static final AttributeValidator[] FIELD_ApplicationStatus_Validators;
private static final AttributeValidator[] FIELD_DelayHrs_Validators;
......@@ -103,6 +107,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
Map validatorMapping = ((Map)ConfigMgr.getConfigObject ("CONFIG.ORMVALIDATOR", "ValidatorMapping"));
FIELD_TemplateName_Validators = (AttributeValidator[])setupAttribMetaData_TemplateName(validatorMapping).toArray (new AttributeValidator[0]);
FIELD_Subject_Validators = (AttributeValidator[])setupAttribMetaData_Subject(validatorMapping).toArray (new AttributeValidator[0]);
FIELD_ApplicationStatus_Validators = (AttributeValidator[])setupAttribMetaData_ApplicationStatus(validatorMapping).toArray (new AttributeValidator[0]);
FIELD_DelayHrs_Validators = (AttributeValidator[])setupAttribMetaData_DelayHrs(validatorMapping).toArray (new AttributeValidator[0]);
......@@ -125,6 +130,26 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
// Meta Info setup
private static List setupAttribMetaData_TemplateName(Map validatorMapping)
{
Map metaInfo = new HashMap ();
metaInfo.put ("dbcol", "template_name");
metaInfo.put ("length", "200");
metaInfo.put ("mandatory", "true");
metaInfo.put ("name", "TemplateName");
metaInfo.put ("type", "String");
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG2, "Metadata for MessageTemplate.TemplateName:", metaInfo);
ATTRIBUTES_METADATA_MessageTemplate.put (FIELD_TemplateName, Collections.unmodifiableMap (metaInfo));
List validators = BaseBusinessClass.getAttribValidators(MessageTemplate.class, "TemplateName", metaInfo, validatorMapping);
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG1, "Validators for MessageTemplate.TemplateName:", validators);
return validators;
}
// Meta Info setup
private static List setupAttribMetaData_Subject(Map validatorMapping)
{
Map metaInfo = new HashMap ();
......@@ -291,6 +316,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
super._initialiseNewObjAttributes (transaction);
_TemplateName = (String)(HELPER_TemplateName.initialise (_TemplateName));
_Subject = (String)(HELPER_Subject.initialise (_Subject));
_ApplicationStatus = (ApplicationStatus)(ApplicationStatus.DRAFT);
_DelayHrs = (Integer)(0);
......@@ -323,6 +349,105 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
/**
* Get the attribute TemplateName
*/
public String getTemplateName ()
{
assertValid();
String valToReturn = _TemplateName;
for (MessageTemplateBehaviourDecorator bhd : MessageTemplate_BehaviourDecorators)
{
valToReturn = bhd.getTemplateName ((MessageTemplate)this, valToReturn);
}
return valToReturn;
}
/**
* Called prior to the attribute changing. Subclasses need not call super. If a field exception
* is thrown, the attribute change will fail. The new value is different to the old value.
*/
protected void preTemplateNameChange (String newTemplateName) throws FieldException
{
}
/**
* Called after the attribute changes.
* If a field exception is thrown, the value is still changed, however it
* may lead to the TX being rolled back
*/
protected void postTemplateNameChange () throws FieldException
{
}
public FieldWriteability getWriteability_TemplateName ()
{
return getFieldWritabilityUtil (FieldWriteability.TRUE);
}
/**
* Set the attribute TemplateName. Checks to ensure a new value
* has been supplied. If so, marks the field as altered and sets the attribute.
*/
public void setTemplateName (String newTemplateName) throws FieldException
{
boolean oldAndNewIdentical = HELPER_TemplateName.compare (_TemplateName, newTemplateName);
try
{
for (MessageTemplateBehaviourDecorator bhd : MessageTemplate_BehaviourDecorators)
{
newTemplateName = bhd.setTemplateName ((MessageTemplate)this, newTemplateName);
oldAndNewIdentical = HELPER_TemplateName.compare (_TemplateName, newTemplateName);
}
BusinessObjectParser.assertFieldCondition (newTemplateName != null, this, FIELD_TemplateName, "mandatory");
if (FIELD_TemplateName_Validators.length > 0)
{
Object newTemplateNameObj = HELPER_TemplateName.toObject (newTemplateName);
if (newTemplateNameObj != null)
{
int loopMax = FIELD_TemplateName_Validators.length;
Map metadata = (Map)ATTRIBUTES_METADATA_MessageTemplate.get (FIELD_TemplateName);
for (int v = 0 ; v < loopMax ; ++v)
{
FIELD_TemplateName_Validators[v].checkAttribute (this, FIELD_TemplateName, metadata, newTemplateNameObj);
}
}
}
}
catch (FieldException e)
{
if (!oldAndNewIdentical)
{
e.setWouldModify ();
}
throw e;
}
if (!oldAndNewIdentical)
{
assertValid();
Debug.assertion (getWriteability_TemplateName () != FieldWriteability.FALSE, "Field TemplateName is not writeable");
preTemplateNameChange (newTemplateName);
markFieldChange (FIELD_TemplateName);
_TemplateName = newTemplateName;
postFieldChange (FIELD_TemplateName);
postTemplateNameChange ();
}
}
/**
* Get the attribute Subject
*/
public String getSubject ()
......@@ -1269,6 +1394,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
PersistentSet tl_message_templatePSet = allSets.getPersistentSet (myID, "tl_message_template", myPSetStatus);
tl_message_templatePSet.setAttrib (FIELD_ObjectID, myID);
tl_message_templatePSet.setAttrib (FIELD_TemplateName, HELPER_TemplateName.toObject (_TemplateName)); //
tl_message_templatePSet.setAttrib (FIELD_Subject, HELPER_Subject.toObject (_Subject)); //
tl_message_templatePSet.setAttrib (FIELD_ApplicationStatus, HELPER_ApplicationStatus.toObject (_ApplicationStatus)); //
tl_message_templatePSet.setAttrib (FIELD_DelayHrs, HELPER_DelayHrs.toObject (_DelayHrs)); //
......@@ -1290,6 +1416,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
PersistentSet tl_message_templatePSet = allSets.getPersistentSet (objectID, "tl_message_template");
_TemplateName = (String)(HELPER_TemplateName.fromObject (_TemplateName, tl_message_templatePSet.getAttrib (FIELD_TemplateName))); //
_Subject = (String)(HELPER_Subject.fromObject (_Subject, tl_message_templatePSet.getAttrib (FIELD_Subject))); //
_ApplicationStatus = (ApplicationStatus)(HELPER_ApplicationStatus.fromObject (_ApplicationStatus, tl_message_templatePSet.getAttrib (FIELD_ApplicationStatus))); //
_DelayHrs = (Integer)(HELPER_DelayHrs.fromObject (_DelayHrs, tl_message_templatePSet.getAttrib (FIELD_DelayHrs))); //
......@@ -1314,6 +1441,15 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
try
{
setTemplateName (otherMessageTemplate.getTemplateName ());
}
catch (FieldException ex)
{
e.addException (ex);
}
try
{
setSubject (otherMessageTemplate.getSubject ());
}
catch (FieldException ex)
......@@ -1390,6 +1526,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
BaseMessageTemplate sourceMessageTemplate = (BaseMessageTemplate)(source);
_TemplateName = sourceMessageTemplate._TemplateName;
_Subject = sourceMessageTemplate._Subject;
_ApplicationStatus = sourceMessageTemplate._ApplicationStatus;
_DelayHrs = sourceMessageTemplate._DelayHrs;
......@@ -1449,6 +1586,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
super.readExternalData(vals);
_TemplateName = (String)(HELPER_TemplateName.readExternal (_TemplateName, vals.get(FIELD_TemplateName))); //
_Subject = (String)(HELPER_Subject.readExternal (_Subject, vals.get(FIELD_Subject))); //
_ApplicationStatus = (ApplicationStatus)(HELPER_ApplicationStatus.readExternal (_ApplicationStatus, vals.get(FIELD_ApplicationStatus))); //
_DelayHrs = (Integer)(HELPER_DelayHrs.readExternal (_DelayHrs, vals.get(FIELD_DelayHrs))); //
......@@ -1467,6 +1605,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
super.writeExternalData(vals);
vals.put (FIELD_TemplateName, HELPER_TemplateName.writeExternal (_TemplateName));
vals.put (FIELD_Subject, HELPER_Subject.writeExternal (_Subject));
vals.put (FIELD_ApplicationStatus, HELPER_ApplicationStatus.writeExternal (_ApplicationStatus));
vals.put (FIELD_DelayHrs, HELPER_DelayHrs.writeExternal (_DelayHrs));
......@@ -1487,6 +1626,10 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
BaseMessageTemplate otherMessageTemplate = (BaseMessageTemplate)(other);
if (!HELPER_TemplateName.compare(this._TemplateName, otherMessageTemplate._TemplateName))
{
listener.notifyFieldChange(this, other, FIELD_TemplateName, HELPER_TemplateName.toObject(this._TemplateName), HELPER_TemplateName.toObject(otherMessageTemplate._TemplateName));
}
if (!HELPER_Subject.compare(this._Subject, otherMessageTemplate._Subject))
{
listener.notifyFieldChange(this, other, FIELD_Subject, HELPER_Subject.toObject(this._Subject), HELPER_Subject.toObject(otherMessageTemplate._Subject));
......@@ -1537,6 +1680,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
super.visitAttributes (visitor);
visitor.visitField(this, FIELD_TemplateName, HELPER_TemplateName.toObject(getTemplateName()));
visitor.visitField(this, FIELD_Subject, HELPER_Subject.toObject(getSubject()));
visitor.visitField(this, FIELD_ApplicationStatus, HELPER_ApplicationStatus.toObject(getApplicationStatus()));
visitor.visitField(this, FIELD_DelayHrs, HELPER_DelayHrs.toObject(getDelayHrs()));
......@@ -1577,6 +1721,10 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
throw new RuntimeException ("Game over man!!");
}
else if (attribName.equals (FIELD_TemplateName))
{
return filter.matches (getTemplateName ());
}
else if (attribName.equals (FIELD_Subject))
{
return filter.matches (getSubject ());
......@@ -1636,6 +1784,12 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
}
public SearchAll andTemplateName (QueryFilter<String> filter)
{
filter.addFilter (context, "tl_message_template.template_name", "TemplateName");
return this;
}
public SearchAll andSubject (QueryFilter<String> filter)
{
filter.addFilter (context, "tl_message_template.subject", "Subject");
......@@ -1713,6 +1867,10 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
throw new RuntimeException ("Game over man!!");
}
else if (attribName.equals (FIELD_TemplateName))
{
return HELPER_TemplateName.toObject (getTemplateName ());
}
else if (attribName.equals (FIELD_Subject))
{
return HELPER_Subject.toObject (getSubject ());
......@@ -1754,6 +1912,10 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
throw new RuntimeException ("Game over man!!");
}
else if (attribName.equals (FIELD_TemplateName))
{
return HELPER_TemplateName;
}
else if (attribName.equals (FIELD_Subject))
{
return HELPER_Subject;
......@@ -1795,6 +1957,10 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
throw new RuntimeException ("Game over man!!");
}
else if (attribName.equals (FIELD_TemplateName))
{
setTemplateName ((String)(HELPER_TemplateName.fromObject (_TemplateName, attribValue)));
}
else if (attribName.equals (FIELD_Subject))
{
setSubject ((String)(HELPER_Subject.fromObject (_Subject, attribValue)));
......@@ -1843,6 +2009,10 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
throw new RuntimeException ("Game over man!!");
}
else if (fieldName.equals (FIELD_TemplateName))
{
return getWriteability_TemplateName ();
}
else if (fieldName.equals (FIELD_Subject))
{
return getWriteability_Subject ();
......@@ -1881,6 +2051,11 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
public void putUnwriteable (Set<String> fields)
{
if (getWriteability_TemplateName () != FieldWriteability.TRUE)
{
fields.add (FIELD_TemplateName);
}
if (getWriteability_Subject () != FieldWriteability.TRUE)
{
fields.add (FIELD_Subject);
......@@ -1925,6 +2100,7 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
List result = super.getAttributes ();
result.add(HELPER_TemplateName.getAttribObject (getClass (), _TemplateName, true, FIELD_TemplateName));
result.add(HELPER_Subject.getAttribObject (getClass (), _Subject, true, FIELD_Subject));
result.add(HELPER_ApplicationStatus.getAttribObject (getClass (), _ApplicationStatus, true, FIELD_ApplicationStatus));
result.add(HELPER_DelayHrs.getAttribObject (getClass (), _DelayHrs, false, FIELD_DelayHrs));
......@@ -1983,6 +2159,24 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
{
/**
* Get the attribute TemplateName
*/
public String getTemplateName (MessageTemplate obj, String original)
{
return original;
}
/**
* Change the value set for attribute TemplateName.
* May modify the field beforehand
* Occurs before validation.
*/
public String setTemplateName (MessageTemplate obj, String newTemplateName) throws FieldException
{
return newTemplateName;
}
/**
* Get the attribute Subject
*/
public String getSubject (MessageTemplate obj, String original)
......@@ -2160,6 +2354,10 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
public PipeLine<From, ? extends Object> to(String name)
{
if (name.equals ("TemplateName"))
{
return toTemplateName ();
}
if (name.equals ("Subject"))
{
return toSubject ();
......@@ -2194,6 +2392,8 @@ public abstract class BaseMessageTemplate extends BaseBusinessClass
}
public PipeLine<From, String> toTemplateName () { return pipe(new ORMAttributePipe<Me, String>(FIELD_TemplateName)); }
public PipeLine<From, String> toSubject () { return pipe(new ORMAttributePipe<Me, String>(FIELD_Subject)); }
public PipeLine<From, ApplicationStatus> toApplicationStatus () { return pipe(new ORMAttributePipe<Me, ApplicationStatus>(FIELD_ApplicationStatus)); }
......
......@@ -6,6 +6,7 @@
<IMPORT value="performa.orm.*"/>
<TABLE name="tl_message_template" tablePrefix="object" polymorphic="FALSE">
<ATTRIB name="TemplateName" type="String" dbcol="template_name" mandatory="true" length="200" />
<ATTRIB name="Subject" type="String" dbcol="subject" mandatory="true" length="200" />
<ATTRIB name="ApplicationStatus" type="ApplicationStatus" dbcol="application_status" mandatory="true" defaultValue="ApplicationStatus.DRAFT" attribHelper="EnumeratedAttributeHelper" />
<ATTRIB name="DelayHrs" type="Integer" dbcol="delay_hrs" mandatory="false" defaultValue="0" />
......
......@@ -28,6 +28,7 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
private static final LoggingArea MessageTemplatePersistence = LoggingArea.createLoggingArea(ObjectPersistenceMgr.OBJECT_PERSISTENCE, "MessageTemplate");
// Private attributes corresponding to business object data
private String dummyTemplateName;
private String dummySubject;
private ApplicationStatus dummyApplicationStatus;
private Integer dummyDelayHrs;
......@@ -38,6 +39,7 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
// Static constants corresponding to attribute helpers
private static final DefaultAttributeHelper HELPER_TemplateName = DefaultAttributeHelper.INSTANCE;
private static final DefaultAttributeHelper HELPER_Subject = DefaultAttributeHelper.INSTANCE;
private static final EnumeratedAttributeHelper HELPER_ApplicationStatus = new EnumeratedAttributeHelper (ApplicationStatus.FACTORY_ApplicationStatus);
private static final DefaultAttributeHelper HELPER_DelayHrs = DefaultAttributeHelper.INSTANCE;
......@@ -51,6 +53,7 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
public MessageTemplatePersistenceMgr ()
{
dummyTemplateName = (String)(HELPER_TemplateName.initialise (dummyTemplateName));
dummySubject = (String)(HELPER_Subject.initialise (dummySubject));
dummyApplicationStatus = (ApplicationStatus)(HELPER_ApplicationStatus.initialise (dummyApplicationStatus));
dummyDelayHrs = (Integer)(HELPER_DelayHrs.initialise (dummyDelayHrs));
......@@ -61,7 +64,7 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
}
private String SELECT_COLUMNS = "{PREFIX}tl_message_template.object_id as id, {PREFIX}tl_message_template.object_LAST_UPDATED_DATE as LAST_UPDATED_DATE, {PREFIX}tl_message_template.object_CREATED_DATE as CREATED_DATE, {PREFIX}tl_message_template.subject, {PREFIX}tl_message_template.application_status, {PREFIX}tl_message_template.delay_hrs, {PREFIX}tl_message_template.delay_min, {PREFIX}tl_message_template.variance, {PREFIX}tl_message_template.business_hours_only, {PREFIX}tl_message_template.message_content, 1 AS commasafe ";
private String SELECT_COLUMNS = "{PREFIX}tl_message_template.object_id as id, {PREFIX}tl_message_template.object_LAST_UPDATED_DATE as LAST_UPDATED_DATE, {PREFIX}tl_message_template.object_CREATED_DATE as CREATED_DATE, {PREFIX}tl_message_template.template_name, {PREFIX}tl_message_template.subject, {PREFIX}tl_message_template.application_status, {PREFIX}tl_message_template.delay_hrs, {PREFIX}tl_message_template.delay_min, {PREFIX}tl_message_template.variance, {PREFIX}tl_message_template.business_hours_only, {PREFIX}tl_message_template.message_content, 1 AS commasafe ";
private String SELECT_JOINS = "";
public BaseBusinessClass fetchByID(ObjectID id, PersistentSetCollection allPSets, RDBMSPersistenceContext context, SQLManager sqlMgr) throws SQLException, StorageException
......@@ -112,6 +115,7 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
// Check for persistent sets already prefetched
if (false || !tl_message_templatePSet.containsAttrib(BaseBusinessClass.FIELD_ObjectLastModified) ||
!tl_message_templatePSet.containsAttrib(MessageTemplate.FIELD_TemplateName)||
!tl_message_templatePSet.containsAttrib(MessageTemplate.FIELD_Subject)||
!tl_message_templatePSet.containsAttrib(MessageTemplate.FIELD_ApplicationStatus)||
!tl_message_templatePSet.containsAttrib(MessageTemplate.FIELD_DelayHrs)||
......@@ -188,10 +192,10 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
{
int rowsUpdated = executeStatement (sqlMgr,
"UPDATE {PREFIX}tl_message_template " +
"SET subject = ?, application_status = ?, delay_hrs = ?, delay_min = ?, variance = ?, business_hours_only = ?, message_content = ? , object_LAST_UPDATED_DATE = " + sqlMgr.getPortabilityServices ().getTimestampExpression () + " " +
"SET template_name = ?, subject = ?, application_status = ?, delay_hrs = ?, delay_min = ?, variance = ?, business_hours_only = ?, message_content = ? , object_LAST_UPDATED_DATE = " + sqlMgr.getPortabilityServices ().getTimestampExpression () + " " +
"WHERE tl_message_template.object_id = ? AND " + getConcurrencyCheck (sqlMgr, "object_LAST_UPDATED_DATE", obj.getObjectLastModified ()) + " ",
CollectionUtils.listEntry (HELPER_Subject.getForSQL(dummySubject, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Subject))).listEntry (HELPER_ApplicationStatus.getForSQL(dummyApplicationStatus, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_ApplicationStatus))).listEntry (HELPER_DelayHrs.getForSQL(dummyDelayHrs, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayHrs))).listEntry (HELPER_DelayMin.getForSQL(dummyDelayMin, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayMin))).listEntry (HELPER_Variance.getForSQL(dummyVariance, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Variance))).listEntry (HELPER_BusinessHoursOnly.getForSQL(dummyBusinessHoursOnly, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_BusinessHoursOnly))).listEntry (HELPER_MessageContent.getForSQL(dummyMessageContent, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_MessageContent))).listEntry (objectID.longID ()).listEntry (obj.getObjectLastModified ()).toList().toArray());
CollectionUtils.listEntry (HELPER_TemplateName.getForSQL(dummyTemplateName, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_TemplateName))).listEntry (HELPER_Subject.getForSQL(dummySubject, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Subject))).listEntry (HELPER_ApplicationStatus.getForSQL(dummyApplicationStatus, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_ApplicationStatus))).listEntry (HELPER_DelayHrs.getForSQL(dummyDelayHrs, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayHrs))).listEntry (HELPER_DelayMin.getForSQL(dummyDelayMin, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayMin))).listEntry (HELPER_Variance.getForSQL(dummyVariance, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Variance))).listEntry (HELPER_BusinessHoursOnly.getForSQL(dummyBusinessHoursOnly, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_BusinessHoursOnly))).listEntry (HELPER_MessageContent.getForSQL(dummyMessageContent, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_MessageContent))).listEntry (objectID.longID ()).listEntry (obj.getObjectLastModified ()).toList().toArray());
if (rowsUpdated != 1)
{
......@@ -447,6 +451,7 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
// Object Created
tl_message_templatePSet.setAttrib(BaseBusinessClass.FIELD_ObjectCreated, r.getTimestamp ("CREATED_DATE"));
tl_message_templatePSet.setAttrib(MessageTemplate.FIELD_TemplateName, HELPER_TemplateName.getFromRS(dummyTemplateName, r, "template_name"));
tl_message_templatePSet.setAttrib(MessageTemplate.FIELD_Subject, HELPER_Subject.getFromRS(dummySubject, r, "subject"));
tl_message_templatePSet.setAttrib(MessageTemplate.FIELD_ApplicationStatus, HELPER_ApplicationStatus.getFromRS(dummyApplicationStatus, r, "application_status"));
tl_message_templatePSet.setAttrib(MessageTemplate.FIELD_DelayHrs, HELPER_DelayHrs.getFromRS(dummyDelayHrs, r, "delay_hrs"));
......@@ -471,10 +476,10 @@ public class MessageTemplatePersistenceMgr extends ObjectPersistenceMgr
{
executeStatement (sqlMgr,
"INSERT INTO {PREFIX}tl_message_template " +
" (subject, application_status, delay_hrs, delay_min, variance, business_hours_only, message_content, object_id, object_LAST_UPDATED_DATE, object_CREATED_DATE) " +
" (template_name, subject, application_status, delay_hrs, delay_min, variance, business_hours_only, message_content, object_id, object_LAST_UPDATED_DATE, object_CREATED_DATE) " +
"VALUES " +
" (?, ?, ?, ?, ?, ?, ?, ?, " + sqlMgr.getPortabilityServices ().getTimestampExpression () + ", " + sqlMgr.getPortabilityServices ().getTimestampExpression () + ")",
CollectionUtils.listEntry (HELPER_Subject.getForSQL(dummySubject, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Subject))).listEntry (HELPER_ApplicationStatus.getForSQL(dummyApplicationStatus, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_ApplicationStatus))).listEntry (HELPER_DelayHrs.getForSQL(dummyDelayHrs, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayHrs))).listEntry (HELPER_DelayMin.getForSQL(dummyDelayMin, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayMin))).listEntry (HELPER_Variance.getForSQL(dummyVariance, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Variance))).listEntry (HELPER_BusinessHoursOnly.getForSQL(dummyBusinessHoursOnly, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_BusinessHoursOnly))).listEntry (HELPER_MessageContent.getForSQL(dummyMessageContent, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_MessageContent))) .listEntry (objectID.longID ()).toList().toArray());
" (?, ?, ?, ?, ?, ?, ?, ?, ?, " + sqlMgr.getPortabilityServices ().getTimestampExpression () + ", " + sqlMgr.getPortabilityServices ().getTimestampExpression () + ")",
CollectionUtils.listEntry (HELPER_TemplateName.getForSQL(dummyTemplateName, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_TemplateName))).listEntry (HELPER_Subject.getForSQL(dummySubject, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Subject))).listEntry (HELPER_ApplicationStatus.getForSQL(dummyApplicationStatus, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_ApplicationStatus))).listEntry (HELPER_DelayHrs.getForSQL(dummyDelayHrs, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayHrs))).listEntry (HELPER_DelayMin.getForSQL(dummyDelayMin, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_DelayMin))).listEntry (HELPER_Variance.getForSQL(dummyVariance, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_Variance))).listEntry (HELPER_BusinessHoursOnly.getForSQL(dummyBusinessHoursOnly, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_BusinessHoursOnly))).listEntry (HELPER_MessageContent.getForSQL(dummyMessageContent, tl_message_templatePSet.getAttrib (MessageTemplate.FIELD_MessageContent))) .listEntry (objectID.longID ()).toList().toArray());
tl_message_templatePSet.setStatus (PersistentSetStatus.PROCESSED);
}
......
......@@ -51,6 +51,15 @@
<oneit:skin tagName="layout_row">
<oneit:layout_label width="1">
<oneit:ormlabel obj="<%= messageTemplate %>" field="TemplateName"/>
</oneit:layout_label>
<oneit:layout_field width="1">
<oneit:ormInput obj="<%= messageTemplate %>" attributeName="TemplateName" style="width:90%" />
</oneit:layout_field>
</oneit:skin>
<oneit:skin tagName="layout_row">
<oneit:layout_label width="1">
<oneit:ormlabel obj="<%= messageTemplate %>" field="Subject"/>
</oneit:layout_label>
<oneit:layout_field width="1">
......
......@@ -44,14 +44,16 @@
<oneit:skin tagName="layout_search_results">
<oneit:table name="MessageTemplateTable" sortable="true" cssClass="cougartable tbl-width" notgrid="true">
<oneit:colheader label="Description" width="50" />
<oneit:colheader label="" width="1" cssClass="nosort nofilter" />
<oneit:colheader label="Template Name" width="48" />
<oneit:colheader label="Email Subject" width="48" />
<oneit:colheader label="" width="4" cssClass="nosort nofilter" />
<%
for (MessageTemplate msgTemp : messageTemplates)
{
%>
<oneit:row rowObj="<%= msgTemp %>">
<oneit:col><oneit:toString value="<%= msgTemp.getTemplateName() %>" mode="EscapeHTML" /></oneit:col>
<oneit:col><oneit:toString value="<%= msgTemp.getSubject() %>" mode="EscapeHTML" /></oneit:col>
<oneit:col><a class="data-link " href="editMessageTemplate.jsp?MessageTemplateID=<%= msgTemp.getObjectID() %>">>></a></oneit:col>
</oneit:row>
......
<?xml version="1.0" encoding="UTF-8"?>
<!-- @AutoRun -->
<OBJECTS name="" xmlns:oneit="http://www.1iT.com.au">
<NODE name="Script" factory="Vector">
<NODE name="DDL" factory="Participant" class="oneit.sql.transfer.RedefineTableOperation">
<tableName factory="String">tl_message_template</tableName>
<column name="template_name" type="String" nullable="true" length="200"/>
</NODE>
</NODE>
</OBJECTS>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment