Пример #1
0
        //Edit Project
        public async Task <ActionResult> Edit(int id)
        {
            var userId  = User.GetUserIdAsGuid();
            var siteId  = User.GetUserSiteIdAsGuid();
            var project = await _repo.Get(id);

            var draughtsmen = await _appUserRoleRepo.GetAllDraughtsman(siteId);

            List <DraughtsmanDDListViewModel> draftSelect = new List <DraughtsmanDDListViewModel> {
            };

            foreach (var draughtsman in draughtsmen)
            {
                var draftId   = draughtsman.UserId;
                var draftsman = await _siteUserManager.FindByIdAsync(draftId.ToString());

                var draftListItem = new DraughtsmanDDListViewModel
                {
                    DraughtsmanId = draftId.ToString(),
                    FirstName     = draftsman.FirstName,
                    LastName      = draftsman.LastName
                };
                draftSelect.Add(draftListItem);
            }
            try
            {
                if (User.IsInRole("Draughtsman") || User.IsInRole("Administrators"))
                {
                    var userEmail       = User.GetEmail();
                    var userDisplayName = User.GetEmail();
                    // var siteId = User.GetUserSiteIdAsGuid();

                    var draughtsmanSelect = draftSelect.Select(n => new SelectListItem
                    {
                        Text  = n.FirstName + " " + n.LastName,
                        Value = n.DraughtsmanId.ToString()
                    });

                    var allProperties = await _propertyrepo.GetAll();

                    var properties     = allProperties.ToList();
                    var propertySelect = properties.Select(n => new SelectListItem
                    {
                        Text  = n.PropertyERF_LotNo + " " + n.PropertyName,
                        Value = n.PropertyId.ToString()
                    });

                    CreateProjectViewModel createProjectVM = new CreateProjectViewModel
                    {
                        ProjectId                  = project.ProjectId,
                        ProjectName                = project.ProjectName,
                        ProjectDescription         = project.ProjectDescription,
                        MunicipalRefNo             = project.MunicipalRefNo,
                        DateofSubmission           = project.DateofSubmission,
                        MunicipalAssessmentOfficer = project.MunicipalAssessmentOfficer,
                        AssessmentOfficerEmail     = project.AssessmentOfficerEmail,
                        AssessmentOfficerContactNo = project.AssessmentOfficerContactNo,
                        DateCreated                = project.DateCreated,
                        DateModified               = project.DateModified,
                        PropertyId                 = project.PropertyId,
                        DraughtsmanId              = project.DraughtsmanId,
                        ProjectStateId             = project.ProjectStateId,
                        SiteId = project.SiteId,


                        // Properties = propertySelect,
                        Draughtsmen = draughtsmanSelect
                    };
                    return(View(createProjectVM));
                }
            }
            catch
            {
                throw new AccessViolationException("User not a Authorized");
            }

            return(RedirectToAction("Index", "Home", new { userId }));
        }
Пример #2
0
        //GET: Project/Create
        public async Task <ActionResult> Create()
        {
            var userId          = User.GetUserIdAsGuid();
            var siteId          = User.GetUserSiteIdAsGuid();
            var draughtsmanRole = await _appRoleRepo.GetDraughtsmanRoleId(siteId);

            var draughtsmanRoleId = draughtsmanRole.Id;
            var draughtsmen       = await _appUserRoleRepo.GetAllDraughtsman(draughtsmanRoleId);

            //var draughtsmen = await _appUserRoleRepo.GetAllDraughtsman(siteId);

            List <DraughtsmanDDListViewModel> draftSelect = new List <DraughtsmanDDListViewModel> {
            };

            foreach (var draughtsman in draughtsmen)
            {
                var draftId   = draughtsman.UserId;
                var draftsman = await _siteUserManager.FindByIdAsync(draftId.ToString());

                var draftListItem = new DraughtsmanDDListViewModel
                {
                    DraughtsmanId = draftId.ToString(),
                    FirstName     = draftsman.FirstName,
                    LastName      = draftsman.LastName
                };
                draftSelect.Add(draftListItem);
            }
            try
            {
                if (User.IsInRole("Draughtsman") || User.IsInRole("Administrators"))
                {
                    var userEmail       = User.GetEmail();
                    var userDisplayName = User.GetEmail();
                    // var siteId = User.GetUserSiteIdAsGuid();

                    var draughtsmanSelect = draftSelect.Select(n => new SelectListItem
                    {
                        Text  = n.FirstName + " " + n.LastName,
                        Value = n.DraughtsmanId.ToString()
                    });

                    var allProperties = await _propertyrepo.GetAll();

                    var properties     = allProperties.ToList();
                    var propertySelect = properties.Select(n => new SelectListItem
                    {
                        Text  = n.PropertyERF_LotNo + " " + n.PropertyName,
                        Value = n.PropertyId.ToString()
                    });

                    CreateProjectViewModel createProjectVM = new CreateProjectViewModel
                    {
                        Properties  = propertySelect,
                        Draughtsmen = draughtsmanSelect
                    };
                    return(View(createProjectVM));
                }
                ;
            }
            catch
            {
                throw new AccessViolationException("User not a Authorized");
            }

            return(RedirectToAction("Index", "Home", new { userId }));
        }