130 lines
3.3 KiB
JavaScript
130 lines
3.3 KiB
JavaScript
"use strict";
|
|
cc._RF.push(module, '94ba9chjeJNGLzN8HD2NMWb', 'partner.clerk.mod');
|
|
// Scripts/mod/partner/partner.clerk.mod.js
|
|
|
|
"use strict";
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* 伙伴秘书组管理
|
|
*
|
|
*
|
|
*
|
|
* 2023.04.10
|
|
******************************************************************************/
|
|
|
|
var BridgeController = require("bridge.controller");
|
|
var RoleController = require("role_controller");
|
|
var PartnerClerkMod = cc.Class({
|
|
"extends": BridgeController,
|
|
// 初始化配置数据
|
|
initConfig: function initConfig() {
|
|
// 视图清理
|
|
this.reset();
|
|
|
|
// 全局支持
|
|
nx.bridge.clerks = this;
|
|
},
|
|
// 注册监听事件
|
|
registerEvents: function registerEvents() {},
|
|
// 注册协议接受事件
|
|
registerProtocals: function registerProtocals() {
|
|
// 获取秘书组信息
|
|
this.RegisterProtocal(10361, this.onFetchData.bind(this));
|
|
|
|
// 修改秘书组信息
|
|
this.RegisterProtocal(10362, this.onModifyData.bind(this));
|
|
|
|
// 修改当前展示的秘书
|
|
this.RegisterProtocal(10363, this.onShowChanged.bind(this));
|
|
},
|
|
// 从服务器初始化数据
|
|
reqBaseFromServer: function reqBaseFromServer(_cb) {
|
|
var _this = this;
|
|
// 配置加载
|
|
var cfgs = ["secretary_data" // 秘书组
|
|
];
|
|
|
|
this.loadConfigs(cfgs, function (_ret, _data) {
|
|
_this.reqFetch(_cb);
|
|
});
|
|
},
|
|
// 重置
|
|
reset: function reset(_list, _cur) {
|
|
nx.bridge.vset("clerkList", _list || []);
|
|
nx.bridge.vset("clerkShowId", _cur || "");
|
|
},
|
|
// 获取秘书组信息
|
|
reqFetch: function reqFetch(_cb) {
|
|
this.SendProtocal(10361, {}, _cb);
|
|
},
|
|
// REC: 获取秘书组信息
|
|
onFetchData: function onFetchData(_data) {
|
|
this.reset(_data.secretary_group, _data.current_resource_id);
|
|
},
|
|
// 修改秘书组信息
|
|
reqModify: function reqModify(_data, _cb) {
|
|
this.cbModify = _cb;
|
|
this.SendProtocal(10362, {
|
|
secretary_group: _data
|
|
});
|
|
},
|
|
// REC: 修改秘书组信息
|
|
onModifyData: function onModifyData(_data) {
|
|
console.log(_data);
|
|
|
|
// 失败
|
|
if (_data.code != 1) {
|
|
nx.tbox(_data.msg);
|
|
return;
|
|
}
|
|
this.reset(_data.secretary_group, _data.current_resource_id);
|
|
nx.dt.fnInvoke(this.cbModify, _data);
|
|
this.cbModify = null;
|
|
},
|
|
// 修改当前展示的秘书
|
|
reqActiveShow: function reqActiveShow(_cb) {
|
|
// 判空
|
|
var lst = nx.bridge.vget("clerkList");
|
|
if (nx.dt.arrEmpty(lst)) {
|
|
return;
|
|
}
|
|
|
|
// 唯一
|
|
var cur = nx.bridge.vget("clerkShowId");
|
|
if (lst.length == 1 && lst[0].resource_id == cur) {
|
|
nx.tbox("NeedSet");
|
|
return;
|
|
}
|
|
|
|
// 下一个
|
|
var idx = 0;
|
|
for (var i = 0; i < lst.length; ++i) {
|
|
if (lst[i].resource_id == cur) {
|
|
idx = i + 1;
|
|
break;
|
|
}
|
|
}
|
|
idx = (idx + lst.length) % lst.length;
|
|
this.cbActive = _cb;
|
|
this.SendProtocal(10363, {
|
|
resource_id: lst[idx].resource_id
|
|
});
|
|
},
|
|
// REC: 修改当前展示的秘书
|
|
onShowChanged: function onShowChanged(_data) {
|
|
console.log(_data);
|
|
|
|
// 失败
|
|
if (_data.code != 1) {
|
|
nx.tbox(_data.msg);
|
|
return;
|
|
}
|
|
nx.bridge.vset("clerkShowId", _data.current_resource_id);
|
|
nx.dt.fnInvoke(this.cbActive, _data);
|
|
this.cbActive = null;
|
|
}
|
|
});
|
|
module.exports = PartnerClerkMod;
|
|
|
|
cc._RF.pop(); |