liugc 1 год назад
Родитель
Сommit
d25e6e11ae

+ 11 - 11
app/adminapi/logic/master_worker/MasterWorkerTeamLogic.php

@@ -45,7 +45,7 @@ class MasterWorkerTeamLogic extends BaseLogic
                 throw new \Exception('该师傅已加入团队');
             }
 
-            if($params['goods_category_ids']){
+            if(isset($params['goods_category_ids']) && $params['goods_category_ids']){
                 foreach ($params['goods_category_ids'] as $val){
                     is_array($val)?($ids[] = end($val)):($ids[] = $val);
                 }
@@ -57,16 +57,16 @@ class MasterWorkerTeamLogic extends BaseLogic
                 'team_name' => $params['team_name'],
                 'master_worker_id' => $params['master_worker_id'],
                 'tenant_id' => $params['tenant_id']??0,
-                'city' => $params['city'],
-                'area_name' => $params['area_name'],
-                'lon' => $params['lon'],
-                'lat' => $params['lat'],
-                'distance' => $params['distance'],
-                'am_limit' => $params['am_limit'],
-                'pm_limit' => $params['pm_limit'],
-                'min_order' => $params['min_order'],
-                'goods_category_ids' => $params['goods_category_ids'],
-                'accept_order_status' => $params['accept_order_status'],
+                'city' => $params['city']??0,
+                'area_name' => $params['area_name']??'',
+                'lon' => $params['lon']??0,
+                'lat' => $params['lat']??0,
+                'distance' => $params['distance']??0,
+                'am_limit' => $params['am_limit']??0,
+                'pm_limit' => $params['pm_limit']??0,
+                'min_order' => $params['min_order']??0,
+                'goods_category_ids' => $params['goods_category_ids']??'',
+                'accept_order_status' => $params['accept_order_status']??1,
             ]);
             MasterWorker::where('id', $params['master_worker_id'])->update(
                 [

+ 1 - 0
app/adminapi/logic/tenant/TenantAdminLogic.php

@@ -51,6 +51,7 @@ class TenantAdminLogic extends BaseLogic
 
             $admin = TenantAdmin::create([
                 'name'             => $params['name'],
+                'root'             => $params['root']??0,
                 'tenant_id'        => $params['tenant_id'],
                 'account'          => $params['account'],
                 'avatar'           => $avatar,

+ 8 - 0
app/common.php

@@ -1,5 +1,6 @@
 <?php
 // 应用公共文件
+use app\common\logic\TableDataLogic;
 use app\common\model\goods_category\GoodsCategory;
 use app\common\model\setting\PostageRegion;
 use app\common\service\FileService;
@@ -549,3 +550,10 @@ function getSuperiorCategoryTree($category_ids)
         ->toArray();
     return linear_to_tree($tree_data, 'children');
 }
+// 获取选项数据
+function getOptionDataByTable($table) {
+    if (method_exists(TableDataLogic::class, $table)) {
+        $lists = TableDataLogic::$table();
+    }
+    return $lists??[];
+}

+ 11 - 0
app/common/logic/TableDataLogic.php

@@ -120,6 +120,17 @@ class TableDataLogic extends BaseLogic
         return $data;
     }
 
+    public static function postageRegionCity(): array
+    {
+        // 缓存优化
+        $data = cache('labelPostageRegionCity');
+        if(empty($data)){
+            $lists = PostageRegion::whereIn('level',[1,2])->field('id,pid,name as label,id as value,"data_table_postageRegionCity" as type_value')->select()->toArray();
+            $data = linear_to_tree($lists, 'children', 'id', 'pid');
+            cache('labelPostageRegionCity',$data);
+        }
+        return $data;
+    }
     public static function jobsRules(): array
     {
         return JobsRules::field(['id', 'rule_name as label','id as value','"data_table_jobsRules" as type_value'])->select()->toArray();

+ 0 - 1
app/tenantapi/lists/master_worker/MasterWorkerLists.php

@@ -69,7 +69,6 @@ class MasterWorkerLists extends BaseAdminDataLists implements ListsSearchInterfa
     }
     public function queryWhere(){
         $where = [];
-        $where[] = ['mw.team_role','in',[0,1]];
         if(isset($this->params['time_period']) && !empty($this->params['time_period'])){
             $sqls = [];
             foreach ($this->params['time_period'] as $item) {

+ 8 - 11
app/tenantapi/logic/ConfigLogic.php

@@ -86,23 +86,20 @@ class ConfigLogic
         
         $type = explode(',', $type);
         $lists = DictData::whereIn('type_value', $type)->select()->toArray();
-        foreach ($type as $item) {
-            if (str_contains($item, 'data_table_')) {
-                $table = str_replace('data_table_', '', $item);
-                if (method_exists(TableDataLogic::class, $table)) {
-                    $lists = array_merge($lists, TableDataLogic::$table());
-                }
-            }
-        }
         if (empty($lists)) {
             return [];
         }
 
         $result = [];
         foreach ($type as $item) {
-            foreach ($lists as $dict) {
-                if ($dict['type_value'] == $item) {
-                    $result[$item][] = $dict;
+            if (str_contains($item, 'data_table_')) {
+                $table = str_replace('data_table_', '', $item);
+                $result[$item] = getOptionDataByTable($table);
+            }else{
+                foreach ($lists as $dict) {
+                    if ($dict['type_value'] == $item) {
+                        $result[$item][] = $dict;
+                    }
                 }
             }
         }

+ 6 - 6
app/workerapi/logic/TenantRegisterLogic.php

@@ -39,7 +39,7 @@ class TenantRegisterLogic extends BaseLogic
             if(!$info->isEmpty()){
                 throw new \Exception('手机号已占用');
             }
-            $params['province'] = getProvinceByCityId($params['city']);
+            isset($params['city']) && $params['province'] = getProvinceByCityId($params['city']);
             //$params['province'] && $params['area_name'] = $postageRegion[$params['province']]['name'].$postageRegion[$params['city']]['name'];
             TenantRegister::create([
                 'name' => $params['name'],
@@ -47,11 +47,11 @@ class TenantRegisterLogic extends BaseLogic
                 'mobile' => $params['mobile'],
                 'door_images' => $params['door_images']??'',
                 'business_images' => $params['business_images']??'',
-                'province' => $params['province'],
-                'city' => $params['city'],
-                'area_name' => $params['area_name'],
-                'lon' => $params['lon'],
-                'lat' => $params['lat'],
+                'province' => $params['province']??0,
+                'city' => $params['city']??0,
+                'area_name' => $params['area_name']??'',
+                'lon' => $params['lon']??0,
+                'lat' => $params['lat']??0,
                 'status' => $params['status']??0,
                 'sale_id' => $params['sale_id'],
                 'openid' => $params['openid']??''