Commit 027b8ef5 by Nilu

S12990345 # Client - Incoming Issues (raised by Client) #Invited team member not showing

S13001995 # Client - Incoming Issues (raised by Client) #Invited user gets System Unavailable on sign-up
parent f258d89e
......@@ -46,11 +46,13 @@ public class SendCompanyUserInvitesFP extends SaveFP
{
if(!isSkip)
{
for(CompanyUser cUser : company.getUsersSet())
HiringTeam hiringTeam = company.getDefaultHiringTeam();
for(CompanyUserHiringTeamLink cUser : hiringTeam.getUsersSet())
{
if(!CollectionUtils.equals(cUser, company.getAddedByUser()))
if(!CollectionUtils.equals(cUser.getCompanyUser(), company.getAddedByUser()) && cUser.getCompanyUser() != null)
{
SecUser secUser = cUser.getUser();
SecUser secUser = cUser.getCompanyUser().getUser();
BusinessObjectParser.assertFieldCondition(secUser.getEmail()!= null, secUser, SecUser.FIELD_Email, "mandatory", exceptions, true, request);
......@@ -81,6 +83,7 @@ public class SendCompanyUserInvitesFP extends SaveFP
HttpServletRequest request = submission.getRequest();
ObjectTransaction objTran = process.getTransaction();
Company company = (Company) process.getAttribute("Company");
HiringTeam hiringTeam = company.getDefaultHiringTeam();
CompanyUser companyUser = (CompanyUser) request.getAttribute("CompanyUser");
SecUser secUser = companyUser.getUser();
Boolean socialLogin = CollectionUtils.equals(process.getAttribute("socialLogin"), Boolean.TRUE);
......@@ -120,15 +123,21 @@ public class SendCompanyUserInvitesFP extends SaveFP
//process user invitations
for(CompanyUser cUser : company.getUsersSet())
for(CompanyUserHiringTeamLink cUser : hiringTeam.getUsersSet())
{
if(!CollectionUtils.equals(cUser.getCompanyUser(), company.getAddedByUser()))
{
if(!CollectionUtils.equals(cUser, company.getAddedByUser()))
if(cUser.getCompanyUser() == null)
{
SecUser sUser = cUser.getUser();
cUser.delete();
continue;
}
SecUser sUser = cUser.getCompanyUser().getUser();
if(isSkip) //remove invitaions due to skip
{
sUser.removeFromExtensions(cUser);
sUser.removeFromExtensions(cUser.getCompanyUser());
cUser.delete();
sUser.delete();
......@@ -143,9 +152,12 @@ public class SendCompanyUserInvitesFP extends SaveFP
sUser.addRole(Utils.getRole(Utils.ROLE_CLIENT, objTran));
cUser.setRole(RoleType.STANDARD);
cUser.getCompanyUser().setDefaultHiringTeam(hiringTeam);
cUser.getCompanyUser().setCompany(company);
LogMgr.log(LOG, LogLevel.PROCESSING1, "New user created :: ", sUser);
sendInvitationMail(cUser, request);
sendInvitationMail(hiringTeam, cUser.getCompanyUser(), request);
LogMgr.log(LOG, LogLevel.PROCESSING1, "End of sending invitation email.", cUser);
}
......@@ -211,7 +223,7 @@ public class SendCompanyUserInvitesFP extends SaveFP
}
}
private void sendInvitationMail(CompanyUser companyUser, HttpServletRequest request) throws BusinessException
private void sendInvitationMail(HiringTeam hiringTeam, CompanyUser companyUser, HttpServletRequest request) throws BusinessException
{
if(!companyUser.isTrue(companyUser.getIsAccountVerified()))
{
......@@ -231,7 +243,7 @@ public class SendCompanyUserInvitesFP extends SaveFP
+ "?id=" + companyUser.getID()
+ "&key=" + companyUser.getVerificationKey();
Map defaultParams = CollectionUtils.mapEntry("link", link).toMap();
ObjectTransform transform = Utils.createCompoundTransform(defaultParams, companyUser.getCompany(), companyUser.getCompany().getAddedByUser().getUser());
ObjectTransform transform = Utils.createCompoundTransform(defaultParams, hiringTeam, hiringTeam.getCompany().getAddedByUser().getUser());
Utils.sendMail(invitationEmailer, transform, new String[]{companyUser.getEmailAddressFromUser()}, null, companyUser);
......
......@@ -43,28 +43,6 @@ public class Company extends BaseCompany
return isTrue(getManageOwnBilling());
}
//This logic moved from invite_users.jsp
public boolean createDefaultUser() throws FieldException
{
boolean addUser = true;
for (CompanyUser cUser : getUsersSet())
{
if(!CollectionUtils.equals(cUser, getAddedByUser()))
{
addUser = false;
}
}
if(addUser)
{
SecUser secUser = SecUser.createSecUser(getTransaction());
CompanyUser companyUser = secUser.getExtensionOrCreate(CompanyUser.REFERENCE_CompanyUser);
addToUsers(companyUser);
}
return addUser;
}
@Override
public String getToString()
......
......@@ -9,6 +9,7 @@ import oneit.objstore.FieldWriteability;
import oneit.objstore.ValidationContext;
import oneit.objstore.rdbms.filters.EqualsFilter;
import oneit.security.SecUser;
import oneit.utils.CollectionUtils;
import oneit.utils.DateDiff;
import oneit.utils.StringUtils;
import oneit.utils.filter.Filter;
......@@ -234,4 +235,30 @@ public class HiringTeam extends BaseHiringTeam
currency == CurrencyType.GBP ? 212D :
currency == CurrencyType.EUR ? 239D : 385D;
}
public boolean createDefaultUser() throws FieldException
{
boolean addUser = true;
for (CompanyUserHiringTeamLink cUser : getUsersSet())
{
if(!CollectionUtils.equals(cUser.getCompanyUser(), getAddedByUser()))
{
addUser = false;
}
}
if(addUser)
{
SecUser secUser = SecUser.createSecUser(getTransaction());
CompanyUser companyUser = secUser.getExtensionOrCreate(CompanyUser.REFERENCE_CompanyUser);
CompanyUserHiringTeamLink link = CompanyUserHiringTeamLink.createCompanyUserHiringTeamLink(getTransaction());
link.setCompanyUser(companyUser);
addToUsers(link);
}
return addUser;
}
}
\ No newline at end of file
......@@ -9,17 +9,22 @@
ORMProcessState process = (ORMProcessState) ProcessDecorator.getDefaultProcess(request);
ObjectTransaction objTran = process.getTransaction ();
Company company = (Company) process.getAttribute("Company");
CompanyUser companyUser = (CompanyUser) getData(request, "CUser");
HiringTeam hiringTeam = company.getDefaultHiringTeam();
CompanyUserHiringTeamLink link = (CompanyUserHiringTeamLink) getData(request, "UserLink");
CompanyUser companyUser = null;
SecUser secUser = null;
if(companyUser == null)
if(link == null)
{
link = CompanyUserHiringTeamLink.createCompanyUserHiringTeamLink(objTran);
secUser = SecUser.createSecUser(objTran);
companyUser = secUser.getExtensionOrCreate(CompanyUser.REFERENCE_CompanyUser);
companyUser.setCompany(company);
link.setHiringTeam(hiringTeam);
link.setCompanyUser(companyUser);
}
companyUser = link.getCompanyUser();
secUser = companyUser.getUser();
%>
......
......@@ -17,7 +17,8 @@
CompanyUser companyUser = company.getAddedByUser();
SecUser secUser = companyUser.getUser();
Integer pageNumber = 2;
boolean toRedirect = company.createDefaultUser();
HiringTeam hiringTeam = company.getDefaultHiringTeam();
boolean toRedirect = hiringTeam.createDefaultUser();
if (toRedirect)
{
......@@ -53,13 +54,13 @@
<div class="form-group">
<div id="usersSection">
<%
for (CompanyUser cUser : company.getUsersSet())
for (CompanyUserHiringTeamLink link : hiringTeam.getUsersSet())
{
if(!CollectionUtils.equals(cUser, companyUser))
if(!CollectionUtils.equals(link.getCompanyUser(), companyUser))
{
%>
<oneit:dynInclude page="/extensions/adminportal/inc/invite_user_add.jsp"
CUser="<%= cUser %>"
UserLink="<%= link %>"
data="<%= CollectionUtils.EMPTY_MAP%>"/>
<%
}
......
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