/** 
    @ Name : Careff Javascript Library 
    @ Author : 
    @ Date : 2017-5-1
    @ Email : 
    @ Version : 1.0 
    @ Update : 
    功能： 开始建立自己的JS类库，需要按照功能进行分类；
     */
(function () {
    if (!window.usechart) {
        window.usechart = {};
    };
    window.usechart = {
        NAME: "usechart",
        VERSION: '1.0',
        DATE: '2018-01-03',
        INDEX: 10,
        USColorList: function () {
            //var colorList = ['#C1232B', '#B5C334', '#FCCE10', '#E87C25', '#27727B',
            //               '#FE8463', '#9BCA63', '#FAD860', '#F3A43B', '#60C0DD',
            //               '#D7504B', '#C6E579', '#F4E001', '#F0805A', '#26C0C0'];


            var colorList = ['#7cb5ec', '#434348', '#90ed7d', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#8085e8', '#8d4653', '#91e8e1'];

            return colorList;
        },
        GetColorUse: function (i) {
            var colorList = ['#ff0000', '#FFDC28', '#3AEE06', '#00B508', '#035D29'];
            return colorList[i % 5];
        },
        GetColorRemain: function (i) {

            var colorList = ['#035D29', '#00B508', '#3AEE06', '#FFDC28', '#ff0000'];
            return colorList[i % 5];
        },
        UsHightChartOption: function (option) {
            option.xAxis.axisLabel = {
                //interval: 0,//标签设置为全部显示
                formatter: function (params) {
                    var newParamsName = "";// 最终拼接成的字符串
                    var paramsNameNumber = params.length;// 实际标签的个数
                    var provideNumber = 4;// 每行能显示的字的个数
                    var rowNumber = Math.ceil(paramsNameNumber / provideNumber);// 换行的话，需要显示几行，向上取整
                    /**
                     * 判断标签的个数是否大于规定的个数， 如果大于，则进行换行处理 如果不大于，即等于或小于，就返回原标签
                     */
                    // 条件等同于rowNumber>1
                    if (paramsNameNumber > provideNumber) {
                        /** 循环每一行,p表示行 */
                        for (var p = 0; p < rowNumber; p++) {
                            var tempStr = "";// 表示每一次截取的字符串
                            var start = p * provideNumber;// 开始截取的位置
                            var end = start + provideNumber;// 结束截取的位置
                            // 此处特殊处理最后一行的索引值
                            if (p == rowNumber - 1) {
                                // 最后一次不换行
                                tempStr = params.substring(start, paramsNameNumber);
                            } else {
                                // 每一次拼接字符串并换行
                                tempStr = params.substring(start, end) + "\n";
                            }
                            newParamsName += tempStr;// 最终拼成的字符串
                        }

                    } else {
                        // 将旧标签的值赋给新标签
                        newParamsName = params;
                    }
                    //将最终的字符串返回
                    return newParamsName
                }
            }
        },
        UsHightChartOptionY: function (len) {
            var axisLabel = {
                //interval: 0,//标签设置为全部显示
                formatter: function (params) {
                    //console.debug("params=" + params);
                    var newParamsName = "";// 最终拼接成的字符串
                    var paramsNameNumber = params.length;// 实际标签的个数
                    var provideNumber = len;// 每行能显示的字的个数
                    var rowNumber = Math.ceil(paramsNameNumber / provideNumber);// 换行的话，需要显示几行，向上取整
                    /**
                     * 判断标签的个数是否大于规定的个数， 如果大于，则进行换行处理 如果不大于，即等于或小于，就返回原标签
                     */
                    // 条件等同于rowNumber>1
                    if (paramsNameNumber > provideNumber) {
                        /** 循环每一行,p表示行 */
                        for (var p = 0; p < rowNumber; p++) {
                            var tempStr = "";// 表示每一次截取的字符串
                            var start = p * provideNumber;// 开始截取的位置
                            var end = start + provideNumber;// 结束截取的位置
                            // 此处特殊处理最后一行的索引值
                            if (p == rowNumber - 1) {
                                // 最后一次不换行
                                tempStr = params.substring(start, paramsNameNumber);
                            } else {
                                // 每一次拼接字符串并换行
                                tempStr = params.substring(start, end) + "\n";
                            }
                            newParamsName += tempStr;// 最终拼成的字符串
                        }

                    } else {
                        // 将旧标签的值赋给新标签
                        newParamsName = params;
                    }
                    //将最终的字符串返回
                    return newParamsName
                }
            }
            return axisLabel;
        },
        GetColor: function (i) {
            var colorList = usechart.USColorList();
            return colorList[i % 10];
        }
    };

})();