public GenericCreatedResponseDto CreateComanda(CreateComandaRequestDto comandaDto) { List <ResponseGetMercaderiaById> listaMercaderias = new List <ResponseGetMercaderiaById>(); foreach (var item in comandaDto.Mercaderias) { ResponseGetMercaderiaById mercaderia = _mercaderiaService.GetById(item.ToString()); listaMercaderias.Add(mercaderia); } int total = Calcularpreciototal(listaMercaderias); var entity = new Comanda { ComandaId = new Guid(), FormaEntregaId = comandaDto.FormaEntrega, PrecioTotal = total, Fecha = new DateTime() }; _repository.Add(entity); foreach (ResponseGetMercaderiaById item in listaMercaderias) { RegistrarComandaMercaderia(item.MercaderiaId, entity.ComandaId); } return(new GenericCreatedResponseDto { Entity = "Comanda", Id = entity.ComandaId.ToString() }); }
public IActionResult GetMercaderiaById(string Id) { try { return(new JsonResult(_service.GetById(Id)) { StatusCode = 200 }); } catch (Exception e) { return(new JsonResult(BadRequest(e.Message)) { StatusCode = 400 }); } }
public ResponseGetComandaById GetById(string comandaId) { var db = new QueryFactory(connection, sqlKataCompiler); var comanda = db.Query("Comandas") .Select("ComandaId", "PrecioTotal", "Fecha", "FormaEntregaId") .Where("ComandaId", "=", comandaId) .FirstOrDefault <ComandaDto>(); if (comanda != null) { var entrega = db.Query("FormaEntrega") .Select("FormaEntregaId", "Descripcion") .Where("FormaEntregaId", "=", comanda.FormaEntregaId) .FirstOrDefault <ResponseGetComandaByIdFormaEntrega>(); var idsMercaderia = db.Query("ComandaMercaderias") .Select("MercaderiaId", "ComandaId") .Where("ComandaId", "=", comandaId) .Get <int>().ToList(); List <ResponseGetMercaderiaById> listaMercaderias = new List <ResponseGetMercaderiaById>(); foreach (var item in idsMercaderia) { ResponseGetMercaderiaById mercaderia = _mercaderiaservice.GetById(item.ToString()); listaMercaderias.Add(mercaderia); } return(new ResponseGetComandaById { ComandaId = comanda.ComandaId, PrecioTotal = comanda.PrecioTotal, Fecha = comanda.Fecha, FormaEntrega = entrega.Descripcion, Mercaderia = listaMercaderias }); } else { return(null); } }