Esempio n. 1
0
def _get_or_update_model(case_update, xform, case_db):
    """
    Gets or updates an existing case, based on a block of data in a
    submitted form.  Doesn't save anything.
    """
    case = case_db.get(case_update.id)
    if case is None:
        case = CommCareCase.from_case_update(case_update, xform)
        case_db.set(case['_id'], case)
        return case
Esempio n. 2
0
def _get_or_update_model(case_update, xform, case_db):
    """
    Gets or updates an existing case, based on a block of data in a
    submitted form.  Doesn't save anything.
    """
    case = case_db.get(case_update.id)
    if case is None:
        case = CommCareCase.from_case_update(case_update, xform)
        case_db.set(case['_id'], case)
        return case
    else:
        case.update_from_case_update(case_update, xform, case_db.get_cached_forms())
        return case
Esempio n. 3
0
def _get_or_update_model(case_block, xformdoc, case_dbcache):
    """
    Gets or updates an existing case, based on a block of data in a 
    submitted form.  Doesn't save anything.
    """
    
    case_update = case_update_from_block(case_block)
    case_doc = case_dbcache.get(case_update.id)
    
    if case_doc == None:
        case_doc = CommCareCase.from_case_update(case_update, xformdoc)
        return case_doc
    else:
        case_doc.update_from_case_update(case_update, xformdoc)
        return case_doc