From f5841bd2da37c6b4ab65ab51ee49cb3eb60867db Mon Sep 17 00:00:00 2001 From: jordan <jordan@le-filament.com> Date: Wed, 2 Feb 2022 16:33:27 +0100 Subject: [PATCH] [fix] push_alfresco_file --- models/api_alfresco.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/models/api_alfresco.py b/models/api_alfresco.py index 8bc78f2..eb83dec 100644 --- a/models/api_alfresco.py +++ b/models/api_alfresco.py @@ -6,7 +6,7 @@ import logging import xml.etree.ElementTree as et from odoo import models, exceptions, fields -from cmislib.exceptions import ContentAlreadyExistsException, \ +from cmislib.exceptions import CmisException, ContentAlreadyExistsException, \ ObjectNotFoundException, UpdateConflictException, InvalidArgumentException _logger = logging.getLogger(__name__) @@ -221,23 +221,27 @@ class CgscopAlfresco(models.AbstractModel): raise exceptions.ValidationError( "Le dossier parent n'existe pas ou n'est pas renseigné!") - try: - cmis_obj = backend.get_cmis_repository().getObject(folder) + cmis_obj = backend.get_cmis_repository().getObject(folder) + try: file_upload = cmis_obj.createDocument( name=name, properties=metadata, contentFile=file, contentType='application/pdf' ) + return file_upload + except CmisException: + raise exceptions.ValidationError( + """Erreur de mise à jour Alfresco : + Le document existe déjà dans Alfresco""") except (ContentAlreadyExistsException, ObjectNotFoundException, UpdateConflictException, InvalidArgumentException) as e: _logger.error(e) - raise exceptions.ValidationError("""Erreur de mise à jour Alfresco : + raise exceptions.ValidationError( + """Erreur de mise à jour Alfresco : - Code : %s - Url : %s - Détail : %s""" % (e.status, e.url, e.details)) except Exception as e: raise exceptions.ValidationError(e) - - return file_upload -- GitLab