コード例 #1
0
        private void GenerarLineas(AlbaranesComprasService albaranesService, List <FacturasComprasLinModel> lineas, IEnumerable <string> albaranesreferencia)
        {
            var list = albaranesreferencia.Where(f => CanImportarLinea(lineas, f));

            foreach (var item in list)
            {
                GenerarLinea(albaranesService, lineas, item);
            }
        }
コード例 #2
0
        private void GenerarLinea(AlbaranesComprasService albaranesService, List <FacturasComprasLinModel> lineas, string referencia)
        {
            var albaran = albaranesService.GetByReferencia(referencia);

            albaran = albaranesService.get(albaran.Id.ToString()) as AlbaranesComprasModel;
            //if (albaran.Lineas.Any(f => (f.Cantidad ?? 0) - (f.Cantidadpedida ?? 0) > 0)) ANG - Se quita la comprobación de cantidad pedida. El albaran se factura entero
            if (albaran.Lineas.Any(f => (f.Cantidad ?? 0) != 0))
            {
                var maxId = lineas.Any() ? lineas.Max(f => f.Id) + 1 : 1;
                lineas.AddRange(ImportarLineas(albaran.Id, maxId, albaranesService.GetLineasImportarAlbaran(referencia)));
            }

            if (lineas.Count == 0)
            {
                throw new ValidationException("Los albaranes seleccionados no han generado ninguna linea");
            }
        }
コード例 #3
0
        private void ModificarCantidadesPedidasAlbaranes(FacturasComprasModel model, TipoOperacion tipo = TipoOperacion.Editar)
        {
            var AlbaranesComprasService = new AlbaranesComprasService(_context, _db);

            AlbaranesComprasService.EjercicioId = EjercicioId;

            foreach (var item in model.Lineas)
            {
                var albaran = _db.AlbaranesCompras.Include("AlbaranesComprasLin").Single(
                    f =>
                    f.empresa == model.Empresa && f.id == item.Fkalbaranes);

                foreach (var linea in albaran.AlbaranesComprasLin)
                {
                    linea.cantidadpedida = tipo == TipoOperacion.Baja ? 0 : linea.cantidad;
                }
                var validationService = AlbaranesComprasService._validationService as AlbaranesComprasValidation;
                validationService.EjercicioId = EjercicioId;
                validationService.FlagActualizarCantidadesFacturadas = true;
                validationService.ValidarGrabar(albaran);
                _db.AlbaranesCompras.AddOrUpdate(albaran);
            }
            _db.SaveChanges();
        }