public ActionResult Crear(Factura factura) { if (!ModelState.IsValid) { LlenarControles(); return PartialView(factura); } factura.Identifier = Guid.NewGuid(); factura.UsuarioId = UsuarioActual.Usuario.UsuarioId; factura.FechaCreacion = DateTime.Now; var maxikiosco = Uow.MaxiKioscos.Obtener(factura.MaxiKioscoId); var fact = Uow.Facturas.Listado(f => f.MaxiKiosco).Where(f => f.MaxiKioscoId == factura.MaxiKioscoId && f.AutoNumero.StartsWith("WEB_")).OrderBy(f => f.FacturaId).ToList(); if (fact.Any()) { var fact2 = fact.Last(); var primerParte = String.Format("WEB_{0}", maxikiosco.Abreviacion); var numero = Convert.ToInt32(fact2.AutoNumero.Replace(primerParte, "")); factura.AutoNumero = String.Format("{0}{1}", primerParte, numero + 1); } else { factura.AutoNumero = String.Format("WEB_{0}1", maxikiosco.Abreviacion); } Uow.Facturas.Agregar(factura); Uow.Commit(); return new JsonResult() { Data = new { exito = true }, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; }
public ActionResult Editar(Factura factura) { if (!ModelState.IsValid) { LlenarControles(); return PartialView(factura); } Uow.Facturas.Modificar(factura); Uow.Commit(); return new JsonResult() { Data = new { exito = true }, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; }
private void btnAceptar_Click(object sender, EventArgs e) { errorProvider1.Dispose(); var valido = Validacion.Validar(errorProvider1, new List<object> { txtFacturaNro, txtImporteTotal, ddlProveedor }); if (valido) { if (Factura != null) { //verifico que ya no haya una factura con el mismo numero y proveedor var existente = FacturaRepository.Obtener(f => f.FacturaNro == FacturaNro && f.ProveedorId == ProveedorId && f.FacturaId != Factura.FacturaId); if (existente != null) { MessageBox.Show("Ya existe una factura para el proveedor seleccionado con el mismo número"); this.DialogResult = DialogResult.None; } else { Factura.FacturaNro = FacturaNro; Factura.ImporteTotal = ImporteTotal; Factura.ProveedorId = ProveedorId; //Factura.UsuarioId = UsuarioActual.UsuarioId; FacturaRepository.Modificar(Factura); FacturaRepository.Commit(); ExportarKiosco(); } } else { var existente = FacturaRepository.Obtener(f => f.FacturaNro == FacturaNro && f.ProveedorId == ProveedorId); if (existente != null) { MessageBox.Show("Ya existe una factura para el proveedor seleccionado con el mismo número"); this.DialogResult = DialogResult.None; } else { Factura = new Factura() { CierreCajaId = UsuarioActual.CierreCajaIdActual, Identifier = Guid.NewGuid(), FacturaNro = FacturaNro, ImporteTotal = ImporteTotal, ProveedorId = ProveedorId, MaxiKioscoId = AppSettings.MaxiKioscoId, Fecha = Fecha, AutoNumero = GenerarAutonumerico(), UsuarioId = UsuarioActual.UsuarioId, FechaCreacion = DateTime.Now }; FacturaRepository.Agregar(Factura); FacturaRepository.Commit(); ExportarKiosco(); } } } else { this.DialogResult = DialogResult.None; } }