WebController.php 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Controller;
  4. use App\JsonRpc\NewsServiceInterface;
  5. use App\JsonRpc\WebsiteServiceInterface;
  6. use App\Tools\PublicData;
  7. use Hyperf\Di\Annotation\Inject;
  8. use Hyperf\HttpServer\Annotation\AutoController;
  9. use App\Tools\Result;
  10. use Hyperf\Validation\Contract\ValidatorFactoryInterface;
  11. use App\Constants\ErrorCode;
  12. use Hyperf\Context\Context;
  13. /**
  14. * Class WebController
  15. * @package App\Controller
  16. */
  17. class WebController extends AbstractController
  18. {
  19. #[Inject]
  20. protected ValidatorFactoryInterface $validationFactory;
  21. /**
  22. * @var NewsServiceInterface
  23. */
  24. #[Inject]
  25. private $newsServiceClient;
  26. /**
  27. * @var WebsiteServiceInterface
  28. */
  29. #[Inject]
  30. private $websiteServiceClient;
  31. private $PublicController;
  32. public function __construct(PublicController $PublicController)
  33. {
  34. $this->PublicController = $PublicController;
  35. }
  36. /**
  37. * 获取栏目导航
  38. * @return array
  39. */
  40. public function getWebsiteCategory()
  41. {
  42. $data = [
  43. 'website_id'=>Context::get("SiteId")
  44. ];
  45. // var_dump("网站id:",Context::get("SiteId"));
  46. $result = $this->websiteServiceClient->getWebsiteCategory($data);
  47. if ($result['code'] != ErrorCode::SUCCESS) {
  48. return Result::error($result['message'],0,[]);
  49. }
  50. return Result::success($result['data']);
  51. }
  52. /**
  53. * 获取各省名称
  54. */
  55. public function getWebsiteDistrit()
  56. {
  57. $data= [
  58. 'pid' => 0,
  59. 'website_id'=>Context::get("SiteId")
  60. ];
  61. $result=$this->PublicController->getDistrictList($data);
  62. if ($result['code'] != ErrorCode::SUCCESS) {
  63. return Result::error($result['message'],0,[]);
  64. }
  65. // var_dump($result['data']);
  66. return Result::success($result['data']);
  67. }
  68. /**
  69. * 获取广告1
  70. * @return array
  71. */
  72. public function getWebsiteAdvertisement()
  73. {
  74. $requireData = $this->request->all();
  75. $data = ['website_id'=>Context::get("SiteId")];
  76. if($requireData['ad_tag']){
  77. $validator = $this->validationFactory->make(
  78. $requireData,
  79. [
  80. 'ad_tag' => 'required'
  81. ],
  82. [
  83. 'ad_tag.required' => '广告位置表示不能为空'
  84. ]
  85. );
  86. if ($validator->fails()){
  87. $errorMessage = $validator->errors()->first();
  88. return Result::error($errorMessage);
  89. }
  90. $data['ad_tag'] = $requireData['ad_tag'];
  91. }
  92. // return Result::success($data);//测试
  93. $result = $this->websiteServiceClient->getWebsiteAdvertisement($data);
  94. if ($result['code'] != ErrorCode::SUCCESS) {
  95. return Result::error($result['message'],0,[]);
  96. }
  97. return Result::success($result['data']);
  98. }
  99. /**
  100. * 搜索并获取职能部门
  101. */
  102. public function selectWebsiteDepartment(){
  103. $requireData = $this->request->all();
  104. $data = [
  105. 'website_id'=>Context::get("SiteId")
  106. ];
  107. if(!empty($requireData)){
  108. $data = [
  109. 'keyword'=>$requireData['keyword'],
  110. 'website_id'=>Context::get("SiteId")
  111. ];
  112. }
  113. $result = $this->websiteServiceClient->selectWebsiteDepartment($data);
  114. if ($result['code'] != ErrorCode::SUCCESS) {
  115. return Result::error($result['message'],0,[]);
  116. }
  117. return Result::success($result['data']);
  118. }
  119. /**
  120. *各省市查询
  121. */
  122. public function selectWebsiteArea()
  123. {
  124. $requireData = $this->request->all();
  125. // return Result::success($requireData);
  126. $result = $this->websiteServiceClient->selectWebsiteArea($requireData);
  127. if ($result['code'] != ErrorCode::SUCCESS) {
  128. return Result::error($result['message'],0,[]);
  129. }
  130. return Result::success($result['data']);
  131. }
  132. /**
  133. * 获取新闻
  134. */
  135. public function getWebsiteArticlett()
  136. {
  137. $requireData = $this->request->all();
  138. $validator = $this->validationFactory->make(
  139. $requireData,
  140. [
  141. 'level' => 'required',
  142. 'pageSize' => 'required',
  143. ],
  144. [
  145. 'level.required' => '新闻类型不能为空',
  146. 'pageSize.required' => '显示条数不能为空',
  147. ]
  148. );
  149. if ($validator->fails()){
  150. $errorMessage = $validator->errors()->first();
  151. return Result::error($errorMessage);
  152. }
  153. if(isset($requireData['placeid']) && !empty($requireData['placeid'])){
  154. $data =[
  155. 'website_id'=>Context::get("SiteId"),
  156. 'level'=>$requireData['level'],
  157. 'pageSize'=>$requireData['pageSize'],
  158. 'placeid' => $requireData['placeid'],
  159. 'id' => $requireData['id'],
  160. ];
  161. }else{
  162. $data = [
  163. 'website_id'=>Context::get("SiteId"),
  164. 'level'=>$requireData['level'],
  165. 'pageSize'=>$requireData['pageSize'],
  166. 'id' => $requireData['id'],
  167. ];
  168. }
  169. $result = $this->newsServiceClient->getWebsiteArticlett($data);
  170. // var_dump($result);
  171. if ($result['code'] != ErrorCode::SUCCESS) {
  172. return Result::error($result['message'],0,[]);
  173. }
  174. return Result::success($result['data']);
  175. }
  176. /**
  177. * 获取模块新闻
  178. */
  179. public function getWebsiteModelArticles()
  180. {
  181. $requireData = $this->request->all();
  182. $validator = $this->validationFactory->make(
  183. $requireData,
  184. [
  185. 'catid' => 'required',
  186. 'level' => 'required',
  187. 'pagesize' => 'required'
  188. ],
  189. [
  190. 'catid.required' => '栏目id不能为空',
  191. 'level.required' => '新闻类型不能为空',
  192. 'pagesize.required' => '新闻条数不能为空'
  193. ]
  194. );
  195. if ($validator->fails()){
  196. $errorMessage = $validator->errors()->first();
  197. return Result::error($errorMessage);
  198. }
  199. if(isset($requireData['placeid']) && !empty($requireData['placeid'])){
  200. $data =[
  201. 'website_id'=>Context::get("SiteId"),
  202. 'catid' => $requireData['catid'],
  203. 'level' => $requireData['level'],
  204. 'pagesize' => $requireData['pagesize'],
  205. 'placeid' => $requireData['placeid']
  206. ];
  207. }else{
  208. $data = [
  209. 'website_id'=>Context::get("SiteId"),
  210. 'catid' => $requireData['catid'],
  211. 'level' => $requireData['level'],
  212. 'pagesize' => $requireData['pagesize']
  213. ];
  214. }
  215. $result = $this->newsServiceClient->getWebsiteModelArticles($data);
  216. // var_dump($result);
  217. if ($result['code'] != ErrorCode::SUCCESS) {
  218. return Result::error($result['message'],0,[]);
  219. }
  220. return Result::success($result['data']);
  221. }
  222. /**
  223. * 获取模块栏目
  224. */
  225. public function getWebsiteModelCategory()
  226. {
  227. $requireData = $this->request->all();
  228. $validator = $this->validationFactory->make(
  229. $requireData,
  230. [
  231. 'placeid' => 'required',
  232. 'pid' => 'required',
  233. 'num' => 'required'
  234. ],
  235. [
  236. 'placeid.required' => '栏目位置不能为空',
  237. 'pid' => '栏目类型不能为空',
  238. 'num' => '父级栏目数量'
  239. ]
  240. );
  241. if ($validator->fails()){
  242. $errorMessage = $validator->errors()->first();
  243. return Result::error($errorMessage);
  244. }
  245. $data = [
  246. 'website_id'=>Context::get("SiteId"),
  247. 'pid' => $requireData['pid'],
  248. 'placeid' => $requireData['placeid'],
  249. 'num' => $requireData['num']
  250. ];
  251. $result=$this->websiteServiceClient->getWebsiteModelCategory($data);
  252. if ($result['code'] != ErrorCode::SUCCESS) {
  253. return Result::error($result['message'],0,[]);
  254. }
  255. // var_dump($result['data']);
  256. return Result::success($result['data']);
  257. }
  258. /**
  259. * 获取友情链接
  260. * @return array
  261. */
  262. public function selectWebsiteLinks()
  263. {
  264. $requireData = $this->request->all();
  265. $validator = $this->validationFactory->make(
  266. $requireData,
  267. [
  268. 'type' => 'required',
  269. 'num' => 'required'
  270. ],
  271. [
  272. 'type.required' => '友情链接类型不能为空',
  273. 'num.required' => '友情链接数量不能为空'
  274. ]
  275. );
  276. if ($validator->fails()){
  277. $errorMessage = $validator->errors()->first();
  278. return Result::error($errorMessage);
  279. }
  280. $data = [
  281. 'website_id'=>Context::get("SiteId"),
  282. 'type'=>$requireData['type'],
  283. 'num' =>$requireData['num']
  284. ];
  285. $result = $this->websiteServiceClient->selectWebsiteLinks($data);
  286. if ($result['code'] != ErrorCode::SUCCESS) {
  287. return Result::error($result['message'],0,[]);
  288. }
  289. return Result::success($result['data']);
  290. }
  291. /**
  292. * 获取文章列表
  293. * @return array
  294. */
  295. public function getWebsiteArticleList()
  296. {
  297. $requireData = $this->request->all();
  298. if(isset($requireData['catid'])){
  299. $validator = $this->validationFactory->make(
  300. $requireData,
  301. [
  302. 'catid' => 'required'
  303. ],
  304. [
  305. 'catid.required' => '栏目id不能为空'
  306. ]
  307. );
  308. if(is_string($requireData['catid'])){
  309. $data['catid'] = json_decode($requireData['catid']);
  310. }else{
  311. $data['catid'] = $requireData['catid'];
  312. }
  313. }
  314. $validator = $this->validationFactory->make(
  315. $requireData,
  316. [
  317. 'page' => 'required',
  318. 'pageSize' => 'required'
  319. ],
  320. [
  321. 'page.required' => '分页不能为空',
  322. 'pageSize.required' => '显示条数不能为空'
  323. ]
  324. );
  325. if ($validator->fails()){
  326. $errorMessage = $validator->errors()->first();
  327. return Result::error($errorMessage);
  328. }
  329. // $data['catid'] = $requireData['catid'];
  330. if(isset($requireData['keyword']) && !empty($requireData['keyword'])){
  331. $data['keyword'] = $requireData['keyword'];
  332. }
  333. $data['website_id'] = Context::get("SiteId");
  334. $data['pageSize'] = $requireData['pageSize'];
  335. $data['page'] = $requireData['page'];
  336. // return Result::success($data);
  337. $result = $this->newsServiceClient->getWebsiteArticleList($data);
  338. // var_dump($result);
  339. if ($result['code'] != ErrorCode::SUCCESS) {
  340. return Result::error($result['message'],0,[]);
  341. }
  342. // $result = $data;
  343. return Result::success($result['data']);
  344. }
  345. /**
  346. * 获取文章详情
  347. */
  348. public function selectWebsiteArticleInfo()
  349. {
  350. $requireData = $this->request->all();
  351. $validator = $this->validationFactory->make(
  352. $requireData,
  353. [
  354. 'articleid' => 'required'
  355. ],
  356. [
  357. 'articleid.required' => '新闻id不能为空'
  358. ]
  359. );
  360. if ($validator->fails()){
  361. $errorMessage = $validator->errors()->first();
  362. return Result::error($errorMessage);
  363. }
  364. $data = [
  365. 'website_id'=>Context::get("SiteId"),
  366. 'id'=>$requireData['articleid'],
  367. ];
  368. $result = $this->newsServiceClient->selectWebsiteArticleInfo($data);
  369. // var_dump($result);
  370. if ($result['code'] != ErrorCode::SUCCESS) {
  371. return Result::error($result['message'],0,[]);
  372. }
  373. return Result::success($result['data']);
  374. }
  375. /**
  376. * 获取网站底部信息
  377. * @return array
  378. */
  379. public function getWebsiteFootInfo()
  380. {
  381. $data = [
  382. 'website_id'=>Context::get("SiteId")
  383. ];
  384. $result = $this->websiteServiceClient->getWebsiteFootInfo($data);
  385. if ($result['code'] != ErrorCode::SUCCESS) {
  386. return Result::error($result['message'],0,[]);
  387. }
  388. return Result::success($result['data']);
  389. }
  390. /**
  391. * 获取网站底部导航
  392. * @return array
  393. */
  394. public function getWebsiteFooterCategory()
  395. {
  396. $data = [
  397. 'website_id'=>Context::get("SiteId")
  398. ];
  399. $result = $this->websiteServiceClient->getWebsiteFooterCategory($data);
  400. if ($result['code']!= ErrorCode::SUCCESS) {
  401. return Result::error($result['message'],0,[]);
  402. }else{
  403. return Result::success($result['data']);
  404. }
  405. }
  406. /**
  407. * 获取网站底部导航列表
  408. * @return array
  409. */
  410. public function getWebsiteFooterCategoryList()
  411. {
  412. $requireData = $this->request->all();
  413. $validator = $this->validationFactory->make(
  414. $requireData,
  415. [
  416. 'fcat_id' =>'required|integer'
  417. ],
  418. [
  419. 'fcat_id.required' => '底部导航栏目id不能为空',
  420. 'fcat_id.integer' => '底部导航栏目id必须为整数'
  421. ]
  422. );
  423. if ($validator->fails()){
  424. $errorMessage = $validator->errors()->first();
  425. return Result::error($errorMessage);
  426. }
  427. $data = [
  428. 'fcat_id'=>$requireData['fcat_id'],
  429. 'website_id'=>Context::get("SiteId")
  430. ];
  431. $result = $this->websiteServiceClient->getWebsiteFooterCategoryList($data);
  432. if ($result['code']!= ErrorCode::SUCCESS) {
  433. return Result::error($result['message'],0,[]);
  434. }else{
  435. return Result::success($result['data']);
  436. }
  437. }
  438. /**
  439. * 获取网站底部导航内容
  440. * @return array
  441. */
  442. public function getWebsiteFooterCategoryInfo()
  443. {
  444. $requireData = $this->request->all();
  445. $validator = $this->validationFactory->make(
  446. $requireData,
  447. [
  448. 'fcat_id' =>'required|integer',
  449. 'type' => 'nullable|in:0'
  450. ],
  451. [
  452. 'fcat_id.required' => 'id不能为空',
  453. 'fcat_id.integer' => 'id必须为整数',
  454. 'type.in' => '类型必须为0'
  455. ]
  456. );
  457. if ($validator->fails()){
  458. $errorMessage = $validator->errors()->first();
  459. return Result::error($errorMessage);
  460. }
  461. $data = [
  462. 'fcat_id'=>$requireData['fcat_id'],
  463. 'website_id'=>Context::get("SiteId")
  464. ];
  465. if(isset($requireData['type'])){
  466. $data['type'] = $requireData['type'];
  467. }
  468. $result = $this->websiteServiceClient->getWebsiteFooterCategoryInfo($data);
  469. if ($result['code']!= ErrorCode::SUCCESS) {
  470. return Result::error($result['message'],0,[]);
  471. }else{
  472. return Result::success($result['data']);
  473. }
  474. }
  475. /**
  476. * 搜索导航
  477. * @return array
  478. */
  479. public function selectWebsiteCategory()
  480. {
  481. $requireData = $this->request->all();
  482. $validator = $this->validationFactory->make(
  483. $requireData,
  484. [
  485. 'cityid' => 'nullable|numeric',
  486. 'department_id' => 'nullable|numeric',
  487. ],
  488. [
  489. 'cityid.numeric' => '城市id必须为数字',
  490. 'department_id.numeric' => '部门id必须为数字'
  491. ]
  492. ) ;
  493. if ($validator->fails()){
  494. $errorMessage = $validator->errors()->first();
  495. return Result::error($errorMessage);
  496. }
  497. $data = $requireData;
  498. $data['website_id'] = Context::get("SiteId");
  499. $result = $this->newsServiceClient->selectWebsiteArticle($data);
  500. if ($result['code']!= ErrorCode::SUCCESS) {
  501. return Result::error($result['message'],0,[]);
  502. }else{
  503. return Result::success($result['data']);
  504. }
  505. }
  506. /**
  507. * 搜索栏目的seo信息
  508. * @return array
  509. */
  510. public function getWebsiteCategoryHead()
  511. {
  512. $requireData = $this->request->all();
  513. $validator = $this->validationFactory->make(
  514. $requireData,
  515. [
  516. 'catid' =>'required|integer'
  517. ],
  518. [
  519. 'catid.required' => 'id不能为空'
  520. ]
  521. ) ;
  522. if ($validator->fails()){
  523. $errorMessage = $validator->errors()->first();
  524. return Result::error($errorMessage);
  525. }
  526. $data = $requireData;
  527. $data['website_id'] = Context::get("SiteId");
  528. $result = $this->websiteServiceClient->getWebsiteCategoryHead($data);
  529. if ($result['code']!= ErrorCode::SUCCESS) {
  530. return Result::error($result['message'],0,[]);
  531. }else{
  532. return Result::success($result['data']);
  533. }
  534. }
  535. /**
  536. * 搜索某个导航
  537. * @return array
  538. */
  539. public function getOneWebsiteCategory()
  540. {
  541. $requireData = $this->request->all();
  542. $validator = $this->validationFactory->make(
  543. $requireData,
  544. [
  545. 'catid' =>'required|integer'
  546. ],
  547. [
  548. 'catid.required' => 'catid不能为空'
  549. ]
  550. ) ;
  551. if ($validator->fails()){
  552. $errorMessage = $validator->errors()->first();
  553. return Result::error($errorMessage);
  554. }
  555. $data = [
  556. 'category_id' => $requireData['catid'],
  557. 'website_id' => Context::get("SiteId")
  558. ];
  559. $result = $this->websiteServiceClient->getOneWebsiteCategory($data);
  560. if ($result['code']!= ErrorCode::SUCCESS) {
  561. return Result::error($result['message'],0,[]);
  562. }else{
  563. return Result::success($result['data']);
  564. }
  565. }
  566. /**
  567. * 获取网站调查问卷
  568. */
  569. public function getWebsiteSurvey()
  570. {
  571. $requireData = $this->request->all();
  572. if(isset($requireData['art_id'])){
  573. $validator = $this->validationFactory->make(
  574. $requireData,
  575. [
  576. 'art_id' =>'required|integer'
  577. ],
  578. [
  579. 'art_id.required' => 'id不能为空',
  580. 'art_id.integer' => 'id必须为整数'
  581. ]
  582. );
  583. if ($validator->fails()){
  584. $errorMessage = $validator->errors()->first();
  585. return Result::error($errorMessage);
  586. }
  587. $data['art_id'] = $requireData['art_id'];
  588. }
  589. $data['website_id'] = Context::get("SiteId");
  590. // return Result::success($data);
  591. $result = $this->newsServiceClient->getWebsiteSurvey($data);
  592. if ($result['code']!= ErrorCode::SUCCESS) {
  593. return Result::error($result['message'],0,[]);
  594. }else{
  595. return Result::success($result['data']);
  596. }
  597. }
  598. /*
  599. * 添加网站调查问卷选项
  600. *
  601. * */
  602. public function addWebsiteSurveyOption()
  603. {
  604. $requireData = $this->request->all();
  605. $validator = $this->validationFactory->make(
  606. $requireData,
  607. [
  608. 'sur_id' =>'required',
  609. 'choice_name' =>'required|string|max:30',
  610. ],
  611. [
  612. 'sur_id.required' => '问卷id不能为空',
  613. 'choice_name.required' => '选项名称不能为空',
  614. 'choice_name.string' => '选项名称必须为字符串',
  615. 'choice_name.max' => '选项名称不能超过30个字符',
  616. ]
  617. );
  618. if ($validator->fails()){
  619. $errorMessage = $validator->errors()->first();
  620. return Result::error($errorMessage);
  621. }
  622. $data = [
  623. 'website_id' => Context::get("SiteId"),
  624. 'sur_id' => $requireData['sur_id'],
  625. 'choice_name' => $requireData['choice_name'],
  626. ];
  627. $result = $this->newsServiceClient->addWebsiteSurveyOption($data);
  628. if ($result['code']!= ErrorCode::SUCCESS) {
  629. return Result::error($result['message'],0,[]);
  630. }else{
  631. return Result::success($result['data']);
  632. }
  633. }
  634. /*
  635. * 调查问卷-投票
  636. *
  637. * */
  638. public function addWebsiteSurveyVote()
  639. {
  640. $requireData = $this->request->all();
  641. $validator = $this->validationFactory->make(
  642. $requireData,
  643. [
  644. 'sur_id' =>'required',
  645. 'choice_id' =>'required',
  646. ],
  647. [
  648. 'sur_id.required' => '问卷id不能为空',
  649. 'choice_id.required' => '选项名称不能为空'
  650. ]
  651. );
  652. if ($validator->fails()){
  653. $errorMessage = $validator->errors()->first();
  654. return Result::error($errorMessage);
  655. }
  656. $data = [
  657. 'website_id' => Context::get("SiteId"),
  658. 'sur_id' => $requireData['sur_id'],
  659. 'choice_id' => $requireData['choice_id']
  660. ];
  661. // return Result::success($data);
  662. $result = $this->newsServiceClient->addWebsiteSurveyVote($data);
  663. if ($result['code']!= ErrorCode::SUCCESS) {
  664. return Result::error($result['message'],0,[]);
  665. }else{
  666. return Result::success($result['data']);
  667. }
  668. }
  669. /**
  670. * 获取父级/子级导航----路由
  671. * @return array
  672. */
  673. public function getWebsiteParentCategory()
  674. {
  675. $requireData = $this->request->all();
  676. $validator = $this->validationFactory->make(
  677. $requireData,
  678. [
  679. 'id' =>'required|integer'
  680. ],
  681. [
  682. 'id.required' => 'id不能为空'
  683. ]
  684. ) ;
  685. if ($validator->fails()){
  686. $errorMessage = $validator->errors()->first();
  687. return Result::error($errorMessage);
  688. }
  689. $requireData['website_id'] = Context::get("SiteId");
  690. $result = $this->websiteServiceClient->getWebsiteParentCategory($requireData);
  691. if ($result['code']!= ErrorCode::SUCCESS) {
  692. return Result::error($result['message'],0,[]);
  693. }else{
  694. return Result::success($result['data']);
  695. }
  696. }
  697. /**
  698. * 获取网站模块新闻----图文
  699. * @return array
  700. */
  701. public function getWebsiteCatidArticle()
  702. {
  703. $requireData = $this->request->all();
  704. $validator = $this->validationFactory->make(
  705. $requireData,
  706. [
  707. 'catid' =>'required|integer'
  708. ],
  709. [
  710. 'catid.required' => 'id不能为空'
  711. ]
  712. );
  713. if ($validator->fails()){
  714. $errorMessage = $validator->errors()->first();
  715. return Result::error($errorMessage);
  716. }
  717. $requireData['website_id'] = Context::get("SiteId");
  718. // return Result::success($requireData);
  719. $result = $this->newsServiceClient->getWebsiteCatidArticle($requireData);
  720. return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
  721. }
  722. /*
  723. * 获取底部所有信息
  724. *
  725. * */
  726. public function getWebsiteFootAll()
  727. {
  728. $requireData = $this->request->all();
  729. $validator = $this->validationFactory->make(
  730. $requireData,
  731. [
  732. 'link_textnum' => 'required|integer',
  733. 'link_imgnum' => 'required|integer',
  734. 'link_footnum' => 'required|integer',
  735. ],
  736. [
  737. 'link_textnum.required' => '文字类型友情链接数量不能为空',
  738. 'link_textnum.integer' => '文字类型友情链接数量必须为整数',
  739. 'link_imgnum.required' => '图片类型友情链接数量不能为空',
  740. 'link_imgnum.integer' => '图片类型友情链接数量必须为整数',
  741. 'link_footnum.required' => '底部友情链接数量不能为空',
  742. 'link_footnum.integer' => '底部友情链接数量必须为整数',
  743. ]
  744. );
  745. if ($validator->fails()){
  746. $errorMessage = $validator->errors()->first();
  747. return Result::error($errorMessage);
  748. }
  749. $requireData['website_id'] = Context::get("SiteId");
  750. $result = $this->websiteServiceClient->getWebsiteFootAll($requireData);
  751. return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
  752. }
  753. /*
  754. * 获取网站顶部信息
  755. *
  756. * */
  757. public function getWebsiteHead()
  758. {
  759. $data = [
  760. 'website_id'=>Context::get("SiteId")
  761. ];
  762. $result = $this->websiteServiceClient->getWebsiteHead($data);
  763. return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
  764. }
  765. /*
  766. * 获取网站底部信息
  767. *
  768. * */
  769. public function getWebsiteAllArticle()
  770. {
  771. $requireData = $this->request->all();
  772. $requireData['website_id'] = Context::get("SiteId");
  773. $result = $this->newsServiceClient->getWebsiteAllArticle($requireData);
  774. return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
  775. }
  776. /*
  777. * 乡村网-获取特殊新闻模块
  778. *
  779. * */
  780. public function getWebsiteArticles()
  781. {
  782. $requireData = $this->request->all();
  783. $requireData['website_id'] = Context::get("SiteId");
  784. $validator = $this->validationFactory->make(
  785. $requireData,
  786. [
  787. 'id' =>'required',
  788. ],
  789. [
  790. 'id.required' => 'id不能为空',
  791. ]
  792. );
  793. if ($validator->fails()){
  794. $errorMessage = $validator->errors()->first();
  795. return Result::error($errorMessage);
  796. }
  797. $result = $this->newsServiceClient->getWebsiteArticles($requireData);
  798. return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
  799. }
  800. }