177 行
7.1 KiB
PHP
可执行文件
177 行
7.1 KiB
PHP
可执行文件
<?php
|
|
|
|
namespace Retail\Controller;
|
|
|
|
use Think\Controller;
|
|
use Think\Auth;
|
|
|
|
//[1.7.90]
|
|
class BaseController extends EmptyController
|
|
{
|
|
protected $merchant_id; //商户ID
|
|
protected $store_id; //门店ID
|
|
protected $login_user; //登录的用户信息
|
|
protected $role_info; //角色端信息
|
|
static $identity; //用户身份
|
|
static $showPrice; //店长是否有查看进价权限 1有 2无
|
|
static $global_store_jurisdiction; //门店权限
|
|
|
|
public function _initialize()
|
|
{
|
|
$jurisdiction_user = session('jurisdiction_user');
|
|
$global_store_jurisdiction = session('global_store_jurisdiction');
|
|
if (empty($jurisdiction_user)) {
|
|
if (IS_POST) {
|
|
$re['status'] = 0;
|
|
$re['state'] = 0;
|
|
$re['code'] = 0;
|
|
$re['count'] = 0;
|
|
$re['data'] = array();
|
|
$re['msg'] = '您无权操作1';
|
|
|
|
$this->ajaxReturn($re);
|
|
} else {
|
|
session(null);
|
|
echo '<script>top.window.location="' . $_SERVER["SCRIPT_NAME"] . '/Retail/Login/index"</script>';
|
|
exit;
|
|
}
|
|
}
|
|
$Auth = new Auth;
|
|
$res = $Auth->check($jurisdiction_user['id']);
|
|
if ($res) {
|
|
if (IS_POST) {
|
|
// 是ajax请求数据
|
|
$user = session("ls_userinfo");
|
|
if (!$user) {
|
|
$rt['status'] = 0;
|
|
$rt['msg'] = '登录超时,请重新登录';
|
|
$rt['code'] = 1;
|
|
$rt['count'] = 0;
|
|
$rt['data'] = array();
|
|
$this->ajaxReturn($rt);
|
|
}
|
|
$hash = I('get.hash');
|
|
$storeid = session('storeid');
|
|
if ($hash && $hash != md5($storeid) && $storeid) {
|
|
$str = '系统检测到您切换了门店,请刷新当前页面再操作';
|
|
$rt['status'] = 0;
|
|
$rt['msg'] = $str;
|
|
$rt['code'] = 1;
|
|
$rt['count'] = 0;
|
|
$rt['data'] = array();
|
|
$this->ajaxReturn($rt);
|
|
}
|
|
} else {
|
|
$id = I('get.ls_store_id'); //有传storeid
|
|
if (!empty($id)) {
|
|
$store = D('Store')->getFind(array('id' => $id, 'merchantid' => $jurisdiction_user['merchantid']));
|
|
if (!empty($store)) {
|
|
session('storeid', $id);
|
|
} else {
|
|
if (IS_POST) {
|
|
$re['status'] = 0;
|
|
$re['state'] = 0;
|
|
$re['code'] = 0;
|
|
$re['count'] = 0;
|
|
$re['data'] = array();
|
|
$re['msg'] = '您无权操作2';
|
|
$this->ajaxReturn($re);
|
|
} else {
|
|
$this->diemsg(0, '您无权操作');
|
|
}
|
|
}
|
|
}
|
|
//checkSite();//检测该域名是否可用
|
|
$this->loadBaseInfo();
|
|
$this->checkwebset();
|
|
// 全局添加 storeid 的md5 加密 参数 通过 U 方法 判断 session("ls_userhash");
|
|
$hash = I('get.hash');
|
|
$storeid = session('storeid');
|
|
if ($hash && $hash != md5($storeid) && $storeid) {
|
|
$str = '系统检测到您切换了门店,将刷新跳转到最后的门店,立即刷新?';
|
|
echo '<script>
|
|
if(top.layer){
|
|
top.layer.confirm("' . $str . '",function() {
|
|
top.window.location.reload();
|
|
})
|
|
}else{
|
|
var r=confirm("' . $str . '");
|
|
if (r==true){
|
|
top.window.location.reload();
|
|
}
|
|
}
|
|
</script>';
|
|
exit;
|
|
}
|
|
}
|
|
} else {
|
|
if (IS_POST) {
|
|
$re['status'] = 0;
|
|
$re['state'] = 0;
|
|
$re['code'] = 0;
|
|
$re['count'] = 0;
|
|
$re['data'] = array();
|
|
$re['msg'] = '您无权操作2';
|
|
$this->ajaxReturn($re);
|
|
} else {
|
|
$this->diemsg(0, '您无权操作');
|
|
}
|
|
}
|
|
$this->role_info = session("ls_userinfo");
|
|
$this->login_user = $jurisdiction_user;
|
|
$this->merchant_id = $jurisdiction_user['merchant_id'];
|
|
$this->store_id = $jurisdiction_user['store_id'] ? $jurisdiction_user['store_id'] : session('store_id') ? session('store_id') : session('storeid');
|
|
self::$identity = session("identity") ? session("identity") : '';
|
|
self::$showPrice = $global_store_jurisdiction['showpurch_price'] ? $global_store_jurisdiction['showpurch_price'] : '';
|
|
self::$global_store_jurisdiction = $global_store_jurisdiction ? $global_store_jurisdiction : [];
|
|
$this->assign('identity', self::$identity);
|
|
}
|
|
|
|
public function loadBaseInfo()
|
|
{
|
|
$user = session("jurisdiction_user");
|
|
$store_id = session('storeid');
|
|
if ($store_id) {
|
|
//全局设置的门店权限
|
|
$global_store_jurisdiction = M('retail_store_jurisdiction')->where(array('storeid' => $store_id))->find();
|
|
if ($user['login_type'] == 3) {
|
|
//商户身份进行权限转换
|
|
foreach ($global_store_jurisdiction as $key => &$val) {
|
|
if (!strpos($key, '_name')) {
|
|
$val = 1;
|
|
}
|
|
}
|
|
}
|
|
session('global_store_jurisdiction', $global_store_jurisdiction);
|
|
$this->assign('global_store_jurisdiction', $global_store_jurisdiction);
|
|
}
|
|
// 店长账号
|
|
if ($user['account_type'] == 2 && !$store_id) {
|
|
session('storeid', $user['storeid']);
|
|
//全局设置的门店权限
|
|
$global_store_jurisdiction = session('global_store_jurisdiction');
|
|
if (!$global_store_jurisdiction) {
|
|
$global_store_jurisdiction = M('retail_store_jurisdiction')->where(array('storeid' => $store_id))->find();
|
|
$global_store_jurisdiction = $global_store_jurisdiction ? $global_store_jurisdiction : array();
|
|
session('global_store_jurisdiction', $global_store_jurisdiction);
|
|
}
|
|
$this->assign('global_store_jurisdiction', $global_store_jurisdiction);
|
|
}
|
|
}
|
|
|
|
//禁止不动的失败提示的信息
|
|
public function diemsg($status, $msg)
|
|
{
|
|
//成功为1,失败为0
|
|
$this->error($msg);
|
|
die();
|
|
}
|
|
|
|
public function error2()
|
|
{
|
|
$rt['status'] = -1;
|
|
$rt['msg'] = '您无权操作';
|
|
$this->ajaxReturn($rt);
|
|
}
|
|
}
|