Package org.openmrs

Examples of org.openmrs.Obs


      addObsToEncounterIfNotAlreadyThere(encounter, group);
    }
    //this is for obs groups within obs groups
    Object o = stack.peek();
    if (o instanceof Obs) {
      Obs oParent = (Obs) o;
      oParent.addGroupMember(group);
    }
    stack.push(group);
   
  }
View Full Code Here


   * @return the Obs to create
   */
  public Obs createObs(Concept concept, Object value, Date datetime, String accessionNumber, String comment) {
    if (value == null || "".equals(value))
      throw new IllegalArgumentException("Cannot create Obs with null or blank value");
    Obs obs = HtmlFormEntryUtil.createObs(concept, value, datetime, accessionNumber);
   
    Person person = highestOnStack(Person.class);
    if (person == null)
      throw new IllegalArgumentException("Cannot create an Obs outside of a Person.");
    Encounter encounter = highestOnStack(Encounter.class);
    Obs obsGroup = highestOnStack(Obs.class);
   
    if (person != null)
      obs.setPerson(person);
   
    if(StringUtils.isNotBlank(comment))
      obs.setComment(comment);

    if (encounter != null)
      encounter.addObs(obs);
    if (obsGroup != null) {
      obsGroup.addGroupMember(obs);
    } else {
      obsToCreate.add(obs);
    }
    return obs;
  }
View Full Code Here

      if (log.isDebugEnabled())
        log.debug("VOID: " + printObsHelper(existingObs));
      obsToVoid.add(existingObs);
      return;
    }
    Obs newObs = HtmlFormEntryUtil.createObs(concept, newValue, newDatetime, accessionNumber);
    String oldString = existingObs.getValueAsString(Context.getLocale());
    String newString = newObs.getValueAsString(Context.getLocale());
    if (log.isDebugEnabled() && concept != null) {
      log.debug("For concept " + concept.getBestName(Context.getLocale()) + ": " + oldString + " -> " + newString);
    }
    boolean valueChanged = !newString.equals(oldString);
    // TODO: handle dates that may equal encounter date
    boolean dateChanged = dateChangedHelper(existingObs.getObsDatetime(), newObs.getObsDatetime());
    boolean accessionNumberChanged = accessionNumberChangedHelper(existingObs.getAccessionNumber(),
        newObs.getAccessionNumber());
    boolean conceptsHaveChanged = false;
    if (!existingObs.getConcept().getConceptId().equals(concept.getConceptId())) {
      conceptsHaveChanged = true;
    }
    if (valueChanged || dateChanged || accessionNumberChanged || conceptsHaveChanged) {
View Full Code Here

        }

      } else if (concept.isComplex()) {
        valueWidget = new UploadWidget();
        String lookFor = existingObs == null ? null : existingObs.getValueComplex();
        Obs initialValue = null;
        if (lookFor != null) {
          initialValue = existingObs;
        }
        valueWidget.setInitialValue(initialValue);
      } else if (concept.getDatatype().isText()) {
View Full Code Here

   * @param value the value of the obs (can be numeric, text, datetime, or coded)
   * @param date the date created of the obs
   * @return
   */
  public static Obs addObs(Encounter encounter, Integer conceptId, Object value, Date date) {
      Obs obs = createObs(encounter, conceptId, value, date);
    encounter.addObs(obs);
    return obs;
  }
View Full Code Here

   * @param date
   * @param obsDetails
   * @return
   */
  public static Obs addObsGroup(Encounter encounter, Integer groupingConceptId, Date date, Object... obsDetails) {
    Obs obsgroup = addObs(encounter, groupingConceptId, null, date);
   
    int i = 0;
    while (i < obsDetails.length) {
      obsgroup.addGroupMember(addObs(encounter, (Integer) obsDetails[i], obsDetails[i + 1], (Date) obsDetails[i + 2]));
     
      // skip to the next triple to the next triplet
      i = i + 3;
    }
   
View Full Code Here

   * @param value
   * @param date
   * @return
   */
  public static Obs createObs(Encounter encounter, Integer conceptId, Object value, Date date){
      Obs obs = new Obs(encounter.getPatient(), Context.getConceptService().getConcept(conceptId), date, encounter.getLocation());
        if (value != null) {
            if (value instanceof Number)
                obs.setValueNumeric(((Number) value).doubleValue());
            else if (value instanceof String)
                obs.setValueText((String) value);
            else if (value instanceof Date)
                obs.setValueDatetime((Date) value);
            else if (value instanceof Concept)
                obs.setValueCoded((Concept) value);
        }
        obs.setDateCreated(new Date());
        return obs;
  }
View Full Code Here

     */
    public Obs getObsFromCurrentGroup(Concept concept, Concept answerConcept) {
        if (currentObsGroupMembers == null)
            return null;
        for (Iterator<Obs> iter = currentObsGroupMembers.iterator(); iter.hasNext(); ) {
            Obs obs = iter.next();
            if (!obs.isVoided() && (concept == null || concept.getConceptId().equals(obs.getConcept().getConceptId())) &&
                    (answerConcept == null || equalConcepts(answerConcept, obs.getValueCoded()))) {
                iter.remove();
                return obs;
            }
        }
        return null;
View Full Code Here

     */
    public Obs removeExistingObs(Concept question, Concept answer) {
        List<Obs> list = existingObs.get(question);
        if (list != null) {
            for (Iterator<Obs> iter = list.iterator(); iter.hasNext(); ) {
                Obs test = iter.next();
                if (answer == null || equalConcepts(answer, test.getValueCoded())) {
                    iter.remove();
                    if (list.size() == 0)
                        existingObs.remove(question);
                    return test;
                }
View Full Code Here

    * @param answer the concept that serves as the answer for Obs to remove (may NOT be null)
    * @return
    */
    public Obs removeExistingObs(List<Concept> questions, Concept answer) {
        for (Concept question:questions){
            Obs ret = removeExistingObs(question, answer);
            if (ret != null)
                return ret;
        }
        return null;
    }
View Full Code Here

TOP

Related Classes of org.openmrs.Obs

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.