Esempio n. 1
0
        public async Task <IActionResult> Create([Bind("ID,FirstName,LastName,ScaffoldTicket,DriversLicence")] LeadingHand leadingHand)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    leadingHand.FirstName = string.IsNullOrEmpty(leadingHand.FirstName) ? leadingHand.LastName : leadingHand.FirstName;
                    leadingHand.LastName  = string.IsNullOrEmpty(leadingHand.LastName) ? leadingHand.FirstName : leadingHand.LastName;

                    _context.Add(leadingHand);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException /*Ex*/)
            {
                //if (Ex.Number == 2627)
                //{
                string sErrorMsg = "Leading hand's Code havs been allocated, please choose another one.";
                ModelState.AddModelError("", sErrorMsg);
                //}
            }
            return(View(leadingHand));
        }
Esempio n. 2
0
 public async Task <IActionResult> Delete(LeadingHand leadingHand)
 {
     try{
         if (await _context.LeadingHands.AnyAsync(m => m.ID == leadingHand.ID))
         {
             _context.LeadingHands.Remove(leadingHand);
             await _context.SaveChangesAsync();
         }
         return(RedirectToAction(nameof(Index)));
     }
     catch (DbUpdateConcurrencyException /* ex */)
     {
         //Log the error (uncomment ex variable name and write a log.)
         return(RedirectToAction(nameof(Delete), new { id = leadingHand.ID, concurrencyError = true }));
     }
 }
        public static void Initialize(TowerScaffoldingContext context)
        {
            context.Database.EnsureCreated();

            //Look for any customers.
            if (context.Customers.Any())
            {
                return;
            }                                        //DB has been created.

            var customers = new Customer[]
            {
                new Customer {
                    CustomerName = "ANZ", Email = "*****@*****.**"
                },
            };

            foreach (Customer c in customers)
            {
                context.Customers.Add(c);
            }
            context.SaveChanges();

            //var projects = new Project[]
            //{

            //};
            //foreach (Project p in projects)
            //{
            //    context.Projects.Add(p);
            //}
            //context.SaveChanges();

            var leadingHands = new LeadingHand[]
            {
                new LeadingHand {
                    ID = 1, FirstName = "Tongmei", LastName = "Lee", ScaffoldTicket = "05555", DriversLicence = "A029383",
                }
            };

            foreach (LeadingHand l in leadingHands)
            {
                context.LeadingHands.Add(l);
            }
            context.SaveChanges();

            var tasks = new Models.Task[]
            {
                new Models.Task {
                    Date = DateTime.Parse("2018-06-17"), SiteID = 1, WorkDescription = "blablabla...", Progress = "18%", LeadingHandID = 1, Staff = "Thomas, Jim", NumberOfStaff = 2, U = 1, S = 2, H = 3, Start = new TimeSpan(09, 08, 10), Finish = new TimeSpan(18, 5, 60), Vehicle = "AAA555", Returned = Returned.OnTime, Quality = Quality.Good, TaskStatus = 0,
                },
            };

            foreach (Models.Task t in tasks)
            {
                context.Tasks.Add(t);
            }
            context.SaveChanges();

            //var dayWorks = new DayWork[]
            //{
            //    new DayWork {DayWorkID = 101, Date = DateTime.Parse("2018-06-17"), TaskID = 101, Description = "The description of day work here", Type = "The type of day work here", Truck = "The truck of day work here", Scaffolder = "The Scaffolder of day work here", NumOfWorkers = 11, Uom = "The Uom of day work here", Qty = 13, },
            //};
            //foreach(DayWork dw in dayWorks)
            //{
            //    context.DayWorks.Add(dw);
            //}
            //context.SaveChanges();
        }
Esempio n. 4
0
        public async Task <IActionResult> Edit(int?id, byte[] rowVersion)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var leadingHandToUpdate = await _context.LeadingHands.SingleOrDefaultAsync(m => m.ID == id);

            if (leadingHandToUpdate == null)
            {
                LeadingHand deletedLeadingHand = new LeadingHand();
                await TryUpdateModelAsync(deletedLeadingHand);

                ModelState.AddModelError(string.Empty, "Unable to save changes.The customer was deleted by another user.");
                return(View(deletedLeadingHand));
            }

            _context.Entry(leadingHandToUpdate).Property("RowVersion").OriginalValue = rowVersion;

            if (await TryUpdateModelAsync <LeadingHand>(
                    leadingHandToUpdate, "", lh => lh.FirstName, lh => lh.LastName, lh => lh.ScaffoldTicket, lh => lh.DriversLicence))
            {
                try
                {
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
                catch (DbUpdateConcurrencyException ex)
                {
                    var exceptionEntry = ex.Entries.Single();
                    var clientValues   = (LeadingHand)exceptionEntry.Entity;
                    var databaseEntry  = exceptionEntry.GetDatabaseValues();
                    if (databaseEntry == null)
                    {
                        ModelState.AddModelError(string.Empty, "Unable to save changes. This Leading Hand was deleted by another user.");
                    }
                    else
                    {
                        var databaseValues = (LeadingHand)databaseEntry.ToObject();

                        if (databaseValues.FirstName != clientValues.FirstName)
                        {
                            ModelState.AddModelError("FirstName", $"Current First Name: {databaseValues.FirstName}");
                        }
                        if (databaseValues.LastName != clientValues.LastName)
                        {
                            ModelState.AddModelError("LastName", $"Current Last Name: {databaseValues.LastName}");
                        }
                        if (databaseValues.ScaffoldTicket != clientValues.ScaffoldTicket)
                        {
                            ModelState.AddModelError("ScaffoldTicket", $"Current ScaffoldTicket: {databaseValues.ScaffoldTicket}");
                        }
                        if (databaseValues.DriversLicence != clientValues.DriversLicence)
                        {
                            ModelState.AddModelError("DriversLicence", $"Current DriversLicence: {databaseValues.DriversLicence}");
                        }

                        ModelState.AddModelError("", "The record you attempted to edit " +
                                                 "was modified by another user after you got the original value.");
                        ModelState.AddModelError("", "The edit operation was canceled and the current valurs in the database " +
                                                 "have been displayed.");
                        ModelState.AddModelError("", "If you still want to edit this record, click the save button again. " +
                                                 "Otherwise click the Back to list to the previous page.");
                        leadingHandToUpdate.RowVersion = (byte[])databaseValues.RowVersion;
                        ModelState.Remove("RowVersion");
                    }
                }
            }
            return(View(leadingHandToUpdate));
        }