public Output.Articulo Save(Input.Articulo articulo)
 {
     if (articulo.Id.HasValue)
     {
         return(Update(articulo));
     }
     else
     {
         return(Create(articulo));
     }
 }
        public Output.Articulo Create(Input.Articulo articulo)
        {
            using (var context = _context.Get())
            {
                var item = new Domain.Models.Articulo
                {
                    Activo      = true,
                    Descripcion = articulo.Descripcion,
                    IdLote      = articulo.IdLote,
                    IdTipo      = articulo.IdTipo,
                    NumeroSerie = articulo.NroSerie,
                    Precio      = articulo.Precio,
                    Marca       = articulo.Marca
                };

                context.Add(item);
                context.SaveChanges();

                return(_transformMapper.Transform <Domain.Models.Articulo, Output.Articulo>(item));
            }
        }
        public Output.Articulo Update(Input.Articulo articulo)
        {
            using (var context = _context.Get())
            {
                var item = context.Articulo
                           .Include("IdLoteNavigation")
                           .Include("IdTipoNavigation")
                           .Include("UsuarioAdjudicadoNavigation")
                           .Include("Solicitud")
                           .Include("Solicitud.IdUsuarioNavigation")
                           .Where(x => x.Id.Equals(articulo.Id))
                           .FirstOrDefault();

                item.IdLote      = articulo.IdLote;
                item.IdTipo      = articulo.IdTipo;
                item.NumeroSerie = articulo.NroSerie;
                item.Precio      = articulo.Precio;
                item.Marca       = articulo.Marca;

                context.SaveChanges();

                return(_transformMapper.Transform <Domain.Models.Articulo, Output.Articulo>(item));
            }
        }