コード例 #1
0
        public async Task <IActionResult> AddMember(string urlKey, [FromBody] AddOrganizationMemberModel model)
        {
            if (model.AccountId.Equals(Guid.Empty))
            {
                return(BadRequest());
            }

            var organization = await OrganizationService.GetByUrlKeyAsync(urlKey);

            if (organization == null)
            {
                return(BadRequest(BistroFiftyTwoError.Invalid("organization", urlKey)));
            }

            var member = await OrganizationService.GetMember(organization.ID, model.AccountId);

            if (member != null)
            {
                return(StatusCode((int)HttpStatusCode.Conflict));
            }

            var createdBy = await SecurityService.GetCurrentUserName();

            var newMember = new OrganizationMember
            {
                OrganizationId   = organization.ID,
                AccountId        = model.AccountId,
                AccessLevel      = 1,
                CreatedBy        = createdBy,
                MembershipStatus = 1,
                ModifiedBy       = createdBy
            };

            await OrganizationService.AddMember(newMember);

            return(Ok());
        }