Пример #1
0
        public void Alta(Factura model)
        {
            try
            {
                model.Numero = ObtenerUltimoNumero();
                model.Fecha  = DateTime.Now;
                _FacturaRepository.Add(model);
                var turno = _turnoRepository.Find(model.TurnoId);
                turno.Estado = EstadoTurno.Facturados;
                _turnoRepository.Update(turno);
                _turnoRepository.Save();
                _FacturaRepository.Save();

                //foreach (var item in Factura.ItemFactura)
                //{
                //    item.FacturaId = Factura.ID;
                //    _itemFacturaRepository.Add(item);
                //}
                //_itemFacturaRepository.Save();
            }
            catch (Exception ex)
            {
                Log.Error(ex.ToString());
            }
        }
Пример #2
0
        public static int Add(Factura entity)
        {
            int factura_id = 0;
            bool resultado = true;

            try
            {
                using(TransactionScope scope = new TransactionScope())
                {
                    IFacturaRepository _repository = new FacturaRepository();
                    factura_id = _repository.Add(entity);

                    if(factura_id > 0)
                    {
                        foreach(var row in entity.alicuotas)
                        {
                            row.factura_id = factura_id;

                            int res = FacturasAlicuotas.Add(row);
                            if(res == 0)
                            {
                                resultado = false;
                                break;
                            }
                        }
                    }
                    else
                    {
                        resultado = false;
                    }

                    if (resultado == true)
                        scope.Complete();

                }

            }
            catch(Exception e)
            {

                throw e;
            }

            return factura_id;
        }