Search in sources :

Example 1 with ClientPhotoDto

use of org.mifos.dto.screen.ClientPhotoDto in project head by mifos.

the class ClientServiceFacadeWebTier method getClientPhoto.

@Override
public ClientPhotoDto getClientPhoto(Long clientId) {
    ClientPhoto clientPhoto = clientPhotoService.read(clientId);
    if (clientPhoto == null) {
        return null;
    }
    String contentType = clientPhoto.getImageInfo().getContentType();
    Long contentLength = clientPhoto.getImageInfo().getLength();
    byte[] out = clientPhotoService.getData(clientPhoto);
    return new ClientPhotoDto(contentType, contentLength, out);
}
Also used : ClientPhoto(org.mifos.framework.image.domain.ClientPhoto) ClientPhotoDto(org.mifos.dto.screen.ClientPhotoDto)

Example 2 with ClientPhotoDto

use of org.mifos.dto.screen.ClientPhotoDto in project head by mifos.

the class PictureFormFile method editPersonalInfo.

@TransactionDemarcate(joinToken = true)
public ActionForward editPersonalInfo(ActionMapping mapping, ActionForm form, HttpServletRequest request, @SuppressWarnings("unused") HttpServletResponse response) throws Exception {
    ClientCustActionForm actionForm = (ClientCustActionForm) form;
    actionForm.clearMostButNotAllFieldsOnActionForm();
    ClientBO clientFromSession = getClientFromSession(request);
    final String clientSystemId = clientFromSession.getGlobalCustNum();
    ClientBO client = this.customerDao.findClientBySystemId(clientSystemId);
    short loanOfficerId = client.getCreatedBy();
    String clientStatus = client.getCustomerStatus().getName();
    ClientPersonalInfoDto personalInfo = this.clientServiceFacade.retrieveClientPersonalInfoForUpdate(clientSystemId, clientStatus, loanOfficerId);
    SessionUtils.setCollectionAttribute(ClientConstants.SALUTATION_ENTITY, personalInfo.getClientDropdowns().getSalutations(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.GENDER_ENTITY, personalInfo.getClientDropdowns().getGenders(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.MARITAL_STATUS_ENTITY, personalInfo.getClientDropdowns().getMaritalStatuses(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.CITIZENSHIP_ENTITY, personalInfo.getClientDropdowns().getCitizenship(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.ETHNICITY_ENTITY, personalInfo.getClientDropdowns().getEthnicity(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.EDUCATION_LEVEL_ENTITY, personalInfo.getClientDropdowns().getEducationLevels(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.BUSINESS_ACTIVITIES_ENTITY, personalInfo.getClientDropdowns().getBusinessActivity(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.POVERTY_STATUS, personalInfo.getClientDropdowns().getPoverty(), request);
    SessionUtils.setCollectionAttribute(ClientConstants.HANDICAPPED_ENTITY, personalInfo.getClientDropdowns().getHandicapped(), request);
    UserContext userContext = getUserContext(request);
    List<SpouseFatherLookupEntity> spouseFather = legacyMasterDao.findMasterDataEntitiesWithLocale(SpouseFatherLookupEntity.class);
    SessionUtils.setCollectionAttribute(ClientConstants.SPOUSE_FATHER_ENTITY, spouseFather, request);
    SessionUtils.setAttribute("CanEditPhoneNumber", ActivityMapper.getInstance().isEditPhoneNumberPermitted(userContext, userContext.getBranchId()), request);
    InformationOrderServiceFacade informationOrderServiceFacade = ApplicationContextProvider.getBean(InformationOrderServiceFacade.class);
    SessionUtils.setCollectionAttribute("personalInformationOrder", informationOrderServiceFacade.getInformationOrder("CreateClient"), request);
    boolean isFamilyDetailsRequired = personalInfo.getClientRules().isFamilyDetailsRequired();
    SessionUtils.setAttribute(ClientConstants.ARE_FAMILY_DETAILS_REQUIRED, isFamilyDetailsRequired, request);
    if (isFamilyDetailsRequired) {
        SessionUtils.setAttribute(ClientConstants.ARE_FAMILY_DETAILS_MANDATORY, isFamilyDetailsMandatory(), request);
        SessionUtils.setAttribute(ClientConstants.ARE_FAMILY_DETAILS_HIDDEN, false, request);
    } else {
        SessionUtils.setAttribute(ClientConstants.ARE_FAMILY_DETAILS_MANDATORY, isSpouseFatherInformationMandatory(), request);
        SessionUtils.setAttribute(ClientConstants.ARE_FAMILY_DETAILS_HIDDEN, isSpouseFatherInformationHidden(), request);
    }
    SessionUtils.setCollectionAttribute(CustomerConstants.CUSTOM_FIELDS_LIST, new ArrayList<CustomFieldDto>(), request);
    // customer specific
    actionForm.setCustomerId(personalInfo.getCustomerDetail().getCustomerId().toString());
    actionForm.setLoanOfficerId(personalInfo.getCustomerDetail().getLoanOfficerIdAsString());
    actionForm.setGlobalCustNum(personalInfo.getCustomerDetail().getGlobalCustNum());
    actionForm.setExternalId(personalInfo.getCustomerDetail().getExternalId());
    actionForm.setAddress(Address.toAddress(client.getAddress()));
    // client specific
    actionForm.setGovernmentId(personalInfo.getClientDetail().getGovernmentId());
    actionForm.setDateOfBirth(personalInfo.getClientDetail().getDateOfBirth());
    actionForm.setClientDetailView(personalInfo.getClientDetail().getCustomerDetail());
    ClientNameDetailDto clientName = personalInfo.getClientDetail().getClientName();
    clientName.setNames(ClientRules.getNameSequence());
    actionForm.setClientName(clientName);
    String photoDelete = request.getParameter("photoDelete");
    if (photoDelete != null && photoDelete.equals("true")) {
        ApplicationContextProvider.getBean(ClientPhotoService.class).delete(client.getCustomerId().longValue());
    }
    boolean isPhotoFieldHidden = FieldConfig.getInstance().isFieldHidden("Client.Photo");
    SessionUtils.setAttribute(ClientConstants.IS_PHOTO_FIELD_HIDDEN, isPhotoFieldHidden, request);
    if (!isPhotoFieldHidden) {
        ClientPhotoDto clientPhotoDto = this.clientServiceFacade.getClientPhoto(client.getCustomerId().longValue());
        if (clientPhotoDto != null) {
            FormFile formFile = new PictureFormFile(clientPhotoDto.getContentType(), clientPhotoDto.getOut(), client.getCustomerId().toString(), clientPhotoDto.getContentLength().intValue());
            actionForm.setPicture(formFile);
        } else {
            actionForm.setPicture(null);
        }
    } else {
        actionForm.setPicture(null);
    }
    ClientNameDetailDto spouseName = personalInfo.getClientDetail().getSpouseName();
    if (spouseName != null) {
        spouseName.setNames(ClientRules.getNameSequence());
        actionForm.setSpouseName(spouseName);
    }
    actionForm.setSpouseName(spouseName);
    actionForm.setCustomFields(new ArrayList<CustomFieldDto>());
    SessionUtils.removeThenSetAttribute(Constants.BUSINESS_KEY, client, request);
    return mapping.findForward(ActionForwards.editPersonalInfo_success.toString());
}
Also used : ClientCustActionForm(org.mifos.customers.client.struts.actionforms.ClientCustActionForm) ClientPhotoService(org.mifos.framework.image.service.ClientPhotoService) UserContext(org.mifos.security.util.UserContext) ClientBO(org.mifos.customers.client.business.ClientBO) CustomFieldDto(org.mifos.dto.domain.CustomFieldDto) FormFile(org.apache.struts.upload.FormFile) InformationOrderServiceFacade(org.mifos.platform.questionnaire.service.InformationOrderServiceFacade) ClientNameDetailDto(org.mifos.dto.screen.ClientNameDetailDto) SpouseFatherLookupEntity(org.mifos.application.master.business.SpouseFatherLookupEntity) ClientPersonalInfoDto(org.mifos.dto.screen.ClientPersonalInfoDto) ClientPhotoDto(org.mifos.dto.screen.ClientPhotoDto) TransactionDemarcate(org.mifos.framework.util.helpers.TransactionDemarcate)

Aggregations

ClientPhotoDto (org.mifos.dto.screen.ClientPhotoDto)2 FormFile (org.apache.struts.upload.FormFile)1 SpouseFatherLookupEntity (org.mifos.application.master.business.SpouseFatherLookupEntity)1 ClientBO (org.mifos.customers.client.business.ClientBO)1 ClientCustActionForm (org.mifos.customers.client.struts.actionforms.ClientCustActionForm)1 CustomFieldDto (org.mifos.dto.domain.CustomFieldDto)1 ClientNameDetailDto (org.mifos.dto.screen.ClientNameDetailDto)1 ClientPersonalInfoDto (org.mifos.dto.screen.ClientPersonalInfoDto)1 ClientPhoto (org.mifos.framework.image.domain.ClientPhoto)1 ClientPhotoService (org.mifos.framework.image.service.ClientPhotoService)1 TransactionDemarcate (org.mifos.framework.util.helpers.TransactionDemarcate)1 InformationOrderServiceFacade (org.mifos.platform.questionnaire.service.InformationOrderServiceFacade)1 UserContext (org.mifos.security.util.UserContext)1