public GenericApiResponse SaveRetail([FromBody] RetailTicket ticketInfo, [FromBody] RetailTicketItem[] ticketItems) { var response = new GenericApiResponse(); var ticket = _context.Tickets.FirstOrDefault(x => x.Id == ticketInfo.Id); if (ticket == null) { response.Success = false; response.Error = (int)ErrorCodes.RetailScreenNotFoundTicket; response.Message = ErrorMessages.RetailScreenNotFoundTicket; return(response); } ticket.Paid = ticketInfo.Paid; ticket.PaidAmount = ticketInfo.PaidAmount; ticket.ClosingDate = Convert.ToDateTime(ticketInfo.ClosingDate); ticket.CreationDate = Convert.ToDateTime(ticketInfo.CreationDate); ticket.DueAmount = ticketInfo.DueAmount; ticket.SubTotal = ticketInfo.SubTotal; ticket.Settled = ticketInfo.Settled; ticket.Status = ticketInfo.Status; ticket.TableId = ticketInfo.TableId; ticket.TotalDiscount = ticketInfo.TotalDiscount; ticket.TotalPrice = ticketInfo.TotalPrice; ticket.TotalTax = ticketInfo.TotalTax; ticket.Voided = ticketInfo.Voided; ticket.VoidByUser = ticketInfo.VoidedByUser; ticket.VoidReason = ticketInfo.VoidedReason; var currentTicketItems = _context.TicketItems.Where(x => x.TicketId == ticket.Id); foreach (var ticketItem in ticketItems) { var currentTicketItem = currentTicketItems.FirstOrDefault(x => x.Id == ticketItem.Id); if (currentTicketItem == null) { var item = new TicketItem(); SyncTicketItem(item, ticketItem); _context.TicketItems.Add(item); continue; } SyncTicketItem(currentTicketItem, ticketItem); } _context.SaveChanges(); response.Success = true; return(response); }
public GenericApiResponseWithResult <ItemGroup> SaveGroup([FromBody] ItemGroup group) { var result = new GenericApiResponseWithResult <ItemGroup>(); result.Success = true; try { var itemExists = _context.ItemGroups.Count(x => x.Id == group.Id) > 0; if (!itemExists) { group.CreationUserId = "oobeso"; group.CreationDate = DateTime.Now; group.IsDeleted = false; _context.Add(group); } else { var gr = _context.ItemGroups.FirstOrDefault(x => x.Id == group.Id); group.UpdateDate = DateTime.Now; group.UpdateUserId = "oobeso"; Sync(gr, group); } _context.SaveChanges(); } catch (Exception ex) { result.Success = false; result.Error = (int)ErrorCodes.InternalServerError; result.Message = ex.Message; } if (result.Success) { result.Result = group; } return(result); }
public GenericApiResponseWithResult <ItemCategory> SaveCategory([FromBody] ItemCategory category) { var result = new GenericApiResponseWithResult <ItemCategory>(); result.Success = true; try { var itemExists = _context.ItemCategories.Count(x => x.Id == category.Id) > 0; if (!itemExists) { category.CreationUserId = "oobeso"; category.CreationDate = DateTime.Now; category.IsDeleted = false; _context.Add(category); } else { var cat = _context.ItemCategories.FirstOrDefault(x => x.Id == category.Id); category.UpdateDate = DateTime.Now; category.UpdateUserId = "oobeso"; Sync(cat, category); } _context.SaveChanges(); }catch (Exception ex) { result.Success = false; result.Error = (int)ErrorCodes.InternalServerError; result.Message = ex.Message; } if (result.Success) { result.Result = category; } return(result); }