加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

BI前端二次开发工具(作品1)

发布时间:2020-12-14 03:02:40 所属栏目:大数据 来源:网络整理
导读:1.这是二次开发工具 2.不同的配置将产生不同的布局,每个布局完成一项工作内容。 3.使用一个协调者消息控制器,布局管理器,请求管理器完成所有业务操作 4.消息控制器负责低耦合的消息分发,通知面板(消息管理器的子集)去做相应行为,面板接受到消息后根据面

1.这是二次开发工具

2.不同的配置将产生不同的布局,每个布局完成一项工作内容。

3.使用一个协调者消息控制器,布局管理器,请求管理器完成所有业务操作

4.消息控制器负责低耦合的消息分发,通知面板(消息管理器的子集)去做相应行为,面板接受到消息后根据面板自己所配置的功能类型发送消息给请求管理器,请求管理器负责ajax到后台获取业务数据,异步展现在相应面板。



消息机制




场景(应用,业务场景)




布局配置(一个JSON数据,配置一个工作内容)




每个面板是一个jQuery插件,组合成一个布局



配置出一个九宫格布局



劝诱功能的布局



消息管理器代码(当时用的VS,js代码格式化较差)




配置参数数据



消息管理器代码

//消息管理器 var MM = { ? ? msgQueue: new Diablo.Queue(),? ? //消息入队 ? ? enMsgQueue: function (message) { ? ? ? ? this.msgQueue.EnQueue(message); ? ? ? ? if (config.IsImdtExcMsg) { ? ? ? ? ? ? this.excuteMsgHead(true,false); ? ? ? ? } ? ? },? ? //执行消息 ? ? excuteMsgHead: function (isDequeue,isPrintQHead) { ? ? ? ? var thisMsg = this.msgQueue.GetHead(); ? ? ? ? if (isDequeue) { ? ? ? ? ? ? this.msgQueue.DeQueue(); ? ? ? ? } ? ? ? ? try { ? ? ? ? ? ? if (config.LogConfig.level >= 1 && config.LogConfig.isLogInfo) { ? ? ? ? ? ? ? ? var msgNeedPrint = Diablo.cloneJSON(thisMsg); ? ? ? ? ? ? ? ? if (!config.LogConfig.isLogContent) { ? ? ? ? ? ? ? ? ? ? var delParamjson = msgNeedPrint.paramjson; ? ? ? ? ? ? ? ? ? ? msgNeedPrint.paramjson = { '提示': '设置未显示' }; ? ? ? ? ? ? ? ? ? ? Diablo.printLog('消息',false,'CM',JSON.stringify(msgNeedPrint)); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? else { ? ? ? ? ? ? ? ? ? ? var delParamjson = msgNeedPrint.paramjson; ? ? ? ? ? ? ? ? ? ? msgNeedPrint.paramjson = { '提示': '在Post数据中显示' }; ? ? ? ? ? ? ? ? ? ? Diablo.printLog('消息',JSON.stringify(msgNeedPrint),'Post数据',JSON.stringify(delParamjson)); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? catch (err) { ? ? ? ? ? ? if (config.LogConfig.level >= 4 && config.LogConfig.isLogInfo) { ? ? ? ? ? ? ? ? Diablo.printLog('语言级别',true,'转换JSON到字符串','失败'); ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? var zrw = ''; ? ? ? ? if (thisMsg.cmd) { ? ? ? ? ? ? if (thisMsg.dst === 'LM') { ? ? ? ? ? ? ? ? LM.getMessage(thisMsg); ? ? ? ? ? ? } ? ? ? ? ? ? else if (thisMsg.dst === 'RM') { ? ? ? ? ? ? ? ? RM.getMessage(thisMsg); ? ? ? ? ? ? } ? ? ? ? ? ? else { ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? $('.' + thisMsg.cmd).each(function (e) { ? ? ? ? ? ? ? ? ? ? var $this = $(this); ? ? ? ? ? ? ? ? ? ? switch ($this.attr('data-swing-type')) { ? ? ? ? ? ? ? ? ? ? ? ? case 'swingGrid': ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingGrid('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingInputs': ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingInputs('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingDivMenu': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingDivMenu('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingLogin': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingLogin('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingScrollSelector': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingScrollSelector('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingBlockSelector': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingBlockSelector('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingAdviceEnticeMenu': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingAdviceEnticeMenu('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingAdviceEnticeContentA': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingAdviceEnticeContentA('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingDataSetManager': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingDataSetManager('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingDefaultFooter': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingDefaultFooter('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingDefaultHeader': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingDefaultHeader('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingTitleMenu': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingTitleMenu('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case 'swingConfiger': ? ? ? ? ? ? ? ? ? ? ? ? ? ? var zrw = ''; ? ? ? ? ? ? ? ? ? ? ? ? ? ? $this.swingConfiger('getMessage',thisMsg); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? default: ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? }) ? ? ? ? ? ? } ? ? ? ? } ? ? },? ? //发送命令 ? ? sendMsg: function (e,msg) { ? ? ? ? $this = $(this); ? ? ? ? if (msg) { ? ? ? ? ? ? MM.enMsgQueue(msg); ? ? ? ? } ? ? ? ? else { ? ? ? ? ? ? if (config.LogConfig.level >= 1 && config.LogConfig.isLogErr) { ? ? ? ? ? ? ? ? var msgObjDetail = Diablo.testObj(msg); ? ? ? ? ? ? ? ? Diablo.printLog('消息','发送命令','错误','错误详情','命令为' + msgObjDetail); ? ? ? ? ? ? } ? ? ? ? } ? ? } }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读