Ejemplo n.º 1
0
        private void PopulateModel(CafeTable model, IDictionary values)
        {
            string ID      = nameof(CafeTable.Id);
            string NAME    = nameof(CafeTable.Name);
            string NUMBER  = nameof(CafeTable.Number);
            string IS_BUSY = nameof(CafeTable.IsBusy);

            if (values.Contains(ID))
            {
                model.Id = Convert.ToInt32(values[ID]);
            }

            if (values.Contains(NAME))
            {
                model.Name = Convert.ToString(values[NAME]);
            }

            if (values.Contains(NUMBER))
            {
                model.Number = Convert.ToInt32(values[NUMBER]);
            }

            if (values.Contains(IS_BUSY))
            {
                model.IsBusy = Convert.ToBoolean(values[IS_BUSY]);
            }
        }
Ejemplo n.º 2
0
        public IEnumerable <CafeTable> GetAllTablesInCafe(int cafeId)
        {
            List <CafeTable> cafeTables = new List <CafeTable>();

            try
            {
                using (SqlConnection connection = new SqlConnection(_connectionString))
                {
                    connection.Open();
                    using (SqlCommand command = connection.CreateCommand())
                    {
                        command.CommandText = "SELECT * FROM CafeTable WHERE CafeID = @cafeID";
                        command.Parameters.AddWithValue("@cafeID", cafeId);

                        SqlDataReader reader = command.ExecuteReader();
                        while (reader.Read())
                        {
                            CafeTable table = new CafeTable
                            {
                                Id        = reader.GetInt32(reader.GetOrdinal("ID")),
                                TableNo   = reader.GetInt32(reader.GetOrdinal("TableNo")),
                                NoOfSeats = reader.GetInt32(reader.GetOrdinal("NoOfSeats"))
                            };
                            cafeTables.Add(table);
                        }
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(cafeTables);
        }
Ejemplo n.º 3
0
        public CafeTable GetTableByID(int ID)
        {
            CafeTable table = new CafeTable();

            try
            {
                using (SqlConnection connection = new SqlConnection(_connectionString))
                {
                    connection.Open();
                    using (SqlCommand command = connection.CreateCommand())
                    {
                        command.CommandText = "SELECT * FROM CafeTable WHERE CafeTable.ID = @id";
                        command.Parameters.AddWithValue("@id", ID);

                        SqlDataReader reader = command.ExecuteReader();
                        while (reader.Read())
                        {
                            table.Id        = reader.GetInt32(reader.GetOrdinal("ID"));
                            table.TableNo   = reader.GetInt32(reader.GetOrdinal("TableNo"));
                            table.NoOfSeats = reader.GetInt32(reader.GetOrdinal("NoOfSeats"));
                        }
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(table);
        }
Ejemplo n.º 4
0
 public int CreateTable(CafeTable table, int cafeId)
 {
     using (TransactionScope scope = new TransactionScope(TransactionScopeOption.RequiresNew, _options))
     {
         int insertedId;
         try
         {
             using (SqlConnection connection = new SqlConnection(_connectionString))
             {
                 connection.Open();
                 using (SqlCommand command = connection.CreateCommand())
                 {
                     command.CommandText = "INSERT INTO CafeTable (TableNo, NoOfSeats, CafeID) VALUES (@tableNo, @noOfSeats, @cafeID); SELECT SCOPE_IDENTITY();";
                     command.Parameters.AddWithValue("@tableNo", table.TableNo);
                     command.Parameters.AddWithValue("@noOfSeats", table.NoOfSeats);
                     command.Parameters.AddWithValue("@cafeID", cafeId);
                     insertedId = Convert.ToInt32(command.ExecuteScalar());
                 }
                 scope.Complete();
             }
         }
         catch (Exception)
         {
             throw;
         }
         return(insertedId);
     }
 }
Ejemplo n.º 5
0
 public void UpdateTable(CafeTable table)
 {
     using (TransactionScope scope = new TransactionScope(TransactionScopeOption.RequiresNew, _options))
     {
         try
         {
             using (SqlConnection connection = new SqlConnection(_connectionString))
             {
                 connection.Open();
                 using (SqlCommand command = connection.CreateCommand())
                 {
                     command.CommandText = "UPDATE CafeTable SET TableNo = @tableNo, NoOfSeats = @noOfSeats WHERE ID = @id;";
                     command.Parameters.AddWithValue("@id", table.Id);
                     command.Parameters.AddWithValue("@tableNo", table.TableNo);
                     command.Parameters.AddWithValue("@noOfSeats", table.NoOfSeats);
                     command.ExecuteNonQuery();
                 }
                 scope.Complete();
             }
         }
         catch (Exception)
         {
             throw;
         }
     }
 }
Ejemplo n.º 6
0
        public IActionResult Post(string values)
        {
            var model      = new CafeTable();
            var valuesDict = JsonConvert.DeserializeObject <IDictionary>(values);

            PopulateModel(model, valuesDict);

            if (!TryValidateModel(model))
            {
                return(BadRequest(ModelState.GetFullErrorMessage()));
            }

            _cafeTableBusiness.AddCafeTable(model);

            return(Json(model.Id));
        }
Ejemplo n.º 7
0
        public object Post(CafeTableRequest request)
        {
            DbCafeTable dbCafeTable = new DbCafeTable();

            var cafeTable = new CafeTable
            {
                TableNo   = request.TableNo.Value,
                NoOfSeats = request.NoOfSeats.Value
            };
            var cafeTableId = dbCafeTable.CreateTable(cafeTable, request.CafeId.Value);

            cafeTable.Id = cafeTableId;
            return(new CafeTableResponse {
                Result = new CafeTable[] { cafeTable }
            });
        }
Ejemplo n.º 8
0
        public object Put(CafeTableRequest request)
        {
            DbCafeTable dbCafeTable = new DbCafeTable();

            if (request.Id.HasValue)
            {
                var cafeTable = new CafeTable
                {
                    Id        = request.Id.Value,
                    TableNo   = request.TableNo.Value,
                    NoOfSeats = request.NoOfSeats.Value
                };
                dbCafeTable.UpdateTable(cafeTable);
                var updatedCafeTable = dbCafeTable.GetTableByID(cafeTable.Id);
                return(new CafeTableResponse {
                    Result = new CafeTable[] { updatedCafeTable }
                });
            }
            else
            {
                throw new Exception("Please input a vaild ID for the Table!");
            }
        }
Ejemplo n.º 9
0
        public void CafeTableIntergrationTest()
        {
            JsonServiceClient client = new JsonServiceClient(ConfigurationManager.AppSettings["Host"]);
            var CafeTable            = new CafeTable();
            var CafeTableObj         = new CafeTable();

            //Creates test CafeTable with CafeID(4)
            var ctRes = client.Post(new CafeTableRequest
            {
                TableNo   = 10,
                NoOfSeats = 4,
                CafeId    = 4
            });

            foreach (var item in ctRes.Result)
            {
                CafeTable = item;
            }

            Assert.IsNotNull(CafeTable.Id);

            //Gets the CafeTable by Id
            var ctResId = client.Get(new CafeTableRequest
            {
                Id = CafeTable.Id
            });

            foreach (var item in ctResId.Result)
            {
                CafeTableObj = item;
            }

            Assert.AreEqual(CafeTableObj.Id, CafeTable.Id);

            //Gets all CafeTable in the Cafe(4)
            var ctResByCId = client.Get(new GetAllTablesInCafeRequest
            {
                CafeId = 4
            });

            Assert.IsNotNull(ctResByCId.Result);

            //Updates CafeTable by Id with different TableNo
            var ctResUp = client.Put(new CafeTableRequest
            {
                Id        = CafeTable.Id,
                TableNo   = 11,
                NoOfSeats = 10
            });

            foreach (var item in ctResUp.Result)
            {
                CafeTableObj = item;
            }

            Assert.AreNotSame(CafeTableObj, CafeTable);

            //Deletes the test CafeTable after the test
            client.Delete(new DeleteTableRequest
            {
                Id = CafeTable.Id
            });
        }
Ejemplo n.º 10
0
 public void UpdateCafeTable(CafeTable CafeTable)
 {
     _uow.CafeTable.Update(CafeTable);
     _uow.SaveChanges();
 }
Ejemplo n.º 11
0
 public void AddCafeTable(CafeTable CafeTable)
 {
     _uow.CafeTable.Insert(CafeTable);
     _uow.SaveChanges();
 }