Browse Source

fixed:技师端-获取订单设置

刘学玺 4 months ago
parent
commit
3fd4b790e9
1 changed files with 31 additions and 47 deletions
  1. 31 47
      app/Services/Coach/OrderService.php

+ 31 - 47
app/Services/Coach/OrderService.php

@@ -1020,55 +1020,39 @@ class OrderService
     {
 
         return DB::transaction(function () use ($userId, $data) {
-            try {
-                // 获取技师信息
-                $user = MemberUser::with(['coach'])->findOrFail($userId);
-                $coach = $user->coach;
-                abort_if(! $coach, 404, '技师信息不存在');
 
-                // 获取订单配置分组
-                $settingGroup = SettingGroup::where('code', 'order')->first();
-                abort_if(! $settingGroup, 404, '订单配置分组不存在');
-
-                // 获取距离配置项
-                $distanceSettingItem = $settingGroup->items()->where('code', 'distance')->first();
-                abort_if(! $distanceSettingItem, 404, '距离配置项不存在');
-
-                // 检查服务距离是否存在,并且是否大于0
-                if (isset($data['distance']) && $data['distance'] > 0) {
-                    // 从全局配置中验证服务距离的合理范围
-                    abort_if($data['distance'] > $distanceSettingItem->max_value, 422, '服务距离不能超过' . $distanceSettingItem->max_value . '公里');
-
-                    // 更新技师服务距离配置
-                    $coach->settingValues()->updateOrCreate(
-                        ['item_id' => $distanceSettingItem->id],
-                        ['value' => $data['distance']],
-                        ['object_type' => $coach::class],
-                        ['object_id' => $coach->id],
-                    );
-                }
-
-                // 记录日志
-                Log::info('订单设置更新成功', [
-                    'coach_id' => $coach->id,
-                    'settings' => $data,
-                ]);
-
-                return [
-                    'message' => '订单设置更新成功',
-                    'coach_id' => $coach->id,
-                    'settings' => $data,
-                ];
-            } catch (\Exception $e) {
-                Log::error('订单设置更新失败', [
-                    'user_id' => $userId,
-                    'data' => $data,
-                    'error' => $e->getMessage(),
-                    'file' => $e->getFile(),
-                    'line' => $e->getLine(),
-                ]);
-                throw $e;
+            // 获取技师信息
+            $user = MemberUser::with(['coach'])->findOrFail($userId);
+            $coach = $user->coach;
+            abort_if(! $coach, 404, '技师信息不存在');
+
+            // 获取订单配置分组
+            $settingGroup = SettingGroup::where('code', 'order')->first();
+            abort_if(! $settingGroup, 404, '订单配置分组不存在');
+
+            // 获取距离配置项
+            $distanceSettingItem = $settingGroup->items()->where('code', 'distance')->first();
+            abort_if(! $distanceSettingItem, 404, '距离配置项不存在');
+
+            // 检查服务距离是否存在,并且是否大于0
+            if (isset($data['distance']) && $data['distance'] > 0) {
+                // 从全局配置中验证服务距离的合理范围
+                abort_if($data['distance'] > $distanceSettingItem->max_value, 422, '服务距离不能超过' . $distanceSettingItem->max_value . '公里');
+
+                // 更新技师服务距离配置
+                $coach->settingValues()->updateOrCreate(
+                    ['item_id' => $distanceSettingItem->id],
+                    ['value' => $data['distance']],
+                    ['object_type' => $coach::class],
+                    ['object_id' => $coach->id],
+                );
             }
+
+            return [
+                'message' => '订单设置更新成功',
+                'coach_id' => $coach->id,
+                'settings' => $data,
+            ];
         });
     }