Exemplo n.º 1
0
        public static List<int> GetEventTypesList(EventAdminDetailView parent, SubEntity subEntity)
        {
            var eventTypeIds = subEntity.Records.Where(e => e.Id > 0 && e.Action != RecordActions.Deleted).Select(e => e.Id).ToList();

            //Add any newly created topics
            var newTopics = subEntity.Records.Where(e => e.Action == RecordActions.New);
            foreach (var newTopic in newTopics)
            {
                var request = new AddEventTypeRequest()
                {
                    Name = CommonUtils.GetFieldValue(newTopic.Fields, _eventType),
                    IsEnabled = true
                };
                var response = parent.ProcessRequest<AddEventTypeResponse>(request);
                eventTypeIds.Add(response.Id);
            }

            if (eventTypeIds.Count <= 0)
            {
                const string errorMessage = "Event Type required";
                subEntity.ErrorMessage = errorMessage;
                throw new Exception(errorMessage);
            }

            return eventTypeIds;
        }
        private AddEventTypeResponse AddType(AddEventTypeRequest request)
        {
            var handler = CreateHandler();

            //act
            var response = HandleRequest<AddEventTypeResponse>(handler, request);
            return response;
        }
        public void add_type_with_duplicate_name()
        {
            //setup
            var request = new AddEventTypeRequest
            {
                Name = "Class",
                IsEnabled = true
            };

            AddType(request);
        }
        public void add_type()
        {
            //setup
            var request = new AddEventTypeRequest
            {
                Name = _netTypeName,
                IsEnabled = true
            };

            var response = AddType(request);

            //assert
            using (var context = _objectContextFactory.CreateObjectContext())
            {
                var eventType = context.CreateObjectSet<EventType>().SingleOrDefault(e => e.Id == response.Id);
                Assert.AreEqual(request.Name, eventType.Name);
                Assert.AreEqual(request.IsEnabled, eventType.IsEnabled);
            }
        }
        private void Save()
        {
            _eventTypeId = int.Parse(CommonUtils.GetFieldValue(_viewModel.Fields, _id), CultureInfo.InvariantCulture);

            var nameValue = CommonUtils.GetFieldValue(_viewModel.Fields, _name);
            var isEnabledValue = bool.Parse(CommonUtils.GetFieldValue(_viewModel.Fields, _isEnabled));

            if (string.IsNullOrEmpty(nameValue))
                throw new Exception("Event Type name is required.");

            if (_eventTypeId == 0)
            {
                var request = new AddEventTypeRequest
                {
                    Name = nameValue,
                    IsEnabled = isEnabledValue
                };

                _eventTypeId = ProcessRequest<AddEventTypeResponse>(request).Id;
            }
            else
            {
                if (_viewModel.Action == RecordActions.Edited)
                {
                    var updateRequest = new UpdateEventTypeRequest
                    {
                        Id = _eventTypeId,
                        Name = nameValue,
                        IsEnabled = isEnabledValue
                    };

                    ProcessRequest<UpdateEventTypeResponse>(updateRequest);
                }
            }
        }