﻿/*                 ECS应用平台客户端脚本库
* 
* **************************************************************
* **************************************************************
* **************************************************************
* 
* Sources:
*     API version: 1.0
*     Documentation version: 1.0
* 
* EcsServerApi is Copyright (c) ECS (ecs_cn)
*/

var EcsServerApi = function (servericeUrl) {

    //服务地址
    this.Api_Server = servericeUrl;

    this.GetSiteArticleListForAsync = function (pageIndex, pageSize, categoryId, categoryGroupId, articleNature, articleFrom, articleType, moreMenuId, newsMenuId, callback) {
        /// <summary>
        /// GetSiteArticleListForAsync(pageIndex, pageSize, categoryId, categoryGroupId, articleNature, articleFrom, articleType, moreMenuId, newsMenuId, callback) - 异步获取门户文章列表
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="pageIndex">
        /// pageIndex - 要获取文章列表页码   
        /// </param>
        /// <param name="pageSize">
        /// pageSize - 文章列表每页文章数
        /// </param>
        /// <param name="categoryId">
        /// categoryId - 文章类别ID
        /// </param>
        /// <param name="categoryGroupId">
        /// categoryGroupId - 文章类别组ID
        /// </param>
        /// <param name="articleNature">
        /// articleNature - 1为最新文章；2为推荐文章
        /// </param>
        /// <param name="articleFrom">
        /// articleFrom - 0从文章类别中获取；1从文章类别组中获取
        /// </param>
        /// <param name="articleType">
        /// articleType - 0为所有文章；1为图片文章+视频文章；2为图片文章；3为视频文章
        /// </param>
        /// <param name="moreMenuId">
        /// moreMenuId - 更多页模板ID
        /// </param>
        /// <param name="newsMenuId">
        /// newsMenuId - 文章内容页模板ID
        /// </param>
        /// <param name="callback">
        /// callback - 结果返回调用方法   
        /// </param>
        jQuery.ajax({
            type: "POST",
            contentType: "application/json",
            data: "{ pageIndex:'" + pageIndex + "', pageSize:'" + pageSize + "',categoryId:'" + categoryId + "',categoryGroupId:'" + categoryGroupId + "',articleNature:'" + articleNature + "',articleFrom:'" + articleFrom + "',articleType:'" + articleType + "',moreMenuId:'" + moreMenuId + "',newsMenuId:'" + newsMenuId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSystemArticleList",
            success: function (result) {
                callback(result.d);
            }
        });
    }

    this.GetSiteArticleList = function (pageIndex, pageSize, categoryId, categoryGroupId, articleNature, articleFrom, articleType, moreMenuId, newsMenuId) {
        /// <summary>
        /// GetSiteArticleList(pageIndex, pageSize, categoryId, categoryGroupId, articleNature, articleFrom, articleType, moreMenuId, newsMenuId) - 同步获取门户文章列表
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="pageIndex">
        /// pageIndex - 要获取文章列表页码   
        /// </param>
        /// <param name="pageSize">
        /// pageSize - 文章列表每页文章数
        /// </param>
        /// <param name="categoryId">
        /// categoryId - 文章类别ID
        /// </param>
        /// <param name="categoryGroupId">
        /// categoryGroupId - 文章类别组ID
        /// </param>
        /// <param name="articleNature">
        /// articleNature - 1为最新文章；2为推荐文章
        /// </param>
        /// <param name="articleFrom">
        /// articleFrom - 0从文章类别中获取；1从文章类别组中获取
        /// </param>
        /// <param name="articleType">
        /// articleType - 0为所有文章；1为图片文章+视频文章；2为图片文章；3为视频文章
        /// </param>
        /// <param name="moreMenuId">
        /// moreMenuId - 更多页模板ID
        /// </param>
        /// <param name="newsMenuId">
        /// newsMenuId - 文章内容页模板ID
        /// </param>    
        var obj;
        jQuery.ajax({
            type: "POST",
            async: false,
            contentType: "application/json",
            data: "{ pageIndex:'" + pageIndex + "', pageSize:'" + pageSize + "',categoryId:'" + categoryId + "',categoryGroupId:'" + categoryGroupId + "',articleNature:'" + articleNature + "',articleFrom:'" + articleFrom + "',articleType:'" + articleType + "',moreMenuId:'" + moreMenuId + "',newsMenuId:'" + newsMenuId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSystemArticleList",
            success: function (result) {
                obj = result.d;
            }
        });
        return obj;
    }

    this.GetSiteArticleInfoForAsync = function (articleId, callback) {
        /// <summary>
        /// GetSiteArticleInfoForAsync(articleId,callback) - 异步获取门户文章详细信息
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="articleId">
        /// articleId - 门户文章ID
        /// </param>       
        /// <param name="callback">
        /// callback - 结果返回调用方法   
        /// </param>      
        jQuery.ajax({
            type: "POST",
            contentType: "application/json",
            data: "{ articleId:'" + articleId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSystemArticleInfo",
            success: function (result) {
                callback(result.d);
            }
        });
    }

    this.GetSiteArticleInfo = function (articleId) {
        /// <summary>
        /// GetSiteArticleInfo(articleId) - 同步获取门户文章详细信息
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="articleId">
        /// articleId - 门户文章ID
        /// </param>       
        var obj;
        jQuery.ajax({
            type: "POST",
            async: false,
            contentType: "application/json",
            data: "{ articleId:'" + articleId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSystemArticleInfo",
            success: function (result) {
                obj = result.d;
            }
        });
        return obj;
    }

    this.GetVideoListForAsync = function (pageIndex, pageSize, categoryId, rankStr, type, newsMenuId, isInSide, callback) {
        /// <summary>
        /// GetVideoListForAsync(pageIndex, pageSize, categoryId, rankStr, type, newsMenuId, isInSide, callback) - 异步获取视频列表
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="pageIndex">
        /// pageIndex - 要获取视频列表页码   
        /// </param>
        /// <param name="pageSize">
        /// pageSize - 视频列表每页文章数
        /// </param>
        /// <param name="categoryId">
        /// categoryId - 视频类别ID
        /// </param>
        /// <param name="rankStr">
        /// rankStr - 视频排序字段：createTime（最新发布）、playCount(最多播放)、commentCount(最多评论)、favoriteCount（最多收藏）、quoteCount（最多引用）、topCount（用户推荐）、averageScore（最高评分）
        /// </param>
        /// <param name="type">
        /// type - 0为全部；1为今日；2为本周；3为本月
        /// </param>
        /// <param name="newsMenuId">
        /// newsMenuId - 内容页模板
        /// </param>
        /// <param name="isInSide">
        /// isInSide - 1为内部视频
        /// </param>       
        /// <param name="callback">
        /// callback - 结果返回调用方法   
        /// </param>
        jQuery.ajax({
            type: "POST",
            contentType: "application/json",
            data: "{ pageIndex:'" + pageIndex + "', pageSize:'" + pageSize + "',categoryId:'" + categoryId + "',rankStr:'" + rankStr + "',type:'" + type + "',newsMenuId:'" + newsMenuId + "',isInSide:'" + isInSide + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetVideoList",
            success: function (result) {
                callback(result.d);
            }
        });
    }

    this.GetVideoList = function (pageIndex, pageSize, categoryId, rankStr, type, newsMenuId, isInSide) {
        /// <summary>
        /// GetVideoList(pageIndex, pageSize, categoryId, rankStr, type, newsMenuId, isInSide) - 同步获取视频列表
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="pageIndex">
        /// pageIndex - 要获取视频列表页码   
        /// </param>
        /// <param name="pageSize">
        /// pageSize - 视频列表每页文章数
        /// </param>
        /// <param name="categoryId">
        /// categoryId - 视频类别ID
        /// </param>
        /// <param name="rankStr">
        /// rankStr - 视频排序字段：createTime（最新发布）、playCount(最多播放)、commentCount(最多评论)、favoriteCount（最多收藏）、quoteCount（最多引用）、topCount（用户推荐）、averageScore（最高评分）
        /// </param>
        /// <param name="type">
        /// type - 0为全部；1为今日；2为本周；3为本月
        /// </param>
        /// <param name="newsMenuId">
        /// newsMenuId - 内容页模板
        /// </param>
        /// <param name="isInSide">
        /// isInSide - 1为内部视频
        /// </param>  
        var obj;
        jQuery.ajax({
            type: "POST",
            async: false,
            contentType: "application/json",
            data: "{ pageIndex:'" + pageIndex + "', pageSize:'" + pageSize + "',categoryId:'" + categoryId + "',rankStr:'" + rankStr + "',type:'" + type + "',newsMenuId:'" + newsMenuId + "',isInSide:'" + isInSide + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetVideoList",
            success: function (result) {
                obj = result.d;
            }
        });
        return obj;
    }

    this.GetVideoInfoForAsync = function (videoId, callback) {
        /// <summary>
        /// GetVideoInfoForAsync(videoId,callback) - 异步获取视频详细信息
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="videoId">
        /// videoId - 视频ID
        /// </param>       
        /// <param name="callback">
        /// callback - 结果返回调用方法   
        /// </param>      
        jQuery.ajax({
            type: "POST",
            contentType: "application/json",
            data: "{ videoId:'" + videoId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetVideoInfo",
            success: function (result) {
                callback(result.d);
            }
        });
    }

    this.GetVideoInfo = function (videoId) {
        /// <summary>
        /// GetVideoInfo(videoId) - 同步获取视频详细信息
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="videoId">
        /// videoId - 视频ID
        /// </param>   
        var obj;
        jQuery.ajax({
            type: "POST",
            async: false,
            contentType: "application/json",
            data: "{ videoId:'" + videoId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetVideoInfo",
            success: function (result) {
                obj = result.d;
            }
        });
        return obj;
    }

    this.GetSubSiteArticleListForAsync = function (subSiteId, pageIndex, pageSize, categoryId, moreMenuId, categoryGroupId, articleNature, articleFrom, articleType, callback) {
        /// <summary>
        /// GetSubSiteArticleListForAsync(subSiteId, pageIndex, pageSize, categoryId, moreMenuId, categoryGroupId, articleNature, articleFrom, articleType, callback) - 异步获取子网站文章列表
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="subSiteId">
        /// subSiteId - 子网站ID   
        /// </param>
        /// <param name="pageIndex">
        /// pageIndex - 要获取文章列表页码   
        /// </param>
        /// <param name="pageSize">
        /// pageSize - 文章列表每页文章数
        /// </param>
        /// <param name="categoryId">
        /// categoryId - 文章类别ID
        /// </param>
        /// <param name="subSiteId">
        /// subSiteId - 更多页模板ID
        /// </param>
        /// <param name="categoryGroupId">
        /// categoryGroupId - 文章类别组ID
        /// </param>
        /// <param name="articleNature">
        /// articleNature - 1为最新文章；2为推荐文章
        /// </param>
        /// <param name="articleFrom">
        /// articleFrom - 0为从文章类别；1为从文章类别组
        /// </param>      
        /// <param name="articleType">
        /// articleType - 0为所有文章；1为图片文章+视频文章；2图片文章；3为视频文章
        /// </param>       
        /// <param name="callback">
        /// callback - 结果返回调用方法   
        /// </param>
        jQuery.ajax({
            type: "POST",
            contentType: "application/json",
            data: "{ subSiteId:'" + subSiteId + "',pageIndex:'" + pageIndex + "', pageSize:'" + pageSize + "',subSiteArticleCategoryId:'" + categoryId + "',moreMenuId:'" + moreMenuId + "',categoryGroupId:'" + categoryGroupId + "',articleNature:'" + articleNature + "',articleFrom:'" + articleFrom + "',articleType:'" + articleType + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSubSiteArticleList",
            success: function (result) {
                callback(result.d);
            }
        });
    }

    this.GetSubSiteArticleList = function (subSiteId, pageIndex, pageSize, categoryId, moreMenuId, categoryGroupId, articleNature, articleFrom, articleType) {
        /// <summary>
        /// GetSubSiteArticleList(subSiteId, pageIndex, pageSize, categoryId, moreMenuId, categoryGroupId, articleNature, articleFrom, articleType) - 同步获取子网站文章列表
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="subSiteId">
        /// subSiteId - 子网站ID   
        /// </param>
        /// <param name="pageIndex">
        /// pageIndex - 要获取文章列表页码   
        /// </param>
        /// <param name="pageSize">
        /// pageSize - 文章列表每页文章数
        /// </param>
        /// <param name="categoryId">
        /// categoryId - 文章类别ID
        /// </param>
        /// <param name="subSiteId">
        /// subSiteId - 更多页模板ID
        /// </param>
        /// <param name="categoryGroupId">
        /// categoryGroupId - 文章类别组ID
        /// </param>
        /// <param name="articleNature">
        /// articleNature - 1为最新文章；2为推荐文章
        /// </param>
        /// <param name="articleFrom">
        /// articleFrom - 0为从文章类别；1为从文章类别组
        /// </param>      
        /// <param name="articleType">
        /// articleType - 0为所有文章；1为图片文章+视频文章；2图片文章；3为视频文章
        /// </param>    
        var obj;
        jQuery.ajax({
            type: "POST",
            async: false,
            contentType: "application/json",
            data: "{ subSiteId:'" + subSiteId + "',pageIndex:'" + pageIndex + "', pageSize:'" + pageSize + "',subSiteArticleCategoryId:'" + categoryId + "',moreMenuId:'" + moreMenuId + "',categoryGroupId:'" + categoryGroupId + "',articleNature:'" + articleNature + "',articleFrom:'" + articleFrom + "',articleType:'" + articleType + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSubSiteArticleList",
            success: function (result) {
                obj = result.d;
            }
        });
        return obj;
    }

    this.GetSubSiteArticleInfoForAsync = function (articleId, callback) {
        /// <summary>
        /// GetSubSiteArticleInfoForAsync(articleId,callback) - 异步获取子网站文章详细信息
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="articleId">
        /// articleId - 文章ID
        /// </param>       
        /// <param name="callback">
        /// callback - 结果返回调用方法   
        /// </param>      
        jQuery.ajax({
            type: "POST",
            contentType: "application/json",
            data: "{ articleId:'" + articleId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSubSiteArticleInfo",
            success: function (result) {
                callback(result.d);
            }
        });
    }

    this.GetSubSiteArticleInfo = function (articleId) {
        /// <summary>
        /// GetSubSiteArticleInfo(articleId) - 同步获取子网站文章详细信息
        /// </summary>
        /// <returns type="Object"></returns>
        /// <param name="articleId">
        /// articleId - 文章ID
        /// </param>   
        var obj;
        jQuery.ajax({
            type: "POST",
            async: false,
            contentType: "application/json",
            data: "{ articleId:'" + articleId + "'}",
            dataType: "json",
            url: this.Api_Server + "/GetSubSiteArticleInfo",
            success: function (result) {
                obj = result.d;
            }
        });
        return obj;
    }
}

var EcsServerApi = new EcsServerApi("/Service/EcsServer.asmx");
