public ExecuteResult<ShowCustomerInfoResponse> GetShowCustomer(ShowCustomerRequest request)
        {
            if (request == null)
            {
                throw new ArgumentNullException("request");
            }

            var entity = _customerRepository.GetItem(request.UserId);

            if (entity == null)
            {
                return new ExecuteResult<ShowCustomerInfoResponse>(null);
            }

            var userModel = MappingManager.UserModelMapping(entity);

            var response = MappingManager.ShowCustomerInfoResponseMapping(userModel);

            if (request.CurrentAuthUser != null)
            {
                //取是否关注当前
                var likeEntity = _likeService.Get(request.CurrentAuthUser.Id, request.UserId);
                response.IsLiked = likeEntity != null;
            }
            return new ExecuteResult<ShowCustomerInfoResponse>(response);
        }
        public RestfulResult Daren(ShowCustomerRequest request, [FetchRestfulAuthUser(IsCanMissing = true, KeyName = Define.Token)]UserModel currentAuthUser)
        {
            request.CurrentAuthUser = currentAuthUser;

            var linq = _customerRepo.Get(u => u.Id == request.UserId)
                   .GroupJoin(_resourceRepo.Get(r => r.SourceType == (int)SourceType.CustomerThumbBackground),
                           o => o.Id,
                           i => i.SourceId,
                           (o, i) => new { C = o, RB = i })
                   .GroupJoin(_useraccountRepo.Get(ua => ua.Status != (int)DataStatus.Deleted),
                           o => o.C.Id,
                           i => i.User_Id,
                           (o, i) => new { C = o.C, RB = o.RB, UA = i });
            var response = from l in linq.ToList()
                           select new ShowCustomerInfoResponse().FromEntity<ShowCustomerInfoResponse>(l.C
                             , c =>
                             {
                                 var bgThum = l.RB.FirstOrDefault();
                                 if (bgThum != null)
                                 {
                                     c.BackgroundLogo_r = new ResourceInfoResponse().FromEntity<ResourceInfoResponse>(bgThum);
                                 }
                                 c.CountsFromEntity(l.UA);
                                 c.IsLiked = false;
                                 if (request.CurrentAuthUser != null)
                                 {
                                     var likeEntity = _likeRepo.Get(like=>like.LikeUserId==request.CurrentAuthUser.Id &&like.LikedUserId==request.UserId).FirstOrDefault();
                                     c.IsLiked = likeEntity != null;
                                 }

                             }); ;

            return new RestfulResult
            {
                Data = new ExecuteResult<ShowCustomerInfoResponse>(response.FirstOrDefault())
            };
        }
 public RestfulResult Show(ShowCustomerRequest request, [FetchRestfulAuthUser(IsCanMissing = true, KeyName = Define.Token)]UserModel currentAuthUser)
 {
     return Daren(request, currentAuthUser);
 }