private void PopulateViewBag(ContractDetailsViewModel vm, string participantId = "")
        {
            var admins = participantsProcessor.GetAllAdmins().Select(x => new SelectListItem {
                Text = x.ApplicationUser.UserName, Value = x.Id, Selected = x.Id == participantId
            }).ToList();

            ViewBag.Admins = new SelectList(admins, "Value", "Text");
            if (string.IsNullOrWhiteSpace(vm.Contract.ContractProvider.ID))
            {
                vm.Contract.ContractProvider.ID = admins.Where(x => x.Selected).Select(x => x.Value).FirstOrDefault();
            }

            var clients = participantsProcessor.GetAllClients().Select(x => new SelectListItem {
                Text = x.ApplicationUser.UserName, Value = x.Id, Selected = x.Id == participantId
            }).ToList();

            ViewBag.Clients = new SelectList(clients, "Value", "Text");
            if (string.IsNullOrWhiteSpace(vm.Contract.ContractClient.ID))
            {
                vm.Contract.ContractClient.ID = clients.Where(x => x.Selected).Select(x => x.Value).FirstOrDefault();
            }

            var statuses = Enum.GetNames(typeof(Core.LogicConstants.RentContractStatus)).Select(x => new SelectListItem {
                Text = x, Value = x
            }).ToList();

            ViewBag.Statuses = new SelectList(statuses, "Value", "Text");
        }
        public void AdminUsers_and_Centre_populate_expected_values_with_no_limit()
        {
            // Given
            var centre = CentreTestHelper.GetDefaultCentre(
                cmsAdministratorSpots: -1,
                cmsManagerSpots: -1,
                ccLicenceSpots: -1,
                trainerSpots: -1,
                customCourses: 12,
                serverSpaceUsed: 0,
                serverSpaceBytes: 0
                );
            var adminUsersAtCentre = GetAdminUsersForTest();

            // When
            var viewModel = new ContractDetailsViewModel(adminUsersAtCentre, centre, 10);

            // Then
            viewModel.Administrators.Should().Be("7");
            viewModel.Supervisors.Should().Be("6");
            viewModel.CmsAdministrators.Should().Be("3");
            viewModel.CmsAdministratorsColour.Should().Be("blue");
            viewModel.CmsManagers.Should().Be("2");
            viewModel.CmsManagersColour.Should().Be("blue");
            viewModel.ContentCreators.Should().Be("2");
            viewModel.ContentCreatorsColour.Should().Be("blue");
            viewModel.Trainers.Should().Be("1");
            viewModel.TrainersColour.Should().Be("blue");
            viewModel.CustomCourses.Should().Be("10 / 12");
            viewModel.CustomCoursesColour.Should().Be("yellow");
            viewModel.ServerSpace.Should().Be("0B / 0B");
            viewModel.ServerSpaceColour.Should().Be("grey");
        }
        public void AdminUsers_and_Centre_populate_expected_values()
        {
            // Given
            var centre = CentreTestHelper.GetDefaultCentre(
                cmsAdministratorSpots: 3,
                cmsManagerSpots: 13,
                ccLicenceSpots: 14,
                trainerSpots: 15,
                customCourses: 12,
                serverSpaceUsed: 1024,
                serverSpaceBytes: 1073741824
                );
            var adminUsersAtCentre = GetAdminUsersForTest();

            // When
            var viewModel = new ContractDetailsViewModel(adminUsersAtCentre, centre, 10);

            // Then
            viewModel.Administrators.Should().Be("7");
            viewModel.Supervisors.Should().Be("6");
            viewModel.CmsAdministrators.Should().Be("3 / 3");
            viewModel.CmsAdministratorsColour.Should().Be("red");
            viewModel.CmsManagers.Should().Be("2 / 13");
            viewModel.CmsManagersColour.Should().Be("green");
            viewModel.ContentCreators.Should().Be("2 / 14");
            viewModel.ContentCreatorsColour.Should().Be("green");
            viewModel.Trainers.Should().Be("1 / 15");
            viewModel.TrainersColour.Should().Be("green");
            viewModel.CustomCourses.Should().Be("10 / 12");
            viewModel.CustomCoursesColour.Should().Be("yellow");
            viewModel.ServerSpace.Should().Be("1KB / 1GB");
            viewModel.ServerSpaceColour.Should().Be("green");
        }
        public ActionResult Create(string id)
        {
            var vm = new ContractDetailsViewModel();

            PopulateViewBag(vm, id);

            return(PartialView("_CreateEditContract", vm));
        }
Example #5
0
        public IActionResult Index()
        {
            var centreId           = User.GetCentreId();
            var centreDetails      = centresDataService.GetCentreDetailsById(centreId) !;
            var adminUsersAtCentre = userDataService.GetAdminUsersByCentreId(centreId);
            var numberOfCourses    = courseDataService.GetNumberOfActiveCoursesAtCentreFilteredByCategory(centreId, null);

            var model = new ContractDetailsViewModel(adminUsersAtCentre, centreDetails, numberOfCourses);

            return(View(model));
        }
Example #6
0
        private async void ItemTapped(object sender, ItemTappedEventArgs e)
        {
            var contract = e.Item as ContractItem;

            if (contract != null)
            {
                var vm   = new ContractDetailsViewModel(contract);
                var page = new ContractDetailsPage();
                page.BindingContext = vm;

                await Navigation.PushAsync(page);
            }
        }
Example #7
0
        public ActionResult GetContractForConfirmation(Guid contractId)
        {
            var contract = _contractService.GetContractById(contractId);

            var contractView = new ContractDetailsViewModel();

            Mapper.Map(contract, contractView);

            var model = new ContractForConfirmationViewModel
            {
                Contract = contractView
            };

            return(View("ConfirmationContract", model));
        }
Example #8
0
        public ActionResult GetContractDetails(Guid contractId)
        {
            var contract = _contractService.GetContractById(contractId);

            var model = new ContractDetailsViewModel();

            Mapper.Map(contract, model);

            var contractsResults = _contractResultService.GetContractResultsByContractId(contractId).ToArray();

            if (contractsResults.Length > 0)
            {
                model.ConfirmationMessage = contractsResults[0].Message;
            }

            return(View("ContractDetails", model));
        }
        public ContractDetailsViewModel getContractDetails(int id)
        {
            var approvalStatusContractEF = db.ApprovalStatusContractEF(id);
            List <PTS_App_Code_VB_Project.PTS_MERCURY.db.ApprovalStatusContractEF_Result> approvalStatusContractEFs =
                new List <PTS_App_Code_VB_Project.PTS_MERCURY.db.ApprovalStatusContractEF_Result>();

            foreach (var item in approvalStatusContractEF)
            {
                approvalStatusContractEFs.Add(item);
            }

            ContractDetailsViewModel contractDetailsViewModel =
                new ContractDetailsViewModel
            {
                ContractDetails           = db.View_ContractDetails.Where(c => c.ContractID == id).ToList()[0],
                ApprovalStatusContractEFs = approvalStatusContractEFs
            };

            return(contractDetailsViewModel);
        }
Example #10
0
 public ContractController(CompositionContainer container
                           , ShellViewModel shellViewModel
                           , ContractListViewModel _contractListViewModel
                           , ContractViewModel _contractViewModel
                           , ContractDetailsViewModel _groupsOnContractViewModel
                           //,VolumeAdjViewModel _volumeAdjViewModel
                           , ContractRateViewModel _contractRateViewModel
                           , TatScheduleViewModel _tatScheduleViewModel
                           , ContractVolumeEvtViewModel _contractVolumeEvtViewModel
                           )
 {
     this.container        = container;
     tatScheduleViewModel  = _tatScheduleViewModel;
     contractRateViewModel = _contractRateViewModel;
     //volumeAdjViewModel = _volumeAdjViewModel;
     this.contractViewModel     = _contractViewModel;
     contractListViewModel      = _contractListViewModel;
     contractVolumeEvtViewModel = _contractVolumeEvtViewModel;
     this.shellViewModel        = shellViewModel;
     groupsOnContractViewModel  = _groupsOnContractViewModel;
 }
        public async Task <ActionResult> Edit(ContractDetailsViewModel vm)
        {
            var success = ModelState.IsValid;
            var message = string.Empty;

            try
            {
                if (success)
                {
                    (success, message) = await contractsProcessor.Amend(vm.Contract);
                }
                else
                {
                    message = string.Join("<br/>", GetModelStateErrorMessages());
                }
            }
            catch (Exception e)
            {
                message = $"Error amending contract: {e.Message}";
            }

            return(Json(new { success, message }));
        }