public VSeniarPresupuesto(int pIdCliente, int pPresupuestoId) { var cont = new ControladorFachada(); var contP = new ControladorPresupuesto(); iCliente = cont.BuscarCliente(pIdCliente); iPresupuesto = cont.BuscarPresupuesto(pPresupuestoId); seniaDto = contP.PresupuestoTieneSenia(pPresupuestoId); InitializeComponent(); this.nombreClienteLabel.Text = iCliente.ToString(); this.cantidadProductosLabel.Text = iPresupuesto.Lineas.Count.ToString(); this.totalLabel.Text = iPresupuesto.TotalVenta().ToString(); if (seniaDto != null) { this.dateTimePicker1.Value = seniaDto.ValidoHasta; this.fechaDeSeniaLabel.Text = seniaDto.Fecha.ToString(); this.montoSeniaTextBox.Text = seniaDto.Monto.ToString(); this.PorcentajeSeña.Text = ((Convert.ToDouble(montoSeniaTextBox.Text) * 100) / Convert.ToDouble(this.totalLabel.Text)).ToString(); } else { this.fechaDeSeniaLabel.Text = DateTime.Now.ToString(); } montoSeniaTextBox.TextChanged += new System.EventHandler(this.montoSeniaTextBox_HasChanged); }
private void Seniar_Click(object sender, EventArgs e) { if (this.montoSeniaTextBox.TextLength != 0) { var cont = new ControladorPresupuesto(); if (seniaDto == null) { var dto = new SeniaDTO(); dto.Fecha = DateTime.Parse(this.fechaDeSeniaLabel.Text); dto.IdPresupuesto = iPresupuesto.Id; dto.Monto = Convert.ToDouble(this.montoSeniaTextBox.Text); dto.ValidoHasta = dateTimePicker1.Value; cont.SeniarPresupuesto(dto); } else { seniaDto.Monto = Convert.ToDouble(this.montoSeniaTextBox.Text); seniaDto.Fecha = DateTime.Parse(this.fechaDeSeniaLabel.Text); seniaDto.ValidoHasta = dateTimePicker1.Value; cont.ModificarSenia(seniaDto); } MessageBox.Show("Se seño correctamente el presupuesto"); CerrarVentana(); } else { MessageBox.Show("Debe cargar correctamente el monto"); } }
/// <summary> /// Devuelve la senia si el prespuesto tiene una /// Si no tiene devuelve null /// </summary> /// <param name="pIdPrespupuesto"></param> /// <returns></returns> public SeniaDTO PresupuestoTieneSenia(int pIdPrespupuesto) { Senia senia = null; using (var repo = new Repositorio()) { try { senia = repo.Senias.Include("Presupuesto").Where(s => s.Presupuesto.Id == pIdPrespupuesto).First(); } catch (InvalidOperationException e) { } } if (senia != null) { var dto = new SeniaDTO(); dto.Id = senia.Id; dto.IdPresupuesto = senia.Presupuesto.Id; dto.Monto = senia.Monto; dto.Fecha = senia.Fecha; dto.ValidoHasta = senia.ValidoHasta; return(dto); } else { return(null); } }
/// <summary> /// Modifica una senia de la db /// </summary> /// <param name="senia"></param> public void ModificarSenia(SeniaDTO senia) { if (senia.Id == 0) { throw new Exception("El id de la senia es 0"); } using (var repo = new Repositorio()) { var seniadb = repo.Senias.Find(senia.Id); seniadb.Monto = senia.Monto; seniadb.Fecha = senia.Fecha; } }
/// <summary> /// Este metodo permite señar un presupuesto pasando como parámetro el id del presupuesto y el monto de la seña. /// </summary> /// <param name="pIdPresupuesto"></param> /// <param name="pMontoSenia"></param> public void SeniarPresupuesto(SeniaDTO pSenia) { using (var repo = new Repositorio()) { var presupuesto = repo.Presupuestos.Find(pSenia.IdPresupuesto); if (presupuesto == null) { throw new Exception("Presupuesto" + pSenia.IdPresupuesto + " no existe"); } var senia = new Senia(pSenia.Monto, presupuesto); senia.Fecha = pSenia.Fecha; senia.ValidoHasta = pSenia.ValidoHasta; presupuesto.Estado = EstadoPresupuesto.Seniado; repo.Senias.Add(senia); } }
public Senia DTOASenia(SeniaDTO pSenia) // TESTEAR CUANDO HAYA UN PRESUPUESTO EN BASE DE DATOS { Senia senia = new Senia(); Repositorio repo = new Repositorio(); senia.Id = pSenia.Id; senia.Fecha = pSenia.Fecha; senia.Monto = pSenia.Monto; Presupuesto presupuesto = repo.Presupuestos.Find(pSenia.IdPresupuesto); if (presupuesto == null) { throw new Exception("Id " + pSenia.IdPresupuesto + " no existe en Presupuestos"); } senia.Presupuesto = presupuesto; return(senia); }