Ejemplo n.º 1
0
        public AttivitaAnticipiModel GetUltimaAttivitaAnticipi(decimal idPrimaSistemazione, ModelDBISE db)
        {
            try
            {
                AttivitaAnticipiModel aam = new AttivitaAnticipiModel();

                var ps = db.PRIMASITEMAZIONE.Find(idPrimaSistemazione);

                var aal = ps.ATTIVITAANTICIPI.Where(a => a.ANNULLATO == false).OrderByDescending(a => a.IDATTIVITAANTICIPI).ToList();

                if (aal?.Any() ?? false)
                {
                    var aa = aal.First();

                    aam = new AttivitaAnticipiModel()
                    {
                        idAttivitaAnticipi        = aa.IDATTIVITAANTICIPI,
                        idPrimaSistemazione       = aa.IDPRIMASISTEMAZIONE,
                        notificaRichiestaAnticipi = aa.NOTIFICARICHIESTA,
                        dataNotificaRichiesta     = aa.DATANOTIFICARICHIESTA,
                        attivaRichiestaAnticipi   = aa.ATTIVARICHIESTA,
                        dataAttivaRichiesta       = aa.DATAATTIVARICHIESTA,
                        dataAggiornamento         = aa.DATAAGGIORNAMENTO,
                        annullato = aa.ANNULLATO
                    };
                }
                else
                {
                    var aa_new = this.CreaAttivitaAnticipi(idPrimaSistemazione, db);

                    aam = new AttivitaAnticipiModel()
                    {
                        idAttivitaAnticipi        = aa_new.IDATTIVITAANTICIPI,
                        idPrimaSistemazione       = aa_new.IDPRIMASISTEMAZIONE,
                        notificaRichiestaAnticipi = aa_new.NOTIFICARICHIESTA,
                        dataNotificaRichiesta     = aa_new.DATANOTIFICARICHIESTA,
                        attivaRichiestaAnticipi   = aa_new.ATTIVARICHIESTA,
                        dataAttivaRichiesta       = aa_new.DATAATTIVARICHIESTA,
                        dataAggiornamento         = aa_new.DATAAGGIORNAMENTO,
                        annullato = aa_new.ANNULLATO
                    };
                }

                return(aam);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 2
0
        public ActionResult AttivitaAnticipi(decimal idPrimaSistemazione)
        {
            AnticipiViewModel avm = new AnticipiViewModel();

            using (ModelDBISE db = new ModelDBISE())
            {
                db.Database.BeginTransaction();

                try
                {
                    using (dtAnticipi dta = new dtAnticipi())
                    {
                        using (dtTrasferimento dtt = new dtTrasferimento())
                        {
                            bool soloLettura = false;

                            AttivitaAnticipiModel aam = dta.GetUltimaAttivitaAnticipi(idPrimaSistemazione, db);

                            var idAttivitaAnticipi = aam.idAttivitaAnticipi;

                            if (aam.notificaRichiestaAnticipi)
                            {
                                soloLettura = true;
                            }

                            avm = dta.GetAnticipi(idAttivitaAnticipi, db);

                            RinunciaAnticipiModel ram = dta.GetRinunciaAnticipi(idAttivitaAnticipi, db);
                            aam.RinunciaAnticipi = ram;

                            if (ram.rinunciaAnticipi)
                            {
                                soloLettura                      = true;
                                avm.percentualeAnticipo          = 0;
                                avm.PercentualeAnticipoRichiesto = 0;
                            }

                            var t = dtt.GetTrasferimentoByIdPrimaSistemazione(idPrimaSistemazione);
                            if (t.idStatoTrasferimento == EnumStatoTraferimento.Annullato || t.idStatoTrasferimento == EnumStatoTraferimento.Attivo)
                            {
                                soloLettura = true;
                            }


                            decimal NumAttivazioni = dta.GetNumAttivazioniAnticipi(idPrimaSistemazione);

                            ViewData.Add("NumAttivazioni", NumAttivazioni);
                            ViewData.Add("rinunciaAnticipi", ram.rinunciaAnticipi);
                            ViewData.Add("soloLettura", soloLettura);
                            ViewData.Add("idAttivitaAnticipi", idAttivitaAnticipi);
                        }
                    }

                    db.Database.CurrentTransaction.Commit();
                }
                catch (Exception ex)
                {
                    db.Database.CurrentTransaction.Rollback();
                    return(PartialView("ErrorPartial", new MsgErr()
                    {
                        msg = ex.Message
                    }));
                }
            }

            return(PartialView(avm));
        }
Ejemplo n.º 3
0
        public ActionResult GestionePulsantiAnticipi(decimal idPrimaSistemazione, decimal percentualeRichiesta)
        {
            AttivitaAnticipiModel aam = new AttivitaAnticipiModel();

            try
            {
                using (ModelDBISE db = new ModelDBISE())
                {
                    using (dtAnticipi dta = new dtAnticipi())
                    {
                        using (dtTrasferimento dtt = new dtTrasferimento())
                        {
                            bool amministratore = Utility.Amministratore();

                            string disabledNotificaRichiesta = "disabled";
                            string hiddenNotificaRichiesta   = "";
                            string disabledAttivaRichiesta   = "disabled";
                            string hiddenAttivaRichiesta     = "hidden";
                            string disabledAnnullaRichiesta  = "disabled";
                            string hiddenAnnullaRichiesta    = "hidden";

                            aam = dta.GetUltimaAttivitaAnticipi(idPrimaSistemazione, db);
                            var idAttivitaAnticipi = aam.idAttivitaAnticipi;

                            EnumStatoTraferimento statoTrasferimento = 0;
                            var t = dtt.GetTrasferimentoByIdPrimaSistemazione(idPrimaSistemazione);
                            statoTrasferimento = t.idStatoTrasferimento;

                            bool notificaRichiesta = aam.notificaRichiestaAnticipi;
                            bool attivaRichiesta   = aam.attivaRichiestaAnticipi;

                            var ra = dta.GetRinunciaAnticipi(idAttivitaAnticipi, db);
                            var rinunciaAnticipi = ra.rinunciaAnticipi;

                            //se amministratore vedo i pulsanti altrimenti solo notifica
                            if (amministratore)
                            {
                                hiddenAttivaRichiesta  = "";
                                hiddenAnnullaRichiesta = "";

                                if (notificaRichiesta && attivaRichiesta == false && statoTrasferimento != EnumStatoTraferimento.Attivo && statoTrasferimento != EnumStatoTraferimento.Annullato)
                                {
                                    disabledAttivaRichiesta  = "";
                                    disabledAnnullaRichiesta = "";
                                }
                            }

                            if (rinunciaAnticipi && notificaRichiesta == false && attivaRichiesta == false && statoTrasferimento != EnumStatoTraferimento.Attivo && statoTrasferimento != EnumStatoTraferimento.Annullato)
                            {
                                disabledNotificaRichiesta = "";
                            }

                            if (Math.Round(percentualeRichiesta, 0) > 0 && notificaRichiesta == false && attivaRichiesta == false && statoTrasferimento != EnumStatoTraferimento.Attivo && statoTrasferimento != EnumStatoTraferimento.Annullato)
                            {
                                disabledNotificaRichiesta = "";
                            }

                            ViewData.Add("disabledAnnullaRichiesta", disabledAnnullaRichiesta);
                            ViewData.Add("disabledAttivaRichiesta", disabledAttivaRichiesta);
                            ViewData.Add("disabledNotificaRichiesta", disabledNotificaRichiesta);
                            ViewData.Add("hiddenAnnullaRichiesta", hiddenAnnullaRichiesta);
                            ViewData.Add("hiddenAttivaRichiesta", hiddenAttivaRichiesta);
                            ViewData.Add("hiddenNotificaRichiesta", hiddenNotificaRichiesta);
                            ViewData.Add("amministratore", amministratore);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                return(PartialView("ErrorPartial", new MsgErr()
                {
                    msg = ex.Message
                }));
            }

            return(PartialView(aam));
        }