给商城里的商品分销链接加上一个有效期

2019-09-16 作者:torylf 分类:实用技巧 阅读:2244

第一步:

我们需要添加一个有效期的字段:

第二步:

打开application\shop\index\Content.php

我们找到检测方法里的函数 我们加一句:

$this->isLast($info['usetime'],$info['id']); 这个是我们自定义的一个方法,名称可以自定义

/**
 * 重写父方法,加东西
 * {@inheritDoc}
 * @see \app\common\controller\index\C::view_check()
 */
protected function view_check(&$info=[]){
    $this->isLast($info['usetime'],$info['id']);//这里是添加的方法调用
    $this->set_fx($info);
    parent::view_check($info);
}


第三步:

我们需要在下面自己定义一个方法来供上面调用,当然也可以把下面的代码直接放在上面的方法中,但是不规范,比较乱。

/**
    * 判断分销是否过期
    * @param int $endtime
    */
protected function isLast($endtime = 0,$id=0 ){
    if($endtime !=0 && time() > $endtime && input('p_uid')!=''){
        echo "超过了分销时间"; //这里可以输出一个模板,自己做喜欢的样式
        $this->error('返回该商品页',urls('content/show',['id'=>$id]),'',3);
       }

   }

这个方法需要两个参数,一个就是我们之前定义的字段,叫过期时间,另一个是商品id,便于返回该商品的url


全部定义完后,覆盖上传,即可生效

提示内容,可以做一个好看的模板返回,自行斟酌。



这个方法的弊端,全局效果。因为是修改的商品分销时间,所以这个商品的分销链接是死的,一旦过期,那么所有人的分销都是过期。

达不到特定人特定待遇。


解决思路:可以将分销链接实例化,用户点击分销时,生成特定的分销属性,每个分销链接独立,需要另外建立数据表。实现链接多样性,每个人生成的分销链接属性不同,待遇不同。

这样改写的规模可能不小,需要按需分析,我这就不做处理了,需要的朋友自行动脑动手!!!






来源: 神盾工作室    转载请注明出处!

本文地址:https://www.shieldsoho.com/article/21.html

{{item.nickname}} @回复
发表于{{item.create_time}}

  • {{replyitem.nickname}} {{item.create_time}}
    @{{item.nickname}}

查看更多评论