Ejemplo n.º 1
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));
        }