| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418 | /** * Created by misszhou on 2016/5/17. */var GameAdmin = function(id, openid){    //活动ID    this.activity_id = id;    this.openid = openid;    this.poststart = false;    this.urls = {};    this.defaults = {};    this.defaults.dtime = 1250;    this.defaults.SUCESS_CODE = 200;    this.defaults.FAILURE_CODE = 400;    this.defaults.SERVER_ERROR = 500;    this.defaults.NO_PERMISSION = 401;    this.defaults.PAGE_NUMS = 10;    this.defaults.PAGE_MAX_NUMS = 50;    this.init();};/** * 弹框提示 * @param time * @param html * @param type * @private */GameAdmin.prototype._alert = function(html, type, time){    type = type || "1";    var html2='<div class="GameMsg">\				<div>\				'+html+'\				</div>\			</div>\			<div class="GameMsgBg"></div>';    switch(type){        case "1"://时间自动关闭            if($(".GameMsg").length!=0){                $(".GameMsg").show().find("div").html(html);            }else{                $("body").append(html2);            }            closefn(time);            break;        default:    }    function closefn(time){        time=time?time:1250;        setTimeout(function(){            $(".GameMsg,.GameMsgBg").remove();        },time)    }};GameAdmin.prototype.init = function(){    // post请求数据是否开始    this.poststart = false;    // 添加埋点    this.urls.buriedpoint = '/api/buriedpoint';// 埋点    this.urls.draw = '/api/draw';// 抽奖    this.urls.rankinglist = '/api/rankinglist';// 获取排行榜    this.urls.createranking = '/api/createranking';// 添加排行榜    this.urls.awardslist = '/api/awardslist';// 我的奖品列表    this.urls.awardsdetail = '/api/awardsdetail';// 奖品详细信息    this.urls.getpartake = '/api/getpartake';// 获取活动参与人数    this.urls.getfirst = '/api/first';// 根据活动ID获取最好的成绩    this.urls.myresult = '/api/myresult';// 获取我的最佳成绩    this.urls.createpricecollect = '/api/createpricecollect';// 添加兑奖码收藏    this.urls.mydrawnumber = '/api/mydrawnumber';// 我的抽奖次数};GameAdmin.prototype.mydrawnumber = function(data, callback){    // 我的抽奖次数    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'activity_id' : this.activity_id,        'openid' : this.openid    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.mydrawnumber, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.awardsdetail = function(data, callback){    // 奖品详细信息    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'activity_id' : this.activity_id,        'awards_id' : data.awards_id    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.awardsdetail, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.createpricecollect = function(data, callback){    // 添加兑奖码收藏    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'openid' : this.openid,        'prize_id' : data.prize_id    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.createpricecollect, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.myresult = function(data, callback){    // 获取我的最佳成绩    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'openid' : this.openid,        'id' : this.activity_id,// 活动ID        'type' : 'time' // 【score|time】    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.myresult, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.getfirst = function(data, callback){    // 根据活动ID获取最好的成绩    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'id' : this.activity_id,        'type' : 'time' // 【score|time】    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.getfirst, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.getpartake = function(data, callback){    // 获取活动参与人数    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'activity_id' : this.activity_id    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.getpartake, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.rankinglist = function(data, callback){    // 获取排行榜    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'id' : this.activity_id,        'type' : 'time' // 【score|time】    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.rankinglist, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.createranking = function(data, callback){    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'openid' : this.openid,        'activity_id' : this.activity_id,        'record_time' : data.record_time,        'record_score' : data.record_score    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    // 创建排行榜    $.post(this.urls.createranking, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            console.log($data);            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.myPrize = function(data, callback){    // 我的奖品    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'openid' : this.openid,        'activity_id' : this.activity_id    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.awardslist, _data, function($data){        _this.poststart = false;        if($data.status == _this.defaults.SUCESS_CODE){            var award = [];            $.each($data.data, function(key,item){                award.push({                    Prizeid : item.awards_id,                    PrizeName : item.award_desc,                    PrizeText : item.award_name,                    PrizeTime : item.award_time,                    PrizeStatus : item.status_str,                    PrizeCode : item.coupon_code                });            });            var metmsg={                data:award,                status:$data.status,                msg:$data.msg            };    //				Prizeid:2,//奖品id    //				PrizeName:"一等奖",//奖品名称    //				PrizeText:"价值50元礼品",//奖品名称    //				PrizeTime:"2015.05.02至2015.06.02",//有效时间    //				PrizeStatus:"未兑奖",//领取状态            if(typeof callback != 'undefined' && callback instanceof Function) {                callback(metmsg);            }        }else{            _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.draw = function(data, callback){    this.postPartake();    //用户抽奖    var _this = this;    var _data = {        '_token' : $('meta[name="_token"]').attr('content'),        'openid' : this.openid,        'score' : data.score,        'activity_id' : this.activity_id    };    if(_this.poststart != false){        // 已经开始了一个post请求,必须等到post完成之后再发送请求        return ;    }    _this.poststart = true;    $.post(this.urls.draw, _data, function($data){        _this.poststart = false;        var data = {};        if($data.status == _this.defaults.SUCESS_CODE){            var option = $data.data;            data = {                Resuletype:(option.status==2?1:0),//0=未中奖  1=中奖  2=次数用完了                Resuleid:(option.status==2?option.awardInfo.id:0),//奖品id                ResuleFrequency:option.today_sy_count,//今日剩余次数                ResuleLimitDrawTimes:option.more_is_limit_draw_times,//总体是否限制                ResuleTotalTimes:option.total_sy_count,//总体剩余次数                Resulenumber:option.partakeNum,//参与人数                ResuleName:(option.status==2?option.awardInfo.award_desc:''),//奖品等级                ResuleText:(option.status==2?option.awardInfo.award_name:''),//奖品名称                ResuleUrl:"http://img-staging.liweijia.com/liweijia/wap/weixinActivity/images/gift.png",//奖品图片            };            var metmsg={                data:data,                status:$data.status,                msg:$data.msg            };            if(typeof callback != 'undefined' && callback instanceof Function) {                callback(metmsg);            }        }else{                        _this._alert($data.msg);            callback($data);        }    });};GameAdmin.prototype.postView = function(){    // 记录浏览-埋点    this.postMaiDian('view', function(d){});};GameAdmin.prototype.postPartake = function(){    // 记录参与人数-埋点    this.postMaiDian('partake', function(d){});};GameAdmin.prototype.postAward = function(){    // 记录获奖-埋点    this.postMaiDian('award', function(d){});};GameAdmin.prototype.postConvert = function(){    // 记录兑奖-埋点    this.postMaiDian('convert', function(d){});};GameAdmin.prototype.postShare = function(){    // 记录分享-埋点    this.postMaiDian('share', function(d){});};GameAdmin.prototype.postMaiDian = function(topic, callback){    // 记录--埋点    var _this = this;    var data = {        '_token' : $('meta[name="_token"]').attr('content'),        'topic' : topic,        'openid' : this.openid,        'id' : this.activity_id    };    $.post(this.urls.buriedpoint, data, function($data){        if($data.status == _this.defaults.SUCESS_CODE){            if(typeof callback != 'undefined' && callback instanceof Function) {                callback($data);            }        }else{            callback($data);        }    }, 'json');};
 |