Skip to content

Instantly share code, notes, and snippets.

@doug1n
Last active May 22, 2021 01:02
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save doug1n/320ba1b2f226f7240f8f71de0c2a6083 to your computer and use it in GitHub Desktop.
Save doug1n/320ba1b2f226f7240f8f71de0c2a6083 to your computer and use it in GitHub Desktop.
"Mover" aquivo utilizando apenas docAPI e fluigAPI
/*
* Clona um documento, salva em uma pasta especifica e deleta o documento clonado
* Retorna o código do documento clonado
*/
function moverDocumento(documentoId, versaoDocumento, pastaDestinoId) {
var phisicalFile = docAPI.copyDocumentToUploadArea(documentoId, versaoDocumento)[0];
var docDto = docAPI.newDocumentDto();
docDto.setDocumentId(0);
docDto.setDocumentTypeId("");
docDto.setDocumentDescription(phisicalFile);
docDto.setParentDocumentId(parseInt(pastaDestinoId));
var attachArray = new java.util.ArrayList();
var mainAttach = docAPI.newAttachment();
mainAttach.setFileName(phisicalFile);
mainAttach.setPrincipal(true);
mainAttach.setAttach(false);
attachArray.add(mainAttach);
var doc = docAPI.createDocument(docDto, attachArray, null, null, null);
fluigAPI.getDocumentService().deleteDocument(documentoId);
return doc.getDocumentId();
}
@BielPinto
Copy link

BielPinto commented May 21, 2021

Boa tarde amigo, muito bom seus códigos , eu fiz uma função bem parecida com essa de copiar e depois deletar o antigo documento .
o teu problema é que preciso apenas mover o documento de uma pasta para outra sem mudar o id do documento, e isso via dataset.

eu consigo mover o documento assim:

var api = fluigAPI.getAuthorizeClientService();
var param = {
"action": "cut",
"selectedDocuments": [idAnexo], // ID dos documentos que serão movidos
"currentDocument": 69968, // Pasta de origem
"destinationDocument": PASTA_RAIZ // Pasta de destino
}

			  var  data = {"companyId" : "1",
		                "serviceCode" : "transfDocumento",
		                "endpoint" : "paste/",
		                
		                  "headers": {
		                      "Content-Type": "application/json"
		                  },
		                "method" : "POST",
		                "params" : param
		            }
			
			
				
			 var retornoApi = api.invoke(JSONUtil.toJSON(data));
			 log.info("***  retornoApi"+ retornoApi)
			 
			 
		Porém ainda tem uma bronca , eu não consigo add antes de mover o documento a configuração herdar do pai  (setInheritSecurity(true))  via dataset.

se tiver alguma ideia ?

@BielPinto
Copy link

BielPinto commented May 22, 2021 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment