Commit a8854243 by Nilu

when a hiring team doesnt manage its own billing - using the assigned team's job…

when a hiring team doesnt manage its own billing - using the assigned team's job availability to open a job
parent 6c8bbd5c
......@@ -41,5 +41,7 @@
</NODE>
<NODE name="INDEX" factory="Participant" class="oneit.sql.transfer.DefineIndexOperation" tableName="tl_hiring_team" indexName="idx_tl_hiring_team_company_id" isUnique="false"><column name="company_id"/></NODE>
<NODE name="INDEX" factory="Participant" class="oneit.sql.transfer.DefineIndexOperation" tableName="tl_hiring_team" indexName="idx_tl_hiring_team_billing_team_id" isUnique="false"><column name="billing_team_id"/></NODE>
</NODE></OBJECTS>
\ No newline at end of file
......@@ -52,3 +52,6 @@ ALTER TABLE tl_hiring_team ADD
CREATE INDEX idx_tl_hiring_team_company_id
ON tl_hiring_team (company_id);
CREATE INDEX idx_tl_hiring_team_billing_team_id
ON tl_hiring_team (billing_team_id);
......@@ -53,3 +53,6 @@ ALTER TABLE tl_hiring_team ADD
CREATE INDEX idx_tl_hiring_team_company_id
ON tl_hiring_team (company_id);
CREATE INDEX idx_tl_hiring_team_billing_team_id
ON tl_hiring_team (billing_team_id);
......@@ -53,3 +53,6 @@ ALTER TABLE tl_hiring_team ADD
CREATE INDEX idx_tl_hiring_team_company_id
ON tl_hiring_team (company_id);
CREATE INDEX idx_tl_hiring_team_billing_team_id
ON tl_hiring_team (billing_team_id);
......@@ -58,13 +58,13 @@ public class AddHiringTeamFP extends SaveFP
if(hiringTeam.getManageOwnBilling())
{
hiringTeam.setBillingTeam(null);
hiringTeam.setBilledByTeam(null);
StripeUtils.createCustomer(hiringTeam);
}
else
{
hiringTeam.setBillingTeam(company.getBillingTeam());
hiringTeam.setBilledByTeam(company.getBillingTeam());
}
LogMgr.log(LOG, LogLevel.PROCESSING1, "New hiring team created : ", hiringTeam);
......
......@@ -39,7 +39,7 @@ public class SaveCompanyFP extends SaveFP
if(hiringTeam.getManageOwnBilling())
{
hiringTeam.setBillingTeam(null);
hiringTeam.setBilledByTeam(null);
if(hiringTeam.getStripeReference() == null)
{
......@@ -143,7 +143,7 @@ public class SaveCompanyFP extends SaveFP
if(hiringTeam != null && !hiringTeam.getManageOwnBilling())
{
BusinessObjectParser.assertFieldCondition(hiringTeam.getBillingTeam() != null, hiringTeam , HiringTeam.SINGLEREFERENCE_BillingTeam, "mandatory", exceptions, true, request);
BusinessObjectParser.assertFieldCondition(hiringTeam.getBilledByTeam() != null, hiringTeam , HiringTeam.SINGLEREFERENCE_BilledByTeam, "mandatory", exceptions, true, request);
}
super.validate(process, submission, exceptions, params);
......
......@@ -36,6 +36,7 @@ public class SaveJobFP extends SaveFP
CompanyUser companyUser = secUser.getExtension(CompanyUser.REFERENCE_CompanyUser);
Company company = companyUser.getCompany();
HiringTeam hiringTeam = job.getHiringTeam();
HiringTeam billingTeam = hiringTeam.getManageOwnBilling() ? hiringTeam : hiringTeam.getBilledByTeam();
LogMgr.log(Job.LOG, LogLevel.PROCESSING1,"In SaveJobFP saving job : ", job );
......@@ -53,16 +54,16 @@ public class SaveJobFP extends SaveFP
job.setApplyBy(DateDiff.add(DateDiff.getToday(), Calendar.DATE, 30));
job.setOpenDate(new Date());
if (!hiringTeam.canCreateJob())
if (!billingTeam.canCreateJob())
{
throw new BusinessException("Please change payment plan settings to open this job");
}
hiringTeam.setUsedCredits(NullArith.add(hiringTeam.getUsedCredits(), 1).intValue());
billingTeam.setUsedCredits(NullArith.add(billingTeam.getUsedCredits(), 1).intValue());
if(hiringTeam.getUsedCredits() > hiringTeam.getAvailableCredits())
if(billingTeam.getUsedCredits() > billingTeam.getAvailableCredits())
{
StripeUtils.recordUsage(hiringTeam);
StripeUtils.recordUsage(billingTeam);
}
if(status == JobStatus.OPEN)
......@@ -126,8 +127,8 @@ public class SaveJobFP extends SaveFP
JobStatus status = (JobStatus) request.getAttribute("JobStatus");
SecUser loggedInUser = SecUser.getTXUser(process.getTransaction());
CompanyUser companyUser = loggedInUser.getExtension(CompanyUser.REFERENCE_CompanyUser);
Company company = companyUser.getCompany();
HiringTeam hiringTeam = job.getHiringTeam();
HiringTeam billingTeam = hiringTeam.getManageOwnBilling() ? hiringTeam : hiringTeam.getBilledByTeam();
if(job.getJobStatus() != JobStatus.DRAFT || openJob == Boolean.TRUE)
{
......@@ -146,15 +147,15 @@ public class SaveJobFP extends SaveFP
// if(company.getSelectedPaymentPlan() != null)
// {
BusinessObjectParser.assertFieldCondition(hiringTeam.canCreateJob() , job, Job.FIELD_JobStatus, "insufficientCredit", exceptions, true, request);
BusinessObjectParser.assertFieldCondition(billingTeam.canCreateJob() , job, Job.FIELD_JobStatus, "insufficientCredit", exceptions, true, request);
// }
}
if(job.getJobStatus() == JobStatus.OPEN)
{
BusinessObjectParser.assertFieldCondition(hiringTeam.getCardID() != null , hiringTeam, HiringTeam.FIELD_CardID, "mandatoryCardDetails", exceptions, true, request);
BusinessObjectParser.assertFieldCondition(billingTeam.getCardID() != null , billingTeam, HiringTeam.FIELD_CardID, "mandatoryCardDetails", exceptions, true, request);
BusinessObjectParser.assertFieldCondition(hiringTeam.canCreateJob() , job, Job.FIELD_JobStatus, "insufficientCredit", exceptions, true, request);
BusinessObjectParser.assertFieldCondition(billingTeam.canCreateJob() , job, Job.FIELD_JobStatus, "insufficientCredit", exceptions, true, request);
}
super.validate(process, submission, exceptions, params);
......
......@@ -75,7 +75,8 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
public static final String FIELD_StripeLast4 = "StripeLast4";
public static final String SINGLEREFERENCE_Company = "Company";
public static final String BACKREF_Company = "";
public static final String SINGLEREFERENCE_BillingTeam = "BillingTeam";
public static final String SINGLEREFERENCE_BilledByTeam = "BilledByTeam";
public static final String BACKREF_BilledByTeam = "";
public static final String SINGLEREFERENCE_AddedByUser = "AddedByUser";
public static final String SINGLEREFERENCE_PaymentPlan = "PaymentPlan";
public static final String SINGLEREFERENCE_Coupon = "Coupon";
......@@ -83,6 +84,8 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
public static final String BACKREF_Users = "";
public static final String MULTIPLEREFERENCE_Clients = "Clients";
public static final String BACKREF_Clients = "";
public static final String MULTIPLEREFERENCE_BillingTeams = "BillingTeams";
public static final String BACKREF_BillingTeams = "";
// Static constants corresponding to searches
public static final String SEARCH_All = "All";
......@@ -154,7 +157,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
// Private attributes corresponding to single references
private SingleAssociation<HiringTeam, Company> _Company;
private SingleAssociation<HiringTeam, HiringTeam> _BillingTeam;
private SingleAssociation<HiringTeam, HiringTeam> _BilledByTeam;
private SingleAssociation<HiringTeam, CompanyUser> _AddedByUser;
private SingleAssociation<HiringTeam, PaymentPlan> _PaymentPlan;
private SingleAssociation<HiringTeam, StripeCoupon> _Coupon;
......@@ -163,6 +166,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
// Private attributes corresponding to multiple references
private MultipleAssociation<HiringTeam, CompanyUserHiringTeamLink> _Users;
private MultipleAssociation<HiringTeam, Client> _Clients;
private MultipleAssociation<HiringTeam, HiringTeam> _BillingTeams;
// Map of maps of metadata
......@@ -210,14 +214,17 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
String tmp_Users = CompanyUserHiringTeamLink.BACKREF_HiringTeam;
String tmp_Clients = Client.BACKREF_HiringTeam;
String tmp_BillingTeams = HiringTeam.BACKREF_BilledByTeam;
String tmp_Company = Company.BACKREF_HiringTeams;
String tmp_BilledByTeam = HiringTeam.BACKREF_BillingTeams;
Map validatorMapping = ((Map)ConfigMgr.getConfigObject ("CONFIG.ORMVALIDATOR", "ValidatorMapping"));
setupAssocMetaData_Users();
setupAssocMetaData_Clients();
setupAssocMetaData_BillingTeams();
setupAssocMetaData_Company();
setupAssocMetaData_BillingTeam();
setupAssocMetaData_BilledByTeam();
setupAssocMetaData_AddedByUser();
setupAssocMetaData_PaymentPlan();
setupAssocMetaData_Coupon();
......@@ -293,6 +300,20 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
// Meta Info setup
private static void setupAssocMetaData_BillingTeams()
{
Map metaInfo = new HashMap ();
metaInfo.put ("backreferenceName", "BilledByTeam");
metaInfo.put ("name", "BillingTeams");
metaInfo.put ("type", "HiringTeam");
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG2, "Metadata for HiringTeam.BillingTeams:", metaInfo);
ATTRIBUTES_METADATA_HiringTeam.put (MULTIPLEREFERENCE_BillingTeams, Collections.unmodifiableMap (metaInfo));
}
// Meta Info setup
private static void setupAssocMetaData_Company()
{
Map metaInfo = new HashMap ();
......@@ -309,17 +330,18 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
// Meta Info setup
private static void setupAssocMetaData_BillingTeam()
private static void setupAssocMetaData_BilledByTeam()
{
Map metaInfo = new HashMap ();
metaInfo.put ("backreferenceName", "BillingTeams");
metaInfo.put ("dbcol", "billing_team_id");
metaInfo.put ("mandatory", "false");
metaInfo.put ("name", "BillingTeam");
metaInfo.put ("name", "BilledByTeam");
metaInfo.put ("type", "HiringTeam");
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG2, "Metadata for HiringTeam.BillingTeam:", metaInfo);
ATTRIBUTES_METADATA_HiringTeam.put (SINGLEREFERENCE_BillingTeam, Collections.unmodifiableMap (metaInfo));
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG2, "Metadata for HiringTeam.BilledByTeam:", metaInfo);
ATTRIBUTES_METADATA_HiringTeam.put (SINGLEREFERENCE_BilledByTeam, Collections.unmodifiableMap (metaInfo));
}
......@@ -989,12 +1011,13 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
super._initialiseAssociations ();
_Company = new SingleAssociation<HiringTeam, Company> (this, SINGLEREFERENCE_Company, Company.MULTIPLEREFERENCE_HiringTeams, Company.REFERENCE_Company, "tl_hiring_team");
_BillingTeam = new SingleAssociation<HiringTeam, HiringTeam> (this, SINGLEREFERENCE_BillingTeam, null, HiringTeam.REFERENCE_HiringTeam, "tl_hiring_team");
_BilledByTeam = new SingleAssociation<HiringTeam, HiringTeam> (this, SINGLEREFERENCE_BilledByTeam, HiringTeam.MULTIPLEREFERENCE_BillingTeams, HiringTeam.REFERENCE_HiringTeam, "tl_hiring_team");
_AddedByUser = new SingleAssociation<HiringTeam, CompanyUser> (this, SINGLEREFERENCE_AddedByUser, null, CompanyUser.REFERENCE_CompanyUser, "tl_hiring_team");
_PaymentPlan = new SingleAssociation<HiringTeam, PaymentPlan> (this, SINGLEREFERENCE_PaymentPlan, null, PaymentPlan.REFERENCE_PaymentPlan, "tl_hiring_team");
_Coupon = new SingleAssociation<HiringTeam, StripeCoupon> (this, SINGLEREFERENCE_Coupon, null, StripeCoupon.REFERENCE_StripeCoupon, "tl_hiring_team");
_Users = new MultipleAssociation<HiringTeam, CompanyUserHiringTeamLink> (this, MULTIPLEREFERENCE_Users, CompanyUserHiringTeamLink.SINGLEREFERENCE_HiringTeam, CompanyUserHiringTeamLink.REFERENCE_CompanyUserHiringTeamLink);
_Clients = new MultipleAssociation<HiringTeam, Client> (this, MULTIPLEREFERENCE_Clients, Client.SINGLEREFERENCE_HiringTeam, Client.REFERENCE_Client);
_BillingTeams = new MultipleAssociation<HiringTeam, HiringTeam> (this, MULTIPLEREFERENCE_BillingTeams, HiringTeam.SINGLEREFERENCE_BilledByTeam, HiringTeam.REFERENCE_HiringTeam);
}
......@@ -1005,12 +1028,13 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
super.initialiseReference ();
_Company = new SingleAssociation<HiringTeam, Company> (this, SINGLEREFERENCE_Company, Company.MULTIPLEREFERENCE_HiringTeams, Company.REFERENCE_Company, "tl_hiring_team");
_BillingTeam = new SingleAssociation<HiringTeam, HiringTeam> (this, SINGLEREFERENCE_BillingTeam, null, HiringTeam.REFERENCE_HiringTeam, "tl_hiring_team");
_BilledByTeam = new SingleAssociation<HiringTeam, HiringTeam> (this, SINGLEREFERENCE_BilledByTeam, HiringTeam.MULTIPLEREFERENCE_BillingTeams, HiringTeam.REFERENCE_HiringTeam, "tl_hiring_team");
_AddedByUser = new SingleAssociation<HiringTeam, CompanyUser> (this, SINGLEREFERENCE_AddedByUser, null, CompanyUser.REFERENCE_CompanyUser, "tl_hiring_team");
_PaymentPlan = new SingleAssociation<HiringTeam, PaymentPlan> (this, SINGLEREFERENCE_PaymentPlan, null, PaymentPlan.REFERENCE_PaymentPlan, "tl_hiring_team");
_Coupon = new SingleAssociation<HiringTeam, StripeCoupon> (this, SINGLEREFERENCE_Coupon, null, StripeCoupon.REFERENCE_StripeCoupon, "tl_hiring_team");
_Users = new MultipleAssociation<HiringTeam, CompanyUserHiringTeamLink> (this, MULTIPLEREFERENCE_Users, CompanyUserHiringTeamLink.SINGLEREFERENCE_HiringTeam, CompanyUserHiringTeamLink.REFERENCE_CompanyUserHiringTeamLink);
_Clients = new MultipleAssociation<HiringTeam, Client> (this, MULTIPLEREFERENCE_Clients, Client.SINGLEREFERENCE_HiringTeam, Client.REFERENCE_Client);
_BillingTeams = new MultipleAssociation<HiringTeam, HiringTeam> (this, MULTIPLEREFERENCE_BillingTeams, HiringTeam.SINGLEREFERENCE_BilledByTeam, HiringTeam.REFERENCE_HiringTeam);
return this;
......@@ -3873,7 +3897,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
result.add("Company");
result.add("BillingTeam");
result.add("BilledByTeam");
result.add("AddedByUser");
......@@ -3895,9 +3919,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
else if (assocName.equals (SINGLEREFERENCE_Company))
{
return _Company.getReferencedType ();
}else if (assocName.equals (SINGLEREFERENCE_BillingTeam))
}else if (assocName.equals (SINGLEREFERENCE_BilledByTeam))
{
return _BillingTeam.getReferencedType ();
return _BilledByTeam.getReferencedType ();
}else if (assocName.equals (SINGLEREFERENCE_AddedByUser))
{
return _AddedByUser.getReferencedType ();
......@@ -3924,9 +3948,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
else if (assocName.equals (SINGLEREFERENCE_Company))
{
return Company.MULTIPLEREFERENCE_HiringTeams ;
}else if (assocName.equals (SINGLEREFERENCE_BillingTeam))
}else if (assocName.equals (SINGLEREFERENCE_BilledByTeam))
{
return null ;
return HiringTeam.MULTIPLEREFERENCE_BillingTeams ;
}else if (assocName.equals (SINGLEREFERENCE_AddedByUser))
{
return null ;
......@@ -3953,9 +3977,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
else if (assocName.equals (SINGLEREFERENCE_Company))
{
return getCompany ();
}else if (assocName.equals (SINGLEREFERENCE_BillingTeam))
}else if (assocName.equals (SINGLEREFERENCE_BilledByTeam))
{
return getBillingTeam ();
return getBilledByTeam ();
}else if (assocName.equals (SINGLEREFERENCE_AddedByUser))
{
return getAddedByUser ();
......@@ -3982,9 +4006,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
else if (assocName.equals (SINGLEREFERENCE_Company))
{
return getCompany (getType);
}else if (assocName.equals (SINGLEREFERENCE_BillingTeam))
}else if (assocName.equals (SINGLEREFERENCE_BilledByTeam))
{
return getBillingTeam (getType);
return getBilledByTeam (getType);
}else if (assocName.equals (SINGLEREFERENCE_AddedByUser))
{
return getAddedByUser (getType);
......@@ -4011,9 +4035,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
else if (assocName.equals (SINGLEREFERENCE_Company))
{
return getCompanyID ();
}else if (assocName.equals (SINGLEREFERENCE_BillingTeam))
}else if (assocName.equals (SINGLEREFERENCE_BilledByTeam))
{
return getBillingTeamID ();
return getBilledByTeamID ();
}else if (assocName.equals (SINGLEREFERENCE_AddedByUser))
{
return getAddedByUserID ();
......@@ -4040,9 +4064,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
else if (assocName.equals (SINGLEREFERENCE_Company))
{
setCompany ((Company)(newValue));
}else if (assocName.equals (SINGLEREFERENCE_BillingTeam))
}else if (assocName.equals (SINGLEREFERENCE_BilledByTeam))
{
setBillingTeam ((HiringTeam)(newValue));
setBilledByTeam ((HiringTeam)(newValue));
}else if (assocName.equals (SINGLEREFERENCE_AddedByUser))
{
setAddedByUser ((CompanyUser)(newValue));
......@@ -4170,20 +4194,20 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
}
/**
* Get the reference BillingTeam
* Get the reference BilledByTeam
*/
public HiringTeam getBillingTeam () throws StorageException
public HiringTeam getBilledByTeam () throws StorageException
{
assertValid();
try
{
return (HiringTeam)(_BillingTeam.get ());
return (HiringTeam)(_BilledByTeam.get ());
}
catch (ClassCastException e)
{
LogMgr.log (BUSINESS_OBJECTS, LogLevel.SYSTEMERROR2, "Cache collision in HiringTeam:", this.getObjectID (), ", was trying to get HiringTeam:", getBillingTeamID ());
LogMgr.log (BUSINESS_OBJECTS, LogLevel.SYSTEMERROR2, "Instead I got:", _BillingTeam.get ().getClass ());
LogMgr.log (BUSINESS_OBJECTS, LogLevel.SYSTEMERROR2, "Cache collision in HiringTeam:", this.getObjectID (), ", was trying to get HiringTeam:", getBilledByTeamID ());
LogMgr.log (BUSINESS_OBJECTS, LogLevel.SYSTEMERROR2, "Instead I got:", _BilledByTeam.get ().getClass ());
throw e;
}
}
......@@ -4192,27 +4216,27 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
/**
* Get the object id for the referenced object. Does not force a DB access.
*/
public HiringTeam getBillingTeam (Get getType) throws StorageException
public HiringTeam getBilledByTeam (Get getType) throws StorageException
{
assertValid();
return _BillingTeam.get(getType);
return _BilledByTeam.get(getType);
}
/**
* Get the object id for the referenced object. Does not force a DB access.
*/
public Long getBillingTeamID ()
public Long getBilledByTeamID ()
{
assertValid();
if (_BillingTeam == null)
if (_BilledByTeam == null)
{
return null;
}
else
{
return _BillingTeam.getID ();
return _BilledByTeam.getID ();
}
}
......@@ -4220,7 +4244,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
* Called prior to the assoc 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 preBillingTeamChange (HiringTeam newBillingTeam) throws FieldException
protected void preBilledByTeamChange (HiringTeam newBilledByTeam) throws FieldException
{
}
......@@ -4230,36 +4254,49 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
* If a field exception is thrown, the value is still changed, however it
* may lead to the TX being rolled back
*/
protected void postBillingTeamChange () throws FieldException
protected void postBilledByTeamChange () throws FieldException
{
}
public FieldWriteability getWriteability_BillingTeam ()
public FieldWriteability getWriteability_BilledByTeam ()
{
return getFieldWritabilityUtil (FieldWriteability.TRUE);
}
/**
* Set the reference BillingTeam. Checks to ensure a new value
* Set the reference BilledByTeam. Checks to ensure a new value
* has been supplied. If so, marks the reference as altered and sets it.
*/
public void setBillingTeam (HiringTeam newBillingTeam) throws StorageException, FieldException
public void setBilledByTeam (HiringTeam newBilledByTeam) throws StorageException, FieldException
{
if (_BillingTeam.wouldReferencedChange (newBillingTeam))
if (_BilledByTeam.wouldReferencedChange (newBilledByTeam))
{
assertValid();
Debug.assertion (getWriteability_BillingTeam () != FieldWriteability.FALSE, "Assoc BillingTeam is not writeable");
preBillingTeamChange (newBillingTeam);
_BillingTeam.set (newBillingTeam);
Debug.assertion (getWriteability_BilledByTeam () != FieldWriteability.FALSE, "Assoc BilledByTeam is not writeable");
preBilledByTeamChange (newBilledByTeam);
HiringTeam oldBilledByTeam = getBilledByTeam ();
if (oldBilledByTeam != null)
{
// This is to stop validation from triggering when we are removed
_BilledByTeam.set (null);
oldBilledByTeam.removeFromBillingTeams ((HiringTeam)(this));
}
_BilledByTeam.set (newBilledByTeam);
if (newBilledByTeam != null)
{
newBilledByTeam.addToBillingTeams ((HiringTeam)(this));
}
postBillingTeamChange ();
postBilledByTeamChange ();
}
}
......@@ -4558,6 +4595,8 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
result.add("Clients");
result.add("BillingTeams");
return result;
}
......@@ -4579,6 +4618,11 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return Client.REFERENCE_Client ;
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
return HiringTeam.REFERENCE_HiringTeam ;
}
return super.getMultiAssocReferenceInstance(attribName);
}
......@@ -4597,6 +4641,11 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return Client.SINGLEREFERENCE_HiringTeam ;
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
return HiringTeam.SINGLEREFERENCE_BilledByTeam ;
}
return super.getMultiAssocBackReference(attribName);
}
......@@ -4618,6 +4667,11 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return this.getClientsCount();
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
return this.getBillingTeamsCount();
}
return super.getMultiAssocCount(attribName);
}
......@@ -4639,6 +4693,11 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return this.getClientsAt(index);
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
return this.getBillingTeamsAt(index);
}
return super.getMultiAssocAt(attribName, index);
}
......@@ -4664,6 +4723,13 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return;
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
addToBillingTeams((HiringTeam)newElement);
return;
}
super.addToMultiAssoc(attribName, newElement);
}
......@@ -4688,6 +4754,13 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return;
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
removeFromBillingTeams((HiringTeam)oldElement);
return;
}
super.removeFromMultiAssoc(attribName, oldElement);
}
......@@ -4708,6 +4781,12 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return;
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
_BillingTeams.__loadAssociation (elements);
return;
}
super.__loadMultiAssoc(attribName, elements);
}
......@@ -4726,6 +4805,11 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return _Clients.isLoaded ();
}
if (MULTIPLEREFERENCE_BillingTeams.equals(attribName))
{
return _BillingTeams.isLoaded ();
}
return super.__isMultiAssocLoaded(attribName);
}
......@@ -4870,6 +4954,75 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return _Clients.getSet ();
}
public FieldWriteability getWriteability_BillingTeams ()
{
return getFieldWritabilityUtil (FieldWriteability.TRUE);
}
public int getBillingTeamsCount () throws StorageException
{
assertValid();
return _BillingTeams.getReferencedObjectsCount ();
}
public void addToBillingTeams (HiringTeam newElement) throws StorageException
{
if (_BillingTeams.wouldAddChange (newElement))
{
assertValid();
Debug.assertion (getWriteability_BillingTeams () != FieldWriteability.FALSE, "MultiAssoc BillingTeams is not writeable (add)");
_BillingTeams.appendElement (newElement);
try
{
if (newElement.getBilledByTeam () != this)
{
newElement.setBilledByTeam ((HiringTeam)(this));
}
}
catch (Exception e)
{
throw NestedException.wrap(e);
}
}
}
public void removeFromBillingTeams (HiringTeam elementToRemove) throws StorageException
{
if (_BillingTeams.wouldRemoveChange (elementToRemove))
{
assertValid();
Debug.assertion (getWriteability_BillingTeams () != FieldWriteability.FALSE, "MultiAssoc BillingTeams is not writeable (remove)");
_BillingTeams.removeElement (elementToRemove);
try
{
if (elementToRemove.getBilledByTeam () != null)
{
elementToRemove.setBilledByTeam (null);
}
}
catch (Exception e)
{
throw NestedException.wrap(e);
}
}
}
public HiringTeam getBillingTeamsAt (int index) throws StorageException
{
return (HiringTeam)(_BillingTeams.getElementAt (index));
}
public SortedSet<HiringTeam> getBillingTeamsSet () throws StorageException
{
return _BillingTeams.getSet ();
}
public void onDelete ()
......@@ -4890,6 +5043,20 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
}
}
// Ensure we are removed from any loaded multi-associations that aren't mandatory
if (_BilledByTeam.isLoaded () || getTransaction ().isObjectLoaded (_BilledByTeam.getReferencedType (), getBilledByTeamID ()))
{
HiringTeam referenced = getBilledByTeam ();
if (referenced != null)
{
// Stop the callback
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG1, "Setting backreference to null BillingTeams from ", getObjectID (), " to ", referenced.getObjectID ());
_BilledByTeam.set (null);
referenced.removeFromBillingTeams ((HiringTeam)this);
}
}
for(CompanyUserHiringTeamLink referenced : CollectionUtils.reverse(getUsersSet()))
{
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG1, "Setting backreference to null HiringTeam from ", getObjectID (), " to ", referenced.getObjectID ());
......@@ -4902,6 +5069,12 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
referenced.setHiringTeam(null);
}
for(HiringTeam referenced : CollectionUtils.reverse(getBillingTeamsSet()))
{
LogMgr.log (BUSINESS_OBJECTS, LogLevel.DEBUG1, "Setting backreference to null BilledByTeam from ", getObjectID (), " to ", referenced.getObjectID ());
referenced.setBilledByTeam(null);
}
}
catch (Exception e)
{
......@@ -4988,7 +5161,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
tl_hiring_teamPSet.setAttrib (FIELD_MaxCap, HELPER_MaxCap.toObject (_MaxCap)); //
tl_hiring_teamPSet.setAttrib (FIELD_CouponExpiryDate, HELPER_CouponExpiryDate.toObject (_CouponExpiryDate)); //
_Company.getPersistentSets (allSets);
_BillingTeam.getPersistentSets (allSets);
_BilledByTeam.getPersistentSets (allSets);
_AddedByUser.getPersistentSets (allSets);
_PaymentPlan.getPersistentSets (allSets);
_Coupon.getPersistentSets (allSets);
......@@ -5032,7 +5205,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
_MaxCap = (Integer)(HELPER_MaxCap.fromObject (_MaxCap, tl_hiring_teamPSet.getAttrib (FIELD_MaxCap))); //
_CouponExpiryDate = (Date)(HELPER_CouponExpiryDate.fromObject (_CouponExpiryDate, tl_hiring_teamPSet.getAttrib (FIELD_CouponExpiryDate))); //
_Company.setFromPersistentSets (objectID, allSets);
_BillingTeam.setFromPersistentSets (objectID, allSets);
_BilledByTeam.setFromPersistentSets (objectID, allSets);
_AddedByUser.setFromPersistentSets (objectID, allSets);
_PaymentPlan.setFromPersistentSets (objectID, allSets);
_Coupon.setFromPersistentSets (objectID, allSets);
......@@ -5337,7 +5510,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
BaseHiringTeam sourceHiringTeam = (BaseHiringTeam)(source);
_Company.copyFrom (sourceHiringTeam._Company, linkToGhosts);
_BillingTeam.copyFrom (sourceHiringTeam._BillingTeam, linkToGhosts);
_BilledByTeam.copyFrom (sourceHiringTeam._BilledByTeam, linkToGhosts);
_AddedByUser.copyFrom (sourceHiringTeam._AddedByUser, linkToGhosts);
_PaymentPlan.copyFrom (sourceHiringTeam._PaymentPlan, linkToGhosts);
_Coupon.copyFrom (sourceHiringTeam._Coupon, linkToGhosts);
......@@ -5359,6 +5532,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
_Users.copyFrom (sourceHiringTeam._Users, linkToGhosts);
_Clients.copyFrom (sourceHiringTeam._Clients, linkToGhosts);
_BillingTeams.copyFrom (sourceHiringTeam._BillingTeams, linkToGhosts);
}
}
......@@ -5413,12 +5587,13 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
_StripeBrand = (String)(HELPER_StripeBrand.readExternal (_StripeBrand, vals.get(FIELD_StripeBrand))); //
_StripeLast4 = (String)(HELPER_StripeLast4.readExternal (_StripeLast4, vals.get(FIELD_StripeLast4))); //
_Company.readExternalData(vals.get(SINGLEREFERENCE_Company));
_BillingTeam.readExternalData(vals.get(SINGLEREFERENCE_BillingTeam));
_BilledByTeam.readExternalData(vals.get(SINGLEREFERENCE_BilledByTeam));
_AddedByUser.readExternalData(vals.get(SINGLEREFERENCE_AddedByUser));
_PaymentPlan.readExternalData(vals.get(SINGLEREFERENCE_PaymentPlan));
_Coupon.readExternalData(vals.get(SINGLEREFERENCE_Coupon));
_Users.readExternalData(vals.get(MULTIPLEREFERENCE_Users));
_Clients.readExternalData(vals.get(MULTIPLEREFERENCE_Clients));
_BillingTeams.readExternalData(vals.get(MULTIPLEREFERENCE_BillingTeams));
}
......@@ -5460,12 +5635,13 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
vals.put (FIELD_StripeBrand, HELPER_StripeBrand.writeExternal (_StripeBrand));
vals.put (FIELD_StripeLast4, HELPER_StripeLast4.writeExternal (_StripeLast4));
vals.put (SINGLEREFERENCE_Company, _Company.writeExternalData());
vals.put (SINGLEREFERENCE_BillingTeam, _BillingTeam.writeExternalData());
vals.put (SINGLEREFERENCE_BilledByTeam, _BilledByTeam.writeExternalData());
vals.put (SINGLEREFERENCE_AddedByUser, _AddedByUser.writeExternalData());
vals.put (SINGLEREFERENCE_PaymentPlan, _PaymentPlan.writeExternalData());
vals.put (SINGLEREFERENCE_Coupon, _Coupon.writeExternalData());
vals.put (MULTIPLEREFERENCE_Users, _Users.writeExternalData());
vals.put (MULTIPLEREFERENCE_Clients, _Clients.writeExternalData());
vals.put (MULTIPLEREFERENCE_BillingTeams, _BillingTeams.writeExternalData());
}
......@@ -5582,7 +5758,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
// Compare single assocs
_Company.compare (otherHiringTeam._Company, listener);
_BillingTeam.compare (otherHiringTeam._BillingTeam, listener);
_BilledByTeam.compare (otherHiringTeam._BilledByTeam, listener);
_AddedByUser.compare (otherHiringTeam._AddedByUser, listener);
_PaymentPlan.compare (otherHiringTeam._PaymentPlan, listener);
_Coupon.compare (otherHiringTeam._Coupon, listener);
......@@ -5591,6 +5767,7 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
// Compare multiple assocs
_Users.compare (otherHiringTeam._Users, listener);
_Clients.compare (otherHiringTeam._Clients, listener);
_BillingTeams.compare (otherHiringTeam._BillingTeams, listener);
}
}
......@@ -5638,12 +5815,13 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
visitor.visitField(this, FIELD_MaxCap, HELPER_MaxCap.toObject(getMaxCap()));
visitor.visitField(this, FIELD_CouponExpiryDate, HELPER_CouponExpiryDate.toObject(getCouponExpiryDate()));
visitor.visitAssociation (_Company);
visitor.visitAssociation (_BillingTeam);
visitor.visitAssociation (_BilledByTeam);
visitor.visitAssociation (_AddedByUser);
visitor.visitAssociation (_PaymentPlan);
visitor.visitAssociation (_Coupon);
visitor.visitAssociation (_Users);
visitor.visitAssociation (_Clients);
visitor.visitAssociation (_BillingTeams);
}
......@@ -5656,9 +5834,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
visitor.visit (_Company);
}
if (scope.includes (_BillingTeam))
if (scope.includes (_BilledByTeam))
{
visitor.visit (_BillingTeam);
visitor.visit (_BilledByTeam);
}
if (scope.includes (_AddedByUser))
{
......@@ -5680,6 +5858,10 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
visitor.visit (_Clients);
}
if (scope.includes (_BillingTeams))
{
visitor.visit (_BillingTeams);
}
}
......@@ -5809,9 +5991,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
return filter.matches (getCompany ());
}
else if (attribName.equals (SINGLEREFERENCE_BillingTeam))
else if (attribName.equals (SINGLEREFERENCE_BilledByTeam))
{
return filter.matches (getBillingTeam ());
return filter.matches (getBilledByTeam ());
}
else if (attribName.equals (SINGLEREFERENCE_AddedByUser))
{
......@@ -6012,9 +6194,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
return this;
}
public SearchAll andBillingTeam (QueryFilter<HiringTeam> filter)
public SearchAll andBilledByTeam (QueryFilter<HiringTeam> filter)
{
filter.addFilter (context, "tl_hiring_team.billing_team_id", "BillingTeam");
filter.addFilter (context, "tl_hiring_team.billing_team_id", "BilledByTeam");
return this;
}
......@@ -6573,13 +6755,17 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
return getWriteability_Clients ();
}
else if (fieldName.equals (MULTIPLEREFERENCE_BillingTeams))
{
return getWriteability_BillingTeams ();
}
else if (fieldName.equals (SINGLEREFERENCE_Company))
{
return getWriteability_Company ();
}
else if (fieldName.equals (SINGLEREFERENCE_BillingTeam))
else if (fieldName.equals (SINGLEREFERENCE_BilledByTeam))
{
return getWriteability_BillingTeam ();
return getWriteability_BilledByTeam ();
}
else if (fieldName.equals (SINGLEREFERENCE_AddedByUser))
{
......@@ -7452,6 +7638,10 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
return toClients ();
}
if (name.equals ("BillingTeams"))
{
return toBillingTeams ();
}
if (name.equals ("IsLogoDeleted"))
{
return toIsLogoDeleted ();
......@@ -7572,9 +7762,9 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
return toCompany ();
}
if (name.equals ("BillingTeam"))
if (name.equals ("BilledByTeam"))
{
return toBillingTeam ();
return toBilledByTeam ();
}
if (name.equals ("AddedByUser"))
{
......@@ -7657,11 +7847,11 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
return Company.REFERENCE_Company.new CompanyPipeLineFactory<From, Company> (this, new ORMSingleAssocPipe<Me, Company>(SINGLEREFERENCE_Company, filter));
}
public HiringTeam.HiringTeamPipeLineFactory<From, HiringTeam> toBillingTeam () { return toBillingTeam (Filter.ALL); }
public HiringTeam.HiringTeamPipeLineFactory<From, HiringTeam> toBilledByTeam () { return toBilledByTeam (Filter.ALL); }
public HiringTeam.HiringTeamPipeLineFactory<From, HiringTeam> toBillingTeam (Filter<HiringTeam> filter)
public HiringTeam.HiringTeamPipeLineFactory<From, HiringTeam> toBilledByTeam (Filter<HiringTeam> filter)
{
return HiringTeam.REFERENCE_HiringTeam.new HiringTeamPipeLineFactory<From, HiringTeam> (this, new ORMSingleAssocPipe<Me, HiringTeam>(SINGLEREFERENCE_BillingTeam, filter));
return HiringTeam.REFERENCE_HiringTeam.new HiringTeamPipeLineFactory<From, HiringTeam> (this, new ORMSingleAssocPipe<Me, HiringTeam>(SINGLEREFERENCE_BilledByTeam, filter));
}
public CompanyUser.CompanyUserPipeLineFactory<From, CompanyUser> toAddedByUser () { return toAddedByUser (Filter.ALL); }
......@@ -7693,6 +7883,12 @@ public abstract class BaseHiringTeam extends BaseBusinessClass
{
return Client.REFERENCE_Client.new ClientPipeLineFactory<From, Client> (this, new ORMMultiAssocPipe<Me, Client>(MULTIPLEREFERENCE_Clients, filter));
}
public HiringTeam.HiringTeamPipeLineFactory<From, HiringTeam> toBillingTeams () { return toBillingTeams(Filter.ALL); }
public HiringTeam.HiringTeamPipeLineFactory<From, HiringTeam> toBillingTeams (Filter<HiringTeam> filter)
{
return HiringTeam.REFERENCE_HiringTeam.new HiringTeamPipeLineFactory<From, HiringTeam> (this, new ORMMultiAssocPipe<Me, HiringTeam>(MULTIPLEREFERENCE_BillingTeams, filter));
}
}
......@@ -7758,7 +7954,7 @@ class DummyHiringTeam extends HiringTeam
return Company.DUMMY_Company.getObjectID();
}
public HiringTeam getBillingTeam () throws StorageException
public HiringTeam getBilledByTeam () throws StorageException
{
return (HiringTeam)(HiringTeam.DUMMY_HiringTeam);
}
......@@ -7767,7 +7963,7 @@ class DummyHiringTeam extends HiringTeam
/**
* Get the object id for the referenced object. Does not force a DB access.
*/
public Long getBillingTeamID ()
public Long getBilledByTeamID ()
{
return HiringTeam.DUMMY_HiringTeam.getObjectID();
}
......@@ -7848,6 +8044,23 @@ class DummyHiringTeam extends HiringTeam
return new TreeSet();
}
public int getBillingTeamsCount () throws StorageException
{
return 0;
}
public HiringTeam getBillingTeamsAt (int index) throws StorageException
{
throw new RuntimeException ("No elements in a dummy object in association BillingTeams");
}
public SortedSet getBillingTeamsSet () throws StorageException
{
return new TreeSet();
}
}
......@@ -148,7 +148,12 @@ public class HiringTeam extends BaseHiringTeam
public boolean canCreateJob()
{
return getAvailableCredits() > getUsedCredits() || !getHasCap() || (getHasCap() && getMaxCap() > getUsedCredits());
if(getManageOwnBilling())
{
return getAvailableCredits() > getUsedCredits() || !getHasCap() || (getHasCap() && getMaxCap() > getUsedCredits());
}
return getBilledByTeam().canCreateJob();
}
@Override
......@@ -163,7 +168,7 @@ public class HiringTeam extends BaseHiringTeam
}
@Override
public FieldWriteability getWriteability_BillingTeam()
public FieldWriteability getWriteability_BilledByTeam()
{
if(!getManageOwnBilling())
{
......
......@@ -8,8 +8,9 @@
<IMPORT value="performa.orm.types.TimeZone"/>
<IMPORT value="oneit.business.shopping.orm.*"/>
<MULTIPLEREFERENCE name="Users" type="CompanyUserHiringTeamLink" backreferenceName="HiringTeam" />
<MULTIPLEREFERENCE name="Clients" type="Client" backreferenceName="HiringTeam" />
<MULTIPLEREFERENCE name="Users" type="CompanyUserHiringTeamLink" backreferenceName="HiringTeam" />
<MULTIPLEREFERENCE name="Clients" type="Client" backreferenceName="HiringTeam" />
<MULTIPLEREFERENCE name="BillingTeams" type="HiringTeam" backreferenceName="BilledByTeam" />
<TRANSIENT name="IsLogoDeleted" type="Boolean" defaultValue="Boolean.FALSE"/>
<TRANSIENT name="CouponCode" type="String" length="20"/>
......@@ -44,8 +45,8 @@
<ATTRIB name="MaxCap" type="Integer" dbcol="max_cap" />
<ATTRIB name="CouponExpiryDate" type="Date" dbcol="coupon_expiry_date" />
<SINGLEREFERENCE name="Company" type="Company" dbcol="company_id" mandatory="true" backreferenceName="HiringTeams" />
<SINGLEREFERENCE name="BillingTeam" type="HiringTeam" dbcol="billing_team_id" mandatory="false" />
<SINGLEREFERENCE name="Company" type="Company" dbcol="company_id" mandatory="true" backreferenceName="HiringTeams" />
<SINGLEREFERENCE name="BilledByTeam" type="HiringTeam" dbcol="billing_team_id" mandatory="false" backreferenceName="BillingTeams" />
<SINGLEREFERENCE name="AddedByUser" type="CompanyUser" dbcol="added_by_user_id" mandatory="true" />
<SINGLEREFERENCE name="PaymentPlan" type="PaymentPlan" dbcol="payment_plan_id" mandatory="false" />
<SINGLEREFERENCE name="Coupon" type="StripeCoupon" dbcol="coupon_id" mandatory="false" />
......
......@@ -193,7 +193,7 @@ public class HiringTeamPersistenceMgr extends ObjectPersistenceMgr
!tl_hiring_teamPSet.containsAttrib(HiringTeam.FIELD_MaxCap)||
!tl_hiring_teamPSet.containsAttrib(HiringTeam.FIELD_CouponExpiryDate)||
!tl_hiring_teamPSet.containsAttrib(HiringTeam.SINGLEREFERENCE_Company)||
!tl_hiring_teamPSet.containsAttrib(HiringTeam.SINGLEREFERENCE_BillingTeam)||
!tl_hiring_teamPSet.containsAttrib(HiringTeam.SINGLEREFERENCE_BilledByTeam)||
!tl_hiring_teamPSet.containsAttrib(HiringTeam.SINGLEREFERENCE_AddedByUser)||
!tl_hiring_teamPSet.containsAttrib(HiringTeam.SINGLEREFERENCE_PaymentPlan)||
!tl_hiring_teamPSet.containsAttrib(HiringTeam.SINGLEREFERENCE_Coupon))
......@@ -252,6 +252,16 @@ public class HiringTeamPersistenceMgr extends ObjectPersistenceMgr
return results;
}
else if (refName.equals (HiringTeam.SINGLEREFERENCE_BilledByTeam))
{
String query = "SELECT " + SELECT_COLUMNS +
"FROM {PREFIX}tl_hiring_team " +
"WHERE " + SELECT_JOINS + "billing_team_id = ?";
BaseBusinessClass[] results = loadQuery (allPSets, sqlMgr, context, query, new Object[] { _objectID.longID () }, null, false);
return results;
}
else
{
throw new IllegalArgumentException ("Illegal reference type:" + refName);
......@@ -279,7 +289,7 @@ public class HiringTeamPersistenceMgr extends ObjectPersistenceMgr
"SET hiring_team_name = ?, hiring_team_logo = ?, hiring_team_type = ?, industry = ?, time_zone = ?, state = ?, country = ?, post_code = ?, city = ?, has_client_support = ?, manage_own_billing = ?, stripe_reference = ?, stripe_subscription = ?, stripe_fixed_sub_item = ?, stripe_metered_sub_item = ?, name_on_card = ?, card_post_code = ?, card_id = ?, plan_renewed_on = ?, used_credits = ?, available_credits = ?, is_ppj = ?, has_cap = ?, max_cap = ?, coupon_expiry_date = ?, company_id = ? , billing_team_id = ? , added_by_user_id = ? , payment_plan_id = ? , coupon_id = ? , object_LAST_UPDATED_DATE = " + sqlMgr.getPortabilityServices ().getTimestampExpression () + " " +
"WHERE tl_hiring_team.object_id = ? AND " + getConcurrencyCheck (sqlMgr, "object_LAST_UPDATED_DATE", obj.getObjectLastModified ()) + " ",
CollectionUtils.listEntry (HELPER_HiringTeamName.getForSQL(dummyHiringTeamName, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamName))).listEntry (HELPER_HiringTeamLogo.getForSQL(dummyHiringTeamLogo, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamLogo))).listEntry (HELPER_HiringTeamType.getForSQL(dummyHiringTeamType, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamType))).listEntry (HELPER_Industry.getForSQL(dummyIndustry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Industry))).listEntry (HELPER_TimeZone.getForSQL(dummyTimeZone, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_TimeZone))).listEntry (HELPER_State.getForSQL(dummyState, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_State))).listEntry (HELPER_Country.getForSQL(dummyCountry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Country))).listEntry (HELPER_PostCode.getForSQL(dummyPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PostCode))).listEntry (HELPER_City.getForSQL(dummyCity, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_City))).listEntry (HELPER_HasClientSupport.getForSQL(dummyHasClientSupport, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasClientSupport))).listEntry (HELPER_ManageOwnBilling.getForSQL(dummyManageOwnBilling, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_ManageOwnBilling))).listEntry (HELPER_StripeReference.getForSQL(dummyStripeReference, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeReference))).listEntry (HELPER_StripeSubscription.getForSQL(dummyStripeSubscription, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeSubscription))).listEntry (HELPER_StripeFixedSubItem.getForSQL(dummyStripeFixedSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeFixedSubItem))).listEntry (HELPER_StripeMeteredSubItem.getForSQL(dummyStripeMeteredSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeMeteredSubItem))).listEntry (HELPER_NameOnCard.getForSQL(dummyNameOnCard, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_NameOnCard))).listEntry (HELPER_CardPostCode.getForSQL(dummyCardPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardPostCode))).listEntry (HELPER_CardID.getForSQL(dummyCardID, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardID))).listEntry (HELPER_PlanRenewedOn.getForSQL(dummyPlanRenewedOn, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PlanRenewedOn))).listEntry (HELPER_UsedCredits.getForSQL(dummyUsedCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_UsedCredits))).listEntry (HELPER_AvailableCredits.getForSQL(dummyAvailableCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_AvailableCredits))).listEntry (HELPER_IsPPJ.getForSQL(dummyIsPPJ, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_IsPPJ))).listEntry (HELPER_HasCap.getForSQL(dummyHasCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasCap))).listEntry (HELPER_MaxCap.getForSQL(dummyMaxCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_MaxCap))).listEntry (HELPER_CouponExpiryDate.getForSQL(dummyCouponExpiryDate, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CouponExpiryDate))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Company)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_BillingTeam)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_AddedByUser)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_PaymentPlan)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Coupon)))).listEntry (objectID.longID ()).listEntry (obj.getObjectLastModified ()).toList().toArray());
CollectionUtils.listEntry (HELPER_HiringTeamName.getForSQL(dummyHiringTeamName, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamName))).listEntry (HELPER_HiringTeamLogo.getForSQL(dummyHiringTeamLogo, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamLogo))).listEntry (HELPER_HiringTeamType.getForSQL(dummyHiringTeamType, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamType))).listEntry (HELPER_Industry.getForSQL(dummyIndustry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Industry))).listEntry (HELPER_TimeZone.getForSQL(dummyTimeZone, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_TimeZone))).listEntry (HELPER_State.getForSQL(dummyState, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_State))).listEntry (HELPER_Country.getForSQL(dummyCountry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Country))).listEntry (HELPER_PostCode.getForSQL(dummyPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PostCode))).listEntry (HELPER_City.getForSQL(dummyCity, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_City))).listEntry (HELPER_HasClientSupport.getForSQL(dummyHasClientSupport, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasClientSupport))).listEntry (HELPER_ManageOwnBilling.getForSQL(dummyManageOwnBilling, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_ManageOwnBilling))).listEntry (HELPER_StripeReference.getForSQL(dummyStripeReference, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeReference))).listEntry (HELPER_StripeSubscription.getForSQL(dummyStripeSubscription, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeSubscription))).listEntry (HELPER_StripeFixedSubItem.getForSQL(dummyStripeFixedSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeFixedSubItem))).listEntry (HELPER_StripeMeteredSubItem.getForSQL(dummyStripeMeteredSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeMeteredSubItem))).listEntry (HELPER_NameOnCard.getForSQL(dummyNameOnCard, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_NameOnCard))).listEntry (HELPER_CardPostCode.getForSQL(dummyCardPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardPostCode))).listEntry (HELPER_CardID.getForSQL(dummyCardID, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardID))).listEntry (HELPER_PlanRenewedOn.getForSQL(dummyPlanRenewedOn, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PlanRenewedOn))).listEntry (HELPER_UsedCredits.getForSQL(dummyUsedCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_UsedCredits))).listEntry (HELPER_AvailableCredits.getForSQL(dummyAvailableCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_AvailableCredits))).listEntry (HELPER_IsPPJ.getForSQL(dummyIsPPJ, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_IsPPJ))).listEntry (HELPER_HasCap.getForSQL(dummyHasCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasCap))).listEntry (HELPER_MaxCap.getForSQL(dummyMaxCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_MaxCap))).listEntry (HELPER_CouponExpiryDate.getForSQL(dummyCouponExpiryDate, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CouponExpiryDate))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Company)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_BilledByTeam)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_AddedByUser)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_PaymentPlan)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Coupon)))).listEntry (objectID.longID ()).listEntry (obj.getObjectLastModified ()).toList().toArray());
if (rowsUpdated != 1)
{
......@@ -562,7 +572,7 @@ public class HiringTeamPersistenceMgr extends ObjectPersistenceMgr
tl_hiring_teamPSet.setAttrib(HiringTeam.FIELD_CouponExpiryDate, HELPER_CouponExpiryDate.getFromRS(dummyCouponExpiryDate, r, "coupon_expiry_date"));
tl_hiring_teamPSet.setAttrib(HiringTeam.SINGLEREFERENCE_Company, r.getObject ("company_id"));
tl_hiring_teamPSet.setAttrib(HiringTeam.SINGLEREFERENCE_BillingTeam, r.getObject ("billing_team_id"));
tl_hiring_teamPSet.setAttrib(HiringTeam.SINGLEREFERENCE_BilledByTeam, r.getObject ("billing_team_id"));
tl_hiring_teamPSet.setAttrib(HiringTeam.SINGLEREFERENCE_AddedByUser, r.getObject ("added_by_user_id"));
tl_hiring_teamPSet.setAttrib(HiringTeam.SINGLEREFERENCE_PaymentPlan, r.getObject ("payment_plan_id"));
tl_hiring_teamPSet.setAttrib(HiringTeam.SINGLEREFERENCE_Coupon, r.getObject ("coupon_id"));
......@@ -585,7 +595,7 @@ public class HiringTeamPersistenceMgr extends ObjectPersistenceMgr
" (hiring_team_name, hiring_team_logo, hiring_team_type, industry, time_zone, state, country, post_code, city, has_client_support, manage_own_billing, stripe_reference, stripe_subscription, stripe_fixed_sub_item, stripe_metered_sub_item, name_on_card, card_post_code, card_id, plan_renewed_on, used_credits, available_credits, is_ppj, has_cap, max_cap, coupon_expiry_date, company_id, billing_team_id, added_by_user_id, payment_plan_id, coupon_id, object_id, object_LAST_UPDATED_DATE, object_CREATED_DATE) " +
"VALUES " +
" (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, " + sqlMgr.getPortabilityServices ().getTimestampExpression () + ", " + sqlMgr.getPortabilityServices ().getTimestampExpression () + ")",
CollectionUtils.listEntry (HELPER_HiringTeamName.getForSQL(dummyHiringTeamName, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamName))).listEntry (HELPER_HiringTeamLogo.getForSQL(dummyHiringTeamLogo, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamLogo))).listEntry (HELPER_HiringTeamType.getForSQL(dummyHiringTeamType, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamType))).listEntry (HELPER_Industry.getForSQL(dummyIndustry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Industry))).listEntry (HELPER_TimeZone.getForSQL(dummyTimeZone, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_TimeZone))).listEntry (HELPER_State.getForSQL(dummyState, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_State))).listEntry (HELPER_Country.getForSQL(dummyCountry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Country))).listEntry (HELPER_PostCode.getForSQL(dummyPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PostCode))).listEntry (HELPER_City.getForSQL(dummyCity, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_City))).listEntry (HELPER_HasClientSupport.getForSQL(dummyHasClientSupport, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasClientSupport))).listEntry (HELPER_ManageOwnBilling.getForSQL(dummyManageOwnBilling, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_ManageOwnBilling))).listEntry (HELPER_StripeReference.getForSQL(dummyStripeReference, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeReference))).listEntry (HELPER_StripeSubscription.getForSQL(dummyStripeSubscription, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeSubscription))).listEntry (HELPER_StripeFixedSubItem.getForSQL(dummyStripeFixedSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeFixedSubItem))).listEntry (HELPER_StripeMeteredSubItem.getForSQL(dummyStripeMeteredSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeMeteredSubItem))).listEntry (HELPER_NameOnCard.getForSQL(dummyNameOnCard, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_NameOnCard))).listEntry (HELPER_CardPostCode.getForSQL(dummyCardPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardPostCode))).listEntry (HELPER_CardID.getForSQL(dummyCardID, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardID))).listEntry (HELPER_PlanRenewedOn.getForSQL(dummyPlanRenewedOn, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PlanRenewedOn))).listEntry (HELPER_UsedCredits.getForSQL(dummyUsedCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_UsedCredits))).listEntry (HELPER_AvailableCredits.getForSQL(dummyAvailableCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_AvailableCredits))).listEntry (HELPER_IsPPJ.getForSQL(dummyIsPPJ, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_IsPPJ))).listEntry (HELPER_HasCap.getForSQL(dummyHasCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasCap))).listEntry (HELPER_MaxCap.getForSQL(dummyMaxCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_MaxCap))).listEntry (HELPER_CouponExpiryDate.getForSQL(dummyCouponExpiryDate, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CouponExpiryDate))) .listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Company)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_BillingTeam)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_AddedByUser)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_PaymentPlan)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Coupon)))) .listEntry (objectID.longID ()).toList().toArray());
CollectionUtils.listEntry (HELPER_HiringTeamName.getForSQL(dummyHiringTeamName, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamName))).listEntry (HELPER_HiringTeamLogo.getForSQL(dummyHiringTeamLogo, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamLogo))).listEntry (HELPER_HiringTeamType.getForSQL(dummyHiringTeamType, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HiringTeamType))).listEntry (HELPER_Industry.getForSQL(dummyIndustry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Industry))).listEntry (HELPER_TimeZone.getForSQL(dummyTimeZone, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_TimeZone))).listEntry (HELPER_State.getForSQL(dummyState, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_State))).listEntry (HELPER_Country.getForSQL(dummyCountry, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_Country))).listEntry (HELPER_PostCode.getForSQL(dummyPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PostCode))).listEntry (HELPER_City.getForSQL(dummyCity, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_City))).listEntry (HELPER_HasClientSupport.getForSQL(dummyHasClientSupport, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasClientSupport))).listEntry (HELPER_ManageOwnBilling.getForSQL(dummyManageOwnBilling, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_ManageOwnBilling))).listEntry (HELPER_StripeReference.getForSQL(dummyStripeReference, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeReference))).listEntry (HELPER_StripeSubscription.getForSQL(dummyStripeSubscription, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeSubscription))).listEntry (HELPER_StripeFixedSubItem.getForSQL(dummyStripeFixedSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeFixedSubItem))).listEntry (HELPER_StripeMeteredSubItem.getForSQL(dummyStripeMeteredSubItem, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_StripeMeteredSubItem))).listEntry (HELPER_NameOnCard.getForSQL(dummyNameOnCard, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_NameOnCard))).listEntry (HELPER_CardPostCode.getForSQL(dummyCardPostCode, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardPostCode))).listEntry (HELPER_CardID.getForSQL(dummyCardID, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CardID))).listEntry (HELPER_PlanRenewedOn.getForSQL(dummyPlanRenewedOn, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_PlanRenewedOn))).listEntry (HELPER_UsedCredits.getForSQL(dummyUsedCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_UsedCredits))).listEntry (HELPER_AvailableCredits.getForSQL(dummyAvailableCredits, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_AvailableCredits))).listEntry (HELPER_IsPPJ.getForSQL(dummyIsPPJ, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_IsPPJ))).listEntry (HELPER_HasCap.getForSQL(dummyHasCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_HasCap))).listEntry (HELPER_MaxCap.getForSQL(dummyMaxCap, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_MaxCap))).listEntry (HELPER_CouponExpiryDate.getForSQL(dummyCouponExpiryDate, tl_hiring_teamPSet.getAttrib (HiringTeam.FIELD_CouponExpiryDate))) .listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Company)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_BilledByTeam)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_AddedByUser)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_PaymentPlan)))).listEntry (SQLManager.CheckNull((Long)(tl_hiring_teamPSet.getAttrib (HiringTeam.SINGLEREFERENCE_Coupon)))) .listEntry (objectID.longID ()).toList().toArray());
tl_hiring_teamPSet.setStatus (PersistentSetStatus.PROCESSED);
}
......
......@@ -294,7 +294,7 @@ public class StripeUtils
Map<String, Object> params = new HashMap<>();
Date now = new Date();
HiringTeam billingTeam = hiringTeam.getManageOwnBilling() ? hiringTeam: hiringTeam.getBillingTeam();
HiringTeam billingTeam = hiringTeam.getManageOwnBilling() ? hiringTeam: hiringTeam.getBilledByTeam();
params.put("quantity", 1);
params.put("timestamp", now.getTime() / 1000L);
......
......@@ -17,6 +17,11 @@
boolean fromJob = request.getParameter("fromJob") != null ? Boolean.parseBoolean(request.getParameter("fromJob")) : false;
String nextPage = WebUtils.getSamePageInRenderMode(request, (fromJob ? "Page" : WebUtils.VIEW_APPLICANTS));
HiringTeam hiringTeam = job.getHiringTeam();
HiringTeam billlingTeam = hiringTeam.getManageOwnBilling() ? hiringTeam : hiringTeam.getBilledByTeam();
Integer activeCount = billlingTeam.getUsedCredits();
Integer totCount = billlingTeam.getAvailableCredits();
Integer remCount = (totCount - activeCount) > 0 ? (totCount - activeCount) : 0;
%>
<script>
function copyToClipboard() {
......@@ -71,7 +76,7 @@
<oneit:button value="<%= "Go to Job" + (fromJob ? "s" : "")%>" name="gotoPage" cssClass="btn btn-primary largeBtn"
requestAttribs='<%= CollectionUtils.mapEntry("nextPage", nextPage).toMap() %>'/>
</div>
<div class="space-55">You have 4 jobs remaining for this month.</div>
<div class="space-55">You have <%= remCount %> jobs remaining for this month.</div>
</div>
<div class="job-desc-box">
......
......@@ -19,7 +19,7 @@
if(ownBilling)
{
hiringTeam.setBillingTeam(null);
hiringTeam.setBilledByTeam(null);
}
%>
</oneit:form>
\ No newline at end of file
......@@ -31,9 +31,10 @@
Debug.assertion(job != null, "Job is null in admin portal create job");
HiringTeam hiringTeam = job.getHiringTeam();
HiringTeam hiringTeam = job.getHiringTeam();
HiringTeam billlingTeam = hiringTeam.getManageOwnBilling() ? hiringTeam : hiringTeam.getBilledByTeam();
process.setAttribute("HiringTeam", hiringTeam);
process.setAttribute("HiringTeam", billlingTeam);
%>
<oneit:form name="editJob" method="post" enctype="multipart/form-data">
......@@ -44,10 +45,10 @@
<h1 class="page-title">Review Job
<%
if(hiringTeam.getPaymentPlan() != null)
if(billlingTeam.getPaymentPlan() != null)
{
Integer activeCount = hiringTeam.getUsedCredits();
Integer totCount = hiringTeam.getAvailableCredits();
Integer activeCount = billlingTeam.getUsedCredits();
Integer totCount = billlingTeam.getAvailableCredits();
Integer remCount = (totCount - activeCount) > 0 ? (totCount - activeCount) : 0;
%>
<div style="float:right;">
......@@ -106,7 +107,7 @@
</span>
</div>
<%
if(job.getHiringTeam().showHasClientSupport())
if(hiringTeam.showHasClientSupport())
{
%>
<div class="col-md-6 review-medium-title">
......@@ -347,7 +348,7 @@
.toMap() %>" />
<%
if(hiringTeam.getCardID() == null)
if(billlingTeam.getCardID() == null)
{
%>
<oneit:button value="Open this Job" name="saveJob" cssClass="btn btn-primary btn-green top-margin-25 largeBtn"
......@@ -359,14 +360,14 @@
.toMap() %>" />
<%
}
else if(hiringTeam.isTrue(hiringTeam.getIsPPJ()))
else if(billlingTeam.isTrue(billlingTeam.getIsPPJ()))
{
%>
<oneit:button value="Open this Job" name="savePayment" cssClass="btn btn-primary btn-green top-margin-25 largeBtn"
requestAttribs="<%= CollectionUtils.mapEntry("nextPage", sharingPage).toMap() %>" />
<%
}
else if(hiringTeam.canCreateJob())
else if(billlingTeam.canCreateJob())
{
%>
<oneit:button value="Open this Job" name="saveJob" cssClass="btn btn-primary btn-green top-margin-25 largeBtn"
......
......@@ -45,4 +45,4 @@ HiringTeam.HasClientSupport = We help clients with hiring
HiringTeam.HiringTeamLogo = Hiring Team Logo
HiringTeam.HiringTeamType = Hiring Team Type
HiringTeam.HiringTeamName = Hiring Team Name
HiringTeam.BillingTeam = Billing Team
HiringTeam.BilledByTeam = Billing Team
......@@ -135,14 +135,14 @@
<div class="col-md-6">
<oneit:recalcClass htmlTag="div" classScript="hiringTeam.getManageOwnBilling() ? 'hide': 'show'" hiringTeam="<%= hiringTeam %>">
<div class="wider-select">
<tagfile:ormsingleasso_select obj="<%= hiringTeam %>" assocName="BillingTeam" options="<%= Utils.getOtherHiringTeams(hiringTeam) %>"/>
<tagfile:ormsingleasso_select obj="<%= hiringTeam %>" assocName="BilledByTeam" options="<%= Utils.getOtherHiringTeams(hiringTeam) %>"/>
</div>
</oneit:recalcClass>
</div>
</div>
<%
}
%>
%>
<div class="form-brack-line-sub"></div>
<div class="form-group row">
......
......@@ -36,6 +36,10 @@
<NODE name="INDEX" factory="Participant" class="oneit.sql.transfer.DefineIndexOperation" tableName="tl_hiring_team" indexName="idx_tl_hiring_team_company_id" isUnique="false">
<column name="company_id"/>
</NODE>
<NODE name="INDEX" factory="Participant" class="oneit.sql.transfer.DefineIndexOperation" tableName="tl_hiring_team" indexName="idx_tl_hiring_team_billing_team_id" isUnique="false">
<column name="billing_team_id"/>
</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