Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

DISCUZ应对积分变更提供可扩展接口附方案

[复制链接]
liuus 发表于 2012-5-31 15:00:33 | 显示全部楼层 |阅读模式
本帖最后由 liuus 于 2012-5-31 15:19 编辑

很多时候,想用插件消耗掉用户的剩余积分,增添娱乐趣味。
但是很纠结的说,目前我尚未找到如何在积分变动的同时,让用户点击积分查看变动记录的时候,又能发现积分增减的动向。

就目前的插件而言,此类积分变动,有三种处理办法:
一,无处可查。
来源和去向,都没有对象,用户摸不着头脑,管理也不知从哪儿,为什么
二,自建TABLE储存。
苦恼不?自建一个TBALE用于查询,解决了无处可查的囧状,但是不便于管理者进行查询和统计等等,因为不得不进行多次查询,才能统计出用户积分真正的增减动态。
三,自己按照想法改。
估计还没有,我有想法不想实现,你懂的,DISCUZ更新伤不起。

其实个人这个问题是可以很好的得到解决的,个人给出的方案如下:
简单一些的方案是:
  1. 在 pre_common_credit_log 表中的operation 字段中,我们用"PLU"来表示是来自插件的积分动态,relatedid用于记录插件的PLUGINID,后台查询的时候就是“来插件名称的收入”“来自插件名称的支出” ,当PLUGINID对应的插件不存在的时候,显示为“扩展应用的收入/支出”
复制代码
当然,这样或许对于插件来说,还不够个性化和娱乐性,那么,还有一套复杂一些的方案:(真悲催,保存后竟然只有一条了重新改过)
  1. 1,在 pre_common_credit_log 表中的 operation 字段中,我们用"PLU"来表示是来自插件的积分动态,relatedid用于记录插件的PLUGINID,并增添一个字段比如MYID,和relatedid组成组索引,用于记录插件内部的索引
  2. 2,在插件设计页面的设置中,增加一个文本域,按照每行一个的方式,由作者写入个性的变动提醒,并在储存时候按照先后顺序建立索引值。
  3. 3,在pre_common_plugin中,增加一个字段RULE,用户储存对应的个性提醒数组。
  4. 4,修改积分变动函数,将其增加一个扩展参数,插件中,可以将该参数设置为个性变动提醒的索引值。
  5. 5,在查询界面中和积分变动提醒中,按照下面的查询规则进行
复制代码
更新和查询规则如下:(以插件名称为:发帖机遇,PLUGINID为:3为例 )
更新规则:插件在设计和修改的时候,从插件的TEXTAREA区域读取并建立索引,比如设置两行文字:
喜从天降,说话都中奖
有点儿背,没动也挨枪

分别对应的索引是0和1,储存于插件表的RULE中。更新用户积分动态的时候,只需要调用DISCUZ内部的积分函数即可操作,同时在设置了积分变动提醒中,也按照查询规则进行处理。

查询规则:当查询积分记录的时候(即为调用),如果operation="PLU",则为插件增减积分。
此时,查询增加的内部索引MYID,与其对应的,就是插件设计时候存储的积分索引,即可通过$_G变量对应插件PLUGINID的RULE数组取到该对象名称。此时积分记录查询中,详情会显示该对象名称:喜从天降,说话都中奖,或者有点儿背,没动也挨枪,由该记录的MYID控制。
假定此索引对象名称返回为空,则显示为插件名称:发帖机遇。
如果此积分记录的operation中对应的PLINGINID不存在,则将其显示为“其他应用”。


说起来,或许有些复杂改动好像很多的样子,其实改动还是应该比较简单的。

以上是我个人的想法,我姑且说,各位姑且看,如果觉得难以实现,那就当我无聊发慌的时候练习打字,你无聊发慌的时候顺便路过吧!


 发表于 2012-5-31 15:03:06
求CC相关人员
@iamdokho @zhanzhangzz @lvxing[tthread=liuusme, liuus]http://app.qlogo.cn/mbloghead/b4f2f6fe44e2936f9de4[/tthread]
回复

使用道具

 发表于 2012-5-31 15:31:55
已收集,感谢您的建议:) || @liuusme: 求CC相关人员 @iamdokho @zhanzhangzz @lvxing[tthread=zhanzhangzz, Discuz!官方微博]http://app.qlogo.cn/mbloghead/c511a363561410834e38[/tthread]
回复

使用道具

yuantao19861215 发表于 2012-6-17 16:17:18 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-23 10:36 , Processed in 0.029482 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表