use of org.mifos.security.MifosUser in project head by mifos.
the class ApprovalInterceptorTest method init.
@BeforeClass
public static void init() {
SecurityContext securityContext = new SecurityContextImpl();
MifosUser principal = new MifosUserBuilder().nonLoanOfficer().withAdminRole().build();
Authentication authentication = new TestingAuthenticationToken(principal, principal);
securityContext.setAuthentication(authentication);
SecurityContextHolder.setContext(securityContext);
}
use of org.mifos.security.MifosUser in project head by mifos.
the class HomePageController method showPopulatedForm.
@RequestMapping(method = RequestMethod.GET)
@ModelAttribute("customerSearch")
public ModelAndView showPopulatedForm(HttpServletRequest request, HttpServletResponse response, @ModelAttribute("customerSearch") CustomerSearchFormBean customerSearchFormBean) throws MifosException, PersistenceException {
MifosUser user = (MifosUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
ModelAndView modelAndView = new ModelAndView();
sitePreferenceHelper.resolveSiteType(modelAndView, "home", request);
modelAndView.addObject("include_page", new IncludePage(request, response));
Short userId = (short) user.getUserId();
UserDetailDto userDetails = this.centerServiceFacade.retrieveUsersDetails(userId);
modelAndView.addObject("customerSearch", customerSearchFormBean);
boolean isCenterHierarchyExists = configurationServiceFacade.getBooleanConfig("ClientRules.CenterHierarchyExists");
modelAndView.addObject("isCenterHierarchyExists", isCenterHierarchyExists);
if (sitePreferenceHelper.isMobile(request)) {
List<ValueListElement> availibleClientGenders = clientServiceFacade.getClientGenders();
modelAndView.addObject("availibleClientGenders", availibleClientGenders);
HashMap<String, ArrayList<CustomerStatusDetailDto>> customerStates = new HashMap<String, ArrayList<CustomerStatusDetailDto>>();
customerStates.putAll(customerSearchServiceFacade.getAvailibleCustomerStates());
modelAndView.addObject("availibleCustomerStates", customerStates);
}
if (userDetails.isLoanOfficer()) {
loadLoanOfficerCustomersHierarchyForSelectedDay(userId, modelAndView, customerSearchFormBean);
modelAndView.addObject("isLoanOfficer", true);
} else {
modelAndView.addObject("isLoanOfficer", false);
}
return modelAndView;
}
use of org.mifos.security.MifosUser in project head by mifos.
the class PersonnelNoteActionStrutsTest method testSuccessSearch.
@Test
public void testSuccessSearch() throws Exception {
SecurityContext securityContext = new SecurityContextImpl();
MifosUser principal = new MifosUserBuilder().nonLoanOfficer().withAdminRole().build();
Authentication authentication = new TestingAuthenticationToken(principal, principal);
securityContext.setAuthentication(authentication);
SecurityContextHolder.setContext(securityContext);
createPersonnelAndSetInSession(getBranchOffice(), PersonnelLevel.LOAN_OFFICER);
setRequestPathInfo("/personnelNoteAction.do");
addRequestParameter("method", Methods.load.toString());
addRequestParameter("personnelId", personnel.getPersonnelId().toString());
addRequestParameter(Constants.CURRENTFLOWKEY, (String) request.getAttribute(Constants.CURRENTFLOWKEY));
actionPerform();
setRequestPathInfo("/personnelNoteAction.do");
addRequestParameter("method", Methods.preview.toString());
addRequestParameter("comment", "Notes created");
addRequestParameter(Constants.CURRENTFLOWKEY, (String) request.getAttribute(Constants.CURRENTFLOWKEY));
actionPerform();
setRequestPathInfo("/personnelNoteAction.do");
addRequestParameter("method", Methods.create.toString());
addRequestParameter("comment", "Notes created");
addRequestParameter(Constants.CURRENTFLOWKEY, (String) request.getAttribute(Constants.CURRENTFLOWKEY));
actionPerform();
StaticHibernateUtil.flushSession();
setRequestPathInfo("/PersonAction.do");
addRequestParameter("method", Methods.get.toString());
addRequestParameter("globalPersonnelNum", personnel.getGlobalPersonnelNum());
StaticHibernateUtil.flushAndClearSession();
actionPerform();
setRequestPathInfo("/personnelNoteAction.do");
addRequestParameter("method", Methods.search.toString());
addRequestParameter(Constants.CURRENTFLOWKEY, (String) request.getAttribute(Constants.CURRENTFLOWKEY));
actionPerform();
verifyForward(ActionForwards.search_success.toString());
verifyNoActionErrors();
verifyNoActionMessages();
Assert.assertEquals("Size of the search result should be 1", 1, ((QueryResult) SessionUtils.getAttribute(Constants.SEARCH_RESULTS, request)).getSize());
StaticHibernateUtil.flushSession();
personnel = (PersonnelBO) TestObjectFactory.getObject(PersonnelBO.class, personnel.getPersonnelId());
}
use of org.mifos.security.MifosUser in project head by mifos.
the class CustHistoricalDataActionStrutsTest method testUpdateHistoricalDataWhenCustHistoricalDataIsNull.
@Test
public void testUpdateHistoricalDataWhenCustHistoricalDataIsNull() throws Exception {
SecurityContext securityContext = new SecurityContextImpl();
MifosUser principal = new MifosUserBuilder().nonLoanOfficer().withAdminRole().build();
Authentication authentication = new TestingAuthenticationToken(principal, principal);
securityContext.setAuthentication(authentication);
SecurityContextHolder.setContext(securityContext);
request.setAttribute(Constants.CURRENTFLOWKEY, flowKey);
createInitialObjects();
SessionUtils.setAttribute(Constants.BUSINESS_KEY, group, request);
setRequestPathInfo("/custHistoricalDataAction.do");
addRequestParameter("method", "updateHistoricalData");
addRequestParameter("productName", "Test");
addRequestParameter("loanAmount", "100");
addRequestParameter("totalAmountPaid", "50");
addRequestParameter("interestPaid", "10");
addRequestParameter("missedPaymentsCount", "1");
addRequestParameter("totalPaymentsCount", "2");
addRequestParameter("commentNotes", "Test notes");
addRequestParameter("loanCycleNumber", "1");
addRequestParameter("type", "Group");
addRequestParameter("mfiJoiningDate", DateUtils.getCurrentDate(((UserContext) request.getSession().getAttribute("UserContext")).getPreferredLocale()));
addRequestParameter(Constants.CURRENTFLOWKEY, flowKey);
actionPerform();
verifyForward(ActionForwards.updateHistoricalData_success.toString());
verifyNoActionErrors();
verifyNoActionMessages();
group = TestObjectFactory.getGroup(group.getCustomerId());
Assert.assertEquals("Test", group.getHistoricalData().getProductName());
Assert.assertEquals("Test notes", group.getHistoricalData().getNotes());
Assert.assertEquals(new Money(getCurrency(), "100"), group.getHistoricalData().getLoanAmount());
Assert.assertEquals(new Money(getCurrency(), "50"), group.getHistoricalData().getTotalAmountPaid());
Assert.assertEquals(new Money(getCurrency(), "10"), group.getHistoricalData().getInterestPaid());
Assert.assertEquals(1, group.getHistoricalData().getMissedPaymentsCount().intValue());
Assert.assertEquals(2, group.getHistoricalData().getTotalPaymentsCount().intValue());
Assert.assertEquals(1, group.getHistoricalData().getLoanCycleNumber().intValue());
}
use of org.mifos.security.MifosUser in project head by mifos.
the class PersonnelDaoHibernateIntegrationTest method shouldFindAppUserWithNoRolesByUsername.
@Test
public void shouldFindAppUserWithNoRolesByUsername() {
OfficeBO office = IntegrationTestObjectMother.sampleBranchOffice();
PersonnelBO userWithNoRoles = new PersonnelBuilder().withUsername("noRoles").asLoanOfficer().with(office).build();
IntegrationTestObjectMother.createPersonnel(userWithNoRoles);
// exercise test
MifosUser user = personnelDao.findAuthenticatedUserByUsername("noRoles");
// verification
assertNotNull(user);
}
Aggregations