Ejemplo n.º 1
0
    def create_well_log(self, version, prev_dict, current_dict, parent_log):
        
        difflog = compare_dicts(
            prev_dict, current_dict,
            excludes=['reagent_id', 'resource_uri'])
        if is_empty_diff(difflog):
            return None
        
        activity = version.library_contents_loading_activity.activity
        log = ApiLog()
        
        if getattr(activity.performed_by, 'ecommons_id', None):
            log.username = activity.performed_by.ecommons_id
        else:
            log.username = '******'
            
        if getattr(activity.performed_by, 'login_id', None):
            log.username = activity.performed_by.login_id
        # FIXME
        log.user_id = 1
        
#         log.date_time = make_aware(activity.date_created,timezone.get_default_timezone())
        log.date_time = activity.date_created
        log.ref_resource_name = self.wellResource._meta.resource_name
        # TODO: what types here? could also be a REST specifier, i.e. 'PATCH'
        log.api_action = 'MIGRATION'
        log.key = prev_dict['well_id']
        log.uri = '/db/api/v1/well/'+log.key 
#         log.diff_dict_to_api_log(difflog)
        log.diffs = difflog
        log.json_field = json.dumps({
            'version': version.version_number })
        log.parent_log = parent_log
        log.save()
        return log
Ejemplo n.º 2
0
def _child_log_from(parent_log):
    child_log = ApiLog()
    child_log.parent_log = parent_log
    child_log.username = parent_log.username
    child_log.user_id = parent_log.user_id
    child_log.date_time = parent_log.date_time
    child_log.api_action = parent_log.api_action
    child_log.comment = parent_log.comment
    return child_log
Ejemplo n.º 3
0
def _child_log_from(parent_log):
    child_log = ApiLog()
    child_log.parent_log = parent_log
    child_log.username = parent_log.username
    child_log.user_id = parent_log.user_id
    child_log.date_time = parent_log.date_time
    child_log.api_action = parent_log.api_action
    child_log.comment = parent_log.comment
    return child_log
Ejemplo n.º 4
0
    def create_well_log(self, version, prev_dict, current_dict, parent_log):
        
        difflog = compare_dicts(
            prev_dict, current_dict,
            excludes=['reagent_id', 'resource_uri'], log_empty_strings=True)
        if is_empty_diff(difflog):
            return None
        
        log = ApiLog()
        
        if parent_log:
            log.username = parent_log.username
            log.user_id = parent_log.user_id
            log.comment = parent_log.comment
            log.date_time = parent_log.date_time
        else:
            activity = version.library_contents_loading_activity.activity
            if getattr(activity.performed_by, 'ecommons_id', None):
                log.username = activity.performed_by.ecommons_id
            else:
                log.username = '******'
                
            if getattr(activity.performed_by, 'login_id', None):
                log.username = activity.performed_by.login_id
            # FIXME
            log.user_id = 1
        
            log.date_time = activity.date_of_activity

        log.ref_resource_name = 'well'
        log.api_action = 'PATCH'
        log.key = current_dict['well_id']
        log.uri = 'well/'+log.key 
        log.diffs = difflog
        log.json_field = json.dumps({
            'version': version.version_number })
        log.parent_log = parent_log
        log.save()
        return log