<?php
/*
 本代码由 焕岱科技 创建
 技术支持 WX：15285007200
 严禁反编译、逆向等任何形式的侵权行为，违者将追究法律责任
*/

namespace app\api\controller\store;

use app\api\controller\Base;
use think\Db;
use think\Loader;

class StoreBase extends Base
{

    protected $store = null;
    protected $dealer_store = null;
    public function _initialize()
    {
        parent::_initialize();
        $this->initStore();
    }
    
    public function initStore(){
        $identity = $this->param("identity/d");
        
        $user = $this->user;
        if($user['id'] == 13){
            // $user = \app\common\model\bbfxshop\User::getInfo(3);
        }
        
        $controllername = Loader::parseName($this->request->controller());
        $actionname = strtolower($this->request->action());
        $path = str_replace('.', '/', $controllername) . '/' . $actionname;
        $paths = ['store/store/getlist','store/store/info'];
        if(!in_array($path,$paths)){
            if($identity == 1){
                
                if($user['is_dealer'] != 1){
                    __error("您还不是经销商身份");
                }
                $dealer_store_ids = deid($user['dealer_store']);
                $dealer_store1 = Db::name("bbfx_store")->where(['uniacid'=>UNIACID,'type'=>0,'status'=>1,'province'=>['like','%'.$this->user['dealer_province'].'%'],'city'=>$user['dealer_city']])->select();
                if(!empty($dealer_store_ids)){
                    $dealer_store2 = Db::name("bbfx_store")->where(['uniacid'=>UNIACID,'type'=>0,'status'=>1,'id'=>['in',$dealer_store_ids]])->select();
                }
                if(empty($dealer_store1)) $dealer_store1 = [];
                if(empty($dealer_store2)) $dealer_store2 = [];
                $dealer_store = array_merge($dealer_store1,$dealer_store2);
                
                $this->dealer_store = $dealer_store;
            }
            else{
                $store_id = $this->param("store_id/d");
                if($store_id > 0){
                    $this->store = Db::name("bbfx_store")->where(['uniacid'=>UNIACID,'id'=>$store_id,'type'=>0,'user_id'=>['like','%,'.$user['id'].',%']])->find();
                    if(empty($this->store)){
                        $this->store = Db::name("bbfx_store")->where(['uniacid'=>UNIACID,'id'=>$store_id,'type'=>0,'user_id'=>$user['id']])->find();
                    }
                }
                else{
                    $this->store = Db::name("bbfx_store")->where(['uniacid'=>UNIACID,'type'=>0,'user_id'=>['like','%,'.$user['id'].',%']])->find();
                    if(empty($this->store)){
                        $this->store = Db::name("bbfx_store")->where(['uniacid'=>UNIACID,'type'=>0,'user_id'=>$user['id']])->find();
                    }
                    if(empty($this->store)){
                        $this->store = Db::name("bbfx_store")->where(['uniacid'=>UNIACID,'type'=>0,'clerk_user_id'=>['like','%,'.$user['id'].',%']])->find();
                    }
                }
                if(empty($this->store)){
                    __error("您还不是店长身份");
                }
            }
        }
        
    }
}