public static async void SaveOrphan(Orphan inOrphan)
        {
            try
            {
                // Replace this with the API code.
                using (var context = new SMSContext())
                {
                    var updatedOrphan = context.Orphans.Single(c => c.OrphanID == inOrphan.OrphanID);

                    updatedOrphan.OrphanID   = inOrphan.OrphanID;
                    updatedOrphan.FirstName  = inOrphan.FirstName;
                    updatedOrphan.LastName   = inOrphan.LastName;
                    updatedOrphan.MiddleName = inOrphan.MiddleName;
                    updatedOrphan.FullName   = inOrphan.FullName;
                    if (inOrphan.GuardianID != 0)
                    {
                        updatedOrphan.GuardianID = inOrphan.GuardianID;
                    }
                    updatedOrphan.LCMStatus     = inOrphan.LCMStatus;
                    updatedOrphan.ProfileNumber = inOrphan.ProfileNumber;
                    updatedOrphan.Gender        = inOrphan.Gender;
                    updatedOrphan.EntryDate     = inOrphan.EntryDate;
                    updatedOrphan.DateOfBirth   = inOrphan.DateOfBirth;

                    context.Orphans.Update(updatedOrphan);
                    await context.SaveChangesAsync();
                }
            }
            catch (Exception eSql)
            {
                // Your code may benefit from more robust error handling or logging.
                // This logging is just a reminder that you should handle exceptions when connecting to remote data.
                System.Diagnostics.Debug.WriteLine($"Exception: {eSql.Message} {eSql.InnerException?.Message}");
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> Create([Bind("FullName,Address,Birthday,Orphanage,Avatar")] Orphan orphan, int id, IFormFile file)
        {
            await ImageHelper.SetAvatar(orphan, file, "wwwroot\\children");

            if (ModelState.IsValid)
            {
                var orphanage = await _unitOfWorkAsync.Orphanages.GetById(id);

                orphan.Orphanage = orphanage;

                await _unitOfWorkAsync.Orphans.Create(orphan);

                await _unitOfWorkAsync.Orphans.SaveChangesAsync();

                var user = await GetCurrentUserAsync();

                user.PersonID   = orphan.ID;
                user.PersonType = Models.Identity.PersonType.Orphan;
                await _unitOfWorkAsync.UserManager.UpdateAsync(user);



                return(RedirectToAction(nameof(Index)));
            }
            GetViewData();

            return(View(orphan));
        }
Esempio n. 3
0
        public void AddPerson_IsCalledWithOrphan_AddToOrphanList()
        {
            Orphan orphan = new Orphan();

            _gameData.AddPerson(orphan);

            Assert.That(_gameData.Orphans.Contains(orphan));
        }
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            if (e.Parameter != null)
            {
                InOrphan = (Orphan)e.Parameter;

                isNew = false;
            }
            else
            {
                isNew = true;
            }

            base.OnNavigatedTo(e);
        }
Esempio n. 5
0
        public void AddPerson_IsCalledWithOrphan_AddsRelationToNewOrphan()
        {
            Orphan orphan1 = new Orphan();
            Orphan orphan2 = new Orphan();

            _gameData.AddPerson(orphan1);
            _gameData.AddPerson(orphan2);
            Orphan orphan3 = new Orphan();

            _gameData.AddPerson(orphan3);

            List <Person> relatedPeople = _gameData.Orphans.Single(p => p.Equals(orphan3)).Relations.Select(p => p.Acquaintance).ToList();

            Assert.That(relatedPeople.Contains(orphan1) && relatedPeople.Contains(orphan2));
        }
Esempio n. 6
0
        public async Task <IActionResult> Edit(int id, [Bind("ID,FullName,Birthday,Orphanage,Avatar")] Orphan orphan, int idOrphanage, IFormFile file)
        {
            if (id != orphan.ID)
            {
                return(NotFound());
            }

            var check       = CheckAccess((int)id).Result;
            var checkResult = check != null;

            if (checkResult)
            {
                return(check);
            }

            await ImageHelper.SetAvatar(orphan, file, "wwwroot\\children");


            if (ModelState.IsValid)
            {
                try
                {
                    var orphanage = await _unitOfWorkAsync.Orphanages.GetById(idOrphanage);

                    orphan.Orphanage = orphanage;
                    var orphanToEdit = await _unitOfWorkAsync.Orphans.GetById(orphan.ID);

                    orphanToEdit.CopyState(orphan);
                    _unitOfWorkAsync.Orphans.Update(orphanToEdit);
                    _unitOfWorkAsync.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!_unitOfWorkAsync.Orphans.Any(orphan.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            GetViewData();

            return(View(orphan));
        }
Esempio n. 7
0
        public void AddPerson_IsCalledWithOrphan_AddRelationsToPersonel()
        {
            Person person1 = new Person();
            Person person2 = new Person();

            _gameData.AddPerson(person1);
            _gameData.AddPerson(person2);
            Orphan orphan = new Orphan();

            _gameData.AddPerson(orphan);

            List <Person> person1related = _gameData.Personel.Single(p => p.Equals(person1)).Relations.Select(p => p.Acquaintance).ToList();
            List <Person> person2related = _gameData.Personel.Single(p => p.Equals(person2)).Relations.Select(p => p.Acquaintance).ToList();

            Assert.That(person1related.Contains(orphan) && person2related.Contains(orphan));
        }
Esempio n. 8
0
        public void AddPerson_IsCalledWithOrphan_AddRelationsToOldOrphans()
        {
            Orphan orphan1 = new Orphan();
            Orphan orphan2 = new Orphan();

            _gameData.AddPerson(orphan1);
            _gameData.AddPerson(orphan2);
            Orphan orphan3 = new Orphan();

            _gameData.AddPerson(orphan3);

            List <Person> orphan1related = _gameData.Orphans.Single(p => p.Equals(orphan1)).Relations.Select(p => p.Acquaintance).ToList();
            List <Person> orphan2related = _gameData.Orphans.Single(p => p.Equals(orphan2)).Relations.Select(p => p.Acquaintance).ToList();

            Assert.That(orphan1related.Contains(orphan3) && orphan2related.Contains(orphan3));
        }
Esempio n. 9
0
        public void AddPerson(Orphan orphan)
        {
            Orphans.Add(orphan);

            foreach (Person p in Personel)
            {
                p.AddRelation(orphan);
                orphan.AddRelation(p);
            }

            foreach (Orphan o in Orphans)
            {
                o.AddRelation(orphan);
                orphan.AddRelation(o);
            }
        }
Esempio n. 10
0
        public async Task AddOrphanAsync(Orphan newOrphan)
        {
            string uri = $"{BaseUrl}{OrphansController}";

            var request = new HttpRequestMessage(HttpMethod.Post, uri);
            var payload = JsonConvert.SerializeObject(newOrphan);

            // TODO Add JWT token to header
            // request.Headers

            request.Content = new StringContent(payload, Encoding.UTF8, "application/json");


            var response = await _client.SendAsync(request);

            response.EnsureSuccessStatusCode();
        }
Esempio n. 11
0
        public void Save(Orphan saveThis)
        {
            if (saveThis == null)
            {
                throw new ArgumentNullException("saveThis", "saveThis is null.");
            }


            try
            {
                _RepositoryInstance.Save(saveThis);
            }
            catch (Exception ex)
            {
                ErrorSignal.FromCurrentContext().Raise(ex);
            }
        }
 public static async void AddOrphan(Orphan inOrphan)
 {
     try
     {
         // Replace this with the API code.
         using (var context = new SMSContext())
         {
             context.Orphans.Add(inOrphan);
             await context.SaveChangesAsync();
         }
     }
     catch (Exception eSql)
     {
         // Your code may benefit from more robust error handling or logging.
         // This logging is just a reminder that you should handle exceptions when connecting to remote data.
         System.Diagnostics.Debug.WriteLine($"Exception: {eSql.Message} {eSql.InnerException?.Message}");
     }
 }
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            EditNarrationParams p = new EditNarrationParams();

            p        = (EditNarrationParams)e.Parameter;
            InOrphan = (Orphan)p.Member;

            if (p.Narration != null)
            {
                isNew       = false;
                InNarration = p.Narration;
            }
            else
            {
                isNew = true;
            }
        }
        private void btnSave_Click(object sender, RoutedEventArgs e)
        {
            Orphan outOrphan = new Orphan();

            // Add the save stuff to see if it works.
            if (!isNew)
            {
                outOrphan = InOrphan;
            }


            outOrphan.FirstName  = txtFirstName.Text;
            outOrphan.MiddleName = txtMiddleName.Text;
            outOrphan.LastName   = txtLastName.Text;
            outOrphan.Gender     = txtGender.Text;
            //outOrphan.DateOfBirth = dtDateOfBirth.Date;
            outOrphan.LCMStatus = txtLCMStatus.Text;
            //outOrphan.EntryDate = dtEntryDate.Date;
            if (String.IsNullOrWhiteSpace(txtMiddleName.Text))
            {
                outOrphan.FullName = txtFirstName.Text + " " + txtLastName.Text;
            }
            else
            {
                outOrphan.FullName = txtFirstName.Text + " " + txtMiddleName.Text + " " + txtLastName.Text;
            }

            if (isNew)
            {
                // Update to Database
                OrphanDataService.AddOrphan(outOrphan);
            }
            else
            {
                // Go get the one of interest, then overwrite.

                // Update to Database
                OrphanDataService.SaveOrphan(outOrphan);
            }

            // Go Back
            On_BackRequested();
        }
 public int Insert(Orphan orphan)
 {
     db.Orphans.Add(orphan);
     return(db.SaveChanges());
 }
Esempio n. 16
0
        private async void btnSave_Click(object sender, RoutedEventArgs e)
        {
            Orphan outOrphan = new Orphan();

            if (!isNew)
            {
                outOrphan = InOrphan;
            }


            outOrphan.FirstName  = txtFirstName.Text;
            outOrphan.MiddleName = txtMiddleName.Text;
            outOrphan.LastName   = txtLastName.Text;
            outOrphan.Gender     = txtGender.Text;
            //outOrphan.DateOfBirth = dtDateOfBirth.Date;
            outOrphan.LCMStatus = txtLCMStatus.Text;
            //outOrphan.EntryDate = dtEntryDate.Date;
            if (String.IsNullOrWhiteSpace(txtMiddleName.Text))
            {
                outOrphan.FullName = txtFirstName.Text + " " + txtLastName.Text;
            }
            else
            {
                outOrphan.FullName = txtFirstName.Text + " " + txtMiddleName.Text + " " + txtLastName.Text;
            }

            if (isNew)
            {
                if (AppSettings.UseWebApi)
                {
                    using (var client = new HttpClient())
                    {
                        var orphanRepo     = new OrphanHttpRepository(client);
                        var orphanCreation = new OrphanCreation
                        {
                            FirstName     = outOrphan.FirstName,
                            MiddleName    = outOrphan.MiddleName,
                            LastName      = outOrphan.LastName,
                            Gender        = outOrphan.Gender,
                            DateOfBirth   = outOrphan.DateOfBirth,
                            LCMStatus     = outOrphan.LCMStatus,
                            ProfileNumber = outOrphan.ProfileNumber
                        };

                        await orphanRepo.AddOrphanAsync(orphanCreation);
                    }
                }
                else
                {
                    // Update to Database
                    OrphanDataService.AddOrphan(outOrphan);
                }
            }
            else
            {
                // Go get the one of interest, then overwrite.

                if (AppSettings.UseWebApi)
                {
                    using (var client = new HttpClient())
                    {
                        var orphanRepo = new OrphanHttpRepository(client);
                        var orphanEdit = new OrphanEdit
                        {
                            FirstName        = outOrphan.FirstName,
                            MiddleName       = outOrphan.MiddleName,
                            LastName         = outOrphan.LastName,
                            Gender           = outOrphan.Gender,
                            DateOfBirth      = outOrphan.DateOfBirth,
                            LCMStatus        = outOrphan.LCMStatus,
                            ProfileNumber    = outOrphan.ProfileNumber,
                            EntryDate        = outOrphan.EntryDate,
                            GuardianID       = outOrphan.GuardianID,
                            ProfilePictureID = outOrphan.ProfilePic.PictureID
                        };

                        await orphanRepo.UpdateOrphanAsync(outOrphan.OrphanID, orphanEdit);
                    }
                }
                else
                {
                    // Update to Database
                    OrphanDataService.SaveOrphan(outOrphan);
                }
            }

            // Go Back
            On_BackRequested();
        }
Esempio n. 17
0
        public static async Task <IEnumerable <Orphan> > AllOrphans()
        {
            // Using a hard-coded SQL statement for now to make it simpler.  Will need to either use API (preferred)
            // or stored procedure

            const string getOrphanQuery = @"SELECT * FROM dbo.Orphans";

            var orphanList = new List <Orphan>();

            try
            {
                using (var conn = new SqlConnection(GetConnectionString()))
                {
                    await conn.OpenAsync();

                    if (conn.State == System.Data.ConnectionState.Open)
                    {
                        using (var cmd = conn.CreateCommand())
                        {
                            cmd.CommandText = getOrphanQuery;

                            using (var reader = await cmd.ExecuteReaderAsync())
                            {
                                while (await reader.ReadAsync())
                                {
                                    //Orphan Data
                                    var orphanID      = !reader.IsDBNull(0) ? reader.GetInt32(0) : 0;
                                    var firstName     = reader.GetString(1);
                                    var middleName    = !reader.IsDBNull(2) ? reader.GetString(2) : string.Empty;
                                    var lastName      = reader.GetString(3);
                                    var fullName      = reader.GetString(4);
                                    var gender        = !reader.IsDBNull(5) ? reader.GetString(5) : string.Empty;
                                    var dateOfBirth   = !reader.IsDBNull(6) ? reader.GetDateTime(6) : default(DateTime);
                                    var lcmStatus     = !reader.IsDBNull(7) ? reader.GetString(7) : string.Empty;
                                    var profileNumber = !reader.IsDBNull(8) ? reader.GetString(8) : string.Empty;
                                    var entryDate     = !reader.IsDBNull(9) ? reader.GetDateTime(9) : default(DateTime);
                                    var guardianID    = !reader.IsDBNull(10) ? reader.GetInt32(10) : 0;

                                    Orphan inOrphan = new Orphan()
                                    {
                                        OrphanID      = orphanID,
                                        FirstName     = firstName,
                                        MiddleName    = middleName,
                                        LastName      = lastName,
                                        FullName      = fullName,
                                        Gender        = gender,
                                        DateOfBirth   = dateOfBirth,
                                        LCMStatus     = lcmStatus,
                                        ProfileNumber = profileNumber,
                                        EntryDate     = entryDate,
                                        GuardianID    = guardianID
                                    };

                                    // Add to the List<>
                                    orphanList.Add(inOrphan);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception eSql)
            {
                // Your code may benefit from more robust error handling or logging.
                // This logging is just a reminder that you should handle exceptions when connecting to remote data.
                System.Diagnostics.Debug.WriteLine($"Exception: {eSql.Message} {eSql.InnerException?.Message}");
            }

            return(orphanList);
        }