ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

tp拼团&团长加价处理

2022-04-13 03:00:20  阅读:155  来源: 互联网

标签:goods tp goodsList 拼团 加价 team 团长 id


模型层代码:

   public function getList()
    {
        //获取用户id,根据用户id查询此用户所属团长,然后展示团长发布的拼团商品,如果此用户所属的团长没有发布拼团商品则展示为空,如果这个用户没有上级或者上上级团长,则证明此用户为自己注册的,然后展示公司团长的拼团商品
        $userId = $this->userId;
        if(empty($userId)){
            return error_code(11067);
        }
        //获取当前用户信息
        $userInfo = User::where('id', $userId)->find();
        if ($userInfo == null){
            return error_code(11081); //没有找到此用户
        }
        //如果这个用户所属上级团长user_team_id不为空,则证明有上级团长id,否则获取平台团长platform_team_id,从而查询平台团长所发布的拼团商品
        if (!empty($userInfo['user_team_id'])){
            //根据当前用户id获取当前用户所属团长user_team_id
            $team_goods_id = TeamGoods::where('user_id', $userInfo['user_team_id'])->find();
            //查看此用户团长有没有发布拼团上品
            if (empty($team_goods_id)){
                return error_code(15609);//没有找到拼团发起人
            }
            //判断团长添加的拼团活动是否已经结束
            if (!empty($team_goods_id['utime'])){
                if (time() - $team_goods_id['utime'] > 86400){
                    return error_code(15600);//活动已结束
                }
            }else{
                if (time() - $team_goods_id['etime'] > 86400){
                    return error_code(15600);//活动已结束
                }
            }
            $goodsId = explode(',', $team_goods_id['goods_id']);
            $goodsList = [];
            foreach ($goodsId as $v){
                $data = Goods::where('id', $v)->where('marketable', Goods::MARKETABLE_UP)->find(); //上架
                if (!empty($data)){
                    $goodsList[] = $data;
                }
            }
        }else{
            //根据当前用户id获取当前用户所属平台团长platform_team_id
            $team_goods_id = TeamGoods::where('platform_team_id', $userInfo['platform_team_id'])->find();

            //查看此用户团长有没有发布拼团上品
            if (empty($team_goods_id)){
                return error_code(15609);//没有找到拼团发起人
            }

            //判断团长添加的拼团活动是否已经结束
            if (!empty($team_goods_id['utime'])){
                if (time() - $team_goods_id['utime'] > 86400){
                    return error_code(15600); //活动已结束
                }
            }else{
                if (time() - $team_goods_id['etime'] > 86400){
                    return error_code(15600); //活动已结束
                }
            }

            $goodsId = explode(',', $team_goods_id['goods_id']);
            $goodsList = [];
            foreach ($goodsId as $v){
                $data = Goods::where('id', $v)->where('marketable', Goods::MARKETABLE_UP)->find(); //上架
                if (!empty($data)){
                    $goodsList[] = $data;
                }
            }

            //根据团长加价商品表shop_team_raise_price看团长有没有对此商品进行加价,如果有拼团商品价格为加价后的拼团价
            $teamRaisePrice = TeamRaisePrice::where('team_id', $userInfo['platform_team_id'])->select();
            if ($teamRaisePrice){
                foreach ($goodsList as $k => $v){
                    foreach ($teamRaisePrice as $key => $val){
                        if ($goodsList[$k]['id'] == $teamRaisePrice[$key]['goods_id'])
                            $goodsList[$k]['pintuan_price'] = $goodsList[$k]['pintuan_price'] + $teamRaisePrice[$key]['price'];
                    }
                }
            }
        }

        foreach ($goodsList as &$value){
            $value['image_url'] = _sImage($value['image_id']);
        }
        return ['status' => true, 'data' => $goodsList, 'msg' => '查询展示成功'];
    }

数据表:

 

 

 

标签:goods,tp,goodsList,拼团,加价,team,团长,id
来源: https://www.cnblogs.com/gaoyusui/p/16138452.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有