Пример #1
0
        public void SetAttivazioniPassaporti(ref AttivazionePassaportiModel apm, ModelDBISE db)
        {
            ATTIVAZIONIPASSAPORTI ap = new ATTIVAZIONIPASSAPORTI()
            {
                IDPASSAPORTI          = apm.idPassaporti,
                NOTIFICARICHIESTA     = apm.notificaRichiesta,
                DATANOTIFICARICHIESTA = apm.dataNotificaRichiesta,
                PRATICACONCLUSA       = apm.praticaConclusa,
                DATAPRATICACONCLUSA   = apm.dataPraticaConclusa,
                //ESCLUDIPASSAPORTO = apm.escludiPassaporto,
                DATAAGGIORNAMENTO = apm.dataAggiornamento,
                ANNULLATO         = apm.annullato,
                IDFASEPASSAPORTI  = apm.idFasePassaporti
            };

            var p = db.PASSAPORTI.Find(ap.IDPASSAPORTI);

            p.ATTIVAZIONIPASSAPORTI.Add(ap);

            int i = db.SaveChanges();

            if (i <= 0)
            {
                throw new Exception("Errore nella fase d'inserimento per le attivazioni del passaporto.");
            }
            else
            {
                apm.idAttivazioniPassaporti = ap.IDATTIVAZIONIPASSAPORTI;

                Utility.SetLogAttivita(EnumAttivitaCrud.Inserimento,
                                       "Inserimento dei dati per le attivazioni del passaporto", "ATTIVAZIONIPASSAPORTI", db,
                                       p.TRASFERIMENTO.IDTRASFERIMENTO, ap.IDATTIVAZIONIPASSAPORTI);
            }
        }
Пример #2
0
        public AttivazionePassaportiModel GetLastAttivazionePassaporti(decimal idPassaporto, ModelDBISE db)
        {
            AttivazionePassaportiModel apm = new AttivazionePassaportiModel();

            var p = db.PASSAPORTI.Find(idPassaporto);

            if (p != null && p.IDPASSAPORTI > 0)
            {
                var lap =
                    p.ATTIVAZIONIPASSAPORTI.Where(
                        a => a.ANNULLATO == false).OrderByDescending(a => a.IDATTIVAZIONIPASSAPORTI);

                if (lap?.Any() ?? false)
                {
                    var ap = lap.First();
                    apm = new AttivazionePassaportiModel()
                    {
                        idAttivazioniPassaporti = ap.IDATTIVAZIONIPASSAPORTI,
                        idPassaporti            = ap.IDPASSAPORTI,
                        notificaRichiesta       = ap.NOTIFICARICHIESTA,
                        dataNotificaRichiesta   = ap.DATANOTIFICARICHIESTA,
                        praticaConclusa         = ap.PRATICACONCLUSA,
                        dataPraticaConclusa     = ap.DATAPRATICACONCLUSA,
                        dataVariazione          = ap.DATAVARIAZIONE,
                        dataAggiornamento       = ap.DATAAGGIORNAMENTO,
                        annullato = ap.ANNULLATO
                    };
                }
            }


            return(apm);
        }
Пример #3
0
        public AttivazionePassaportiModel GetAttivazionePassaportiByIdFiglioPassaporto(decimal idFiglioPassaporto)
        {
            AttivazionePassaportiModel apm = new AttivazionePassaportiModel();

            using (ModelDBISE db = new ModelDBISE())
            {
                var f = db.FIGLIPASSAPORTO.Find(idFiglioPassaporto);

                if (f?.IDFIGLIPASSAPORTO > 0)
                {
                    var ap = f.ATTIVAZIONIPASSAPORTI;
                    apm = new AttivazionePassaportiModel()
                    {
                        idAttivazioniPassaporti = ap.IDATTIVAZIONIPASSAPORTI,
                        idPassaporti            = ap.IDPASSAPORTI,
                        notificaRichiesta       = ap.NOTIFICARICHIESTA,
                        dataNotificaRichiesta   = ap.DATANOTIFICARICHIESTA,
                        praticaConclusa         = ap.PRATICACONCLUSA,
                        dataPraticaConclusa     = ap.DATAPRATICACONCLUSA,
                        dataVariazione          = ap.DATAVARIAZIONE,
                        dataAggiornamento       = ap.DATAAGGIORNAMENTO,
                        annullato = ap.ANNULLATO
                    };
                }
            }


            return(apm);
        }
Пример #4
0
        public ActionResult ElencoDocumentiPassaporto(decimal idFamiliarePassaporto, EnumTipoDoc tipoDoc, EnumParentela parentela, decimal idFaseCorrente)
        {
            List <DocumentiModel>      ldm = new List <DocumentiModel>();
            AttivazionePassaportiModel apm = new AttivazionePassaportiModel();
            bool    solaLettura            = false;
            decimal idTrasferimento        = 0;
            EnumStatoTraferimento statoTrasferimento;

            try
            {
                using (dtAttivazionePassaporto dtap = new dtAttivazionePassaporto())
                {
                    using (dtDocumenti dtd = new dtDocumenti())
                    {
                        switch (parentela)
                        {
                        case EnumParentela.Coniuge:

                            ldm = dtd.GetDocumentiIdentitaConiugePassaporto(idFamiliarePassaporto).ToList();
                            apm = dtap.GetAttivazionePassaportiByIdConiugePassaporto(idFamiliarePassaporto);
                            break;

                        case EnumParentela.Figlio:
                            ldm = dtd.GetDocumentiIdentitaFiglioPassaporto(idFamiliarePassaporto).ToList();
                            apm = dtap.GetAttivazionePassaportiByIdFiglioPassaporto(idFamiliarePassaporto);
                            break;

                        case EnumParentela.Richiedente:
                            ldm = dtd.GetDocumentiIdentitaRichiedentePassaporto(idFamiliarePassaporto).ToList();
                            apm = dtap.GetAttivazionePassaportiByIdRichiedente(idFamiliarePassaporto);
                            break;

                        default:
                            throw new ArgumentOutOfRangeException("parentela");
                        }
                    }
                }

                using (dtPratichePassaporto dtpp = new dtPratichePassaporto())
                {
                    bool notificaRichiesta    = false;
                    bool attivazioneRichiesta = false;
                    bool annullaRichiesta     = false;

                    dtpp.SituazionePassaporto(apm.idAttivazioniPassaporti, out notificaRichiesta, out attivazioneRichiesta, out annullaRichiesta);

                    if (notificaRichiesta == true || attivazioneRichiesta == true)
                    {
                        solaLettura = true;
                    }
                    else
                    {
                        solaLettura = false;
                    }

                    //var idFasePassaportiCorrente = dtpp.GetFasePassaporti_Corrente(apm.idPassaporti);
                    if (idFaseCorrente == (decimal)EnumFasePassaporti.Invio_Passaporti)
                    {
                        solaLettura = true;
                    }
                }

                using (dtTrasferimento dtt = new dtTrasferimento())
                {
                    var t = dtt.GetTrasferimentoByIdAttPassaporto(apm.idAttivazioniPassaporti);
                    idTrasferimento    = t.idTrasferimento;
                    statoTrasferimento = t.idStatoTrasferimento;

                    if (statoTrasferimento == EnumStatoTraferimento.Attivo || statoTrasferimento == EnumStatoTraferimento.Annullato)
                    {
                        solaLettura = true;
                    }
                }
            }
            catch (Exception ex)
            {
                return(PartialView("ErrorPartial", new MsgErr()
                {
                    msg = ex.Message
                }));
            }

            ViewData.Add("solaLettura", solaLettura);
            ViewData.Add("idFamiliarePassaporto", idFamiliarePassaporto);
            ViewData.Add("tipoDoc", (decimal)tipoDoc);
            ViewData.Add("idAttivazionePassaporto", apm.idAttivazioniPassaporti);
            ViewData.Add("parentela", (decimal)parentela);
            ViewData.Add("chiamante", (decimal)EnumChiamante.Passaporti);
            ViewData.Add("idTrasferimento", idTrasferimento);
            ViewData.Add("idFaseCorrente", idFaseCorrente);

            return(PartialView(ldm));
        }
Пример #5
0
        public JsonResult InserisciDocumentoPassaporto(decimal idTrasferimento, decimal idTipoDocumento, HttpPostedFileBase file, decimal idFamiliarePassaporto, decimal idParentela)
        {
            using (ModelDBISE db = new ModelDBISE())
            {
                PASSAPORTORICHIEDENTE pr = new PASSAPORTORICHIEDENTE();
                CONIUGEPASSAPORTO     cp = new CONIUGEPASSAPORTO();
                FIGLIPASSAPORTO       fp = new FIGLIPASSAPORTO();
                try
                {
                    db.Database.BeginTransaction();

                    using (dtVariazionePassaporto dtvp = new dtVariazionePassaporto())
                    {
                        AttivazionePassaportiModel apm = new AttivazionePassaportiModel();

                        //cerco l'attivazione della seconda fase in corso
                        apm = dtvp.GetAttivazioneInvioPassaportiInLavorazione(idTrasferimento, db);

                        //se non esiste segnala errore
                        if ((apm != null && apm.idAttivazioniPassaporti > 0) == false)
                        {
                            throw new Exception("Fase Invio Passaporto non trovata");
                        }

                        using (dtDocumenti dtd = new dtDocumenti())
                        {
                            DocumentiModel dm                      = new DocumentiModel();
                            bool           esisteFile              = false;
                            bool           gestisceEstensioni      = false;
                            bool           dimensioneConsentita    = false;
                            string         dimensioneMaxConsentita = string.Empty;

                            Utility.PreSetDocumento(file, out dm, out esisteFile, out gestisceEstensioni,
                                                    out dimensioneConsentita, out dimensioneMaxConsentita,
                                                    (EnumTipoDoc)idTipoDocumento);

                            if (esisteFile)
                            {
                                if (gestisceEstensioni == false)
                                {
                                    throw new Exception(
                                              "Il documento selezionato non è nel formato consentito. Il formato supportato è: pdf.");
                                }

                                if (dimensioneConsentita)
                                {
                                    //verifica se il documento è gia presente ritornando l'eventuale id
                                    decimal idDocumentoEsistente = dtvp.VerificaEsistenzaDocumentoPassaporto(idTrasferimento, idTipoDocumento, idParentela, idFamiliarePassaporto);

                                    if (idDocumentoEsistente > 0)
                                    {
                                        //se già esiste lo sostituisco (imposto modificato=true su quello esistente e ne inserisco una altro)
                                        dtvp.SostituisciDocumentoPassaporto(ref dm, idDocumentoEsistente, apm.idAttivazioniPassaporti, db);
                                    }
                                    else
                                    {
                                        //se non esiste lo inserisco
                                        dtvp.SetDocumentoPassaporto(ref dm, apm.idAttivazioniPassaporti, db);
                                    }

                                    switch ((EnumParentela)idParentela)
                                    {
                                    case EnumParentela.Coniuge:
                                        dtvp.AssociaDocumentoPassaportoConiuge(idFamiliarePassaporto, dm.idDocumenti, db);
                                        break;

                                    case EnumParentela.Figlio:
                                        dtvp.AssociaDocumentoPassaportoFiglio(idFamiliarePassaporto, dm.idDocumenti, db);
                                        break;

                                    case EnumParentela.Richiedente:
                                        dtvp.GetPassaportoRichiedente_Invio(ref pr, apm.idAttivazioniPassaporti, db);
                                        dtvp.AssociaDocumentoPassaportoRichiedente(pr.IDPASSAPORTORICHIEDENTE, dm.idDocumenti, db);
                                        break;
                                    }

                                    Utility.SetLogAttivita(EnumAttivitaCrud.Inserimento, "Inserimento di una nuovo documento (maggiorazione abitazione).", "Documenti", db, idTrasferimento, dm.idDocumenti);
                                }
                                else
                                {
                                    throw new Exception(
                                              "Il documento selezionato supera la dimensione massima consentita (" +
                                              dimensioneMaxConsentita + " Mb).");
                                }
                            }
                            else
                            {
                                throw new Exception("Il documento è obbligatorio.");
                            }
                        }
                    }

                    db.Database.CurrentTransaction.Commit();
                    return(Json(new { msg = "Il documento è stato inserito." }));
                }
                catch (Exception ex)
                {
                    db.Database.CurrentTransaction.Rollback();
                    return(Json(new { err = ex.Message }));
                }
            }
        }