NewsController.php 121 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Controller;
  4. use App\JsonRpc\NewsServiceInterface;
  5. use App\Tools\PublicData;
  6. use Hyperf\Di\Annotation\Inject;
  7. use Hyperf\HttpServer\Annotation\AutoController;
  8. use App\Tools\Result;
  9. use Hyperf\Validation\Contract\ValidatorFactoryInterface;
  10. use Hyperf\Context\Context;
  11. use App\JsonRpc\UserServiceInterface;
  12. use App\JsonRpc\WebsiteServiceInterface;
  13. use Laminas\Mime\Decode;
  14. /**
  15. * Class NewsController
  16. * @package App\Controller
  17. */
  18. //#[AutoController]
  19. class NewsController extends AbstractController
  20. {
  21. #[Inject]
  22. protected ValidatorFactoryInterface $validationFactory;
  23. /**
  24. * @var NewsServiceInterface
  25. */
  26. #[Inject]
  27. private $newsServiceClient;
  28. /**
  29. * @var WebsiteServiceInterface
  30. */
  31. #[Inject]
  32. private $websiteServiceClient;
  33. /**
  34. * @var UserServiceInterface
  35. */
  36. #[Inject]
  37. private $userServiceClient;
  38. /**
  39. * @var WebsiteServiceInterface
  40. */
  41. #[Inject]
  42. private $WebsiteServiceClient;
  43. /**
  44. * 导航池列表
  45. * @return void
  46. */
  47. public function getCategoryList()
  48. {
  49. $requireData = $this->request->all();
  50. $validator = $this->validationFactory->make(
  51. $requireData,
  52. [
  53. 'page' => 'required',
  54. 'pageSize' => 'required',
  55. ],
  56. [
  57. 'page.required' => 'id不能为空',
  58. 'pageSize.required' => 'id不能为空',
  59. ]
  60. );
  61. if ($validator->fails()) {
  62. $errorMessage = $validator->errors()->first();
  63. return Result::error($errorMessage);
  64. }
  65. $result = $this->newsServiceClient->getCategoryList($requireData);
  66. if ($result['code'] == 200) {
  67. return Result::success($result['data']);
  68. }
  69. return Result::error($result['message']);
  70. }
  71. /**
  72. * 站点下的导航池
  73. * @return void
  74. */
  75. public function categoryList()
  76. {
  77. $requireData = $this->request->all();
  78. $validator = $this->validationFactory->make(
  79. $requireData,
  80. [
  81. 'pid' => 'required'
  82. ],
  83. [
  84. 'pid.required' => '父级ID不能为空'
  85. ]
  86. );
  87. if ($validator->fails()) {
  88. $errorMessage = $validator->errors()->first();
  89. return Result::error($errorMessage);
  90. }
  91. $requireData['website_id'] = Context::get("SiteId");
  92. //获取用户信息
  93. $user_id = Context::get("UserId");
  94. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  95. // var_dump("用户信息:", $userInfo);
  96. $sszq = $userInfo['data']['sszq'];
  97. $type_id = $userInfo['data']['type_id']; //'1:个人会员 2:政务会员 3:企业会员 4:调研员 10000:管理员 20000:游客(小程序)'
  98. //管理员看所有
  99. if ($type_id == 10000) {
  100. $result = $this->newsServiceClient->categoryList($requireData);
  101. } else {
  102. $requireData['sszq'] = $sszq;
  103. $result = $this->newsServiceClient->myCategoryList($requireData);
  104. }
  105. // $rep = PublicData::buildMenuTree($result['data']);
  106. return $result ? Result::success($result['data']) : Result::error($result['message']);
  107. }
  108. /**
  109. * 添加导航
  110. * @return array|void
  111. */
  112. public function addCategory()
  113. {
  114. $requireData = $this->request->all();
  115. $validator = $this->validationFactory->make(
  116. $requireData,
  117. [
  118. 'name' => 'required',
  119. // 'seo_title' => 'required',
  120. // 'seo_keywords' => 'required',
  121. // 'seo_description' => 'required',
  122. ],
  123. [
  124. 'name.required' => '导航池名称不能为空',
  125. // 'seo_title.required' => 'seo标题名称不能为空',
  126. // 'seo_keywords.required' => 'seo关键词不能为空',
  127. // 'seo_description.required' => 'seo描述不能为空',
  128. ]
  129. );
  130. if ($validator->fails()) {
  131. $errorMessage = $validator->errors()->first();
  132. return Result::error($errorMessage);
  133. }
  134. $requireData['pid'] = isset($requireData['pid_arr']) ? end($requireData['pid_arr']) : '';
  135. $requireData['pid_arr'] = isset($requireData['pid_arr']) ? json_encode($requireData['pid_arr']) : '';
  136. // $requireData['city_id'] = isset($requireData['city_arr_id'])?end($requireData['city_arr_id']):'';
  137. // $requireData['city_arr_id'] = isset($requireData['city_arr_id'])?json_encode($requireData['city_arr_id']):'';
  138. // $requireData['department_id'] = isset($requireData['department_arr_id'])?end($requireData['department_arr_id']):'';
  139. // $requireData['department_arr_id'] = isset($requireData['department_arr_id'])?json_encode($requireData['department_arr_id']):'';
  140. $result = $this->newsServiceClient->addCategory($requireData);
  141. return $result ? Result::success($result['data']) : Result::error($result['message']);
  142. }
  143. /**
  144. * 更新导航池
  145. * @return array
  146. */
  147. public function updateCategory()
  148. {
  149. $requireData = $this->request->all();
  150. $validator = $this->validationFactory->make(
  151. $requireData,
  152. [
  153. 'id' => 'required',
  154. 'name' => 'required',
  155. // 'seo_title' => 'required',
  156. // 'seo_keywords' => 'required',
  157. // 'seo_description' => 'required',
  158. ],
  159. [
  160. 'id.required' => 'ID不能为空',
  161. 'name.required' => '栏目池名称不能为空',
  162. // 'seo_title.required' => 'seo标题名称不能为空',
  163. // 'seo_keywords.required' => 'seo关键词不能为空',
  164. // 'seo_description.required' => 'seo描述不能为空',
  165. ]
  166. );
  167. if ($validator->fails()) {
  168. $errorMessage = $validator->errors()->first();
  169. return Result::error($errorMessage);
  170. }
  171. $requireData['pid'] = isset($requireData['pid_arr']) ? end($requireData['pid_arr']) : '';
  172. $requireData['pid_arr'] = isset($requireData['pid_arr']) ? json_encode($requireData['pid_arr']) : '';
  173. // $requireData['city_id'] = isset($requireData['city_arr_id'])?end($requireData['city_arr_id']):'';
  174. // $requireData['city_arr_id'] = isset($requireData['city_arr_id'])?json_encode($requireData['city_arr_id']):'';
  175. // $requireData['department_id'] = isset($requireData['department_arr_id'])?end($requireData['department_arr_id']):'';
  176. // $requireData['department_arr_id'] = isset($requireData['department_arr_id'])?json_encode($requireData['department_arr_id']):'';
  177. $result = $this->newsServiceClient->updateCategory($requireData);
  178. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  179. }
  180. /**
  181. * 删除分类
  182. * @return array
  183. */
  184. public function delCategory()
  185. {
  186. $requireData = $this->request->all();
  187. $validator = $this->validationFactory->make(
  188. $requireData,
  189. [
  190. 'id' => 'required',
  191. ],
  192. [
  193. 'id.required' => 'id不能为空',
  194. ]
  195. );
  196. if ($validator->fails()) {
  197. $errorMessage = $validator->errors()->first();
  198. return Result::error($errorMessage);
  199. }
  200. $result = $this->newsServiceClient->delCategory($requireData);
  201. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  202. }
  203. /**
  204. * 资讯列表
  205. * @return void
  206. */
  207. public function getArticleList()
  208. {
  209. $requireData = $this->request->all();
  210. $validator = $this->validationFactory->make(
  211. $requireData,
  212. [
  213. 'page' => 'required',
  214. 'pageSize' => 'required',
  215. ],
  216. [
  217. 'page.required' => 'id不能为空',
  218. 'pageSize.required' => 'id不能为空',
  219. ]
  220. );
  221. if ($validator->fails()) {
  222. $errorMessage = $validator->errors()->first();
  223. return Result::error($errorMessage);
  224. }
  225. $requireData['website_id'] = Context::get("SiteId");
  226. //获取用户信息
  227. $user_id = Context::get("UserId");
  228. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  229. // var_dump("用户信息:", $userInfo);
  230. $sszq = $userInfo['data']['sszq'];
  231. //获取websiteid
  232. // $groupInfo = $this->WebsiteServiceClient->getWebsiteGroupInfo(['id' => $sszq]);
  233. // var_dump("groupInfo:",$groupInfo);
  234. // $sszqstr = implode(',',json_decode($groupInfo['data']['web_ids']));
  235. $type_id = $userInfo['data']['type_id']; //'1:个人会员 2:政务会员 3:企业会员 4:调研员 10000:管理员 20000:游客(小程序)'
  236. $requireData['type_id'] = $type_id;
  237. $requireData['user_id'] = $user_id;
  238. var_dump("资讯:", $requireData);
  239. $result = $this->newsServiceClient->getArticleList($requireData);
  240. //1通过,2待审核,3待发 4,拒绝 5删除
  241. $statusList = [
  242. '0' => '待审核',
  243. '1' => '已发布',
  244. '2' => '待审核',
  245. '3' => '待发',
  246. '4' => '拒绝',
  247. '5' => '删除',
  248. ];
  249. if ($result['data']) {
  250. foreach ($result['data']['rows'] as $k => $v) {
  251. $result['data']['rows'][$k]['cat_arr_id'] = $v['cat_arr_id'] ? json_decode($v['cat_arr_id']) : [0];
  252. $result['data']['rows'][$k]['tag'] = $v['tag'] ? json_decode($v['tag']) : [];
  253. $result['data']['rows'][$k]['status_name'] = $statusList[$v['status']];
  254. $result['data']['rows'][$k]['level'] = (string)$v['level'];
  255. $result['data']['rows'][$k]['islink'] = isset($v['islink']) && $v['islink'] > 0 ? true : false;
  256. }
  257. }
  258. // $result = $this->newsServiceClient->getArticleList($requireData);
  259. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  260. }
  261. /**
  262. * 获取导航池信息
  263. * @return void
  264. */
  265. public function getCategoryInfo()
  266. {
  267. $requireData = $this->request->all();
  268. $validator = $this->validationFactory->make(
  269. $requireData,
  270. [
  271. 'id' => 'required',
  272. ],
  273. [
  274. 'id.required' => 'id不能为空',
  275. ]
  276. );
  277. if ($validator->fails()) {
  278. $errorMessage = $validator->errors()->first();
  279. return Result::error($errorMessage);
  280. }
  281. $result = $this->newsServiceClient->getCategoryInfo($requireData);
  282. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  283. }
  284. /**
  285. * 添加分类
  286. * @return array|void
  287. */
  288. public function addArticle()
  289. {
  290. // $a = ['asdlk1', '2342345234', [1, '222222222222']];
  291. // var_dump(json_encode($a));
  292. // return '222';
  293. $requireData = $this->request->all();
  294. $validator = $this->validationFactory->make(
  295. $requireData,
  296. [
  297. 'title' => 'required',
  298. 'cat_arr_id' => 'required',
  299. 'author' => 'required',
  300. ],
  301. [
  302. 'title.required' => '标题不能为空',
  303. 'cat_arr_id.required' => '导航池ID不能为空',
  304. 'author.required' => '作者不能为空',
  305. ]
  306. );
  307. if ($validator->fails()) {
  308. $errorMessage = $validator->errors()->first();
  309. return Result::error($errorMessage);
  310. }
  311. $requireData['catid'] = isset($requireData['cat_arr_id']) ? end($requireData['cat_arr_id']) : '';
  312. $requireData['cat_arr_id'] = isset($requireData['cat_arr_id']) ? json_encode($requireData['cat_arr_id']) : '';
  313. $loginIp = $this->request->getHeader('x-forwarded-for')[0] ?? $this->request->getHeader('x-real-ip')[0] ?? $this->request->getServerParams()['remote_addr'] ?? '0.0.0.0';
  314. $requireData['ip'] = $loginIp;
  315. // $requireData['website_id'] = Context::get("SiteId");
  316. $requireData['admin_user_id'] = Context::get("UserId");
  317. $requireData['level'] = isset($requireData['level']) && $requireData['level'] ? $requireData['level'] : 0;
  318. $requireData['hits'] = isset($requireData['hits']) && $requireData['hits'] ? $requireData['hits'] : 0;
  319. $requireData['is_original'] = isset($requireData['is_original']) && $requireData['is_original'] ? $requireData['is_original'] : 0;
  320. $requireData['status'] = isset($requireData['status']) && $requireData['status'] ? $requireData['status'] : 0;
  321. // var_dump("入参:",$requireData);
  322. $result = $this->newsServiceClient->addArticle($requireData);
  323. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  324. }
  325. /**
  326. * 更新资讯
  327. * @return array
  328. */
  329. public function updateArticle()
  330. {
  331. $requireData = $this->request->all();
  332. $validator = $this->validationFactory->make(
  333. $requireData,
  334. [
  335. 'id' => 'required',
  336. 'title' => 'required',
  337. 'cat_arr_id' => 'required',
  338. 'author' => 'required',
  339. ],
  340. [
  341. 'title.required' => '标题不能为空',
  342. 'cat_arr_id.required' => '导航池ID不能为空',
  343. 'author.required' => '作者不能为空',
  344. 'id.required' => 'ID不能为空'
  345. ]
  346. );
  347. if ($validator->fails()) {
  348. $errorMessage = $validator->errors()->first();
  349. return Result::error($errorMessage);
  350. }
  351. $requireData['catid'] = isset($requireData['cat_arr_id']) ? end($requireData['cat_arr_id']) : '';
  352. $requireData['cat_arr_id'] = isset($requireData['cat_arr_id']) ? json_encode($requireData['cat_arr_id']) : '';
  353. $result = $this->newsServiceClient->updateArticle($requireData);
  354. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  355. }
  356. /**
  357. * 更新资讯状态
  358. * @return array
  359. */
  360. public function upArticleStatus()
  361. {
  362. $requireData = $this->request->all();
  363. $validator = $this->validationFactory->make(
  364. $requireData,
  365. [
  366. 'id' => 'required',
  367. 'status' => 'required',
  368. ],
  369. [
  370. 'id.required' => 'id不能为空',
  371. 'status.required' => '状态不能为空',
  372. ]
  373. );
  374. if ($validator->fails()) {
  375. $errorMessage = $validator->errors()->first();
  376. return Result::error($errorMessage);
  377. }
  378. $result = $this->newsServiceClient->upArticleStatus($requireData);
  379. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  380. }
  381. /**
  382. * 删除分类
  383. * @return array
  384. */
  385. public function delArticle()
  386. {
  387. $requireData = $this->request->all();
  388. $validator = $this->validationFactory->make(
  389. $requireData,
  390. [
  391. 'id' => 'required',
  392. ],
  393. [
  394. 'id.required' => 'id不能为空',
  395. ]
  396. );
  397. if ($validator->fails()) {
  398. $errorMessage = $validator->errors()->first();
  399. return Result::error($errorMessage);
  400. }
  401. // $requireData['website_id'] = Context::get("SiteId");
  402. $result = $this->newsServiceClient->delArticle($requireData);
  403. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  404. }
  405. /**
  406. * 获取资讯手动推荐列表
  407. * @return array
  408. */
  409. public function getArticleCommend()
  410. {
  411. $requireData = $this->request->all();
  412. $validator = $this->validationFactory->make(
  413. $requireData,
  414. [
  415. 'page' => 'required',
  416. 'pageSize' => 'required',
  417. ],
  418. [
  419. 'page.required' => 'page不能为空',
  420. 'pageSize.required' => 'limit不能为空',
  421. ]
  422. );
  423. if ($validator->fails()) {
  424. $errorMessage = $validator->errors()->first();
  425. return Result::error($errorMessage);
  426. }
  427. $requireData['user_id'] = Context::get("UserId");
  428. $requireData['website_id'] = $requireData['website_id'];
  429. $requireData['web_id'] = Context::get("SiteId");
  430. $result = $this->newsServiceClient->getArticleCommend($requireData);
  431. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  432. }
  433. /**
  434. * 获取资讯信息
  435. * @return array
  436. */
  437. public function getArticleInfo()
  438. {
  439. $requireData = $this->request->all();
  440. $validator = $this->validationFactory->make(
  441. $requireData,
  442. [
  443. 'id' => 'required',
  444. ],
  445. [
  446. 'id.required' => 'id不能为空',
  447. ]
  448. );
  449. if ($validator->fails()) {
  450. $errorMessage = $validator->errors()->first();
  451. return Result::error($errorMessage);
  452. }
  453. $result = $this->newsServiceClient->getArticleInfo($requireData);
  454. if ($result['code'] == 0) {
  455. return Result::error($result['message']);
  456. }
  457. $result['data']['cat_arr_id'] = $result['data']['cat_arr_id'] ? json_decode($result['data']['cat_arr_id']) : [];
  458. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  459. }
  460. /**
  461. * 获取调查问卷列表
  462. * @return array
  463. */
  464. public function getSurveyList()
  465. {
  466. $requireData = $this->request->all();
  467. $validator = $this->validationFactory->make(
  468. $requireData,
  469. [
  470. 'page' => 'required',
  471. 'pageSize' => 'required',
  472. ],
  473. [
  474. 'page.required' => '第几页不能为空',
  475. 'pageSize.required' => '每页显示条数不能为空',
  476. ]
  477. );
  478. if ($validator->fails()) {
  479. $errorMessage = $validator->errors()->first();
  480. return Result::error($errorMessage);
  481. }
  482. $result = $this->newsServiceClient->getSurveyList($requireData);
  483. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  484. }
  485. /**
  486. * 获取调查问卷详情
  487. * @return array
  488. */
  489. public function getSurveyInfo()
  490. {
  491. $requireData = $this->request->all();
  492. $validator = $this->validationFactory->make(
  493. $requireData,
  494. [
  495. 'sur_id' => 'required'
  496. ],
  497. [
  498. 'sur_id.required' => 'sur_id不能为空',
  499. ]
  500. );
  501. if ($validator->fails()) {
  502. $errorMessage = $validator->errors()->first();
  503. return Result::error($errorMessage);
  504. }
  505. $result = $this->newsServiceClient->getSurveyInfo($requireData);
  506. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  507. }
  508. /**
  509. * 检测导航池名称是否存在
  510. * @return array
  511. */
  512. public function checkCategoryName()
  513. {
  514. $requireData = $this->request->all();
  515. $validator = $this->validationFactory->make(
  516. $requireData,
  517. [
  518. 'name' => 'required',
  519. ],
  520. [
  521. 'name.required' => 'name不能为空',
  522. ]
  523. );
  524. if ($validator->fails()) {
  525. $errorMessage = $validator->errors()->first();
  526. return Result::error($errorMessage);
  527. }
  528. $result = $this->newsServiceClient->checkCategoryName($requireData);
  529. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  530. }
  531. //20250226 产品列表
  532. public function getGoodList()
  533. {
  534. $requireData = $this->request->all();
  535. $validator = $this->validationFactory->make(
  536. $requireData,
  537. [
  538. 'page' => 'integer|required',
  539. 'page_size' => 'integer|required',
  540. ],
  541. [
  542. 'page.integer' => 'page必须是整型',
  543. 'page_size.integer' => 'page_size必须是整型',
  544. 'page.required' => 'page不能为空',
  545. 'page_size.required' => 'page_size不能为空',
  546. ]
  547. );
  548. $user_id = Context::get("UserId");
  549. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  550. // var_dump("用户信息:", $userInfo);
  551. $type_id = $userInfo['data']['type_id']; //'1:个人会员 2:政务会员 3:企业会员 4:调研员 10000:管理员 20000:游客(小程序)'
  552. $requireData['user_type_id'] = $type_id; //重名了
  553. $requireData['user_id'] = $user_id;
  554. if ($validator->fails()) {
  555. $errorMessage = $validator->errors()->first();
  556. return Result::error($errorMessage);
  557. }
  558. $result = $this->newsServiceClient->getGoodList($requireData);
  559. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  560. }
  561. public function getGoodInfo()
  562. {
  563. $requireData = $this->request->all();
  564. $validator = $this->validationFactory->make(
  565. $requireData,
  566. [
  567. 'id' => 'required',
  568. ],
  569. [
  570. 'id.required' => 'id不能为空',
  571. ]
  572. );
  573. if ($validator->fails()) {
  574. $errorMessage = $validator->errors()->first();
  575. return Result::error($errorMessage);
  576. }
  577. $result = $this->newsServiceClient->getGoodInfo($requireData);
  578. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  579. }
  580. public function updateGood()
  581. {
  582. $requireData = $this->request->all();
  583. $validator = $this->validationFactory->make(
  584. $requireData,
  585. [
  586. 'id' => 'required',
  587. ],
  588. [
  589. 'id.required' => 'id不能为空',
  590. ]
  591. );
  592. if ($validator->fails()) {
  593. $errorMessage = $validator->errors()->first();
  594. return Result::error($errorMessage);
  595. }
  596. $result = $this->newsServiceClient->updateGood($requireData);
  597. return $result['code'] == 200 ? Result::success($result['data']) : Result::error(
  598. $result['message']
  599. );
  600. }
  601. public function addGood()
  602. {
  603. $requireData = $this->request->all();
  604. $validator = $this->validationFactory->make(
  605. $requireData,
  606. [
  607. 'name' => 'required',
  608. // 'price'=> 'numeric',
  609. // 'min'=> 'numeric',
  610. // 'max'=> 'numeric',
  611. // 'hits '=> 'numeric',
  612. ],
  613. [
  614. 'name.required' => '产品名称不能为空',
  615. // 'price.required' => '产品价格不能为空',
  616. // 'price.numeric' => '价格必须是数字',
  617. // 'min.numeric' => 'min必须是数字',
  618. // 'max.numeric' => 'max须是数字',
  619. // 'hits.numeric' => '点击量必须是数字',
  620. ]
  621. );
  622. if ($validator->fails()) {
  623. $errorMessage = $validator->errors()->first();
  624. return Result::error($errorMessage);
  625. }
  626. $requireData['user_id'] = context::get("UserId");
  627. $result = $this->newsServiceClient->addGood($requireData);
  628. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  629. }
  630. public function delGood()
  631. {
  632. $requireData = $this->request->all();
  633. $validator = $this->validationFactory->make(
  634. $requireData,
  635. [
  636. 'id' => 'required',
  637. ],
  638. [
  639. 'id.required' => 'id不能为空',
  640. ]
  641. );
  642. if ($validator->fails()) {
  643. $errorMessage = $validator->errors()->first();
  644. return Result::error($errorMessage);
  645. }
  646. $result = $this->newsServiceClient->delGood($requireData);
  647. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  648. }
  649. //20250226 产品列表
  650. //20250306 求职
  651. public function getJobHuntingList()
  652. {
  653. $requireData = $this->request->all();
  654. $validator = $this->validationFactory->make(
  655. $requireData,
  656. [
  657. 'page' => 'required',
  658. 'page_size' => 'required',
  659. ],
  660. [
  661. 'page.required' => 'page不能为空',
  662. 'page_size.required' => 'page_size不能为空',
  663. ]
  664. );
  665. if ($validator->fails()) {
  666. $errorMessage = $validator->errors()->first();
  667. return Result::error($errorMessage);
  668. }
  669. $user_id = Context::get("UserId");
  670. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  671. $type_id = $userInfo['data']['type_id']; //'1:个人会员 2:政务会员 3:企业会员 4:调研员 10000:管理员 20000:游客(小程序)'
  672. $requireData['type_id'] = $type_id;
  673. $requireData['user_id'] = $user_id;
  674. $result = $this->newsServiceClient->getJobHuntingList($requireData);
  675. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  676. }
  677. public function getJobHuntingApply()
  678. {
  679. $requireData = $this->request->all();
  680. $validator = $this->validationFactory->make(
  681. $requireData,
  682. [
  683. 'page' => 'required',
  684. 'page_size' => 'required',
  685. ],
  686. [
  687. 'page.required' => 'page不能为空',
  688. 'page_size.required' => 'page_size不能为空',
  689. ]
  690. );
  691. if ($validator->fails()) {
  692. $errorMessage = $validator->errors()->first();
  693. return Result::error($errorMessage);
  694. }
  695. $user_id = Context::get("UserId");
  696. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  697. $type_id = $userInfo['data']['type_id']; //'1:个人会员 2:政务会员 3:企业会员 4:调研员 10000:管理员 20000:游客(小程序)'
  698. $requireData['type_id'] = $type_id;
  699. $requireData['user_id'] = $user_id;
  700. $result = $this->newsServiceClient->getJobHuntingApply($requireData);
  701. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  702. }
  703. public function getJobHuntingInfo()
  704. {
  705. $requireData = $this->request->all();
  706. $validator = $this->validationFactory->make(
  707. $requireData,
  708. [
  709. 'id' => 'required',
  710. ],
  711. [
  712. 'id.required' => 'id不能为空',
  713. ]
  714. );
  715. if ($validator->fails()) {
  716. $errorMessage = $validator->errors()->first();
  717. return Result::error($errorMessage);
  718. }
  719. $result = $this->newsServiceClient->getJobHuntingInfo($requireData);
  720. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  721. }
  722. public function updateJobHunting()
  723. {
  724. $requireData = $this->request->all();
  725. $validator = $this->validationFactory->make(
  726. $requireData,
  727. [
  728. 'name' => 'required',
  729. 'sexy' => 'required',
  730. ],
  731. [
  732. 'name.required' => '姓名不能为空',
  733. 'sexy.required' => '性别不能为空',
  734. ]
  735. );
  736. if ($validator->fails()) {
  737. $errorMessage = $validator->errors()->first();
  738. return Result::error($errorMessage);
  739. }
  740. $result = $this->newsServiceClient->updateJobHunting($requireData);
  741. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  742. }
  743. public function addJobHunting()
  744. {
  745. $requireData = $this->request->all();
  746. $validator = $this->validationFactory->make(
  747. $requireData,
  748. [
  749. 'name' => 'required',
  750. 'sexy' => 'required',
  751. ],
  752. [
  753. 'name.required' => '姓名不能为空',
  754. 'sexy.required' => '性别不能为空',
  755. ]
  756. );
  757. if ($validator->fails()) {
  758. $errorMessage = $validator->errors()->first();
  759. return Result::error($errorMessage);
  760. }
  761. $requireData['user_id'] = context::get("UserId");
  762. $result = $this->newsServiceClient->addJobHunting($requireData);
  763. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  764. }
  765. public function delJobHunting()
  766. {
  767. $requireData = $this->request->all();
  768. $validator = $this->validationFactory->make(
  769. $requireData,
  770. [
  771. 'id' => 'required',
  772. ],
  773. [
  774. 'id.required' => 'id不能为空',
  775. ]
  776. );
  777. if ($validator->fails()) {
  778. $errorMessage = $validator->errors()->first();
  779. return Result::error($errorMessage);
  780. }
  781. $result = $this->newsServiceClient->delJobHunting($requireData);
  782. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  783. }
  784. public function getJobHuntingData()
  785. {
  786. $requireData = $this->request->all();
  787. $result = $this->newsServiceClient->getJobHuntingData($requireData);
  788. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  789. }
  790. //20250306 求职
  791. //20250324 通知,公告,消息
  792. public function getMSG()
  793. {
  794. $requireData = $this->request->all();
  795. $validator = $this->validationFactory->make(
  796. $requireData,
  797. [],
  798. []
  799. );
  800. if ($validator->fails()) {
  801. $errorMessage = $validator->errors()->first();
  802. return Result::error($errorMessage);
  803. }
  804. $user_id = Context::get("UserId");
  805. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  806. if ($userInfo['code'] != 200) {
  807. return Result::error($userInfo['message']);
  808. }
  809. $requireData['user_id'] = $user_id;
  810. $requireData['type_id'] = $userInfo['data']['type_id'];
  811. $result = $this->newsServiceClient->getMSG($requireData);
  812. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  813. }
  814. public function addNotice()
  815. {
  816. $requireData = $this->request->all();
  817. $validator = $this->validationFactory->make(
  818. $requireData,
  819. [
  820. 'content' => 'required',
  821. ],
  822. [
  823. 'content.required' => '内容不能为空',
  824. ]
  825. );
  826. if ($validator->fails()) {
  827. $errorMessage = $validator->errors()->first();
  828. return Result::error($errorMessage);
  829. }
  830. $requireData['user_id'] = context::get("UserId");
  831. $result = $this->newsServiceClient->addNotice($requireData);
  832. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  833. }
  834. public function deleteNotice()
  835. {
  836. $requireData = $this->request->all();
  837. $validator = $this->validationFactory->make(
  838. $requireData,
  839. [
  840. 'id' => 'required',
  841. ],
  842. [
  843. 'id.required' => 'id不能为空',
  844. ]
  845. );
  846. if ($validator->fails()) {
  847. $errorMessage = $validator->errors()->first();
  848. return Result::error($errorMessage);
  849. }
  850. $result = $this->newsServiceClient->deleteNotice($requireData);
  851. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  852. }
  853. public function getNoticeList()
  854. {
  855. $requireData = $this->request->all();
  856. $validator = $this->validationFactory->make(
  857. $requireData,
  858. [
  859. 'page' => 'required',
  860. 'page_size' => 'required',
  861. ],
  862. [
  863. 'page.required' => 'page不能为空',
  864. 'page_size.required' => 'page_size不能为空',
  865. ]
  866. );
  867. if ($validator->fails()) {
  868. $errorMessage = $validator->errors()->first();
  869. return Result::error($errorMessage);
  870. }
  871. $user_id = Context::get("UserId");
  872. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  873. $requireData['user_id'] = $user_id;
  874. $requireData['type_id'] = $userInfo['data']['type_id'];
  875. $result = $this->newsServiceClient->getNoticeList($requireData);
  876. if ($result['code'] == 200) {
  877. return Result::success($result['data']);
  878. }
  879. return Result::error($result['message']);
  880. }
  881. public function getNoticeInfo()
  882. {
  883. $requireData = $this->request->all();
  884. $validator = $this->validationFactory->make(
  885. $requireData,
  886. [
  887. 'id' => 'required',
  888. ],
  889. [
  890. 'id.required' => 'id不能为空',
  891. ]
  892. );
  893. if ($validator->fails()) {
  894. $errorMessage = $validator->errors()->first();
  895. return Result::error($errorMessage);
  896. }
  897. $requireData['user_id'] = Context::get("UserId");
  898. $result = $this->newsServiceClient->getNoticeInfo($requireData);
  899. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  900. }
  901. public function updateNotice()
  902. {
  903. $requireData = $this->request->all();
  904. $validator = $this->validationFactory->make(
  905. $requireData,
  906. [
  907. 'id' => 'required',
  908. 'content' => 'required',
  909. ],
  910. [
  911. 'id.required' => 'id不能为空',
  912. 'content.required' => '内容不能为空',
  913. ]
  914. );
  915. if ($validator->fails()) {
  916. $errorMessage = $validator->errors()->first();
  917. return Result::error($errorMessage);
  918. }
  919. $result = $this->newsServiceClient->updateNotice($requireData);
  920. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  921. }
  922. public function addComplaint()
  923. {
  924. $requireData = $this->request->all();
  925. $validator = $this->validationFactory->make(
  926. $requireData,
  927. [
  928. 'content' => 'required',
  929. ],
  930. [
  931. 'content.required' => '内容不能为空',
  932. ]
  933. );
  934. if ($validator->fails()) {
  935. $errorMessage = $validator->errors()->first();
  936. return Result::error($errorMessage);
  937. }
  938. $requireData['user_id'] = context::get("UserId");
  939. $result = $this->newsServiceClient->addComplaint($requireData);
  940. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  941. }
  942. public function deleteComplaint()
  943. {
  944. $requireData = $this->request->all();
  945. $validator = $this->validationFactory->make(
  946. $requireData,
  947. [
  948. 'id' => 'required',
  949. ],
  950. [
  951. 'id.required' => 'id不能为空',
  952. ]
  953. );
  954. if ($validator->fails()) {
  955. $errorMessage = $validator->errors()->first();
  956. return Result::error($errorMessage);
  957. }
  958. $result = $this->newsServiceClient->deleteComplaint($requireData);
  959. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  960. }
  961. public function getComplaintList()
  962. {
  963. $requireData = $this->request->all();
  964. $validator = $this->validationFactory->make(
  965. $requireData,
  966. [
  967. 'page' => 'required',
  968. 'page_size' => 'required',
  969. ],
  970. [
  971. 'page.required' => 'page不能为空',
  972. 'page_size.required' => 'page_size不能为空',
  973. ]
  974. );
  975. if ($validator->fails()) {
  976. $errorMessage = $validator->errors()->first();
  977. return Result::error($errorMessage);
  978. }
  979. $user_id = Context::get("UserId");
  980. $userInfo = $this->userServiceClient->getUserInfo((int)$user_id);
  981. $requireData['user_id'] = $user_id;
  982. $requireData['type_id'] = $userInfo['data']['type_id'];
  983. $result = $this->newsServiceClient->getComplaintList($requireData);
  984. if ($result['code'] == 200) {
  985. return Result::success($result['data']);
  986. }
  987. return Result::error($result['message']);
  988. }
  989. public function getComplaintInfo()
  990. {
  991. $requireData = $this->request->all();
  992. $validator = $this->validationFactory->make(
  993. $requireData,
  994. [
  995. 'id' => 'required',
  996. ],
  997. [
  998. 'id.required' => 'id不能为空',
  999. ]
  1000. );
  1001. if ($validator->fails()) {
  1002. $errorMessage = $validator->errors()->first();
  1003. return Result::error($errorMessage);
  1004. }
  1005. $requireData['user_id'] = Context::get("UserId");
  1006. $result = $this->newsServiceClient->getComplaintInfo($requireData);
  1007. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1008. }
  1009. public function updateComplaint()
  1010. {
  1011. $requireData = $this->request->all();
  1012. $validator = $this->validationFactory->make(
  1013. $requireData,
  1014. [
  1015. 'id' => 'required',
  1016. 'content' => 'required',
  1017. ],
  1018. [
  1019. 'id.required' => 'id不能为空',
  1020. 'content.required' => '内容不能为空',
  1021. ]
  1022. );
  1023. if ($validator->fails()) {
  1024. $errorMessage = $validator->errors()->first();
  1025. return Result::error($errorMessage);
  1026. }
  1027. $result = $this->newsServiceClient->updateComplaint($requireData);
  1028. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1029. }
  1030. public function getDUser()
  1031. {
  1032. $requireData = $this->request->all();
  1033. $validator = $this->validationFactory->make(
  1034. $requireData,
  1035. [
  1036. // 'page' => 'integer|required',
  1037. // 'page_size' => 'integer|required',
  1038. // 'checkout' => 'integer|required',
  1039. ],
  1040. [
  1041. // 'page.integer' => 'page必须是整型',
  1042. // 'page_size.integer' => 'page_size必须是整型',
  1043. // 'page.required' => 'page不能为空',
  1044. ]
  1045. );
  1046. if ($validator->fails()) {
  1047. $errorMessage = $validator->errors()->first();
  1048. return Result::error($errorMessage);
  1049. }
  1050. $result = $this->newsServiceClient->getDUser($requireData);
  1051. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1052. }
  1053. //20250324 通知,公告,消息
  1054. // 20250306 招聘
  1055. /*
  1056. *后端-招聘 搜索及获取职位
  1057. * @return array
  1058. */
  1059. public function getJobRecruitingList()
  1060. {
  1061. $requireData = $this->request->all();
  1062. $validator = $this->validationFactory->make(
  1063. $requireData,
  1064. [
  1065. 'page' => 'integer|required',
  1066. 'page_size' => 'integer|required',
  1067. 'checkout' => 'integer|required',
  1068. ],
  1069. [
  1070. 'page.integer' => 'page必须是整型',
  1071. 'page_size.integer' => 'page_size必须是整型',
  1072. 'page.required' => 'page不能为空',
  1073. 'page_size.required' => 'page_size不能为空',
  1074. 'checkout.required' => 'checkout不能为空',
  1075. 'checkout.integer' => 'checkout必须是整型',
  1076. ]
  1077. );
  1078. if ($validator->fails()) {
  1079. $errorMessage = $validator->errors()->first();
  1080. return Result::error($errorMessage);
  1081. }
  1082. $requireData['website_id'] = Context::get("SiteId");
  1083. $requireData['user_id'] = Context::get("UserId");
  1084. // return Result::success($requireData);
  1085. if (empty($requireData['website_id']) || empty($requireData['user_id'])) {
  1086. return Result::error('参数错误');
  1087. }
  1088. $result = $this->newsServiceClient->getJobRecruitingList($requireData);
  1089. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1090. }
  1091. /*
  1092. *后端-招聘 获取公司信息
  1093. * @return array
  1094. */
  1095. public function getJobCompany()
  1096. {
  1097. $requireData = $this->request->all();
  1098. $requireData['website_id'] = Context::get("SiteId");
  1099. $requireData['user_id'] = Context::get("UserId");
  1100. // return Result::success($requireData);
  1101. if (empty($requireData['user_id'])) {
  1102. return Result::error('参数错误');
  1103. }
  1104. $result = $this->newsServiceClient->getJobCompany($requireData);
  1105. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1106. }
  1107. /*
  1108. *后端-招聘 修改公司信息
  1109. * @return array
  1110. */
  1111. public function upJobCompany()
  1112. {
  1113. $requireData = $this->request->all();
  1114. $requireData['user_id'] = Context::get("UserId");
  1115. $validator = $this->validationFactory->make(
  1116. $requireData,
  1117. [
  1118. 'user_id' => 'required',
  1119. 'business_name' => 'required',
  1120. 'company_hy_id' => 'required|integer',
  1121. 'company_size' => 'required|integer',
  1122. 'introduction' => 'required',
  1123. // 'real_name'=>'required',
  1124. // 'mobile'=>'required|integer',
  1125. 'address_arr_id' => 'required',
  1126. 'address' => 'required',
  1127. ],
  1128. [
  1129. 'user_id.required' => '用户id不能为空',
  1130. 'business_name.required' => '公司名称不能为空',
  1131. 'company_hy_id.required' => '所属行业不能为空',
  1132. 'company_hy_id.integer' => '所属行业必须是整数',
  1133. 'company_size.required' => '公司规模不能为空',
  1134. 'company_size.integer' => '公司规模必须是整数',
  1135. 'introduction.required' => '公司简介不能为空',
  1136. // 'real_name.required' => '联系人不能为空',
  1137. // 'mobile.required' => '联系电话不能为空',
  1138. // 'mobile.integer' => '联系电话必须是整数',
  1139. 'address_arr_id.required' => '公司地址不能为空',
  1140. 'address.required' => '公司详细地址不能为空',
  1141. ]
  1142. );
  1143. if ($validator->fails()) {
  1144. $errorMessage = $validator->errors()->first();
  1145. return Result::error($errorMessage);
  1146. }
  1147. $requireData['website_id'] = Context::get("SiteId");
  1148. // return Result::success($requireData);
  1149. if (empty($requireData['user_id'])) {
  1150. return Result::error('参数错误');
  1151. }
  1152. $result = $this->newsServiceClient->upJobCompany($requireData);
  1153. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1154. }
  1155. /*
  1156. *后端-招聘 获取职位详情
  1157. * @return array
  1158. */
  1159. public function getJobRecruitingInfo()
  1160. {
  1161. $requireData = $this->request->all();
  1162. $validator = $this->validationFactory->make(
  1163. $requireData,
  1164. [
  1165. 'id' => 'required|integer',
  1166. ],
  1167. [
  1168. 'id.required' => 'id不能为空',
  1169. 'id.integer' => 'id必须是整数',
  1170. ]
  1171. );
  1172. if ($validator->fails()) {
  1173. $errorMessage = $validator->errors()->first();
  1174. return Result::error($errorMessage);
  1175. }
  1176. // return Result::success($requireData);
  1177. $requireData['website_id'] = Context::get("SiteId");
  1178. $requireData['user_id'] = Context::get("UserId");
  1179. // return Result::success($requireData);
  1180. if (empty($requireData['user_id'])) {
  1181. return Result::error('参数错误');
  1182. }
  1183. $result = $this->newsServiceClient->getJobRecruitingInfo($requireData);
  1184. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1185. }
  1186. /*
  1187. *后端-招聘 新增职位
  1188. * @return array
  1189. */
  1190. public function addJobRecruiting(){
  1191. var_dump('111------********************----controller');
  1192. $requireData = $this->request->all();
  1193. // 定义验证规则数组
  1194. $jobValidationRules = [
  1195. 'title' => 'required',
  1196. 'cat_arr_id' => 'required',
  1197. 'city_arr_id' => 'required',
  1198. 'hy_id' => 'required|integer',
  1199. 'zw_id' => 'required|integer',
  1200. 'jtzw_id' => 'required|integer',
  1201. 'nature_id' => 'required|integer',
  1202. 'due_data' => 'required',
  1203. 'description' => 'required',
  1204. ];
  1205. // 定义验证错误信息数组
  1206. $jobValidationMessages = [
  1207. 'title.required' => '职位名称不能为空',
  1208. 'cat_arr_id.required' => '栏目不能为空',
  1209. 'city_arr_id.required' => '工作地区不能为空',
  1210. 'hy_id.required' => '行业分类不能为空',
  1211. 'hy_id.integer' => '行业分类必须是整数',
  1212. 'zw_id.required' => '职位分类不能为空',
  1213. 'zw_id.integer' => '职位分类必须是整数',
  1214. 'jtzw_id.required' => '职位不能为空',
  1215. 'jtzw_id.integer' => '职位分类必须是整数',
  1216. 'nature_id.required' => '职位性质不能为空',
  1217. 'nature_id.integer' => '职位性质必须是整数',
  1218. 'due_data.required' => '截止日期不能为空',
  1219. 'description.required' => '职位描述不能为空',
  1220. ];
  1221. // 定义公司信息验证规则数组
  1222. $companyValidationRules = [
  1223. 'website_id' => 'required|integer',
  1224. 'business_name' => 'required',
  1225. 'company_hy_id' => 'required|integer',
  1226. 'company_size' => 'required|integer',
  1227. // 'company_nature' =>'required|integer',
  1228. 'introduction' => 'required',
  1229. 'real_name' => 'required',
  1230. // 将联系电话的验证规则修改为最少十一位整数
  1231. 'mobile' => 'required|integer|min:10000000000',
  1232. 'address_arr_id' => 'required',
  1233. 'address' => 'required',
  1234. ];
  1235. // 定义公司信息验证错误信息数组
  1236. $companyValidationMessages = [
  1237. 'website_id.required' => '网站ID不能为空',
  1238. 'website_id.integer' => '网站ID必须是整数',
  1239. 'business_name.required' => '公司名称不能为空',
  1240. 'company_hy_id.required' => '所属行业不能为空',
  1241. 'company_hy_id.integer' => '所属行业必须是整数',
  1242. 'company_size.required' => '公司规模不能为空',
  1243. 'company_size.integer' => '公司规模必须是整数',
  1244. // 'company_nature.required' => '公司性质不能为空',
  1245. // 'company_nature.integer' => '公司性质必须是整数',
  1246. 'introduction.required' => '公司简介不能为空',
  1247. 'real_name.required' => '联系人不能为空',
  1248. 'mobile.required' => '联系电话不能为空',
  1249. 'mobile.integer' => '联系电话必须是整数',
  1250. 'mobile.min' => '联系电话必须是11位',
  1251. 'address_arr_id.required' => '公司地址不能为空',
  1252. 'address.required' => '公司详细地址不能为空',
  1253. ];
  1254. if (!isset($requireData['user_type']) || $requireData['user_type'] === null) {
  1255. return Result::error('参数错误');
  1256. }
  1257. var_dump('111------**********初步验证**********----controller');
  1258. switch ($requireData['user_type']) {
  1259. case 3:
  1260. $validator = $this->validationFactory->make($requireData, $jobValidationRules, $jobValidationMessages);
  1261. if ($validator->fails()) {
  1262. return Result::error($validator->errors()->first());
  1263. }
  1264. $requireData['website_id'] = Context::get("SiteId") ?? 0;
  1265. break;
  1266. case 10000:
  1267. $validator = $this->validationFactory->make($requireData, $jobValidationRules, $jobValidationMessages);
  1268. if ($validator->fails()) {
  1269. return Result::error($validator->errors()->first());
  1270. }
  1271. $validator = $this->validationFactory->make($requireData, $companyValidationRules, $companyValidationMessages);
  1272. if ($validator->fails()) {
  1273. return Result::error($validator->errors()->first());
  1274. }
  1275. // $requireData['website_id'] = Context::get("SiteId") ?? 0;
  1276. break;
  1277. default:
  1278. return Result::error('不支持的用户类型');
  1279. }
  1280. var_dump('111------**********最终验证**********----controller');
  1281. $requireData['user_id'] = Context::get("UserId") ?? 0;
  1282. var_dump('111------********************----controller',$requireData['user_id']);
  1283. $result = $this->newsServiceClient->addJobRecruiting($requireData);
  1284. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1285. }
  1286. /*
  1287. *后端-招聘 修改职位
  1288. * @return array
  1289. */
  1290. public function upJobRecruiting()
  1291. {
  1292. $requireData = $this->request->all();
  1293. // 定义验证规则数组
  1294. $jobValidationRules = [
  1295. 'title' => 'required',
  1296. 'cat_arr_id' => 'required',
  1297. 'city_arr_id' => 'required',
  1298. 'hy_id' => 'required|integer',
  1299. 'zw_id' => 'required|integer',
  1300. 'jtzw_id' => 'required|integer',
  1301. 'nature_id' => 'required|integer',
  1302. 'due_data' => 'required',
  1303. 'description' => 'required',
  1304. ];
  1305. // 定义验证错误信息数组
  1306. $jobValidationMessages = [
  1307. 'title.required' => '职位名称不能为空',
  1308. 'cat_arr_id.required' => '栏目不能为空',
  1309. 'city_arr_id.required' => '工作地区不能为空',
  1310. 'hy_id.required' => '行业分类不能为空',
  1311. 'hy_id.integer' => '行业分类必须是整数',
  1312. 'zw_id.required' => '职位分类不能为空',
  1313. 'zw_id.integer' => '职位分类必须是整数',
  1314. 'jtzw_id.required' => '职位不能为空',
  1315. 'jtzw_id.integer' => '职位分类必须是整数',
  1316. 'nature_id.required' => '职位性质不能为空',
  1317. 'nature_id.integer' => '职位性质必须是整数',
  1318. 'due_data.required' => '截止日期不能为空',
  1319. 'description.required' => '职位描述不能为空',
  1320. ];
  1321. // 定义公司信息验证规则数组
  1322. $companyValidationRules = [
  1323. 'business_name' => 'required',
  1324. 'company_hy_id' => 'required',
  1325. 'company_size' => 'required',
  1326. // 'company_nature' =>'required',
  1327. 'introduction' => 'required',
  1328. 'real_name' => 'required',
  1329. // 将联系电话的验证规则修改为最少十一位整数
  1330. 'mobile' => 'required|integer|min:10000000000',
  1331. 'address_arr_id' => 'required',
  1332. 'address' => 'required',
  1333. ];
  1334. // 定义公司信息验证错误信息数组
  1335. $companyValidationMessages = [
  1336. 'business_name.required' => '公司名称不能为空',
  1337. 'company_hy_id.required' => '所属行业不能为空',
  1338. 'company_size.required' => '公司规模不能为空',
  1339. // 'company_nature.required' => '公司性质不能为空',
  1340. 'introduction.required' => '公司简介不能为空',
  1341. 'real_name.required' => '联系人不能为空',
  1342. 'mobile.required' => '联系电话不能为空',
  1343. 'mobile.integer' => '联系电话必须是整数',
  1344. 'mobile.min' => '联系电话必须是11位',
  1345. 'address_arr_id.required' => '公司地址不能为空',
  1346. 'address.required' => '公司详细地址不能为空',
  1347. ];
  1348. if (!isset($requireData['user_type']) || $requireData['user_type'] === null) {
  1349. return Result::error('参数错误');
  1350. }
  1351. switch ($requireData['user_type']) {
  1352. case 3:
  1353. $validator = $this->validationFactory->make($requireData, $jobValidationRules, $jobValidationMessages);
  1354. if ($validator->fails()) {
  1355. return Result::error($validator->errors()->first());
  1356. }
  1357. $requireData['website_id'] = Context::get("SiteId") ?? 0;
  1358. break;
  1359. case 10000:
  1360. $validator = $this->validationFactory->make($requireData, $jobValidationRules, $jobValidationMessages);
  1361. if ($validator->fails()) {
  1362. return Result::error($validator->errors()->first());
  1363. }
  1364. $validator = $this->validationFactory->make($requireData, $companyValidationRules, $companyValidationMessages);
  1365. if ($validator->fails()) {
  1366. return Result::error($validator->errors()->first());
  1367. }
  1368. // $requireData['website_id'] = Context::get("SiteId") ?? 0;
  1369. break;
  1370. default:
  1371. return Result::error('不支持的用户类型');
  1372. }
  1373. $requireData['user_id'] = Context::get("UserId") ?? 0;
  1374. // return Result::success($requireData);
  1375. $result = $this->newsServiceClient->upJobRecruiting($requireData);
  1376. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1377. }
  1378. /*
  1379. *后端-招聘 删除职位
  1380. * @return array
  1381. */
  1382. public function delJobRecruiting()
  1383. {
  1384. $requireData = $this->request->all();
  1385. $validator = $this->validationFactory->make(
  1386. $requireData,
  1387. [
  1388. 'id' => 'required',
  1389. ],
  1390. [
  1391. 'id.required' => 'id不能为空',
  1392. ]
  1393. );
  1394. $requireData['user_id'] = Context::get("UserId");
  1395. $result = $this->newsServiceClient->delJobRecruiting($requireData);
  1396. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1397. }
  1398. /*
  1399. *后端-招聘 获取地区-省-市
  1400. * @return array
  1401. */
  1402. public function getJobRecruitingArea()
  1403. {
  1404. $requireData = $this->request->all();
  1405. $result = $this->newsServiceClient->getJobRecruitingArea($requireData);
  1406. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1407. }
  1408. /*
  1409. *后端-招聘 行业分类
  1410. * @return array
  1411. */
  1412. public function getIndustry()
  1413. {
  1414. $requireData = $this->request->all();
  1415. $validator = $this->validationFactory->make(
  1416. $requireData,
  1417. [
  1418. 'id' => 'required',
  1419. ],
  1420. [
  1421. 'id.required' => 'id不能为空',
  1422. ]
  1423. );
  1424. $result = $this->newsServiceClient->getIndustry($requireData);
  1425. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1426. }
  1427. /*
  1428. *后端-招聘 职位分类
  1429. * @return array
  1430. */
  1431. public function getPositionList()
  1432. {
  1433. $requireData = $this->request->all();
  1434. $result = $this->newsServiceClient->getPositionList($requireData);
  1435. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1436. }
  1437. /*
  1438. *后端-招聘 职位性质
  1439. * @return array
  1440. */
  1441. public function getJobNature()
  1442. {
  1443. $requireData = $this->request->all();
  1444. $result = $this->newsServiceClient->getJobNature($requireData);
  1445. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1446. }
  1447. /*
  1448. *后端-招聘 工作经验
  1449. * @return array
  1450. */
  1451. public function getExperience()
  1452. {
  1453. $requireData = $this->request->all();
  1454. $result = $this->newsServiceClient->getExperience($requireData);
  1455. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1456. }
  1457. /*
  1458. *后端-招聘 学历
  1459. * @return array
  1460. */
  1461. public function getEducation()
  1462. {
  1463. $requireData = $this->request->all();
  1464. $result = $this->newsServiceClient->getEducation($requireData);
  1465. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1466. }
  1467. /*
  1468. *后端-招聘 薪资
  1469. * @return array
  1470. */
  1471. public function getSalary()
  1472. {
  1473. $requireData = $this->request->all();
  1474. $result = $this->newsServiceClient->getSalary($requireData);
  1475. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1476. }
  1477. /*
  1478. *后端-招聘 语言
  1479. * @return array
  1480. */
  1481. public function getLanguage()
  1482. {
  1483. $requireData = $this->request->all();
  1484. $result = $this->newsServiceClient->getLanguage($requireData);
  1485. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1486. }
  1487. /*
  1488. *后端-招聘 语言-掌握能力
  1489. * @return array
  1490. */
  1491. public function getLevel()
  1492. {
  1493. $requireData = $this->request->all();
  1494. $result = $this->newsServiceClient->getLevel($requireData);
  1495. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1496. }
  1497. /*
  1498. *后端-招聘 公司规模
  1499. * @return array
  1500. */
  1501. public function getCompanySize()
  1502. {
  1503. $requireData = $this->request->all();
  1504. $result = $this->newsServiceClient->getCompanySize($requireData);
  1505. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1506. }
  1507. /*
  1508. *后端-招聘 公司性质
  1509. * @return array
  1510. */
  1511. public function getCompanyNature()
  1512. {
  1513. $requireData = $this->request->all();
  1514. $result = $this->newsServiceClient->getCompanyNature($requireData);
  1515. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1516. }
  1517. /*
  1518. *后端-招聘 职位审核
  1519. * @return array
  1520. */
  1521. public function checkJobRecruiting()
  1522. {
  1523. $requireData = $this->request->all();
  1524. $validator = $this->validationFactory->make(
  1525. $requireData,
  1526. [
  1527. 'id' => 'required',
  1528. 'status' => 'required|integer|in:0,1,2',
  1529. ],
  1530. [
  1531. 'id.required' => 'id不能为空',
  1532. 'status.required' => 'status不能为空',
  1533. 'status.integer' => 'status必须是整数',
  1534. 'status.in' => 'status必须是1,2,3中的一个'
  1535. ]
  1536. );
  1537. if ($validator->fails()) {
  1538. $errorMessage = $validator->errors()->first();
  1539. return Result::error($errorMessage);
  1540. }
  1541. if ($requireData['status'] == '2') {
  1542. if (empty($requireData['refuse_reason'])) {
  1543. return Result::error('请填写审核不通过原因');
  1544. }
  1545. }
  1546. $requireData['user_id'] = Context::get("UserId");
  1547. $result = $this->newsServiceClient->checkJobRecruiting($requireData);
  1548. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1549. }
  1550. /*
  1551. *后端-招聘 职位机会列表
  1552. * @return array
  1553. */
  1554. public function getRecruitingList()
  1555. {
  1556. $requireData = $this->request->all();
  1557. $validator = $this->validationFactory->make(
  1558. $requireData,
  1559. [
  1560. 'page' => 'required|integer',
  1561. 'pageSize' => 'required|integer',
  1562. ],
  1563. [
  1564. 'page.required' => '第几页不能为空',
  1565. 'page.integer' => '第几页必须是整数',
  1566. 'pageSize.required' => '每页显示数量不能为空',
  1567. 'pageSize.integer' => '每页显示数量必须是整数'
  1568. ]
  1569. );
  1570. $requireData['user_id'] = Context::get("UserId");
  1571. if ($validator->fails()) {
  1572. $errorMessage = $validator->errors()->first();
  1573. return Result::error($errorMessage);
  1574. }
  1575. $result = $this->newsServiceClient->getRecruitingList($requireData);
  1576. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1577. }
  1578. /*
  1579. *后端-招聘 职位机会详情
  1580. * @return array
  1581. */
  1582. public function getRecruitingInfo()
  1583. {
  1584. $requireData = $this->request->all();
  1585. $validator = $this->validationFactory->make(
  1586. $requireData,
  1587. [
  1588. 'id' => 'required|integer',
  1589. ],
  1590. [
  1591. 'id.required' => 'id不能为空',
  1592. ]
  1593. );
  1594. if ($validator->fails()) {
  1595. $errorMessage = $validator->errors()->first();
  1596. return Result::error($errorMessage);
  1597. }
  1598. $requireData['user_id'] = Context::get("UserId");
  1599. $result = $this->newsServiceClient->getRecruitingInfo($requireData);
  1600. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1601. }
  1602. /*
  1603. *后端-招聘 我的沟通
  1604. * @return array
  1605. */
  1606. public function getJobResumeList()
  1607. {
  1608. $requireData = $this->request->all();
  1609. $validator = $this->validationFactory->make(
  1610. $requireData,
  1611. [
  1612. 'page' => 'required|integer',
  1613. 'pageSize' => 'required|integer',
  1614. ],
  1615. [
  1616. 'page.required' => '第几页不能为空',
  1617. 'page.integer' => '第几页必须是整数',
  1618. 'pageSize.required' => '每页显示数量不能为空',
  1619. 'pageSize.integer' => '每页显示数量必须是整数'
  1620. ]
  1621. );
  1622. $requireData['user_id'] = Context::get("UserId");
  1623. if ($validator->fails()) {
  1624. $errorMessage = $validator->errors()->first();
  1625. return Result::error($errorMessage);
  1626. }
  1627. $result = $this->newsServiceClient->getJobResumeList($requireData);
  1628. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1629. }
  1630. //202504084 审核状态
  1631. public function updateGoodStatus()
  1632. {
  1633. $requireData = $this->request->all();
  1634. $validator = $this->validationFactory->make(
  1635. $requireData,
  1636. [
  1637. 'id' => 'required',
  1638. 'status' => 'required',
  1639. ],
  1640. [
  1641. 'id.required' => 'id不能为空',
  1642. 'status.required' => '状态不能为空',
  1643. ]
  1644. );
  1645. if ($validator->fails()) {
  1646. $errorMessage = $validator->errors()->first();
  1647. return Result::error($errorMessage);
  1648. }
  1649. $requireData['user_id'] = Context::get("UserId");
  1650. $requireData['type_id'] = Context::get("TypeId");
  1651. $result = $this->newsServiceClient->updateGoodStatus($requireData);
  1652. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1653. }
  1654. public function updateNoticeStatus()
  1655. {
  1656. $requireData = $this->request->all();
  1657. $validator = $this->validationFactory->make(
  1658. $requireData,
  1659. [
  1660. 'id' => 'required',
  1661. 'status' => 'required',
  1662. ],
  1663. [
  1664. 'id.required' => 'id不能为空',
  1665. 'status.required' => '状态不能为空',
  1666. ]
  1667. );
  1668. if ($validator->fails()) {
  1669. $errorMessage = $validator->errors()->first();
  1670. return Result::error($errorMessage);
  1671. }
  1672. $result = $this->newsServiceClient->updateNoticeStatus($requireData);
  1673. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1674. }
  1675. public function updateComplaintStatus()
  1676. {
  1677. $requireData = $this->request->all();
  1678. $validator = $this->validationFactory->make(
  1679. $requireData,
  1680. [
  1681. 'id' => 'required',
  1682. 'status' => 'required',
  1683. ],
  1684. [
  1685. 'id.required' => 'id不能为空',
  1686. 'status.required' => '状态不能为空',
  1687. ]
  1688. );
  1689. if ($validator->fails()) {
  1690. $errorMessage = $validator->errors()->first();
  1691. return Result::error($errorMessage);
  1692. }
  1693. $requireData['user_id'] = Context::get("UserId");
  1694. $requireData['type_id'] = Context::get("TypeId");
  1695. $result = $this->newsServiceClient->updateComplaintStatus($requireData);
  1696. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1697. }
  1698. public function updateJobHuntingStatus()
  1699. {
  1700. $requireData = $this->request->all();
  1701. $validator = $this->validationFactory->make(
  1702. $requireData,
  1703. [
  1704. 'id' => 'required',
  1705. 'status' => 'required',
  1706. ],
  1707. [
  1708. 'id.required' => 'id不能为空',
  1709. 'status.required' => '状态不能为空',
  1710. ]
  1711. );
  1712. if ($validator->fails()) {
  1713. $errorMessage = $validator->errors()->first();
  1714. return Result::error($errorMessage);
  1715. }
  1716. $result = $this->newsServiceClient->updateJobHuntingStatus($requireData);
  1717. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1718. }
  1719. public function myApplyList()
  1720. {
  1721. $requireData = $this->request->all();
  1722. $validator = $this->validationFactory->make(
  1723. $requireData,
  1724. [
  1725. 'page' => 'required|integer',
  1726. 'pageSize' => 'required|integer',
  1727. ],
  1728. [
  1729. 'page.required' => '第几页不能为空',
  1730. 'page.integer' => '第几页必须是整数',
  1731. 'pageSize.required' => '每页显示数量不能为空',
  1732. 'pageSize.integer' => '每页显示数量必须是整数'
  1733. ]
  1734. );
  1735. $requireData['user_id'] = Context::get("UserId");
  1736. if ($validator->fails()) {
  1737. $errorMessage = $validator->errors()->first();
  1738. return Result::error($errorMessage);
  1739. }
  1740. $result = $this->newsServiceClient->myApplyList($requireData);
  1741. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1742. }
  1743. //20250422 书刊音像
  1744. public function getBookList()
  1745. {
  1746. $requireData = $this->request->all();
  1747. $validator = $this->validationFactory->make(
  1748. $requireData,
  1749. [
  1750. 'page' => 'required|integer',
  1751. 'page_size' => 'required|integer'
  1752. ],
  1753. [
  1754. 'page.required' => '页码不能为空',
  1755. 'page.integer' => '页码必须是整数',
  1756. 'page_size.required' => '每页条数不能为空',
  1757. 'page_size.integer' => '每页条数必须是整数',
  1758. ]
  1759. );
  1760. if ($validator->fails()) {
  1761. $errorMessage = $validator->errors()->first();
  1762. return Result::error($errorMessage);
  1763. }
  1764. $requireData['user_id'] = Context::get("UserId");
  1765. $requireData['type_id'] = Context::get("TypeId");
  1766. $requireData['website_id'] = Context::get("SiteId");
  1767. $result = $this->newsServiceClient->getBookList($requireData);
  1768. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1769. }
  1770. public function addBook()
  1771. {
  1772. $requireData = $this->request->all();
  1773. $validator = $this->validationFactory->make(
  1774. $requireData,
  1775. [
  1776. 'title' => 'required',
  1777. ],
  1778. [
  1779. 'title.required' => '书名不能为空',
  1780. ]
  1781. );
  1782. if ($validator->fails()) {
  1783. $errorMessage = $validator->errors()->first();
  1784. return Result::error($errorMessage);
  1785. }
  1786. $requireData['user_id'] = Context::get("UserId");
  1787. $requireData['type_id'] = Context::get("TypeId");
  1788. // $requireData['website_id'] = Context::get("SiteId");
  1789. $result = $this->newsServiceClient->addBook($requireData);
  1790. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1791. }
  1792. public function deleteBook()
  1793. {
  1794. $requireData = $this->request->all();
  1795. $validator = $this->validationFactory->make(
  1796. $requireData,
  1797. [
  1798. 'id' => 'required',
  1799. ],
  1800. [
  1801. 'id.required' => 'id不能为空',
  1802. ]
  1803. );
  1804. if ($validator->fails()) {
  1805. $errorMessage = $validator->errors()->first();
  1806. return Result::error($errorMessage);
  1807. }
  1808. $requireData['user_id'] = Context::get("UserId");
  1809. $requireData['type_id'] = Context::get("TypeId");
  1810. $requireData['website_id'] = Context::get("SiteId");
  1811. $result = $this->newsServiceClient->deleteBook($requireData);
  1812. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1813. }
  1814. public function updateBook()
  1815. {
  1816. $requireData = $this->request->all();
  1817. $validator = $this->validationFactory->make(
  1818. $requireData,
  1819. [
  1820. 'id' => 'required',
  1821. ],
  1822. [
  1823. 'id.required' => 'id不能为空',
  1824. ]
  1825. );
  1826. if ($validator->fails()) {
  1827. $errorMessage = $validator->errors()->first();
  1828. return Result::error($errorMessage);
  1829. }
  1830. // $requireData['user_id'] = Context::get("UserId");
  1831. $result = $this->newsServiceClient->updateBook($requireData);
  1832. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1833. }
  1834. public function updateBookStatus()
  1835. {
  1836. $requireData = $this->request->all();
  1837. $validator = $this->validationFactory->make(
  1838. $requireData,
  1839. [
  1840. 'id' => 'required',
  1841. ],
  1842. [
  1843. 'id.required' => 'id不能为空',
  1844. ]
  1845. );
  1846. if ($validator->fails()) {
  1847. $errorMessage = $validator->errors()->first();
  1848. return Result::error($errorMessage);
  1849. }
  1850. $requireData['user_id'] = Context::get("UserId");
  1851. $result = $this->newsServiceClient->updateBookStatus($requireData);
  1852. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1853. }
  1854. public function getBookInfo()
  1855. {
  1856. $requireData = $this->request->all();
  1857. $validator = $this->validationFactory->make(
  1858. $requireData,
  1859. [
  1860. 'id' => 'required',
  1861. ],
  1862. [
  1863. 'id.required' => 'id不能为空',
  1864. ]
  1865. );
  1866. if ($validator->fails()) {
  1867. $errorMessage = $validator->errors()->first();
  1868. return Result::error($errorMessage);
  1869. }
  1870. $requireData['user_id'] = Context::get('UserId');
  1871. $result = $this->newsServiceClient->getBookInfo($requireData);
  1872. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1873. }
  1874. //20250422 书刊音像
  1875. // 20250623 项目管理
  1876. /**
  1877. * 项目列表
  1878. * @return array
  1879. */
  1880. public function getProjectList()
  1881. {
  1882. $requireData = $this->request->all();
  1883. $validator = $this->validationFactory->make(
  1884. $requireData,
  1885. [
  1886. 'page' => 'required|integer',
  1887. 'pageSize' => 'required|integer',
  1888. 'status' => 'required|integer',
  1889. ],
  1890. [
  1891. 'page.required' => 'page不能为空',
  1892. 'page.integer' => 'page必须是整数',
  1893. 'pageSize.required' => 'page_size不能为空',
  1894. 'pageSize.integer' => 'page_size必须是整数',
  1895. 'status.required' => 'status不能为空',
  1896. 'status.integer' => 'status必须是整数',
  1897. ]
  1898. );
  1899. if ($validator->fails()) {
  1900. $errorMessage = $validator->errors()->first();
  1901. return Result::error($errorMessage);
  1902. }
  1903. $requireData['user_id'] = Context::get('UserId');
  1904. $result = $this->newsServiceClient->getProjectList($requireData);
  1905. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1906. }
  1907. /**
  1908. * 添加项目
  1909. * @return array
  1910. */
  1911. public function addProject()
  1912. {
  1913. $requireData = $this->request->all();
  1914. $validator = $this->validationFactory->make(
  1915. $requireData,
  1916. [
  1917. 'website_id' => 'required|integer',
  1918. 'category_id' => 'required|integer',
  1919. 'cat_arr_id' => 'required',
  1920. 'title' => 'required',
  1921. 'business_name' => 'required',
  1922. 'content_person' => 'required',
  1923. 'telephone' => 'required',
  1924. 'city_id' => 'required',
  1925. 'city_arr_id' => 'required',
  1926. 'introduce' => 'required',
  1927. 'franchise_details' => 'required',
  1928. ],
  1929. [
  1930. 'website_id.required' => '网站id不能为空',
  1931. 'website_id.integer' => '网站id必须是整数',
  1932. 'category_id.required' => '栏目id不能为空',
  1933. 'category_id.integer' => '栏目id必须是整数',
  1934. 'cat_arr_id.required' => '栏目集合不能为空',
  1935. 'title.required' => '标题不能为空',
  1936. 'business_name.required' => '企业名称不能为空',
  1937. 'content_person.required' => '联系人不能为空',
  1938. 'telephone.required' => '联系电话不能为空',
  1939. 'city_id.required' => '城市id不能为空',
  1940. 'city_id.integer' => '城市id必须是整数',
  1941. 'city_arr_id.required' => '城市不能为空',
  1942. 'introduce.required' => '企业介绍不能为空',
  1943. 'franchise_details.required' => '加盟详情不能为空',
  1944. ]
  1945. );
  1946. if ($validator->fails()) {
  1947. $errorMessage = $validator->errors()->first();
  1948. return Result::error($errorMessage);
  1949. }
  1950. $requireData['user_id'] = Context::get('UserId');
  1951. $result = $this->newsServiceClient->addProject($requireData);
  1952. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1953. }
  1954. /**
  1955. * 更新项目
  1956. * @return array
  1957. */
  1958. public function upProject()
  1959. {
  1960. $requireData = $this->request->all();
  1961. $validator = $this->validationFactory->make(
  1962. $requireData,
  1963. [
  1964. 'id' => 'required|integer',
  1965. 'website_id' => 'required|integer',
  1966. 'category_id' => 'required|integer',
  1967. 'cat_arr_id' => 'required',
  1968. 'title' => 'required',
  1969. 'business_name' => 'required',
  1970. 'content_person' => 'required',
  1971. 'telephone' => 'required',
  1972. 'city_id' => 'required',
  1973. 'city_arr_id' => 'required',
  1974. 'introduce' => 'required',
  1975. 'franchise_details' => 'required',
  1976. ],
  1977. [
  1978. 'id.required' => 'id不能为空',
  1979. 'id.integer' => 'id必须是整数',
  1980. 'website_id.required' => '网站id不能为空',
  1981. 'website_id.integer' => '网站id必须是整数',
  1982. 'category_id.required' => '栏目id不能为空',
  1983. 'category_id.integer' => '栏目id必须是整数',
  1984. 'cat_arr_id.required' => '栏目集合不能为空',
  1985. 'title.required' => '标题不能为空',
  1986. 'business_name.required' => '企业名称不能为空',
  1987. 'content_person.required' => '联系人不能为空',
  1988. 'telephone.required' => '联系电话不能为空',
  1989. 'city_id.required' => '城市id不能为空',
  1990. 'city_id.integer' => '城市id必须是整数',
  1991. 'city_arr_id.required' => '城市不能为空',
  1992. 'introduce.required' => '企业介绍不能为空',
  1993. 'franchise_details.required' => '加盟详情不能为空',
  1994. ]
  1995. );
  1996. if ($validator->fails()) {
  1997. $errorMessage = $validator->errors()->first();
  1998. return Result::error($errorMessage);
  1999. }
  2000. $requireData['user_id'] = Context::get('UserId');
  2001. $result = $this->newsServiceClient->upProject($requireData);
  2002. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2003. }
  2004. /**
  2005. * 删除项目
  2006. * @return array
  2007. */
  2008. public function delProject()
  2009. {
  2010. $requireData = $this->request->all();
  2011. $validator = $this->validationFactory->make(
  2012. $requireData,
  2013. [
  2014. 'id' => 'required',
  2015. ],
  2016. [
  2017. 'id.required' => 'id不能为空',
  2018. ]
  2019. );
  2020. if ($validator->fails()) {
  2021. $errorMessage = $validator->errors()->first();
  2022. return Result::error($errorMessage);
  2023. }
  2024. $requireData['user_id'] = Context::get('UserId');
  2025. $result = $this->newsServiceClient->delProject($requireData);
  2026. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2027. }
  2028. /**
  2029. * 审核项目
  2030. * @return array
  2031. */
  2032. public function checkProject()
  2033. {
  2034. $requireData = $this->request->all();
  2035. $validator = $this->validationFactory->make(
  2036. $requireData,
  2037. [
  2038. 'id' => 'required|integer',
  2039. 'status' => 'required|integer',
  2040. ],
  2041. [
  2042. 'id.required' => 'id不能为空',
  2043. 'id.integer' => 'id必须是整数',
  2044. 'status.required' => '状态不能为空',
  2045. 'status.integer' => '状态必须是整数',
  2046. ]
  2047. );
  2048. if ($validator->fails()) {
  2049. $errorMessage = $validator->errors()->first();
  2050. return Result::error($errorMessage);
  2051. }
  2052. $requireData['user_id'] = Context::get('UserId');
  2053. $result = $this->newsServiceClient->checkProject($requireData);
  2054. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2055. }
  2056. /**
  2057. * 获取项目详情
  2058. * @return array
  2059. */
  2060. public function getProjectInfo()
  2061. {
  2062. $requireData = $this->request->all();
  2063. $validator = $this->validationFactory->make(
  2064. $requireData,
  2065. [
  2066. 'id' => 'required|integer',
  2067. ],
  2068. [
  2069. 'id.required' => 'id不能为空',
  2070. 'id.integer' => 'id必须是整数',
  2071. ]
  2072. );
  2073. if ($validator->fails()) {
  2074. $errorMessage = $validator->errors()->first();
  2075. return Result::error($errorMessage);
  2076. }
  2077. $result = $this->newsServiceClient->getProjectInfo($requireData);
  2078. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2079. }
  2080. /**
  2081. * 已读未读
  2082. * @return array
  2083. */
  2084. public function readNotice()
  2085. {
  2086. $requireData = $this->request->all();
  2087. $validator = $this->validationFactory->make(
  2088. $requireData,
  2089. [
  2090. 'id' => 'required|integer',
  2091. ],
  2092. [
  2093. 'id.required' => 'id不能为空',
  2094. 'id.integer' => 'id必须是整数',
  2095. ]
  2096. );
  2097. if ($validator->fails()) {
  2098. $errorMessage = $validator->errors()->first();
  2099. return Result::error($errorMessage);
  2100. }
  2101. $requireData['user_id'] = Context::get('UserId');
  2102. $result = $this->newsServiceClient->readNotice($requireData);
  2103. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2104. }
  2105. /**
  2106. * 已读未读
  2107. * @return array
  2108. */
  2109. public function readComplaint()
  2110. {
  2111. $requireData = $this->request->all();
  2112. $validator = $this->validationFactory->make(
  2113. $requireData,
  2114. [
  2115. 'id' => 'required|integer',
  2116. ],
  2117. [
  2118. 'id.required' => 'id不能为空',
  2119. 'id.integer' => 'id必须是整数',
  2120. ]
  2121. );
  2122. if ($validator->fails()) {
  2123. $errorMessage = $validator->errors()->first();
  2124. return Result::error($errorMessage);
  2125. }
  2126. $requireData['user_id'] = Context::get('UserId');
  2127. $result = $this->newsServiceClient->readComplaint($requireData);
  2128. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2129. }
  2130. public function readJobResume()
  2131. {
  2132. $requireData = $this->request->all();
  2133. $validator = $this->validationFactory->make(
  2134. $requireData,
  2135. [
  2136. 'id' => 'required|integer',
  2137. ],
  2138. [
  2139. 'id.required' => 'id不能为空',
  2140. 'id.integer' => 'id必须是整数',
  2141. ]
  2142. );
  2143. if ($validator->fails()) {
  2144. $errorMessage = $validator->errors()->first();
  2145. return Result::error($errorMessage);
  2146. }
  2147. $requireData['user_id'] = Context::get('UserId');
  2148. $result = $this->newsServiceClient->readJobResume($requireData);
  2149. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2150. }
  2151. public function readjobApply()
  2152. {
  2153. $requireData = $this->request->all();
  2154. $validator = $this->validationFactory->make(
  2155. $requireData,
  2156. [
  2157. 'id' => 'required|integer',
  2158. ],
  2159. [
  2160. 'id.required' => 'id不能为空',
  2161. 'id.integer' => 'id必须是整数',
  2162. ]
  2163. );
  2164. if ($validator->fails()) {
  2165. $errorMessage = $validator->errors()->first();
  2166. return Result::error($errorMessage);
  2167. }
  2168. $requireData['user_id'] = Context::get('UserId');
  2169. $result = $this->newsServiceClient->readjobApply($requireData);
  2170. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2171. }
  2172. public function noticeList()
  2173. {
  2174. $requireData = $this->request->all();
  2175. $validator = $this->validationFactory->make(
  2176. $requireData,
  2177. [
  2178. 'page' => 'required|integer',
  2179. 'page_size' => 'required|integer',
  2180. ],
  2181. [
  2182. 'page.required' => 'page不能为空',
  2183. 'page.integer' => 'page必须是整数',
  2184. 'page_size.required' => 'page_size不能为空',
  2185. 'page_size.integer' => 'page_size必须是整数',
  2186. ]
  2187. );
  2188. if ($validator->fails()) {
  2189. $errorMessage = $validator->errors()->first();
  2190. return Result::error($errorMessage);
  2191. }
  2192. $requireData['user_id'] = Context::get('UserId');
  2193. //type_id
  2194. $requireData['type_id'] = Context::get('TypeId');
  2195. $result = $this->newsServiceClient->noticeList($requireData);
  2196. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2197. }
  2198. public function complaintList()
  2199. {
  2200. $requireData = $this->request->all();
  2201. $validator = $this->validationFactory->make(
  2202. $requireData,
  2203. [
  2204. 'page' => 'required|integer',
  2205. 'page_size' => 'required|integer',
  2206. ],
  2207. [
  2208. 'page.required' => 'page不能为空',
  2209. 'page.integer' => 'page必须是整数',
  2210. 'page_size.required' => 'page_size不能为空',
  2211. 'page_size.integer' => 'page_size必须是整数',
  2212. ]
  2213. );
  2214. if ($validator->fails()) {
  2215. $errorMessage = $validator->errors()->first();
  2216. return Result::error($errorMessage);
  2217. }
  2218. $requireData['user_id'] = Context::get('UserId');
  2219. $requireData['type_id'] = Context::get('TypeId');
  2220. $result = $this->newsServiceClient->complaintList($requireData);
  2221. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2222. }
  2223. /**
  2224. * 行业分类-列表
  2225. * @return array
  2226. */
  2227. public function getJobIndustryList()
  2228. {
  2229. $requireData = $this->request->all();
  2230. $validator = $this->validationFactory->make(
  2231. $requireData,
  2232. [
  2233. 'page' => 'required|integer',
  2234. 'page_size' => 'required|integer',
  2235. ],
  2236. [
  2237. 'page.required' => 'page不能为空',
  2238. 'page.integer' => 'page必须是整数',
  2239. 'page_size.required' => 'page_size不能为空',
  2240. 'page_size.integer' => 'page_size必须是整数',
  2241. ]
  2242. );
  2243. if ($validator->fails()) {
  2244. $errorMessage = $validator->errors()->first();
  2245. return Result::error($errorMessage);
  2246. }
  2247. $requireData['user_id'] = Context::get('UserId');
  2248. $result = $this->newsServiceClient->getJobIndustryList($requireData);
  2249. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2250. }
  2251. /**
  2252. * 行业分类-添加
  2253. * @return array
  2254. */
  2255. public function addJobIndustry()
  2256. {
  2257. $requireData = $this->request->all();
  2258. $validator = $this->validationFactory->make(
  2259. $requireData,
  2260. [
  2261. 'hyname' => 'required',
  2262. ],
  2263. [
  2264. 'hyname.required' => '行业分类名称不能为空',
  2265. ]
  2266. );
  2267. if ($validator->fails()) {
  2268. $errorMessage = $validator->errors()->first();
  2269. return Result::error($errorMessage);
  2270. }
  2271. $requireData['user_id'] = Context::get('UserId');
  2272. $result = $this->newsServiceClient->addJobIndustry($requireData);
  2273. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2274. }
  2275. /**
  2276. * 行业分类-更新
  2277. * @return array
  2278. */
  2279. public function upJobIndustry()
  2280. {
  2281. $requireData = $this->request->all();
  2282. $validator = $this->validationFactory->make(
  2283. $requireData,
  2284. [
  2285. 'hyid' => 'required',
  2286. 'hyname' => 'required',
  2287. ],
  2288. [
  2289. 'hyid.required' => '行业分类id不能为空',
  2290. 'hyname.required' => '行业分类名称不能为空',
  2291. ]
  2292. );
  2293. if ($validator->fails()) {
  2294. $errorMessage = $validator->errors()->first();
  2295. return Result::error($errorMessage);
  2296. }
  2297. $requireData['user_id'] = Context::get('UserId');
  2298. $result = $this->newsServiceClient->upJobIndustry($requireData);
  2299. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2300. }
  2301. /**
  2302. * 行业分类-删除
  2303. * @return array
  2304. */
  2305. public function delJobIndustry()
  2306. {
  2307. $requireData = $this->request->all();
  2308. $validator = $this->validationFactory->make(
  2309. $requireData,
  2310. [
  2311. 'hyid' => 'required',
  2312. ],
  2313. [
  2314. 'hyid.required' => '行业分类id不能为空',
  2315. ]
  2316. );
  2317. if ($validator->fails()) {
  2318. $errorMessage = $validator->errors()->first();
  2319. return Result::error($errorMessage);
  2320. }
  2321. $requireData['user_id'] = Context::get('UserId');
  2322. $result = $this->newsServiceClient->delJobIndustry($requireData);
  2323. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2324. }
  2325. /**
  2326. * 职位分类-列表
  2327. * @return array
  2328. */
  2329. public function getJobPositionList()
  2330. {
  2331. $requireData = $this->request->all();
  2332. $validator = $this->validationFactory->make(
  2333. $requireData,
  2334. [
  2335. 'page' => 'required|integer',
  2336. 'page_size' => 'required|integer',
  2337. ],
  2338. [
  2339. 'page.required' => 'page不能为空',
  2340. 'page.integer' => 'page必须是整数',
  2341. 'page_size.required' => 'page_size不能为空',
  2342. 'page_size.integer' => 'page_size必须是整数',
  2343. ]
  2344. );
  2345. if ($validator->fails()) {
  2346. $errorMessage = $validator->errors()->first();
  2347. return Result::error($errorMessage);
  2348. }
  2349. $requireData['user_id'] = Context::get('UserId');
  2350. $result = $this->newsServiceClient->getJobPositionList($requireData);
  2351. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2352. }
  2353. /**
  2354. * 职位分类-添加
  2355. * @return array
  2356. */
  2357. public function addJobPosition()
  2358. {
  2359. $requireData = $this->request->all();
  2360. $validator = $this->validationFactory->make(
  2361. $requireData,
  2362. [
  2363. 'zwname' => 'required',
  2364. ],
  2365. [
  2366. 'zwname.required' => '职位分类名称不能为空',
  2367. ]
  2368. );
  2369. if ($validator->fails()) {
  2370. $errorMessage = $validator->errors()->first();
  2371. return Result::error($errorMessage);
  2372. }
  2373. $requireData['zwpid'] = empty($requireData['zwpid']) ? 0 : $requireData['zwpid'] ?? 0;
  2374. $requireData['user_id'] = Context::get('UserId');
  2375. $result = $this->newsServiceClient->addJobPosition($requireData);
  2376. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2377. }
  2378. /**
  2379. * 职位分类-更新
  2380. * @return array
  2381. */
  2382. public function upJobPosition()
  2383. {
  2384. $requireData = $this->request->all();
  2385. $validator = $this->validationFactory->make(
  2386. $requireData,
  2387. [
  2388. 'zwid' => 'required',
  2389. 'zwname' => 'required',
  2390. ],
  2391. [
  2392. 'zwid.required' => '职位分类id不能为空',
  2393. 'zwname.required' => '职位分类名称不能为空',
  2394. ]
  2395. );
  2396. if ($validator->fails()) {
  2397. $errorMessage = $validator->errors()->first();
  2398. return Result::error($errorMessage);
  2399. }
  2400. $requireData['zwpid'] = empty($requireData['zwpid']) ? 0 : $requireData['zwpid'] ?? 0;
  2401. $requireData['user_id'] = Context::get('UserId');
  2402. $result = $this->newsServiceClient->upJobPosition($requireData);
  2403. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2404. }
  2405. /**
  2406. * 职位分类-删除
  2407. * @return array
  2408. */
  2409. public function delJobPosition()
  2410. {
  2411. $requireData = $this->request->all();
  2412. $validator = $this->validationFactory->make(
  2413. $requireData,
  2414. [
  2415. 'zwid' => 'required',
  2416. ],
  2417. [
  2418. 'zwid.required' => '职位分类id不能为空',
  2419. ]
  2420. );
  2421. if ($validator->fails()) {
  2422. $errorMessage = $validator->errors()->first();
  2423. return Result::error($errorMessage);
  2424. }
  2425. $requireData['user_id'] = Context::get('UserId');
  2426. $result = $this->newsServiceClient->delJobPosition($requireData);
  2427. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2428. }
  2429. /**
  2430. * 政讯---网民留言-添加
  2431. * @return array
  2432. */
  2433. public function addMessage()
  2434. {
  2435. $requireData = $this->request->all();
  2436. $validator = $this->validationFactory->make(
  2437. $requireData,
  2438. [
  2439. 'column_id' => 'required|integer',
  2440. 'title' => 'required',
  2441. 'content' => 'required',
  2442. 'name' => 'required',
  2443. ],
  2444. [
  2445. 'column_id.required' => '网站属性id不能为空',
  2446. 'column_id.integer' => '网站属性id必须为整数',
  2447. 'title.required' => '留言标题不能为空',
  2448. 'content.required' => '留言内容不能为空',
  2449. 'name.required' => '姓名不能为空',
  2450. ]
  2451. );
  2452. if ($validator->fails()) {
  2453. $errorMessage = $validator->errors()->first();
  2454. return Result::error($errorMessage);
  2455. }
  2456. $requireData['user_id'] = Context::get('UserId');
  2457. $result = $this->newsServiceClient->addMessage($requireData);
  2458. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2459. }
  2460. /**
  2461. * 政讯---网民留言-更新
  2462. * @return array
  2463. */
  2464. public function upMessage()
  2465. {
  2466. $requireData = $this->request->all();
  2467. $validator = $this->validationFactory->make(
  2468. $requireData,
  2469. [
  2470. 'id' => 'required|integer',
  2471. 'column_id' => 'required|integer',
  2472. 'title' => 'required',
  2473. 'content' => 'required',
  2474. 'name' => 'required',
  2475. ],
  2476. [
  2477. 'id.required' => '留言id不能为空',
  2478. 'id.integer' => '留言id必须为整数',
  2479. 'column_id.required' => '网站属性id不能为空',
  2480. 'column_id.integer' => '网站属性id必须为整数',
  2481. 'title.required' => '留言标题不能为空',
  2482. 'content.required' => '留言内容不能为空',
  2483. 'name.required' => '姓名不能为空',
  2484. ]
  2485. );
  2486. if ($validator->fails()) {
  2487. $errorMessage = $validator->errors()->first();
  2488. return Result::error($errorMessage);
  2489. }
  2490. $requireData['user_id'] = Context::get('UserId');
  2491. $result = $this->newsServiceClient->upMessage($requireData);
  2492. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2493. }
  2494. /**
  2495. * 政讯---网民留言-删除
  2496. * @return array
  2497. */
  2498. public function delMessage()
  2499. {
  2500. $requireData = $this->request->all();
  2501. $validator = $this->validationFactory->make(
  2502. $requireData,
  2503. [
  2504. 'id' => 'required|integer',
  2505. ],
  2506. [
  2507. 'id.required' => '留言id不能为空',
  2508. 'id.integer' => '留言id必须为整数',
  2509. ]
  2510. );
  2511. if ($validator->fails()) {
  2512. $errorMessage = $validator->errors()->first();
  2513. return Result::error($errorMessage);
  2514. }
  2515. $requireData['user_id'] = Context::get('UserId');
  2516. $result = $this->newsServiceClient->delMessage($requireData);
  2517. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2518. }
  2519. /**
  2520. * 政讯---网民留言-更新状态
  2521. * @return array
  2522. */
  2523. public function upMessageStatus()
  2524. {
  2525. $requireData = $this->request->all();
  2526. $validator = $this->validationFactory->make(
  2527. $requireData,
  2528. [
  2529. 'id' => 'required|integer',
  2530. 'status' => 'required|integer',
  2531. ],
  2532. [
  2533. 'id.required' => '留言id不能为空',
  2534. 'id.integer' => '留言id必须为整数',
  2535. 'status.required' => '状态不能为空',
  2536. 'status.integer' => '状态必须为整数',
  2537. ]
  2538. );
  2539. if ($validator->fails()) {
  2540. $errorMessage = $validator->errors()->first();
  2541. return Result::error($errorMessage);
  2542. }
  2543. $requireData['user_id'] = Context::get('UserId');
  2544. $result = $this->newsServiceClient->upMessageStatus($requireData);
  2545. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2546. }
  2547. /**
  2548. * 政讯---网民留言-获取详情
  2549. * @return array
  2550. */
  2551. public function getMessageInfo()
  2552. {
  2553. $requireData = $this->request->all();
  2554. $validator = $this->validationFactory->make(
  2555. $requireData,
  2556. [
  2557. 'id' => 'required|integer',
  2558. ],
  2559. [
  2560. 'id.required' => '留言id不能为空',
  2561. 'id.integer' => '留言id必须为整数',
  2562. ]
  2563. );
  2564. if ($validator->fails()) {
  2565. $errorMessage = $validator->errors()->first();
  2566. return Result::error($errorMessage);
  2567. }
  2568. $requireData['user_id'] = Context::get('UserId');
  2569. $result = $this->newsServiceClient->getMessageInfo($requireData);
  2570. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2571. }
  2572. /**
  2573. * 政讯---网民留言-获取列表
  2574. * @return array
  2575. */
  2576. public function getMessageList()
  2577. {
  2578. $requireData = $this->request->all();
  2579. $validator = $this->validationFactory->make(
  2580. $requireData,
  2581. [
  2582. 'is_master' => 'required|integer',
  2583. 'page' => 'required|integer',
  2584. 'page_size' => 'required|integer',
  2585. ],
  2586. [
  2587. 'is_master.required' => '是否审核列表不能为空',
  2588. 'is_master.integer' => '是否审核列表必须为整数',
  2589. 'page.required' => '当前页不能为空',
  2590. 'page.integer' => '当前页必须为整数',
  2591. 'page_size.required' => '每页数量不能为空',
  2592. 'page_size.integer' => '每页数量必须为整数',
  2593. ]
  2594. );
  2595. if ($validator->fails()) {
  2596. $errorMessage = $validator->errors()->first();
  2597. return Result::error($errorMessage);
  2598. }
  2599. $requireData['user_id'] = Context::get('UserId');
  2600. $result = $this->newsServiceClient->getMessageList($requireData);
  2601. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2602. }
  2603. /**
  2604. * 政讯---网民留言-检查是否可编辑
  2605. * @return array
  2606. */
  2607. public function checkMessageEdit()
  2608. {
  2609. $requireData = $this->request->all();
  2610. $validator = $this->validationFactory->make(
  2611. $requireData,
  2612. [
  2613. 'website_id' => 'required|integer',
  2614. 'id' => 'required|integer',
  2615. ],
  2616. [
  2617. 'website_id.required' => '网站id不能为空',
  2618. 'website_id.integer' => '网站id必须为整数',
  2619. 'id.required' => '留言id不能为空',
  2620. 'id.integer' => '留言id必须为整数',
  2621. ]
  2622. );
  2623. if ($validator->fails()) {
  2624. $errorMessage = $validator->errors()->first();
  2625. return Result::error($errorMessage);
  2626. }
  2627. $requireData['user_id'] = Context::get('UserId');
  2628. $result = $this->newsServiceClient->checkMessageEdit($requireData);
  2629. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2630. }
  2631. /**
  2632. * 政讯---调研选题-获取所有调研员
  2633. * @return array
  2634. */
  2635. public function getAllResearcher()
  2636. {
  2637. $requireData = $this->request->all();
  2638. $requireData['user_id'] = Context::get('UserId');
  2639. $result = $this->newsServiceClient->getAllResearcher($requireData);
  2640. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2641. }
  2642. /**
  2643. * 政讯---调研选题-添加调研选题
  2644. * @return array
  2645. */
  2646. public function addResearchTopic()
  2647. {
  2648. $requireData = $this->request->all();
  2649. $validator = $this->validationFactory->make(
  2650. $requireData,
  2651. [
  2652. 'title' => 'required',
  2653. 'column_id' => 'required|integer',
  2654. 'content' => 'required',
  2655. ],
  2656. [
  2657. 'title.required' => '标题不能为空',
  2658. 'column_id.required' => '网站属性id不能为空',
  2659. 'column_id.integer' => '网站属性id必须为整数',
  2660. 'content.required' => '内容不能为空',
  2661. ]
  2662. );
  2663. if ($validator->fails()) {
  2664. $errorMessage = $validator->errors()->first();
  2665. return Result::error($errorMessage);
  2666. }
  2667. $requireData['user_id'] = Context::get('UserId');
  2668. $result = $this->newsServiceClient->addResearchTopic($requireData);
  2669. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2670. }
  2671. /**
  2672. * 政讯---调研选题-编辑
  2673. * @return array
  2674. */
  2675. public function upResearchTopic()
  2676. {
  2677. $requireData = $this->request->all();
  2678. $validator = $this->validationFactory->make(
  2679. $requireData,
  2680. [
  2681. 'id' => 'required|integer',
  2682. 'title' => 'required',
  2683. 'column_id' => 'required|integer',
  2684. 'content' => 'required',
  2685. ],
  2686. [
  2687. 'id.required' => '调研选题id不能为空',
  2688. 'id.integer' => '调研选题id必须为整数',
  2689. 'title.required' => '标题不能为空',
  2690. 'column_id.required' => '网站属性id不能为空',
  2691. 'column_id.integer' => '网站属性id必须为整数',
  2692. 'content.required' => '内容不能为空',
  2693. ]
  2694. );
  2695. if ($validator->fails()) {
  2696. $errorMessage = $validator->errors()->first();
  2697. return Result::error($errorMessage);
  2698. }
  2699. $requireData['user_id'] = Context::get('UserId');
  2700. $result = $this->newsServiceClient->upResearchTopic($requireData);
  2701. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2702. }
  2703. /**
  2704. * 政讯---调研选题-删除
  2705. * @return array
  2706. */
  2707. public function delResearchTopic()
  2708. {
  2709. $requireData = $this->request->all();
  2710. $validator = $this->validationFactory->make(
  2711. $requireData,
  2712. [
  2713. 'id' => 'required|integer',
  2714. ],
  2715. [
  2716. 'id.required' => '调研选题id不能为空',
  2717. 'id.integer' => '调研选题id必须为整数',
  2718. ]
  2719. );
  2720. if ($validator->fails()) {
  2721. $errorMessage = $validator->errors()->first();
  2722. return Result::error($errorMessage);
  2723. }
  2724. $requireData['user_id'] = Context::get('UserId');
  2725. $result = $this->newsServiceClient->delResearchTopic($requireData);
  2726. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2727. }
  2728. /**
  2729. * 政讯---调研选题-获取列表
  2730. * @return array
  2731. */
  2732. public function getResearchTopicList()
  2733. {
  2734. $requireData = $this->request->all();
  2735. $validator = $this->validationFactory->make(
  2736. $requireData,
  2737. [
  2738. 'is_master' => 'required|integer',
  2739. 'page' => 'required|integer',
  2740. 'page_size' => 'required|integer',
  2741. ],
  2742. [
  2743. 'is_master.required' => '是否主选题不能为空',
  2744. 'is_master.integer' => '是否主选题必须为整数',
  2745. 'page.required' => '当前页不能为空',
  2746. 'page.integer' => '当前页必须为整数',
  2747. 'page_size.required' => '每页数量不能为空',
  2748. 'page_size.integer' => '每页数量必须为整数',
  2749. ]
  2750. );
  2751. if ($validator->fails()) {
  2752. $errorMessage = $validator->errors()->first();
  2753. return Result::error($errorMessage);
  2754. }
  2755. $requireData['user_id'] = Context::get('UserId');
  2756. $requireData['website_id'] = Context::get('SiteId');
  2757. $result = $this->newsServiceClient->getResearchTopicList($requireData);
  2758. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2759. }
  2760. /**
  2761. * 政讯---调研选题-修改状态
  2762. * @return array
  2763. */
  2764. public function checkResearchTopic()
  2765. {
  2766. $requireData = $this->request->all();
  2767. $validator = $this->validationFactory->make(
  2768. $requireData,
  2769. [
  2770. 'id' => 'required|integer',
  2771. 'status' => 'required|integer',
  2772. ],
  2773. [
  2774. 'id.required' => '调研选题id不能为空',
  2775. 'id.integer' => '调研选题id必须为整数',
  2776. 'status.required' => '状态不能为空',
  2777. 'status.integer' => '状态必须为整数',
  2778. ]
  2779. );
  2780. if ($validator->fails()) {
  2781. $errorMessage = $validator->errors()->first();
  2782. return Result::error($errorMessage);
  2783. }
  2784. $requireData['user_id'] = Context::get('UserId');
  2785. $result = $this->newsServiceClient->checkResearchTopic($requireData);
  2786. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2787. }
  2788. /**
  2789. * 政讯---调研选题-获取详情
  2790. * @return array
  2791. */
  2792. public function getResearchTopicInfo()
  2793. {
  2794. $requireData = $this->request->all();
  2795. $validator = $this->validationFactory->make(
  2796. $requireData,
  2797. [
  2798. 'id' => 'required|integer',
  2799. ],
  2800. [
  2801. 'id.required' => '调研选题id不能为空',
  2802. 'id.integer' => '调研选题id必须为整数',
  2803. ]
  2804. );
  2805. if ($validator->fails()) {
  2806. $errorMessage = $validator->errors()->first();
  2807. return Result::error($errorMessage);
  2808. }
  2809. $requireData['user_id'] = Context::get('UserId');
  2810. $result = $this->newsServiceClient->getResearchTopicInfo($requireData);
  2811. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2812. }
  2813. /**
  2814. * 政讯--官网导航--添加
  2815. * @return array
  2816. */
  2817. public function addWebCateinfo()
  2818. {
  2819. $requireData = $this->request->all();
  2820. $validator = $this->validationFactory->make(
  2821. $requireData,
  2822. [
  2823. 'title' => 'required|string',
  2824. 'type_id' => 'required|integer',
  2825. 'content' => 'required|string',
  2826. ],
  2827. [
  2828. 'title.required' => '标题不能为空',
  2829. 'title.string' => '标题必须为字符串',
  2830. 'type_id.required' => '类型id不能为空',
  2831. 'type_id.integer' => '类型id必须为整数',
  2832. 'content.required' => '内容不能为空',
  2833. 'content.string' => '内容必须为字符串',
  2834. ]
  2835. );
  2836. if ($validator->fails()) {
  2837. $errorMessage = $validator->errors()->first();
  2838. return Result::error($errorMessage);
  2839. }
  2840. $requireData['user_id'] = Context::get('UserId');
  2841. $result = $this->newsServiceClient->addWebCateinfo($requireData);
  2842. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2843. }
  2844. /**
  2845. * 政讯--官网导航--更新
  2846. * @return array
  2847. */
  2848. public function upWebCateinfo()
  2849. {
  2850. $requireData = $this->request->all();
  2851. $validator = $this->validationFactory->make(
  2852. $requireData,
  2853. [
  2854. 'id' => 'required|integer',
  2855. 'title' => 'required|string',
  2856. 'type_id' => 'required|integer',
  2857. 'content' => 'required|string',
  2858. ],
  2859. [
  2860. 'id.required' => 'id不能为空',
  2861. 'id.integer' => 'id必须为整数',
  2862. 'title.required' => '标题不能为空',
  2863. 'title.string' => '标题必须为字符串',
  2864. 'type_id.required' => '类型id不能为空',
  2865. 'type_id.integer' => '类型id必须为整数',
  2866. 'content.required' => '内容不能为空',
  2867. 'content.string' => '内容必须为字符串',
  2868. ]
  2869. );
  2870. if ($validator->fails()) {
  2871. $errorMessage = $validator->errors()->first();
  2872. return Result::error($errorMessage);
  2873. }
  2874. $requireData['user_id'] = Context::get('UserId');
  2875. $result = $this->newsServiceClient->upWebCateinfo($requireData);
  2876. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2877. }
  2878. /**
  2879. * 政讯--官网导航--获取列表
  2880. * @return array
  2881. */
  2882. public function getWebCateinfoList()
  2883. {
  2884. $requireData = $this->request->all();
  2885. $validator = $this->validationFactory->make(
  2886. $requireData,
  2887. [
  2888. 'page' => 'required|integer',
  2889. 'page_size' => 'required|integer',
  2890. 'is_master' => 'required|integer',
  2891. ],
  2892. [
  2893. 'page.required' => '页码不能为空',
  2894. 'page.integer' => '页码必须为整数',
  2895. 'page_size.required' => '每页数量不能为空',
  2896. 'page_size.integer' => '每页数量必须为整数',
  2897. 'is_master.required' => '状态不能为空',
  2898. 'is_master.integer' => '状态必须为整数',
  2899. ]
  2900. );
  2901. if ($validator->fails()) {
  2902. $errorMessage = $validator->errors()->first();
  2903. return Result::error($errorMessage);
  2904. }
  2905. $requireData['user_id'] = Context::get('UserId');
  2906. $result = $this->newsServiceClient->getWebCateinfoList($requireData);
  2907. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2908. }
  2909. /**
  2910. * 政讯--官网导航--删除
  2911. * @return array
  2912. */
  2913. public function delWebCateinfo()
  2914. {
  2915. $requireData = $this->request->all();
  2916. $validator = $this->validationFactory->make(
  2917. $requireData,
  2918. [
  2919. 'id' => 'required|integer',
  2920. ],
  2921. [
  2922. 'id.required' => 'id不能为空',
  2923. 'id.integer' => 'id必须为整数',
  2924. ]
  2925. );
  2926. if ($validator->fails()) {
  2927. $errorMessage = $validator->errors()->first();
  2928. return Result::error($errorMessage);
  2929. }
  2930. $requireData['user_id'] = Context::get('UserId');
  2931. $result = $this->newsServiceClient->delWebCateinfo($requireData);
  2932. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2933. }
  2934. /**
  2935. * 政讯--官网导航--详情
  2936. * @return array
  2937. */
  2938. public function getWebCateinfoDetail()
  2939. {
  2940. $requireData = $this->request->all();
  2941. $validator = $this->validationFactory->make(
  2942. $requireData,
  2943. [
  2944. 'id' => 'required|integer',
  2945. ],
  2946. [
  2947. 'id.required' => 'id不能为空',
  2948. 'id.integer' => 'id必须为整数',
  2949. ]
  2950. );
  2951. if ($validator->fails()) {
  2952. $errorMessage = $validator->errors()->first();
  2953. return Result::error($errorMessage);
  2954. }
  2955. $requireData['user_id'] = Context::get('UserId');
  2956. $result = $this->newsServiceClient->getWebCateinfoDetail($requireData);
  2957. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2958. }
  2959. /**
  2960. * 政讯--官网导航--审核
  2961. * @return array
  2962. */
  2963. public function checkWebCateinfo()
  2964. {
  2965. $requireData = $this->request->all();
  2966. $validator = $this->validationFactory->make(
  2967. $requireData,
  2968. [
  2969. 'id' => 'required|integer',
  2970. 'status' => 'required|integer',
  2971. ],
  2972. [
  2973. 'id.required' => 'id不能为空',
  2974. 'id.integer' => 'id必须为整数',
  2975. 'status.required' => '状态不能为空',
  2976. 'status.integer' => '状态必须为整数',
  2977. ]
  2978. );
  2979. if ($validator->fails()) {
  2980. $errorMessage = $validator->errors()->first();
  2981. return Result::error($errorMessage);
  2982. }
  2983. $requireData['user_id'] = Context::get('UserId');
  2984. $result = $this->newsServiceClient->checkWebCateinfo($requireData);
  2985. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  2986. }
  2987. /**
  2988. * 政讯--本网招聘--获取推荐招聘
  2989. * @return array
  2990. */
  2991. public function getAdviceSinglePages()
  2992. {
  2993. $requireData = $this->request->all();
  2994. $validator = $this->validationFactory->make(
  2995. $requireData,
  2996. [
  2997. 'page' => 'required|integer',
  2998. 'page_size' => 'required|integer',
  2999. ],
  3000. [
  3001. 'page.required' => '页码不能为空',
  3002. 'page.integer' => '页码必须为整数',
  3003. 'page_size.required' => '每页数量不能为空',
  3004. 'page_size.integer' => '每页数量必须为整数',
  3005. ]
  3006. );
  3007. if ($validator->fails()) {
  3008. $errorMessage = $validator->errors()->first();
  3009. return Result::error($errorMessage);
  3010. }
  3011. $requireData['user_id'] = Context::get('UserId');
  3012. $requireData['web_id'] = Context::get('SiteId');
  3013. $result = $this->newsServiceClient->getAdviceSinglePages($requireData);
  3014. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  3015. }
  3016. /**
  3017. * 政讯--本网招聘--新增
  3018. * @return array
  3019. */
  3020. public function addSinglePage()
  3021. {
  3022. $requireData = $this->request->all();
  3023. $validator = $this->validationFactory->make(
  3024. $requireData,
  3025. [
  3026. 'title' => 'required|string',
  3027. 'cat_arr_id' => 'required',
  3028. 'islink' => 'required|integer',
  3029. ],
  3030. [
  3031. 'title.required' => '标题不能为空',
  3032. 'title.string' => '标题必须为字符串',
  3033. 'cat_arr_id.required' => '栏目不能为空',
  3034. 'islink.required' => '是否外链不能为空',
  3035. 'islink.integer' => '是否外链必须为整数',
  3036. ]
  3037. );
  3038. if ($validator->fails()) {
  3039. $errorMessage = $validator->errors()->first();
  3040. return Result::error($errorMessage);
  3041. }
  3042. $requireData['user_id'] = Context::get('UserId');
  3043. $requireData['website_id'] = $requireData['website_id'] ?? Context::get('SiteId');
  3044. $result = $this->newsServiceClient->addSinglePage($requireData);
  3045. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  3046. }
  3047. /**
  3048. * 政讯--本网招聘--更新
  3049. * @return array
  3050. */
  3051. public function upSinglePage()
  3052. {
  3053. $requireData = $this->request->all();
  3054. $validator = $this->validationFactory->make(
  3055. $requireData,
  3056. [
  3057. 'id' => 'required|integer',
  3058. 'title' => 'required|string',
  3059. 'cat_arr_id' => 'required',
  3060. 'islink' => 'required|integer',
  3061. ],
  3062. [
  3063. 'id.required' => 'id不能为空',
  3064. 'id.integer' => 'id必须为整数',
  3065. 'title.required' => '标题不能为空',
  3066. 'title.string' => '标题必须为字符串',
  3067. 'cat_arr_id.required' => '栏目不能为空',
  3068. 'islink.required' => '是否外链不能为空',
  3069. 'islink.integer' => '是否外链必须为整数',
  3070. ]
  3071. );
  3072. if ($validator->fails()) {
  3073. $errorMessage = $validator->errors()->first();
  3074. return Result::error($errorMessage);
  3075. }
  3076. $requireData['user_id'] = Context::get('UserId');
  3077. $requireData['website_id'] = $requireData['website_id'] ?? Context::get('SiteId');
  3078. $result = $this->newsServiceClient->upSinglePage($requireData);
  3079. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  3080. }
  3081. /**
  3082. * 政讯--本网招聘--删除
  3083. * @return array
  3084. */
  3085. public function delSinglePage()
  3086. {
  3087. $requireData = $this->request->all();
  3088. $validator = $this->validationFactory->make(
  3089. $requireData,
  3090. [
  3091. 'id' => 'required|integer',
  3092. ],
  3093. [
  3094. 'id.required' => 'id不能为空',
  3095. 'id.integer' => 'id必须为整数',
  3096. ]
  3097. );
  3098. if ($validator->fails()) {
  3099. $errorMessage = $validator->errors()->first();
  3100. return Result::error($errorMessage);
  3101. }
  3102. $requireData['user_id'] = Context::get('UserId');
  3103. $result = $this->newsServiceClient->delSinglePage($requireData);
  3104. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  3105. }
  3106. /**
  3107. * 政讯--本网招聘--获取单页详情
  3108. * @return array
  3109. */
  3110. public function checkSinglePage()
  3111. {
  3112. $requireData = $this->request->all();
  3113. $validator = $this->validationFactory->make(
  3114. $requireData,
  3115. [
  3116. 'id' => 'required|integer',
  3117. ],
  3118. [
  3119. 'id.required' => 'id不能为空',
  3120. 'id.integer' => 'id必须为整数',
  3121. ]
  3122. );
  3123. if ($validator->fails()) {
  3124. $errorMessage = $validator->errors()->first();
  3125. return Result::error($errorMessage);
  3126. }
  3127. $requireData['user_id'] = Context::get('UserId');
  3128. $requireData['website_id'] = $requireData['website_id'] ?? Context::get('SiteId');
  3129. $result = $this->newsServiceClient->checkSinglePage($requireData);
  3130. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  3131. }
  3132. /**
  3133. * 政讯--本网招聘--获取单页列表
  3134. * @return array
  3135. */
  3136. public function getSinglePageList()
  3137. {
  3138. $requireData = $this->request->all();
  3139. $validator = $this->validationFactory->make(
  3140. $requireData,
  3141. [
  3142. 'page' => 'required|integer',
  3143. 'page_size' => 'required|integer',
  3144. 'is_master' => 'required|integer',
  3145. ],
  3146. [
  3147. 'page.required' => '页码不能为空',
  3148. 'page.integer' => '页码必须为整数',
  3149. 'page_size.required' => '每页数量不能为空',
  3150. 'page_size.integer' => '每页数量必须为整数',
  3151. 'is_master.required' => '状态不能为空',
  3152. 'is_master.integer' => '状态必须为整数',
  3153. ]
  3154. );
  3155. if ($validator->fails()) {
  3156. $errorMessage = $validator->errors()->first();
  3157. return Result::error($errorMessage);
  3158. }
  3159. $requireData['user_id'] = Context::get('UserId');
  3160. $requireData['website_id'] = Context::get('SiteId') ?? 0;
  3161. $result = $this->newsServiceClient->getSinglePageList($requireData);
  3162. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  3163. }
  3164. /**
  3165. * 政讯--本网招聘--获取单页详情
  3166. * @return array
  3167. */
  3168. public function getSinglePageInfo()
  3169. {
  3170. $requireData = $this->request->all();
  3171. $validator = $this->validationFactory->make(
  3172. $requireData,
  3173. [
  3174. 'id' => 'required|integer',
  3175. ],
  3176. [
  3177. 'id.required' => 'id不能为空',
  3178. 'id.integer' => 'id必须为整数',
  3179. ]
  3180. );
  3181. if ($validator->fails()) {
  3182. $errorMessage = $validator->errors()->first();
  3183. return Result::error($errorMessage);
  3184. }
  3185. $requireData['user_id'] = Context::get('UserId');
  3186. $result = $this->newsServiceClient->getSinglePageInfo($requireData);
  3187. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  3188. }
  3189. }