Browse Source

【Mod】优化商业公司代码

liuxiangxin 4 months ago
parent
commit
1988d92a2f

+ 2 - 3
app/Http/Controllers/Admin/Business.php

@@ -294,9 +294,8 @@ class Business extends Auth{
 		if( !$oldData )				return $this->error('查无数据');
         //查询管理账户信息
         $adminInfo                  = $AdminUser->getOne($oldData['admin_uid']);
-        // 错误告知
-        if( !$adminInfo )			return $this->error('查无管理员账户数据');
-        $oldData['city_ids']			= explode(',',$oldData['city_ids']);
+        $adminInfo                  = $adminInfo ? $adminInfo : ['username'=>'','phone'=>''];
+        $oldData['city_ids']		= explode(',',$oldData['city_ids']);
         // 获取列表
         $cityList					= $City->getCityList();
         $session				    = session('userRule') ? session('userRule') : ['menu_type'=>0,'company_id'=>0,'business_id'=>0];

+ 2 - 1
app/Http/Controllers/Admin/Orders.php

@@ -112,7 +112,8 @@ class Orders extends Auth{
 			// 重组
 			$list[$key]				= $value;
 		}
-        $businessList 			    = $Business->getList();
+		// 查询商业公司数据
+        $businessList 			    = $Business->getListByAdmin();
 		// 分配数据
 		$this->assign('empty', '<tr><td colspan="20">~~暂无数据</td></tr>');
 		$this->assign('list', $list);

+ 4 - 4
app/Http/Controllers/Admin/Product.php

@@ -110,7 +110,7 @@ class Product extends Auth{
 		}
 		// 获取列表
 		$cityList					= $City->getCityList();
-        $businessList 			    = $Business->getList();
+        $businessList 			    = $Business->getListByAdmin();
 		// 分配数据
 		$this->assign('empty', '<tr><td colspan="20">~~暂无数据</td></tr>');
 		$this->assign('cityList',$cityList);
@@ -416,7 +416,7 @@ class Product extends Auth{
 		// 获取类型数据
 		$typeList				= $ProductType->getList();
 		$cityList				= $City->getCityList();
-		$businessList 			= $Business->getList();
+		$businessList 			= $Business->getListByAdmin();
 		$producerList			= $Producer->getList();
 		// 标签列表
 		$tagData				= $WeiBanTags->query()->groupBy('group')->groupBy('name')->get(['group','name'])->toArray();
@@ -668,7 +668,7 @@ class Product extends Auth{
 		// 获取类型数据
 		$typeList				= $ProductType->getList();
 		$cityList				= $City->getCityList();
-		$businessList 			= $Business->getList();
+		$businessList 			= $Business->getListByAdmin();
 		$producerList			= $Producer->getList();
 		// 标签列表
 		$tagData					= $WeiBanTags->query()->groupBy('group')->groupBy('name')->get(['group','name'])->toArray();
@@ -934,7 +934,7 @@ class Product extends Auth{
 		// 获取类型数据
 		$typeList				= $ProductType->getList();
 		$cityList				= $City->getCityList();
-		$businessList 			= $Business->getList();
+		$businessList 			= $Business->getListByAdmin();
 		$producerList			= $Producer->getList();
 		// 分配数据
 		$this->assign('tagList',$tagList);

+ 2 - 2
app/Http/Controllers/Admin/RegimentActive.php

@@ -151,7 +151,7 @@ class RegimentActive extends Auth{
         // 标签列表
         $tagList					        = [];
         $cityList					        = [];
-        $businessList 			    = $Business->getList();
+        $businessList 			            = $Business->getListByAdmin();
         // 分配数据
         $this->assign('cityList',$cityList);
         $this->assign('tagList',$tagList);
@@ -237,7 +237,7 @@ class RegimentActive extends Auth{
         }
         // 错误告知
         if( !$oldData )				        return $this->error('查无数据');
-        $businessList 			    = $Business->getList();
+        $businessList 			            = $Business->getListByAdmin();
         // 返回结果
         $oldData['product_code']	        = $Product->idToCode($oldData['product_id']);
         $this->assign('oldData',$oldData);

+ 2 - 2
app/Http/Controllers/Api/ShopCart.php

@@ -133,7 +133,7 @@ class ShopCart extends Api{
 		// 循环处理数据
 		foreach ($list as $key => $value) {
 			// 获取商业公司名称
-			$value['business_name'] = $value['business_id'] ? $Business->getOne($value['business_id'])['name'] : 0;
+			$value['business_name'] = $value['business_id'] ? (string) $Business->getOne($value['business_id'],'name') : '';
 			// 如果有sku
 			if( $value['skuid'] )	{
 				// 是否存在
@@ -256,7 +256,7 @@ class ShopCart extends Api{
 		// 循环处理数据
 		foreach ($list as $key => $value) {
 			// 获取商业公司名称
-			$value['business_name'] = $value['business_id'] ? $Business->getOne($value['business_id'])['name'] : 0;
+			$value['business_name'] = $value['business_id'] ? (string)$Business->getOne($value['business_id'],'name') : '';
 			// 如果有sku
 			if( $value['skuid'] )	{
 				// 是否存在

+ 37 - 19
app/Models/Business.php

@@ -64,26 +64,11 @@ class Business extends Model
     public function getList($force = false)
     {
         // 结果数据
-        //$list                  = $force ? [] : cache('admin:business:list');
-        $list                   =   [];
+        $list                  = $force ? [] : cache('admin:business:list');
         // 不存在数据
-        if ( !$list ) {
-            $session           = session('userRule');
-            $map                =   [];
-            $map[] = ['status','=',0];
-            if ($session){
-                $map[] = ['company_id','=',$session['company_id']];
-                if ($session['business_id']){
-                    $map[] = ['id','=',$session['business_id']];
-                }
-                if ($session['menu_type'] == 1 && $session['data_type'] == 2){
-                    $map[] = ['leader_uid','=',$session['admin_uid']];
-                }
-            }
+        if ( !$list )          {
             // 从数据库获取数据
-            $data              = $this->query()->where($map)->get();
-            // 是否有数据
-            $data              = $data ? $data->toArray() : [];
+            $data              = $this->query()->where([['status','=',0]])->get()->toArray();
             // 循环处理数据
             $list              = [];
             // 进行更新
@@ -98,6 +83,39 @@ class Business extends Model
         return                  $list;
     }
 
+
+    /**
+     * 获取列表
+     * @param   Bool    $force  是否强制更新
+     * 
+     */
+    public function getListByAdmin()
+    {
+        // 结果数据
+        $list                               = [];
+        // 不存在数据
+        if ( !$list )                       {
+            $session                        = session('userRule') ? session('userRule') : ['company_id'=>1,'business_id'=>0,'menu_type'=>0,'data_type'=>0];
+            $map                            = [['status','=',0]];
+            if( $session['company_id'] )    $map[] = ['company_id','=',$session['company_id']];
+            if( $session['business_id'] )   $map[] = ['id','=',$session['business_id']];
+            if ($session['menu_type'] == 1  && $session['data_type'] == 2) $map[] = ['leader_uid','=',$session['admin_uid']];
+            // 从数据库获取数据
+            $data                           = $this->query()->where($map)->get();
+            // 是否有数据
+            $data                           = $data ? $data->toArray() : [];
+            // 循环处理数据
+            $list                           = [];
+            // 进行更新
+            foreach ($data as $value)       {
+                // 重组数据
+                $list[$value['id']] = $value;
+            }
+        }
+        // 返回结果
+        return                              $list;
+    }
+
     /**
      * 获取配置平台对应的应用数据
      * 
@@ -108,7 +126,7 @@ class Business extends Model
     public function getOne($id,$field='')
     {
         // 获取列表数据
-        $list                   = $this->getList();
+        $list                   = $this->getList(true);
         // 获取数据
         $one                    = isset($list[$id]) ? $list[$id] : [];
         // 返回值