示例#1
0
        public static DocsPaVO.utente.Registro GetRegistroDaPec(string idProfile)
        {
            DocsPaVO.utente.Registro reg = null;

            if (!string.IsNullOrEmpty(idProfile))
            {
                DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
                utenti.GetRegistroDaPec(idProfile, ref reg);
            }

            return(reg);
        }
示例#2
0
        public static DocsPaVO.utente.Registro getRegistroByCode(string codiceRegistro)
        {
            DocsPaVO.utente.Registro reg = null;

            if (!string.IsNullOrEmpty(codiceRegistro))
            {
                DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
                utenti.GetRegistroByCodice(codiceRegistro, ref reg);
            }

            return(reg);
        }
示例#3
0
        public static DocsPaVO.utente.Registro getRegistroByCodAOO(string codAOO, string idAmministrazione)
        {
            DocsPaVO.utente.Registro reg = null;
            if (!(codAOO != null && !codAOO.Equals("")))
            {
                return(reg);
            }
            DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
            utenti.GetRegistroByCodAOO(codAOO, idAmministrazione, ref reg);


            return(reg);
        }
示例#4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userInfo"></param>
        /// <param name="registryId"></param>
        /// <param name="rfId"></param>
        /// <param name="year"></param>
        /// <param name="startNum"></param>
        /// <param name="endNum"></param>
        /// <returns></returns>
        private SchedaDocumento InitializeDocument(InfoUtente userInfo, string registryId, string rfId, String year, String startNum, String endNum, string repName)
        {
            // Inizializzazione scheda documento vuota
            SchedaDocumento retVal = Documenti.DocManager.NewSchedaDocumento(userInfo);

            // Inizializzazione del registro
            DocsPaVO.utente.Registro reg = new DocsPaVO.utente.Registro();

            if (String.IsNullOrEmpty(registryId) && String.IsNullOrEmpty(rfId))
            {
                reg.systemId = "0";
            }
            else
            {
                reg.systemId = String.IsNullOrEmpty(registryId) ? rfId : registryId;
            }

            retVal.registro = reg;

            // Impostazione proprietà varie della scheda documento
            retVal.appId    = ((DocsPaVO.documento.Applicazione)BusinessLogic.Documenti.FileManager.getApplicazioni("PDF")[0]).application;
            retVal.idPeople = userInfo.idPeople;
            retVal.userId   = userInfo.userId;
            retVal.typeId   = "LETTERA";

            // Impostazione oggetto del documento
            if (!string.IsNullOrEmpty(repName))
            {
                retVal.oggetto = new Oggetto()
                {
                    descrizione = String.Format("Giornale di Repertorio {3} - Anno {0} - dal rep. n. {1} al rep. n. {2}", year, Convert.ToInt32(startNum), endNum, repName)
                }
            }
            ;
            else
            {
                retVal.oggetto = new Oggetto()
                {
                    descrizione = String.Format("Giornale di Repertorio - Anno {0} - dal rep. n. {1} al rep. n. {2}", year, Convert.ToInt32(startNum), endNum)
                }
            };

            // Tipologia documento: Stampa repertorio
            retVal.tipoProto = "C";

            // Restituzione della scheda inizializzata
            return(retVal);
        }
示例#5
0
        /// <summary>
        /// </summary>
        /// <param name="idRegistro"></param>
        /// <returns></returns>
        public static DocsPaVO.utente.Registro getRegistro(string idRegistro)
        {
            DocsPaVO.utente.Registro reg = null;

            if (!(idRegistro != null && !idRegistro.Equals("")))
            {
                return(reg);
            }

            DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
            utenti.GetRegistro(idRegistro, ref reg);

            #region Codice Commentato

            /*string queryString =
             *      "SELECT A.SYSTEM_ID, A.VAR_CODICE, A.NUM_RIF, A.VAR_DESC_REGISTRO, " +
             *      "A.VAR_EMAIL_REGISTRO, A.CHA_STATO, A.ID_AMM, " +
             *      DocsPaWS.Utils.dbControl.toChar("A.DTA_OPEN",false) + " AS DTA_OPEN, " +
             *      DocsPaWS.Utils.dbControl.toChar("A.DTA_CLOSE",false) + " AS DTA_CLOSE, " +
             *      DocsPaWS.Utils.dbControl.toChar("A.DTA_ULTIMO_PROTO",false) + " AS DTA_ULTIMO_PROTO " +
             *      "FROM DPA_EL_REGISTRI A WHERE A.SYSTEM_ID=" + idRegistro;
             * logger.Debug(queryString);
             *
             * IDataReader dr = db.executeReader(queryString);
             *
             * if(dr.Read()){
             *      reg = new DocsPaVO.utente.Registro();
             *
             *      reg.systemId = dr.GetValue(0).ToString();
             *      reg.codRegistro = dr.GetValue(1).ToString();
             *      reg.codice = dr.GetValue(2).ToString();
             *      reg.descrizione = dr.GetValue(3).ToString();
             *      reg.email = dr.GetValue(4).ToString();
             *      reg.stato = dr.GetValue(5).ToString();
             *      reg.idAmministrazione = dr.GetValue(6).ToString();
             *      reg.codAmministrazione = DocsPaDB.Utils.Personalization.getInstance(reg.idAmministrazione).getCodiceAmministrazione();
             *      reg.dataApertura = dr.GetValue(7).ToString();
             *      reg.dataChiusura = dr.GetValue(8).ToString();
             *      reg.dataUltimoProtocollo = dr.GetValue(9).ToString();
             * }
             * dr.Close();*/
            #endregion

            return(reg);
        }
示例#6
0
        /// <summary>
        /// Ritorna uno dei tre possibili stati del registro
        /// (V - aperto, R - chiuso, G - giallo)
        /// </summary>
        /// <param name="registro"></param>
        /// <returns></returns>
        public static string getStatoRegistro(DocsPaVO.utente.Registro registro)
        {
            // R = Rosso -  CHIUSO
            // V = Verde -  APERTO
            // G = Giallo - APERTO IN GIALLO

            string dataApertura = registro.dataApertura;

            if (!dataApertura.Equals(""))
            {
                DateTime dt_cor = DateTime.Now;

                CultureInfo ci = new CultureInfo("it-IT");

                string[] formati = { "dd/MM/yyyy HH.mm.ss", "dd/MM/yyyy H.mm.ss", "dd/MM/yyyy" };

                DateTime d_ap = DateTime.ParseExact(dataApertura, formati, ci.DateTimeFormat, DateTimeStyles.AllowWhiteSpaces);
                //aggiungo un giorno per fare il confronto con now (che comprende anche minuti e secondi)
                d_ap = d_ap.AddDays(1);

                string mydate = dt_cor.ToString(ci);

                //DateTime dt = DateTime.ParseExact(mydate,formati,ci.DateTimeFormat,DateTimeStyles.AllowWhiteSpaces);


                if (registro.stato.Equals("A"))
                {
                    if (dt_cor.CompareTo(d_ap) > 0)
                    {
                        //data odierna maggiore della data di apertura del registro
                        return("G");
                    }
                    else
                    {
                        return("V");
                    }
                }
            }
            return("R");
        }
示例#7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="registro"></param>
        /// <param name="infoUtente"></param>
        /// <returns></returns>
        public static DocsPaVO.utente.Registro modificaRegistro(DocsPaVO.utente.Registro registro, DocsPaVO.utente.InfoUtente infoUtente)
        {
            #region Codice Commentato

            /*logger.Debug("modificaRegistro");
             * if(registro.stato.Equals("A"))
             *      throw new Exception("Il registro non è chiuso");
             * DocsPaWS.Utils.Database db = DocsPaWS.Utils.dbControl.getDatabase();
             * try {
             *      db.openConnection();
             *      string updateString =
             *              "UPDATE DPA_EL_REGISTRI SET " +
             *              "VAR_EMAIL_REGISTRO = '" + registro.email + "'" +
             *              ", VAR_DESC_REGISTRO = '" + registro.descrizione + "'" +
             *              " WHERE SYSTEM_ID = " + registro.systemId;
             *      logger.Debug(updateString);
             *      db.executeNonQuery(updateString);
             *      updateString =
             *              "UPDATE DPA_REG_PROTO SET " +
             *              "NUM_RIF = " + registro.ultimoNumeroProtocollo +
             *              " WHERE ID_REGISTRO = " + registro.systemId;
             *      logger.Debug(updateString);
             *      db.executeNonQuery(updateString);
             *      db.closeConnection();
             *
             * } catch (Exception e) {
             *      logger.Debug (e.Message);
             *      db.closeConnection();
             *      throw new Exception("F_System");
             * }*/
            //DocsPaWS.Utils.Database db = DocsPaWS.Utils.dbControl.getDatabase();
            #endregion

            DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
            utenti.RegistroModifica(ref registro, infoUtente);
            return(registro);
        }
示例#8
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="registro"></param>
        /// <param name="infoUtente"></param>
        /// <returns></returns>
        public static DocsPaVO.utente.Registro cambiaStato(string idPeople, string idCorrGlobali, DocsPaVO.utente.Registro registro)
        {
            #region Codice Commentato

            /*logger.Debug("cambiaStato");
             * string updateString =
             *      "UPDATE DPA_EL_REGISTRI SET ";
             *
             * if(registro.stato.Equals("A")) {
             *      registro.stato = "C";
             *      registro.dataChiusura = DocsPaWS.Utils.DateControl.getDate(false);
             *      updateString += " DTA_CLOSE = " + DocsPaWS.Utils.dbControl.getDate();
             * }
             * else {
             *      registro.stato = "A";
             *      registro.dataApertura = DocsPaWS.Utils.DateControl.getDate(false);
             *      registro.dataChiusura = "";
             *      updateString += " DTA_CLOSE = null, DTA_OPEN = " + DocsPaWS.Utils.dbControl.getDate();
             * }
             * updateString +=
             *      ", CHA_STATO = '" + registro.stato + "'" +
             *      " WHERE SYSTEM_ID = " + registro.systemId;
             * DocsPaWS.Utils.Database db = DocsPaWS.Utils.dbControl.getDatabase();
             * try {
             *      db.openConnection();
             *      if (!registro.stato.Equals("C")) {
             *              string sqlString =
             *                      "UPDATE DPA_REG_PROTO SET NUM_RIF=1 " +
             *                      "WHERE ID_REGISTRO = (SELECT SYSTEM_ID FROM DPA_EL_REGISTRI " +
             *                      "WHERE SYSTEM_ID= " + registro.systemId + " AND " + DocsPaWS.Utils.dbControl.getYear(DocsPaWS.Utils.dbControl.getDate()) + "!=" + DocsPaWS.Utils.dbControl.getYear("DTA_OPEN") + ")";
             *              logger.Debug(sqlString);
             *              db.executeNonQuery(sqlString);
             *      }
             *      logger.Debug(updateString);
             *      db.executeNonQuery(updateString);
             *      if (registro.stato.Equals("C")) {
             *              registro.ultimoNumeroProtocollo = db.executeScalar("SELECT NUM_RIF FROM DPA_REG_PROTO WHERE ID_REGISTRO = " + registro.systemId).ToString();
             *              aggiornaStorico(db, registro, infoUtente);
             *      }
             *      db.closeConnection();
             * } catch (Exception e) {
             *      logger.Debug (e.Message);
             *      db.closeConnection();
             *      throw new Exception("F_System");
             * }*/
            //DocsPaWS.Utils.Database db = DocsPaWS.Utils.dbControl.getDatabase();
            #endregion

            DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
            logger.Debug("CALL : RegistroCambiaStato");
            utenti.RegistroCambiaStato(idPeople, idCorrGlobali, ref registro);

            logger.Debug("END : DocsPAWS > Utenti > RegistriManager > cambiaStato");
            return(registro);
        }
示例#9
0
        public static Services.Registers.GetRegisterOrRF.GetRegisterOrRFResponse GetRegisterOrRF(Services.Registers.GetRegisterOrRF.GetRegisterOrRFRequest request)
        {
            Services.Registers.GetRegisterOrRF.GetRegisterOrRFResponse response = new Services.Registers.GetRegisterOrRF.GetRegisterOrRFResponse();
            try
            {
                DocsPaVO.utente.Utente     utente     = null;
                DocsPaVO.utente.InfoUtente infoUtente = null;

                //Inizio controllo autenticazione utente
                infoUtente = Utils.CheckAuthentication(request, "GetRegisterOrRF");

                utente = BusinessLogic.Utenti.UserManager.getUtenteById(infoUtente.idPeople);
                if (utente == null)
                {
                    //Utente non trovato
                    throw new PisException("USER_NO_EXIST");
                }
                //Fine controllo autenticazione utente

                if (string.IsNullOrEmpty(request.CodeRegister) && string.IsNullOrEmpty(request.IdRegister))
                {
                    throw new PisException("REQUIRED_CODE_OR_ID_REGISTER");
                }

                if (!string.IsNullOrEmpty(request.CodeRegister) && !string.IsNullOrEmpty(request.IdRegister))
                {
                    throw new PisException("REQUIRED_ONLY_CODE_OR_ID_REGISTER");
                }


                Domain.Register registerResponse = new Domain.Register();

                DocsPaVO.utente.Registro registro = null;

                if (!string.IsNullOrEmpty(request.CodeRegister))
                {
                    registro = BusinessLogic.Utenti.RegistriManager.getRegistroByCodAOO(request.CodeRegister, infoUtente.idAmministrazione);
                }
                else
                {
                    if (!string.IsNullOrEmpty(request.IdRegister))
                    {
                        try
                        {
                            registro = BusinessLogic.Utenti.RegistriManager.getRegistro(request.IdRegister);
                        }
                        catch
                        {
                            //Registro non trovato
                            throw new PisException("REGISTER_NOT_FOUND");
                        }
                    }
                }

                if (registro != null)
                {
                    registerResponse = Utils.GetRegister(registro);
                }
                else
                {
                    //Registro non trovato
                    throw new PisException("REGISTER_NOT_FOUND");
                }

                response.Register = registerResponse;

                response.Success = true;
            }
            catch (PisException pisEx)
            {
                logger.ErrorFormat("PISException: {0}, {1}", pisEx.ErrorCode, pisEx.Description);
                response.Error = new Services.ResponseError
                {
                    Code        = pisEx.ErrorCode,
                    Description = pisEx.Description
                };

                response.Success = false;
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("Eccezione Generica: APPLICATION_ERROR, {0}", ex.Message);
                response.Error = new Services.ResponseError
                {
                    Code        = "APPLICATION_ERROR",
                    Description = ex.Message
                };

                response.Success = false;
            }

            return(response);
        }