public void AddMember(int inviterId, AddGroupMemberRequestModel model) { if (!model.GroupId.HasValue) { throw new OrgException("Invalid group Id"); } if (!model.MemberId.HasValue) { throw new OrgException("Invalid member Id"); } using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString)) { if (!dbc.Members.Any(r => (r.Id.Equals(model.MemberId.Value)))) { throw new OrgException("Member not found"); } if (!dbc.Groups.Any(r => (r.Id.Equals(model.GroupId.Value)))) { throw new OrgException("Group not found"); } if (dbc.GroupMembers.Any(r => r.GroupId.Equals(model.GroupId.Value) && r.MemberId.Equals(model.MemberId.Value))) { throw new OrgException("Already in group"); } try { dbc.GroupMembers.Add(new OrgComm.Data.Models.GroupMember { GroupId = model.GroupId.Value, InviterMemberId = inviterId, MemberId = model.MemberId.Value, JoinedDate = DateTime.Now, JoinedStatus = (int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Invited }); dbc.SaveChanges(); } catch (System.Exception ex) { throw new OrgException("Cannot member to group", ex); } } }
public ResultModel AddGroupMember(AddGroupMemberRequestModel param) { ResultModel result = new ResultModel(); try { int?memberId = IdentityHelper.GetMemberId(); if (!memberId.HasValue) { throw new OrgException("Invalid MemberId"); } GroupBL bl = new GroupBL(); bl.AddMember(memberId.Value, param); result.Status = true; result.Message = "Invited member"; } catch (OrgException oex) { result.Status = false; result.Message = oex.Message; } catch (Exception ex) { result.Status = false; result.Message = AppConfigs.InternalErrorMessage; if (AppConfigs.DebugInternalMessage) { result.InternalMessage = ex.Message; } } return(result); }