Ejemplo n.º 1
0
        public ActionResult List()
        {
            MaintenanceRequestViewModel model = new MaintenanceRequestViewModel();

            model.Sites = _siteService.GetAll("").ToArray();
            return(View(model));
        }
Ejemplo n.º 2
0
        public ActionResult Add()
        {
            MaintenanceRequestViewModel model = new MaintenanceRequestViewModel();

            model.Id = 0;
            return(View(model));
        }
Ejemplo n.º 3
0
        public JsonResult GetMRForDashboard(int Id)
        {
            MaintenanceRequestViewModel model = new MaintenanceRequestViewModel();

            Data.Models.MaintenanceRequest objMR = this._mrServices.GetForId(Id);
            if (objMR != null)
            {
                model.Id          = objMR.Id;
                model.SerialNo    = objMR.SerialNo;
                model.RequestDate = objMR.RequestDate;
                TimeSpan rtime = objMR.RequestTime;
                model.RequestTime   = new DateTime() + rtime;
                model.Problem       = objMR.Problem;
                model.Description   = objMR.Description;
                model.IsBreakdown   = objMR.IsBreakdown;
                model.IsCritical    = objMR.IsCritical;
                model.PlantId       = objMR.PlantId;
                model.LineId        = objMR.LineId;
                model.MachineId     = objMR.MachineId;
                model.StatusId      = objMR.StatusId;
                model.PriorityId    = objMR.PriorityId;
                model.BreakdownType = objMR.BreakdownType;
                model.Remarks       = objMR.Remarks;
                model.Remarks       = objMR.Remarks;
                model.WorkStartDate = objMR.WorkStartDate;
                TimeSpan?starttime = objMR.WorkStartTime;
                model.WorkStartTime = new DateTime() + starttime;
                model.WorkEndDate   = objMR.WorkEndDate;
                TimeSpan?endtime = objMR.WorkEndTime;
                model.WorkEndTime = new DateTime() + endtime;
            }
            return(Json(model, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 4
0
        public ActionResult Update(int?Id)
        {
            MaintenanceRequestViewModel model = new MaintenanceRequestViewModel();

            model.Id = Id ?? 0;

            return(View(model));
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> New([FromBody] MaintenanceRequestViewModel value)
        {
            if (ModelState.IsValid)
            {
                return(Ok(await _maintenanceRequestsDataProvider.CreateAsync(User, value)));
            }

            return(BadRequest(new { Errors = ModelState.ToErrorCollection() }));
        }
Ejemplo n.º 6
0
        private async Task <Guid> GetPropertyDetailsIdAsync(ClaimsPrincipal user, MaintenanceRequestViewModel maintenanceRequest)
        {
            var userId = user.GetUserId();

            if (user.IsTenant())
            {
                return(await(from portfolio in Context.Portfolios.AsNoTracking()
                             join propertyDetails in Context.PropertyDetails on portfolio.Id equals propertyDetails.PortfolioId into propertyDetailsJoin
                             from property in propertyDetailsJoin
                             join tenancy in Context.Tenancies on property.Id equals tenancy.PropertyDetailsId into tenanciesJoin
                             from tenancyItem in tenanciesJoin
                             join tenantTenancy in Context.TenantTenancies on tenancyItem.Id equals tenantTenancy.TenancyId into tenantTenanciesJoin
                             from tenantTenancyItem in tenantTenanciesJoin
                             join tenant in Context.Tenants on tenantTenancyItem.TenantId equals tenant.Id
                             join applicationUser in Context.Users on tenant.ApplicationUserId equals applicationUser.Id
                             where applicationUser.Id == userId && !property.IsDeleted && !tenancyItem.IsDeleted && !tenantTenancyItem.IsDeleted && !tenant.IsDeleted
                             orderby tenancyItem.StartDate descending
                             select property.Id)
                       .FirstAsync());
            }
            return(maintenanceRequest.PropertyDetails.Id);
        }
Ejemplo n.º 7
0
        public async Task <MaintenanceRequestViewModel> UpdateMaintenanceRequestAsync(ClaimsPrincipal user, MaintenanceRequestViewModel maintenanceRequest)
        {
            var portfolioId = await GetPortfolioIdForUserAsync(user);

            var entity = await Context.MaintenanceRequests.Include(x => x.Entries).Include(x => x.PropertyDetails)
                         .SingleOrDefaultAsync(c => c.PropertyDetails.PortfolioId == portfolioId && c.Id == maintenanceRequest.Id);

            if (entity != null)
            {
                entity.MapFrom(maintenanceRequest);
                await Context.SaveChangesAsync();

                return(new MaintenanceRequestViewModel(entity, entity.Entries));
            }

            return(maintenanceRequest);
        }
Ejemplo n.º 8
0
        public async Task <MaintenanceRequestViewModel> CreateAsync(ClaimsPrincipal user, MaintenanceRequestViewModel maintenanceRequest)
        {
            var portfolioId = await GetPortfolioIdForUserAsync(user);

            var propertyDetailsId = await GetPropertyDetailsIdAsync(user, maintenanceRequest);

            var applicationUser = await user.GetApplicationUserAsync(Context);

            var entity = new MaintenanceRequest
            {
                Created           = DateTime.Now,
                Description       = maintenanceRequest.Description,
                Severity          = maintenanceRequest.Severity,
                Title             = maintenanceRequest.Title,
                PropertyDetailsId = propertyDetailsId
            };

            await Context.AddAsync(entity);

            await Context.SaveChangesAsync();

            var maintenanceEntryEntity = new MaintenanceEntry
            {
                Created = DateTime.Now,
                MaintenanceRequestId = entity.Id,
                Status = MaintenanceStatus.Open,
                UserId = applicationUser.Id
            };

            await Context.AddAsync(maintenanceEntryEntity);

            await Context.SaveChangesAsync();

            return(new MaintenanceRequestViewModel(entity, null)
            {
                Entries = new List <MaintenanceEntryViewModel>
                {
                    new MaintenanceEntryViewModel(maintenanceEntryEntity)
                    {
                        User = new ApplicationUserViewModel(applicationUser)
                    }
                }
            });
        }