|
|
|
@ -40,268 +40,248 @@ import org.apache.commons.io.IOUtils;
|
|
|
|
|
|
|
|
|
|
public class FirmaPostUtil { |
|
|
|
|
|
|
|
|
|
private static final Log _log = LogFactoryUtil.getLog(FirmaPostUtil.class); |
|
|
|
|
|
|
|
|
|
public Risposta<List<RestFile>> getFileList(String token) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Verificare che il token sia il codice fiscale altrimenti c e un metodo che estre il cod fisc |
|
|
|
|
* dal token userCodiceFiscalePrimaFirma = al cod fisc di Avviso...tipoAvviso = S && |
|
|
|
|
* fileEntryIdInvio = 0 && fileEntryIdBase != 0 && !rifiutato ( aggiungere campo al service e |
|
|
|
|
* anche campo dtRifiuto) con il fileEntryIdBase prendo il file e uso per riempire lista di |
|
|
|
|
* ritorno |
|
|
|
|
* |
|
|
|
|
* NEL RITORNO "tipoDocumento" è documenttype con intPraticaId faccio fetch su tabella |
|
|
|
|
* intPratica e prendo campo tipopratica |
|
|
|
|
* |
|
|
|
|
*/ |
|
|
|
|
long[] companyIds = PortalUtil.getCompanyIds(); |
|
|
|
|
Risposta<List<RestFile>> risposta = new Risposta<List<RestFile>>(); |
|
|
|
|
for (long companyId : companyIds) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Company company = null; |
|
|
|
|
try { |
|
|
|
|
company = CompanyLocalServiceUtil.getCompany(companyId); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
_log.error(e, e); |
|
|
|
|
} |
|
|
|
|
String urlPdfExtractor = (String) company.getExpandoBridge().getAttribute("url_pdf_extractor", false); |
|
|
|
|
if (Validator.isNotNull(urlPdfExtractor)) { |
|
|
|
|
byte[] fileArray = Base64.decode(token); |
|
|
|
|
|
|
|
|
|
List<String> listaCodiciFiscali = FirmaUtil.getCodiceFiscale(fileArray, urlPdfExtractor); |
|
|
|
|
String cf = listaCodiciFiscali.get(0); |
|
|
|
|
|
|
|
|
|
List<RestFile> listaFile = new ArrayList<RestFile>(); |
|
|
|
|
|
|
|
|
|
// Ricordarsi di verificare che nel token ci sia il cod fisc in chiaro altrimenti va
|
|
|
|
|
// estratto
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
// List<Avviso> listaAvvisi = AvvisoLocalServiceUtil.findByIntPratica(1001, -1, -1, null);
|
|
|
|
|
|
|
|
|
|
List<Avviso> listaAvvisi = AvvisoLocalServiceUtil.getListaAvvisiPerApplet(cf); |
|
|
|
|
if (Validator.isNotNull(listaAvvisi) && listaAvvisi.size() > 0) { |
|
|
|
|
|
|
|
|
|
for (Avviso avviso : listaAvvisi) { |
|
|
|
|
|
|
|
|
|
if (Validator.isNotNull(avviso.getFileEntryIdBase())) { |
|
|
|
|
DLFileEntry fileEntry = DLFileEntryLocalServiceUtil.fetchDLFileEntry(avviso.getFileEntryIdBase()); |
|
|
|
|
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(avviso.getIntPraticaId()); |
|
|
|
|
if (Validator.isNotNull(fileEntry)) { |
|
|
|
|
|
|
|
|
|
RestFile restFile = new RestFile(); |
|
|
|
|
restFile.setIdFile(GetterUtil.getInteger(avviso.getAvvisoId())); |
|
|
|
|
restFile.setDataInvio(new Date()); |
|
|
|
|
|
|
|
|
|
String tipoDocumento = avviso.translateTipoDocumento(); |
|
|
|
|
|
|
|
|
|
restFile.setDocumentiType(avviso.getTipoDocumento()); // TO-VERIFY
|
|
|
|
|
restFile.setNomeFile(LanguageUtil.get(Locale.ITALIAN, tipoDocumento) + StringPool.SPACE |
|
|
|
|
+ StringPool.DASH + StringPool.SPACE + intPratica.getTitle(Locale.ITALIAN, true)); |
|
|
|
|
restFile.setFile(""); |
|
|
|
|
|
|
|
|
|
Group group = GroupLocalServiceUtil.getGroup(avviso.getGroupId()); |
|
|
|
|
Organization organization = OrganizationLocalServiceUtil.getOrganization(group.getOrganizationId()); |
|
|
|
|
restFile.setTipoPratica(organization.getName()); |
|
|
|
|
|
|
|
|
|
listaFile.add(restFile); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
risposta.setObj(listaFile); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<RestFile> getFile(String token, String tipo, String id) { |
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
* verra passato l avviso id facciamo query per riprendere file entry e ritorniamo quel file con |
|
|
|
|
* il contenuto |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
Risposta<RestFile> risposta = new Risposta<RestFile>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(id)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
|
|
|
|
|
if (Validator.isNotNull(avviso.getFileEntryIdBase())) { |
|
|
|
|
DLFileEntry fileEntry = DLFileEntryLocalServiceUtil.fetchDLFileEntry(avviso.getFileEntryIdBase()); |
|
|
|
|
if (Validator.isNotNull(fileEntry)) { |
|
|
|
|
|
|
|
|
|
RestFile restFile = new RestFile(); |
|
|
|
|
restFile.setIdFile(GetterUtil.getInteger(avviso.getAvvisoId())); |
|
|
|
|
restFile.setDataInvio(new Date()); |
|
|
|
|
restFile.setDocumentiType(avviso.getTipoDocumento()); // TO-VERIFY
|
|
|
|
|
restFile.setNomeFile(fileEntry.getTitle() + StringPool.PERIOD + fileEntry.getExtension()); |
|
|
|
|
restFile.setTipoPratica(StringPool.BLANK); |
|
|
|
|
// Recupero il tipo di pratica
|
|
|
|
|
/* |
|
|
|
|
* if (Validator.isNotNull(avviso.getIntPraticaId())) { IntPratica intPratica = |
|
|
|
|
* IntPraticaLocalServiceUtil.fetchIntPratica(avviso.getIntPraticaId()); if |
|
|
|
|
* (Validator.isNotNull(intPratica)) { |
|
|
|
|
* restFile.setTipoPratica(intPratica.getTipoPratica()); } } |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
// Inserisco il contenuto del file in Base64
|
|
|
|
|
|
|
|
|
|
InputStream fileInputStream = |
|
|
|
|
DLFileEntryLocalServiceUtil.getFileAsStream(fileEntry.getFileEntryId(), fileEntry.getVersion()); |
|
|
|
|
|
|
|
|
|
ByteArrayOutputStream bao = new ByteArrayOutputStream(); |
|
|
|
|
IOUtils.copy(fileInputStream, bao); |
|
|
|
|
restFile.setFile(Base64.encode(bao.toByteArray())); |
|
|
|
|
|
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
risposta.setObj(restFile); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} catch (SystemException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} catch (PortalException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} catch (IOException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<String> openPratica(String token, String idFile) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* mi arriva l'avviso id e mi recupero l intpraticaid bisogna ritornare ad una pagina privata di |
|
|
|
|
* bo con la view sistemata per gestire direttamente la pratica portos-bo-portlet fascicolo |
|
|
|
|
* portlet ..... intpraticaid |
|
|
|
|
*/ |
|
|
|
|
Risposta<String> risposta = new Risposta<String>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(idFile)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
|
|
|
|
|
// Prendo la url della pagina da ritornare settata nel expando custom field della company
|
|
|
|
|
// di riferimento e ci aggiungo nella url l attributo relativo all id della intPratica
|
|
|
|
|
Company company = CompanyLocalServiceUtil.fetchCompany(avviso.getCompanyId()); |
|
|
|
|
if (Validator.isNotNull(company)) { |
|
|
|
|
|
|
|
|
|
String urlToBack = |
|
|
|
|
GetterUtil.getString(company.getExpandoBridge().getAttribute("url-bo-gestione-pratica-firma", false)); |
|
|
|
|
|
|
|
|
|
urlToBack = urlToBack + "&_1_WAR_portosboportlet_intPraticaId=" + avviso.getIntPraticaId(); |
|
|
|
|
risposta.setObj(urlToBack); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} catch (SystemException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<Boolean> rifiuta(String token, String idFile, String messaggio, String cambiaFase, String assegna) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* mi arriva l'avviso id lo recupero e setto rifiutato e dtRifiuto e aggiorno |
|
|
|
|
* |
|
|
|
|
* |
|
|
|
|
*/ |
|
|
|
|
Risposta<Boolean> risposta = new Risposta<Boolean>(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(idFile)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
avviso.setRifiutato(true); |
|
|
|
|
avviso.setDtRifiuto(new Date()); |
|
|
|
|
avviso.setCommentoRifiuto(Validator.isNotNull(messaggio) ? messaggio : StringPool.BLANK); |
|
|
|
|
|
|
|
|
|
AvvisoLocalServiceUtil.updateAvviso(avviso); |
|
|
|
|
risposta.setObj(true); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} catch (SystemException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<Boolean> setFile(String token, String fileToSave, String tipo, String idFile, |
|
|
|
|
ServiceContext serviceContext) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Mi arriverà l avviso id e il contenuto e creero un file entry e aggiornero l avviso con il |
|
|
|
|
* fileEntryIdInvio |
|
|
|
|
* |
|
|
|
|
* per la creazione del fileentry devo vedere SchedulerGeneraDocumento per creare il filename e |
|
|
|
|
* la folder |
|
|
|
|
* |
|
|
|
|
*/ |
|
|
|
|
Risposta<Boolean> risposta = new Risposta<Boolean>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(idFile)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
|
|
|
|
|
// CREO IL FILE
|
|
|
|
|
serviceContext.setCompanyId(avviso.getCompanyId()); |
|
|
|
|
serviceContext.setScopeGroupId(avviso.getGroupId()); |
|
|
|
|
serviceContext.setUserId(avviso.getUserId()); |
|
|
|
|
|
|
|
|
|
avviso = |
|
|
|
|
AvvisoLocalServiceUtil |
|
|
|
|
.addFileFirmato(avviso.getAvvisoId(), avviso.getClassPk(), fileToSave, serviceContext); |
|
|
|
|
|
|
|
|
|
risposta.setObj(true); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} catch (SystemException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setObj(false); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} catch (PortalException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setObj(false); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setObj(false); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
private static final Log _log = LogFactoryUtil.getLog(FirmaPostUtil.class); |
|
|
|
|
|
|
|
|
|
public Risposta<List<RestFile>> getFileList(String token) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Verificare che il token sia il codice fiscale altrimenti c e un |
|
|
|
|
* metodo che estre il cod fisc dal token userCodiceFiscalePrimaFirma = |
|
|
|
|
* al cod fisc di Avviso...tipoAvviso = S && fileEntryIdInvio = 0 && |
|
|
|
|
* fileEntryIdBase != 0 && !rifiutato ( aggiungere campo al service e |
|
|
|
|
* anche campo dtRifiuto) con il fileEntryIdBase prendo il file e uso |
|
|
|
|
* per riempire lista di ritorno |
|
|
|
|
* |
|
|
|
|
* NEL RITORNO "tipoDocumento" è documenttype con intPraticaId faccio |
|
|
|
|
* fetch su tabella intPratica e prendo campo tipopratica |
|
|
|
|
* |
|
|
|
|
*/ |
|
|
|
|
long[] companyIds = PortalUtil.getCompanyIds(); |
|
|
|
|
Risposta<List<RestFile>> risposta = new Risposta<List<RestFile>>(); |
|
|
|
|
for (long companyId : companyIds) { |
|
|
|
|
|
|
|
|
|
Company company = null; |
|
|
|
|
try { |
|
|
|
|
company = CompanyLocalServiceUtil.getCompany(companyId); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
_log.error(e, e); |
|
|
|
|
} |
|
|
|
|
String urlPdfExtractor = (String) company.getExpandoBridge().getAttribute("url_pdf_extractor", |
|
|
|
|
false); |
|
|
|
|
if (Validator.isNotNull(urlPdfExtractor)) { |
|
|
|
|
byte[] fileArray = Base64.decode(token); |
|
|
|
|
|
|
|
|
|
List<String> listaCodiciFiscali = FirmaUtil.getCodiceFiscale(fileArray, urlPdfExtractor); |
|
|
|
|
String cf = listaCodiciFiscali.get(0); |
|
|
|
|
|
|
|
|
|
List<RestFile> listaFile = new ArrayList<RestFile>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
List<Avviso> listaAvvisi = AvvisoLocalServiceUtil.getListaAvvisiPerApplet(cf); |
|
|
|
|
if (Validator.isNotNull(listaAvvisi) && listaAvvisi.size() > 0) { |
|
|
|
|
|
|
|
|
|
for (Avviso avviso : listaAvvisi) { |
|
|
|
|
|
|
|
|
|
if (Validator.isNotNull(avviso.getFileEntryIdBase())) { |
|
|
|
|
DLFileEntry fileEntry = DLFileEntryLocalServiceUtil.fetchDLFileEntry(avviso |
|
|
|
|
.getFileEntryIdBase()); |
|
|
|
|
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(avviso |
|
|
|
|
.getIntPraticaId()); |
|
|
|
|
if (Validator.isNotNull(fileEntry)) { |
|
|
|
|
|
|
|
|
|
RestFile restFile = new RestFile(); |
|
|
|
|
restFile.setIdFile(GetterUtil.getInteger(avviso.getAvvisoId())); |
|
|
|
|
restFile.setDataInvio(new Date()); |
|
|
|
|
|
|
|
|
|
String tipoDocumento = avviso.translateTipoDocumento(); |
|
|
|
|
|
|
|
|
|
restFile.setDocumentiType(avviso.getTipoDocumento()); // TO-VERIFY
|
|
|
|
|
restFile.setNomeFile(LanguageUtil.get(Locale.ITALIAN, tipoDocumento) |
|
|
|
|
+ StringPool.SPACE + StringPool.DASH + StringPool.SPACE |
|
|
|
|
+ intPratica.getTitle(Locale.ITALIAN, true)); |
|
|
|
|
restFile.setFile(""); |
|
|
|
|
|
|
|
|
|
Group group = GroupLocalServiceUtil.getGroup(avviso.getGroupId()); |
|
|
|
|
Organization organization = OrganizationLocalServiceUtil |
|
|
|
|
.getOrganization(group.getOrganizationId()); |
|
|
|
|
restFile.setTipoPratica(organization.getName()); |
|
|
|
|
|
|
|
|
|
listaFile.add(restFile); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
risposta.setObj(listaFile); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<RestFile> getFile(String token, String tipo, String id) { |
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
* verra passato l avviso id facciamo query per riprendere file entry e |
|
|
|
|
* ritorniamo quel file con il contenuto |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
Risposta<RestFile> risposta = new Risposta<RestFile>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(id)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
|
|
|
|
|
if (Validator.isNotNull(avviso.getFileEntryIdBase())) { |
|
|
|
|
DLFileEntry fileEntry = DLFileEntryLocalServiceUtil.fetchDLFileEntry(avviso |
|
|
|
|
.getFileEntryIdBase()); |
|
|
|
|
if (Validator.isNotNull(fileEntry)) { |
|
|
|
|
|
|
|
|
|
RestFile restFile = new RestFile(); |
|
|
|
|
restFile.setIdFile(GetterUtil.getInteger(avviso.getAvvisoId())); |
|
|
|
|
restFile.setDataInvio(new Date()); |
|
|
|
|
restFile.setDocumentiType(avviso.getTipoDocumento()); // TO-VERIFY
|
|
|
|
|
restFile.setNomeFile(fileEntry.getTitle() + StringPool.PERIOD |
|
|
|
|
+ fileEntry.getExtension()); |
|
|
|
|
restFile.setTipoPratica(StringPool.BLANK); |
|
|
|
|
|
|
|
|
|
// Inserisco il contenuto del file in Base64
|
|
|
|
|
InputStream fileInputStream = DLFileEntryLocalServiceUtil.getFileAsStream( |
|
|
|
|
fileEntry.getFileEntryId(), fileEntry.getVersion()); |
|
|
|
|
ByteArrayOutputStream bao = new ByteArrayOutputStream(); |
|
|
|
|
IOUtils.copy(fileInputStream, bao); |
|
|
|
|
restFile.setFile(Base64.encode(bao.toByteArray())); |
|
|
|
|
|
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
risposta.setObj(restFile); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} catch (SystemException | PortalException | IOException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<String> openPratica(String token, String idFile) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* mi arriva l'avviso id e mi recupero l intpraticaid bisogna ritornare |
|
|
|
|
* ad una pagina privata di bo con la view sistemata per gestire |
|
|
|
|
* direttamente la pratica portos-bo-portlet fascicolo portlet ..... |
|
|
|
|
* intpraticaid |
|
|
|
|
*/ |
|
|
|
|
Risposta<String> risposta = new Risposta<String>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(idFile)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
|
|
|
|
|
// Prendo la url della pagina da ritornare settata nel expando
|
|
|
|
|
// custom field della company
|
|
|
|
|
// di riferimento e ci aggiungo nella url l attributo relativo
|
|
|
|
|
// all id della intPratica
|
|
|
|
|
Company company = CompanyLocalServiceUtil.fetchCompany(avviso.getCompanyId()); |
|
|
|
|
if (Validator.isNotNull(company)) { |
|
|
|
|
|
|
|
|
|
String urlToBack = GetterUtil.getString(company.getExpandoBridge().getAttribute( |
|
|
|
|
"url-bo-gestione-pratica-firma", false)); |
|
|
|
|
|
|
|
|
|
urlToBack = urlToBack + "&_1_WAR_portosboportlet_intPraticaId=" |
|
|
|
|
+ avviso.getIntPraticaId(); |
|
|
|
|
risposta.setObj(urlToBack); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} catch (SystemException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<Boolean> rifiuta(String token, String idFile, String messaggio, String cambiaFase, |
|
|
|
|
String assegna) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* mi arriva l'avviso id lo recupero e setto rifiutato e dtRifiuto e |
|
|
|
|
* aggiorno |
|
|
|
|
* |
|
|
|
|
* |
|
|
|
|
*/ |
|
|
|
|
Risposta<Boolean> risposta = new Risposta<Boolean>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(idFile)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
avviso.setRifiutato(true); |
|
|
|
|
avviso.setDtRifiuto(new Date()); |
|
|
|
|
avviso.setCommentoRifiuto(Validator.isNotNull(messaggio) ? messaggio : StringPool.BLANK); |
|
|
|
|
|
|
|
|
|
AvvisoLocalServiceUtil.updateAvviso(avviso); |
|
|
|
|
risposta.setObj(true); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} catch (SystemException e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Risposta<Boolean> setFile(String token, String fileToSave, String tipo, String idFile, |
|
|
|
|
ServiceContext serviceContext) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Mi arriverà l avviso id e il contenuto e creero un file entry e |
|
|
|
|
* aggiornero l avviso con il fileEntryIdInvio |
|
|
|
|
* |
|
|
|
|
* per la creazione del fileentry devo vedere SchedulerGeneraDocumento |
|
|
|
|
* per creare il filename e la folder |
|
|
|
|
* |
|
|
|
|
*/ |
|
|
|
|
Risposta<Boolean> risposta = new Risposta<Boolean>(); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
Avviso avviso = AvvisoLocalServiceUtil.fetchAvviso(GetterUtil.getLong(idFile)); |
|
|
|
|
if (Validator.isNotNull(avviso)) { |
|
|
|
|
|
|
|
|
|
// CREO IL FILE
|
|
|
|
|
serviceContext.setCompanyId(avviso.getCompanyId()); |
|
|
|
|
serviceContext.setScopeGroupId(avviso.getGroupId()); |
|
|
|
|
serviceContext.setUserId(avviso.getUserId()); |
|
|
|
|
|
|
|
|
|
avviso = AvvisoLocalServiceUtil.addFileFirmato(avviso.getAvvisoId(), avviso.getClassPk(), |
|
|
|
|
fileToSave, serviceContext); |
|
|
|
|
|
|
|
|
|
risposta.setObj(true); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.OK); |
|
|
|
|
} |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
_log.error(e.getMessage(), e); |
|
|
|
|
risposta.setObj(false); |
|
|
|
|
risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return risposta; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|