Example #1
0
        private void contextMenuStrip1ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            contextMenuStrip1.Close(ToolStripDropDownCloseReason.ItemClicked);
            if (_pagamentoClick != null)
            {
                if (e.ClickedItem.Name == "apriSpesaToolStripMenuItem")
                    apriSpesa(_pagamentoClick);
                else if (e.ClickedItem.Name == "apriDocumentoToolStripMenuItem")
                {
                    if (_pagamentoClick != null && _pagamentoClick.IdFattura > 0)
                    {
                        var spesa = getFatturaService().GetById(_pagamentoClick.IdFattura);
                        var message = getFatturaService().ShowDocumento(spesa);
                        if (!string.IsNullOrEmpty(message))
                            CommonMessages.DisplayWarning(message);
                    }
                }
                else if (e.ClickedItem.Name == "versamentoRitenutaToolStripMenuItem")
                {
                    contextMenuStrip1.Close(ToolStripDropDownCloseReason.ItemClicked);
                    var esercizio = getEsercizioService().GetById(_pagamentoClick.CodiceEsercizioSpesa);
                    var form = new RegistrazioneRitenutaUI(esercizio, getRitenutaAccontoService().GetRitenutaById(_pagamentoClick.ID));
                    form.HideInteressiSanzioni();
                    if (form.ShowDialog() == DialogResult.OK)
                    {
                        int? idSottoconto = null;
                        if (form.SottoConto != null)
                            idSottoconto = form.SottoConto.ID;
                        var message = getRitenutaAccontoService().VersamentoRitenuta(_pagamentoClick.ID, form.ImportoRitenuta, form.ImportoInteressi, form.ImportoSanzioni, form.DataVersamento, form.Conto.ID, idSottoconto, form.Descrizione);
                        if (!string.IsNullOrEmpty(message))
                            CommonMessages.DisplayWarning("Si sono verificati degli errori durante la registrazione della ritenuta:" + Environment.NewLine + message);
                        else
                            CommonMessages.DisplayComplete("Il versamento della ritenuta è stato correttamente registrato.");
                    }
                    form.Dispose();
                }
                else if (e.ClickedItem.Name == "annullaVersamentoRitenutaToolStripMenuItem")
                {
                    contextMenuStrip1.Close(ToolStripDropDownCloseReason.ItemClicked);

                    var allowDeleteMessage = getRitenutaAccontoService().IsAllowDeletePagamentoRitenutaSingola(_pagamentoClick.ID);
                    if (!string.IsNullOrEmpty(allowDeleteMessage))
                    {
                        CommonMessages.DisplayWarning($"Il versamento della ritenuta non è annullabile:{Environment.NewLine}{allowDeleteMessage}");
                    }
                    else
                    {
                        if (_pagamentoClick.StatoRitenuta == StatoRitenutaEnum.Pagata)
                        {
                            if (CommonMessages.DisplayConfirm($"Sei sicuro di voler annullare il versamento della ritenuta di {_pagamentoClick.ImportoRitenuta.GetValueOrDefault().ToString("C")} versata il {_pagamentoClick.DataPagamentoRitenuta.GetValueOrDefault().ToShortDateString()}") == DialogResult.Yes)
                            {
                                var message = getRitenutaAccontoService().DeletePagamentoRitenutaSingola(_pagamentoClick.ID);
                                if (!string.IsNullOrEmpty(message))
                                    CommonMessages.DisplayWarning($"Si sono verificati degli errori durante l'annullamento del versamento della ritenuta:{Environment.NewLine}{message}");
                                else
                                    CommonMessages.DisplayComplete("Il versamento della ritenuta è stato correttamente annullato.");
                            }
                        }
                    }
                }
                else if (e.ClickedItem.Name == "versamentoRitenutaEccessoToolStripMenuItem")
                {
                    contextMenuStrip1.Close(ToolStripDropDownCloseReason.ItemClicked);
                    var esercizio = getEsercizioService().GetById(_pagamentoClick.CodiceEsercizioSpesa);
                    var form = new RegistrazioneRitenutaUI(esercizio, getRitenutaAccontoService().GetRitenutaEccessoById(_pagamentoClick.ID));
                    if (form.ShowDialog() == DialogResult.OK)
                    {
                        var azienda = getAziendaService().GetAzienda();

                        int? idSottoconto = null;
                        if (form.SottoConto != null)
                            idSottoconto = form.SottoConto.ID;
                        var message = getRitenutaAccontoService().AddVersamentoRitenutaEccesso(_pagamentoClick.ID,
                                                                                               form.ImportoRitenuta,
                                                                                               form.ImportoInteressi.GetValueOrDefault(),
                                                                                               form.ImportoSanzioni.GetValueOrDefault(),
                                                                                               form.DataVersamento,
                                                                                               form.Conto.ID,
                                                                                               idSottoconto,
                                                                                               form.Descrizione,
                                                                                               azienda.DescrizioneAddebitoInteressiRitenuta,
                                                                                               azienda.DescrizioneAddebitoSanzioniRitenuta);
                        if (!string.IsNullOrEmpty(message))
                            CommonMessages.DisplayWarning("Si sono verificati degli errori durante la registrazione della ritenuta:" + Environment.NewLine + message);
                        else
                            CommonMessages.DisplayComplete("Il versamento della ritenuta è stato correttamente registrato.");
                    }
                    form.Dispose();
                }
                else if (e.ClickedItem.Name == "annullaVersamentoRitenutaEccessoToolStripMenuItem")
                {
                    contextMenuStrip1.Close(ToolStripDropDownCloseReason.ItemClicked);
                    var message = getRitenutaAccontoService().AnnullaVersamentoRitenutaEccesso(_pagamentoClick.ID);
                    if (!string.IsNullOrEmpty(message))
                        CommonMessages.DisplayWarning("Si sono verificati degli errori durante l'annullamento del versaento di ritenuta in eccesso:" + Environment.NewLine + message);
                    else
                        CommonMessages.DisplayComplete("Il versamento della ritenuta in eccesso è stato correttamente annullato.");
                }
                else if (e.ClickedItem.Name == "apriLetteraBonificoToolStripMenuItem")
                    apriLetteraBonifico(_pagamentoClick);
                else if (e.ClickedItem.Name == "annullaPagamentoToolStripMenuItem")
                    annullaPagamento(_pagamentoClick, _rowClick);
            }
        }