示例#1
0
 /// <summary>
 /// Обновление статуса.
 /// </summary>
 /// <param name="statusEnum">Новое значение статуса.</param>
 public void UpdateStatus(ItemStatusEnum statusEnum, string comment = null)
 {
     if (Status == null || Status.StatusEnum != statusEnum)
     {
         Status = new ItemStatus(statusEnum, comment);
         StatusChangedEvent?.Invoke();
     }
 }
示例#2
0
        public void InsertEnumSample(string name, ItemStatusEnum itemStatue)
        {
            GEPEnumSampleT sample = new GEPEnumSampleT
            {
                Name = name,
                ItemStatus = itemStatue
            };

            new SampleDac().InsertEnumSample(sample);
        }
        /// <summary>
        /// Задание статуса и комманд синхронизации для синхронизируемого элемента, исходя из дочерних неидентичных строк.
        /// </summary>
        /// <param name="synchronizedItem">Синхронизируемый элемент, для которого задаётся статус и команды.</param>
        /// <param name="status">Задаваемй статус.</param>
        /// <param name="actionCommands">Команды синхронизации.</param>
        private void SetItemStatusAndCommands(ISynchronizedItem synchronizedItem, ItemStatusEnum status, IEnumerable <Func <Task> > actionCommands)
        {
            synchronizedItem.UpdateStatus(status, _statusCommentsFromChildren.ContainsKey(status) ?
                                          _statusCommentsFromChildren[status] : null);

            // Если нет, команды, но должна быть, исходя из дочерних элементов,
            // то можно команду представить как последовательное выпонения команд дочерних элементов.
            if (status != ItemStatusEnum.Equally)
            {
                synchronizedItem.SyncCommand.SetCommandAction(async() =>
                {
                    foreach (var actionCommand in actionCommands)
                    {
                        await actionCommand.Invoke();
                    }
                });
            }
        }
示例#4
0
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="statusEnum">Значение статуса.</param>
 /// <param name="comment">Пояснение к статусу.</param>
 public ItemStatus(ItemStatusEnum statusEnum, string comment = null)
 {
     StatusEnum = statusEnum;
     Comment    = comment ?? _commentsOnStatus[statusEnum];
 }
示例#5
0
 public void InsertEnumSampleTest(string name, ItemStatusEnum itemStatus)
 {
     new SampleBiz().InsertEnumSample(name, itemStatus);
 }
示例#6
0
 public ItemStatus GetItemStatus(ItemStatusEnum status)
 {
     return(GetItemStatus((int)status));
 }