public static Minutz.Models.ViewModels.MeetingViewModel ToViewModel(this Minutz.Models.Entities.Meeting entity) { var result = new Minutz.Models.ViewModels.MeetingViewModel { Id = entity.Id.ToString(), Name = entity.Name, Date = entity.Date, Duration = entity.Duration, IsFormal = entity.IsFormal, IsLocked = entity.IsLocked, IsPrivate = entity.IsPrivate, IsRecurrence = entity.IsReacurance, MeetingOwnerId = entity.MeetingOwnerId, Status = entity.Status, Outcome = entity.Outcome, Purpose = entity.Purpose, RecurrenceType = int.Parse(entity.ReacuranceType), Tag = entity.Tag.Split(',').ToList(), Time = entity.Time, TimeZone = entity.TimeZone, UpdatedDate = DateTime.UtcNow }; _defaultValues(result); return(result); }
public MeetingMessage UpdateMeeting(Minutz.Models.Entities.Meeting meeting, AuthRestModel user) { var instanceConnectionString = _applicationSetting.CreateConnectionString(_applicationSetting.Server, _applicationSetting.Catalogue, user.InstanceId, _applicationSetting.GetInstancePassword(user.InstanceId)); return(_userManageMeetingRepository.Update(meeting, user.InstanceId, instanceConnectionString)); }
/// <summary> /// Invite a attendee /// Validate the attendee is new, alternatively update reference to the new instance if required /// </summary> /// <param name="user" typeof="AuthRestModel">The current user / owner</param> /// <param name="invitee" typeof="MeetingAttendee">The new attendee</param> /// <param name="meeting" typeof="Minutz.Models.Entities.Meeting">The meeting entity for the invitation</param> /// <returns typeof="MessageBase">Result if was successful</returns> public MessageBase InviteUser(AuthRestModel user, MeetingAttendee invitee, Minutz.Models.Entities.Meeting meeting) { var validEmail = _emailValidationService.Valid(invitee.Email); if (!validEmail) { return new MessageBase { Condition = false, Message = $"{invitee.Email} is a invalid email address." } } ; if (meeting.Id == Guid.Empty || string.IsNullOrEmpty(meeting.Name)) { return new MessageBase { Condition = false, Message = "Meeting is invalid." } } ; var instanceConnectionString = _applicationSetting.CreateConnectionString(_applicationSetting.Server, _applicationSetting.Catalogue, user.InstanceId, _applicationSetting.GetInstancePassword(user.InstanceId)); var masterConnectionString = _applicationSetting.CreateConnectionString(); var userValidation = _userRepository.CheckIfNewUser(invitee.Email, invitee.ReferenceId.ToString(), user.InstanceId, instanceConnectionString, masterConnectionString); switch (userValidation.Code) { case 1: //create person var createPersonResult = _userRepository.CreatePerson(invitee, masterConnectionString); if (!createPersonResult.Condition) { return(new MessageBase { Condition = createPersonResult.Condition, Message = createPersonResult.Message, Code = createPersonResult.Code }); } var createPersonAvailableResult = _availabilityRepository.CreateAvailableAttendee(invitee, user.InstanceId, instanceConnectionString); if (!createPersonAvailableResult.Condition) { var message = $"Person was created but there was a issue with creating available attendee. \n {createPersonAvailableResult.Message}"; return(new MessageBase { Condition = createPersonAvailableResult.Condition, Message = message, Code = createPersonAvailableResult.Code }); } var createPersonAttendeeResult = _attendeeRepository.AddAttendee(invitee.ReferenceId, invitee, user.InstanceId, instanceConnectionString); if (!createPersonAttendeeResult.Condition) { var message = $"Person was created, and available attendee was created, but there was a issue with adding to meeting attendee. \n {createPersonAttendeeResult.Message}"; return(new MessageBase { Condition = createPersonAttendeeResult.Condition, Message = message, Code = createPersonAttendeeResult.Code }); } break; case 2: //create available var createAvailableResult = _availabilityRepository.CreateAvailableAttendee(invitee, user.InstanceId, instanceConnectionString); if (!createAvailableResult.Condition) { return(new MessageBase { Condition = createAvailableResult.Condition, Message = createAvailableResult.Message, Code = createAvailableResult.Code }); } var createAvailableAttendeeResult = _attendeeRepository.AddAttendee(invitee.ReferenceId, invitee, user.InstanceId, instanceConnectionString); if (!createAvailableAttendeeResult.Condition) { var message = $"Available attendee was created, but there was a issue with adding to meeting attendee. \n {createAvailableAttendeeResult.Message}"; return(new MessageBase { Condition = createAvailableAttendeeResult.Condition, Message = message, Code = createAvailableAttendeeResult.Code }); } break; case 3: //create meeting attendee var createAttendeeResult = _attendeeRepository.AddAttendee(invitee.ReferenceId, invitee, user.InstanceId, instanceConnectionString); if (!createAttendeeResult.Condition) { var message = $"There was a issue with adding to meeting attendee. \n {createAttendeeResult.Message}"; return(new MessageBase { Condition = createAttendeeResult.Condition, Message = message, Code = createAttendeeResult.Code }); } break; } return(new MessageBase { Condition = true, Message = "Successful" }); }