|
@@ -7,8 +7,11 @@ |
|
@@ -7,8 +7,11 @@ |
|
7
|
*/
|
7
|
*/
|
|
8
|
namespace App\Http\Controllers\Api;
|
8
|
namespace App\Http\Controllers\Api;
|
|
9
|
|
9
|
|
|
|
|
10
|
+use App\Models\Domain\DomainInfo;
|
|
10
|
use App\Models\Project\OnlineCheck;
|
11
|
use App\Models\Project\OnlineCheck;
|
|
11
|
use App\Models\Project\Project;
|
12
|
use App\Models\Project\Project;
|
|
|
|
13
|
+use App\Models\RouteMap\RouteMap;
|
|
|
|
14
|
+use App\Services\ProjectServer;
|
|
12
|
use Illuminate\Http\Request;
|
15
|
use Illuminate\Http\Request;
|
|
13
|
|
16
|
|
|
14
|
/**
|
17
|
/**
|
|
@@ -35,4 +38,41 @@ class PrivateController extends BaseController |
|
@@ -35,4 +38,41 @@ class PrivateController extends BaseController |
|
35
|
->toArray();
|
38
|
->toArray();
|
|
36
|
return $this->success($result);
|
39
|
return $this->success($result);
|
|
37
|
}
|
40
|
}
|
|
|
|
41
|
+
|
|
|
|
42
|
+ /**
|
|
|
|
43
|
+ * 获取项目链接
|
|
|
|
44
|
+ * FIXME 当前直接获取的产品和产品分类, 后期需要封装到内部, 需要添加完整的链接规则
|
|
|
|
45
|
+ * @param Request $request
|
|
|
|
46
|
+ * @return false|string
|
|
|
|
47
|
+ */
|
|
|
|
48
|
+ public function getProjectRoute(Request $request)
|
|
|
|
49
|
+ {
|
|
|
|
50
|
+ $project_id = intval($request->input('project_id'));
|
|
|
|
51
|
+// $type = $request->input('type');
|
|
|
|
52
|
+ $type = [RouteMap::SOURCE_PRODUCT, RouteMap::SOURCE_PRODUCT_CATE];
|
|
|
|
53
|
+
|
|
|
|
54
|
+ $project = Project::where(['id' => $project_id])->first();
|
|
|
|
55
|
+ if (empty($project))
|
|
|
|
56
|
+ return $this->error('未发现需要查找的项目!');
|
|
|
|
57
|
+
|
|
|
|
58
|
+ $project = ProjectServer::useProject($project_id);
|
|
|
|
59
|
+
|
|
|
|
60
|
+ $domain = DomainInfo::where(['project_id' => $project_id])->first();
|
|
|
|
61
|
+ $host = FALSE == empty($domain) ? 'https://' . $domain->domain . '/' : $project->deploy_build->test_domain;
|
|
|
|
62
|
+
|
|
|
|
63
|
+ $list = RouteMap::where(['project_id' => $project_id])
|
|
|
|
64
|
+ ->when($type, function ($query) use ($type) {
|
|
|
|
65
|
+ return $query->whereIn('source', $type);
|
|
|
|
66
|
+ })
|
|
|
|
67
|
+ ->get();
|
|
|
|
68
|
+
|
|
|
|
69
|
+ $result = [];
|
|
|
|
70
|
+ foreach ($list as $val) {
|
|
|
|
71
|
+ // 排除首页
|
|
|
|
72
|
+ if ($val->source == RouteMap::SOURCE_PAGE && in_array($val->route, ['index', '']))
|
|
|
|
73
|
+ continue;
|
|
|
|
74
|
+ $result[$val->source][] = $host . $val->route;
|
|
|
|
75
|
+ }
|
|
|
|
76
|
+ return $this->success($result);
|
|
|
|
77
|
+ }
|
|
38
|
} |
78
|
} |