public bool ProcessCarPart(string appUserId, AnswerBm bm) { var vehicleServiceEntity = this.vehicleService.GetAllVehicleServices() .FirstOrDefault(x => x.ServiceMembers.Any(m => m.ApplicationUser.Id == appUserId)); var carPartEntity = this.carService.GetCarPartById(bm.Id); if (vehicleServiceEntity == null || carPartEntity == null || carPartEntity.VehicleServiceId != vehicleServiceEntity.Id) { return(false); } if (bm.IsAccepted) { carPartEntity.IsSeenByVehicleService = true; carPartEntity.IsApprovedByVehicleService = true; carPartEntity.VehicleService = vehicleServiceEntity; carPartEntity.VehicleServiceId = vehicleServiceEntity.Id; vehicleServiceEntity.CarParts.Add(carPartEntity); } else { carPartEntity.IsSeenByVehicleService = true; } return(this.carService.Update()); }
public JsonResult ProcessServiceVote(AnswerBm bm) { if (bm.Id < 1 || string.IsNullOrWhiteSpace(bm.Message)) { return(new JsonResult() { Data = new ResultDto("Request contain invalid data!") }); } bool isProcessed = this.vehicleServiceManager.ProcessVote(bm, this.GetAppUserId); if (!isProcessed) { return(new JsonResult() { Data = new ResultDto("Cannot process the vote!") }); } int rating = this.vehicleServiceManager.GetRating(bm.Id); return(new JsonResult() { Data = new ResultDto(rating.ToString(), true) }); }
public JsonResult ProcessingServicedParts(AnswerBm bm) { if (bm.Id < 1) { return(new JsonResult() { Data = new ResultDto("Cannot process request!") }); } bool isProcessed = this.vehicleServiceManager.ProcessCarPart(this.GetAppUserId, bm); if (!isProcessed) { return(new JsonResult() { Data = new ResultDto("Cannot process request!") }); } var elementId = "#carpart-request-" + bm.Id; return(new JsonResult() { Data = new ResultDto(elementId, true) }); }
public JsonResult MembershipInvitation(AnswerBm bm) { if (!this.ModelState.IsValid) { return(new JsonResult() { Data = new ResultDto("Cannot process request!") }); } var appUserId = this.User.Identity.GetUserId(); bool isProccessed = this.myUserManager.ProcessMembershipInvitation(bm, appUserId); if (!isProccessed) { return(new JsonResult() { Data = new ResultDto("Cannot process request!") }); } var msg = "#membership-invitation-" + bm.Id; return(new JsonResult() { Data = new ResultDto(msg, true) });; }
public bool ProcessMembershipInvitation(AnswerBm bm, string appUserId) { var membershipInvitation = this.commonService.GetMembershipInvitationById(bm.Id); if (membershipInvitation == null) { return(false); } var user = this.userService.GetAllUsers().FirstOrDefault(x => x.ApplicationUser.Email == membershipInvitation.MemberEmail); if (user == null) { return(false); } // check is it same user or same invitation if (user.ApplicationUserId != appUserId) { return(false); } var vehicleServiceEntity = this.vehicleService.GetVehiceService(membershipInvitation.VehicleServiceId); if (vehicleServiceEntity == null) { return(false); } if (user.VehicleServiceId == vehicleServiceEntity.Id) { return(false); } if (bm.IsAccepted) { user.VehicleService = vehicleServiceEntity; user.VehicleServiceId = vehicleServiceEntity.Id; vehicleServiceEntity.ServiceMembers.Add(user); membershipInvitation.IsAccepted = true; membershipInvitation.IsDeleted = true; } else { membershipInvitation.IsAccepted = false; membershipInvitation.IsDeleted = true; } var isUpdated = this.userService.Update(); if (!isUpdated) { return(false); } return(true); }
public bool ProcessVote(AnswerBm bm, string appUserId) { var vsEntity = this.vehicleService.GetVehiceService(bm.Id); if (vsEntity == null) { return(false); } var serviceRating = vsEntity.ServiceRatings.FirstOrDefault(x => x.VehicleServiceId == vsEntity.Id && !x.IsDeleted && x.User.ApplicationUserId == appUserId); var user = this.userService.GetUserByAppId(appUserId); if (user == null) { return(false); } if (serviceRating != null) { serviceRating.IsDeleted = true; var isUpdated = this.vehicleService.Update(); if (!isUpdated) { return(false); } } var newServiceRating = new ServiceRating() { VehicleService = vsEntity, VehicleServiceId = vsEntity.Id, User = user, UserId = user.Id, IsPositive = bm.IsAccepted, Message = bm.Message }; vsEntity.ServiceRatings.Add(newServiceRating); bool isAdded = this.vehicleService.AddServiceRating(newServiceRating); if (!isAdded) { return(false); } return(true); }