public ActionResult Create(long?categoryId)
        {
            if (!categoryId.HasValue)
            {
                var categories = CategoryDataStore.GetAll().ToArray();
                return(View("ChooseRequestCategory", categories));
            }

            var cat = CategoryDataStore.Get(categoryId.Value);

            return(View(new NewRequestFormDto
            {
                CategoryId = cat.Id,
                CategoryName = cat.Name,
                AuthorId = CurrentOperatorService.GetCurrentUser().Id
            }));
        }
        public void Create(NewRequestFormDto requestFormDto)
        {
            // todo wrap to transaction
            var category = CategoryDataStore.Get(requestFormDto.CategoryId);

            var newRequest = new Request
            {
                Category     = category,
                Comment      = requestFormDto.Comment,
                Author       = UserDataStore.Get(requestFormDto.AuthorId),
                ConsumerName = requestFormDto.CustemerFio,
                Date         = DateTime.UtcNow,
                Phone        = requestFormDto.PhoneNumber,
                State        = EState.Registered
            };

            RequestDataStore.Save(newRequest);
        }