| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- import BehaviorBase from '../framework/BehaviorBase';
- import DataModelManager from '../framework/DataModelManager';
- import ConstDefine from '../model/ConstDefine';
- export default class ShareBehavior extends BehaviorBase
- {
- constructor()
- {
- super();
- this.teamId = -1;
- this.teamMatchId = -1;
- this.roomId = -1;
- this.roomMatchId = -1;
- }
- //内部逻辑方法,外部不要直接调用
- _shareMessageToWX(shareParams, snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- var succ = false;
- window["wx"]["shareAppMessage"]({
- "withShareTicket": true,
- "title": shareParams["title"],
- "imageUrl": shareParams["image_url"],
- "query": shareParams['query'],
- "success": function (res) {
- succ = true;
- if(typeof(snsReportFunc) == "function") {
- snsReportFunc({"retCode": succ ? 0 : 1});
- }
- if (shareSuccessFunc) {
- console.log("shareAppMessage shareSuccessFunc");
- shareSuccessFunc(res, shareParams['query']);
- }
- console.log("shareAppMessage success end");
- },
- "fail": function () {
- console.log("shareAppMessage fail");
- succ = false;
- if(typeof(snsReportFunc) == "function") {
- snsReportFunc({"retCode": succ ? 0 : 1});
- }
- if (shareFailFunc) {
- shareFailFunc();
- }
- },
- "complete": function() {
- console.log("shareAppMessage complete succ:%s", succ ? "true" : "false");
- }
- });
- }
- //好友PK 其实是单人的
- shareFriendPKToWx(roomId,matchId,snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- if (roomId == null || matchId == null)
- {
- console.log("roomId == null || matchId == null:" + roomId + " " + matchId );
- return ;
- }
- if(CC_WECHATGAME)
- {
- this._wxUserInfo = DataModelManager.getModel('PlayerInfoModel').getSelfWXPlayerInfo();
- // var queryValue = {};
- // queryValue['method'] = ConstDefine.ShareMessage.shareType;
- // queryValue['wxPlayerInfo'] = this._wxUserInfo;
- // queryValue['roomId'] = roomId;
- // queryValue['matchId'] = matchId;
- // var queryStr = JSON.stringify(queryValue);
- var queryStr = 'method=' + ConstDefine.ShareFriendPKMessage.shareType+'&wxPlayerInfo=' + JSON.stringify(this._wxUserInfo)+'&roomId=' + roomId + '&matchId=' + matchId;
- console.log("query:" + queryStr);
- let shareParams = {};
- shareParams["title"] = ConstDefine.ShareFriendPKMessage.title;
- shareParams["image_url"] = ConstDefine.ShareFriendPKMessage.url;
- shareParams['query'] = queryStr
- this._shareMessageToWX(shareParams,snsReportFunc, shareSuccessFunc, shareFailFunc);
-
- }
- }
- //双人PK
- shareDoublePKToWx(teamId,matchId,snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- if (teamId == null || matchId == null)
- {
- console.log("teamId == null || matchId == null:" + teamId + " " + matchId );
- return ;
- }
- if(CC_WECHATGAME)
- {
- this._wxUserInfo = DataModelManager.getModel('PlayerInfoModel').getSelfWXPlayerInfo();
- // var queryValue = {};
- // queryValue['method'] = ConstDefine.ShareDoublePKMessage.shareType;
- // queryValue['wxPlayerInfo'] = this._wxUserInfo;
- // queryValue['roomId'] = roomId;
- // queryValue['matchId'] = matchId;
- // var queryStr = JSON.stringify(queryValue);
- var queryStr = 'method=' + ConstDefine.ShareDoublePKMessage.shareType+'&wxPlayerInfo=' + JSON.stringify(this._wxUserInfo)+'&teamId=' + teamId + '&matchId=' + matchId;
- console.log("query:" + queryStr);
- let shareParams = {};
- shareParams["title"] = ConstDefine.ShareDoublePKMessage.title;
- shareParams["image_url"] = ConstDefine.ShareDoublePKMessage.url;
- shareParams['query'] = queryStr
- this._shareMessageToWX(shareParams,snsReportFunc, shareSuccessFunc, shareFailFunc);
-
- }
- }
- shareGroupRankToWx(snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- if(CC_WECHATGAME)
- {
- this._wxUserInfo = DataModelManager.getModel('PlayerInfoModel').getSelfWXPlayerInfo();
- var queryStr = 'method=' + ConstDefine.ShareGroupRankMessage.shareType+'&wxPlayerInfo=' + JSON.stringify(this._wxUserInfo);
- console.log("query:" + queryStr);
- let shareParams = {};
- shareParams["title"] = ConstDefine.ShareGroupRankMessage.title;
- shareParams["image_url"] = ConstDefine.ShareGroupRankMessage.url;
- shareParams['query'] = queryStr
- this._shareMessageToWX(shareParams,snsReportFunc, shareSuccessFunc, shareFailFunc);
-
- }
- }
- //share honor
- shareHonorToWx(title, url, snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- if (CC_WECHATGAME)
- {
- this._wxUserInfo = DataModelManager.getModel('PlayerInfoModel').getSelfWXPlayerInfo();
- var queryStr = 'method=' + ConstDefine.ShareHonorMessage.shareType + '&wxPlayerInfo=' + JSON.stringify(this._wxUserInfo);
- console.log('query:' + queryStr);
- let shareParams = {};
- shareParams["title"] = title;
- shareParams["image_url"] = url;
- shareParams["query"] = queryStr;
- this._shareMessageToWX(shareParams, snsReportFunc, shareSuccessFunc, shareFailFunc);
- }
- }
- //share achievement
- shareACMToWx(url,snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- if (url == null)
- {
- console.log("url = null :");
- return ;
- }
- if(CC_WECHATGAME)
- {
- this._wxUserInfo = DataModelManager.getModel('PlayerInfoModel').getSelfWXPlayerInfo();
-
- var queryStr = 'method=' + ConstDefine.ShareACMMessage.shareType+'&wxPlayerInfo=' + JSON.stringify(this._wxUserInfo);
- console.log("query:" + queryStr);
- let shareParams = {};
- shareParams["title"] = ConstDefine.ShareACMMessage.title;
- shareParams["image_url"] = url;
- shareParams['query'] = queryStr
- this._shareMessageToWX(shareParams,snsReportFunc, shareSuccessFunc, shareFailFunc);
-
- }
- }
- //好友PK 其实是单人的
- shareFriendPKWx(snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- this.shareFriendPKToWx(this.roomId,this.roomMatchId,snsReportFunc, shareSuccessFunc, shareFailFunc);
-
- }
- //双人PK
- shareDoublePKWx(snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- this.shareDoublePKToWx(this.teamId,this.teamMatchId,snsReportFunc, shareSuccessFunc, shareFailFunc);
-
- }
-
- //群排行
- shareGroupRankWx(snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- this.shareGroupRankToWx(snsReportFunc, shareSuccessFunc, shareFailFunc)
- }
- //share achievement
- shareACMWx(snsReportFunc, shareSuccessFunc, shareFailFunc)
- {
- this.shareACMToWx(snsReportFunc, shareSuccessFunc, shareFailFunc)
- }
- setTeam(team_id,team_match_id)
- {
- this.teamId = team_id;
- this.teamMatchId = team_match_id;
- }
- setRoom(room_Id,room_match_id)
- {
- this.roomId = room_Id;
- this.roomMatchId = room_match_id;
- }
- }
|