private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { try { ScrittureDTO dto = dataGridView1.Rows[e.RowIndex].DataBoundItem as ScrittureDTO; if (dto != null) { if (dto.AutoGenerated) { dataGridView1.Rows[e.RowIndex].DefaultCellStyle.ForeColor = Color.FromArgb(0x00, 0x66, 0xFF); } else { if (dto.IdContropartita == "A.D.1") { dataGridView1.Rows[e.RowIndex].DefaultCellStyle.ForeColor = Color.Blue; } else { dataGridView1.Rows[e.RowIndex].DefaultCellStyle.ForeColor = Color.Black; } } if (dataGridView1.Columns[e.ColumnIndex].DataPropertyName == "Importo") { // dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].ValueType = typeof(decimal); e.Value = dto.Importo.ToString("N2"); } } } catch (Exception) { } }
public void RemoveScrittura() { try { ScrittureDTO dto = _view.GridContainer.CurrentObject(); if (dto != null) { _service.RemoveScrittura(dto); _view.GridContainer.BoundList.Remove(dto); if (_view.GridContainer.BoundList.Count == 0) { _view.IsLabelVisible = true; } else { _view.IsLabelVisible = false; } _view.SaldoConto = "Saldo conto: " + _service.Total; } } catch (Exception ex) { _view.GetSimpleMessageNotificator().Show(ex.Message, "Errore", MessageType.Error); } }
public void RemoveScrittura() { try { ScrittureDTO dto = _view.GridContainer.CurrentObject(); if (dto != null) { _service.RemoveScrittura(dto); _view.GridContainer.BoundList.Remove(dto); if (_view.GridContainer.BoundList.Count == 0) { _view.IsLabelVisible = true; } else { _view.IsLabelVisible = false; } //sincronizzo il totale //decimal total = _service.CalculateTotalForSCritture(_view.GridContainer.BoundList); //_view.SetScrittureTotalizzation(total.ToString("c")); _service.ScriviDettagliSaldoConto(_view, _idConto); } } catch (Exception ex) { _view.GetSimpleMessageNotificator().Show(ex.Message, "Errore", MessageType.Error); } }
private void Update() { //costruisco il dto da validare con tutti i dati necessari del dto corrente //n.b. il dto corrente non deve essere modificato se non dopo //aver passato indenne l'aggiornamento nella stato di dominio ScrittureDTO p = new ScrittureDTO(_current); p.Importo = _view.SelecteImporto; p.Date = _view.SelectedDate; p.Causale = _view.SelectedCausale; p.NumeroPezza = _view.SelectedNumeroPezza; //lo valido ValidateInput(p); //a questo punto posso chiedere al servizio di aggiornare l'oggetto _service.UpdateScrittura(p); //se non si è verificato nessun errore sincronizzo anche l'oggetto dto corrente _current.Date = p.Date; _current.NumeroPezza = p.NumeroPezza; _current.Importo = p.Importo; _current.TipoOperazione = p.TipoOperazione; _current.Causale = p.Causale; _current.ParentName = p.ParentName; //adesso confermo le modifiche al grid contasiner _subViewSyncronyzer.GridContainer.RefreshCurrent(); _subViewSyncronyzer.SaldoConto = "Saldo conto: " + _service.Total; }
public void Duplicate() { ScrittureDTO dto = _view.GridContainer.CurrentObject(); if (dto == null) { _view.GetSimpleMessageNotificator().Show("Selezionare una scrittura", "Messaggio", MessageType.Exclamation); return; } if (dto.AutoGenerated) { _view.GetSimpleMessageNotificator().Show("Impossibile duplicare una scrittura autogenerata!", "Messaggio", MessageType.Error); return; } ScritturaSingolaPresenter presenter = new ScritturaSingolaPresenter(_view.ScritturaSingolaView, _service, _idConto, _view, dto); presenter.InitializeForm(); presenter.StartDialog(); }
private void FillRow(ScrittureDTO item, int row, bool groupByConto, int offset) { Object[] values; values = CreateArrayData(item, groupByConto); _handler.FillExcelRow(_handler.CurrentSheet, row, values, offset); }
public ScritturaSingolaContoRLSTPresenter(IScritturaSingolaContoRLSTFormView view, ContoRLSTService service, ScrittureDTO dto, IScrittureContoRLSTFormView scrittureView) { _current = dto; _subViewSyncronyzer = scrittureView; _service = service; _view = view; _view.SetPresenter(this); }
//utilizzato per la funzione DuplicateScrittura public ScritturaSingolaPresenter(IScritturaSingloaView view, BilancioService service, string idConto, IScrittureFormView subViewSyncronyzer, ScrittureDTO prototype) { _idConto = idConto; _service = service; _view = view; _view.SetPresenter(this); _subViewSyncronyzer = subViewSyncronyzer; _action = ContoActionType.New; _current = prototype; }
//usato per la funzione ShowScrittura public ScritturaSingolaPresenter(IScritturaSingloaView view, BilancioService service, ScrittureDTO current, IScrittureFormView subViewSyncronyzer) { _idConto = current.ParentId; _current = current; _service = service; _view = view; _view.SetPresenter(this); _subViewSyncronyzer = subViewSyncronyzer; _action = ContoActionType.Modify; }
private void CreateNew() { ScrittureDTO p = new ScrittureDTO(); p.Importo = _view.SelecteImporto; p.Date = _view.SelectedDate; p.Causale = _view.SelectedCausale; p.NumeroPezza = _view.SelectedNumeroPezza; p.TipoOperazione = _view.ComboTipoOperazione.SelectedItem; //imposto i dati aggiuntivi if (_view.ComboPersonale.Text == null) { p.Riferimento3 = ""; } else { p.Riferimento3 = _view.ComboPersonale.Text; } if (_view.ComboEnte.Text == null) { p.Riferimento2 = ""; } else { p.Riferimento2 = _view.ComboEnte.Text; } if (_view.ComboSettore.Text == null) { p.Riferimento1 = ""; } else { p.Riferimento1 = _view.ComboSettore.Text; } //lo valido ValidateInput(p); _service.AddScrittura(_idConto, p, _idContropartita); //se non c'è nessun errore //sincronizzo _subViewSyncronyzer.GridContainer.BoundList.Add(TipoOperazioneDecoder.TranslateDomainValuesToGUIValues(p, _subViewSyncronyzer.Banca1, _subViewSyncronyzer.Banca2, _subViewSyncronyzer.Banca3, _subViewSyncronyzer.Banca4, _subViewSyncronyzer.Banca5, _subViewSyncronyzer.Banca6));//PrepareValueToBeshownChangingTipoOperazione(p, _subViewSyncronyzer.Banca1, _subViewSyncronyzer.Banca2,_subViewSyncronyzer.Banca3)); _subViewSyncronyzer.IsLabelVisible = false; //sincronizzo il totale //decimal total = _service.CalculateTotalForSCritture(_subViewSyncronyzer.GridContainer.BoundList); //_subViewSyncronyzer.SetScrittureTotalizzation (total.ToString("c")); _service.ScriviDettagliSaldoConto(_subViewSyncronyzer, _idConto); }
public void RemoveScrittura(ScrittureDTO scrittura) { Scrittura s = _conto.FindNodeById(scrittura.Id) as Scrittura; if (s == null) { return; } _conto.Remove(scrittura.Id, null); RaiseChangeEvent(); }
public void ShowScrittura() { ScrittureDTO dto = _view.GridContainer.CurrentObject(); if (dto == null) { return; } ScritturaSingolaContoRLSTPresenter presenter = new ScritturaSingolaContoRLSTPresenter(_view.ScritturaSingolaView, _service, dto, _view); presenter.InitializeForm(); presenter.StartDialog(); }
public void ShowScrittura() { ScrittureDTO dto = _view.GridContainer.CurrentObject(); if (dto == null) { return; } //ScritturaSingolaPresenter presenter = new ScritturaSingolaPresenter(_view.ScritturaSingolaView, _service, TipoOperazioneDecoder.TranslateDomainValuesToGUIValues(dto, _view.Banca1, _view.Banca2, _view.Banca3), _view); ScritturaSingolaPresenter presenter = new ScritturaSingolaPresenter(_view.ScritturaSingolaView, _service, dto, _view); presenter.InitializeForm(); presenter.StartDialog(); }
public void AddScrittura(ScrittureDTO scrittura) { Scrittura s = new Scrittura(_conto.Id); s.TipoOperazione = TipoOperazione.Banca1; s.Importo = Convert.ToDouble(scrittura.Importo); s.Causale = scrittura.Causale; s.Date = scrittura.Date.Date; s.NumeroPezza = scrittura.NumeroPezza; s.ParentName = _conto.Description; _conto.Add(s, null, false); scrittura.ParentId = _conto.Id; scrittura.ParentName = _conto.Description; scrittura.Id = s.Id; RaiseChangeEvent(); }
private void AddRigaNomeConto(ScrittureDTO scrittura, ref int row, decimal saldoConto) { //Object[] values = new Object[2]; //values[0] = ""; //if (!singleContoReport) // values[1] = scrittura.ParentName; //else // values[1] = scrittura.ParentName + " (Saldo iniziale: )" + saldoConto.ToString("c"); Object[] values = new Object[1]; if (!singleContoReport) { values[0] = scrittura.ParentName; } else { values[0] = scrittura.ParentName + " (Saldo iniziale: " + saldoConto.ToString("c") + ")"; } //if (scrittura.ParentId.StartsWith("E")) // values[2] = "Conto ricavo"; //else if (scrittura.ParentId.StartsWith("S")) // values[2] = "Conto spesa"; //else // values[2] = "Conto finanziario"; row++; _handler.FillExcelRow(_handler.CurrentSheet, row, values, 2); row++; if (singleContoReport) { row++; } }
private void SetContropartitaDataOnView() { ScrittureDTO contropartita = _service.GetScritturaContropartita(_current); //sel'id della contropartita è quello di una banca allora metto nella combo direttamente il nome della banca if (!contropartita.ParentId.StartsWith("A.D")) //non è un conto delle disponibilità nelle attività( cassa o banche) { _idContropartita = contropartita.ParentId; _view.ComboTipoOperazione.SelectedItem = "Altre contropartite";//(_service.Bilancio.FindNodeById(_idContropartita) as Conto).AreaDiBilancioToString; _view.ShowContropartitaDetails(contropartita.ParentName); } else { // //nascondo i dettagli _view.HideContropartitadetails(); // //normalizzo eventuali contropaartite bancarie con la loro traduzione // // _view.ComboTipoOperazione.SelectedItem = TipoOperazioneDecoder.TranslateDomainValuesToGUIValues(_current, _subViewSyncronyzer.Banca1, _subViewSyncronyzer.Banca2, _subViewSyncronyzer.Banca3).Contropartita; //Verifico se si tratta di una delle banche se si la traduco if (contropartita.ParentId == "A.D.1") //cassa { _view.ComboTipoOperazione.SelectedItem = "Cassa"; } else if (contropartita.ParentId == "A.D.2.a") //banca1 { _view.ComboTipoOperazione.SelectedItem = _view.Banca1; } else if (contropartita.ParentId == "A.D.2.b")//banca2 { _view.ComboTipoOperazione.SelectedItem = _view.Banca2; } else if (contropartita.ParentId == "A.D.2.c")//banca3 { _view.ComboTipoOperazione.SelectedItem = _view.Banca3; } _idContropartita = contropartita.ParentId; } }
private void CreateNew() { ScrittureDTO p = new ScrittureDTO(); p.Importo = _view.SelecteImporto; p.Date = _view.SelectedDate; p.Causale = _view.SelectedCausale; p.NumeroPezza = _view.SelectedNumeroPezza; p.TipoOperazione = _view.ComboTipoOperazione.SelectedItem; //lo valido ValidateInput(p); _service.AddScrittura(p); //se non c'è nessun errore //sincronizzo _subViewSyncronyzer.GridContainer.BoundList.Add(p); _subViewSyncronyzer.IsLabelVisible = false; _subViewSyncronyzer.SaldoConto = "Saldo conto: " + _service.Total; }
public void UpdateScrittura(ScrittureDTO scrittura) { Scrittura s = _conto.FindNodeById(scrittura.Id) as Scrittura; if (s == null) { throw new InvalidOperationException("Tentativo di aggiornare una scrittura non presente nel conto"); } //a questo punto rimuovo la scrittura precedente RemoveScrittura(scrittura); //eaggiungo la nuova scrittura Scrittura s1 = new Scrittura(); s1.TipoOperazione = TipoOperazione.Banca1; s1.Importo = Convert.ToDouble(scrittura.Importo); s1.Causale = scrittura.Causale; s1.Date = scrittura.Date.Date; s1.NumeroPezza = scrittura.NumeroPezza; s1.Id = scrittura.Id; s1.ParentName = _conto.Description; _conto.Add(s1, null, false); scrittura.ParentName = _conto.Description; RaiseChangeEvent(); }
private void ValidateInput(ScrittureDTO p) { p.Validate(); }
internal static ScrittureDTO TranslateDomainValuesToGUIValues(ScrittureDTO dto, string banca1, string banca2, string banca3, string banca4, string banca5, string banca6) { dto.Contropartita = Translate(dto.Contropartita, banca1, banca2, banca3, banca4, banca5, banca6); return(dto); }
private void Update() { //costruisco il dto da validare con tutti i dati necessari del dto corrente //n.b. il dto corrente non deve essere modificato se non dopo //aver passato indenne l'aggiornamento nella stato di dominio ScrittureDTO p = new ScrittureDTO(_current); p.Importo = _view.SelecteImporto; p.Date = _view.SelectedDate; p.Causale = _view.SelectedCausale; p.NumeroPezza = _view.SelectedNumeroPezza; p.TipoOperazione = _view.ComboTipoOperazione.SelectedItem; //imposto i dati aggiuntivi //imposto i dati aggiuntivi if (_view.ComboPersonale.Text == null) { p.Riferimento3 = ""; } else { p.Riferimento3 = _view.ComboPersonale.Text; } if (_view.ComboEnte.Text == null) { p.Riferimento2 = ""; } else { p.Riferimento2 = _view.ComboEnte.Text; } if (_view.ComboSettore.Text == null) { p.Riferimento1 = ""; } else { p.Riferimento1 = _view.ComboSettore.Text; } //lo valido ValidateInput(p); //a questo punto posso chiedere al servizio di aggiornare l'oggetto _service.UpdateScrittura(p, _idContropartita); //se non si è verificato nessun errore sincronizzo anche l'oggetto dto corrente p = TipoOperazioneDecoder.TranslateDomainValuesToGUIValues(p, _subViewSyncronyzer.Banca1, _subViewSyncronyzer.Banca2, _subViewSyncronyzer.Banca3, _subViewSyncronyzer.Banca4, _subViewSyncronyzer.Banca5, _subViewSyncronyzer.Banca6);//.PrepareValueToBeshownChangingTipoOperazione(p, _subViewSyncronyzer.Banca1, _subViewSyncronyzer.Banca2, _subViewSyncronyzer.Banca3); _current.Date = p.Date; _current.NumeroPezza = p.NumeroPezza; _current.Importo = p.Importo; _current.TipoOperazione = p.TipoOperazione; _current.Causale = p.Causale; _current.ParentName = p.ParentName; _current.Contropartita = p.Contropartita; _current.Riferimento1 = p.Riferimento1; _current.Riferimento2 = p.Riferimento2; _current.Riferimento3 = p.Riferimento3; //adesso confermo le modifiche al grid contasiner _subViewSyncronyzer.GridContainer.RefreshCurrent(); ////sincronizzo il totale //decimal total = _service.CalculateTotalForSCritture(_subViewSyncronyzer.GridContainer.BoundList); //_subViewSyncronyzer.SetScrittureTotalizzation(total.ToString("c")); _service.ScriviDettagliSaldoConto(_subViewSyncronyzer, _idConto); }
private object[] CreateArrayData(ScrittureDTO item, bool groupByConto) { if (singleContoReport) { if (delegheConto) { Object[] values = new Object[8]; values[0] = "'" + item.Date.ToShortDateString(); values[1] = item.Causale; values[2] = item.Riferimento1; //settore values[3] = item.Riferimento2; //ente values[4] = item.NumeroPezza; //values[3] = item.TipoOperazione; values[5] = item.Contropartita; values[6] = item.Importo.ToString("c"); values[7] = item.Saldo.ToString("c");; return(values); } else if (personaleconto) { Object[] values = new Object[7]; values[0] = "'" + item.Date.ToShortDateString(); values[1] = item.Causale; values[2] = item.Riferimento3; //settore values[3] = item.NumeroPezza; //values[3] = item.TipoOperazione; values[4] = item.Contropartita; values[5] = item.Importo.ToString("c"); values[6] = item.Saldo.ToString("c");; return(values); } else { Object[] values = new Object[7]; values[0] = "'" + item.Date.ToShortDateString(); values[1] = item.Causale; values[2] = item.NumeroPezza; //values[3] = item.TipoOperazione; values[3] = item.Contropartita; if (item.Importo > 0) { values[4] = item.Importo.ToString("c"); values[5] = ""; } else { values[5] = item.Importo.ToString("c"); values[4] = ""; } values[6] = item.Saldo.ToString("c");; return(values); } } if (!groupByConto) { Object[] values = new Object[6]; values[0] = "'" + item.Date.ToShortDateString(); values[1] = item.ParentName; values[2] = item.Causale; values[3] = item.NumeroPezza; // values[4] = item.TipoOperazione; values[4] = item.Contropartita; values[5] = item.Importo.ToString("c"); return(values); } else { Object[] values = new Object[5]; values[0] = "'" + item.Date.ToShortDateString(); values[1] = item.Causale; values[2] = item.NumeroPezza; //values[3] = item.TipoOperazione; values[3] = item.Contropartita; values[4] = item.Importo.ToString("c"); return(values); } }
private static void Convert(string banca1, string banca2, string banca3, string banca4, string banca5, string banca6, ScrittureDTO item) { item.Contropartita = ConvertTranslatedValueToNormalValue(item.Contropartita, banca1, banca2, banca3, banca4, banca5, banca6); }