public void Create(BookingVM book) { // tambah tabel kontak Kontak kontak = new Kontak(); kontak.Kontak1 = book.Kontak1; kontak.TipeKontakID = book.TipeKontakID; kontak.TamuID = book.TamuID; db.Kontak.Add(kontak); db.SaveChanges(); // tambah ke tabel alamat Alamat alamat = new Alamat(); alamat.Alamat1 = book.Alamat1; alamat.KabupatenKotaID = 1; alamat.KecamatanID = 1; alamat.KelurahanID = 1; alamat.RT = 0; alamat.RW = 0; ; alamat.KodePos = 0 ; alamat.TamuID = book.TamuID; db.Alamat.Add(alamat); db.SaveChanges(); // tambah ke transaksi tamu TransaksiTamu transaksitamu = new TransaksiTamu(); transaksitamu.PegawaiID = 1; transaksitamu.TamuID = book.TamuID; transaksitamu.TMT = DateTime.Today; transaksitamu.TST = ""; transaksitamu.IsBayar = false; transaksitamu.IsRegistrasiUlang = false; db.TransaksiTamu.Add(transaksitamu); db.SaveChanges(); // tambah ke transaksi kamar string[] kamarid = book.KamarID.Split(','); string[] checkin = book.CheckIn.Split(','); string[] checkout = book.CheckIn.Split(','); for (int i = 0; i < kamarid.Length; i++) { TransaksiKamar transaksikamar = new TransaksiKamar(); transaksikamar.CheckIn = DateTime.Parse(checkin[i]);//DateTime.ParseExact(checkin[i], "yyyy-mm-dd", System.Globalization.CultureInfo.InvariantCulture); transaksikamar.CheckOut = DateTime.Parse(checkin[i]);//DateTime.ParseExact(checkout[i],"yyyy-mm-dd",System.Globalization.CultureInfo.InvariantCulture); //transaksikamar.KamarID = db.Kamar.Where(x => x.TipeKamarID.Equals(kamarid[i]) && x.Status.Equals(true)).Select(x => x.ID).SingleOrDefault(); transaksikamar.KamarID = cekKamarKosong(Int32.Parse(kamarid[i])); transaksikamar.TransaksiTamuID = db.TransaksiTamu.Max(x => x.ID); db.TransaksiKamar.Add(transaksikamar); db.SaveChanges(); // update status kamar Kamar kamar = db.Kamar.Find(transaksikamar.KamarID); kamar.Status = false; db.Entry(kamar).State = EntityState.Modified; db.SaveChanges(); } }
public ActionResult Index([Bind(Include = "ID,Nama,NomorIdentitas,TipeIdentitasID,JenisKelaminID")] Tamu tamu) { if (ModelState.IsValid) { BookingBM data = new BookingBM(); db.Tamu.Add(tamu); db.SaveChanges(); BookingVM viewbooking = new BookingVM(); // untuk tabel kontak viewbooking.Kontak1 = Int32.Parse(Request["phone"].ToString()); viewbooking.TamuID = db.Tamu.Max(x=>x.ID); viewbooking.TipeKontakID = 2; // untuk tabel alamat viewbooking.Alamat1 = Request["alamat"].ToString(); viewbooking.KabupatenKotaID = 0; viewbooking.KecamatanID = 0; // untuk tabel transaksi tamu langsung di BM // untuk tabel transaksi kamar viewbooking.KamarID = Request["TipeKamar"].ToString(); viewbooking.CheckIn = Request["checkin"].ToString(); viewbooking.CheckOut = Request["checkout"].ToString(); data.Create(viewbooking); TempData["status"] = "false"; TempData["pesan"] = "Data Pemesanan Anda sudah terdaftar. Rincian konfirmasi sudah dikirim melalui nomor Handphone"; ViewBag.Message = ""; return RedirectToAction("Selesai"); } TempData["status"] = "true"; TempData["pesan"] = "Silahkan isi data dengan benar"; ViewBag.TipeIdentitasID = new SelectList(db.TipeIdentitas, "ID", "Nama"); ViewBag.JenisKelaminID = new SelectList(db.JenisKelamin, "ID", "Nama"); //ViewBag.Kecamatan = new SelectList(db.Kecamatan, "ID", "Nama"); //ViewBag.KabupatenKota = new SelectList(db.KabupatenKota, "ID", "Nama"); ViewBag.TipeKamar = new SelectList(db.TipeKamar, "ID", "Nama"); return View(tamu); }