public ResultDto SendInvitation(InviteMemberBm bm)
        {
            var vService = this.vehicleService.GetVehiceService(bm.Id);

            if (vService == null)
            {
                return(new ResultDto("Cannot send membership invitation!"));
            }

            var isSame = vService.ServiceMembers
                         .FirstOrDefault(x => x.IsVehicleServiceOwner).ApplicationUser.Email == bm.MemberEmail;

            if (isSame)
            {
                return(new ResultDto("Cannot send membership invitation!"));
            }

            var membershipInvitation = new MembershipInvitation()
            {
                VehicleServiceId   = bm.Id,
                VehicleServiceName = vService.Name,
                MemberEmail        = bm.MemberEmail
            };

            bool isAdded = this.vehicleService.AddMembershipInvitation(membershipInvitation);

            if (!isAdded)
            {
                return(new ResultDto("Cannot send membership invitation!"));
            }

            return(null);
        }
Example #2
0
        public ActionResult Invite(InviteMemberBm bm)
        {
            if (!this.ModelState.IsValid)
            {
                return(new JsonResult()
                {
                    Data = new ResultDto("Invalid email format!")
                });
            }

            // membership invitation
            ResultDto result = this.vehicleServiceManager.SendInvitation(bm);

            if (result != null)
            {
                return(new JsonResult()
                {
                    Data = result
                });
            }

            return(new JsonResult()
            {
                Data = new ResultDto(null, true)
            });
        }