private void OnSaveMethod(bool IsAlive) { string nameTemp = ContentPanel.GetFormControlFromPanel <TextBox>(NameTextBox).Text; string descriptionTemp = ContentPanel.GetFormControlFromPanel <TextBox>(DescriptionTextBox).Text; PositionModel NewModel = new PositionModel { Name = nameTemp, Description = descriptionTemp }; PositionDataContract changes = new PositionDataContract(); int selectedModel = baseControl.Models.IndexOf(OldModel); if (OldModel.IsNull()) { NewModel.ID = Guid.NewGuid(); changes = PositionsService.InsertPosition(mapper.Map <PositionModel, PositionDataContract>(NewModel)).Result; baseControl.Models.Add(mapper.Map <PositionDataContract, PositionModel>(changes)); } else { NewModel.ID = baseControl.Models[selectedModel].ID; changes = PositionsService.UpdatePosition(mapper.Map <PositionModel, PositionDataContract>(NewModel)).Result; baseControl.Models[selectedModel] = mapper.Map <PositionDataContract, PositionModel>(changes); baseControl.CollectionView.Items[selectedModel].Selected = true; } if (IsAlive) { OldModel = selectedModel.Equals(-1) ? baseControl.Models[baseControl.Models.Count - 1] : baseControl.Models[selectedModel]; } else { CloseViewButton.PerformClick(); } }
/// <summary> /// Удалить должность /// </summary> /// <param name="position">должность</param> /// <returns>кол-во удаленных должностей</returns> public static async Task <int> DeletePosition(PositionDataContract position) => await TunellProxy.UseTunellProxy(client => client.DeletePosition(position));
/// <summary> /// Изменить должность /// </summary> /// <param name="position">должность</param> /// <returns>Измененнная должность</returns> public static async Task <PositionDataContract> UpdatePosition(PositionDataContract position) => await TunellProxy.UseTunellProxy(client => client.UpdatePosition(position));
public IEnumerable <PermissionDataContract> GetPermissionsCollectionByPosition(PositionDataContract position) => Channel.GetPermissionsCollectionByPosition(position);
public int DeletePosition(PositionDataContract position) => Channel.DeletePosition(position);
public PositionDataContract UpdatePosition(PositionDataContract position) => Channel.UpdatePosition(position);
public PositionDataContract InsertPosition(PositionDataContract position) => Channel.InsertPosition(position);
/// <summary> /// Получить список разрешений для должности /// </summary> /// <param name="position">должность</param> /// <returns>список разрешений</returns> public static async Task <IEnumerable <PermissionDataContract> > GetPermissionsCollectionByPosition(PositionDataContract position) => await TunellProxy.UseTunellProxy(client => client.GetPermissionsCollectionByPosition(position));