public ActionResult GestionePulsantiMAB(decimal idTrasferimento) { AttivazioneMABModel amm = new AttivazioneMABModel(); MAB ma = new MAB(); ANTICIPOANNUALEMAB aa = new ANTICIPOANNUALEMAB(); //VariazioniMABModel vmam = new VariazioniMABModel(); //RinunciaMABModel rmab = new RinunciaMABModel(); try { using (ModelDBISE db = new ModelDBISE()) { using (dtMaggiorazioneAbitazione dtma = new dtMaggiorazioneAbitazione()) { 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"; decimal num_attivazioni = 0; bool esisteMod1 = false; EnumStatoTraferimento statoTrasferimento = 0; amm = dtma.GetAttivazionePartenzaMAB(idTrasferimento); num_attivazioni = dtma.GetNumAttivazioniMAB(idTrasferimento); ma = dtma.GetMABPartenza(idTrasferimento, db); var ldocModulo1 = dtma.GetDocumentiMABbyTipoDoc(amm.idAttivazioneMAB, (decimal)EnumTipoDoc.Prima_Rata_Maggiorazione_abitazione); if (ldocModulo1.Count > 0) { esisteMod1 = true; } var idAttivazioneMAB = amm.idAttivazioneMAB; bool esisteMAB = ma.IDMAB > 0 ? true : false; //bool esisteVMAB = vmam.idVariazioniMAB > 0 ? true : false; bool notificaRichiesta = amm.notificaRichiesta; bool attivaRichiesta = amm.Attivazione; var t = dtt.GetTrasferimentoById(idTrasferimento); statoTrasferimento = t.idStatoTrasferimento; //se non esiste nessuma MAB non esegue nessun controllo if (esisteMAB) { //se amministratore vedo i pulsanti altrimenti solo notifica if (amministratore) { hiddenAttivaRichiesta = ""; hiddenAnnullaRichiesta = ""; if (num_attivazioni == 0) { if (notificaRichiesta && attivaRichiesta == false && esisteMod1 && statoTrasferimento != EnumStatoTraferimento.Annullato) { disabledAttivaRichiesta = ""; disabledAnnullaRichiesta = ""; } if (notificaRichiesta == false && attivaRichiesta == false && statoTrasferimento != EnumStatoTraferimento.Annullato) { if (esisteMod1) { disabledNotificaRichiesta = ""; } } } } else { if (num_attivazioni == 0) { if (notificaRichiesta == false && attivaRichiesta == false && esisteMod1 && statoTrasferimento != EnumStatoTraferimento.Annullato) { disabledNotificaRichiesta = ""; } } } } else { if (amministratore) { hiddenAttivaRichiesta = ""; hiddenAnnullaRichiesta = ""; } } //gestione pulsanti in caso di rinuncia if (notificaRichiesta && attivaRichiesta == false && ma.RINUNCIAMAB && statoTrasferimento != EnumStatoTraferimento.Annullato) { disabledAttivaRichiesta = ""; disabledAnnullaRichiesta = ""; } if (ma.RINUNCIAMAB && notificaRichiesta == false && attivaRichiesta == false && statoTrasferimento != EnumStatoTraferimento.Annullato) { disabledNotificaRichiesta = ""; } ViewData.Add("idTrasferimento", idTrasferimento); ViewData.Add("idAttivazioneMAB", idAttivazioneMAB); 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(amm)); }