public ActionResult Register(Guid leadId)
        {
            var services = _serviceService
                .GetAll()
                .OrderBy(service => service.Name);

            var viewModel = new RegisterDealViewModel
            {
                Id = Guid.NewGuid(),
                LeadId = leadId,
                Services = new MultiSelectList(services, "Id", "Name")
            };

            return View(viewModel);
        }
        public void RegisterAsync(RegisterDealViewModel viewModel)
        {
            AsyncManager.Parameters["leadId"] = viewModel.LeadId;
            var correlationId = Guid.NewGuid();

            var registerDeal = new RegisterDeal
                                   {
                                       CorrelationId = correlationId,
                                       DealId = viewModel.Id,
                                       LeadId = viewModel.LeadId,
                                       Value = viewModel.Value
                                   };

            var initializeClient = new InitializeAgreement
                                       {
                                           CorrelationId = correlationId,
                                           DealId = viewModel.Id,
                                           Commencement = viewModel.Commencement,
                                           Expiry = viewModel.Expiry,
                                           ServiceIds = viewModel.ServiceIds.ToList(),
                                           Value = viewModel.Value,
                                           ClientId = viewModel.LeadId
                                       };

            _bus.Send(registerDeal).Register<ReturnCode>(status =>
                                                                          {
                                                                              AsyncManager.Parameters["registerDealReturnCode"] = status;
                                                                          });

            _bus.Send(initializeClient);
        }