Esempio n. 1
0
        public async Task <ActionResult> Update(long id, [FromBody] SaveItemRequest entity)
        {
            try
            {
                var item = await context.Items
                           .AsNoTracking()
                           .SingleOrDefaultAsync(t => t.Id == id);

                if (item == null)
                {
                    return(NotFound(id));
                }

                item = mapper.Map <Item>(entity);
                context.Update(item);
                await context.SaveChangesAsync();

                return(StatusCode(StatusCodes.Status204NoContent));
            }
            catch (DbUpdateConcurrencyException concurrencyEx)
            {
                logger.LogError(concurrencyEx.Message);
                return(StatusCode(StatusCodes.Status409Conflict, Constants.ErrorMessages.ConcurrencyErrorMessage));
            }
            catch (Exception ex)
            {
                logger.LogError(ex.Message);
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }
Esempio n. 2
0
        public async Task <ActionResult> Create([FromBody] SaveItemRequest entity)
        {
            try
            {
                var item = mapper.Map <Item>(entity);

                context.ItemHistories.Add(new ItemHistory
                {
                    Item     = item,
                    Date     = DateTime.Now,
                    Quantity = entity.Quantity,
                    Remarks  = Constants.AdjustmentRemarks.InitialQuantity
                });

                await context.Items.AddAsync(item);

                await context.SaveChangesAsync();

                return(CreatedAtRoute(nameof(GetItemById), new { id = item.Id }, entity));
            }
            catch (Exception e)
            {
                logger.LogError(e.Message);
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }
Esempio n. 3
0
 public Document ToSaveItemDocumentModel(SaveItemRequest request)
 {
     return(new Document
     {
         ["id"] = request.Id,
         ["key"] = request.Key,
         ["name"] = request.Name
     });
 }
Esempio n. 4
0
        /// <summary>
        /// Llama al Data Core para el retorno del item que se esta creando, arma la entidad (json) con la informacion que va a retornar
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public static SaveItemResponse saveItem(SaveItemRequest request)
        {
            SaveItemResponse response = new SaveItemResponse();

            response.item = ItemDC.saveItem(request);

            response.code    = 100;
            response.message = "OK";

            return(response);
        }
Esempio n. 5
0
        public async Task <SaveItemRequest> SaveItem(SaveItemRequest request)
        {
            if (_loadTableSuccess)
            {
                var newItem = _map.ToSaveItemDocumentModel(request);
                await _table.PutItemAsync(newItem);

                return(request);
            }
            return(null);
        }
Esempio n. 6
0
        /// <summary>
        /// Conecta a la bd y ejecuta el sp de para la insrcion del item
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public static List <ItemMC> saveItem(SaveItemRequest request)
        {
            try
            {
                var           dataservice = new DataModelService();
                List <ItemMC> item        = dataservice.GetListByParameter <ItemMC, SaveItemRequest>("[dbo].[saveItem]", request);

                return(item);
            }
            catch (Exception ex)
            {
                List <ItemMC> items = new List <ItemMC>();
                ItemMC        item  = new ItemMC();

                items.Add(item);

                return(items);
            }
        }
Esempio n. 7
0
 public ActionResult <SaveItemResponse> saveItem(SaveItemRequest request)
 {
     return(ItemBC.saveItem(request));
 }