public ActionResult Create(CandidateFinalPlacementViewModel candidateFinalPlacementViewModel)
        {
            var organisationId = UserOrganisationId;
            var personnelId    = UserPersonnelId;
            var centreId       = UserCentreId;

            if (ModelState.IsValid)
            {
                candidateFinalPlacementViewModel.CandidateFinalPlacement.OrganisationId = organisationId;
                candidateFinalPlacementViewModel.CandidateFinalPlacement.CreatedBy      = personnelId;
                candidateFinalPlacementViewModel.CandidateFinalPlacement.CentreId       = centreId;
                candidateFinalPlacementViewModel.CandidateFinalPlacement = _nidanBusinessService.CreateCandidateFinalPlacement(organisationId, candidateFinalPlacementViewModel.CandidateFinalPlacement);
                return(RedirectToAction("Index"));
            }
            candidateFinalPlacementViewModel.Companies       = new SelectList(_nidanBusinessService.RetrieveCompanies(organisationId, e => true).ToList(), "CompanyId", "Name");
            candidateFinalPlacementViewModel.CompanyBranches = new SelectList(_nidanBusinessService.RetrieveCompanyBranches(organisationId, e => true).ToList(), "CompanyBranchId", "CompanyBranchName");
            candidateFinalPlacementViewModel.PlacementStates = new SelectList(_nidanBusinessService.RetrievePlacementStates(organisationId, e => true).ToList(), "PlacementStatusId", "Name");
            return(View(candidateFinalPlacementViewModel));
        }
        public ActionResult Create(int?id)
        {
            var organisationId = UserOrganisationId;

            id = id ?? 0;
            var admission       = _nidanBusinessService.RetrieveAdmissionGrid(organisationId, id.Value, e => true);
            var companies       = _nidanBusinessService.RetrieveCompanies(organisationId, e => true);
            var companyBranches = _nidanBusinessService.RetrieveCompanyBranches(organisationId, e => true);
            var placementStates = _nidanBusinessService.RetrievePlacementStates(organisationId, e => true);
            var candidateFinalPlacementLastRecord = _nidanBusinessService.RetrieveCandidateFinalPlacements(organisationId, e => e.AdmissionId == id.Value).Items.LastOrDefault();
            var candidatefinalPlacement           = candidateFinalPlacementLastRecord.CandidateFinalPlacementId != null
                ? new CandidateFinalPlacement()
            {
                AdmissionId          = id.Value,
                BatchId              = admission.BatchId ?? 0,
                IsFinalPlacementDone = candidateFinalPlacementLastRecord.IsFinalPlacementDone
            }
                : new CandidateFinalPlacement()
            {
                AdmissionId = id.Value,
                BatchId     = admission.BatchId ?? 0
            };
            var viewModel = new CandidateFinalPlacementViewModel
            {
                AdmissionId   = id.Value,
                BatchId       = admission.BatchId ?? 0,
                CandidateName = admission.CandidateName,
                Mobile        = admission.Mobile,
                EmailId       = admission.EmailId,
                Course        = admission.CourseName,
                //CandidateFinalPlacementId = candidateFinalPlacementLastRecord?.CandidateFinalPlacementId ?? 0,
                Companies               = new SelectList(companies, "CompanyId", "Name"),
                CompanyBranches         = new SelectList(companyBranches, "CompanyBranchId", "CompanyBranchName"),
                PlacementStates         = new SelectList(placementStates, "PlacementStatusId", "Name"),
                CandidateFinalPlacement = candidatefinalPlacement
            };

            return(View(viewModel));
        }