Revision 42:ddb257ed1d03
WebContent/WEB-INF/config/ss102_user_admin/validation.xml | ||
---|---|---|
459 | 459 |
<field depends="required" property="userGroup"> |
460 | 460 |
<arg0 key="user.group"/> |
461 | 461 |
</field> |
462 |
<field depends="required" property="userAccessRole"> |
|
463 |
<arg0 key="user.role"/> |
|
464 |
</field> |
|
465 |
<field depends="required" property="selectedAccesses"> |
|
466 |
<arg0 key="group.access.error.2"/> |
|
467 |
</field> |
|
468 | 462 |
<field depends="required" property="pass"> |
469 | 463 |
<arg0 key="user.password"/> |
470 | 464 |
<arg1 key="${var:minlength}" name="minlength" resource="false"/> |
... | ... | |
547 | 541 |
<field depends="required" property="userGroup"> |
548 | 542 |
<arg0 key="user.group"/> |
549 | 543 |
</field> |
550 |
<field depends="required" property="userAccessRole"> |
|
551 |
<arg0 key="user.role"/> |
|
552 |
</field> |
|
553 |
<field depends="required" property="selectedAccesses"> |
|
554 |
<arg0 key="group.access.error.2"/> |
|
555 |
</field> |
|
556 | 544 |
</form> |
557 | 545 |
<!-- Create System Admin --> |
558 | 546 |
<form name="systemAdminValidation"> |
WebContent/jsp/ss102_user_admin/ibssUserCreate.jsp | ||
---|---|---|
36 | 36 |
|
37 | 37 |
<tr> |
38 | 38 |
<td> </td> |
39 |
<td width="140"><bean:message key="user.alias"/>:</td>
|
|
39 |
<td width="140"><bean:message key="user.id"/>:</td>
|
|
40 | 40 |
<td width="345"><htmlEL:text autocomplete="off" property="userId" name="ibssUserForm" maxlength="16" /></td> |
41 | 41 |
<td width="3"> </td> |
42 | 42 |
<td width="44"> </td> |
... | ... | |
73 | 73 |
<td> </td> |
74 | 74 |
<td><bean:message key="user.group"/>:</td> |
75 | 75 |
<td> |
76 |
<html:select property="userGroup" name="ibssUserForm" onchange="this.form.submit();overlay();">
|
|
76 |
<html:select property="userGroup" name="ibssUserForm"> |
|
77 | 77 |
<html:option value=""> <bean:message key="general.please"/> </html:option> |
78 | 78 |
<logicEL:iterate id="element" property="userGroupMap" name="viewBean"> |
79 | 79 |
<bean:define id="value" name="element" property="value"/> |
... | ... | |
101 | 101 |
<td rowspan="2"> </td> |
102 | 102 |
<td rowspan="2"> </td> |
103 | 103 |
</tr> |
104 |
<c:choose> |
|
105 |
<c:when test="${ibssUserForm.map.ibssUserAccessView.map.modeType ne 3 and not empty ibssUserForm.map.ibssUserAccessView.map.modeType}"> |
|
106 |
<tr> |
|
107 |
<td><bean:message key="user.role"/>:</td> |
|
108 |
<td><html:radio value="m" property="userAccessRole"/><bean:message key="general.maker"/> |
|
109 |
<html:radio value="c" property="userAccessRole"/><bean:message key="general.checker"/></td> |
|
110 |
<td rowspan="2"> </td> |
|
111 |
<td rowspan="2"> </td> |
|
112 |
</tr> |
|
113 |
</c:when> |
|
114 |
</c:choose> |
|
115 | 104 |
<tr> |
116 | 105 |
<td> </td> |
117 | 106 |
<td> </td> |
... | ... | |
119 | 108 |
<td> </td> |
120 | 109 |
<td> </td> |
121 | 110 |
</tr> |
122 |
<tr> |
|
123 |
<td> </td> |
|
124 |
<td><c:if test="${not empty ibssUserForm.map.userGroup}"><strong><bean:message key="user.access"/></strong>:</c:if></td> |
|
125 |
<td> </td> |
|
126 |
<td colspan="2"></td> |
|
127 |
</tr> |
|
128 |
|
|
129 |
<c:choose> |
|
130 |
<c:when test="${not empty ibssUserForm.map.ibssUserAccessView }"> |
|
131 |
<tr> |
|
132 |
<td> </td> |
|
133 |
<td colspan="4"><br /> |
|
134 |
<ul class="treeHierarchy" class="right"> |
|
135 |
<c:forEach var="item" items="${ibssUserForm.map.ibssUserAccessView.map.actionList}" varStatus="index"> |
|
136 |
<c:set var="css" value="" /> |
|
137 |
<c:if test="${index.last}"><c:set var="css" value="lastLine" /></c:if> |
|
138 |
<li class="<c:out value="${css}"/>"> |
|
139 |
|
|
140 |
<label class="nodeName"><c:out value="${item.nodeName}" /> </label> |
|
141 |
<div class="<c:out value="${item.nodeId}"/>"> |
|
142 |
<c:if test="${not empty item.subNavigations}"> |
|
143 |
<ul> |
|
144 |
<c:forEach var="subItem" items="${item.subNavigations}" varStatus="index1"> |
|
145 |
<c:set var="css" value=""/> |
|
146 |
<c:if test="${index1.last}"><c:set var="css" value="lastLine"/></c:if> |
|
147 |
<li class="<c:out value="${css}"/>"> |
|
148 |
|
|
149 |
<label class="nodeName"><c:out value="${subItem.nodeName}"/></label> |
|
150 |
<div class="<c:out value="${subItem.nodeId}"/>"> |
|
151 |
<c:if test="${accessBean ne 3}"> |
|
152 |
<c:if test="${not empty subItem.actionList}"> |
|
153 |
<ul> |
|
154 |
<c:forEach var="thirdItem" items="${subItem.actionList}" varStatus="index2"> |
|
155 |
<c:set var="css" value="" /> |
|
156 |
<c:if test="${index2.last}"><c:set var="css" value="lastLine" /></c:if> |
|
157 |
<li class="<c:out value="${css}"/>"> |
|
158 |
<htmlEL:multibox styleClass="actionAll" property="selectedAccesses" disabled="false"><c:out value="${thirdItem.actionId}" /></htmlEL:multibox> |
|
159 |
<label class="nodeName"><c:out value="${thirdItem.action}" /></label> |
|
160 |
</li> |
|
161 |
</c:forEach> |
|
162 |
</ul> |
|
163 |
</c:if> |
|
164 |
</c:if> |
|
165 |
<c:if test="${not empty subItem.subNavigations}"> |
|
166 |
<ul> |
|
167 |
<c:forEach var="fourthItem" items="${subItem.subNavigations}" varStatus="index3"> |
|
168 |
<c:set var="css" value="" /> |
|
169 |
<c:if test="${index3.last}"><c:set var="css" value="lastLine" /></c:if> |
|
170 |
<li class="<c:out value="${css}"/>"> |
|
171 |
|
|
172 |
<label class="nodeName"><c:out value="${fourthItem.nodeName}" /></label> |
|
173 |
<div class="<c:out value="${fourthItem.nodeId}"/>"> |
|
174 |
<c:if test="${accessBean ne 3}"> |
|
175 |
<c:if test="${not empty fourthItem.actionList}"> |
|
176 |
<ul> |
|
177 |
<c:forEach var="fifthItem" items="${fourthItem.actionList}" varStatus="index4"> |
|
178 |
<c:set var="css" value="" /> |
|
179 |
<c:if test="${index4.last}"><c:set var="css" value="lastLine" /></c:if> |
|
180 |
<li class="<c:out value="${css}"/>"> |
|
181 |
<htmlEL:multibox styleClass="action2All" property="selectedAccesses" disabled="false"><c:out value="${fifthItem.actionId}" /></htmlEL:multibox> |
|
182 |
<label class="nodeName"><c:out value="${fifthItem.action}" /></label></li> |
|
183 |
</c:forEach> |
|
184 |
</ul> |
|
185 |
</c:if> |
|
186 |
</c:if> |
|
187 |
</div> |
|
188 |
</li> |
|
189 |
</c:forEach> |
|
190 |
</ul> |
|
191 |
</c:if> |
|
192 |
</div> |
|
193 |
</li> |
|
194 |
</c:forEach> |
|
195 |
</ul> |
|
196 |
</c:if> |
|
197 |
</div> |
|
198 |
</li> |
|
199 |
</c:forEach> |
|
200 |
</ul> |
|
201 |
</td> |
|
202 |
</tr> |
|
203 |
</c:when> |
|
204 |
</c:choose> |
|
205 | 111 |
|
206 | 112 |
</table> |
207 | 113 |
<div style="direction:rtl;text-align:right;"> |
... | ... | |
212 | 118 |
<bean:message key="general.button.back"/> |
213 | 119 |
</htmlEL:submit> |
214 | 120 |
</div> |
215 |
</htmlEL:form> |
|
216 |
|
|
217 |
<script type="text/javascript"> |
|
218 |
document.getElementById("submitID").focus(); |
|
219 |
</script> |
|
121 |
</htmlEL:form> |
WebContent/jsp/ss102_user_admin/ibssUserCreating.jsp | ||
---|---|---|
50 | 50 |
</tr> |
51 | 51 |
<tr> |
52 | 52 |
<td> </td> |
53 |
<td width="140"><bean:message key="user.alias"/>:</td>
|
|
53 |
<td width="140"><bean:message key="user.id"/>:</td>
|
|
54 | 54 |
<td width="345"><strong><bean:write property="userId" name="ibssUserForm" /></strong></td> |
55 | 55 |
<td width="3"> </td> |
56 | 56 |
<td width="44"> </td> |
... | ... | |
116 | 116 |
<td rowspan="2"> </td> |
117 | 117 |
<td rowspan="2"> </td> |
118 | 118 |
</tr> |
119 |
<c:choose> |
|
120 |
<c:when test="${ibssUserForm.map.ibssUserAccessView.map.modeType ne 3 }"> |
|
121 |
<tr> |
|
122 |
<td><bean:message key="user.role"/>:</td> |
|
123 |
<td><html:radio value="m" property="userAccessRole" disabled="true"/><bean:message key="general.maker"/> |
|
124 |
<html:radio value="c" property="userAccessRole" disabled="true"/><bean:message key="general.checker"/></td> |
|
125 |
<td rowspan="2"> </td> |
|
126 |
<td rowspan="2"> </td> |
|
127 |
</tr> |
|
128 |
</c:when> |
|
129 |
</c:choose> |
|
130 | 119 |
<tr> |
131 | 120 |
<td> </td> |
132 | 121 |
<td> </td> |
... | ... | |
134 | 123 |
<td> </td> |
135 | 124 |
<td> </td> |
136 | 125 |
</tr> |
137 |
<tr> |
|
138 |
<td> </td> |
|
139 |
<td> </td> |
|
140 |
<td> </td> |
|
141 |
<td colspan="2"></td> |
|
142 |
</tr> |
|
143 |
|
|
144 |
<c:choose> |
|
145 |
<c:when test="${not empty ibssUserForm.map.ibssUserAccessView }"> |
|
146 |
<tr> |
|
147 |
<td> </td> |
|
148 |
<td colspan="4"><br /> |
|
149 |
<ul class="treeHierarchy" class="right"> |
|
150 |
<c:forEach var="item" items="${ibssUserForm.map.ibssUserAccessView.map.actionList}" varStatus="index"> |
|
151 |
<c:set var="css" value="" /> |
|
152 |
<c:if test="${index.last}"><c:set var="css" value="lastLine" /></c:if> |
|
153 |
<li class="<c:out value="${css}"/>"> |
|
154 |
|
|
155 |
|
|
156 |
<label class="nodeName"><c:out value="${item.nodeName}" /> </label> |
|
157 |
<div class="<c:out value="${item.nodeId}"/>"> |
|
158 |
<c:if test="${not empty item.subNavigations}"> |
|
159 |
<ul> |
|
160 |
<c:forEach var="subItem" items="${item.subNavigations}" varStatus="index1"> |
|
161 |
<c:set var="css" value=""/> |
|
162 |
<c:if test="${index1.last}"><c:set var="css" value="lastLine"/></c:if> |
|
163 |
<li class="<c:out value="${css}"/>"> |
|
164 |
|
|
165 |
<label class="nodeName"><c:out value="${subItem.nodeName}"/></label> |
|
166 |
<div class="<c:out value="${subItem.nodeId}"/>"> |
|
167 |
<c:if test="${accessBean ne 3}"> |
|
168 |
<c:if test="${not empty subItem.actionList}"> |
|
169 |
<ul> |
|
170 |
<c:forEach var="thirdItem" items="${subItem.actionList}" varStatus="index2"> |
|
171 |
<c:set var="css" value="" /> |
|
172 |
<c:if test="${index2.last}"><c:set var="css" value="lastLine" /></c:if> |
|
173 |
<li class="<c:out value="${css}"/>"> |
|
174 |
<htmlEL:multibox styleClass="actionAll" property="selectedAccesses" disabled="true"><c:out value="${thirdItem.actionId}" /></htmlEL:multibox> |
|
175 |
<label class="nodeName"><c:out value="${thirdItem.action}" /></label> |
|
176 |
</li> |
|
177 |
</c:forEach> |
|
178 |
</ul> |
|
179 |
</c:if> |
|
180 |
</c:if> |
|
181 |
<c:if test="${not empty subItem.subNavigations}"> |
|
182 |
<ul> |
|
183 |
<c:forEach var="fourthItem" items="${subItem.subNavigations}" varStatus="index3"> |
|
184 |
<c:set var="css" value="" /> |
|
185 |
<c:if test="${index3.last}"><c:set var="css" value="lastLine" /></c:if> |
|
186 |
<li class="<c:out value="${css}"/>"> |
|
187 |
|
|
188 |
<label class="nodeName"><c:out value="${fourthItem.nodeName}" /></label> |
|
189 |
<div class="<c:out value="${fourthItem.nodeId}"/>"> |
|
190 |
<c:if test="${accessBean ne 3}"> |
|
191 |
<c:if test="${not empty fourthItem.actionList}"> |
|
192 |
<ul> |
|
193 |
<c:forEach var="fifthItem" items="${fourthItem.actionList}" varStatus="index4"> |
|
194 |
<c:set var="css" value="" /> |
|
195 |
<c:if test="${index4.last}"><c:set var="css" value="lastLine" /></c:if> |
|
196 |
<li class="<c:out value="${css}"/>"> |
|
197 |
<htmlEL:multibox styleClass="action2All" property="selectedAccesses" disabled="true"><c:out value="${fifthItem.actionId}" /></htmlEL:multibox> |
|
198 |
<label class="nodeName"><c:out value="${fifthItem.action}" /></label></li> |
|
199 |
</c:forEach> |
|
200 |
</ul> |
|
201 |
</c:if> |
|
202 |
</c:if> |
|
203 |
</div> |
|
204 |
</li> |
|
205 |
</c:forEach> |
|
206 |
</ul> |
|
207 |
</c:if> |
|
208 |
</div> |
|
209 |
</li> |
|
210 |
</c:forEach> |
|
211 |
</ul> |
|
212 |
</c:if> |
|
213 |
</div> |
|
214 |
</li> |
|
215 |
</c:forEach> |
|
216 |
</ul> |
|
217 |
</td> |
|
218 |
</tr> |
|
219 |
</c:when> |
|
220 |
</c:choose> |
|
221 |
|
|
222 | 126 |
</table> |
223 | 127 |
<div align="right"> |
224 | 128 |
<htmlEL:submit property="action" styleClass="button" onclick="overlay();"> |
src/com/ib/ibss/controller/actions/ss102_user_admin/IBSSUserCreatingAction.java | ||
---|---|---|
19 | 19 |
import org.apache.struts.action.ActionForward; |
20 | 20 |
import org.apache.struts.action.ActionMapping; |
21 | 21 |
|
22 |
import com.ib.common.utils.DataValidator; |
|
23 | 22 |
import com.ib.ibss.common.constant.AdminNavigationModeType.ModeType; |
24 | 23 |
import com.ib.ibss.common.constant.JSPValidator; |
25 | 24 |
import com.ib.ibss.common.constant.AdminPermissionModeType.IBAMPermission; |
... | ... | |
29 | 28 |
import com.ib.ibss.enterprise.services.common.SessionUserPermissionVerificationService; |
30 | 29 |
import com.ib.ibss.enterprise.services.ss102_user_admin.IBSSUserCreateConfirmServices; |
31 | 30 |
import com.ib.ibss.enterprise.services.ss102_user_admin.IBSSUserCreateGetGroupServices; |
32 |
import com.ib.ibss.enterprise.services.ss102_user_admin.constants.IBSSUserConstants; |
|
33 | 31 |
import com.ib.ibss.error.exception.IBSSGenericException; |
34 | 32 |
import com.ib.ibss.struts.utils.IBSSControllerAction; |
35 | 33 |
import com.ib.ibss.struts.utils.IBSSDynaBean; |
... | ... | |
82 | 80 |
{ |
83 | 81 |
|
84 | 82 |
IBSSDynaBean m_oIBDynaBean = IBSSDynaBeanManager.createIBSSDynaBean (p_oForm, p_oMapping); |
85 |
String userGroup = (String) m_oIBDynaBean.get(IBSSUserConstants.USER_GROUP); |
|
86 |
if(!DataValidator.isEmptyString(userGroup)){ |
|
87 |
IBSSDynaBean m_oIBViewBean = (IBSSDynaBean) m_oIBDynaBean.get(IBSSUserConstants.IBSS_USER_ACCESS_VIEW); |
|
88 |
modeType = (String) m_oIBViewBean.get(IBSSUserConstants.ACCESS_VIEW_MODE_TYPE); |
|
89 |
} |
|
90 | 83 |
|
91 | 84 |
if(!m_oError.isEmpty ()) |
92 | 85 |
{ |
src/com/ib/ibss/enterprise/services/ss102_user_admin/IBSSUserCreateResultServices.java | ||
---|---|---|
11 | 11 |
|
12 | 12 |
package com.ib.ibss.enterprise.services.ss102_user_admin; |
13 | 13 |
|
14 |
import java.util.LinkedHashSet; |
|
15 |
import java.util.Set; |
|
16 |
|
|
17 | 14 |
import net.penril.ibss.audit.log.AuditLogConstants; |
18 | 15 |
import net.penril.ibss.audit.log.USER_ACTIVITY_TYTPE; |
19 |
import net.penril.ibss.core.hibernate.AdminPermission; |
|
20 |
import net.penril.ibss.core.hibernate.AdminPermissionId; |
|
21 | 16 |
import net.penril.ibss.core.hibernate.AdminUserProfile; |
22 | 17 |
|
23 |
import org.apache.commons.beanutils.DynaBean; |
|
24 |
|
|
25 |
import com.ib.common.utils.Cryptographic; |
|
26 |
import com.ib.ibss.common.constant.AdminNavigationModeType.ModeType; |
|
27 |
import com.ib.ibss.common.constant.AdminPermissionModeType.IBAMPermission; |
|
28 | 18 |
import com.ib.ibss.common.utils.IBSSLogger; |
29 | 19 |
import com.ib.ibss.common.utils.ResourcesUtils; |
30 | 20 |
import com.ib.ibss.enterprise.services.IBSSEnterpriseServicesWorkspace; |
... | ... | |
70 | 60 |
getBeanMessage (IBSSUserConstants.LOGIN_ID), |
71 | 61 |
"Password"); |
72 | 62 |
|
73 |
/* Set admin permission */ |
|
74 |
DynaBean viewBean = (DynaBean) getIBSSDynaBean().get(IBSSUserConstants.IBSS_USER_ACCESS_VIEW); |
|
75 |
String groupMode = (String) viewBean.get(IBSSUserConstants.ACCESS_VIEW_MODE_TYPE); |
|
76 |
Long[] actionIdList = (Long[]) getIBSSDynaBean().get(IBSSUserConstants.USER_SELECTED_ACCESSES); |
|
77 |
String userAccessRole = (String) getIBSSDynaBean().get(IBSSUserConstants.USER_ACCESS_ROLE); |
|
78 |
Boolean isChecker = "c".equalsIgnoreCase(userAccessRole)? true : false; |
|
79 |
Set<AdminPermission> permissionSet = new LinkedHashSet<AdminPermission>(); |
|
80 |
|
|
81 |
/* Set user admin role to admin profile for Customer Interaction Group only*/ |
|
82 |
if(!ModeType.OBSERVATION.getModeIdentifier().equalsIgnoreCase(groupMode)){ |
|
83 |
userAdminRole = isChecker ? "Checker" : "Maker"; |
|
84 |
} |
|
85 |
|
|
86 | 63 |
/* Populate admin info into beans */ |
87 | 64 |
AdminUserProfile m_oAdmin = m_oAdminService.populateUserProfile ( |
88 | 65 |
getBeanMessage (IBSSUserConstants.LOGIN_ID), |
... | ... | |
94 | 71 |
getIBSSessionObjects ().getSessionUser ().getUserId (), |
95 | 72 |
userAdminRole); |
96 | 73 |
|
97 |
//Test Observation no actionId |
|
98 |
if(!ModeType.OBSERVATION.getModeIdentifier().equalsIgnoreCase(groupMode)){ |
|
99 |
if(actionIdList != null){ |
|
100 |
for(int i = 0; i<actionIdList.length; i++){ |
|
101 |
AdminPermission permission = new AdminPermission(); |
|
102 |
permission.setApprover(isChecker); |
|
103 |
permission.setAdminAuthPermissionId(new AdminPermissionId(m_oAdmin.getUserId(), actionIdList[i])); |
|
104 |
permissionSet.add(permission); |
|
105 |
// m_oAdmin.getAdminPermissions().add(permission); |
|
106 |
} |
|
107 |
m_oAdmin.getAdminPermissions().addAll(permissionSet); |
|
108 |
} |
|
109 |
} |
|
110 |
|
|
111 |
/* Get maker checker settings */ |
|
112 |
Long actionId = IBAMPermission.CREATE_IBAM_USER.getActionId(); |
|
74 |
System.out.println("getBeanMessage (IBSSUserConstants.LOGIN_USERNAME) = "+getBeanMessage (IBSSUserConstants.LOGIN_USERNAME)); |
|
75 |
System.out.println("userAlias = "+getBeanMessage (IBSSUserConstants.LOGIN_ID)); |
|
113 | 76 |
|
114 | 77 |
/* Create the user into database */ |
115 | 78 |
m_sLogReason = m_oAdminService.createUserProfile ( |
src/com/ib/ibss/enterprise/services/ss103_group/IBSSUserGroupCreateResultServices.java | ||
---|---|---|
110 | 110 |
m_oGroup.setGroupUpdatedBy (getIBSSessionObjects ().getSessionUser ().getUserId ()); |
111 | 111 |
m_oGroup.setGroupUpdatedDate (m_oNow); |
112 | 112 |
m_oGroup.setGroupLvl (getIBSSessionObjects ().getSessionUser ().getAdminGroup ().getGroupLvl () + 1); |
113 |
m_oGroup.setModeType(ModeType.OBSERVATION.getModeIdentifier());
|
|
113 |
m_oGroup.setModeType(ModeType.SYSTEM_ADMIN.getModeIdentifier());
|
|
114 | 114 |
m_oGroup.setMkPending(false); |
115 | 115 |
|
116 | 116 |
getAdminGroupDAO ().createNewGroup (m_oGroup); |
... | ... | |
129 | 129 |
// m_oNavigationGroup.setNodeCode (m_oNodeMap.get (Long.valueOf (c_saNavigations[i])));\ |
130 | 130 |
m_oNavigationGroup.setGroup (m_oGroup); |
131 | 131 |
m_oNavigationGroup.setGroupId (m_oGroup.getGroupId ()); |
132 |
|
|
133 |
//Set Observation mode as view only |
|
134 |
m_oNavigationGroup.setIsEdit(1L); |
|
132 |
// m_oNavigationGroup.setIsEdit(1L); |
|
135 | 133 |
|
136 | 134 |
m_oGroup.getGroupNavigations ().add (m_oNavigationGroup); |
137 | 135 |
|
Also available in: Unified diff