params['isDev']==true) { $we_res = (new \yii\db\Query()) ->from('{{%ybwm_users}}') ->where(['uniacid' => $this->wqData['uniacid'],'type'=>1]) ->one(); if (!$we_res) { $role_re = []; $salt = randoms(8); $auth_key = Yii::$app->params['authkey']; $password = checkPassWord($salt, $auth_key, rand(6)); $role_re = array( 'uniacid'=>$this->wqData['uniacid'], 'userName' => 'we7v2'.$this->wqData['uniacid'], 'passWord' => $password, 'salt' => $salt, 'type' => 1, 'createdAt' => time(), ); YII::$app->db->createCommand()->insert('{{%ybwm_users}}', $role_re)->execute(); $role_re = array_merge($role_re, $_SESSION['userInfo']); $role_re['role'] = $_SESSION['userInfo']['role']; Yii::$app->session->set('userInfo', $role_re); } } $session_name=$_SESSION['userInfo']; if(!$session_name){ if(Yii::$app->params['isDev']==true){ header('Location: ' . Yii::$app->request->hostInfo); }else{ Yii::$app->response->redirect(['admin/login/index'], 301)->send();die; } } //微擎版本 if(Yii::$app->params['isDev']==true){ Yii::$app->response->redirect(Yii::$app->request->hostInfo.'/addons/'.$this->wqData['module'].'/views/channel/index/index.html'); //独立版本 }else{ Yii::$app->response->redirect(Yii::$app->request->hostInfo.'/views/channel/index/index.html'); } } //退出登陆 public function actionLoginout(){ $session = Yii::$app->session; $session->remove('userInfo'); return $this->result(1,'成功'); } //websocke测试页面 public function actionWs_ceshi(){ return $this->renderPartial('ws_ceshi'); } //门店概况 public function actionStoreIndex(){ $result=axios_request(); $uniacid=$this->wqData['uniacid']; $storeId=$result['storeId']?:$this->wqData['storeId']; $storeInfo=(new \yii\db\Query()) ->from('{{%ybwm_store}}') ->where(['uniacid'=>$uniacid,'id'=>$storeId]) ->one(); $startTime=strtotime(date('Y-m-d 00:00:00',strtotime($result['startTime']))); $endTime=strtotime(date('Y-m-d 23:59:59',strtotime($result['endTime']))); $beforeStartTime=strtotime(date('Y-m-d 00:00:00',$endTime-14*24*60*60)); $beforeEndTime=$endTime; //今日订单数 $sum=Statistics::getPayNum($uniacid,$storeId); $totalSum=Statistics::getPayNum($uniacid,$storeId,$startTime,$endTime); //今日营业额 $money=Statistics::getPayMoney($uniacid,$storeId); $totalMoney=Statistics::getPayMoney($uniacid,$storeId,$startTime,$endTime); //付款人数 $payUser=Statistics::getPayPeople($uniacid,$storeId); $totalPayUser=Statistics::getPayPeople($uniacid,$storeId,$startTime,$endTime); //浏览量 $visitCount=Statistics::getViews($uniacid,$storeId); $totalVisitCount=Statistics::getViews($uniacid,$storeId,$startTime,$endTime); $moneyArr=Statistics::getShopMoneyDayChart($this->wqData['uniacid'],$storeId,$beforeStartTime,$beforeEndTime); $moneyResult=dataByTime($moneyArr,$result['endTime']); $payArr=Statistics::getShopPayDayChart($this->wqData['uniacid'],$storeId,$beforeStartTime,$beforeEndTime); $payResult=dataByTime($payArr,$result['endTime']); $beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y')); $endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1; //预计收入 $yujiSum=Statistics::revenue($uniacid,$storeId,$startTime,$endTime); $yesterSum=Statistics::revenue($uniacid,$storeId,$beginYesterday,$endYesterday); //有效订单 $payCount=Statistics::payOkNum($uniacid,$storeId,$startTime,$endTime); $yesPayCount=Statistics::payOkNum($uniacid,$storeId,$beginYesterday,$endYesterday); //付款人数 $userCount=Statistics::getPayPeople($uniacid,$storeId,$startTime,$endTime); $yesuserCount=Statistics::getPayPeople($uniacid,$storeId,$beginYesterday,$endYesterday); //浏览量 // $visitCount=(new \yii\db\Query()) // ->from('{{%ybwm_visit_list}}') // ->where(['uniacid'=>$uniacid]) // ->andWhere(['>=','createdAt',$startTime]) // ->andWhere(['<','createdAt',$endTime]) // ->andWhere(['in','modelname',[1,2]]) // ->count()?:0; $yesVisitCount=(new \yii\db\Query()) ->from('{{%ybwm_visit_list}}') ->where(['uniacid'=>$uniacid]) ->andWhere(['>=','createdAt',$beginYesterday]) ->andWhere(['<','createdAt',$endYesterday]) ->andWhere(['in','modelname',[1,2]]) ->count()?:0; //商品销量TOP10 $goodsData=(new \yii\db\Query()) ->select('b.name,sum(a.num)num,sum(a.money*a.num) money') ->from('{{%ybwm_order_goods}} a') ->leftJoin('{{%ybwm_core_goods}} b','a.goodsId=b.id') ->where(['a.uniacid'=>$uniacid,'a.storeId'=>$storeId]) ->groupBy('goodsId') ->orderBy('num desc') ->limit(10)->all()?:[]; foreach ($goodsData as $key=>$v){ $goodsData[$key]['id']=$key+1; } //外卖订单 $query=(new \yii\db\Query()) ->from('{{%ybwm_bill}}') ->where(['uniacid'=>$uniacid,'storeId'=>$storeId]); $sumMoney=$query->sum('money'); $outMoney=$query->andWhere(['origin'=>1])->sum('money'); $data=array( 'totalSum'=>$totalSum, //今日订单数 'sum'=>$sum, //总订单数 'totalMoney'=>$totalMoney, //今日营业额 'money'=>$money, //总营业额 'totalPayUser'=>$totalPayUser, //付款人数 'payUser'=>$payUser, //总付款人数 'totalVisitCount'=>$totalVisitCount,//浏览量 'visitCount'=>$visitCount, //总浏览量 'moneyResult'=>$moneyResult, //订单数柱形图 'payResult'=>$payResult, //营业额柱形图 'yujiSum'=>$yujiSum, //预计收入 'yesterSum'=>$yesterSum, //昨日预计收入 'payCount'=>$payCount, //有效订单 'yesPayCount'=>$yesPayCount, //昨日有效订单 'userCount'=>$userCount, //付款人数 'yesuserCount'=>$yesuserCount, //昨日付款人数 'yesVisitCount'=>$yesVisitCount, //昨日浏览量 'goodsData'=>$goodsData, //销量TOP10商品 'sumMoney'=>$sumMoney?:0, //营业额 'outMoney'=>$outMoney?:0, //外卖营业额 'goodsModel'=>$storeInfo['goodsModel'], ); return $this->result(1,'成功',$data); } public function actionUserList(){ $result=axios_request(); $page=$result['page']?$result['page']:1; $num=($page-1)*10; $limit=10; $query=(new \yii\db\Query()) ->select(["FROM_UNIXTIME(a.createdAt,'%Y-%m-%d %H:%i:%s') createdAt",'a.id memberId','a.userName memberName','b.id userId','b.userName','a.portrait','apply_name','c.name','c.id storeId','d.id applyId']) ->from('{{%ybwm_merchant_member}} a') ->leftJoin('{{%ybwm_users}} b','a.id=b.userId') ->leftJoin('{{%ybwm_store}} c','b.storeId=c.id') ->leftJoin('{{%ybwm_apply}} d','b.uniacid=d.id') ->where(['>','a.portrait','']) ->orderBy('a.id desc'); $count=$query->count(); $data=(clone $query)->offset($num)->limit($limit)->all(); return $this->result(1,'成功',$data,$count); } //压缩小程序文件夹打包并下载 public function actionMiniDown(){ $dir='miniApp/'; $res=miniScan($dir); //file_put_contents(Yii::$app->basePath.'/web/oldSoft.lock.json', json_encode($res)); $datalist=array_keys($res); //dd($datalist);die; if(file_exists(Yii::$app->basePath.'/web/upgraded/mini.zip')){ unlink(Yii::$app->basePath.'/web/upgraded/mini.zip'); } //dd($newData);die; addFileToZip($datalist,Yii::$app->basePath.'/web/upgraded/','mini.zip'); header('Content-Type:text/html;charset=utf-8'); header('Content-disposition:attachment;filename=mini.zip'); $filesize = filesize(Yii::$app->basePath.'/web/upgraded/mini.zip'); readfile(Yii::$app->basePath.'/web/upgraded/mini.zip'); header('Content-length:'.$filesize); } }