예제 #1
0
        public async Task <Boolean> Create(Model.Refund refund, long userId)
        {
            Boolean result = false;

            try
            {
                if (refund != null)
                {
                    refund.ReferenceNumber = "#R" + refund.Order.ReferenceNumberId;
                    refund.CreatedOn       = refund.RefundedOn = refund.UpdatedOn = DateTime.Now;
                    refund.CreatedById     = userId;
                    if (refund.Status != null)
                    {
                        refund.StatusId = refund.Status.Id;
                    }
                    refund.Order = refund.RefundLineItems.FirstOrDefault().OrderLineItem.Order;
                    refund.Order.OrderLineItems = null;
                    foreach (var item in refund.RefundLineItems)
                    {
                        item.CreatedOn           = item.UpdatedOn = DateTime.Now;
                        item.OrderLineItem.Order = null;
                    }
                    _context.Refunds.Update(refund);
                    result = await _context.SaveChangesAsync() > 0;
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            return(result);
        }
예제 #2
0
        public async Task <IActionResult> Update([FromBody] Model.Refund refund)
        {
            try
            {
                var isUpdated = await _coreRefund.Update(refund);

                if (isUpdated)
                {
                    return(Ok(refund));
                }
                return(BadRequest());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
예제 #3
0
        public async Task <IActionResult> Create([FromBody] Model.Refund refund)
        {
            try
            {
                string storeId = User.Claims.First(c => c.Type == "userId").Value; // Get stored user id when user sign in or sign up
                if (!string.IsNullOrEmpty(storeId))
                {
                    var userId    = Convert.ToInt64(storeId);
                    var isCreated = await _coreRefund.Create(refund, userId);

                    if (isCreated)
                    {
                        return(Created("", refund));// return created status 200 when request is successfull;
                    }
                }

                return(BadRequest());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }