/// <summary> /// Reperimento ragioni trasmissione per il contesto della ricerca /// </summary> /// <param name="accessRights"></param> /// <returns></returns> public RagioneTrasmissione[] GetRagioniTrasmissione(string accessRights) { DocsPaWR.TrasmissioneDiritti diritti = new DocsPAWA.DocsPaWR.TrasmissioneDiritti(); if (accessRights != null && accessRights != string.Empty) { diritti.accessRights = accessRights; } diritti.idAmministrazione = UserManager.getUtente().idAmministrazione; DocsPaWebService ws = new DocsPaWebService(); return(ws.TrasmissioneGetRagioni(diritti, true)); }
/// <summary> /// Reperimento classificazione da codice /// </summary> /// <param name="codiceClassifica"></param> /// <param name="registro"></param> /// <param name="idAmministrazione"></param> /// <param name="idGruppo"></param> /// <param name="idPeople"></param> /// <returns></returns> public DocsPAWA.DocsPaWR.FascicolazioneClassificazione GetClassificazione(string codiceClassifica, Registro registro, string idAmministrazione, string idGruppo, string idPeople) { DocsPaWebService ws = new DocsPaWebService(); DocsPaWR.FascicolazioneClassificazione[] retValue = ws.FascicolazioneGetTitolario(idAmministrazione, idGruppo, idPeople, registro, codiceClassifica, true); if (retValue != null && retValue.Length > 0) { return(retValue[0]); } else { return(null); } }
/// <summary> /// Reperimento di un documento /// </summary> /// <param name="idProfile"></param> /// <param name="docNumber"></param> /// <returns></returns> public SchedaDocumento GetDocumento(string idProfile, string docNumber) { if (idProfile == null || idProfile == string.Empty) { throw new ApplicationException("Parametro 'idProfile' non fornito"); } if (docNumber == null || docNumber == string.Empty) { throw new ApplicationException("Parametro 'docNumber' non fornito"); } DocsPaWebService ws = new DocsPaWebService(); return(ws.DocumentoGetDettaglioDocumento(UserManager.getInfoUtente(), idProfile, docNumber)); }
internal void SaveRfDetails(global::RubricaComune.Proxy.Elementi.ElementoRubrica elementoRubrica, String idRf) { DocsPaWebService ws = new DocsPaWebService(); ws.SaveElementoRubricaRF(new RaggruppamentoFunzionale() { cap = elementoRubrica.Cap, citta = elementoRubrica.Citta, fax = elementoRubrica.Fax, indirizzo = elementoRubrica.Indirizzo, nazionalita = elementoRubrica.Nazione, prov = elementoRubrica.Provincia, telefono1 = elementoRubrica.Telefono, codfisc = elementoRubrica.CodiceFiscale, partitaiva = elementoRubrica.PartitaIva }, idRf); }
/// <summary> /// Funzione per l'importazione di un documento RDE /// </summary> /// <param name="rowData">L'oggetto con i dati sul documento da importare</param> /// <param name="userInfo">Le informazioni sull'utente che ha lanciato la procedura</param> /// <param name="role">Il ruolo con cui è stata lanciata la procedura</param> /// <param name="serverPath">L'indirizzo della WA</param> /// <param name="isSmistamentoEnabled">True se è abilito lo smistamento</param> /// <param name="protoType">Il tipo di documento da creare</param> /// <returns>Il riusltato dell'importazione</returns> public static ImportResult ImportRDEDocument( DocumentRowData rowData, InfoUtente userInfo, Ruolo role, string serverPath, ProtoType protoType) { // Instanziazione del web service DocsPaWebService ws = new DocsPaWebService(); // Impostazione del timeout ad infinito ws.Timeout = System.Threading.Timeout.Infinite; // Lettura del valore di configurazione utilizzato per indicare // se è obbligatoria la classificazione del documento bool isClassificationRequired = false; string valoreChiaveFasc = utils.InitConfigurationKeys.GetValue(UserManager.getInfoUtente().idAmministrazione, "FE_FASC_RAPIDA_REQUIRED"); if (string.IsNullOrEmpty(valoreChiaveFasc)) { valoreChiaveFasc = "false"; } Boolean.TryParse( valoreChiaveFasc, out isClassificationRequired); try { // Chiamata del webservice per l'importazione RDE e restituzione // della lista dei risultati return(ws.ImportRDEDocument( rowData, userInfo, role, serverPath, isClassificationRequired, Utils.getAbilitazioneSmistamento() == "1", false, protoType)); } catch (Exception e) { throw new Exception("Ricevuto errore dal servizio."); } }
/// <summary> /// Reperimento dei documenti per il contesto di paginazione richiesto /// </summary> /// <param name="filters"></param> /// <param name="pagingContext"></param> /// <returns></returns> public InfoDocumento[] GetDocumenti(FiltroRicerca[] filters, PagingContext pagingContext) { InfoDocumento[] documenti = null; int pageCount; int recordCount; // Array degli idProfile dei documenti restituiti dalla ricerca SearchResultInfo[] idProfilesList = new SearchResultInfo[0]; DocsPaWR.InfoUtente infoUtente = UserManager.getInfoUtente(); DocsPaWebService ws = new DocsPaWebService(); documenti = ws.DocumentoGetQueryDocumentoPaging(infoUtente.idGruppo, infoUtente.idPeople, new FiltroRicerca[1][] { filters }, false, false, pagingContext.PageNumber, true, false, out pageCount, out recordCount, out idProfilesList); if (documenti == null) { documenti = new DocsPAWA.DocsPaWR.InfoDocumento[0]; } pagingContext.PageCount = pageCount; pagingContext.RecordCount = recordCount; if (idProfilesList != null) { // Salavtaggio della lista di idProfile dei documenti individuati pagingContext.IdProfilesList = new string[idProfilesList.Length]; for (int i = 0; i < idProfilesList.Length; i++) { pagingContext.IdProfilesList[i] = idProfilesList[i].Id; } } return(documenti); }
/// <summary> /// Funzione per l'inizializzazione della sezione di ricerca /// </summary> private void InitializeSearchSection() { // Registrazione eventi onchange javascript per le text box dei codici this.txtDestinatariCodice.Attributes["onchange"] = String.Format("javascript:clearCorrData(this, '{0}');", this.txtDestinatariDescrizione.ClientID); this.txtVisibilitaCodice.Attributes["onchange"] = String.Format("javascript:clearCorrData(this, '{0}');", this.txtVisibilitaDescrizione.ClientID); DocsPaWebService ws = new DocsPaWebService(); ws.Timeout = Timeout.Infinite; //string[] amm = ((string)Session["AMMDATASET"]).Split('@'); //string codAmm = amm[0]; //String idAmm = ws.getIdAmmByCod(codAmm); String idAmm = UserManager.getInfoUtente().idAmministrazione; // Registri this.ddlRegistri.Items.Clear(); this.ddlRegistri.Items.Add(String.Empty); OrganigrammaManager theManager = new OrganigrammaManager(); theManager.ListaRegistriRF(idAmm, null, String.Empty); foreach (OrgRegistro item in theManager.getListaRegistri()) { this.ddlRegistri.Items.Add(new ListItem(item.Descrizione, item.IDRegistro)); } // Ragioni di trasmissione this.ddlRagioniTrasmissione.Items.Clear(); this.ddlRagioniTrasmissione.Items.Add(String.Empty); RagioneTrasmissione[] rag = DocsPAWA.AdminTool.Manager.ModelliTrasmManager.getlistRagioniTrasm(idAmm, false, String.Empty); foreach (RagioneTrasmissione item in rag) { this.ddlRagioniTrasmissione.Items.Add(new ListItem(item.descrizione, item.systemId)); } // Impostazione del css per i bottoni this.btnFind.CssClass = this.ButtonCss; this.btnExport.CssClass = this.ButtonCss; this.btnFindAndReplace.CssClass = this.ButtonCss; // Visualizzazione dei controlli in base al contesto this.ShowControl(); // Caricamento dei registri this.LoadRegistryInformation(); }
/// <summary> /// Reperimento trasmissioni dell'utente e del ruolo, con la possibilità di effettuare filtri /// </summary> /// <param name="searchType"></param> /// <param name="pagingContext"></param> /// <param name="filters"></param> /// <returns></returns> public Trasmissione[] GetTrasmissioni(TipiTrasmissioniEnum searchType, PagingContext pagingContext, FiltroRicerca[] filters) { Trasmissione[] retValue = null; Utente utente = UserManager.getUtente(); Ruolo ruolo = UserManager.getRuolo(); DocsPaWebService ws = new DocsPaWebService(); int pageCount; int recordCount; if (searchType == TipiTrasmissioniEnum.Effettuate) { retValue = ws.TrasmissioneGetQueryEffettuatePaging( new TrasmissioneOggettoTrasm(), filters, utente, ruolo, pagingContext.PageNumber, out pageCount, out recordCount); } else { retValue = ws.TrasmissioneGetQueryRicevutePaging( new TrasmissioneOggettoTrasm(), filters, utente, ruolo, pagingContext.PageNumber, out pageCount, out recordCount); } pagingContext.PageCount = pageCount; pagingContext.RecordCount = recordCount; if (retValue == null) { retValue = new Trasmissione[0]; } return(retValue); }
public static byte[] CreateZipFromReport(ResultsContainer report, InfoUtente userInfo) { // Instanziazione del web service DocsPaWebService ws = new DocsPaWebService(); // Impostazione del timeout ad infinito ws.Timeout = System.Threading.Timeout.Infinite; try { // Chiamata del webservice per l'importazione dei documenti da // foglio Excel e restituzione della lista dei risultati return(ws.CreateZipFromReport(report, userInfo)); } catch (Exception e) { throw new Exception("Ricevuto errore dal servizio."); } }
/// <summary> /// Reperimento trasmissioni del documento, /// con la possibilità di effettuare filtri /// </summary> /// <param name="searchType"></param> /// <param name="pagingContext"></param> /// <param name="filters"></param> /// <param name="schedaDocumento"></param> /// <returns></returns> public Trasmissione[] GetTrasmissioniDocumento(SitoAccessibile.Trasmissioni.TipiTrasmissioniEnum tipoTrasmissione, PagingContext pagingContext, FiltroRicerca[] filters, SchedaDocumento schedaDocumento) { Trasmissione[] retValue = null; TrasmissioneOggettoTrasm oggettoTrasm = new TrasmissioneOggettoTrasm(); if (schedaDocumento != null) { oggettoTrasm.infoDocumento = DocumentManager.getInfoDocumento(schedaDocumento); } Utente utente = UserManager.getUtente(); Ruolo ruolo = UserManager.getRuolo(); DocsPaWebService ws = new DocsPaWebService(); int pageCount; int recordCount; if (tipoTrasmissione == SitoAccessibile.Trasmissioni.TipiTrasmissioniEnum.Effettuate) { retValue = ws.TrasmissioneGetQueryEffettuateDocPaging( oggettoTrasm, filters, utente, ruolo, pagingContext.PageNumber, out pageCount, out recordCount); } else { pageCount = 0; recordCount = 0; retValue = ws.TrasmissioneGetQueryRicevute(oggettoTrasm, filters, utente, ruolo); } pagingContext.PageCount = pageCount; pagingContext.RecordCount = recordCount; return(retValue); }
/// <summary> /// Funzione per l'estrazione dei dati relativi a corrispondenti da foglio Excel /// </summary> /// <param name="content">Il contenuto del file Excel</param> /// <param name="fileName">Il nome da attribuire al file temporaneo</param> /// <param name="userInfo">Le informazioni sull'utente che ha lanciato la procedura</param> /// <returns>Un oggetto con le informazioni sui corrispondenti su cui compiere le azioni</returns> public static AddressBookRowDataContainer ReadDataFromExcel( byte[] content, string fileName, InfoUtente userInfo) { // Istanziazione del web service DocsPaWebService ws = new DocsPaWebService(); // Impostazione del timeout ws.Timeout = System.Threading.Timeout.Infinite; // L'oggetto da restiture AddressBookRowDataContainer toReturn = null; // L'eventuale errore avvenuto in fase di estrazione dati string errorMessage = String.Empty; try { // Chiamata del metodo web per l'estrazione dei dati dal foglio Excel toReturn = ws.ReadAddressBookImportDataFromExcel( content, fileName, userInfo, out errorMessage); // Se si è verificato un errore un esecuzione, viene lanciata un'eccezione con il // dettaglio if (toReturn == null && !String.IsNullOrEmpty(errorMessage)) { throw new Exception(errorMessage); } } catch (Exception e) { throw e; } return(toReturn); }
protected void Page_Load(object sender, EventArgs e) { string idProject = Request.QueryString["ID"].ToString(); string requestAsXml = "<ExportFascicoloRequest>"; InfoUtente userInfo = NttDataWA.UIManager.UserManager.GetInfoUser(); DocsPaWebService webServices = new DocsPaWebService(); if (!string.IsNullOrEmpty(idProject)) { requestAsXml += "<fascicolo id=\"" + idProject + "\"/>"; requestAsXml += "<userInfo userId=\"" + userInfo.userId + "\" idCorrGlobali=\"" + userInfo.idCorrGlobali + "\" idPeople=\"" + userInfo.idPeople + "\" idGruppo=\"" + userInfo.idGruppo + "\" idAmministrazione=\"" + userInfo.idAmministrazione + "\" sede=\"" + userInfo.sede + "\" urlWA=\"" + userInfo.urlWA + "\" dst=\"" + userInfo.dst + "\"/>"; } requestAsXml += "</ExportFascicoloRequest>"; String xmlInfoProject = webServices.GetInfoFascicoloAsXml(requestAsXml); Response.Write(xmlInfoProject); }
/// <summary> /// /// </summary> private void SetDataArchivioCartaceo() { //DocsPaWR.FiltroRicerca[] filtri = FascicolazioneCartacea.SessionManager.Filtri; DocsPaWR.FiltroRicerca[] filtri = null; if (filtri != null && filtri.Length > 0) { DocsPaWR.ExportDataFormatEnum format = DocsPaWR.ExportDataFormatEnum.Pdf; if (this._tipologiaExport.ToUpper().Equals("XLS")) { format = ExportDataFormatEnum.Excel; } DocsPaWR.DocsPaWebService ws = new DocsPaWebService(); this._file = ws.FascCartaceaExportListFilters(UserManager.GetInfoUser(), format, filtri, this._titolo); if (this._file != null) { exportDatiSessionManager session = new exportDatiSessionManager(); session.SetSessionExportFile(this._file); } } }
private void PerformActionNotificaAnnullamento() { DocsPaWR.SchedaDocumento schedaDocumento = DocumentManager.getDocumentoSelezionato(this); DocsPAWA.DocsPaWR.Registro reg; //se il protocollo è in entrata ed è stato ricevuto per interoperabilità, allora invio una notifica di annullamento al mittente if (schedaDocumento.protocollo.GetType() == typeof(DocsPAWA.DocsPaWR.ProtocolloEntrata)) { if (!string.IsNullOrEmpty(schedaDocumento.documento_da_pec) || schedaDocumento.typeId == InteroperabilitaSemplificataManager.SimplifiedInteroperabilityId) { DocsPaWebService ws = new DocsPaWebService(); string idRegistro = (schedaDocumento.protocollo as DocsPAWA.DocsPaWR.ProtocolloEntrata).mittente.idRegistro; if (!string.IsNullOrEmpty(idRegistro)) { reg = ws.GetRegistroBySistemId(idRegistro); } else { reg = ws.GetRegistroBySistemId(schedaDocumento.registro.systemId); } DocumentManager.DocumentoInvioNotificaAnnulla(this, schedaDocumento.systemId, reg); } } }
protected void Page_Load(object sender, EventArgs e) { string docId = Request.Params["ID"]; string userInfoJSON = Request.Params["USERINFO"]; InfoUtente userInfo = NttDataWA.UIManager.UserManager.GetInfoUser(); if (!String.IsNullOrEmpty(userInfoJSON)) { userInfo = JsonConvert.DeserializeObject <InfoUtente>(userInfoJSON); if (userInfo == null) { throw new Exception("User info not found"); } } DocsPaWebService webServices = new DocsPaWebService(); ContentDocumento docContent = webServices.GetFileDocumento(userInfo, docId); Response.BinaryWrite(docContent.fileContent); Response.Flush(); }
/// <summary> /// Metodo per il salvataggio delle informazioni sull'utente loggato DA CONTROLLARE /// </summary> private void SaveUserInSession() { DocsPaWebService ws = new DocsPaWebService(); ws.Timeout = System.Threading.Timeout.Infinite; string[] amministrazione = ((string)Session["AMMDATASET"]).Split('@'); string codiceAmministrazione = amministrazione[0]; string idAmministrazione = ws.getIdAmmByCod(codiceAmministrazione); SAAdminTool.DocsPaWR.Utente ut = new SAAdminTool.DocsPaWR.Utente(); ut.codiceAmm = codiceAmministrazione; ut.idAmministrazione = idAmministrazione; ut.tipoIE = "I"; //ut.idRegistro = idRegistro; Session.Add("userData", ut); SAAdminTool.DocsPaWR.Ruolo rl = new SAAdminTool.DocsPaWR.Ruolo(); rl.codiceAmm = codiceAmministrazione; rl.idAmministrazione = idAmministrazione; rl.tipoIE = "I"; //rl.idRegistro = idRegistro; rl.systemId = idAmministrazione; rl.uo = new SAAdminTool.DocsPaWR.UnitaOrganizzativa(); rl.uo.codiceRubrica = codiceAmministrazione; Session.Add("userRuolo", rl); SAAdminTool.DocsPaWR.Registro reg = new SAAdminTool.DocsPaWR.Registro(); //reg = ws.GetRegistroBySistemId(idRegistro); Session.Add("userRegistro", reg); }
/// <summary> /// Ricerca fascicoli /// </summary> /// <param name="filterItem"></param> /// <param name="pagingContext"></param> /// <returns></returns> public static Fascicolo[] SearchFascicoli(FascicoliFilterItem filterItem, PagingContext pagingContext) { FiltroRicerca[] filters = filterItem.ToFiltriRicerca(); int pageCount; int recordCount; Utente user = UserManager.getUtente(); InfoUtente infoUtente = UserManager.getInfoUtente(); Registro registro = null; foreach (Registro item in UserManager.getRuolo().registri) { if (item.systemId.Equals(filterItem.IDRegistro)) { registro = item; break; } } FascicolazioneClassificazione classificazione = null; if (filterItem.CodiceNodoTitolario != string.Empty) { ClassificaHandler classificaHandler = new ClassificaHandler(); classificazione = classificaHandler.GetClassificazione(filterItem.CodiceNodoTitolario, registro); } DocsPaWebService ws = new DocsPaWebService(); // Lista dei system id dei fascicoli. Non utilizzata SearchResultInfo[] idProjects = null; Fascicolo[] retValue = ws.FascicolazioneGetListaFascicoliPaging( infoUtente, classificazione, registro, filters, false, false, false, pagingContext.PageNumber, pagingContext.PageSize, false, null, out pageCount, out recordCount, out idProjects); pagingContext.PageCount = pageCount; pagingContext.RecordCount = recordCount; if (retValue == null) { retValue = new Fascicolo[0]; } return(retValue); }
public SelectorFilter(Page page, RubricaCallType calltype) { _page = page; _calltype = calltype; // Inizializza la tabella UO smistamento string id_registro = null; if (calltype == SAAdminTool.DocsPaWR.RubricaCallType.CALLTYPE_PROTO_INGRESSO) { id_registro = ProtocollazioneIngresso.Registro.RegistroMng.GetRegistroInSessione().systemId; } else { Registro rreg = UserManager.getRegistroSelezionato(_page); if (rreg != null) { id_registro = rreg.systemId; } else { Ruolo rr = UserManager.getRuolo(); //se veniamo dall'amministrazione (per esempio nel caso di creazione // di una lista di distribuzione) non sappiamo l'id del registro in // esame if (rr.registri == null) { string codAmm = AmmUtils.UtilsXml.GetAmmDataSession((string)page.Session["AMMDATASET"], "0"); DocsPaWebService ws = new DocsPaWebService(); OrgRegistro[] reg = ws.AmmGetRegistri(codAmm, "0"); if (reg.Length > 0) { id_registro = reg[0].IDRegistro; } } else { id_registro = rr.registri[0].systemId; } //UserManager.setRegistroSelezionato(_page,rr.registri[0]); } } uo_smistamento = (UOSmistamento[])ht_uo_smistamento[id_registro]; uo_interne = (string[])ht_uo_interne[id_registro]; if (uo_smistamento == null) { DocsPaWebService ws = new DocsPaWebService(); MittenteSmistamento ms = new MittenteSmistamento(); ms.IDPeople = "0"; uo_smistamento = ws.GetUOSmistamento(id_registro, ms); if (uo_smistamento != null) { Array.Sort(uo_smistamento, new UOSmistamentoByCodiceSorter()); } else { uo_smistamento = new UOSmistamento[0]; } ht_uo_smistamento[id_registro] = uo_smistamento; } // Inizializza la tabella UO interne alla nostra AOO if (uo_interne == null) { DocsPaWebService ws = new DocsPaWebService(); uo_interne = UserManager.GetUoInterneAoo(_page); if (uo_interne != null) { Array.Sort(uo_interne, CaseInsensitiveComparer.Default); } ht_uo_interne[id_registro] = uo_interne; } }
static CheckInOutAdminServices() { _webServices = new DocsPaWebService(); }
/// <summary> /// Reperimento dei registri disponibili per l'utente corrente /// </summary> /// <returns></returns> public Registro[] GetRegistri() { DocsPaWebService ws = new DocsPaWebService(); return(ws.UtenteGetRegistri(UserManager.getInfoUtente().idCorrGlobali)); }
private List <Mezzi> GetMeansDeliveryFiltered(Canale canaleOrig, string idDest) { DocsPaWR.DocsPaWebService wws = new DocsPaWebService(); DocsPAWA.DocsPaWR.MezzoSpedizione[] m_sped = wws.AmmListaMezzoSpedizione(UserManager.getInfoUtente().idAmministrazione, false); List <Mezzi> filteredMeans = new List <Mezzi>(); Corrispondente corr = UserManager.getCorrispondenteBySystemID(this.Page, idDest); if (canaleOrig != null) { switch (canaleOrig.typeId.ToUpper()) { case "INTEROPERABILITA": foreach (MezzoSpedizione m in m_sped) { // Il canale interoperabilità semplificata non può essere inserito se il corrispondente non // ha URL mentre il canale mail non deve essere inserito if ((m.chaTipoCanale == "S" && InteroperabilitaSemplificataManager.IsEnabledSimpInterop && corr.Url != null && corr.Url.Length > 0 && Uri.IsWellFormedUriString(corr.Url[0].Url, UriKind.Absolute)) || (m.chaTipoCanale != "S" && !m.Descrizione.ToUpper().Equals("MAIL"))) { filteredMeans.Add(new Mezzi(m.Descrizione, m.IDSystem)); } } break; case "MAIL": foreach (MezzoSpedizione m in m_sped) { if (!m.Descrizione.ToUpper().Equals("INTEROPERABILITA") && m.chaTipoCanale != "S") { filteredMeans.Add(new Mezzi(m.Descrizione, m.IDSystem)); } else { if (m.chaTipoCanale == "S") { if (InteroperabilitaSemplificataManager.IsEnabledSimpInterop && corr.Url != null && corr.Url.Length > 0 && Uri.IsWellFormedUriString(corr.Url[0].Url, UriKind.Absolute)) { filteredMeans.Add(new Mezzi(m.Descrizione, m.IDSystem)); } } else //Verifico che siano presenti i campi obbligatori per l'utente con canale preferito INTEROPERABILITA if (!string.IsNullOrEmpty(corr.codiceAmm) && (!string.IsNullOrEmpty(corr.codiceAOO)) && (!string.IsNullOrEmpty(corr.email))) { filteredMeans.Add(new Mezzi(m.Descrizione, m.IDSystem)); } } } break; default: this.FilterInteroperability(m_sped, corr, ref filteredMeans); break; } } return(filteredMeans); }
public void DestroyAll() { this.ws = null; }
public static ImportResult ImportAndAcquireDocument( DocumentRowData documentToImport, ProtoType protoType, string serverPath, InfoUtente userInfo, Ruolo role, ref ResultsContainer resultsContainer) { // Instanziazione del web service DocsPaWebService ws = new DocsPaWebService(); // Impostazione del timeout ad infinito ws.Timeout = System.Threading.Timeout.Infinite; // Lettura del valore di configurazione utilizzato per indicare // se è obbligatoria la profilazione del documento bool isProfilationRequired = false; //Boolean.TryParse( // ConfigurationManager.AppSettings["TIPO_ATTO_REQUIRED"], // out isProfilationRequired); string idAmm = userInfo.idAmministrazione; if (DocumentManager.GetTipoDocObbl(idAmm).Equals("1")) { isProfilationRequired = true; } // Lettura del valore di configurazione utilizzato per indicare // se è obbligatoria la classificazione del documento bool isClassificationRequired = false; string valoreChiaveFasc = utils.InitConfigurationKeys.GetValue(UserManager.getInfoUtente().idAmministrazione, "FE_FASC_RAPIDA_REQUIRED"); if (string.IsNullOrEmpty(valoreChiaveFasc)) { valoreChiaveFasc = "false"; } Boolean.TryParse( valoreChiaveFasc, out isClassificationRequired); try { // Chiamata del webservice per l'importazione dei documenti da // foglio Excel e restituzione della lista dei risultati return(ws.ImportAndAcquireDocument( documentToImport, protoType, serverPath, userInfo, role, isProfilationRequired, isClassificationRequired, Utils.getAbilitazioneSmistamento() == "1", ref resultsContainer, importazionePregressiAbilitata())); } catch (Exception e) { throw new Exception("Ricevuto errore dal servizio."); } }
static MTextUtils() { ws = new DocsPaWebService(); ws.Timeout = Timeout.Infinite; }
public void InitializeTest() { this.ws = new DocsPaWebService(); this.ws.Timeout = System.Threading.Timeout.Infinite; }
/// <summary> /// /// </summary> static SaveFileServices() { _webServices = new DocsPaWebService(); }
/// <summary> /// Funzione per la conversione dei documenti in PDF /// </summary> /// <param name="documentsInfo">La lista con le informazioni sui documenti da convertire</param> /// <returns>Il report dell'elaborazione</returns> public MassiveOperationReport ConvertInPdf(List <BaseInfoDoc> documentsInfo) { DocsPaWebService ws = new DocsPaWebService(); ws.Timeout = System.Threading.Timeout.Infinite; // Il report da restituire MassiveOperationReport report; // Il risultato della messa in conversione di un documento MassiveOperationReport.MassiveOperationResultEnum tempResult; // Il messaggio da inserire nel report string message; // Informazioni sull'utente che ha lanciato la procedura InfoUtente userInfo; // Il file associato al documento byte[] content = null; // Inizializzazione del report report = new MassiveOperationReport(); // Recupero delle informazioni sull'utente userInfo = UserManager.getInfoUtente(this); foreach (BaseInfoDoc doc in documentsInfo) { // Inizializzazione del messaggio string codice = MassiveOperationUtils.getItem(doc.IdProfile).Codice; message = "Documento inserito correttamente nella coda di conversione PDF."; //Recupero i diritti sul documento string ar = ws.getAccessRightDocBySystemID(doc.IdProfile, UserManager.getInfoUtente(this)); // Verifica delle informazioni sul documento tempResult = this.ValidateDocumentInformation(doc, out message); if (ar.Equals("20")) { message = "Il documento è in attesa di accettazione, quindi non può essere convertito"; tempResult = MassiveOperationReport.MassiveOperationResultEnum.KO; } //Verifico che il documento non sia consolidato FirmaDigitale.FirmaDigitaleMng mng = new FirmaDigitale.FirmaDigitaleMng(); DocsPaWR.SchedaDocumento schedaDocumento = mng.GetSchedaDocumento(doc.DocNumber); if (schedaDocumento != null) { if (schedaDocumento.ConsolidationState != null && schedaDocumento.ConsolidationState.State > DocsPaWR.DocumentConsolidationStateEnum.None) { // Il documento risulta consolidato, non può essere firmato digitalmente message = "Il documento risulta consolidato"; tempResult = MassiveOperationReport.MassiveOperationResultEnum.KO; } } // Se il risultato di validazione delle informazioni è OK, si pruò procedere if (tempResult == MassiveOperationReport.MassiveOperationResultEnum.OK) { try { // Recupero delle informazioni sul file da convertire content = FileManager.getInstance(Session.SessionID).GetFile( this, doc.VersionId, doc.VersionNumber.ToString(), doc.DocNumber, doc.Path, doc.FileName, false).content; } catch (Exception e) { message = "Errore durante il reperimento del file associato al documento."; tempResult = MassiveOperationReport.MassiveOperationResultEnum.KO; } } // Se si può procedere si mette in coda il file da convertire if (tempResult == MassiveOperationReport.MassiveOperationResultEnum.OK) { try { // Avvio della conversione FileManager.EnqueueServerPdfConversionAM( this, userInfo, content, doc.FileName, new SchedaDocumento() { systemId = doc.IdProfile, docNumber = doc.DocNumber }); } catch (Exception e) { tempResult = MassiveOperationReport.MassiveOperationResultEnum.KO; message = "Errore durante l'inserimento del documento nella coda di conversione."; } } // Inserimento di una nuova riga nel report report.AddReportRow( codice, tempResult, message); } // Restituzione del report return(report); }
/// <summary> /// Return true se il ruolo ha cha_spedisci = 1: /// per destinatari interoperanti esterni su una o più delle caselle associate a registri/rf sui quali il ruolo ha visibilità. /// per destinatari interoperanti interni /// </summary> /// <param name="page"></param> /// /// <param name="verifyDest"> "I" - check solo per destinatari interni, "E" - check solo per destinatariv esterni, "A" - check tutti</param> /// <returns></returns> public static bool RoleIsAuthorizedSend(Page page, string verifyDest) { DocsPaWebService ws = new DocsPaWebService(); bool res = false; //prendo gli rf associati al ruolo SAAdminTool.DocsPaWR.Registro[] rf = UserManager.getListaRegistriWithRF(page, "1", UserManager.getRegistroSelezionato(page).systemId); SAAdminTool.DocsPaWR.Registro[] registri = UserManager.getListaRegistriWithRF(page, "0", UserManager.getRegistroSelezionato(page).systemId); foreach (SAAdminTool.DocsPaWR.Registro registro in rf) { DataSet ds = utils.MultiCasellaManager.GetRightMailRegistro(registro.systemId, UserManager.getRuolo().systemId); if (ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows.Count > 0) { switch (verifyDest) { case "E": foreach (DataRow row in ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows) { if (row["SPEDISCI"].ToString().Equals("1") && !string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString())) { return(res = true); } } break; case "I": foreach (DataRow row in ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows) { if (row["SPEDISCI"].ToString().Equals("1") && string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString()) && ws.IsEnabledInteropInterna()) { return(res = true); } } break; default: foreach (DataRow row in ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows) { if ((row["SPEDISCI"].ToString().Equals("1") && !string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString())) || ((row["SPEDISCI"].ToString().Equals("1") && string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString()) && ws.IsEnabledInteropInterna()))) { return(res = true); } } break; } } } //prendo i registri associati al ruolo foreach (SAAdminTool.DocsPaWR.Registro registro in registri) { DataSet ds = utils.MultiCasellaManager.GetRightMailRegistro(registro.systemId, UserManager.getRuolo().systemId); if (ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows.Count > 0) { switch (verifyDest) { case "E": foreach (DataRow row in ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows) { if (row["SPEDISCI"].ToString().Equals("1") && !string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString())) { return(res = true); } } break; case "I": foreach (DataRow row in ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows) { if (row["SPEDISCI"].ToString().Equals("1") && string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString()) && ws.IsEnabledInteropInterna()) { return(res = true); } } break; default: foreach (DataRow row in ds.Tables["RIGHT_RUOLO_MAIL_REGISTRI"].Rows) { if ((row["SPEDISCI"].ToString().Equals("1") && !string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString())) || ((row["SPEDISCI"].ToString().Equals("1") && string.IsNullOrEmpty(row["EMAIL_REGISTRO"].ToString()) && ws.IsEnabledInteropInterna()))) { return(res = true); } } break; } } } return(res); }
/// <summary> /// Reperimento degli allegati del documento /// </summary> /// <param name="docNumber"></param> /// <returns></returns> public Allegato[] GetAllegatiDocumento(string docNumber) { DocsPaWebService ws = new DocsPaWebService(); return(ws.DocumentoGetAllegati(docNumber, string.Empty, string.Empty)); }
/// <summary> /// Funzione per l'applicazione del timestamp a tutti i documenti selezionati /// </summary> /// <param name="selectedItem">Lista dei system id dei documenti selezionati</param> /// <param name="report">Report di esecuzione</param> private void ApplyTimeStampToDocuments(List <MassiveOperationTarget> selectedItem, MassiveOperationReport report) { #region Dichiarazione variabili DocsPaWebService ws = new DocsPaWebService(); ws.Timeout = System.Threading.Timeout.Infinite; // Lista delle informazioni di base sul documento // contenete il file a cui aggiungere il timestamp BaseInfoDoc[] baseInfoDocs = null; // Le informazioni sul documento di interesse BaseInfoDoc tmpDoc; // Il file a cui applicare il timestamp string convertedFile; // Messaggio da aggiungere al report string message; // Risultato dell'applicazione del timestamp ad un documento MassiveOperationReport.MassiveOperationResultEnum result; #endregion // Per ogni documento a cui bisogna applicare il timestamp... foreach (MassiveOperationTarget temp in selectedItem) { // ...inizializzazione del messaggio e dell'esito message = String.Empty; result = MassiveOperationReport.MassiveOperationResultEnum.OK; string accessRight = ws.getAccessRightDocBySystemID(temp.Id, UserManager.getInfoUtente(this)); if (accessRight.Equals("20")) { message = "Il documento è in attesa di accettazione, quindi non può essere il effettuato Timestamp"; result = MassiveOperationReport.MassiveOperationResultEnum.KO; } // ...recupero del contenuto delle informazioni di base sul documento if (result == MassiveOperationReport.MassiveOperationResultEnum.OK) { try { if (accessRight.Equals("20")) { message = "Il documento è in attesa di accettazione, quindi non può essere il Timestamp"; result = MassiveOperationReport.MassiveOperationResultEnum.KO; } else { baseInfoDocs = DocumentManager.GetBaseInfoForDocument( temp.Id, String.Empty, String.Empty); } } catch (Exception e) { message = "Errore durante il recupero dei dati sul documento."; result = MassiveOperationReport.MassiveOperationResultEnum.KO; return; } // ...se baseInfoDocs non contiene elementi o non contiene un documento // con idProfile ugual a idProfile -> errore if (baseInfoDocs != null && baseInfoDocs.Where(e => e.IdProfile.Equals(temp.Id)).Count() == 1) { try { // Recupero delle informazioni sul documento tmpDoc = baseInfoDocs.Where(e => e.IdProfile.Equals(temp.Id)).FirstOrDefault(); // Recupero del contenuto del file a cui applicare il timestamp convertedFile = this.GetFileForDocument(tmpDoc); // Recupero del file e applicazione del time stamp message = this.ApplyTimeStampToDocument( convertedFile, tmpDoc.DocNumber, tmpDoc.VersionId); } catch (Exception e) { message = e.Message; result = MassiveOperationReport.MassiveOperationResultEnum.KO; } } else { message = "Errore durante il recupero dei dati sul documento."; result = MassiveOperationReport.MassiveOperationResultEnum.KO; } } // Aggiunta della riga al report report.AddReportRow( temp.Codice, result, message); } }