shq1016 6 лет назад
Родитель
Сommit
b2d0c83a30
1 измененных файлов с 207 добавлено и 2 удалено
  1. 207 2
      app/admin/controller/MessageController.php

+ 207 - 2
app/admin/controller/MessageController.php

@@ -66,7 +66,28 @@ class MessageController extends AdminBaseController{
                 $cates = $fenpei['cates'];
                 $from = $fenpei['tiaoshu'];
                 $map[] = ['create_time','>',$fenpei['from_time']];
-                $lists = Db::name('message')->where('catid','in',$cates)->where($map)->order('id')->limit(0,$from)->select();
+
+                //ppppp
+                if($fenpei['enable']==1){
+                    $map2[] = ['p1.create_time','>',$fenpei['from_time']];
+                    $field=['p1.*','concat(LEFT(p1.mobile,4),"****",RIGHT(p1.mobile,3))'=>'mobile','count(p2.id)'=> 'vid' ];
+                    $lists = Db::name('message')
+                        ->alias('p1')
+                        ->leftJoin('mobile_log p2','p1.`id`=p2.`msg_id`')
+                        ->group('p1.`id`')
+                        ->field($field)->where('p1.catid','in',$cates)->where($map2)->limit(0,$from)->select();
+                     
+                }else{
+
+                    $field=['*'];
+                     $lists = Db::name('message')->field($field)->where('catid','in',$cates)->where($map)->order('id')->limit(0,$from)->select();
+                }
+
+           
+
+              //  $lists = Db::name('message')->field($field)->where('catid','in',$cates)->where($map)->order('id')->limit(0,$from)->select();
+                $this->assign('fenpei',$fenpei);
+            //ppppp
             	// if($from<20){
             	// 	$lists = Db::name('message')->where('catid','in',$cates)->where($map)->order('id desc')->limit(0,$from)->select();
             		
@@ -82,10 +103,156 @@ class MessageController extends AdminBaseController{
         }
         return $this->fetch();
     }
+
+    public function tomobile()
+    {
+     
+        $param = $this->request->param();
+        $username = $_SESSION['think']['name'];
+        $userinfo = Db::name('user')->where('user_login',$username)->find();
+        $userid = $userinfo['id'];
+            //分配的信息id
+        $fenpei  = Db::name('user_fp')->where('userid',$userid)->find();
+        $bol=0;
+        if(!empty($fenpei))
+        {
+                $cates = $fenpei['cates'];
+                $from = $fenpei['tiaoshu'];
+                $map[] = ['create_time','>',$fenpei['from_time']];
+                $fromid=['id'=>$param['id']];
+                 $lists = Db::name('message')->field(['id'])->where('catid','in',$cates)->where($map)->order('id')->limit(0,$from)->select()->toArray();
+                $message = Db::name('message')->field(['id','mobile'])->where('catid','in',$cates)->where($map)->where($fromid)->limit(0,$from)->find();
+                      // dump(Db::table('message')->getLastSql());
+                foreach ($lists as $value) {
+                    if(in_array($message['id'], $value)){
+                        $bol=$message['mobile'];
+                    }
+                }
+                //检查记录
+                if(!empty($message)){
+                    $mobile_where=['user_id'=>$userid,'msg_id'=>$message['id']];
+                    $mobile_log=Db::name('mobile_log')->where($mobile_where)->find();
+                    if(empty($mobile_log))
+                    {
+                        //如果为空则需要插入记录并在user_fp减少一个点数
+                        //先判断是否还有点数
+                        if($fenpei['points']>0){
+                            $mobile_in['user_id']=$userid;
+                            $mobile_in['msg_id']=$message['id'];
+                            $mobile_in['create_time']=time();
+                            $res=Db::name('mobile_log')->insert($mobile_in);
+                            if($res){
+                              
+                                Db::name('user_fp')->where('userid',$userid)->dec('points', 1)->update();
+                                $this->success($message['mobile']);
+                            }
+
+                        }else{
+                           $this->error('你的点数已经用尽');
+                        }
+                        
+
+                    }else{
+                        $this->success($message['mobile']);
+                    }
+
+                }else{
+                    $this->error('数据获取错误');
+                }
+                
+        }
+       
+
+    }
+
 	
 	public function add(){
 		return $this->fetch();
 	}
+
+
+    public function export()
+    {
+        $map  = array();
+        $username = $_SESSION['think']['name'];
+        $userinfo = Db::name('user')->where('user_login',$username)->find();
+        $userid = $userinfo['id'];
+        //分配的信息id
+        $fenpei  = Db::name('user_fp')->where('userid',$userid)->find();
+        if(!empty($fenpei))
+        {
+            $cates = $fenpei['cates'];
+            $from = $fenpei['tiaoshu'];
+            $map[] = ['create_time','>',$fenpei['from_time']];
+            if($fenpei['enable']==1){
+                $map2[] = ['p1.create_time','>',$fenpei['from_time']];
+                $field=['p1.*','FROM_UNIXTIME(p1.create_time)'=>'create_time' ];
+                $data = Db::name('message')
+                    ->alias('p1')
+                    ->leftJoin('mobile_log p2','p1.`id`=p2.`msg_id`')
+                    ->field($field)->where('p1.catid','in',$cates)->where($map2)->where('p2.user_id',$userid)->limit(0,$from)->select();
+
+
+            }else{
+
+                $field=['*'];
+                $data = Db::name('message')->field($field)->where('catid','in',$cates)->where($map)->order('id')->limit(0,$from)->select();
+            }
+
+
+        }
+        $field = array(
+            'A' => array('jm_title', '品牌'),
+            'B' => array('news_kw', '新闻'),
+            'C' => array('catname', '分类'),
+            'D' => array('name', '姓名'),
+            'E' => array('ip', 'IP'),
+            'F' => array('area', '所在区域'),
+            'G' => array('tzed', '投资额度'),
+            'H' => array('mobile', '电话'),
+            'I' => array('content', '留言内容'),
+            'J' => array('create_time', '留言时间'),
+
+        );
+
+       $this->exportExcel($field, $data,date('Y-m-d'));
+
+
+    }
+
+
+
+    private function exportExcel($field, $list, $title='name')
+    {
+
+        $objPHPExcel = new \PHPExcel();
+        $objWriter = new \PHPExcel_Writer_Excel5($objPHPExcel); //设置保存版本格式
+        $objPHPExcel->getActiveSheet()->setTitle('用户信息表');
+        foreach ($list as $key => $value) {
+            foreach ($field as $k => $v) {
+                if ($key == 0) {
+                    $objPHPExcel->getActiveSheet()->setCellValue($k . '1', $v[1]);
+                }
+                $i = $key + 2;
+                $objPHPExcel->getActiveSheet()->setCellValue($k . $i, $value[$v[0]]);
+            }
+
+        }
+        ob_end_clean();
+        header("Pragma: public");
+        header("Expires: 0");
+        header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
+        header("Content-Type:application/force-download");
+        header("Content-Type:application/vnd.ms-execl");
+        header("Content-Type:application/octet-stream");
+        header("Content-Type:application/download");;
+        header('Content-Disposition:attachment;filename='.$title.'.xls');
+        header("Content-Transfer-Encoding:binary");
+        $objWriter->save('php://output');
+    }
+
+
+
 	
 	public function addPost(){
 		$param = $this->request->param();
@@ -97,6 +264,21 @@ class MessageController extends AdminBaseController{
 				$param['jm_title'] = $info['title'];
 			}
 		}
+        // ppppppppp
+        if($param['catname']){
+            $cat=Db::name('category')->where('catname',$param['catname'])->find();
+            if(!empty($cat)){
+
+                $param['catid']=$cat['id'];
+
+            }else{
+               $this->error('添加失败'); 
+            }
+
+
+        }
+        // ppppppppp
+
 		$param['create_time'] = time();
 		$res = Db::name('message')->insert($param);
 		if($res){
@@ -162,7 +344,9 @@ class MessageController extends AdminBaseController{
     public function editPost(){
         $param = $this->request->param();
         isset($param['id']) or $this->error('需要id');
+      
         //先删掉
+
         Db::name('Message_fp')->where('msg_id',$param['id'])->delete();
         foreach($param['members'] as $kk=>$vv){
             $data = array(
@@ -190,7 +374,22 @@ class MessageController extends AdminBaseController{
         $param = $this->request->param();
         isset($param['id']) or $this->error('需要id');
         //先删掉
-  
+      
+          // ppppppppp
+        if($param['catname']){
+            $cat=Db::name('category')->where('catname',$param['catname'])->find();
+            if(!empty($cat)){
+
+                $param['catid']=$cat['id'];
+
+            }else{
+               $this->error('添加失败,没有该分类'); 
+            }
+
+
+        }
+        // ppppppppp
+
         $res = Db::name('message')->update($param);
         $this->success('修改成功');
     }
@@ -302,11 +501,17 @@ class MessageController extends AdminBaseController{
         $param['cates'] = implode(",",$param['cates']);
         $param['from_time'] = strtotime($param['from_time']);
         $param['end_time'] = strtotime($param['end_time']);
+        //pppppp
+        if(!$param['enable']){
+             $param['enable']='2';   
+        }
+        //pppppp
         if($param['ypz']==1){
             //更新
             unset($param['ypz']);
             $param['update_time'] = time();
             $res = Db::name('user_fp')->where('userid',$param['userid'])->update($param);
+
         }else{
             //添加
             unset($param['ypz']);