示例#1
0
        public List <EmailSecondarieDipModel> GetListaEmailSecondarioDip(decimal idDipendente)
        {
            List <EmailSecondarieDipModel> lcsm = new List <EmailSecondarieDipModel>();

            using (ModelDBISE db = new ModelDBISE())
            {
                DIPENDENTI d = db.DIPENDENTI.Find(idDipendente);

                var lemail = d.EMAILSECONDARIEDIP.Where(
                    a => a.IDDIPENDENTE == idDipendente && a.ATTIVA).ToList();

                if (lemail?.Any() ?? false)
                {
                    foreach (var cs in lemail)
                    {
                        var csm = new EmailSecondarieDipModel()
                        {
                            idEmailSecDip = cs.IDEMAILSECONDARIA,
                            idDipendente  = cs.IDDIPENDENTE,
                            Email         = cs.EMAIL,
                            Attiva        = cs.ATTIVA
                        };
                        lcsm.Add(csm);
                    }
                }
            }
            return(lcsm);
        }
示例#2
0
        public DipendentiModel RestituisciDipendenteByID(decimal idDipendente, ModelDBISE db)
        {
            DipendentiModel dm = new DipendentiModel();
            DIPENDENTI      d  = db.DIPENDENTI.Find(idDipendente);

            dm.idDipendente = d.IDDIPENDENTE;
            dm.nome         = d.NOME; dm.cognome = d.COGNOME;
            dm.email        = d.EMAIL; d.INDIRIZZO = d.INDIRIZZO;
            return(dm);
        }
示例#3
0
        public void EmailAnnullaRichiestaAnticipi(decimal idAttivitaAnticipi, ModelDBISE db)
        {
            AccountModel am       = new AccountModel();
            Mittente     mittente = new Mittente();
            Destinatario to       = new Destinatario();
            Destinatario cc       = new Destinatario();

            try
            {
                am = Utility.UtenteAutorizzato();
                mittente.Nominativo    = am.nominativo;
                mittente.EmailMittente = am.eMail;

                var aa = db.ATTIVITAANTICIPI.Find(idAttivitaAnticipi);

                if (aa?.IDATTIVITAANTICIPI > 0)
                {
                    TRASFERIMENTO tr  = aa.PRIMASITEMAZIONE.TRASFERIMENTO;
                    DIPENDENTI    dip = tr.DIPENDENTI;
                    UFFICI        uff = tr.UFFICI;

                    using (GestioneEmail gmail = new GestioneEmail())
                    {
                        using (ModelloMsgMail msgMail = new ModelloMsgMail())
                        {
                            cc = new Destinatario()
                            {
                                Nominativo        = am.nominativo,
                                EmailDestinatario = am.eMail
                            };

                            to = new Destinatario()
                            {
                                Nominativo        = dip.NOME + " " + dip.COGNOME,
                                EmailDestinatario = dip.EMAIL,
                            };

                            msgMail.mittente = mittente;
                            msgMail.cc.Add(cc);
                            msgMail.destinatario.Add(to);

                            msgMail.oggetto =
                                Resources.msgEmail.OggettoAnnullaRichiestaAnticipi;
                            msgMail.corpoMsg = string.Format(Resources.msgEmail.MessaggioAnnullaRichiestaAnticipi, uff.DESCRIZIONEUFFICIO + " (" + uff.CODICEUFFICIO + ")", tr.DATAPARTENZA.ToLongDateString());

                            gmail.sendMail(msgMail);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#4
0
        public string GetEmailByIdDipendente(decimal idDipendente)
        {
            string email = "";

            using (ModelDBISE db = new ModelDBISE())
            {
                DIPENDENTI d = db.DIPENDENTI.Find(idDipendente);
                email = d.EMAIL;
            }
            return(email);
        }
        public JsonResult InserisciVoce(AutomatismoVociManualiModel avmm)
        {
            AUTOMATISMOVOCIMANUALI avm = new AUTOMATISMOVOCIMANUALI();
            DIPENDENTI             d   = new DIPENDENTI();
            VOCI v = new VOCI();

            try
            {
                if (avmm != null)
                {
                    if (avmm.idDipendente <= 0 || avmm.IdVoce <= 0 || avmm.Importo == 0 || avmm.AnnoDa <= 0 || avmm.MeseDa <= 0 || avmm.AnnoA <= 0 || avmm.MeseA <= 0)
                    {
                        throw new Exception("I campi con asterisco sono obbligatori.");
                    }
                    else
                    {
                        using (ModelDBISE db = new ModelDBISE())
                        {
                            using (dtElaborazioni dte = new dtElaborazioni())
                            {
                                avm = dte.InserimentoVociManuali(avmm, db);
                                d   = avm.TRASFERIMENTO.DIPENDENTI;
                                v   = db.VOCI.Find(avmm.IdVoce);
                            }

                            return
                                (Json(
                                     new
                            {
                                err = "",
                                msg =
                                    "Inserimento della voce " + v.DESCRIZIONE + " con importo " +
                                    avmm.Importo + " per il dipendente " + d.COGNOME + " " + d.NOME + " (" +
                                    d.MATRICOLA + ") è avvenuto con successo."
                            }));
                        }
                    }
                }
                else
                {
                    throw new Exception("I campi con asterisco sono obbligatori.");
                }
            }
            catch (Exception ex)
            {
                return(Json(new { err = ex.Message, msg = "" }));
            }
        }
示例#6
0
        public DipendentiModel GetDipendenteByMatricola(string matricola)
        {
            DipendentiModel dm   = new DipendentiModel();
            int             matr = 0;

            using (ModelDBISE db = new ModelDBISE())
            {
                try
                {
                    matr = Convert.ToInt32(matricola);

                    DIPENDENTI d = db.DIPENDENTI.Where(a => a.MATRICOLA == matr).First();

                    dm = new DipendentiModel()
                    {
                        idDipendente        = d.IDDIPENDENTE,
                        matricola           = d.MATRICOLA,
                        nome                = d.NOME,
                        cognome             = d.COGNOME,
                        dataAssunzione      = d.DATAASSUNZIONE,
                        dataCessazione      = d.DATACESSAZIONE,
                        indirizzo           = d.INDIRIZZO,
                        cap                 = d.CAP,
                        citta               = d.CITTA,
                        provincia           = d.PROVINCIA,
                        email               = d.EMAIL,
                        telefono            = d.TELEFONO,
                        fax                 = d.FAX,
                        abilitato           = d.ABILITATO,
                        dataInizioRicalcoli = d.DATAINIZIORICALCOLI,
                        cdcGepe             = new CDCGepeModel()
                        {
                            iddipendente       = d.CDCGEPE.IDDIPENDENTE,
                            codiceCDC          = d.CDCGEPE.CODICECDC,
                            descCDC            = d.CDCGEPE.DESCCDC,
                            dataInizioValidita = d.CDCGEPE.DATAINIZIOVALIDITA
                        }
                    };
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            return(dm);
        }
示例#7
0
 public void EditStatoDipendente(bool abilitato, decimal idDipendente)
 {
     using (ModelDBISE db = new ModelDBISE())
     {
         try
         {
             DIPENDENTI d = db.DIPENDENTI.Find(idDipendente);
             d.ABILITATO = abilitato;
             db.Database.BeginTransaction();
             db.SaveChanges();
             db.Database.CurrentTransaction.Commit();
         }
         catch (Exception ex)
         {
             db.Database.CurrentTransaction.Rollback();
             throw ex;
         }
     }
 }
示例#8
0
        /// <summary>
        /// preleva il dipendente in base all'id passato.
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public DipendentiModel GetDipendenteByID(decimal id)
        {
            DipendentiModel dm;

            using (ModelDBISE db = new ModelDBISE())
            {
                DIPENDENTI d = db.DIPENDENTI.Find(id);

                dm = new DipendentiModel()
                {
                    idDipendente        = d.IDDIPENDENTE,
                    matricola           = d.MATRICOLA,
                    nome                = d.NOME,
                    cognome             = d.COGNOME,
                    dataAssunzione      = d.DATAASSUNZIONE,
                    dataCessazione      = d.DATACESSAZIONE,
                    indirizzo           = d.INDIRIZZO,
                    cap                 = d.CAP,
                    citta               = d.CITTA,
                    provincia           = d.PROVINCIA,
                    email               = d.EMAIL,
                    telefono            = d.TELEFONO,
                    fax                 = d.FAX,
                    abilitato           = d.ABILITATO,
                    dataInizioRicalcoli = d.DATAINIZIORICALCOLI,
                    //cdcGepe = new CDCGepeModel()
                    //{
                    //    iddipendente = d.CDCGEPE.IDDIPENDENTE,
                    //    codiceCDC = d.CDCGEPE.CODICECDC,
                    //    descCDC = d.CDCGEPE.DESCCDC,
                    //    dataInizioValidita = d.CDCGEPE.DATAINIZIOVALIDITA
                    //}
                };
            }

            return(dm);
        }
示例#9
0
        public static AccountModel UtenteAutorizzato()
        {
            ClaimsPrincipal currentClaimsPrincipal = ClaimsPrincipal.Current;
            //AntiForgeryConfig.UniqueClaimTypeIdentifier = ClaimTypes.NameIdentifier;

            AccountModel ac = new AccountModel();

            if (currentClaimsPrincipal.Identity.IsAuthenticated)
            {
                foreach (Claim claim in currentClaimsPrincipal.Claims)
                {
                    if (claim.Type == ClaimTypes.NameIdentifier)
                    {
                        ac.idDipendente = Convert.ToDecimal(claim.Value);
                    }
                    else if (claim.Type == ClaimTypes.Name)
                    {
                        ac.nome = claim.Value;
                    }
                    else if (claim.Type == ClaimTypes.Surname)
                    {
                        ac.cognome = claim.Value;
                    }
                    else if (claim.Type == ClaimTypes.GivenName)
                    {
                        ac.utente = claim.Value;
                    }
                    else if (claim.Type == ClaimTypes.Email)
                    {
                        ac.eMail = claim.Value;
                    }
                    else if (claim.Type == ClaimTypes.Role)
                    {
                        ac.idRuoloUtente = Convert.ToDecimal(claim.Value);
                    }
                }



                if (ac.idRuoloUtente > 0)
                {
                    using (ModelDBISE db = new ModelDBISE())
                    {
                        RUOLOACCESSO ruolo = db.RUOLOACCESSO.Find(ac.idRuoloUtente);
                        if (ruolo != null)
                        {
                            ac.RuoloAccesso = new RuoloAccesoModel()
                            {
                                idRuoloAccesso   = ruolo.IDRUOLOACCESSO,
                                descRuoloAccesso = ruolo.DESCRUOLO
                            };
                        }

                        UTENTIAUTORIZZATI ua = db.UTENTIAUTORIZZATI.Find(ac.idDipendente);
                        DIPENDENTI        d  = ua.DIPENDENTI;

                        if (d?.IDDIPENDENTE > 0)
                        {
                            ac.idDipendente = d.IDDIPENDENTE;

                            DipendentiModel dm = new DipendentiModel()
                            {
                                idDipendente        = d.IDDIPENDENTE,
                                matricola           = d.MATRICOLA,
                                nome                = d.NOME,
                                cognome             = d.COGNOME,
                                dataAssunzione      = d.DATAASSUNZIONE,
                                dataCessazione      = d.DATACESSAZIONE,
                                indirizzo           = d.INDIRIZZO,
                                cap                 = d.CAP,
                                citta               = d.CITTA,
                                provincia           = d.PROVINCIA,
                                email               = d.EMAIL,
                                telefono            = d.TELEFONO,
                                fax                 = d.FAX,
                                abilitato           = d.ABILITATO,
                                dataInizioRicalcoli = d.DATAINIZIORICALCOLI
                            };

                            ac.Dipendenti = dm;
                        }
                    }
                }
            }

            return(ac);
        }
示例#10
0
        public static void EmailAttiva(decimal idTrasferimento, string oggettoMessaggio, string testoMessaggio, ModelDBISE db)
        {
            AccountModel am       = new AccountModel();
            Mittente     mittente = new Mittente();
            Destinatario to       = new Destinatario();
            Destinatario cc       = new Destinatario();

            try
            {
                am = Utility.UtenteAutorizzato();
                if (am.RuoloAccesso.idRuoloAccesso != (decimal)EnumRuoloAccesso.SuperAmministratore)
                {
                    mittente.Nominativo    = am.nominativo;
                    mittente.EmailMittente = am.eMail;
                }

                var t = db.TRASFERIMENTO.Find(idTrasferimento);

                if (t?.IDTRASFERIMENTO > 0)
                {
                    DIPENDENTI dip = t.DIPENDENTI;
                    //UFFICI uff = t.UFFICI;

                    using (GestioneEmail gmail = new GestioneEmail())
                    {
                        using (ModelloMsgMail msgMail = new ModelloMsgMail())
                        {
                            to = new Destinatario()
                            {
                                Nominativo        = dip.NOME + " " + dip.COGNOME,
                                EmailDestinatario = dip.EMAIL,
                            };

                            var lua = db.UTENTIAUTORIZZATI.Where(a => a.IDRUOLOUTENTE == (decimal)EnumRuoloAccesso.Amministratore).ToList();
                            foreach (var ua in lua)
                            {
                                var dipAdmin = ua.DIPENDENTI;

                                if (dipAdmin != null)
                                {
                                    cc = new Destinatario()
                                    {
                                        Nominativo        = dipAdmin.NOME + " " + dipAdmin.COGNOME,
                                        EmailDestinatario = dipAdmin.EMAIL,
                                    };

                                    msgMail.cc.Add(cc);
                                }
                            }

                            msgMail.mittente = mittente;
                            msgMail.destinatario.Add(to);

                            msgMail.oggetto  = oggettoMessaggio;
                            msgMail.corpoMsg = testoMessaggio;

                            gmail.sendMail(msgMail);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#11
0
        public static void EmailInviiDirettiPrimaSistemazione(decimal idTrasferimento, ModelDBISE db)
        {
            //AccountModel am = new AccountModel();
            Mittente     mittente = new Mittente();
            Destinatario to       = new Destinatario();
            Destinatario cc       = new Destinatario();

            string EmailMittenteIse        = System.Configuration.ConfigurationManager.AppSettings["EmailISE"];
            string destinatarioContabilita = System.Configuration.ConfigurationManager.AppSettings["LineaContabilita"];

            string oggettoMessaggio = string.Empty;
            string testoMessaggio   = string.Empty;

            try
            {
                //am = Utility.UtenteAutorizzato();
                //if (am.RuoloAccesso.idRuoloAccesso != (decimal)EnumRuoloAccesso.SuperAmministratore)
                //{
                //    mittente.Nominativo = am.nominativo;
                //    mittente.EmailMittente = am.eMail;
                //}

                mittente.Nominativo    = "ISE";
                mittente.EmailMittente = EmailMittenteIse;

                var t = db.TRASFERIMENTO.Find(idTrasferimento);

                DIPENDENTI dip        = t.DIPENDENTI;
                string     nominativo = dip.COGNOME + " " + dip.NOME;

                oggettoMessaggio = "ISE - Trasmissione di Indennità di Prima Sistemazione di " + nominativo;

                testoMessaggio += "<p><p align='justify'>Con la presente si comunica che in data <b>" + DateTime.Now.ToShortDateString() + "</b> il Sistema <b>ISE - Indennità Sede Estera</b> - ha ";
                testoMessaggio += "caricato in <b>Oracle Applications</b> un movimento di <i>Indennità di Prima";
                testoMessaggio += "Sistemazione</i> relativo a <b>" + nominativo + "</b> ";
                testoMessaggio += "(<i>matricola</i>: <b>" + dip.MATRICOLA + "</b>).</p></p>";
                testoMessaggio += "<p>Distinti saluti</p> ";
                testoMessaggio += "<b><big>ICE</big> - <big>A</big>genzia per il <big>C</big>ommercio <big>E</big>stero e <big>l'</big>internazionalizzazione</b><br /> ";
                testoMessaggio += "<b>Amministrazione Economica Del Personale</b> ";
                testoMessaggio += "<hr>";


                using (GestioneEmail gmail = new GestioneEmail())
                {
                    using (ModelloMsgMail msgMail = new ModelloMsgMail())
                    {
                        to = new Destinatario()
                        {
                            Nominativo        = "Linea contabilità",
                            EmailDestinatario = destinatarioContabilita,
                        };

                        var lua = db.UTENTIAUTORIZZATI.Where(a => a.IDRUOLOUTENTE == (decimal)EnumRuoloAccesso.Amministratore).ToList();

                        foreach (var ua in lua)
                        {
                            var dipAdmin = ua.DIPENDENTI;

                            if (dipAdmin != null)
                            {
                                cc = new Destinatario()
                                {
                                    Nominativo        = dipAdmin.NOME + " " + dipAdmin.COGNOME,
                                    EmailDestinatario = dipAdmin.EMAIL,
                                };

                                msgMail.cc.Add(cc);
                            }
                        }

                        msgMail.mittente = mittente;
                        msgMail.destinatario.Add(to);

                        msgMail.oggetto  = oggettoMessaggio;
                        msgMail.corpoMsg = testoMessaggio;

                        gmail.sendMail(msgMail);
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#12
0
        private void EmailNotificaRichiestaAnticipi(decimal idAttivitaAnticipi, ModelDBISE db)
        {
            PRIMASITEMAZIONE ps                = new PRIMASITEMAZIONE();
            AccountModel     am                = new AccountModel();
            Mittente         mittente          = new Mittente();
            Destinatario     to                = new Destinatario();
            Destinatario     cc                = new Destinatario();
            List <UtenteAutorizzatoModel> luam = new List <UtenteAutorizzatoModel>();


            try
            {
                am = Utility.UtenteAutorizzato();
                mittente.Nominativo    = am.nominativo;
                mittente.EmailMittente = am.eMail;

                var aa = db.ATTIVITAANTICIPI.Find(idAttivitaAnticipi);

                ps = aa.PRIMASITEMAZIONE;

                if (ps?.IDPRIMASISTEMAZIONE > 0)
                {
                    TRASFERIMENTO tr = ps.TRASFERIMENTO;
                    DIPENDENTI    d  = tr.DIPENDENTI;

                    UFFICI u = tr.UFFICI;

                    using (dtUtentiAutorizzati dtua = new dtUtentiAutorizzati())
                    {
                        using (GestioneEmail gmail = new GestioneEmail())
                        {
                            using (ModelloMsgMail msgMail = new ModelloMsgMail())
                            {
                                cc = new Destinatario()
                                {
                                    Nominativo        = am.nominativo,
                                    EmailDestinatario = am.eMail
                                };

                                msgMail.mittente = mittente;
                                msgMail.cc.Add(cc);

                                luam.AddRange(dtua.GetUtentiByRuolo(EnumRuoloAccesso.Amministratore).ToList());

                                foreach (var uam in luam)
                                {
                                    var amministratore = db.DIPENDENTI.Find(uam.idDipendente);
                                    if (amministratore != null && amministratore.IDDIPENDENTE > 0)
                                    {
                                        to = new Destinatario()
                                        {
                                            Nominativo        = amministratore.COGNOME + " " + amministratore.NOME,
                                            EmailDestinatario = amministratore.EMAIL
                                        };

                                        msgMail.destinatario.Add(to);
                                    }
                                }
                                msgMail.oggetto  = Resources.msgEmail.OggettoNotificaRichiestaAnticipi;
                                msgMail.corpoMsg =
                                    string.Format(
                                        Resources.msgEmail.MessaggioNotificaRichiestaAnticipi,
                                        d.COGNOME + " " + d.NOME + " (" + d.MATRICOLA + ")",
                                        tr.DATAPARTENZA.ToLongDateString(),
                                        u.DESCRIZIONEUFFICIO + " (" + u.CODICEUFFICIO + ")");

                                gmail.sendMail(msgMail);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }