示例#1
0
        public async Task <APIGatewayProxyResponse> FunctionHandler(APIGatewayProxyRequest input, ILambdaContext context)
        {
            LogMessage(context, "Starting Execution");

            try
            {
                AmazonDynamoDBConfig clientConfig = new AmazonDynamoDBConfig();
                clientConfig.RegionEndpoint = RegionEndpoint.USEast1;
                AmazonDynamoDBClient client = new AmazonDynamoDBClient(clientConfig);

                var repo     = new Movimientosrepository(client);
                var mapper   = new Mapper();
                var _service = new MovimientosService(repo, mapper);

                var results = await _service.GetAllItems();

                var response = CreateResponse(results);
                LogMessage(context, "Execution Completed");

                return(response);
            }
            catch (Exception e)
            {
                LogMessage(context, "Error: " + e.ToString());

                return(CreateResponse(null));
            }
        }
示例#2
0
        public async Task <APIGatewayProxyResponse> FunctionHandler(MovimientosRequest input, ILambdaContext context)
        {
            StringBuilder builder = new StringBuilder();

            LogMessage(context, "Starting Execution");

            builder.AppendLine($"Buscando movimiento para la cuenta {input?.Cuenta} y movimiento {input?.MovimientoID}");


            try
            {
                AmazonDynamoDBConfig clientConfig = new AmazonDynamoDBConfig();
                clientConfig.RegionEndpoint = RegionEndpoint.USEast1;
                AmazonDynamoDBClient client = new AmazonDynamoDBClient(clientConfig);

                var repo     = new Movimientosrepository(client);
                var mapper   = new Mapper();
                var _service = new MovimientosService(repo, mapper);

                var results = await _service.GetMovimiento(input.Cuenta, input.MovimientoID);

                var response = CreateResponse(results);
                LogMessage(context, "Execution Completed");

                return(response);
            }
            catch (Exception e)
            {
                LogMessage(context, "Error: " + e.ToString());

                return(CreateResponse(null));
            }
        }
示例#3
0
 public FormMovimientos()
 {
     InitializeComponent();
     movimientosService = new MovimientosService(ConfigConnection.connectionString);
     productoService    = new ProductoService(ConfigConnection.connectionString);
     Gestionar();
     LlenarCombo();
 }
        public IHttpActionResult GetById(int id)
        {
            MovimientosService svc = new MovimientosService(jsonPath);

            var movement = svc.FindById(id);

            return(Ok(movement));
        }
        public IHttpActionResult Get()
        {
            MovimientosService svc = new MovimientosService(jsonPath);

            List <Movimiento> movimientos = svc.GetAll();

            return(Ok(movimientos));
        }
示例#6
0
        // POST api/<controller>
        public IHttpActionResult Post(Movimiento movimiento)
        {
            var service     = new MovimientosService(jsonPath);
            var movimientos = service.GetAll();

            var movimientoEditado = movimientos.Where(m => m.idMovimiento == movimiento.idMovimiento).First();

            movimientoEditado.fecha      = movimiento.fecha;
            movimientoEditado.monto      = movimiento.monto;
            movimientoEditado.comentario = movimiento.comentario;

            service.SaveAll(movimientos);

            return(Ok());
        }
示例#7
0
        public void EditTest()
        {
            var            path           = @"C:\Users\leoc_\source\repos\GastosTracker.Web\GastosTracker.Web\App_Data\movimientos.json";
            EditController editController = new EditController(path);
            var            service        = new MovimientosService(path);

            var movimiento = new Movimiento()
            {
                idMovimiento = 1, monto = 1200, fecha = "20181212"
            };

            editController.Post(movimiento);
            var editado = service.GetAll().Where(m => m.idMovimiento == movimiento.idMovimiento).First();

            Assert.IsTrue(editado.fecha == movimiento.fecha && editado.monto == movimiento.monto && editado.idMovimiento == movimiento.idMovimiento);
        }
示例#8
0
        public void SaveTest()
        {
            // Arrange
            var path = @"C:\Users\leoc_\source\repos\GastosTracker.Web\GastosTracker.Web\App_Data\movimientos.json";
            MovimientosController controller = new MovimientosController(path);

            // Act
            var result = controller.Save(new Models.Movimiento()
            {
                cuenta = "1", fecha = "20180101", monto = 3500, tipo = "1"
            }) as IHttpActionResult;

            var service   = new MovimientosService(path);
            var movements = service.GetAll();

            // Assert
            Assert.IsTrue(movements.Count > 0);
        }
示例#9
0
        public async Task <Response> FunctionHandler(MovimientosRequest input, ILambdaContext context)
        {
            LogMessage(context, "Starting Execution");
            LogMessage(context, JsonConvert.SerializeObject(input));

            try
            {
                AmazonDynamoDBConfig clientConfig = new AmazonDynamoDBConfig();
                clientConfig.RegionEndpoint = RegionEndpoint.USEast1;
                AmazonDynamoDBClient client = new AmazonDynamoDBClient(clientConfig);

                var repo       = new Movimientosrepository(client);
                var mapper     = new Mapper();
                var _service   = new MovimientosService(repo, mapper);
                var totalItems = await _service.GetAllItems();

                var movimientoID = 1;

                if (totalItems.ToList().Count > 0)
                {
                    movimientoID       = totalItems.Max(m => m.MovimientoID) + 1;
                    input.MovimientoID = movimientoID;
                }



                await _service.AddMovimiento(input);

                var response = CreateResponse(error: false, $"Movimiento {movimientoID} creado correctamente");
                LogMessage(context, "Execution Completed");

                return(response);
            }
            catch (Exception e)
            {
                LogMessage(context, "Error: " + e.ToString());

                return(CreateResponse(error: true, message: e.Message));
            }
        }
示例#10
0
        public IHttpActionResult Save(Movimiento movimiento)
        {
            try
            {
                //string path = HttpContext.Current.Server.MapPath(@"~\App_Data\movimientos.json");
                MovimientosService svc = new MovimientosService(jsonPath);

                //var json = ConsultaJson();

                //List<Movimiento> movimientos = JsonConvert.DeserializeObject<List<Movimiento>>(json);
                List <Movimiento> movimientos = svc.GetAll();

                if (movimientos.Count > 0)
                {
                    movimiento.idMovimiento = movimientos.OrderByDescending(m => m.idMovimiento).First().idMovimiento + 1;
                }
                else
                {
                    movimiento.idMovimiento = 1;
                }

                movimientos.Add(movimiento);
                var newJson = JsonConvert.SerializeObject(movimientos);
                //string path = HttpContext.Current.Server.MapPath(@"~\App_Data\movimientos.json");
                using (var writer = new StreamWriter(@jsonPath))
                {
                    writer.Write(newJson);
                }

                return(Ok(new { response = "saved", id = movimiento.idMovimiento }));
            }
            catch (Exception e)
            {
                return(Ok(new { response = "Fail", message = e.Message, stack = e.StackTrace, id = -1 }));
            }
        }