예제 #1
0
 public void Edit()
 {
     if (SelectedDataItem != null)
     {
         var item = SelectedDataItem;
         for (int i = 0; i < Roles.Count; i++)
         {
             var role = GroupRolesSource.Where(x => x.RoleId == Roles[i].RoleId).FirstOrDefault();
             if (role != null)
             {
                 var groupRoles = GroupRoles.Where(x => x.GrolrRoleIdFk == Roles[i].RoleId && x.GrolrGIdFk == item.GId).FirstOrDefault();
                 Roles[i].IsChecked   = true;
                 Roles[i].GroleAdd    = groupRoles.GroleAdd;
                 Roles[i].GroleEdit   = groupRoles.GroleEdit;
                 Roles[i].GroleDelete = groupRoles.GroleDelete;
                 Roles[i].GroleExport = groupRoles.GroleExport;
                 Roles[i].GrolePrint  = groupRoles.GrolePrint;
                 Roles[i].GroleView   = groupRoles.GroleView;
             }
             else
             {
                 Roles[i].IsChecked   = false;
                 Roles[i].GroleAdd    = false.ToIntState();
                 Roles[i].GroleEdit   = false.ToIntState();
                 Roles[i].GroleDelete = false.ToIntState();
                 Roles[i].GroleExport = false.ToIntState();
                 Roles[i].GrolePrint  = false.ToIntState();
                 Roles[i].GroleView   = false.ToIntState();
             }
         }
         VGroupsEdit edit = new VGroupsEdit(Roles, item);
         if (edit.ShowDialog() == true)
         {
             var dataContext = edit.DataContext as VMGroupsEdit;
             DataGridSource.Remove(SelectedDataItem);
             DataGridSource.Add(dataContext.EditGroup);
             GroupRoles.RemoveAll(x => x.GrolrGIdFk == item.GId);
             GroupRoles.AddRange(dataContext.DataGridSource.Where(x => x.RoleSelected()).Select(x => x.ToGroupRoles(item.GId)));
         }
         GroupRolesSource.Clear();
     }
 }
예제 #2
0
        public void Edit()
        {
            var person = new PersonsModel()
            {
                PeId       = SelectedDataItem.PeId,
                PeAddress  = SelectedDataItem.PeAddress,
                IsChecked  = SelectedDataItem.IsChecked,
                PeIdentity = SelectedDataItem.PeIdentity,
                PeName     = SelectedDataItem.PeName,
                PeType     = SelectedDataItem.PeType,
            };
            VPersonEdit edit = new VPersonEdit(person, PersonsTypes, CommTypes, PersonsCommunication.Where(x => x.CoPeIdFk == person.PeId).ToList());

            if (edit.ShowDialog() == true)
            {
                var dataContext = edit.DataContext as VMPersonEdit;

                Persons.Remove(SelectedDataItem);
                DataGridSource.Remove(SelectedDataItem);
                PersonsCommunication.RemoveAll(x => x.CoPeIdFk == dataContext.EditedPerson.PeId);
                PersonsCommunication.AddRange(dataContext.AddedCommunication);
                PersonsAddress.RemoveAll(x => x.PeAdPerIdFk == dataContext.EditedPerson.PeId);
                PersonsAddress.AddRange(dataContext.AddedAddress);

                var adress = PersonsAddress.Where(x => x.PeAdPerIdFk == dataContext.EditedPerson.PeId).FirstOrDefault();
                if (adress != null)
                {
                    dataContext.EditedPerson.PeAddress = $"{adress.PeAdCity} - {adress.PeAdStreetName}";
                }
                dataContext.EditedPerson.Type = PersonsTypes.Where(x => x.CId == dataContext.EditedPerson.PeType).FirstOrDefault().CName;
                var communication = PersonsCommunication.Where(x => x.CoPeIdFk == dataContext.EditedPerson.PeId);
                dataContext.EditedPerson.PhoneNo  = communication.Where(x => x.CoNameCfk.Equals(SystemValues.Communications.Phone)).FirstOrDefault()?.CoValue;
                dataContext.EditedPerson.MobileNo = communication.Where(x => x.CoNameCfk.Equals(SystemValues.Communications.Mobile)).FirstOrDefault()?.CoValue;
                dataContext.EditedPerson.Email    = communication.Where(x => x.CoNameCfk.Equals(SystemValues.Communications.Emial)).FirstOrDefault()?.CoValue;

                Persons.Add(dataContext.EditedPerson);
                DataGridSource.Add(dataContext.EditedPerson);
                SelectedDataItem = dataContext.EditedPerson;
            }
        }
예제 #3
0
 private void DeleteRow()
 {
     DataGridSource.Remove(selectedDataGridItem);
 }