Explorar o código

拼团活动排序、临时工程师注册

dongxiaoqin hai 11 meses
pai
achega
8bb627db1d

+ 6 - 2
app/adminapi/logic/group_activity/GroupActivityCategoryLogic.php

@@ -222,13 +222,17 @@ class GroupActivityCategoryLogic extends BaseLogic
         $detail['area'] = explode(",",$detail['area']);
         $detail['images'] = $detail['images'] ? explode(",",$detail['images']) : [];
         $detail['block_data'] = json_decode($detail['block_data'],true);
+        $block_data = [];
         foreach($detail['block_data'] as $key => $item) {
-            $detail['block_data'][$key]['activity'] = GroupActivity::where(['block_key' => $item['block_key'],'group_category_id' => $detail['id']])
+            $tmpKey = empty($item['sort']) ? 0 : $item['sort']."_".$key;
+            $block_data[$tmpKey] = $item;
+            $block_data[$tmpKey]['activity'] = GroupActivity::where(['block_key' => $item['block_key'],'group_category_id' => $detail['id']])
                     ->field('id,id as data_id,title,image,equity_id,block_key,origin_price,price,work_amount,settlement_amount')
                     ->select()
                     ->toArray();
         }
-        
+        krsort($block_data);
+        $detail['block_data'] = array_values($block_data);
         return $detail;
     
     }

+ 1 - 1
app/adminapi/logic/master_worker/MasterWorkerTemporaryLogic.php

@@ -50,7 +50,7 @@ class MasterWorkerTemporaryLogic extends BaseLogic
                 }
                 $params['category_ids'] = implode(',',$ids);
             }
-            $number = MasterWorkerTemporary::count();
+            $number = MasterWorkerTemporary::max('id');
             $number++;
             $worker_number = str_pad($number, 6, '0', STR_PAD_LEFT);
             MasterWorkerTemporary::create([

+ 6 - 1
app/common/model/group_activity/GroupActivity.php

@@ -81,14 +81,19 @@ class GroupActivity extends BaseModel
             $list[$item['block_key']]['activity'][] = $item;
         }
 
-        foreach($category['block_data'] as &$item) {
+        $block_data = [];
+        foreach($category['block_data'] as $item) {
             if (isset($list[$item['block_key']])) {
                 $item['activity'] = $list[$item['block_key']]['activity'];
+                $tmpKey = empty($item['sort']) ? $item['block_key'] : $item['sort']."_".$item['block_key'];
+                $block_data[$tmpKey] = $item;
             }
             if ($block_key && $item['block_key'] == $block_key) {
                 return $item;
             }
         }
+        krsort($block_data);
+        $category['block_data'] = array_values($block_data);
         return $category;
     }
     

+ 19 - 6
app/workerapi/logic/LoginLogic.php

@@ -290,8 +290,8 @@ class LoginLogic extends BaseLogic
         try {
             //手机验证码登录
             $user = MasterWorkerTemporary::where('mobile',$params['account'])->findOrEmpty();
-            if($user->isEmpty()) {
-                throw new \Exception('账号不存在');
+            if(!$user->isEmpty() && $user->is_disable == 1) {
+                throw new \Exception('账号已被禁用');
             }
 
             $smsDriver = new SmsDriver();
@@ -300,10 +300,23 @@ class LoginLogic extends BaseLogic
                 throw new \Exception('验证码错误');
             }
 
-            //更新登录信息
-            $user->login_time = time();
-            $user->login_ip = request()->ip();
-            $user->save();
+            if ($user->isEmpty()) {
+                //注册
+                $number = MasterWorkerTemporary::max('id');
+                $number++;
+                $worker_number = str_pad($number, 6, '0', STR_PAD_LEFT);
+                $user = MasterWorkerTemporary::create([
+                    'worker_number' => $worker_number,
+                    'mobile' => $params['account'],
+                    'login_time' => time(),
+                    'login_ip' => request()->ip(),
+                ]);
+            } else {
+                //更新登录信息
+                $user->login_time = time();
+                $user->login_ip = request()->ip();
+                $user->save();
+            }
 
             //设置token
             $userInfo = MasterWokerTokenService::setToken($user->id, 3, 2);