Revision 66:18eca6e7a0c1

View differences:

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.ArrayList;
14 15
import java.util.LinkedHashSet;
16
import java.util.List;
15 17
import java.util.Set;
16 18

  
17 19
import net.penril.ibss.audit.log.AuditLogConstants;
18 20
import net.penril.ibss.audit.log.USER_ACTIVITY_TYTPE;
21
import net.penril.ibss.core.hibernate.AdminGroup;
22
import net.penril.ibss.core.hibernate.AdminNavigationAction;
23
import net.penril.ibss.core.hibernate.AdminNavigationGroup;
19 24
import net.penril.ibss.core.hibernate.AdminPermission;
25
import net.penril.ibss.core.hibernate.AdminPermissionId;
20 26
import net.penril.ibss.core.hibernate.AdminUserProfile;
21 27

  
22 28
import com.ib.ibss.common.utils.IBSSLogger;
......
64 70
					getBeanMessage (IBSSUserConstants.LOGIN_ID),
65 71
					"Password");
66 72
			
67
//			/* Set admin permission */
68
//			Set<AdminPermission> permissionSet = new LinkedHashSet<AdminPermission>();
73
			/* Set admin permission */
74
			AdminGroup group = getAdminGroupDAO().getGroupByIdentifier(Long.valueOf (getBeanMessage (IBSSUserConstants.USER_GROUP)));
75
			List<Long> naviId = new ArrayList<Long>();
76
			List<Boolean>actionList = new ArrayList<Boolean>(); 
77
			
78
			for(AdminNavigationGroup navi : group.getGroupNavigations())
79
			{
80
				Long id = navi.getNavigationId();
81
				
82
				List<AdminNavigationAction> action = getAdminNavigationActionDAO().getActionByNaviId(id);
83
				
84
				for(AdminNavigationAction naviAction : action)
85
				{
86
					Long actionId = naviAction.getAdminAction().getActionId();
87
					naviId.add(actionId);
88
					actionList.add(navi.isEditable());
89
				}
90
			}
91
			
92
			Long[] actionIdList = new Long[naviId.size()];
93
			naviId.toArray(actionIdList);
94
			
95
			Boolean[] checkerList = new Boolean[actionList.size()];
96
			actionList.toArray(checkerList);
97
			
98
			Set<AdminPermission> permissionSet = new LinkedHashSet<AdminPermission>();
69 99
			
70 100
			/* Populate admin info into beans */
71 101
			AdminUserProfile m_oAdmin = m_oAdminService.populateUserProfile (
......
78 108
					getIBSSessionObjects ().getSessionUser ().getUserId (),
79 109
					userAdminRole);
80 110
			
81
//			//Test Observation no actionId
82
//			if(!ModeType.OBSERVATION.getModeIdentifier().equalsIgnoreCase(groupMode)){
83
//				if(actionIdList != null){
84
//					for(int i = 0; i<actionIdList.length; i++){
85
//						AdminPermission permission = new AdminPermission();
86
//						permission.setApprover(isChecker);
87
//						permission.setAdminAuthPermissionId(new AdminPermissionId(m_oAdmin.getUserId(), actionIdList[i]));
88
//						permissionSet.add(permission);
89
////				m_oAdmin.getAdminPermissions().add(permission);
90
//					}
91
//					m_oAdmin.getAdminPermissions().addAll(permissionSet);					
92
//				}
93
//			}
111
			if(actionIdList != null)
112
			{
113
				for(int i = 0; i<actionIdList.length; i++)
114
				{
115
					AdminPermission permission = new AdminPermission();
116
					permission.setApprover(checkerList[i]==true?false:true);
117
					permission.setAdminAuthPermissionId(new AdminPermissionId(m_oAdmin.getUserId(), actionIdList[i]));
118
					permissionSet.add(permission);
119
				}
120
				m_oAdmin.getAdminPermissions().addAll(permissionSet);					
121
			}
94 122
			
95 123
			/* Create the user into database */
96 124
			m_sLogReason = m_oAdminService.createUserProfile (
src/com/ib/ibss/enterprise/services/ss103_group/IBSSUserGroupEditResultServices.java
13 13

  
14 14
import java.util.ArrayList;
15 15
import java.util.Date;
16
import java.util.Iterator;
17
import java.util.LinkedList;
18 16
import java.util.List;
17

  
19 18
import net.penril.ibss.audit.log.AuditLogConstants;
20 19
import net.penril.ibss.audit.log.USER_ACTIVITY_TYTPE;
21 20
import net.penril.ibss.core.hibernate.AdminGroup;
......
28 27
import com.ib.ibss.common.utils.ResourcesUtils;
29 28
import com.ib.ibss.enterprise.services.IBSSEnterpriseServicesWorkspace;
30 29
import com.ib.ibss.enterprise.services.common.BeanToBeanTransferUtils;
30
import com.ib.ibss.enterprise.services.ss100_navigation.constants.IBSSNavigationConstants;
31 31
import com.ib.ibss.enterprise.services.ss102_user_admin.constants.IBSSUserConstants;
32 32
import com.ib.ibss.enterprise.services.ss103_group.constants.IBSSGroupConstants;
33 33
import com.ib.ibss.error.exception.IBSSGenericException;
......
89 89
			c_oGroupName				= (String)c_oGroupDetailBean.get (IBSSGroupConstants.GROUP_NAME);
90 90
			c_oGroupViewBean			= (IBSSDynaBean) getIBSSDynaBean ().get (IBSSGroupConstants.GROUP_VIEW);
91 91
			String[] c_saViewArray 		= (String[]) c_oGroupViewBean.get (IBSSGroupConstants.VIEWABLE_ARRAY);
92
			c_oGroup = getAdminGroupDAO ().getGroupByIdentifier (c_oGroupID);
92
			c_oGroup 					= getAdminGroupDAO ().getGroupByIdentifier (c_oGroupID);
93 93
			
94 94
			updateCurrentGroup (c_oGroupViewBean, c_oGroupID, c_saViewArray);
95 95
		}
......
123 123
	{
124 124
		c_oGroup = getAdminGroupDAO ().getGroupByIdentifier (p_oGroupId);		
125 125
		List<Long> deleteActionNodeIds = new ArrayList<Long> ();
126
		List<AdminNavigation> reuseNavs = new LinkedList<AdminNavigation> ();
127 126

  
128 127
		if(c_oGroup != null)
129 128
		{
......
144 143
			ModeType modeType = ModeType.getByValue(modeStr); 
145 144
			List<AdminNavigation> navigations = getAdminNavigationDAO ().getNavigationByNodeSystem(modeType.getAccessName());
146 145
			
147
			boolean isFirst = true;
148
			AdminNavigation each;
149
			for(Iterator<AdminNavigation> it = navigations.iterator (); it.hasNext ();)
150
			{
151
				each = it.next ();
152
				
153
				if(each.getParentId () == null)
154
				{
155
					if(isFirst)
156
					{
157
						reuseNavs.addAll (navigations);
158
						isFirst = false;
159
					}
160
					
161
					reuseNavs.remove (each);
162
//					doIterate (reuseNavs, each, reuseNavs.size ());
163
//					sortedNavs.add (each);
164
				}
165
			}
166
			
167
			navigations = reuseNavs;
168
			
169 146
			List<Long> naviList= new ArrayList<Long>(); 
170 147
			
171 148
			for(AdminNavigation navi : navigations)
......
189 166
					m_oNavigationGroup.setGroupId (p_oGroupId);					
190 167
					m_oNavigationGroup.setNavigationId (c_saNavigations[i]);					
191 168

  
192
					String[] editables	= (String[]) getIBSSDynaBean ().get (IBSSGroupConstants.EDITABLE_ACCESSES);
193
					
194
					if(editables != null)
169
					if(c_saNavigations[i] == IBSSNavigationConstants.USS_ADMIN_NAVI_ID)
195 170
					{
196
						for(int j=0;j<editables.length;j++)
197
						{							
198
							if(editables[j].equals (String.valueOf(c_saNavigations[i])))
199
							{
200
								m_oNavigationGroup.setIsEdit (new Long(0));
201
								break;
202
							}
203
							m_oNavigationGroup.setIsEdit (new Long(1));
204
						}
171
						m_oNavigationGroup.setIsEdit (new Long(0));
172
						m_oNavigationGroup.setIsView(new Long(0));
205 173
					}
206 174
					else
207 175
					{
208
						m_oNavigationGroup.setIsEdit (new Long(1));
176
						String[] editables	= (String[]) getIBSSDynaBean ().get (IBSSGroupConstants.EDITABLE_ACCESSES);
177
						
178
						if(editables != null)
179
						{
180
							for(int j=0;j<editables.length;j++)
181
							{							
182
								if(editables[j].equals (String.valueOf(c_saNavigations[i])))
183
								{
184
									m_oNavigationGroup.setIsEdit (new Long(0));
185
									break;
186
								}
187
								m_oNavigationGroup.setIsEdit (new Long(1));
188
							}
189
						}
190
						else
191
						{
192
							m_oNavigationGroup.setIsEdit (new Long(1));
193
						}
194
						
195
						String[] viewables	= (String[]) getIBSSDynaBean ().get (IBSSGroupConstants.VIEWABLE_ACCESSES);
196
						if(viewables != null)
197
						{
198
							for(int j=0;j<viewables.length;j++)
199
							{								
200
								if(viewables[j].equals (String.valueOf(c_saNavigations[i])))
201
								{
202
									m_oNavigationGroup.setIsView(new Long(0));
203
									break;
204
								}
205
								m_oNavigationGroup.setIsView(new Long(1));
206
							}
207
						}
208
						else
209
						{
210
							m_oNavigationGroup.setIsView (new Long(1));
211
						}
209 212
					}
210 213
					
211
					String[] viewables	= (String[]) getIBSSDynaBean ().get (IBSSGroupConstants.VIEWABLE_ACCESSES);
212
					if(viewables != null)
213
					{
214
						for(int j=0;j<viewables.length;j++)
215
						{								
216
							if(viewables[j].equals (String.valueOf(c_saNavigations[i])))
217
							{
218
								m_oNavigationGroup.setIsView(new Long(0));
219
								break;
220
							}
221
							m_oNavigationGroup.setIsView(new Long(1));
222
						}
223
					}
224
					else
225
					{
226
						m_oNavigationGroup.setIsView (new Long(1));
227
					}
228 214
					
229 215
					if(m_oNavigationGroup.isEditable()||m_oNavigationGroup.isViewable())
230 216
					{
231 217
						c_oGroup.getGroupNavigations ().add (m_oNavigationGroup);
232 218
					}
233

  
234 219
				}
235
				
236 220
			}
237 221
			
238 222
		}

Also available in: Unified diff