public RestfulResult Destroy(FormCollection formCollection, LikeDestroyRequest request, int?authuid, UserModel authUser) { request.AuthUid = authuid.Value; request.AuthUser = authUser; return(new RestfulResult { Data = this._likeDataService.Destroy(request) }); }
/// <summary> /// 删除喜欢 /// </summary> /// <param name="request"></param> /// <returns></returns> public ExecuteResult <LikeCoutomerResponse> Destroy(LikeDestroyRequest request) { if (request == null) { return(new ExecuteResult <LikeCoutomerResponse>(null) { StatusCode = StatusCode.ClientError, Message = "参数错误" }); } var likeEntity = _likeRepository.GetItem(request.AuthUid, request.LikedUserId); if (likeEntity == null) { return(new ExecuteResult <LikeCoutomerResponse>(null) { StatusCode = StatusCode.ClientError, Message = "参数错误" }); } //当前请求的用户是被关注的人 但不是发起喜欢的用户 if (likeEntity.LikeUserId != request.AuthUid && likeEntity.LikedUserId == request.AuthUid) { return(new ExecuteResult <LikeCoutomerResponse>(null) { StatusCode = StatusCode.ClientError, Message = "您不能删除关注您的用户" }); } //当前请求的用户 != 发起喜欢的用户 if (likeEntity.LikeUserId != request.AuthUid) { return(new ExecuteResult <LikeCoutomerResponse>(null) { StatusCode = StatusCode.ClientError, Message = "您不能删除其他用户的关注" }); } this._likeRepository.Delete(likeEntity); //TODO:LIKED -- this._userService.LikeSubtract(request.AuthUid, likeEntity.LikedUserId); return(new ExecuteResult <LikeCoutomerResponse>(MappingManager.LikeInfoResponseMapping(likeEntity, LikeType.ILike))); }