Exemplo n.º 1
0
        public RepositoryActionResult <MemberMerge> MergeMembers(MemberMerge memberMerge)
        {
            try
            {
                var paramz = new List <SqlParameter>();
                paramz.Add(new SqlParameter("sourceMemberId", memberMerge.SourceMemberId));
                paramz.Add(new SqlParameter("targetMemberId", memberMerge.TargetMemberId));


                Func <SqlDataReader, int> readFx = (reader) =>
                {
                    return((int)reader["success"]);
                };

                var success = _executor.ExecuteSql <int>("MergeMembers", CommandType.StoredProcedure, paramz, readFx);

                if (success.FirstOrDefault() > 0)
                {
                    return(new RepositoryActionResult <MemberMerge>(memberMerge, RepositoryActionStatus.Ok));
                }
                else
                {
                    return(new RepositoryActionResult <MemberMerge>(memberMerge, RepositoryActionStatus.Error));
                }
            }
            catch (Exception ex)
            {
                return(new RepositoryActionResult <MemberMerge>(memberMerge, RepositoryActionStatus.Error, ex));
            }
        }
Exemplo n.º 2
0
        public IHttpActionResult MergeMembers(MemberMerge memberMerge)
        {
            try
            {
                if (memberMerge == null)
                {
                    return(BadRequest());
                }

                var result = _repository.MergeMembers(memberMerge);

                if (result.Status == RepositoryActionStatus.Ok)
                {
                    return(Ok(result.Entity));
                }
                else if (result.Status == RepositoryActionStatus.NotFound)
                {
                    return(NotFound());
                }

                return(BadRequest());
            }
            catch (Exception ex)
            {
                ErrorHelper.ProcessError(_logger, ex, nameof(Post));

                return(InternalServerError());
            }
        }