Ejemplo n.º 1
0
        public ActionResult StoreHouse(CreateHouseViewModel ch)
        {
            if (Session["user_id"] != null)
            {
                var user_id    = (int)Session["user_id"];
                var singleUser = _Context.Users.SingleOrDefault(u => u.Id == user_id);
                if (!ModelState.IsValid)
                {
                    var newHouse = new CreateHouseViewModel()
                    {
                        Divisions = _Context.Divisions.ToList(),
                        UserId    = singleUser.UserId
                    };

                    return(View("CreateHouse", newHouse));
                }

                var nHouse = new House()
                {
                    Address = ch.Address,
                    UserId  = user_id,
                    ThanaId = ch.ThanaId
                };
                _Context.Houses.Add(nHouse);
                _Context.SaveChanges();

                return(RedirectToAction("Index", "Users"));
            }
            return(RedirectToAction("LogInUser", "Users"));
        }
        public IActionResult Create(CreateHouseViewModel vm)
        {
            // Sécurité : permet de s'assurer de la bonne saisie du formulaire par l'utilisateur
            if (ModelState.IsValid)
            {
                // Recherche d'une maison qui porte le même nom
                var existingHouse = dbContext
                                    .Set <House>()                 // Equivalent SELECT * FROM House
                                    .Where(x => x.Name == vm.Name) // Clause Where (équivalent where SQL)
                                    .SingleOrDefault();            // 1 seul enregistrement ou null

                if (existingHouse == null)
                {
                    // Insertion de la maison en BDD
                    var newHouse = new House {
                        Name = vm.Name
                    };
                    dbContext.Add(newHouse); // Ajout de l'entité au contexte de données, il prends un Id temporaire
                    dbContext.SaveChanges(); // Application des changements en BDD (insert réel)

                    ViewBag.Success = $"La maison {vm.Name} a été créée avec succès";
                }
                else
                {
                    // On indique à l'utilisateur que la maison existe déjà, ViewBag == ViewData
                    ViewBag.Error = $"Une maison existe déjà pour le nom {vm.Name}";
                }
            }

            return(View(vm));
        }
Ejemplo n.º 3
0
 public ActionResult CreateHouse()
 {
     if (Session["user_id"] != null)
     {
         var user_id    = (int)Session["user_id"];
         var singleUser = _Context.Users.SingleOrDefault(u => u.Id == user_id);
         var newHouse   = new CreateHouseViewModel()
         {
             Divisions = _Context.Divisions.ToList(),
             UserId    = singleUser.UserId
         };
         return(View(newHouse));
     }
     return(RedirectToAction("LogInUser", "Users"));
 }
Ejemplo n.º 4
0
        public IActionResult Create(CreateHouseViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var house = _houseService.GetByCounterNumber(model.CounterNumber);

            if (house == null)
            {
                var newHouse = new House
                {
                    IdentificationNumber = model.IdentificationNumber,
                    Name          = model.Name,
                    Surname       = model.Surname,
                    Address       = model.Address,
                    CounterNumber = model.CounterNumber,
                    ChiefId       = User.Identity.GetId(),
                    CreatedDate   = DateTime.Now
                };

                _houseService.Create(newHouse);

                _actionService.Create(new Core.Domain.Action
                {
                    Endeks      = 0,
                    Price       = 0,
                    Description = string.Empty,
                    Type        = Core.Domain.Type.Read,
                    CreatedDate = DateTime.Now,
                    HouseId     = newHouse.Id
                });

                return(View("Success"));
            }

            ModelState.AddModelError(string.Empty, "Bu sayaç numarasına ait bir hane zaten mevcut");

            return(View(model));
        }
        public async Task <IActionResult> Create(CreateHouseViewModel VM)
        {
            if (ModelState.IsValid)
            {
                var HouseTransaction = _context.Database.BeginTransaction();
                try
                {
                    House InsertData = new House()
                    {
                        HouseCode_Id       = VM.HouseCode_Id,
                        House_Metrazh      = VM.House_Metrazh,
                        House_Tabagheh     = VM.House_Tabagheh,
                        House_TypeDarb     = VM.House_TypeDarb,
                        House_StatusEjareh = VM.House_StatusEjareh,
                        House_NumKahb      = VM.House_NumKahb,
                        House_NumTabagheh  = VM.House_NumTabagheh,
                        House_Parking      = VM.House_Parking,
                        House_VoroodyType  = VM.House_VoroodyType,
                        House_DatePublish  = DateTime.Now,
                        House_AB           = VM.House_AB,
                        House_Gaz          = VM.House_Gaz,
                        House_Bargh        = VM.House_Bargh,
                        House_OtherEmkanat = VM.House_OtherEmkanat,
                        House_PriceRahn    = VM.House_PriceRahn,
                        House_PriceEjareh  = VM.House_PriceEjareh,
                        House_Address      = VM.House_Address,
                        House_StatusManzel = VM.House_StatusHouse,
                        House_Family       = VM.House_Family,
                        House_Mobile       = VM.House_Mobile,
                        House_Comment      = VM.House_Comment,
                    };

                    /******************************************/
                    // درج اطلاعات مربوط به منزل
                    await _context.Houses.AddAsync(InsertData);

                    await _context.SaveChangesAsync();

                    HouseTransaction.Commit();

                    return(RedirectToAction("Read"));
                }
                catch (Exception)
                {
                    return(RedirectToAction("Read", new { AddNewDataMessageHouse = "Faild New House Data" }));
                }
            }
            else
            {
                // دریافت کلیه لیست های مربوط به منزل
                ViewBag.House_LST_Darbs     = new SelectList(_context.House_LST_Darbs, "House_LST_DarbName", "House_LST_DarbName");
                ViewBag.House_LST_Ejarehs   = new SelectList(_context.House_LST_Ejarehs, "House_LST_EjarehName", "House_LST_EjarehName");
                ViewBag.House_LST_NumKhabs  = new SelectList(_context.House_LST_NumKhabs, "House_LST_NumKhabName", "House_LST_NumKhabName");
                ViewBag.House_LST_Tabaghehs = new SelectList(_context.House_LST_Tabaghehs, "House_LST_TabaghehName", "House_LST_TabaghehName");
                ViewBag.House_LST_Parkings  = new SelectList(_context.House_LST_Parkings, "House_LST_ParkingName", "House_LST_ParkingName");
                ViewBag.House_LST_Voroodies = new SelectList(_context.House_LST_Voroodies, "House_LST_VoroodyName", "House_LST_VoroodyName");
                ViewBag.House_LST_Abs       = new SelectList(_context.House_LST_Abs, "House_LST_AbName", "House_LST_AbName");
                ViewBag.House_LST_Gazs      = new SelectList(_context.House_LST_Gazs, "House_LST_GazName", "House_LST_GazName");
                ViewBag.House_LST_Barghs    = new SelectList(_context.House_LST_Barghs, "House_LST_BarghName", "House_LST_BarghName");
                ViewBag.House_LST_Statuses  = new SelectList(_context.House_LST_Statuses, "House_LST_StatusName", "House_LST_StatusName");

                return(View(VM));
            }
        }