__handlePropertyHandler(__CLASS__); } #[Inject] protected ValidatorFactoryInterface $validationFactory; /** * @var WebsiteServiceInterface */ #[Inject] private $websiteServiceClient; /** * 创建站点 * @return array */ public function addWebsite() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['website_column_arr_id' => 'required', 'website_name' => 'required', 'website_url' => 'required'], ['website_column_id.required' => '上级网系id不能为空', 'website_name.required' => '站点名称不能为空', 'website_url.required' => '网站地址不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $requireData['website_url'] = json_encode($requireData['website_url']); $requireData['city_id'] = isset($requireData['city_arr_id']) ? end($requireData['city_arr_id']) : ''; $requireData['city_arr_id'] = isset($requireData['city_arr_id']) ? json_encode($requireData['city_arr_id']) : ''; $requireData['website_column_id'] = isset($requireData['website_column_arr_id']) ? end($requireData['website_column_arr_id']) : ''; $requireData['website_column_arr_id'] = isset($requireData['website_column_arr_id']) ? json_encode($requireData['website_column_arr_id']) : ''; var_dump($requireData); $result = $this->websiteServiceClient->createWebsite($requireData); return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 获取站点列表 * @return void */ public function getWebsiteList() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['page' => 'required', 'pageSize' => 'required'], ['page.required' => '页码不能为空', 'pageSize.required' => '每页显示条数不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $result = $this->websiteServiceClient->getWebsitetList($requireData); if ($result['data']) { foreach ($result['data']['rows'] as $k => $v) { $result['data']['rows'][$k]['city_arr_id'] = $v['city_arr_id'] ? json_decode($v['city_arr_id']) : ''; } } return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 更新站点 * @return array */ public function updateWebsite() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['id' => 'required', 'website_column_arr_id' => 'required', 'website_name' => 'required', 'website_url' => 'required'], ['id.required' => 'id不能为空', 'website_column_id.required' => '网系id不能为空', 'website_name.required' => '站点名称不能为空', 'website_url.required' => '网站地址不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $requireData['website_url'] = json_encode($requireData['website_url']); $requireData['city_id'] = isset($requireData['city_arr_id']) ? end($requireData['city_arr_id']) : ''; $requireData['city_arr_id'] = isset($requireData['city_arr_id']) ? json_encode($requireData['city_arr_id']) : ''; $requireData['website_column_id'] = isset($requireData['website_column_arr_id']) ? end($requireData['website_column_arr_id']) : ''; $requireData['website_column_arr_id'] = isset($requireData['website_column_arr_id']) ? json_encode($requireData['website_column_arr_id']) : ''; $result = $this->websiteServiceClient->updateWebsite((int) $requireData['id'], $requireData); return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 删除站点 * @return array */ public function delWebsite() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['id' => 'required'], ['id.required' => 'id不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $id = (int) $requireData['id']; $result = $this->websiteServiceClient->delWebsite($id); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 获取站点信息 * @return array */ public function getWebsiteInfo() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['id' => 'required'], ['id.required' => 'id不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $id = (int) $requireData['id']; $result = $this->websiteServiceClient->getWebsiteInfo($id); if ($result['code'] == 200) { $result['data']['website_url'] = isset($result['data']['website_url']) && $result['data']['website_url'] ? json_decode($result['data']['website_url']) : ''; $result['data']['website_column_arr_id'] = isset($result['data']['website_column_arr_id']) && $result['data']['website_column_arr_id'] ? json_decode($result['data']['website_column_arr_id']) : ''; $result['data']['city_arr_id'] = isset($result['data']['city_arr_id']) && $result['data']['city_arr_id'] ? json_decode($result['data']['city_arr_id']) : ''; return Result::success($result['data']); } else { return Result::error($result['message']); } } public function getWebsiteColumn() { $pid = (int) $this->request->input("pid", 0); $result = $this->websiteServiceClient->getWebsiteColumn([]); $rep = PublicData::buildMenuTree($result['data']); return $rep ? Result::success($rep) : Result::error("查询失败"); } /** * 获取站点列表 * @return void */ public function getWebsiteColumnList() { $keyword = $this->request->input("keyWord", ''); $page = (int) $this->request->input("page", 1); $pageSize = (int) $this->request->input("pageSize", 10); $result = $this->websiteServiceClient->getWebsiteColumnList($keyword, $page, $pageSize); if ($result['data']) { foreach ($result['data']['rows'] as $k => $v) { $result['data']['rows'][$k]['column_arr_id'] = $v['column_arr_id'] ? json_decode($v['column_arr_id']) : [0]; } } return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 创建栏目 * @return array */ public function addWebsiteColumn() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['column_name' => 'required', 'column_arr_id' => 'required'], ['column_name.required' => '栏目名称不能为空', 'column_arr_id.required' => '栏目ID不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } if (isset($requireData['column_arr_id']) && is_array($requireData['column_arr_id'])) { $requireData['pid'] = end($requireData['column_arr_id']); $requireData['column_arr_id'] = json_encode($requireData['column_arr_id']); } else { $column_arr_id = [0]; $requireData['column_arr_id'] = json_encode($column_arr_id); $requireData['pid'] = end($column_arr_id); } $result = $this->websiteServiceClient->createWebsiteColumn($requireData); return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 创建栏目 * @return array */ public function updateWebsiteColumn() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['column_name' => 'required', 'column_arr_id' => 'required'], ['column_name.required' => '栏目名称不能为空', 'column_arr_id.required' => '栏目ID不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } if (isset($requireData['column_arr_id']) && is_array($requireData['column_arr_id'])) { $requireData['pid'] = end($requireData['column_arr_id']); $requireData['column_arr_id'] = json_encode($requireData['column_arr_id']); } else { $column_arr_id = [0]; $requireData['column_arr_id'] = json_encode($column_arr_id); $requireData['pid'] = end($column_arr_id); } $result = $this->websiteServiceClient->updateWebsiteColumn($requireData['id'], $requireData); return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 删除栏目 * @return array */ public function delWebsiteColumn() { $id = (int) $this->request->input("id", ''); $result = $this->websiteServiceClient->delWebsiteColumn($id); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 获取站点角色列表 * @return void */ public function getWebsiteRoleList() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['id' => 'required'], ['id.required' => '站点ID不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $keyword = $this->request->input("keyword", ''); $page = (int) $this->request->input("page", 1); $pageSize = (int) $this->request->input("pageSize", 10); $websiteId = (int) $this->request->input("id", ''); $result = $this->websiteServiceClient->getWebsiteRoleList($keyword, $page, $pageSize, $websiteId); return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 创建站点角色 * @return array */ public function createWebsiteRole() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['type' => 'required', 'role_id' => 'required', 'website_id' => 'required'], ['type.required' => '类型不能为空', 'type_id.required' => 'ID不能为空', 'website_id.required' => '站点ID不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $requireData['admin_user_id'] = Context::get("UserId"); $result = $this->websiteServiceClient->createWebsiteRole($requireData); return $result['code'] != 0 ? Result::success($result['data']) : Result::error($result['message']); } /** * 删除站点角色 * @return array */ public function delWebsiteRole() { $id = (int) $this->request->input("id", ''); $result = $this->websiteServiceClient->delWebsiteRole($id); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 获取站点角色用户列表 * @return void */ public function getWebsiteRoleUserList() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['website_id' => 'required', 'role_id' => 'required'], ['website_id.required' => '站点ID不能为空', 'role_id.required' => '角色ID不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $keyword = $this->request->input("keyword", ''); $page = (int) $this->request->input("page", 1); $pageSize = (int) $this->request->input("pageSize", 10); $roleId = (int) $this->request->input("role_id", ''); $websiteId = (int) $this->request->input("website_id", ''); $result = $this->websiteServiceClient->getWebsiteRoleUserList($keyword, $page, $pageSize, $websiteId, $roleId); return $result ? Result::success($result['data']) : Result::error($result['message']); } /** * 创建站点角色用户 * @return array */ public function createWebsiteRoleUser() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['type' => 'required', 'role_id' => 'required', 'website_id' => 'required', 'user_id' => 'required'], ['type.required' => '类型不能为空', 'website_id.required' => '站点ID不能为空', 'role_id.required' => '角色ID不能为空', 'user_id.required' => '用户ID不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $requireData['admin_user_id'] = Context::get("UserId"); $requireData['role_id'] = (int) $requireData['role_id']; $requireData['type'] = (int) $requireData['type']; $requireData['website_id'] = (int) $requireData['website_id']; $requireData['user_id'] = (int) $requireData['user_id']; $result = $this->websiteServiceClient->createWebsiteRoleUser($requireData); return $result['code'] != 0 ? Result::success($result['data']) : Result::error($result['message']); } /** * 删除站点角色用户 * @return array */ public function delWebsiteRoleUser() { $id = (int) $this->request->input("id", ''); $result = $this->websiteServiceClient->delWebsiteRoleUser($id); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 网站栏目映射 * @return void */ public function addWebsiteCategory() { return []; } /** * 管理后台首页统计 * @return array */ public function getAdminIndex() { return []; } /** * 获取模板皮肤分类 * @return void */ public function getTemplateClass() { $result = $this->websiteServiceClient->getTemplateClass([]); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 添加模板分类 * @return void */ public function addTemplateClass() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['name' => 'required'], ['name.required' => '模板类型不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $data = ['name' => $requireData['name'], 'sort' => $requireData['sort'] ?? 0]; $result = $this->websiteServiceClient->addTemplateClass($data); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 更新模板分类 * @return array */ public function upTemplateClass() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['name' => 'required', 'id' => 'required'], ['name.required' => '模板类型不能为空', 'name.id' => '模板类型ID不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $data = ['id' => $requireData['id'], 'name' => $requireData['name'], 'sort' => $requireData['sort'] ?? 0]; $result = $this->websiteServiceClient->upTemplateClass($data); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 删除模板分类 * @return array */ public function delTemplateClass() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['id' => 'required'], ['name.required' => '类型id不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $data = ['id' => $requireData['id']]; $result = $this->websiteServiceClient->delTemplateClass($data); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 获取分类下的模板 * @return array */ public function getTemplate() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['template_class_id' => 'required', 'page' => 'required', 'pageSize' => 'required'], ['template_class_id.required' => '类型template_class_id不能为空', 'page.required' => 'page不能为空', 'pageSize.required' => '每页显示条数不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $data = ['template_class_id' => $requireData['template_class_id'], 'page' => $requireData['page'], 'pageSize' => $requireData['pageSize']]; $result = $this->websiteServiceClient->getTemplate($data); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 创建皮肤模板 * @return array */ public function addTemplate() { $requireData = $this->request->all(); // var_dump("FCK:",$requireData); $validator = $this->validationFactory->make($requireData, ['template_name' => 'required', 'template_class_id' => 'required', 'template_img' => 'required'], ['template_name.required' => '模板名称不能为空', 'template_class_id.required' => '模板类型id不能为空', 'template_img.required' => '模板图片不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } // var_dump($requireData); $data = ['template_name' => $requireData['template_name'], 'template_class_id' => $requireData['template_class_id'], 'template_img' => $requireData['template_img']]; $result = $this->websiteServiceClient->addTemplate($data); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 更新模板 * @return array */ public function upTemplate() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['template_name' => 'required', 'template_class_id' => 'required', 'template_img' => 'required', 'id' => 'required'], ['template_name.required' => '模板名称不能为空', 'template_class_id.required' => '模板类型id不能为空', 'template_img.required' => '模板图片不能为空', 'id.required' => '模板id不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $data = ['id' => $requireData['id'], 'template_name' => $requireData['template_name'], 'template_img' => $requireData['template_img'], 'template_class_id' => $requireData['template_class_id']]; $result = $this->websiteServiceClient->upTemplate($data); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } /** * 删除模板 * @return array */ public function delTemplate() { $requireData = $this->request->all(); $validator = $this->validationFactory->make($requireData, ['id' => 'required'], ['name.required' => '模板id不能为空']); if ($validator->fails()) { $errorMessage = $validator->errors()->first(); return Result::error($errorMessage); } $data = ['id' => $requireData['id']]; $result = $this->websiteServiceClient->delTemplate($data); return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']); } }