internal Titulo MapToTitulo() { var titulo = new Titulo(); titulo.Id = this.TituloId; titulo.NombreTitulo = this.TituloNombre; titulo.PrecioVentaTitulo = this.PrecioVenta; titulo.CodigoBarra = this.CodigoBarra; return titulo; }
public Titulo MapToTitulo() { var titulo = new Titulo(); titulo.Id = this.TituloId; titulo.NombreTitulo = this.TituloNombre; titulo.ProveedorId = this.ProveedorId; titulo.PrecioVentaTitulo = this.PrecioVenta; return titulo; }
public static bool SolicitarAutorizacionPorCambioDePrecios(Titulo tituloAValidar) { var uowFactory = Ioc.Container.Get<IUowFactory>(); using (var uow = uowFactory.Create<ILaPazUow>()) { //Obtener el precio de venta actual en la base de datos. var titulo = uow.Titulos.Obtener(x => x.Id == tituloAValidar.Id); if (titulo == null) return false; decimal? precioDeCompraActual = titulo.PrecioCompraTitulo; decimal? precioDeVentaActual = titulo.PrecioVentaTitulo; var solicitarAutorizacion = (precioDeCompraActual.HasValue && tituloAValidar.PrecioVentaTitulo < precioDeCompraActual.Value) || tituloAValidar.PrecioVentaTitulo < precioDeVentaActual; return solicitarAutorizacion; } }
private void ActualizarPrecioVenta(Titulo tituloModificar) { tituloModificar.PrecioVentaTitulo = PrecioVenta; tituloModificar.OperadorModificacionId = Context.OperadorActual.Id; tituloModificar.FechaModificacion = _clock.Now; tituloModificar.SucursalModificacionId = Context.SucursalActual.Id; tituloModificar.UbicacionId = null; Uow.Titulos.Modificar(tituloModificar); Uow.Commit(); }
private void ActualizarPrecioTitulo(Titulo titulo) { //MOdificar el de todos los proveedores? var titulosModificar = new List<Titulo>(); int _codigo; var co = int.TryParse(titulo.CodigoBarra, out _codigo); if (String.IsNullOrEmpty(titulo.CodigoBarra) || _codigo == 0) { titulosModificar = Uow.Titulos.Listado().Where(t => t.Id == titulo.Id).ToList(); } else { titulosModificar = Uow.Titulos.Listado().Where(t => t.CodigoBarra == titulo.CodigoBarra).ToList(); } if (titulosModificar.Count > 0) { foreach (var tituloModificar in titulosModificar) { if (tituloModificar.ProveedorId == _titulo.ProveedorId) { //Precio de Venta if (PrecioVenta >= tituloModificar.PrecioVentaTitulo) ActualizarPrecioVenta(tituloModificar); else if (PrecioVenta < tituloModificar.PrecioVentaTitulo) { //_messageBoxDisplayService.ShowInfo("") _messageBoxDisplayService.ShowConfirmationDialog( "El precio del título es menor. Desea almacenarlo?", "Actualizar Precio", () => { ActualizarPrecioVenta(tituloModificar); }); } //Precio de Compra //if (PrecioBase >= tituloModificar.PrecioCompraTitulo) // ActualizarPrecioCompra(tituloModificar); } else { if ((PrecioVenta > tituloModificar.PrecioVentaTitulo))//|| (PrecioBase > tituloModificar.PrecioCompraTitulo)) ActualizarPrecioVenta(tituloModificar); } } } }
private void OnTituloAgregado(Titulo titulo) { if (TituloAgregado != null) { TituloAgregado(this, titulo); } }
private void CargarTitulo(Guid tituloId) { if (tituloId == default(Guid)) { _titulo = new Titulo(); } else { _titulo = Uow.Titulos.Obtener(t => t.Id == tituloId); _precioVentaOriginal = _titulo.PrecioVentaTitulo; _operadorUltimoPrecioIdOriginal = _titulo.OperadorUltimoPrecioId; } this.Titulo = _titulo.NombreTitulo; this.Codigo = _titulo.Cod; this.CodigoBarra = _titulo.CodigoBarra; this.Isbn = _titulo.ISBN; this.Proveedor = _titulo.ProveedorId; this.Autor = _titulo.AutorId; this.Editorial = _titulo.EditorialId; this.Tema = _titulo.TemaId; this.SubTema = _titulo.SubtemaId; this.PrecioVenta = _titulo.PrecioVentaTitulo; this.PrecioCompra = _titulo.PrecioCompraTitulo; this.Comentario = _titulo.Comentario; //Si el titulo tiene stock, no se debe permitir cambiar el proveedor //var stock = Uow.TitulosStock.Listado().Where(ts => ts.TituloId == tituloId).FirstOrDefault(); //if (stock.StkCn > 0 || stock.StkPr > 0) //{ // CbxProveedor.Enabled = false; // tituloId = default(Guid); //} }
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; } }
private void CargarTitulo(Guid _Tituloid) { var titulo = new Titulo(); if (_formMode == ActionFormMode.Create) titulo = Uow.Titulos.Obtener(t => t.Id == _Tituloid); else titulo = Uow.Titulos.Obtener(t => t.Id == _proveedorId); if (titulo!=null) { //UcFiltrosLibros.Spinner.Show(); int pageTotal = 0; var codigoProveedor = UcFiltrosLibros.CodigoProveedor; var codigoLibroCompleto = titulo.Cod;// Uow.Titulos.Obtener(t => t.Id == _proveedorId).Cod; var isbn = UcFiltrosLibros.ISBN; var nombreTitulo = UcFiltrosLibros.NombreTitulo; var proveedorId = UcFiltrosLibros.ProveedorId; var temaId = UcFiltrosLibros.TemaId; var autorNombre = UcFiltrosLibros.AutorNombre; var editorialId = UcFiltrosLibros.EditorialId; var conStock = UcFiltrosLibros.ConStock; var sucursalId = this.Context.SucursalActual.Id; var conOchoDeMarzo = UcFiltrosLibros.OchoDeMarzo; string codigoBarra = UcFiltrosLibros.CodigoBarra; var activos = UcFiltrosLibros.Activos; var titulos = _tituloNegocio.Listado(SortColumn, SortDirection, codigoProveedor, codigoLibroCompleto, isbn, codigoBarra, nombreTitulo, proveedorId, temaId, autorNombre, editorialId, conStock, sucursalId, conOchoDeMarzo, activos, TitulosPager.CurrentPage, TitulosPager.PageSize, out pageTotal); GridTitulos.DataSource = titulos; TitulosPager.UpdateState(pageTotal); //Spinner.Hide(); } }