0) { $pagenum=I('pagenum/s'); } $key_word = I('key_word') ? trim(I('key_word')) : ''; $mobile = I('mobile') ? trim(I('mobile')) : ''; $getoldurl = I('oldurl') ? trim(I('oldurl')) : ''; if ($getoldurl) { $getoldurl=urldecode(urldecode($getoldurl)); } if ($mobile) { $mobile=" 上级用户(".$mobile.")"; } $userid = I('userid') ? trim(I('userid')) : ''; $where=" 1=1 and store_id=".getAdmStoId().""; //$where.=" and is_distribut = 1 and mobile<>''"; $where.=" and is_distribut = 1 "; if($key_word) { $where.=" and (mobile like '%".$key_word."%' or vipname like '%".$key_word."%')"; } if($userid) { $where.=" and first_leader=".$userid; } $model = M('users'); $count = $model->where($where)->count(); $Page = new Page($count,$pagenum); $show = $Page->show(); $list = $model->where($where) ->order('user_id desc') ->limit($Page->firstRow.','.$Page->listRows) ->field('user_id,vipname,mobile,first_leader') ->select(); $this->assign('mobile',$mobile); $this->assign('pager',$Page); $this->assign('list',$list); $this->assign('page',$show); $this->assign('pagenum',$pagenum); $this->assign('oldurl',urlencode(curPageURL())); $this->assign('getoldurl',$getoldurl); // $where = 'is_distribut = 1 and mobile is not null and mobile<>""'; // $where.=" and store_id=".getAdmStoId().""; // if($this->request->param('user_id')) { // $where = "user_id = '{$this->request->param('user_id')}'"; // $where.= " or mobile like '%{$this->request->param('user_id')}%'"; // } // // $list = M('users')->where($where)->select(); // $this->assign('list',$list); upload_ylp_log('B27分销关系查询/搜索'); return $this->fetch("",getAdmStoId()); } /** * 分销商列表 */ public function distributor_list(){ $pagenum=20;//每页显示多少条 if ((int)I('pagenum/s')>0) { $pagenum=I('pagenum/s'); } $nickname = I('nickname'); $mobile = I('mobile'); $where=" and 1=1"; if(!empty($nickname)){ $where.=" and a.nickname like '%".$nickname."%'"; } if(!empty($mobile)){ $where.=" and a.mobile like '%".$mobile."%'"; } $is_setdistri_first=tpCache('distribut.is_setdistri_first',getAdmStoId()); $this->assign('is_setdistri_first',$is_setdistri_first); $strsql='select a.user_id,a.mobile,a.nickname,a.frozen_money,a.distribut_money,a.user_money, 1 as first_leader_num, IFNULL(b.c,0) as second_leader_num, IFNULL(c.c,0) as third_leader_num from wxd_users a LEFT JOIN (select first_leader,COUNT(1) as c from wxd_users where is_distribut=1 and store_id='.getAdmStoId().' group by first_leader ) b on a.user_id=b.first_leader LEFT JOIN (select second_leader,COUNT(1) as c from wxd_users where is_distribut=1 and store_id='.getAdmStoId().' group by second_leader ) c on a.user_id=c.second_leader where a.is_distribut=1 and a.store_id='.getAdmStoId().$where.' ORDER BY user_id desc'; $datalist=Db::query($strsql); $count = count($datalist); $Page = new Page($count,$pagenum); $show = $Page->show(); //分页实现 $p=I('p/d',1); $fir=($p-1)*$pagenum;$end=$p*$pagenum; $lists2=null; if($end>$count){$end=$count; } for($i=$fir;$i<$end;$i++){ $lists2[]=$datalist[$i];} $this->assign('page',$show); $this->assign('pager',$Page); $this->assign('user_list',$lists2); $this->assign('pagenum',$pagenum); $this->assign('oldurl',urlencode(curPageURL())); // upload_ylp_log('分销商列表'); return $this->fetch('',getAdmStoId()); } /*分销商数据导出*/ public function exportreport() { $pagenum=20;//每页显示多少条 if ((int)I('pagenum/s')>0) { $pagenum=I('pagenum/s'); } $where=""; //$condition['is_distribut'] = 1; $nickname = I('nickname'); $mobile = I('mobile'); if(!empty($nickname)){ //$condition['nickname'] = array('like',"%$nickname%"); $where.=" and nickname like '%".$nickname."%'"; } if(!empty($mobile)){ //$condition['mobile'] = array('like',"%$mobile%"); $where.=" and mobile like '%".$mobile."%'"; } //$condition['store_id']=getAdmStoId(); //$user_list = M('users')->where($condition)->order('distribut_money DESC')->select(); //$is_setdistri_first=tpCache('distribut.is_setdistri_first',getAdmStoId()); $strsql='select a.user_id,a.mobile,a.nickname,a.frozen_money,a.distribut_money,a.user_money,a.reg_time, 1 as fisrt_leader, IFNULL(b.c,0) as second_leader, IFNULL(c.c,0) as third_leader, 1+IFNULL(b.c,0)+IFNULL(c.c,0) as lower_sum,s1.mobile as mobile1,s1.vipname as vipname1 from wxd_users a LEFT JOIN (select first_leader,COUNT(1) as c from wxd_users where is_distribut=1 and store_id='.getAdmStoId().' group by first_leader ) b on a.user_id=b.first_leader LEFT JOIN (select second_leader,COUNT(1) as c from wxd_users where is_distribut=1 and store_id='.getAdmStoId().' group by second_leader ) c on a.user_id=c.second_leader left join wxd_users s1 on a.first_leader=s1.user_id where a.is_distribut=1 and a.store_id='.getAdmStoId().$where.' ORDER BY a.user_id desc'; // foreach ($user_list as $k=>$val){ // $user_list[$k]['fisrt_leader'] = 1; // $user_list[$k]['second_leader'] = M('users')->where(array('first_leader'=>$val['user_id']))->where('is_distribut',1)->count(); // $user_list[$k]['third_leader'] = M('users')->where(array('second_leader'=>$val['user_id']))->where('is_distribut',1)->count(); // $user_list[$k]['lower_sum'] = $user_list[$k]['fisrt_leader'] +$user_list[$k]['second_leader'] + $user_list[$k]['third_leader']; // } $user_list=Db::query($strsql); $strTable =''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; if(is_array($user_list)){ foreach($user_list as $k=>$val){ $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= '';; $strTable .= ''; } } $strTable .='
用户手机微信昵称注册时间可用资金冻结资金总分成金额下线会员总数上一级手机号上一级名称一级会员数二级会员数三级会员数
 '.$val['mobile'].''.$val['nickname'].' '.date('Y-m-d H:i:s',$val['reg_time']).'¥'.$val['user_money'].' ¥'.$val['frozen_money'].'¥'.$val['distribut_money'].''.$val['lower_sum'].' '.$val['mobile1'].' '.$val['vipname1'].''.$val['fisrt_leader'].''.$val['second_leader'].''.$val['third_leader'].'
'; echo $strTable; unset($user_list); downloadExcel($strTable,'distribut'); exit(); } /*分销商品导出*/ public function exportgoods() { $pattern=tpCache('distribut.pattern',getAdmStoId()); $this->assign('pattern',$pattern); $where = ' commission > 0 '; if($pattern==1){ $where = '(fir_rate+sec_rate+thi_rate) > 0'; } $cat_id = I('cat_id/d'); $bind = array(); if($cat_id > 0) { $grandson_ids = getCatGrandson($cat_id); $where .= " and a.cat_id in(". implode(',', $grandson_ids).") "; // 初始化搜索条件 } $key_word = I('key_word') ? trim(I('key_word')) : ''; if($key_word) { $where = "$where and (a.goods_name like :key_word1 or a.goods_sn like :key_word2)" ; $bind['key_word1'] = "%$key_word%"; $bind['key_word2'] = "%$key_word%"; } $where.=" and a.store_id=".getAdmStoId().""; $brand_id = I('brand_id'); if($brand_id){ $where = "$where and a.brand_id = :brand_id"; $bind['brand_id'] = $brand_id; } $model = M('Goods'); $goodsList = $model->alias('a')->join('goods_category b',' a.cat_id=b.id and a.store_id=b.store_id','left') ->field('a.*,b.name as cat_name') ->where($where)->bind($bind)->order('sales_sum desc')->select(); $strTable =''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; if(is_array($goodsList)){ foreach($goodsList as $k=>$val){ $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; } } $strTable .='
商品名称销量分类价格库存数量分成金额
 '.$val['goods_name'].''.$val['sales_sum'].' '.$val['cat_name'].'¥'.$val['shop_price'].' '.$val['store_count'].'¥'.($pattern=='1'?$val['fir_rate']+$val['sec_rate']+$val['thi_rate']:$val['commission']).'
'; echo $strTable; unset($goodsList); downloadExcel($strTable,'distributgoods'); exit(); } /** * 分销设置 */ public function set(){ header("Location:".U('Admin/System/index',array('inc_type'=>'distribut'))); exit; } public function goods_list(){ $pagenum=20;//每页显示多少条 if ((int)I('pagenum/s')>0) { $pagenum=I('pagenum/s'); } $GoodsLogic = new GoodsLogic(); $brandList = $GoodsLogic->getSortBrands(); $categoryList = $GoodsLogic->getSortCategory(); $this->assign('categoryList',$categoryList); $this->assign('brandList',$brandList); $pattern=tpCache('distribut.pattern',getAdmStoId()); $this->assign('pattern',$pattern); $where = ' commission > 0 '; if($pattern==1){ $where = '(fir_rate+sec_rate+thi_rate) > 0'; } $cat_id = I('cat_id/d'); $bind = array(); if($cat_id > 0) { $grandson_ids = getCatGrandson($cat_id); $where .= " and cat_id in(". implode(',', $grandson_ids).") "; // 初始化搜索条件 } $key_word = I('key_word') ? trim(I('key_word')) : ''; if($key_word) { $where = "$where and (goods_name like :key_word1 or goods_sn like :key_word2)" ; $bind['key_word1'] = "%$key_word%"; $bind['key_word2'] = "%$key_word%"; } $where.=" and store_id=".getAdmStoId().""; $brand_id = I('brand_id'); if($brand_id){ $where = "$where and brand_id = :brand_id"; $bind['brand_id'] = $brand_id; } $model = M('Goods'); $count = $model->where($where)->bind($bind)->count(); $Page = new Page($count,$pagenum); $show = $Page->show(); $goodsList = $model->where($where)->bind($bind)->order('sales_sum desc')->limit($Page->firstRow.','.$Page->listRows)->select(); $catList = M('goods_category')->where(" store_id=".getAdmStoId()."")->select(); $catList = convert_arr_key($catList, 'id'); $this->assign('catList',$catList); $this->assign('pager',$Page); $this->assign('goodsList',$goodsList); $this->assign('page',$show); $this->assign('cat_id',$cat_id); $this->assign('brand_id',$brand_id); $this->assign('pagenum',$pagenum); $this->assign('oldurl',urlencode(curPageURL())); upload_ylp_log('B24分销商品查询/搜索'); return $this->fetch('',getAdmStoId()); } /** * 分成记录 */ public function rebate_log() { $pagenum=20;//每页显示多少条 if ((int)I('pagenum/s')>0) { $pagenum=I('pagenum/s'); } $status = I('status'); $user_id = I('user_id'); $order_sn = I('order_sn'); $start = trim(I('start_time')); $end= trim(I('end_time')); $where=" a.store_id=".getAdmStoId(); if(!empty($start)){ $where.= " and a.create_time >= ".strtotime($start); } if(!empty($end)){ $where.=" and a.create_time <= ".strtotime($end); } if($status === '0' || $status > 0){ $where .= " and a.status = $status "; } $user_id && $where .= " and b.mobile = $user_id "; $order_sn && $where .= " and a.order_sn like '%{$order_sn}%' "; $count = M("rebate_log")->alias("a")->join("users b","a.user_id=b.user_id",'LEFT')->field("a.*,b.mobile") ->where($where)->count(); $Page = new Page($count,$pagenum); $list = M("rebate_log")->alias("a")->join("users b","a.user_id=b.user_id",'LEFT')->field("a.*,b.mobile") ->where($where)->order("a.id desc")->limit($Page->firstRow.','.$Page->listRows)->select(); $liststr = M("rebate_log")->alias("a")->join("users b","a.user_id=b.user_id",'LEFT')->field("a.*,b.mobile") ->where($where)->order("a.id desc")->limit($Page->firstRow.','.$Page->listRows)->fetchSql(true)->select(); mlog($liststr,'rebate_log/'.getAdmStoId()); // $this->assign('create_time',$create_time); $show = $Page->show(); $this->assign('show',$show); $this->assign('page',$show); $this->assign('list',$list); $this->assign('count',$count); $this->assign('pagenum',$pagenum); $this->assign('oldurl',urlencode(curPageURL())); C('TOKEN_ON',false); upload_ylp_log('B28分成日志查询/搜索'); return $this->fetch('',getAdmStoId()); } /** * 分成记录数据导出 */ public function exportrebate_log() { $pagenum=20;//每页显示多少条 if ((int)I('pagenum/s')>0) { $pagenum=I('pagenum/s'); } $status = I('status'); $user_id = I('user_id'); $order_sn = I('order_sn'); $start = trim(I('start_time')); $end= trim(I('end_time')); $where=" a.store_id=".getAdmStoId(); if(!empty($start)){ $where.= " and a.create_time >= ".strtotime($start); } if(!empty($end)){ $where.=" and a.create_time <= ".strtotime($end); } if($status === '0' || $status > 0){ $where .= " and a.status = $status "; } $user_id && $where .= " and b.mobile = $user_id "; $order_sn && $where .= " and a.order_sn like '%{$order_sn}%' "; $goodsList = M("rebate_log")->alias("a")->join("users b","a.user_id=b.user_id",'LEFT')->field("a.*,b.mobile") ->where($where)->order("a.id desc")->select(); $strTable =''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; if(is_array($goodsList)){ foreach($goodsList as $k=>$val){ $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; $strTable .= ''; } } $strTable .='
获佣用户手机订单编号获佣金额获佣用户级别记录生成时间状态
 '.$val['mobile'].''.$val['order_sn'].' ¥'.$val['money'].''.($val['level']=='1'?'一级分销商':$val['level']=='2'?'二级分销商':'三级分销商').' '.date('Y-m-d H:i:s',$val['create_time']).''.$this->getrebate_status($val['status']).'
'; echo $strTable; unset($goodsList); downloadExcel($strTable,'rebate_log'); exit(); } public function getrebate_status($status) { $restr=""; switch ($status) { case "0": $restr="未付款"; break; case "1": $restr="已付款"; break; case "2": $restr="等待分成"; break; case "3": $restr="已分成"; break; case "4": $restr="已取消"; break; } return $restr; } /** * 获取某个人下级元素 */ public function ajax_lower() { $id = $this->request->param('id'); $list = M('users')->where(" is_distribut=1 and mobile is not null and mobile<>'' and store_id=".getAdmStoId()." and first_leader =".$id)->select(); $this->assign('list',$list); return $this->fetch('',getAdmStoId()); } /** * 修改编辑 分成 */ public function editRebate(){ $id = I('id'); $rebate_log = DB::name('rebate_log')->where('id',$id)->find(); if (IS_POST) { ClearALLCache(); delFile(TEMP_PATH."/".getAdmStoId()); $data = I('post.'); // 如果是确定分成 将金额打入分佣用户余额 if ($data['status'] == 3 && $rebate_log['status'] != 3) { accountLog($data['user_id'], $rebate_log['money'], 0, "订单:{$rebate_log['order_sn']}分佣", $rebate_log['money']); } // upload_ylp_log('修改分成'); DB::name('rebate_log')->update($data); $this->success("操作成功!!!", U('Admin/Distribut/rebate_log')); exit; } $user = M('users')->where("user_id = {$rebate_log[user_id]}")->find(); if($user['nickname']) $rebate_log['user_name'] = $user['nickname']; elseif($user['email']) $rebate_log['user_name'] = $user['email']; elseif($user['mobile']) $rebate_log['user_name'] = $user['mobile']; $this->assign('user',$user); $this->assign('rebate_log',$rebate_log); return $this->fetch('',getAdmStoId()); } private function initEditor() { $this->assign("URL_upload", U('Admin/Ueditor/imageUp', array('savepath' => 'wechat'))); $this->assign("URL_fileUp", U('Admin/Ueditor/fileUp', array('savepath' => 'wechat'))); $this->assign("URL_scrawlUp", U('Admin/Ueditor/scrawlUp', array('savepath' => 'wechat'))); $this->assign("URL_getRemoteImage", U('Admin/Ueditor/getRemoteImage', array('savepath' => 'wechat'))); $this->assign("URL_imageManager", U('Admin/Ueditor/imageManager', array('savepath' => 'wechat'))); $this->assign("URL_imageUp", U('Admin/Ueditor/imageUp', array('savepath' => 'wechat'))); $this->assign("URL_getMovie", U('Admin/Ueditor/getMovie', array('savepath' => 'wechat'))); $this->assign("URL_Home", ""); } }