private bool ValidarPrecio() { if (this._formMode == ActionFormMode.Create) { return(true); } var solicitarAutorizacion = TitulosValidator.SolicitarAutorizacionPorCambioDePrecios(_titulo); if (solicitarAutorizacion) { var operadorAdmin = this.ObtenerOperadorAdministrador(); if (operadorAdmin == null) { return(false); } } return(true); }
private void BtnSeleccionar_Click(object sender, EventArgs e) { //controlo que tenga algun ìtem seleccionado de la grilla var selectedRow = this.GridTitulos.SelectedRows.FirstOrDefault(); if (selectedRow == null) { return; } //validacion cachorra. despues mejorar con los dto y toda la gilada decimal pVenta; if (TxtPrecioVenta.Text != "") { pVenta = Convert.ToDecimal(TxtPrecioVenta.Text); } else { pVenta = 0; } decimal pCompra; if (TxtPrecioCompra.Text != "") { pCompra = Convert.ToDecimal(TxtPrecioCompra.Text); } else { pCompra = 0; } if (pVenta < pCompra) { _messageBoxDisplayService.ShowError("El precio de venta no puede ser menor al precio de compra."); return; } //controlo que el titulo ya lo tenga el proveedor/si no lo tiene, agrego el titulo al proveedor var proveedorActual = Uow.Proveedores.Obtener(p => p.Id == _proveedorId); var codigoProveedor = proveedorActual.Cuenta; var tituloActual = Uow.Titulos.Obtener(t => t.Id == Id); var nuevoCod = codigoProveedor.ToString().PadLeft(4, '0').Substring(0, 4) + tituloActual.Cod.Substring(4); var tituloCheck = Uow.Titulos.Obtener(t => t.Cod == nuevoCod); if (tituloCheck == null) { var tituloProv = Uow.Titulos.Obtener(t => t.Id == Id); var libroNew = new Titulo(); libroNew.Id = Guid.NewGuid(); _idLibro = libroNew.Id; _codLibro = nuevoCod; libroNew.Cod = nuevoCod; libroNew.ISBN = tituloProv.ISBN; libroNew.NombreTitulo = tituloProv.NombreTitulo; libroNew.ProveedorId = _proveedorId; libroNew.AutorId = tituloProv.AutorId; libroNew.EditorialId = tituloProv.EditorialId; libroNew.TemaId = tituloProv.TemaId; libroNew.SubtemaId = tituloProv.SubtemaId; libroNew.PrecioVentaTitulo = PrecioVenta; libroNew.PrecioCompraTitulo = PrecioBase; libroNew.CodigoBarra = tituloProv.CodigoBarra; libroNew.ISBNg = tituloProv.ISBNg; libroNew.FechaAltaTitulo = tituloProv.FechaAltaTitulo; libroNew.TipoArticuloId = tituloProv.TipoArticuloId; libroNew.ModoStockId = tituloProv.ModoStockId; libroNew.TipoTituloId = tituloProv.TipoTituloId; libroNew.UnidadesId = tituloProv.UnidadesId; libroNew.TomosTitulosId = tituloProv.TomosTitulosId; libroNew.EstadoTituloId = tituloProv.EstadoTituloId; libroNew.AdicionalId = tituloProv.AdicionalId; libroNew.PesoTitulo = tituloProv.PesoTitulo; libroNew.PaisId = tituloProv.PaisId; libroNew.FechaEdicion = tituloProv.FechaEdicion; libroNew.IdiomaId = tituloProv.IdiomaId; libroNew.PartesId = tituloProv.PartesId; libroNew.Paginas = tituloProv.Paginas; libroNew.Encuad = tituloProv.Encuad; libroNew.Comentario = tituloProv.Comentario; libroNew.StkMin = tituloProv.StkMin; libroNew.FUltVta = tituloProv.FUltVta; libroNew.Fingreso = _clock.Now; libroNew.nControl = tituloProv.nControl; libroNew.UbicacionId = null; libroNew.PresentacionId = tituloProv.PresentacionId; libroNew.FechaAlta = _clock.Now; libroNew.SucursalAltaId = Context.SucursalActual.Id; libroNew.OperadorAltaId = Context.OperadorActual.Id; libroNew.FechaModificacion = _clock.Now; libroNew.SucursalModificacionId = Context.SucursalActual.Id; libroNew.OperadorModificacionId = Context.OperadorActual.Id; libroNew.Activo = true; Uow.Titulos.Agregar(libroNew); var tituloStockNew = new TituloStock(); tituloStockNew.TituloId = libroNew.Id; tituloStockNew.SucursalId = Context.SucursalActual.Id; tituloStockNew.StkCn = 0; tituloStockNew.StkPr = 0; tituloStockNew.FechaAlta = _clock.Now; tituloStockNew.SucursalAltaId = Context.SucursalActual.Id; tituloStockNew.OperadorAltaId = Context.OperadorActual.Id; tituloStockNew.FechaModificacion = _clock.Now; tituloStockNew.SucursalModificacionId = Context.SucursalActual.Id; tituloStockNew.OperadorModificacionId = Context.OperadorActual.Id; Uow.TitulosStock.Agregar(tituloStockNew); Uow.Commit(); } else { _idLibro = tituloCheck.Id; _codLibro = tituloCheck.Cod; } //mandar libro CompraTitulo titulo = ObtenerTitulo(); //Validar cambios de precios if (TitulosValidator.SolicitarAutorizacionPorCambioDePrecios(titulo.MapToTitulo())) { var operador = this.ObtenerOperadorAdministrador(); if (operador == null) { return; } } var esValido = this.ValidarForm(); if ((esValido)) { OnTituloAgregado(titulo); //modifico el precio de toodos los proveedores ActualizarPrecioTitulo(titulo); } else { this.DialogResult = DialogResult.None; } }