Example usage for org.springframework.beans.propertyeditors CustomDateEditor getValue

List of usage examples for org.springframework.beans.propertyeditors CustomDateEditor getValue

Introduction

In this page you can find the example usage for org.springframework.beans.propertyeditors CustomDateEditor getValue.

Prototype

public Object getValue() 

Source Link

Document

Gets the value of the property.

Usage

From source file:org.openmrs.module.programlocation.web.controller.PatientProgramFormController.java

public ModelAndView complete(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    String returnPage = request.getParameter("returnPage");
    if (returnPage == null) {
        throw new IllegalArgumentException("must specify a returnPage parameter in a call to enroll()");
    }// w  ww  .ja v  a  2  s.  c  o  m

    String patientProgramIdStr = request.getParameter("patientProgramId");
    String dateCompletedStr = request.getParameter("dateCompleted");

    // make sure we parse dates the same was as if we were using the initBinder + property editor method 
    CustomDateEditor cde = new CustomDateEditor(Context.getDateFormat(), true, 10);
    cde.setAsText(dateCompletedStr);
    Date dateCompleted = (Date) cde.getValue();

    org.openmrs.PatientProgram p = Context.getProgramWorkflowService()
            .getPatientProgram(Integer.valueOf(patientProgramIdStr));
    p.setDateCompleted(dateCompleted);
    Context.getProgramWorkflowService().savePatientProgram(p);

    return new ModelAndView(new RedirectView(returnPage));
}

From source file:org.openmrs.module.programlocation.web.controller.PatientProgramFormController.java

public ModelAndView enroll(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    String returnPage = request.getParameter("returnPage");
    if (returnPage == null) {
        throw new IllegalArgumentException("must specify a returnPage parameter in a call to enroll()");
    }//from  w w w  .  j  ava2s  . c om

    String patientIdStr = request.getParameter("patientId");
    String programIdStr = request.getParameter("programId");
    String enrollmentDateStr = request.getParameter("dateEnrolled");
    String locationIdStr = request.getParameter("locationId");
    String completionDateStr = request.getParameter("dateCompleted");

    log.debug("enroll " + patientIdStr + " in " + programIdStr + " on " + enrollmentDateStr);

    ProgramWorkflowService pws = Context.getService(ProgramWorkflowService.class);

    // make sure we parse dates the same was as if we were using the initBinder + property editor method 
    CustomDateEditor cde = new CustomDateEditor(Context.getDateFormat(), true, 10);
    cde.setAsText(enrollmentDateStr);
    Date enrollmentDate = (Date) cde.getValue();
    cde.setAsText(completionDateStr);
    Date completionDate = (Date) cde.getValue();
    Patient patient = Context.getPatientService().getPatient(Integer.valueOf(patientIdStr));

    Location location;
    try {
        location = Context.getLocationService().getLocation(Integer.valueOf(locationIdStr));
    } catch (Exception e) {
        location = null;
    }

    Program program = pws.getProgram(Integer.valueOf(programIdStr));

    List<org.openmrs.PatientProgram> pps = pws.getPatientPrograms(patient, program, null, completionDate,
            enrollmentDate, null, false);

    if (!pps.isEmpty())
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR, "Program.error.already");
    else {
        PatientProgram pp = new PatientProgram();
        pp.setPatient(patient);
        pp.setLocation(location);
        pp.setProgram(program);
        pp.setDateEnrolled(enrollmentDate);
        pp.setDateCompleted(completionDate);
        Context.getProgramWorkflowService().savePatientProgram(pp);
    }
    return new ModelAndView(new RedirectView(returnPage));
}

From source file:org.openmrs.web.controller.program.PatientProgramFormController.java

public ModelAndView complete(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    String returnPage = request.getParameter("returnPage");
    if (returnPage == null) {
        throw new IllegalArgumentException("must specify a returnPage parameter in a call to enroll()");
    }//from   w ww  .j a v a2  s.  c  om

    String patientProgramIdStr = request.getParameter("patientProgramId");
    String dateCompletedStr = request.getParameter("dateCompleted");

    // make sure we parse dates the same was as if we were using the initBinder + property editor method 
    CustomDateEditor cde = new CustomDateEditor(Context.getDateFormat(), true, 10);
    cde.setAsText(dateCompletedStr);
    Date dateCompleted = (Date) cde.getValue();

    PatientProgram p = Context.getProgramWorkflowService()
            .getPatientProgram(Integer.valueOf(patientProgramIdStr));
    p.setDateCompleted(dateCompleted);
    try {
        String message = validateWithErrorCodes(p);
        if (message != null) {
            request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR, message);
        } else {
            Context.getProgramWorkflowService().savePatientProgram(p);
        }
    } catch (APIException e) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR, e.getMessage());
    }

    return new ModelAndView(new RedirectView(returnPage));
}

From source file:org.openmrs.web.controller.program.PatientProgramFormController.java

public ModelAndView enroll(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    String returnPage = request.getParameter("returnPage");
    if (returnPage == null) {
        throw new IllegalArgumentException("must specify a returnPage parameter in a call to enroll()");
    }/*  www . ja  v a2 s  . c  om*/

    String patientIdStr = request.getParameter("patientId");
    String programIdStr = request.getParameter("programId");
    String enrollmentDateStr = request.getParameter("dateEnrolled");
    String locationIdStr = request.getParameter("locationId");
    String completionDateStr = request.getParameter("dateCompleted");

    log.debug("enroll " + patientIdStr + " in " + programIdStr + " on " + enrollmentDateStr);

    ProgramWorkflowService pws = Context.getProgramWorkflowService();

    // make sure we parse dates the same was as if we were using the initBinder + property editor method 
    CustomDateEditor cde = new CustomDateEditor(Context.getDateFormat(), true, 10);
    cde.setAsText(enrollmentDateStr);
    Date enrollmentDate = (Date) cde.getValue();
    cde.setAsText(completionDateStr);
    Date completionDate = (Date) cde.getValue();
    Patient patient = Context.getPatientService().getPatient(Integer.valueOf(patientIdStr));

    Location location;
    try {
        location = Context.getLocationService().getLocation(Integer.valueOf(locationIdStr));
    } catch (Exception e) {
        location = null;
    }

    Program program;
    try {
        program = pws.getProgram(Integer.valueOf(programIdStr));
    } catch (NumberFormatException e) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR, "Program.error.programRequired");
        return new ModelAndView(new RedirectView(returnPage));
    }
    if (enrollmentDate == null) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR,
                "Program.error.enrollmentDateRequired");
    } else if (!pws.getPatientPrograms(patient, program, null, completionDate, enrollmentDate, null, false)
            .isEmpty()) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR, "Program.error.already");
    } else {
        PatientProgram pp = new PatientProgram();
        pp.setPatient(patient);
        pp.setLocation(location);
        pp.setProgram(program);
        pp.setDateEnrolled(enrollmentDate);
        pp.setDateCompleted(completionDate);

        // Set any initial states if passed in
        for (ProgramWorkflow workflow : program.getAllWorkflows()) {
            String stateIdStr = request.getParameter("initialState." + workflow.getProgramWorkflowId());
            if (StringUtils.hasText(stateIdStr)) {
                Integer stateId = Integer.valueOf(stateIdStr);
                ProgramWorkflowState state = workflow.getState(stateId);
                log.debug("Transitioning to state: " + state);
                pp.transitionToState(state, enrollmentDate);
            }
        }
        try {
            String message = validateWithErrorCodes(pp);
            if (message != null) {
                request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR, message);
            } else {
                Context.getProgramWorkflowService().savePatientProgram(pp);
            }
        } catch (APIException e) {
            request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR, e.getMessage());
        }
    }
    return new ModelAndView(new RedirectView(returnPage));
}