Commit bee8281b by Nilu

adding role type Billing and Owner

parent b7918eda
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
<column name="forgot_password_mail_send_date" type="Date" nullable="true"/> <column name="forgot_password_mail_send_date" type="Date" nullable="true"/>
<column name="forgot_password_key" type="String" nullable="true" length="10"/> <column name="forgot_password_key" type="String" nullable="true" length="10"/>
<column name="role_type" type="String" nullable="true" length="200"/> <column name="role_type" type="String" nullable="true" length="200"/>
<column name="roles" type="String" nullable="true" length="200"/>
<column name="phone" type="String" nullable="true" length="30"/> <column name="phone" type="String" nullable="true" length="30"/>
<column name="verification_mail_send_date" type="Date" nullable="true"/> <column name="verification_mail_send_date" type="Date" nullable="true"/>
<column name="verification_key" type="String" nullable="true" length="10"/> <column name="verification_key" type="String" nullable="true" length="10"/>
......
...@@ -11,6 +11,7 @@ CREATE TABLE oneit_sec_user_extension ( ...@@ -11,6 +11,7 @@ CREATE TABLE oneit_sec_user_extension (
forgot_password_mail_send_date datetime NULL, forgot_password_mail_send_date datetime NULL,
forgot_password_key varchar(10) NULL, forgot_password_key varchar(10) NULL,
role_type varchar(200) NULL, role_type varchar(200) NULL,
roles varchar(200) NULL,
phone varchar(30) NULL, phone varchar(30) NULL,
verification_mail_send_date datetime NULL, verification_mail_send_date datetime NULL,
verification_key varchar(10) NULL, verification_key varchar(10) NULL,
......
...@@ -12,6 +12,7 @@ CREATE TABLE oneit_sec_user_extension ( ...@@ -12,6 +12,7 @@ CREATE TABLE oneit_sec_user_extension (
forgot_password_mail_send_date date NULL, forgot_password_mail_send_date date NULL,
forgot_password_key varchar2(10) NULL, forgot_password_key varchar2(10) NULL,
role_type varchar2(200) NULL, role_type varchar2(200) NULL,
roles varchar2(200) NULL,
phone varchar2(30) NULL, phone varchar2(30) NULL,
verification_mail_send_date date NULL, verification_mail_send_date date NULL,
verification_key varchar2(10) NULL, verification_key varchar2(10) NULL,
......
...@@ -12,6 +12,7 @@ CREATE TABLE oneit_sec_user_extension ( ...@@ -12,6 +12,7 @@ CREATE TABLE oneit_sec_user_extension (
forgot_password_mail_send_date timestamp NULL, forgot_password_mail_send_date timestamp NULL,
forgot_password_key varchar(10) NULL, forgot_password_key varchar(10) NULL,
role_type varchar(200) NULL, role_type varchar(200) NULL,
roles varchar(200) NULL,
phone varchar(30) NULL, phone varchar(30) NULL,
verification_mail_send_date timestamp NULL, verification_mail_send_date timestamp NULL,
verification_key varchar(10) NULL, verification_key varchar(10) NULL,
......
...@@ -9,7 +9,9 @@ import com.stripe.exception.InvalidRequestException; ...@@ -9,7 +9,9 @@ import com.stripe.exception.InvalidRequestException;
import com.stripe.model.Customer; import com.stripe.model.Customer;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet;
import java.util.Map; import java.util.Map;
import java.util.Set;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import oneit.appservices.config.ConfigMgr; import oneit.appservices.config.ConfigMgr;
import oneit.business.content.Article; import oneit.business.content.Article;
...@@ -110,6 +112,7 @@ public class SendCompanyUserInvitesFP extends SaveFP ...@@ -110,6 +112,7 @@ public class SendCompanyUserInvitesFP extends SaveFP
{ {
companyUser.setRole(RoleType.ADMIN); companyUser.setRole(RoleType.ADMIN);
companyUser.setRoleTypes(RoleType.OWNER, RoleType.BILLING);
// Create customer in Stripe and subscribe for plan 0001 and coupon EAP. Only for 0.0.4.1 release // Create customer in Stripe and subscribe for plan 0001 and coupon EAP. Only for 0.0.4.1 release
// Need to handle properly when plan and billing screens are added // Need to handle properly when plan and billing screens are added
......
package performa.orm; package performa.orm;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import oneit.logging.LogLevel; import oneit.logging.LogLevel;
import oneit.logging.LogMgr; import oneit.logging.LogMgr;
...@@ -66,6 +69,9 @@ public class CompanyUser extends BaseCompanyUser ...@@ -66,6 +69,9 @@ public class CompanyUser extends BaseCompanyUser
} }
secUser.addRole(Utils.getRole(Utils.ROLE_COMPANY_ADMIN, getTransaction())); secUser.addRole(Utils.getRole(Utils.ROLE_COMPANY_ADMIN, getTransaction()));
setRoleTypes(RoleType.ADMIN);
removeRoleTypes(RoleType.STANDARD);
} }
else if(getRole()==RoleType.STANDARD) else if(getRole()==RoleType.STANDARD)
{ {
...@@ -75,12 +81,38 @@ public class CompanyUser extends BaseCompanyUser ...@@ -75,12 +81,38 @@ public class CompanyUser extends BaseCompanyUser
} }
secUser.addRole(Utils.getRole(Utils.ROLE_COMPANY_USER, getTransaction())); secUser.addRole(Utils.getRole(Utils.ROLE_COMPANY_USER, getTransaction()));
setRoleTypes(RoleType.STANDARD);
removeRoleTypes(RoleType.ADMIN);
} }
super.postRoleChange(); super.postRoleChange();
} }
public void setRoleTypes(RoleType... roleType) throws FieldException
{
Set<RoleType> roles = getRoles() != null ? getRoles() : new HashSet();
roles.addAll(Arrays.asList(roleType));
setRoles(roles);
}
public void removeRoleTypes(RoleType... roleType) throws FieldException
{
Set<RoleType> roles = getRoles();
if(roles != null)
{
roles.removeAll(Arrays.asList(roleType));
setRoles(roles);
}
}
@Override @Override
public FieldWriteability getWriteability_Role() public FieldWriteability getWriteability_Role()
{ {
......
...@@ -13,16 +13,17 @@ ...@@ -13,16 +13,17 @@
<TABLE name="oneit_sec_user_extension" tablePrefix="object" polymorphic="TRUE"> <TABLE name="oneit_sec_user_extension" tablePrefix="object" polymorphic="TRUE">
<ATTRIB name="ForgotPasswordMailSendDate" type="Date" dbcol="forgot_password_mail_send_date" /> <ATTRIB name="ForgotPasswordMailSendDate" type="Date" dbcol="forgot_password_mail_send_date" />
<ATTRIB name="ForgotPasswordKey" type="String" dbcol="forgot_password_key" length="10"/> <ATTRIB name="ForgotPasswordKey" type="String" dbcol="forgot_password_key" length="10"/>
<ATTRIB name="Role" type="RoleType" dbcol="role_type" mandatory="false" attribHelper="EnumeratedAttributeHelper"/> <ATTRIB name="Role" type="RoleType" dbcol="role_type" mandatory="false" attribHelper="EnumeratedAttributeHelper"/>
<ATTRIB name="Phone" type="String" dbcol="phone" mandatory="false" length="30" /> <ATTRIB name="Roles" type="Set&lt;RoleType&gt;" dbcol="roles" mandatory="false" attribHelper="DelimitedEnumsAttributeHelper" attribHelperInstance="new DelimitedEnumsAttributeHelper (RoleType.FACTORY_RoleType)"/>
<ATTRIB name="VerificationMailSendDate" type="Date" dbcol="verification_mail_send_date" /> <ATTRIB name="Phone" type="String" dbcol="phone" mandatory="false" length="30" />
<ATTRIB name="VerificationKey" type="String" dbcol="verification_key" length="10"/> <ATTRIB name="VerificationMailSendDate" type="Date" dbcol="verification_mail_send_date" />
<ATTRIB name="IsAccountVerified" type="Boolean" dbcol="is_account_verified" defaultValue="Boolean.FALSE"/> <ATTRIB name="VerificationKey" type="String" dbcol="verification_key" length="10"/>
<ATTRIB name="IsEmailChanged" type="Boolean" dbcol="is_email_changed" defaultValue="Boolean.FALSE"/> <ATTRIB name="IsAccountVerified" type="Boolean" dbcol="is_account_verified" defaultValue="Boolean.FALSE"/>
<ATTRIB name="StripeReference" type="String" dbcol="stripe_reference" length="100"/> <ATTRIB name="IsEmailChanged" type="Boolean" dbcol="is_email_changed" defaultValue="Boolean.FALSE"/>
<ATTRIB name="StripeSubscription" type="String" dbcol="stripe_subscription" length="100"/> <ATTRIB name="StripeReference" type="String" dbcol="stripe_reference" length="100"/>
<ATTRIB name="StripeSubscription" type="String" dbcol="stripe_subscription" length="100"/>
<SINGLEREFERENCE name="User" type="SecUser" dbcol="user_id" backreferenceName="Extensions" inSuper='TRUE'/> <SINGLEREFERENCE name="User" type="SecUser" dbcol="user_id" backreferenceName="Extensions" inSuper='TRUE'/>
<SINGLEREFERENCE name="Company" type="Company" dbcol="company_id" backreferenceName="Users"/> <SINGLEREFERENCE name="Company" type="Company" dbcol="company_id" backreferenceName="Users"/>
......
...@@ -24,9 +24,13 @@ public class RoleType extends AbstractEnumerated ...@@ -24,9 +24,13 @@ public class RoleType extends AbstractEnumerated
public static final RoleType ADMIN = new RoleType ("ADMIN", "ADMIN", "Admin", false); public static final RoleType ADMIN = new RoleType ("ADMIN", "ADMIN", "Admin", false);
public static final RoleType STANDARD = new RoleType ("STANDARD", "STANDARD", "Standard", false); public static final RoleType STANDARD = new RoleType ("STANDARD", "STANDARD", "Standard", false);
public static final RoleType OWNER = new RoleType ("OWNER", "OWNER", "Owner", false);
public static final RoleType BILLING = new RoleType ("BILLING", "BILLING", "Billing", false);
private static final RoleType[] allRoleTypes = private static final RoleType[] allRoleTypes =
new RoleType[] { ADMIN,STANDARD}; new RoleType[] { ADMIN,STANDARD,OWNER,BILLING};
private static RoleType[] getAllRoleTypes () private static RoleType[] getAllRoleTypes ()
......
...@@ -6,6 +6,8 @@ ...@@ -6,6 +6,8 @@
<VALUE name="ADMIN" value="ADMIN" description="Admin"/> <VALUE name="ADMIN" value="ADMIN" description="Admin"/>
<VALUE name="STANDARD" value="STANDARD" description="Standard"/> <VALUE name="STANDARD" value="STANDARD" description="Standard"/>
<VALUE name="OWNER" value="OWNER" description="Owner"/>
<VALUE name="BILLING" value="BILLING" description="Billing"/>
</CONSTANT> </CONSTANT>
......
...@@ -147,7 +147,7 @@ ...@@ -147,7 +147,7 @@
</div> </div>
</div> </div>
<div class="m-user-right"> <div class="m-user-right">
<oneit:ormEnum obj="<%= companyUser %>" attributeName="Role" cssClass="form-control user-role"/> <oneit:ormEnum obj="<%= companyUser %>" attributeName="Role" cssClass="form-control user-role" enums="<%= Arrays.asList(new RoleType[]{RoleType.ADMIN, RoleType.STANDARD}) %>"/>
</div> </div>
<oneit:button name="save" value="Save" cssClass="<%= "save-user" + companyUser.getID().toString() + " hidden"%>" <oneit:button name="save" value="Save" cssClass="<%= "save-user" + companyUser.getID().toString() + " hidden"%>"
requestAttribs="<%= CollectionUtils.mapEntry("CompanyUser", companyUser).mapEntry("nextPage", usersPage + "&UserSortOption=" + userSortOpt).toMap() %>" /> requestAttribs="<%= CollectionUtils.mapEntry("CompanyUser", companyUser).mapEntry("nextPage", usersPage + "&UserSortOption=" + userSortOpt).toMap() %>" />
......
<?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">oneit_sec_user_extension</tableName>
<column name="roles" 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