You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							159 lines
						
					
					
						
							5.8 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							159 lines
						
					
					
						
							5.8 KiB
						
					
					
				
								<?php
							 | 
						|
								
							 | 
						|
								/**
							 | 
						|
								 * [Laike System] Copyright (c) 2017-2020 laiketui.com
							 | 
						|
								 * Laike is not a free software, it under the license terms, visited http://www.laiketui.com/ for more details.
							 | 
						|
								 */
							 | 
						|
								
							 | 
						|
								require_once(MO_WEBAPP_DIR . "/plugins/PluginAction.class.php");
							 | 
						|
								
							 | 
						|
								class distributionAction extends PluginAction
							 | 
						|
								{
							 | 
						|
								
							 | 
						|
								    public function home()
							 | 
						|
								    {
							 | 
						|
								        $db = DBAction::getInstance();
							 | 
						|
								        $request = $this->getContext()->getRequest();
							 | 
						|
								        $paegr = addslashes(trim($request->getParameter('page'))); //  '页面'
							 | 
						|
								
							 | 
						|
								        $select = addslashes(trim($request->getParameter('select'))); //  选中的方式 0 默认  1 销量   2价格
							 | 
						|
								        if ($select == 0) {
							 | 
						|
								            $select = 'a.add_date';
							 | 
						|
								        } elseif ($select == 1) {
							 | 
						|
								            $select = 'a.volume';
							 | 
						|
								        } else {
							 | 
						|
								            $select = 'a.price';
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								        $sort = addslashes(trim($request->getParameter('sort'))); // 排序方式  1 asc 升序   0 desc 降序
							 | 
						|
								        if ($sort) {
							 | 
						|
								            $sort = ' asc ';
							 | 
						|
								        } else {
							 | 
						|
								            $sort = ' desc ';
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								        $appConfig = $this->getAppInfo();
							 | 
						|
								        $img = $appConfig['imageRootUrl'];
							 | 
						|
								
							 | 
						|
								        if (!$paegr) {
							 | 
						|
								            $paegr = 1;
							 | 
						|
								        }
							 | 
						|
								        $start = ($paegr - 1) * 10;
							 | 
						|
								        $end = 10;
							 | 
						|
								        $sql = "select a.*,b.leve1  from lkt_product_list AS a,lkt_detailed_pro AS b where a.id = b.pro_id   AND a.num > 0 AND b.status=1 order by $select $sort LIMIT $start,$end   ";
							 | 
						|
								        $r = $db->select($sql);
							 | 
						|
								        if ($r) {
							 | 
						|
								            $product = [];
							 | 
						|
								            foreach ($r as $k => $v) {
							 | 
						|
								                $imgurl = $img . $v->imgurl;
							 | 
						|
								                $pid = $v->id;
							 | 
						|
								                $sql_ttt = "select price,yprice from lkt_configure where pid ='$pid' order by price asc ";
							 | 
						|
								                $r_ttt = $db->select($sql_ttt);
							 | 
						|
								                $price = $r_ttt[0]->yprice;
							 | 
						|
								                $price_yh = $r_ttt[0]->price;
							 | 
						|
								
							 | 
						|
								                $attr = unserialize($v->initial);
							 | 
						|
								                $attr = array_values($attr);
							 | 
						|
								                if ($attr) {
							 | 
						|
								                    if (gettype($attr[0]) != 'string') unset($attr[0]);
							 | 
						|
								                }
							 | 
						|
								                $product[$k] = array('id' => $v->id, 'name' => $v->product_title, 'price' => $price, 'price_yh' => $price_yh, 'imgurl' => $imgurl, 'volume' => $v->volume, 's_type' => $v->s_type, 'fan' => $price*$v->leve1/100);
							 | 
						|
								            }
							 | 
						|
								            echo json_encode(array('status' => 1, 'pro' => $product));
							 | 
						|
								            exit;
							 | 
						|
								        } else {
							 | 
						|
								            echo json_encode(array('status' => 0, 'err' => '没有了!'));
							 | 
						|
								            exit;
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								    //分销中心
							 | 
						|
								    public function user()
							 | 
						|
								    {
							 | 
						|
								        $db = DBAction::getInstance();
							 | 
						|
								        $request = $this->getContext()->getRequest();
							 | 
						|
								        $openid = addslashes($request->getParameter('openid'));
							 | 
						|
								        $user = $db->selectOne("select * from lkt_user where wx_id = '$openid' ");
							 | 
						|
								        if ($user) {
							 | 
						|
								            $user_id = $user->user_id;
							 | 
						|
								
							 | 
						|
								            //累计收益
							 | 
						|
								            $sql = "select sum(s_money) ss from lkt_detailed_commission where userid='$user_id' ";
							 | 
						|
								            $rs = $db->selectOne($sql);
							 | 
						|
								            $ljyj = $rs->ss;
							 | 
						|
								            $user->ljyj = $ljyj?$ljyj:0;
							 | 
						|
								            $sql = "select * from lkt_user  where Referee='$user_id'  order by id desc  ";
							 | 
						|
								            $list_1 = $db->select($sql);
							 | 
						|
								
							 | 
						|
								            //收益记录
							 | 
						|
								            $sql = "select a.*,b.wx_name parent_name from lkt_detailed_commission as a,lkt_user as b where a.userid='$user_id' and a.Referee=b.user_id  order by a.id desc";
							 | 
						|
								            $list_2 = $db->select($sql);
							 | 
						|
								
							 | 
						|
								            $list_3 = $list_2;
							 | 
						|
								            echo json_encode(array('status'=>1,'user'=>$user,'list_1'=>$list_1,'list_2'=>$list_2,'list_3'=>$list_3));
							 | 
						|
								
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								        exit();
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								    //确认收货接口,在这里面加上分销的核心算法
							 | 
						|
								    public function okOrder($order=null){
							 | 
						|
								        $oid = $order->id;
							 | 
						|
								        $db = DBAction::getInstance();
							 | 
						|
								        $order = $db->selectOne("select * from lkt_order where id=$oid and plugin='distribution' ");
							 | 
						|
								        if ($order){
							 | 
						|
								            $user_id = $order->user_id;
							 | 
						|
								            $sNo = $order->sNo;
							 | 
						|
								            $sql = "select a.*,b.leve,b.leve1,b.leve2,b.leve3,b.commissions from lkt_order_details as a,lkt_detailed_pro as b where a.r_sNo='$sNo' and a.p_id = b.pro_id ";
							 | 
						|
								            $details = $db->select($sql);
							 | 
						|
								            foreach ($details as $key => $values) {
							 | 
						|
								                $p_price = $values->p_price;
							 | 
						|
								                $num = $values->num;
							 | 
						|
								                $leve = $values->leve;
							 | 
						|
								                $leve1 = $values->leve1;
							 | 
						|
								                $leve2 = $values->leve2;
							 | 
						|
								                $leve3 = $values->leve3;
							 | 
						|
								                $commissions = $values->commissions;
							 | 
						|
								                $bili = array($leve1,$leve2,$leve3);
							 | 
						|
								                $total = $p_price*$num;
							 | 
						|
								                //进行返回积分
							 | 
						|
								                $i=0;
							 | 
						|
								                $uid = $user_id;
							 | 
						|
								                while ($leve>0 && $i<$leve){
							 | 
						|
								                    $money = $total*$bili[$i]/100;
							 | 
						|
								                    $s_money = $money - $money*$commissions/100;
							 | 
						|
								                    if ($money>0){
							 | 
						|
								                        $sql = "select * from lkt_user where user_id='$uid' ";
							 | 
						|
								                        $user = $db->selectOne($sql);
							 | 
						|
								                        $pid = $user->Referee;
							 | 
						|
								                        if ($pid) {
							 | 
						|
								                            $creattime = date('Y-m-d H:i:s');
							 | 
						|
								                            $sql = "insert into lkt_detailed_commission(userid,sNo,money,s_money,status,addtime,type,Referee) values('$pid',$sNo,$money,$s_money,2,'$creattime',1,'$user_id')";
							 | 
						|
								                            $db->insert($sql);
							 | 
						|
								                            //充值积分
							 | 
						|
								                            $sql = "update lkt_user set score=score+$s_money where user_id='$pid' ";
							 | 
						|
								                            $db->update($sql);
							 | 
						|
								                        }
							 | 
						|
								                        $uid = $pid;
							 | 
						|
								                    }
							 | 
						|
								                    $i++;
							 | 
						|
								                }
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								            }
							 | 
						|
								
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								        return $order;
							 | 
						|
								    }
							 | 
						|
								
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								?>
							 |