/// <summary> /// </summary> /// <param name="infoUtente"></param> /// <param name="nodoTitolario"></param> /// <param name="corrAdd"></param> /// <param name="corrRemove"></param> /// <param name="ereditaDiritti"></param> public static void setAutorizzazioniNodoTitolario(DocsPaVO.fascicolazione.Classificazione nodoTitolario, DocsPaVO.utente.Corrispondente[] corrAdd, DocsPaVO.utente.Corrispondente[] corrRemove, bool ereditaDiritti) { logger.Debug("setAutorizzazioniNodoTitolario"); ArrayList listaID = new ArrayList(); #region Codice Commentato // DocsPa_V15_Utils.database.SqlServerAgent db = new DocsPa_V15_Utils.database.SqlServerAgent(); // //db.openConnection(); // if(!ereditaDiritti) // checkChildsPermission(/*db,*/ nodoTitolario, corrRemove); // try { // db.beginTransaction(); // ArrayList listaID = new ArrayList(); // listaID.Add(nodoTitolario.systemID); // if(nodoTitolario.childs != null) { // for(int i=0; i < nodoTitolario.childs.Count; i++) // listaID.Add(((DocsPaVO.fascicolazione.Classificazione)nodoTitolario.childs[i]).systemID); // } // ProjectsManager.setVisibilita(/*db,*/ "T", listaID, corrAdd, corrRemove); // db.commitTransaction(); // //db.closeConnection(); // } catch (Exception e) { // //db.closeConnection(); // throw new Exception(e.Message); // } #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); fascicoli.SetAutorizzazioniNodoTitolario(nodoTitolario, corrAdd, corrRemove, ereditaDiritti); fascicoli.Dispose(); }
public static List <SearchResultInfo> getListaDocumentiByIdProject(string idProject) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); List <SearchResultInfo> tempList = fascicoli.getIdDocFasc(idProject); return(tempList); }
/// <summary> /// </summary> /// <param name="nodoTitolario"></param> /// <param name="infoUtente"></param> /// <returns></returns> public static DocsPaVO.fascicolazione.Classificazione updateTitolario(DocsPaVO.fascicolazione.Classificazione nodoTitolario) { #region Codice Commentato /*logger.Debug("updateTitolario"); * if(nodoTitolario != null && nodoTitolario.systemID != null) { * if (!(nodoTitolario.descrizione != null && !nodoTitolario.descrizione.Equals(""))) * throw new Exception("Verificare il campo descrizione"); * * string updateStr = * "UPDATE PROJECT SET DESCRIPTION = '" + nodoTitolario.descrizione.Replace("'", "''") + "' WHERE SYSTEM_ID=" + nodoTitolario.systemID; * logger.Debug(updateStr); * DocsPa_V15_Utils.Database db = DocsPa_V15_Utils.dbControl.getDatabase(); * db.openConnection(); * db.executeNonQuery(updateStr); * db.closeConnection(); * } * return nodoTitolario;*/ #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); DocsPaVO.fascicolazione.Classificazione result = fascicoli.UpdateTitolario(nodoTitolario); if (result == null) { logger.Debug("Errore nella gestione del titolario. (updateTitolario)"); throw new Exception("Verificare il campo descrizione"); } return(result); }
//Recupera la lista dei fascicoli procedimentali chiusi in deposito per un dato fascicolo generale //OK public static System.Collections.ArrayList getListaFascicoliInDeposito(DocsPaVO.utente.InfoUtente infoUtente, DocsPaVO.fascicolazione.Fascicolo fascicolo, int numPage, out int numTotPage, out int nRec, string tipoRic) { numTotPage = 0; nRec = 0; DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); ArrayList result = null; if (tipoRic == "C") { result = fascicoli.GetListaFascicoliInDeposito(infoUtente, fascicolo, numPage, out numTotPage, out nRec); } else { result = fascicoli.GetListaFascicoliRicInDeposito(infoUtente, tipoRic, numPage, out numTotPage, out nRec); } if (result == null) { logger.Debug("Errore nella gestione dei fascicoli. (getListaFascicoliInDeposito)"); throw new Exception("F_System"); } return(result); }
//Recupero i documenti contenuti nel fascicolo per inserirli in deposito uno ad uno private static string insDocInFascinArchivio(string fascId, string tipoOp, bool sottoFascicolo) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); ArrayList listaDoc = new ArrayList(); if (!sottoFascicolo) { List <SearchResultInfo> tempList = fascicoli.getIdDocFasc(fascId); foreach (SearchResultInfo temp in tempList) { listaDoc.Add(temp.Id); } } else { listaDoc = fascicoli.getIdDocSottoFasc(fascId); } string resInsDoc = ""; if (listaDoc != null && listaDoc.Count > 0) { for (int i = 0; i < listaDoc.Count; i++) { //Inserisco il documento in deposito resInsDoc = TrasfInDepositoDoc(listaDoc[i].ToString(), "0", tipoOp); if (resInsDoc == "-1") { break; } } } return(resInsDoc); }
// /// <summary> // /// con la diversa strutturra dell'applicazione // /// questo metodo non viene più chiamato // /// </summary> // private static void checkChildsPermission(/*DocsPa_V15_Utils.Database db,*/ DocsPaVO.fascicolazione.Classificazione nodoTitolario, DocsPaVO.utente.Corrispondente[] corrRemove) { // if(corrRemove == null || nodoTitolario.childs == null) // return; // if(corrRemove.Length > 0 && nodoTitolario.childs.Count > 0) { // string personOrGroup = "(" + ProjectsManager.getIdUtenteRuolo(corrRemove[0]); // for (int i=1; i < corrRemove.Length; i++) // ProjectsManager.getIdUtenteRuolo(corrRemove[i]); // personOrGroup += ")"; // string thing = "(" + ((DocsPaVO.fascicolazione.Classificazione)nodoTitolario.childs[0]).systemID; // // for(int i=1; i < nodoTitolario.childs.Count; i++) // thing += "," + ((DocsPaVO.fascicolazione.Classificazione)nodoTitolario.childs[i]).systemID; // thing += ")"; // // /*string queryStr = // "SELECT COUNT(*) FROM SECURITY WHERE PERSONORGROUP IN " + personOrGroup + // " AND THING IN " + thing;*/ // //logger.Debug(queryStr); // DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); // // // // //if(!db.executeScalar(queryStr).ToString().Equals("0")) // int securityCount = fascicoli.GetSecurityCount(personOrGroup,thing) ; // fascicoli.Dispose(); // // if (securityCount.ToString().Equals("0")) // throw new Exception("Impossibile rimuovere i ruoli selezionati"); // } // } #endregion public string filtroRicTitDocspa(string codice, string descrizione, string note, string indice, string idAmm, string idGruppo, string idRegistro, string idTitolario) { System.Data.DataSet ds; string result; try { DocsPaDB.Query_DocsPAWS.Fascicoli obj = new DocsPaDB.Query_DocsPAWS.Fascicoli(); ds = obj.filtroRicTitolarioDocspa(codice, descrizione, note, indice, idAmm, idGruppo, idRegistro, idTitolario); if (ds != null) { result = ds.GetXml(); } else { result = null; } } catch { result = null; } return(result); }
// /// <summary> // /// </summary> // /// <param name="documento"></param> // /// <param name="descrizione"></param> // /// <param name="infoUtente"></param> // /// <param name="debug"></param> // /// <returns></returns> // public static string createPCDProject(out DocsPaDocManagement.Documentale.Documento documento, string descrizione, DocsPaVO.utente.InfoUtente infoUtente) // { // string idAmministrazione = infoUtente.idAmministrazione; // string library = DocsPaDB.Utils.Personalization.getInstance(infoUtente.idAmministrazione).getLibrary(); // // //PCDCLIENTLib.PCDDocObject docObj = new PCDCLIENTLib.PCDDocObject(); // // documento = new DocsPaDocManagement.Documentale.Documento(infoUtente.dst, library, DocsPaDocManagement.Documentale.Tipi.ObjectType.Cyd_CmnProjects); // // /* // logger.Debug("library="+library); // docObj.SetDST(infoUtente.dst); // docObj.SetObjectType("CYD_CMNPROJECTS"); // docObj.SetProperty("%TARGET_LIBRARY", library); // */ // // /* // docObj.SetProperty("DESCRIPTION", descrizione); // */ // documento.Description = descrizione; // // // è necessario inserire anche i permessi per l'utente TYPIST_ID // documento.SetTrustee(infoUtente.userId,2,0); // documento.Create(); // // /* // DocsPaWS.Utils.ErrorHandler.checkPCDOperation(docObj,"Errore nella creazione del project"); // */ // if(documento.GetErrorCode() != 0) // { // throw new Exception("Errore nella creazione del project"); // } // // logger.Debug("project creato"); // // /* // string idProject = docObj.GetReturnProperty("%OBJECT_IDENTIFIER").ToString(); // */ // string idProject = documento.ObjectIdentifier; // // documento = new DocsPaDocManagement.Documentale.Documento(infoUtente.dst, library, DocsPaDocManagement.Documentale.Tipi.ObjectType.Cyd_CmnProjects); // // /* // docObj.SetDST(infoUtente.dst); // docObj.SetObjectType("CYD_CMNPROJECTS"); // docObj.SetProperty("%TARGET_LIBRARY", library); // */ // // /* // docObj.SetProperty("%OBJECT_IDENTIFIER", idProject); // */ // documento.ObjectIdentifier = idProject; // // documento.Update(); // // return idProject; // } #endregion #region Metodo Commentato // /// <summary> // /// </summary> // /// <param name="idProject"></param> // /// <param name="infoUtente"></param> // /// <param name="debug"></param> // public static void deletePCDProject(string idProject, DocsPaVO.utente.InfoUtente infoUtente) // { // string idAmministrazione = infoUtente.idAmministrazione; // string library = DocsPaDB.Utils.Personalization.getInstance(infoUtente.idAmministrazione).getLibrary(); // // /* // PCDCLIENTLib.PCDDocObject docObj = new PCDCLIENTLib.PCDDocObject(); // */ // DocsPaDocManagement.Documentale.Documento documento = new DocsPaDocManagement.Documentale.Documento(infoUtente.dst, library, DocsPaDocManagement.Documentale.Tipi.ObjectType.Cyd_CmnProjects); // // /* // logger.Debug("Cancellazione del project ID: " + idProject + " - Utente: " + infoUtente.userId); // docObj.SetDST(infoUtente.dst); // docObj.SetObjectType("CYD_CMNPROJECTS"); // docObj.SetProperty("%TARGET_LIBRARY", library); // */ // // /* // docObj.SetProperty("%OBJECT_IDENTIFIER", idProject); // */ // documento.ObjectIdentifier = idProject; // // documento.Delete(); // // /* // DocsPaWS.Utils.ErrorHandler.checkPCDOperation(docObj,"Errore nella cancellazione del project"); // */ // if(documento.GetErrorCode() != 0) // { // throw new Exception("Errore nella cancellazione del project"); // } // // logger.Debug("project "+ idProject + " cancellato"); // } #endregion /// <summary> /// </summary> /// <param name="db"></param> /// <param name="thing"></param> /// <param name="infoUtente"></param> /// <param name="objRuolo"></param> /// <param name="debug"></param> public static void setProjectTrustees(string idPeople, string thing, DocsPaVO.utente.Ruolo objRuolo, string idClassificazione) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); System.Collections.ArrayList ruoliSuperiori; fascicoli.SetProjectTrustees(idPeople, thing, objRuolo, idClassificazione, out ruoliSuperiori); fascicoli.Dispose(); }
public static string getDataFromProject(string campo, string condizione) { string retValue = string.Empty; DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); retValue = fascicoli.GetProjectData(campo, condizione); return(retValue); }
// /// <summary> // /// </summary> // /// <param name="codice"></param> // /// <returns></returns> // private static string getCodUltimo (string codice) // { // if (!(codice != null && !codice.Equals(""))) // return "1"; // try { // int numCodice = Int32.Parse(codice) + 1; // return numCodice.ToString(); // } catch (Exception) {} // return ""; // } /// <summary> /// </summary> /// <param name="classifica"></param> /// <param name="idRegistro"></param> /// <param name="infoUtente"></param> /// <returns></returns> public static ArrayList getFigliClassifica2(string idGruppo, string idPeople, DocsPaVO.fascicolazione.Classifica classifica, string idRegistro, string idAmm, string idTitolario) { ArrayList lista = new ArrayList(); #region Codice Commentato /*DocsPa_V15_Utils.Database db = DocsPa_V15_Utils.dbControl.getDatabase(); * try { * db.openConnection(); * string queryString = * "SELECT A.SYSTEM_ID, A.VAR_COD_LIV1, A.VAR_COD_LIV2, A.VAR_COD_LIV3, " + * "A.VAR_COD_LIV4, A.VAR_COD_LIV5, A.VAR_COD_LIV6, A.VAR_COD_LIV7, " + * "A.VAR_COD_LIV8, A.DESCRIPTION, A.NUM_LIVELLO, A.VAR_CODICE " + * "FROM PROJECT A, SECURITY B WHERE A.SYSTEM_ID=B.THING AND A.CHA_TIPO_PROJ='T' AND " + * "(B.PERSONORGROUP=" + infoUtente.idGruppo + " OR B.PERSONORGROUP=" + infoUtente.idPeople + ") AND B.ACCESSRIGHTS > 0 " + * " AND (A.ID_REGISTRO IS NULL OR A.ID_REGISTRO='" + idRegistro + "')"; * if (classifica != null && classifica.systemId != null) * queryString += " AND A.ID_PARENT=" + classifica.systemId; * else * queryString += " AND A.NUM_LIVELLO=1"; * * logger.Debug(queryString); * IDataReader dr = db.executeReader(queryString); * while (dr.Read()) { * DocsPaVO.fascicolazione.Classifica c = new DocsPaVO.fascicolazione.Classifica(); * * c.systemId = dr.GetValue(0).ToString(); * //int numLivello = Int32.Parse(dr.GetValue(10).ToString()); * //c.codice = dr.GetValue(numLivello).ToString(); * c.codice = dr.GetValue(11).ToString(); * c.descrizione = dr.GetValue(9).ToString(); * * lista.Add(c); * } * dr.Close(); * * db.closeConnection(); * } catch (Exception e) { * logger.Debug (e.Message); * db.closeConnection(); * throw new Exception("F_System"); * }*/ #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); lista = fascicoli.GetFigliClassifica2(idGruppo, idPeople, classifica, idRegistro, idAmm, idTitolario); if (lista == null) { logger.Debug("Errore nella gestione dei fascicoli. (getFigliClassifica)"); throw new Exception("F_System"); } fascicoli.Dispose(); return(lista); }
//OK /// <summary> /// Inserisce in deposito una lista di fascicoli procedimentali chiusi. Per ogni fascicolo /// procedimentale chiuso: /// Inserisce in deposito tutti i documenti del fascicolo /// Inserisce in deposito il fascicolo procedimentale: il valore di questo in archivio /// sarà sempre 1 /// </summary> /// <param name="filtriRic"></param> /// <param name="infoUtente"></param> /// <returns></returns> public static bool TrasfInDepositoAllFascProc(DocsPaVO.filtri.FiltroRicerca[][] filtriRic, DocsPaVO.utente.InfoUtente infoUtente, string tipoOp) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); int res = 0; bool result = true; ArrayList listaFasc = null; using (DocsPaDB.TransactionContext transactionalContext = new DocsPaDB.TransactionContext()) { //Ricerca tutti i fascicoli procedimentali chiusi listaFasc = BusinessLogic.Fascicoli.FascicoloManager.getListaFascicoli(infoUtente, null, filtriRic[0], false, false, false, null, ""); for (int i = 0; i < listaFasc.Count; i++) { DocsPaVO.fascicolazione.Fascicolo fasc = (DocsPaVO.fascicolazione.Fascicolo)listaFasc[i]; if (!TrasfInDepositoFascicoloProc(fasc.systemID, tipoOp)) { res++; } ////Per ogni fascicolo inserisco in archivio tutti i documenti contenuti //ArrayList lista = new ArrayList(); //lista = fascicoli.getIdDocFasc(fasc.systemID); //string resInsDoc = ""; //int docInDep2 = 0; //string valore; //for (int k = 0; k < lista.Count; k++) //{ // //Trasferimento in deposito dell'i-esimo documento del fascicolo // resInsDoc = TrasfInDepositoDoc(lista[k].ToString(), "0", tipoOp); // if (resInsDoc == "-1") // break; // if (resInsDoc == "2") // docInDep2++; //} //if (resInsDoc != "-1") //{ // //il fascicolo procedimentale chiuso viene inserito in deposito sempre con valore a 1 // result = TrasfInDepositoFascicolo(fasc.systemID, "1", tipoOp); //} } if (res > 0) { result = false; } if (result) { transactionalContext.Complete(); } } return(result); }
//Verifica che non ci sia già una nuova istanza di scarto per un dato utente e gruppo //OK public static int isPrimaIstanzaScarto(string idPeople, string idGruppo) { DocsPaDB.Query_DocsPAWS.Fascicoli fasc = new DocsPaDB.Query_DocsPAWS.Fascicoli(); int result = 0; result = fasc.isPrimaIstanzaScarto(idPeople, idGruppo); if (result == -1) { throw new Exception(); } return(result); }
public static bool updateScarto(DocsPaVO.utente.InfoUtente infoUtente, DocsPaVO.AreaScarto.InfoScarto infoScarto) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); bool result = fascicoli.UpdateScarto(infoUtente, infoScarto); if (!result) { logger.Debug("Errore nella gestione dei fascicoli. (UpdateScarto)"); throw new Exception("F_System"); } return(result); }
public static ArrayList getListaScarto(DocsPaVO.utente.InfoUtente infoUtente, int numPage, out int numTotPage, out int nRec) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); ArrayList listaScarto = fascicoli.GetListaScarto(infoUtente, numPage, out numTotPage, out nRec); if (listaScarto == null) { logger.Debug("Errore nella gestione dei fascicoli. (metodo: getListaScarto)"); throw new Exception("F_System"); } return(listaScarto); }
//OK VERO /// <summary> /// Aggiunge un fascicolo in deposito con valore: /// 1 se il fascicolo contiene documenti tutti in deposito con valore 1 /// 2 se il fascicolo contiene anche solo un documento in deposito con valore 2 /// </summary> /// <param name="idProject"></param> /// <param name="infoUtente"></param> /// <param name="valore"></param> /// <returns></returns> private static bool TrasfInDepositoFascicolo(string idProject, string valore, string tipoOp) { bool result = false; DocsPaDB.Query_DocsPAWS.Fascicoli fasc = new DocsPaDB.Query_DocsPAWS.Fascicoli(); result = fasc.TrasfInDepFasc(idProject, valore, tipoOp); if (!result) { logger.Debug("Errore nel trasferimento di un fascicolo procedimentale in deposito (TrasfInDepositoFascProc)"); throw new Exception(); } return(result); }
//Elimina i documenti di un fascicolo dall'istanza dell'area di scarto //OK public static void cancellaFascAreaScarto(DocsPaVO.fascicolazione.Fascicolo fasc, string idIstanza, bool deleteIstanza, string systemId) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicolo = new DocsPaDB.Query_DocsPAWS.Fascicoli(); bool result = true; if (fasc != null) { result = fascicolo.DeleteAreaScarto(fasc.systemID, idIstanza, deleteIstanza, systemId); } if (!result) { throw new Exception(); } }
public static System.Collections.ArrayList getListaFascicoliInScartoNoPaging(DocsPaVO.utente.InfoUtente infoUtente, DocsPaVO.AreaScarto.InfoScarto infoScarto) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); ArrayList result = fascicoli.GetListaFascicoliInScartoNoPaging(infoUtente, infoScarto); if (result == null) { logger.Debug("Errore nella gestione dei fascicoli. (getListaFascicoliInScarto)"); throw new Exception("F_System"); } return(result); }
///// <summary> ///// </summary> ///// <param name="nodoTitolario"></param> ///// <param name="infoUtente"></param> //public static void deleteTitolario(DocsPaVO.fascicolazione.Classificazione nodoTitolario, DocsPaVO.utente.InfoUtente infoUtente) //{ // ArrayList listaID = new ArrayList(); // listaID.Add(nodoTitolario.systemID); // /*DocsPa_V15_Utils.Database db = DocsPa_V15_Utils.dbControl.getDatabase();*/ // int numFigli = 1; // try { // //db.openConnection(); // listaID = ProjectsManager.getChildren(/*db,*/ "T", listaID); // // posso cancellare il folder solo se non ha figli // string idProject = (string)listaID[0]; // for (int i=1; i < listaID.Count; i++) // idProject += "," + (string)listaID[i]; // #region Codice Commentato // /*string queryString = // "SELECT COUNT(*) FROM PROJECT_COMPONENTS WHERE PROJECT_ID IN (" + idProject + ")"; // logger.Debug(queryString); // numFigli = Int32.Parse(db.executeScalar(queryString).ToString());*/ // #endregion // DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); // numFigli = fascicoli.DeleteTitolario(idProject); // fascicoli.Dispose(); // //db.closeConnection(); // } catch (Exception e) { // logger.Debug(e.Message); // //db.closeConnection(); // logger.Debug("Errore nella gestione dei fascicoli. (deleteTitolario)",e); // throw e; // } // if (numFigli == 0) // { // for (int i=0; i < listaID.Count; i++) // { // //ProjectsManager.deletePCDProject((string)listaID[i], infoUtente); // string library = DocsPaDB.Utils.Personalization.getInstance(infoUtente.idAmministrazione).getLibrary(); // DocsPaDocumentale.Documentale.ProjectManager documentManager = new DocsPaDocumentale.Documentale.ProjectManager(infoUtente, library); // if(!documentManager.DeleteProject((string)listaID[i])) // { // logger.Debug("Errore nella gestione dei fascicoli. (deleteTitolario)"); // throw new Exception("Errore della cancellazione di un progetto"); // } // } // } // else // { // logger.Debug("Errore nella gestione dei fascicoli. Il titolario contiene dei documenti. (deleteTitolario)"); // throw new Exception("Il titolario contiene dei documenti"); // } //} /// <summary> /// </summary> /// <param name="infoUtente"></param> /// <param name="nodoTitolario"></param> /// <returns></returns> public static string getCodiceFiglioTitolario(string idAmministrazione, DocsPaVO.fascicolazione.Classificazione nodoTitolario) { int nextVal = 1; string codiceParent = null; if (nodoTitolario != null && nodoTitolario.systemID != null) { string separator = DocsPaDB.Utils.Personalization.getInstance(idAmministrazione).getSeparator(); codiceParent = nodoTitolario.codice + separator; if (nodoTitolario.childs != null && nodoTitolario.childs.Count > 0) { for (int i = 0; i < nodoTitolario.childs.Count; i++) { string tmp = codiceParent + nextVal.ToString(); if (((DocsPaVO.fascicolazione.Classificazione)nodoTitolario.childs[i]).codice.Equals(tmp)) { nextVal++; i = 0; } } } } else { #region Codice Commentato /*string queryStr = * "SELECT COUNT(*) FROM PROJECT WHERE CHA_TIPO_PROJ = 'T' " + * "AND (NUM_LIVELLO = 0 OR NUM_LIVELLO IS NULL) AND ID_AMM = " + infoUtente.idAmministrazione; * logger.Debug(queryStr); * nextVal = Int32.Parse(db.executeScalar(queryStr).ToString()) + 1;*/ #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); nextVal = Int32.Parse(fascicoli.GetCodiceFiglioTitolario(idAmministrazione)) + 1; fascicoli.Dispose(); } string ret = checkCodice(idAmministrazione, codiceParent, nextVal); while (ret == null) { ret = checkCodice(idAmministrazione, codiceParent, nextVal++); } return(ret); }
/// <summary> /// </summary> /// <param name="db"></param> /// <param name="idProject"></param> /// <param name="idParent"></param> /// <param name="debug"></param> internal static void setVisibilita(/*DocsPaWS.Utils.Database db,*/ string idProject, string idParent) { #region Codice Commentato /*string insertStr = * "INSERT INTO SECURITY (THING, PERSONORGROUP, ACCESSRIGHTS, ID_GRUPPO_TRASM, CHA_TIPO_DIRITTO) " + * "(SELECT " + idProject + ", PERSONORGROUP, ACCESSRIGHTS, ID_GRUPPO_TRASM, CHA_TIPO_DIRITTO FROM SECURITY WHERE THING=" + idParent + ")"; * logger.Debug(insertStr); * db.executeNonQuery(insertStr);*/ #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); fascicoli.SetVisibilita(idProject, idParent); fascicoli.Dispose(); }
/// <summary> /// </summary> /// <param name="classifica"></param> /// <param name="idRegistro"></param> /// <param name="infoUtente"></param> /// <returns></returns> public static ArrayList getFigliClassifica(string idGruppo, string idPeople, DocsPaVO.fascicolazione.Classifica classifica, string idRegistro, string idAmm) { ArrayList lista = new ArrayList(); DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); lista = fascicoli.GetFigliClassifica(idGruppo, idPeople, classifica, idRegistro, idAmm); if (lista == null) { logger.Debug("Errore nella gestione dei fascicoli. (getFigliClassifica)"); throw new Exception("F_System"); } fascicoli.Dispose(); return(lista); }
/// <summary> /// </summary> /// <param name="infoUtente"></param> /// <param name="registro"></param> /// <param name="codiceClassifica"></param> /// <returns></returns> public static System.Collections.ArrayList getTitolario2(string idAmministrazione, string idGruppo, string idPeople, DocsPaVO.utente.Registro registro, string codiceClassifica, bool getFigli, string idTitolario) { System.Collections.ArrayList listaObject = new System.Collections.ArrayList(); DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); listaObject = fascicoli.GetTitolario2(idAmministrazione, idGruppo, idPeople, registro, codiceClassifica, getFigli, idTitolario); if (listaObject == null) { logger.Debug("Errore nella gestione dei fascicoli. (getTitolario)"); throw new Exception("F_System"); } return(listaObject); }
public static bool addAllFascInScarto(DocsPaVO.fascicolazione.Fascicolo fascicolo, DocsPaVO.utente.InfoUtente infoUtente, string tipoRic) { bool result = true; using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext()) { DocsPaDB.Query_DocsPAWS.Fascicoli fasc = new DocsPaDB.Query_DocsPAWS.Fascicoli(); result = fasc.addAllFascAreaScarto(fascicolo, infoUtente, tipoRic); if (!result) { logger.Debug("Errore nell' inserimento dei fascicoli in area di scarto (metodo: addAllFascInScarto)"); throw new Exception(); } transactionContext.Complete(); return(result); } }
//Aggiunge un singolo fascicolo all'area di scarto //OK public static string addDocumentiFascicoloInAreaScarto(string idProfile, string idProject, string docNumber, DocsPaVO.utente.InfoUtente infoUtente) { string result = String.Empty; using (DocsPaDB.TransactionContext transactionContext = new DocsPaDB.TransactionContext()) { DocsPaDB.Query_DocsPAWS.Fascicoli fasc = new DocsPaDB.Query_DocsPAWS.Fascicoli(); result = fasc.addDocumentiFascAreaScarto(idProfile, idProject, docNumber, infoUtente); if (result == "-1") { logger.Debug("Errore nel'inserimento del fascicolo in area di scarto (metodo: addAreaLavoroMethod)"); throw new Exception(); } transactionContext.Complete(); return(result); } }
//aggiunta per gestione filtro registro /// <summary> /// </summary> /// <param name="idClassificazione"></param> /// <param name="codiceClassificazione"></param> /// <param name="registro"></param> /// <returns></returns> private static DocsPaVO.fascicolazione.Classifica[] getGerarchia2(string idClassificazione, string codiceClassificazione, DocsPaVO.utente.Registro registro, string idAmm, string idTitolario) { DocsPaVO.fascicolazione.Classifica[] lista = null; DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); lista = fascicoli.GetGerarchia2(idClassificazione, codiceClassificazione, registro, idAmm, idTitolario); /* * if (lista == null) * { * logger.Debug("Errore nella gestione dei fascicoli. (newGerarchia)"); * throw new Exception("F_System"); * } */ return(lista); }
//OK /// <summary> /// Inserisce in deposito un singolo fascicolo procedimentale chiuso. /// Inserisce in deposito tutti i documenti del fascicolo /// </summary> /// <param name="fascID"></param> /// <returns></returns> public static bool TrasfInDepositoFascicoloProc(string fascID, string tipoOp) { bool result = true; using (DocsPaDB.TransactionContext transactionalContext = new DocsPaDB.TransactionContext()) { DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); //Recupero i documenti contenuti nel fascicolo per inserirli in deposito uno ad uno string resInsDoc = insDocInFascinArchivio(fascID, tipoOp, false); if (resInsDoc != "-1") { //Inserisco in archivio anche tutti i sottofascicoli del fascicolo ArrayList ListaSottoFasc = new ArrayList(); ListaSottoFasc = fascicoli.getSottoFascicoli(fascID); if (ListaSottoFasc != null && ListaSottoFasc.Count > 0) { for (int i = 0; i < ListaSottoFasc.Count; i++) { resInsDoc = insDocInFascinArchivio(ListaSottoFasc[i].ToString(), tipoOp, true); if (resInsDoc == "-1") { break; } else { //Il sottofascicolo viene inserito in archivio con valore sempre uguale a 1 result = TrasfInDepositoFascicolo(ListaSottoFasc[i].ToString(), "1", tipoOp); } } } if (resInsDoc != "-1" && result) { //Il fascicolo procedimentale viene inserito in archivio con valore sempre uguale a 1 result = TrasfInDepositoFascicolo(fascID, "1", tipoOp); } } if (result) { transactionalContext.Complete(); } } return(result); }
public static bool fascicolazionCanAddFasc(string idNodo) { bool rtn = false; DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); string sql = "SELECT CHA_RW FROM PROJECT WHERE SYSTEM_ID=" + idNodo; using (IDataReader reader = fascicoli.ExecuteReader(sql)) { if (reader.Read()) { if (!reader.IsDBNull(0)) { rtn = reader.GetString(0).Equals("W"); //"R" vuol dire READ only , quindi non si creano fasc/sfasc } } } return(rtn); }
/// <summary> /// </summary> /// <param name="db"></param> /// <param name="tipoProj"></param> /// <param name="listaID"></param> /// <param name="debug"></param> /// <returns></returns> internal static ArrayList getChildren(/*DocsPaWS.Utils.Database db,*/ string tipoProj, ArrayList listaID) { ArrayList listaIdFascicoli = new ArrayList(); #region Codice Commentato /* string queryStr; * IDataReader dr; * string idProject = (string)listaID[0]; * for (int i=1; i < listaID.Count; i++) * idProject += "," + (string)listaID[i]; * if(tipoProj.Equals("T")) { * queryStr = * "SELECT SYSTEM_ID FROM PROJECT WHERE CHA_TIPO_PROJ='F' AND ID_PARENT IN (" + idProject + ")"; * logger.Debug(queryStr); * dr = db.executeReader(queryStr); * while(dr.Read()) { * listaID.Add(dr.GetValue(0).ToString()); * listaIdFascicoli.Add(dr.GetValue(0).ToString()); * } * dr.Close(); * } else if(tipoProj.Equals("F")) * listaIdFascicoli = listaID; * string idFascicoli = (string)listaIdFascicoli[0]; * for (int i=1; i < listaIdFascicoli.Count; i++) * idFascicoli += "," + (string)listaIdFascicoli[i]; * queryStr = * "SELECT SYSTEM_ID FROM PROJECT WHERE CHA_TIPO_PROJ='C' AND ID_FASCICOLO IN (" + idFascicoli + ")"; * logger.Debug(queryStr); * dr = db.executeReader(queryStr); * while(dr.Read()) * listaID.Add(dr.GetValue(0).ToString()); * dr.Close();*/ #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); listaID = fascicoli.GetChildren(/*db,*/ tipoProj, listaID); return(listaID); }
//OK VERO /// <summary> /// Inserisce in deposito tutti i documenti in un dato fascicolo generale /// Inserisce in deposito il fascicolo generale: il valore di questo in archivio /// sarà sempre 2 /// </summary> /// <param name="fascicolo"></param> /// <param name="anno"></param> /// <param name="infoUtente"></param> /// <returns></returns> public static int TrasfInDepositoAllDocsFascGen(DocsPaVO.fascicolazione.Fascicolo fascicolo, string anno, DocsPaVO.utente.InfoUtente infoUtente, string tipoOp) { int docInDep2 = 0; bool result = false; using (DocsPaDB.TransactionContext transactionalContext = new DocsPaDB.TransactionContext()) { //Recupero la lista di tutti i documenti contenuti in un dato fascicolo generale DocsPaDB.Query_DocsPAWS.Fascicoli fasc = new DocsPaDB.Query_DocsPAWS.Fascicoli(); ArrayList listaDoc = fasc.GetDocumentiDaArchiviare(infoUtente.idGruppo, infoUtente.idPeople, fascicolo, anno); string resInsDoc = ""; for (int i = 0; i < listaDoc.Count; i++) { DocsPaVO.documento.InfoDocumento infoDoc = (DocsPaVO.documento.InfoDocumento)listaDoc[i]; resInsDoc = TrasfInDepositoDoc(infoDoc.idProfile, "0", tipoOp); if (resInsDoc == "-1") { break; } if (resInsDoc == "2") { docInDep2++; } } if (resInsDoc != "-1") { //il fascicolo genereale viene inserito in deposito sempre con valore a 2 result = TrasfInDepositoFascicolo(fascicolo.systemID, "2", tipoOp); } if (result) { transactionalContext.Complete(); } } return(docInDep2); }
/// <summary> /// </summary> /// <param name="codiceParent"></param> /// <param name="nextVal"></param> /// <param name="infoUtente"></param> /// <returns></returns> private static string checkCodice(string idAmministrazione, string codiceParent, int nextVal) { #region Codice Commentato /*string ret = ""; * if(codiceParent != null) * ret = codiceParent; * ret += nextVal.ToString(); * string queryStr = * "SELECT COUNT(*) FROM PROJECT WHERE CHA_TIPO_PROJ = 'T' " + * "AND VAR_CODICE = '" + ret + * "' AND ID_AMM = " + infoUtente.idAmministrazione; * logger.Debug(queryStr); * if(!db.executeScalar(queryStr).ToString().Equals("0")) * ret = null; * return ret;*/ #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); string ret = fascicoli.CheckCodice(idAmministrazione, codiceParent, nextVal.ToString()); fascicoli.Dispose(); return(ret); }
/// <summary> /// Reperimento di un fascicolo a partire dall'id /// </summary> /// <param name="idFascicolo"></param> /// <param name="infoUtente"></param> /// <returns></returns> public static DocsPaVO.fascicolazione.Fascicolo getFascicolo(string idFascicolo, DocsPaVO.utente.InfoUtente infoUtente) { // Reperimento oggetto fascicolo di appartenenza del sottofascicolo DocsPaDB.Query_DocsPAWS.Fascicoli dbFascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); return(dbFascicoli.GetFascicoloById(idFascicolo, infoUtente)); }
//aggiunta per gestione filtro registro /// <summary> /// </summary> /// <param name="idClassificazione"></param> /// <param name="codiceClassificazione"></param> /// <param name="registro"></param> /// <returns></returns> private static DocsPaVO.fascicolazione.Classifica[] getGerarchia(string idClassificazione, string codiceClassificazione, DocsPaVO.utente.Registro registro, string idAmm) { DocsPaVO.fascicolazione.Classifica[] lista = null; #region Codice Commentato /*DocsPa_V15_Utils.Database db = DocsPa_V15_Utils.dbControl.getDatabase(); * try { * db.openConnection(); * int numLivello = 0; * string idParent = "0"; * string queryString = * "SELECT A.VAR_COD_LIV1, A.VAR_COD_LIV2, A.VAR_COD_LIV3, A.VAR_COD_LIV4, " + * "A.VAR_COD_LIV5, A.VAR_COD_LIV6, A.VAR_COD_LIV7, A.VAR_COD_LIV8, " + * "A.DESCRIPTION, A.ID_PARENT, A.NUM_LIVELLO, A.VAR_CODICE, A.SYSTEM_ID "+ * "FROM PROJECT A WHERE A.CHA_TIPO_PROJ='T' AND "; * * //add per filtro su registro * if (registro != null) * { * string condRegistro = ""; * condRegistro = " (A.ID_REGISTRO IS NULL OR A.ID_REGISTRO='" + registro.systemId + "') "; * queryString += condRegistro; * queryString += " AND "; * } * //end add * * if(idClassificazione != null) * queryString += "A.SYSTEM_ID=" + idClassificazione; * else * queryString += "A.VAR_CODICE='" + codiceClassificazione + "'"; * * logger.Debug(queryString); * IDataReader dr = db.executeReader(queryString); * if (dr.Read()) { * numLivello = Int32.Parse(dr.GetValue(10).ToString()); * lista = new DocsPaVO.fascicolazione.Classifica[numLivello]; * for (int i=0; i<numLivello; i++) { * lista[i] = new DocsPaVO.fascicolazione.Classifica(); * //lista[i].codice = dr.GetValue(i).ToString(); * } * numLivello -= 1; * lista[numLivello].systemId = dr.GetValue(12).ToString();; * lista[numLivello].descrizione = dr.GetValue(8).ToString(); * lista[numLivello].codice = dr.GetValue(11).ToString(); * idParent = dr.GetValue(9).ToString(); * } * dr.Close(); * * while (!idParent.Equals("0") && numLivello > 0) { * numLivello -= 1; * lista[numLivello].systemId = idParent; * queryString = * "SELECT DESCRIPTION, ID_PARENT, NUM_LIVELLO, VAR_CODICE " + * "FROM PROJECT WHERE SYSTEM_ID=" + idParent; * logger.Debug(queryString); * dr = db.executeReader(queryString); * if (dr.Read()) { * lista[numLivello].descrizione = dr.GetValue(0).ToString(); * lista[numLivello].codice = dr.GetValue(3).ToString(); * } * idParent = dr.GetValue(1).ToString(); * dr.Close(); * } * * db.closeConnection(); * } catch (Exception e) { * logger.Debug (e.Message); * db.closeConnection(); * throw new Exception("F_System"); * }*/ #endregion DocsPaDB.Query_DocsPAWS.Fascicoli fascicoli = new DocsPaDB.Query_DocsPAWS.Fascicoli(); lista = fascicoli.GetGerarchia(idClassificazione, codiceClassificazione, registro, idAmm); /* * if(lista == null) * { * logger.Debug("Errore nella gestione dei fascicoli. (newGerarchia)"); * throw new Exception("F_System"); * } */ return(lista); }