{"id":21239662,"url":"https://github.com/firatlogoglu/mvc_bilgehotel","last_synced_at":"2025-03-15T03:41:43.837Z","repository":{"id":190317706,"uuid":"233382668","full_name":"firatlogoglu/MVC_BilgeHotel","owner":"firatlogoglu","description":null,"archived":false,"fork":false,"pushed_at":"2023-08-24T02:19:23.000Z","size":1198,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-21T19:26:55.329Z","etag":null,"topics":["asp-net","asp-net-mvc","asp-net-web-api","hotel","hotel-booking","hotel-management-system","html-css-javascript","turkish"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/firatlogoglu.png","metadata":{"files":{"readme":"ReadME.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-01-12T11:37:15.000Z","updated_at":"2024-07-31T16:01:41.000Z","dependencies_parsed_at":"2023-08-24T04:52:41.018Z","dependency_job_id":null,"html_url":"https://github.com/firatlogoglu/MVC_BilgeHotel","commit_stats":null,"previous_names":["firatlogoglu/mvc_bilgehotel"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firatlogoglu%2FMVC_BilgeHotel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firatlogoglu%2FMVC_BilgeHotel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firatlogoglu%2FMVC_BilgeHotel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firatlogoglu%2FMVC_BilgeHotel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/firatlogoglu","download_url":"https://codeload.github.com/firatlogoglu/MVC_BilgeHotel/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243680981,"owners_count":20330155,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asp-net","asp-net-mvc","asp-net-web-api","hotel","hotel-booking","hotel-management-system","html-css-javascript","turkish"],"created_at":"2024-11-21T00:44:43.933Z","updated_at":"2025-03-15T03:41:43.815Z","avatar_url":"https://github.com/firatlogoglu.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿# Bilge Hotel MVC Projesi\n\n## Oluşturulan Katmanlar\n\n### 1 - MVC_BilgeHotel.CORE\n#### 1.1 - Entity\n* IEntity: Tüm entitylerimizde yer alan ID'yi T tipine verdim, böylece dışardan herhangi bir tip alabilecek.\n* CoreEntity: Tüm etitylerimizde yer alacak özellikler (Genel Durum vs.) tanımladım. Burda ID'yi Guid tipini verdim. Bu class ilk tetiklendiğinde otomatik olarak: Genel Durum(GenerelStatus) = Aktif. Oluşturma tarihi, Uuşturan kişinin çeşitli bilgileri burada otomatik olarak ctor metotuyla doldurulacak. \n* PersonEntity: Model katmanında yer alan Çalışan ve Müşterilerde bulunan ortak özellikler bulunur.\n#### 1.2 - Enums\n* GeneralStatus(Genel Durumlar): Aktif, Update ve Deleted. Enum listesi olarak tanımlanıp 1.1 Entity içerisindeki CoreEntity içerisine verilmiştir.\n* Gender(Cinsiyet): Male(Erkek) ve Female(Kadın). Bu Enum listesi 1.1 Entity içerisindeki PersonEntitye verilmiştir.\n#### 1.3 - Map\n* CoreMap: CoreEntity içerisindeki özelliklere çeşitli isimledirmeler ve sınırlandırılmalar verilmiştir.\n### 2 - MVC_BilgeHotel.MODEL\n#### 2.1 - Entities\n* 2.1.1 Booking\n* 2.1.2 CustomerBooking\n* 2.1.3 Customer\n* 2.1.4 Employee\n* 2.1.5 Room\n* 2.1.6.1 VMs\n* 2.1.6.1.1 RoomBookingVM\n* 2.1.6.1.2 CustomerBookingsVM\n#### 2.2 - Enums\n* Roles\n* RoomStatus\n* RoomTypes\n#### 2.3 - Map\n* RoomMap:\n* CustomerMap:\n* EmployeeMap:\n* BookingMap:\n* CustomerBookingMap\n#### 2.4 - Context\n* ProjectContext: Context nesnemizdir.\n* SampleData: Örnek verilerimizin bulunduğu classtır.\n#### 2.5 - Migrations\n* Configuration içerisine 2.4 Context içerisinde yer alan SampleData instance alınarak Seed metotun içerisine verilmiştir.\n### 3 - MVC_BilgeHotel.SERVICE/BLL (İş Katmanı) \n#### 3.1 - Base\n* BaseSerice: Tüm Etitylerde bulunan belli başlı CRUD ve Listeleme işlemleri tanımlanmıştır.\n#### 3.2 - Options\n* RoomService:\n* EmployeeService:\n* CustomerService:\n* CustomerBookingService\n* BookingService:\n### 4 - MVC_BilgeHotel.WEBUI (Sunum Katmanı)\n#### 4.1 - Giriş Sayfası - Controllers/Home\n* Areasız(bölgesiz) olarak tanımlanmıştır. Home Controllerin içerisinde Index, About, Contact ve ManagerIndex isimli ActionResultlar bulunuyor. ManagerIndex Hotel personline ait olan Arealarda bulunun Login sayfalarına yönlerimesini yapar.\n* Views içerisinde bulunan Home Controller'ına ait olan Viewler bulununur.\n* Views içerisinde bulunan Shared klasörü içersinde bulunan: _Layout, Giriş sayfasının Layout'tıdır.\n* Views içerisinde bulunan Shared klasörü içersinde bulunan: PartialViews klasörü içerisinde yer alan: _Footer ve _TopNavbar parçalı viewleri tüm arealarda ve areasız kısımda görülecek Footer ve Üst menüyü bu kısımda yer alır.\n\n#### 4.2 - Areas (Alanlar)\n* BookingC: \n* BooingManagement:\n* HotelBooingManagement:\n\n#### 4.3 - Filters\n* AuthorizationFilters: Personel ve Müşterilere ait sayfaların giriş yapılmamaksızın girilmesini engellemek için fiterlar uygulanmıştır.\n\n### 5 - MVC_BilgeHotel.COMMON\n#### Tools/Araçlar\n* ImagesUploader/Resim Yükleyicisi\n* MailSender/E-Posta Göndericisi\n\n### 6 - MVC_BilgeHotel.STATICMASSAGES\n#### Error Messages\n#### Information Messages\n#### Successful Messages\n\n### 7 - MVC_BilgeHotel.API (Sunum Katmanı)\n#### Controllers\n* HomeController: FullRoomsCustomers, O günkü odalarda kalan müşterileri XML formatında getirir.\n\n## Çalıştırılmadan Önce Yapılacak Ayarlar\n* 1.) MVC_BilgeHotel.WEBUI ve MVC_BilgeHotel.API ilk etapta başlangıç projeleri olarak ayarlanması gerekiyor: Çözüm Gezgini'de (Solution Explorer'da) \u003cb\u003e“Solution 'MVC_BilgeHotel'/Çözüm 'MVC_BilgeHotel' ”\u003c/b\u003e e Sağ tıklayıp. \u003cb\u003e“Set StartUp Projects.../Başlangıç Projelarini Olarak Ayarla...”\u003c/b\u003e ya tıklayın. \u003cb\u003e“Birden fazla başlangıç projesi:/Multiple startup projects”\u003c/b\u003e seçin. Ardından \u003cb\u003eMVC_BilgeHotel.WEBUI\u003c/b\u003e ve \u003cb\u003eMVC_BilgeHotel.API\u003c/b\u003e projelerin \u003cb\u003eAction/Eylem\u003c/b\u003e kısmına \u003cb\u003eStart/Başla\u003c/b\u003e yapıp \u003cb\u003e“OK/Tamam”\u003c/b\u003e a tıklayın.\n\n* 2.) SQL Database Server'ın yolu varsayılan olarak ayarlıdır (\"server=.;database=MVCBilgeHotelDB;uid=sa;pwd=123\"). Bu yolu, MVC_BilgeHotel.MODEL/Context/ProjectContext.cs dosyası içerisinde değiştirebilirsiniz.\n\n* 3.) NuGet Paket Konsol Yöneticisini kullanarak veritabanını basılması gerekiyor.  \n\n* 4.) Bu programın e-posta gönderebilmesi (gönderici) için, MVC_BilgeHotel.COMMON/Tools/MailSender.cs dosyasının ayarlanması gerekiyor.\n\n* 5.) SampleData içerisindeki veriler kullanıcaksa, sahte (fake) e-posta adreslerine, e-posta gönderecektir. Bu e-posta adresleri gerçek kişi/kurumlara ait olabilir. Bunu engellemek için, MVC_BilgeHotel.COMMON/Tools/MailSender.cs dosyası içerisindeki //email = \"\"; yorum satırından çıkarılıp, içerisine alcı e-posta adresi olarak kendi e-posta adresinizi eklemek zorundasınız.\n\n* 6.) Proje, ilk kez çalıştırılmasında \u003cb\u003e\"...\\MVC_BilgeHotel\\MVC_BilgeHotel.WEBUI\\bin\\roslyn\\csc.exe' yolunun bir parçası bulunamadı.\"\u003c/b\u003e hata verirse, \u003cb\u003e \"bin\" klasörünü silin.\u003c/b\u003e\n\n## Projedeki Eksik Yerler\n* 1.) Kampanya ve paket işlemleri ve sayfaları tamamlanacak.\n\n* 2.) Bilet(Ticket), Ödeme PDF/Yazdırma işlemleri ve sayfaları tamamlanacak.\n\n* 3.) SpecialDays (Özel Günler) için, resim veya fotoğraf bulunacak.\n\n* 4.) MVC_BilgeHotel.API tarafında güvenlik için Token tanımlaması yapılacak. ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffiratlogoglu%2Fmvc_bilgehotel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffiratlogoglu%2Fmvc_bilgehotel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffiratlogoglu%2Fmvc_bilgehotel/lists"}