|
@@ -1,419 +1,428 @@
|
|
|
-<?php
|
|
|
-declare(strict_types=1);
|
|
|
-namespace App\Controller;
|
|
|
-
|
|
|
-use App\JsonRpc\NewsServiceInterface;
|
|
|
-use App\Tools\PublicData;
|
|
|
-use Hyperf\Di\Annotation\Inject;
|
|
|
-use Hyperf\HttpServer\Annotation\AutoController;
|
|
|
-use App\Tools\Result;
|
|
|
-use Hyperf\Validation\Contract\ValidatorFactoryInterface;
|
|
|
-use Hyperf\Context\Context;
|
|
|
-/**
|
|
|
- * Class NewsController
|
|
|
- * @package App\Controller
|
|
|
- */
|
|
|
-//#[AutoController]
|
|
|
-class NewsController extends AbstractController
|
|
|
-{
|
|
|
- #[Inject]
|
|
|
- protected ValidatorFactoryInterface $validationFactory;
|
|
|
-
|
|
|
- /**
|
|
|
- * @var NewsServiceInterface
|
|
|
- */
|
|
|
- #[Inject]
|
|
|
- private $newsServiceClient;
|
|
|
-
|
|
|
- /**
|
|
|
- * 导航池列表
|
|
|
- * @return void
|
|
|
- */
|
|
|
- public function getCategoryList()
|
|
|
- {
|
|
|
- $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->newsServiceClient->getCategoryList($requireData);
|
|
|
- if($result['data']){
|
|
|
- foreach ($result['data']['rows'] as $k=>$v) {
|
|
|
- $result['data']['rows'][$k]['pid_arr'] = $v['pid_arr']?json_decode($v['pid_arr']):[0];
|
|
|
- }
|
|
|
- }
|
|
|
- return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
- /**
|
|
|
- * 站点下的导航池
|
|
|
- * @return void
|
|
|
- */
|
|
|
- public function categoryList()
|
|
|
- {
|
|
|
- $requireData = $this->request->all();
|
|
|
- $validator = $this->validationFactory->make(
|
|
|
- $requireData,
|
|
|
- [
|
|
|
- 'pid'=> 'required'
|
|
|
- ],
|
|
|
- [
|
|
|
- 'pid.required' => '父级ID不能为空'
|
|
|
- ]
|
|
|
- );
|
|
|
- if ($validator->fails()) {
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
- }
|
|
|
-// $requireData['website_id'] = Context::get("SiteId");
|
|
|
- $result = $this->newsServiceClient->categoryList($requireData);
|
|
|
- $rep = PublicData::buildMenuTree($result['data']);
|
|
|
- return $result ? Result::success($rep) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 添加导航
|
|
|
- * @return array|void
|
|
|
- */
|
|
|
- public function addCategory()
|
|
|
- {
|
|
|
- $requireData = $this->request->all();
|
|
|
- $validator = $this->validationFactory->make(
|
|
|
- $requireData,
|
|
|
- [
|
|
|
- 'name'=> 'required',
|
|
|
- 'seo_title'=> 'required',
|
|
|
- 'seo_keywords'=> 'required',
|
|
|
- 'seo_description'=> 'required',
|
|
|
- ],
|
|
|
- [
|
|
|
- 'name.required' => '导航池名称不能为空',
|
|
|
- 'seo_title.required' => 'seo标题名称不能为空',
|
|
|
- 'seo_keywords.required' => 'seo关键词不能为空',
|
|
|
- 'seo_description.required' => 'seo描述不能为空',
|
|
|
- ]
|
|
|
- );
|
|
|
- if ($validator->fails()) {
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
- }
|
|
|
-
|
|
|
- $requireData['pid'] = isset($requireData['pid_arr'])?end($requireData['pid_arr']):'';
|
|
|
- $requireData['pid_arr'] = isset($requireData['pid_arr'])?json_encode($requireData['pid_arr']):'';
|
|
|
-
|
|
|
- $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['department_id'] = isset($requireData['department_arr_id'])?end($requireData['department_arr_id']):'';
|
|
|
- $requireData['department_arr_id'] = isset($requireData['department_arr_id'])?json_encode($requireData['department_arr_id']):'';
|
|
|
-
|
|
|
- $result = $this->newsServiceClient->addCategory($requireData);
|
|
|
- return $result ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 更新导航池
|
|
|
- * @return array
|
|
|
- */
|
|
|
- public function updateCategory()
|
|
|
- {
|
|
|
- $requireData = $this->request->all();
|
|
|
- $validator = $this->validationFactory->make(
|
|
|
- $requireData,
|
|
|
- [
|
|
|
- 'id'=>'required',
|
|
|
- 'name'=> 'required',
|
|
|
- 'seo_title'=> 'required',
|
|
|
- 'seo_keywords'=> 'required',
|
|
|
- 'seo_description'=> 'required',
|
|
|
- ],
|
|
|
- [
|
|
|
- 'id.required' =>'ID不能为空',
|
|
|
- 'name.required' => '栏目池名称不能为空',
|
|
|
- 'seo_title.required' => 'seo标题名称不能为空',
|
|
|
- 'seo_keywords.required' => 'seo关键词不能为空',
|
|
|
- 'seo_description.required' => 'seo描述不能为空',
|
|
|
- ]
|
|
|
- );
|
|
|
- if ($validator->fails()) {
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
- }
|
|
|
- $requireData['pid'] = isset($requireData['pid_arr'])?end($requireData['pid_arr']):'';
|
|
|
- $requireData['pid_arr'] = isset($requireData['pid_arr'])?json_encode($requireData['pid_arr']):'';
|
|
|
-
|
|
|
- $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['department_id'] = isset($requireData['department_arr_id'])?end($requireData['department_arr_id']):'';
|
|
|
- $requireData['department_arr_id'] = isset($requireData['department_arr_id'])?json_encode($requireData['department_arr_id']):'';
|
|
|
-
|
|
|
- $result = $this->newsServiceClient->updateCategory($requireData);
|
|
|
- return $result['code']==200? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
- /**
|
|
|
- * 删除分类
|
|
|
- * @return array
|
|
|
- */
|
|
|
- public function delCategory()
|
|
|
- {
|
|
|
- $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);
|
|
|
- }
|
|
|
- $result = $this->newsServiceClient->delCategory($requireData);
|
|
|
- return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 资讯列表
|
|
|
- * @return void
|
|
|
- */
|
|
|
- public function getArticleList()
|
|
|
- {
|
|
|
- $requireData = $this->request->all();
|
|
|
- $validator = $this->validationFactory->make(
|
|
|
- $requireData,
|
|
|
- [
|
|
|
- 'page'=> 'required',
|
|
|
- 'pageSize'=> 'required',
|
|
|
-
|
|
|
- ],
|
|
|
- [
|
|
|
- 'page.required' => 'id不能为空',
|
|
|
- 'pageSize.required' => 'id不能为空',
|
|
|
-
|
|
|
- ]
|
|
|
- );
|
|
|
- if ($validator->fails()) {
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
- }
|
|
|
- $requireData['website_id'] = Context::get("SiteId");
|
|
|
- var_dump("资讯:",$requireData);
|
|
|
- $result = $this->newsServiceClient->getArticleList($requireData);
|
|
|
- //1通过,2待审核,3待发 4,拒绝 5删除
|
|
|
- $statusList = [
|
|
|
- '0'=>'待审核',
|
|
|
- '1'=>'已发布',
|
|
|
- '2'=>'待审核',
|
|
|
- '3'=>'待发',
|
|
|
- '4'=>'拒绝',
|
|
|
- '5'=>'删除',
|
|
|
- ];
|
|
|
- if($result['data']){
|
|
|
- foreach ($result['data']['rows'] as $k=>$v) {
|
|
|
- $result['data']['rows'][$k]['cat_arr_id'] = $v['cat_arr_id']?json_decode($v['cat_arr_id']):[0];
|
|
|
- $result['data']['rows'][$k]['tag'] = $v['tag']?json_decode($v['tag']):[];
|
|
|
- $result['data']['rows'][$k]['status_name'] = $statusList[$v['status']];
|
|
|
- $result['data']['rows'][$k]['level'] = (string)$v['level'];
|
|
|
- $result['data']['rows'][$k]['islink'] = isset($v['islink']) && $v['islink']>0?true:false;
|
|
|
- }
|
|
|
- }
|
|
|
- $result = $this->newsServiceClient->getArticleList($requireData);
|
|
|
-
|
|
|
- return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取导航池信息
|
|
|
- * @return void
|
|
|
- */
|
|
|
- public function getCategoryInfo()
|
|
|
- {
|
|
|
- $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);
|
|
|
- }
|
|
|
- $result = $this->newsServiceClient->getCategoryInfo($requireData);
|
|
|
- return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 添加分类
|
|
|
- * @return array|void
|
|
|
- */
|
|
|
- public function addArticle()
|
|
|
- {
|
|
|
- $requireData = $this->request->all();
|
|
|
- $validator = $this->validationFactory->make(
|
|
|
- $requireData,
|
|
|
- [
|
|
|
- 'title'=> 'required',
|
|
|
- 'cat_arr_id'=> 'required',
|
|
|
- 'author'=> 'required',
|
|
|
-
|
|
|
- ],
|
|
|
- [
|
|
|
- 'title.required' => '标题不能为空',
|
|
|
- 'cat_arr_id.required' => '导航池ID不能为空',
|
|
|
- 'author.required' => '作者不能为空',
|
|
|
- ]
|
|
|
- );
|
|
|
- if ($validator->fails()){
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
- }
|
|
|
- $requireData['catid'] = isset($requireData['cat_arr_id'])?end($requireData['cat_arr_id']):'';
|
|
|
- $requireData['cat_arr_id'] = isset($requireData['cat_arr_id'])?json_encode($requireData['cat_arr_id']):'';
|
|
|
-
|
|
|
- $loginIp = $this->request->getHeader('x-forwarded-for')[0] ?? $this->request->getHeader('x-real-ip')[0] ?? $this->request->getServerParams()['remote_addr'] ?? '0.0.0.0';
|
|
|
- $requireData['ip'] = $loginIp;
|
|
|
- $requireData['admin_user_id'] =Context::get("UserId");
|
|
|
-
|
|
|
- $requireData['level'] = isset($requireData['level']) && $requireData['level']?$requireData['level']:0;
|
|
|
- $requireData['hits'] = isset($requireData['hits']) && $requireData['hits']?$requireData['hits']:0;
|
|
|
- $requireData['is_original'] = isset($requireData['is_original']) && $requireData['is_original']?$requireData['is_original']:0;
|
|
|
- $requireData['status'] = isset($requireData['status']) && $requireData['status']?$requireData['status']:0;
|
|
|
-// var_dump("入参:",$requireData);
|
|
|
- $result = $this->newsServiceClient->addArticle($requireData);
|
|
|
-
|
|
|
- return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 更新资讯
|
|
|
- * @return array
|
|
|
- */
|
|
|
- public function updateArticle()
|
|
|
- {
|
|
|
- $requireData = $this->request->all();
|
|
|
- $validator = $this->validationFactory->make(
|
|
|
- $requireData,
|
|
|
- [
|
|
|
- 'id'=>'required',
|
|
|
- 'title'=> 'required',
|
|
|
- 'cat_arr_id'=> 'required',
|
|
|
- 'author'=> 'required',
|
|
|
- ],
|
|
|
- [
|
|
|
- 'title.required' => '标题不能为空',
|
|
|
- 'cat_arr_id.required' => '导航池ID不能为空',
|
|
|
- 'author.required' => '作者不能为空',
|
|
|
- 'id.required' =>'ID不能为空'
|
|
|
- ]
|
|
|
- );
|
|
|
- if ($validator->fails()) {
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
- }
|
|
|
- $requireData['catid'] = isset($requireData['cat_arr_id'])?end($requireData['cat_arr_id']):'';
|
|
|
- $requireData['cat_arr_id'] = isset($requireData['cat_arr_id'])?json_encode($requireData['cat_arr_id']):'';
|
|
|
-
|
|
|
- $result = $this->newsServiceClient->updateArticle($requireData);
|
|
|
- return $result['code']==200? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 更新资讯状态
|
|
|
- * @return array
|
|
|
- */
|
|
|
- public function upArticleStatus()
|
|
|
- {
|
|
|
- $requireData = $this->request->all();
|
|
|
- $validator = $this->validationFactory->make(
|
|
|
- $requireData,
|
|
|
- [
|
|
|
- 'id'=>'required',
|
|
|
- 'status'=> 'required',
|
|
|
- ],
|
|
|
- [
|
|
|
- 'id.required' => 'id不能为空',
|
|
|
- 'status.required' => '状态不能为空',
|
|
|
- ]
|
|
|
- );
|
|
|
- if ($validator->fails()) {
|
|
|
- $errorMessage = $validator->errors()->first();
|
|
|
- return Result::error($errorMessage);
|
|
|
- }
|
|
|
- $result = $this->newsServiceClient->upArticleStatus($requireData);
|
|
|
- return $result['code']==200? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
- /**
|
|
|
- * 删除分类
|
|
|
- * @return array
|
|
|
- */
|
|
|
- public function delArticle()
|
|
|
- {
|
|
|
- $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);
|
|
|
- }
|
|
|
- $result = $this->newsServiceClient->delArticle($requireData);
|
|
|
- return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取资讯信息
|
|
|
- * @return array
|
|
|
- */
|
|
|
- public function getArticleInfo()
|
|
|
- {
|
|
|
- $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);
|
|
|
- }
|
|
|
-
|
|
|
- $result = $this->newsServiceClient->getArticleInfo($requireData);
|
|
|
- $result['data']['cat_arr_id'] = $result['data']['cat_arr_id']?json_decode($result['data']['cat_arr_id']):[];
|
|
|
- return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
+<?php
|
|
|
+declare(strict_types=1);
|
|
|
+namespace App\Controller;
|
|
|
+
|
|
|
+use App\JsonRpc\NewsServiceInterface;
|
|
|
+use App\Tools\PublicData;
|
|
|
+use Hyperf\Di\Annotation\Inject;
|
|
|
+use Hyperf\HttpServer\Annotation\AutoController;
|
|
|
+use App\Tools\Result;
|
|
|
+use Hyperf\Validation\Contract\ValidatorFactoryInterface;
|
|
|
+use Hyperf\Context\Context;
|
|
|
+/**
|
|
|
+ * Class NewsController
|
|
|
+ * @package App\Controller
|
|
|
+ */
|
|
|
+//#[AutoController]
|
|
|
+class NewsController extends AbstractController
|
|
|
+{
|
|
|
+ #[Inject]
|
|
|
+ protected ValidatorFactoryInterface $validationFactory;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @var NewsServiceInterface
|
|
|
+ */
|
|
|
+ #[Inject]
|
|
|
+ private $newsServiceClient;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 导航池列表
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function getCategoryList()
|
|
|
+ {
|
|
|
+ $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->newsServiceClient->getCategoryList($requireData);
|
|
|
+ if($result['data']){
|
|
|
+ foreach ($result['data']['rows'] as $k=>$v) {
|
|
|
+ $result['data']['rows'][$k]['pid_arr'] = $v['pid_arr']?json_decode($v['pid_arr']):[0];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 站点下的导航池
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function categoryList()
|
|
|
+ {
|
|
|
+
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'pid'=> 'required'
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'pid.required' => '父级ID不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ $requireData['website_id'] = Context::get("SiteId");
|
|
|
+
|
|
|
+ $result = $this->newsServiceClient->categoryList($requireData);
|
|
|
+// $rep = PublicData::buildMenuTree($result['data']);
|
|
|
+ return $result ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 添加导航
|
|
|
+ * @return array|void
|
|
|
+ */
|
|
|
+ public function addCategory()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'name'=> 'required',
|
|
|
+ 'seo_title'=> 'required',
|
|
|
+ 'seo_keywords'=> 'required',
|
|
|
+ 'seo_description'=> 'required',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name.required' => '导航池名称不能为空',
|
|
|
+ 'seo_title.required' => 'seo标题名称不能为空',
|
|
|
+ 'seo_keywords.required' => 'seo关键词不能为空',
|
|
|
+ 'seo_description.required' => 'seo描述不能为空',
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ $requireData['pid'] = isset($requireData['pid_arr'])?end($requireData['pid_arr']):'';
|
|
|
+ $requireData['pid_arr'] = isset($requireData['pid_arr'])?json_encode($requireData['pid_arr']):'';
|
|
|
+
|
|
|
+ $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['department_id'] = isset($requireData['department_arr_id'])?end($requireData['department_arr_id']):'';
|
|
|
+ $requireData['department_arr_id'] = isset($requireData['department_arr_id'])?json_encode($requireData['department_arr_id']):'';
|
|
|
+
|
|
|
+ $result = $this->newsServiceClient->addCategory($requireData);
|
|
|
+ return $result ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新导航池
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function updateCategory()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'id'=>'required',
|
|
|
+ 'name'=> 'required',
|
|
|
+ 'seo_title'=> 'required',
|
|
|
+ 'seo_keywords'=> 'required',
|
|
|
+ 'seo_description'=> 'required',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'id.required' =>'ID不能为空',
|
|
|
+ 'name.required' => '栏目池名称不能为空',
|
|
|
+ 'seo_title.required' => 'seo标题名称不能为空',
|
|
|
+ 'seo_keywords.required' => 'seo关键词不能为空',
|
|
|
+ 'seo_description.required' => 'seo描述不能为空',
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $requireData['pid'] = isset($requireData['pid_arr'])?end($requireData['pid_arr']):'';
|
|
|
+ $requireData['pid_arr'] = isset($requireData['pid_arr'])?json_encode($requireData['pid_arr']):'';
|
|
|
+
|
|
|
+ $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['department_id'] = isset($requireData['department_arr_id'])?end($requireData['department_arr_id']):'';
|
|
|
+ $requireData['department_arr_id'] = isset($requireData['department_arr_id'])?json_encode($requireData['department_arr_id']):'';
|
|
|
+
|
|
|
+ $result = $this->newsServiceClient->updateCategory($requireData);
|
|
|
+ return $result['code']==200? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 删除分类
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function delCategory()
|
|
|
+ {
|
|
|
+ $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);
|
|
|
+ }
|
|
|
+ $result = $this->newsServiceClient->delCategory($requireData);
|
|
|
+ return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 资讯列表
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function getArticleList()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'page'=> 'required',
|
|
|
+ 'pageSize'=> 'required',
|
|
|
+
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'page.required' => 'id不能为空',
|
|
|
+ 'pageSize.required' => 'id不能为空',
|
|
|
+
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $requireData['website_id'] = Context::get("SiteId");
|
|
|
+ var_dump("资讯:",$requireData);
|
|
|
+ $result = $this->newsServiceClient->getArticleList($requireData);
|
|
|
+ //1通过,2待审核,3待发 4,拒绝 5删除
|
|
|
+ $statusList = [
|
|
|
+ '0'=>'待审核',
|
|
|
+ '1'=>'已发布',
|
|
|
+ '2'=>'待审核',
|
|
|
+ '3'=>'待发',
|
|
|
+ '4'=>'拒绝',
|
|
|
+ '5'=>'删除',
|
|
|
+ ];
|
|
|
+ if($result['data']){
|
|
|
+ foreach ($result['data']['rows'] as $k=>$v) {
|
|
|
+ $result['data']['rows'][$k]['cat_arr_id'] = $v['cat_arr_id']?json_decode($v['cat_arr_id']):[0];
|
|
|
+ $result['data']['rows'][$k]['tag'] = $v['tag']?json_decode($v['tag']):[];
|
|
|
+ $result['data']['rows'][$k]['status_name'] = $statusList[$v['status']];
|
|
|
+ $result['data']['rows'][$k]['level'] = (string)$v['level'];
|
|
|
+ $result['data']['rows'][$k]['islink'] = isset($v['islink']) && $v['islink']>0?true:false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $result = $this->newsServiceClient->getArticleList($requireData);
|
|
|
+
|
|
|
+ return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取导航池信息
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function getCategoryInfo()
|
|
|
+ {
|
|
|
+ $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);
|
|
|
+ }
|
|
|
+ $result = $this->newsServiceClient->getCategoryInfo($requireData);
|
|
|
+ return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 添加分类
|
|
|
+ * @return array|void
|
|
|
+ */
|
|
|
+ public function addArticle()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'title'=> 'required',
|
|
|
+ 'cat_arr_id'=> 'required',
|
|
|
+ 'author'=> 'required',
|
|
|
+
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'title.required' => '标题不能为空',
|
|
|
+ 'cat_arr_id.required' => '导航池ID不能为空',
|
|
|
+ 'author.required' => '作者不能为空',
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()){
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $requireData['catid'] = isset($requireData['cat_arr_id'])?end($requireData['cat_arr_id']):'';
|
|
|
+ $requireData['cat_arr_id'] = isset($requireData['cat_arr_id'])?json_encode($requireData['cat_arr_id']):'';
|
|
|
+
|
|
|
+ $loginIp = $this->request->getHeader('x-forwarded-for')[0] ?? $this->request->getHeader('x-real-ip')[0] ?? $this->request->getServerParams()['remote_addr'] ?? '0.0.0.0';
|
|
|
+ $requireData['ip'] = $loginIp;
|
|
|
+
|
|
|
+ $requireData['website_id'] = Context::get("SiteId");
|
|
|
+ $requireData['admin_user_id'] =Context::get("UserId");
|
|
|
+
|
|
|
+ $requireData['level'] = isset($requireData['level']) && $requireData['level']?$requireData['level']:0;
|
|
|
+ $requireData['hits'] = isset($requireData['hits']) && $requireData['hits']?$requireData['hits']:0;
|
|
|
+ $requireData['is_original'] = isset($requireData['is_original']) && $requireData['is_original']?$requireData['is_original']:0;
|
|
|
+ $requireData['status'] = isset($requireData['status']) && $requireData['status']?$requireData['status']:0;
|
|
|
+// var_dump("入参:",$requireData);
|
|
|
+ $result = $this->newsServiceClient->addArticle($requireData);
|
|
|
+
|
|
|
+ return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新资讯
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function updateArticle()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'id'=>'required',
|
|
|
+ 'title'=> 'required',
|
|
|
+ 'cat_arr_id'=> 'required',
|
|
|
+ 'author'=> 'required',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'title.required' => '标题不能为空',
|
|
|
+ 'cat_arr_id.required' => '导航池ID不能为空',
|
|
|
+ 'author.required' => '作者不能为空',
|
|
|
+ 'id.required' =>'ID不能为空'
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ $requireData['catid'] = isset($requireData['cat_arr_id'])?end($requireData['cat_arr_id']):'';
|
|
|
+ $requireData['cat_arr_id'] = isset($requireData['cat_arr_id'])?json_encode($requireData['cat_arr_id']):'';
|
|
|
+
|
|
|
+ $result = $this->newsServiceClient->updateArticle($requireData);
|
|
|
+ return $result['code']==200? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新资讯状态
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function upArticleStatus()
|
|
|
+ {
|
|
|
+ $requireData = $this->request->all();
|
|
|
+ $validator = $this->validationFactory->make(
|
|
|
+ $requireData,
|
|
|
+ [
|
|
|
+ 'id'=>'required',
|
|
|
+ 'status'=> 'required',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'id.required' => 'id不能为空',
|
|
|
+ 'status.required' => '状态不能为空',
|
|
|
+ ]
|
|
|
+ );
|
|
|
+ if ($validator->fails()) {
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
+ return Result::error($errorMessage);
|
|
|
+ }
|
|
|
+ $result = $this->newsServiceClient->upArticleStatus($requireData);
|
|
|
+ return $result['code']==200? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 删除分类
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function delArticle()
|
|
|
+ {
|
|
|
+ $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);
|
|
|
+ }
|
|
|
+
|
|
|
+ $requireData['website_id'] = Context::get("SiteId");
|
|
|
+ $result = $this->newsServiceClient->delArticle($requireData);
|
|
|
+ return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取资讯信息
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function getArticleInfo()
|
|
|
+ {
|
|
|
+ $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);
|
|
|
+ }
|
|
|
+
|
|
|
+ $result = $this->newsServiceClient->getArticleInfo($requireData);
|
|
|
+ $result['data']['cat_arr_id'] = $result['data']['cat_arr_id']?json_decode($result['data']['cat_arr_id']):[];
|
|
|
+ return $result['code']==200 ? Result::success($result['data']) : Result::error($result['message']);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|