예제 #1
0
        public void UpdateGroup(GroupDataContract group)
        {
            Mapper.Initialize(o => o.CreateMap <GroupDataContract, Group>());
            var groupUpdate = Mapper.Map <GroupDataContract, Group>(group);

            _unitOfWork.GroupRepository.Update(groupUpdate);
        }
예제 #2
0
        private void CheckPolicy(LoginDataContract selectedLogin, GroupDataContract selectedGroup)
        {
            try
            {
                UpdateSelectedPolicyCollection();

                if (PolicyCollection == null || !PolicyCollection.Any())
                {
                    return;
                }

                foreach (var selectedPolicy in PolicyCollection)
                {
                    selectedPolicy.IsSelected = selectedPolicy.IsGroupPolitics = false;
                }

                using (var policySetService =
                           _ppsClientViewModel.ServiceProxy.GetPpsChannelFactory <IPolicySetService>())
                {
                    var channel = policySetService.CreateChannel();
                    Result <PolicySetDataContract[]> result;

                    if (IsUserPolicySet && selectedLogin != null)
                    {
                        result = channel.GetPolicySetForLogin(selectedLogin.LoginId);
                    }
                    else if (IsGroupPolicySet && selectedGroup != null)
                    {
                        result = channel.GetPolicySetForGroup(selectedGroup.GroupId);
                    }
                    else
                    {
                        return;
                    }

                    if (result == null)
                    {
                        throw new Exception("Ошибка вызова службы");
                    }

                    if (!result.BoolRes || result.SomeResult == null)
                    {
                        throw new Exception(result.ErrorRes);
                    }

                    var policySetCollection = result.SomeResult;

                    foreach (var selectedPolicy in PolicyCollection)
                    {
                        var policySet = policySetCollection.FirstOrDefault(x => x.PolicyId == selectedPolicy.PolicyId);
                        selectedPolicy.IsSelected = policySet != null;

                        if (selectedPolicy.IsSelected && policySet != null)
                        {
                            selectedPolicy.PolicyParam = policySet.PolicyParam;
                        }
                    }

                    if (!IsUserPolicySet || _groupIdAndPolicyIdDct == null || !_groupIdAndPolicyIdDct.Any())
                    {
                        return;
                    }

                    var grpPoliciesForLogin = _groupIdAndPolicyIdDct[selectedLogin.GroupId];

                    if (grpPoliciesForLogin == null || !grpPoliciesForLogin.Any())
                    {
                        return;
                    }

                    foreach (var selectedPolicy in PolicyCollection)
                    {
                        selectedPolicy.IsGroupPolitics = grpPoliciesForLogin.Any(x => x == selectedPolicy.PolicyId);
                    }
                }
            }
            catch (Exception ex)
            {
                _ppsClientViewModel.WriteLogMessage(string.Concat("Не удалось отметить политику - ", ex.Message));
            }
        }
 public void UpdateGroup(GroupDataContract group)
 {
     _service.UpdateGroup(group);
 }
 /// <summary>
 /// Loads the appropriate Group object and sets it as the data source for the group detail grid
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected void DisplayDetailForGroup(object sender, GridNeedDataSourceEventArgs e)
 {
     _studentGroup = _groupProxy.GetGroup(GroupId, DistrictParms.LoadDistrictParms().ClientID);
     grdDetail.DataSource = new List<GroupDataContract> {_studentGroup};
     grdDetail.MasterTableView.GetColumn(EditGroupColumnName).Visible = GetEditColumnVisibility();
     SetPageTitle();
 }
예제 #5
0
 /// <summary>
 /// This method loads the _groupDataContract object that is used to populate the UI with data
 /// </summary>
 private void LoadGroupDataContract()
 {
     _groupDataContract = _groupsProxy.GetGroup(GroupId, DistrictParms.LoadDistrictParms().ClientID);
 }