PublicController.php 76 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133
  1. <?php
  2. declare (strict_types = 1);
  3. namespace App\Controller;
  4. use App\JsonRpc\PublicRpcServiceInterface;
  5. use App\Model\Couplet;
  6. use App\Model\HistoryToday;
  7. use App\Model\Riddle;
  8. use App\Tools\CommonService;
  9. use App\Tools\PublicData;
  10. use App\Tools\Result;
  11. use function Hyperf\Support\env;
  12. use Hyperf\Context\Context;
  13. use Hyperf\Di\Annotation\Inject;
  14. use Hyperf\HttpServer\Contract\RequestInterface;
  15. use Hyperf\HttpServer\Contract\ResponseInterface;
  16. use Hyperf\Validation\Contract\ValidatorFactoryInterface;
  17. use ZipArchive;
  18. use App\JsonRpc\NewsServiceInterface;
  19. use App\Model\StyleCode;
  20. /**
  21. * Class PublicController
  22. * @package App\Controller
  23. */
  24. //#[AutoController]
  25. class PublicController extends AbstractController
  26. {
  27. #[Inject]
  28. protected ValidatorFactoryInterface $validationFactory;
  29. /**
  30. * @var PublicRpcServiceInterface
  31. */
  32. #[Inject]
  33. private $publicServiceClient;
  34. /**
  35. * @var NewsServiceInterface
  36. */
  37. #[Inject]
  38. private $newsServiceClient;
  39. /**
  40. * 地区
  41. * @return array
  42. */
  43. public function getDistrictList()
  44. {
  45. $pid = $this->request->input("pid", 0);
  46. $data = [
  47. 'pid' => $pid,
  48. ];
  49. $result = $this->publicServiceClient->getDistrictList($data);
  50. return $result ? Result::success($result['data']) : Result::error($result['message']);
  51. }
  52. /**
  53. * 获取用户等级
  54. * @return array
  55. */
  56. public function getUserLevelList()
  57. {
  58. $requireData = $this->request->all();
  59. $result = $this->publicServiceClient->getUserLevelList($requireData);
  60. return $result ? Result::success($result['data']) : Result::error($result['message']);
  61. }
  62. /**
  63. * 上传图片
  64. * @return array
  65. */
  66. public function uploadFile()
  67. {
  68. $urlN = new CommonService();
  69. $file = $this->request->file('file');
  70. try {
  71. if ($file == null) {
  72. return Result::error("未找到上传文件");
  73. }
  74. $data = CommonService::uploadFile($file, ['txt','png', 'jpg', 'png', 'jpeg', 'gif', 'xls', 'xlsx', 'pdf', 'xls', 'xlsx', 'doc', 'docx', 'ppt', 'zip', 'pptx', 'mp4', 'flv'], 'image');
  75. var_dump($data);
  76. if (isset($data['code'])&&$data['code'] != 200) {
  77. return Result::error($data['message']);
  78. }
  79. $data['imgUrl'] = $urlN->imgUrl($data['src']);
  80. $fileName = $file->getClientFilename();
  81. $data['oldFileName'] = $fileName;
  82. return Result::success($data, '上传成功');
  83. } catch (\Exception $e) {
  84. return Result::error($e->getMessage());
  85. }
  86. }
  87. /**
  88. * 添加用户等级
  89. * @return array
  90. */
  91. public function addUserLevel()
  92. {
  93. $requireData = $this->request->all();
  94. $validator = $this->validationFactory->make(
  95. $requireData,
  96. [
  97. 'name' => 'required',
  98. ],
  99. [
  100. 'name.required' => '等级名不能为空',
  101. ]
  102. );
  103. if ($validator->fails()) {
  104. $errorMessage = $validator->errors()->first();
  105. return Result::error($errorMessage);
  106. }
  107. $result = $this->publicServiceClient->addUserLevel($requireData);
  108. return $result ? Result::success($result['data']) : Result::error($result['message']);
  109. }
  110. /**
  111. * 删除用户等级
  112. * @return array
  113. */
  114. public function delUserLevel()
  115. {
  116. $requireData = $this->request->all();
  117. $validator = $this->validationFactory->make(
  118. $requireData,
  119. [
  120. 'id' => 'required',
  121. ],
  122. [
  123. 'id.required' => 'ID不能为空',
  124. ]
  125. );
  126. if ($validator->fails()) {
  127. $errorMessage = $validator->errors()->first();
  128. return Result::error($errorMessage);
  129. }
  130. $result = $this->publicServiceClient->delUserLevel($requireData);
  131. return $result ? Result::success($result['data']) : Result::error($result['message']);
  132. }
  133. /**
  134. * 更新用户等级
  135. * @return array
  136. */
  137. public function updateUserLevel()
  138. {
  139. $requireData = $this->request->all();
  140. $validator = $this->validationFactory->make(
  141. $requireData,
  142. [
  143. 'name' => 'required',
  144. 'id' => 'required',
  145. ],
  146. [
  147. 'id.required' => 'ID不能为空',
  148. 'name.required' => '名称不能为空',
  149. ]
  150. );
  151. if ($validator->fails()) {
  152. $errorMessage = $validator->errors()->first();
  153. return Result::error($errorMessage);
  154. }
  155. $result = $this->publicServiceClient->updateUserLevel($requireData);
  156. return $result ? Result::success($result['data']) : Result::error($result['message']);
  157. }
  158. /**
  159. * 城市列表
  160. * @return array
  161. */
  162. public function getCityList()
  163. {
  164. $requireData = $this->request->all();
  165. // var_dump($requireData);
  166. $result = $this->publicServiceClient->getDistrictList($requireData);
  167. return $result ? Result::success($result['data']) : Result::error($result['message']);
  168. }
  169. /**
  170. * 投诉举报
  171. * @return void
  172. */
  173. public function addComplaint()
  174. {
  175. $requireData = $this->request->all();
  176. $validator = $this->validationFactory->make(
  177. $requireData,
  178. [
  179. 'title' => 'required',
  180. 'nature' => 'required',
  181. 'nature_level0' => 'required',
  182. 'name' => 'required',
  183. 'mobile' => 'required',
  184. 'describe' => 'required',
  185. ],
  186. [
  187. 'title.required' => '标题不能为空',
  188. 'nature.required' => '类型不能为空',
  189. 'nature_level0.required' => '类型进度不能为空',
  190. 'name.required' => '姓名不能为空',
  191. 'mobile.required' => '手机号码不能为空',
  192. 'describe.required' => '详细说明不能为空',
  193. ]
  194. );
  195. if ($validator->fails()) {
  196. $errorMessage = $validator->errors()->first();
  197. return Result::error($errorMessage);
  198. }
  199. $requireData = $this->request->all();
  200. $requireData['user_id'] = Context::get("UserId");
  201. if ($requireData['id']) {
  202. $result = $this->publicServiceClient->userUpLetterOfComplaint($requireData);
  203. } else {
  204. $result = $this->publicServiceClient->addLetterOfComplaint($requireData);
  205. }
  206. return $result ? Result::success($result['data']) : Result::error($result['message']);
  207. }
  208. /**
  209. * 更新投诉举报信息
  210. * @return array
  211. */
  212. public function upComplaint()
  213. {
  214. $requireData = $this->request->all();
  215. $validator = $this->validationFactory->make(
  216. $requireData,
  217. [
  218. 'id' => 'required',
  219. ],
  220. [
  221. 'id.required' => 'id不能为空',
  222. ]
  223. );
  224. if ($validator->fails()) {
  225. $errorMessage = $validator->errors()->first();
  226. return Result::error($errorMessage);
  227. }
  228. // var_dump($requireData);
  229. if (isset($requireData['is_admin']) && !empty($requireData['is_admin'])) {
  230. $requireData['admin_id'] = Context::get("UserId");
  231. }
  232. $result = $this->publicServiceClient->upLetterOfComplaint($requireData);
  233. return $result ? Result::success([]) : Result::error($result['message']);
  234. }
  235. /**
  236. * 获取投诉列表
  237. * @return array
  238. */
  239. public function getComplaint()
  240. {
  241. $requireData = $this->request->all();
  242. $requireData['user_id'] = Context::get("UserId");
  243. if (isset($requireData['is_admin']) && !empty($requireData['is_admin'])) {
  244. unset($requireData['user_id']);
  245. }
  246. $result = $this->publicServiceClient->getLetterOfComplaint($requireData);
  247. if($result['code']==200){
  248. foreach ($result['data']['rows']as $key=>$val){
  249. $result['data']['rows'][$key]['created_at'] = date("Y-m-d",strtotime($val['created_at']));
  250. }
  251. }
  252. return $result ? Result::success($result['data']) : Result::error($result['message']);
  253. }
  254. /**
  255. * 获取投诉举报信息
  256. * @return array
  257. */
  258. public function getLetterOfComplaintInfo()
  259. {
  260. $requireData = $this->request->all();
  261. $requireData['user_id'] = Context::get("UserId");
  262. if (isset($requireData['is_admin']) && !empty($requireData['is_admin'])) {
  263. unset($requireData['user_id']);
  264. }
  265. $result = $this->publicServiceClient->getLetterOfComplaintInfo($requireData);
  266. if ($result) {
  267. $result['data']['judgment'] = $result['data']['judgment'] ? json_decode($result['data']['judgment']) : '';
  268. $result['data']['audio_and_video'] = $result['data']['audio_and_video'] ? json_decode($result['data']['audio_and_video']) : '';
  269. $result['data']['contract'] = $result['data']['contract'] ? json_decode($result['data']['contract']) : '';
  270. $result['data']['qualifications'] = $result['data']['qualifications'] ? json_decode($result['data']['qualifications']) : '';
  271. }
  272. return $result ? Result::success($result['data']) : Result::error($result['message']);
  273. }
  274. /**
  275. * 删除投诉举报信息
  276. * @return array
  277. */
  278. public function delLetterOfComplaint()
  279. {
  280. $requireData = $this->request->all();
  281. $requireData['user_id'] = Context::get("UserId");
  282. if (isset($requireData['is_admin']) && !empty($requireData['is_admin'])) {
  283. unset($requireData['user_id']);
  284. }
  285. $result = $this->publicServiceClient->delLetterOfComplaint($requireData);
  286. return $result ? Result::success($result['data']) : Result::error($result['message']);
  287. }
  288. /**
  289. * 获取投诉分类信息
  290. * @return array
  291. */
  292. public function getLetterType()
  293. {
  294. $requireData = $this->request->all();
  295. $validator = $this->validationFactory->make(
  296. $requireData,
  297. [
  298. 'type' => 'required',
  299. ],
  300. [
  301. 'type.required' => '类型不能为空',
  302. ]
  303. );
  304. if ($validator->fails()) {
  305. $errorMessage = $validator->errors()->first();
  306. return Result::error($errorMessage);
  307. }
  308. $result = $this->publicServiceClient->getLetterType($requireData);
  309. $rep = PublicData::buildMenuTree($result['data']);
  310. return $rep ? Result::success($rep) : Result::error("查询失败");
  311. }
  312. /**
  313. * @return array
  314. */
  315. public function getLetterTypeChildren()
  316. {
  317. $requireData = $this->request->all();
  318. $validator = $this->validationFactory->make(
  319. $requireData,
  320. [
  321. 'type' => 'required',
  322. 'pid' => 'required',
  323. ],
  324. [
  325. 'type.required' => '类型不能为空',
  326. 'pid.required' => 'PID不能为空',
  327. ]
  328. );
  329. if ($validator->fails()) {
  330. $errorMessage = $validator->errors()->first();
  331. return Result::error($errorMessage);
  332. }
  333. $result = $this->publicServiceClient->getLetterType($requireData);
  334. return $result['code']==200 ? Result::success($result['data']) : Result::error("查询失败");
  335. }
  336. public function downloadFile(RequestInterface $request, ResponseInterface $response)
  337. {
  338. //验证是否有传参数
  339. $requireData = $this->request->all();
  340. $validator = $this->validationFactory->make(
  341. $requireData,
  342. [
  343. 'files' => 'required',
  344. ],
  345. [
  346. 'files.required' => '文件不能为空',
  347. ]
  348. );
  349. if ($validator->fails()) {
  350. $errorMessage = $validator->errors()->first();
  351. return Result::error($errorMessage);
  352. }
  353. $requireData['fileName'] = $requireData['fileName'] ?? '政讯通';
  354. //打包文件
  355. $zip = new ZipArchive();
  356. $fileType = 'zip';
  357. $date = date('Ymd');
  358. $filePath = $fileType . DIRECTORY_SEPARATOR . $date;
  359. $allDir = 'public' . DIRECTORY_SEPARATOR . $filePath;
  360. if (!is_dir($allDir)) {
  361. if (!mkdir($allDir, 0755, true)) {
  362. return Result::error('创建文件夹失败');
  363. }
  364. }
  365. $fileName = $requireData['fileName'] . time() . mt_rand(1, 1000000) . '.zip';
  366. $zipFileName = $allDir . DIRECTORY_SEPARATOR . $requireData['fileName'] . time() . mt_rand(1, 1000000) . '.zip';
  367. // $zipFileName = 'public/zip/files.zip';
  368. if ($zip->open($zipFileName, ZipArchive::CREATE) === true) {
  369. // 将要下载的文件逐个添加到zip文件中
  370. // $string = trim($requireData['files'], "[]'"); // 去掉最外层的方括号和单引号(注意:这里假设了单引号,如果是双引号则替换为 ")
  371. // $string = str_replace("'", '', $string); // 去掉所有剩余的单引号(如果原字符串中使用的是双引号,则替换为双引号)
  372. // $filePaths = explode(',', $string);
  373. foreach ($requireData['files'] as $filePathu) {
  374. $attachmentItem = 'public/' . $filePathu;
  375. $zip->addFile($attachmentItem, pathinfo($attachmentItem, PATHINFO_BASENAME));
  376. }
  377. // 关闭zip文件
  378. $zip->close();
  379. // 将zip文件提供给用户进行下载
  380. // readfile($zipFileName);
  381. $fileUrlName = explode("public", $zipFileName);
  382. return Result::success(['fileUrl' => env('HOST') . $fileUrlName[1]]);
  383. } else {
  384. return Result::error('无法创建zip文件');
  385. }
  386. }
  387. /**
  388. * 检测是否被处理
  389. * @return array
  390. */
  391. public function checkMeasure()
  392. {
  393. $requireData = $this->request->all();
  394. $validator = $this->validationFactory->make(
  395. $requireData,
  396. [
  397. 'id' => 'required',
  398. ],
  399. [
  400. 'id.required' => 'id不能为空',
  401. ]
  402. );
  403. if ($validator->fails()) {
  404. $errorMessage = $validator->errors()->first();
  405. return Result::error($errorMessage);
  406. }
  407. $requireData['user_id'] = Context::get("UserId");
  408. $result = $this->publicServiceClient->checkMeasure($requireData);
  409. return $result['code'] == 200 ? Result::success() : Result::error("已经处理了");
  410. }
  411. /**
  412. * 获取职能部门
  413. * @return void
  414. */
  415. public function getDepartment()
  416. {
  417. $requireData = $this->request->all();
  418. $validator = $this->validationFactory->make(
  419. $requireData,
  420. [
  421. 'pid' => 'required',
  422. ],
  423. [
  424. 'pid.required' => 'id不能为空',
  425. ]
  426. );
  427. if ($validator->fails()) {
  428. $errorMessage = $validator->errors()->first();
  429. return Result::error($errorMessage);
  430. }
  431. $result = $this->publicServiceClient->getDepartment($requireData);
  432. return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
  433. }
  434. /**
  435. * 获取职能部门
  436. * @return array
  437. */
  438. public function getZhinengbumenList()
  439. {
  440. // 获取请求参数
  441. $requireData = $this->request->all();
  442. // 参数验证
  443. $validator = $this->validationFactory->make(
  444. $requireData,
  445. [
  446. 'page' => 'integer|min:1',
  447. 'pagesize' => 'integer|min:1',
  448. 'search' => 'string|nullable',
  449. ],
  450. [
  451. 'page.integer' => 'page 必须是整数',
  452. 'page.min' => 'page 必须大于等于 1',
  453. 'pagesize.integer' => 'pagesize 必须是整数',
  454. 'pagesize.min' => 'pagesize 必须大于等于 1',
  455. 'search.string' => 'search 必须是字符串',
  456. ]
  457. );
  458. if ($validator->fails()) {
  459. $errorMessage = $validator->errors()->first();
  460. return Result::error($errorMessage);
  461. }
  462. // 添加用户 ID
  463. $requireData['user_id'] = Context::get("UserId");
  464. // 调用服务客户端方法获取分页数据
  465. $result = $this->publicServiceClient->getZhinengbumenList($requireData);
  466. // 处理结果
  467. return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
  468. }
  469. /**
  470. * 添加职能部门
  471. * @return array
  472. */
  473. public function addZhinengbumen()
  474. {
  475. // 获取请求参数
  476. $requireData = $this->request->all();
  477. $validator = $this->validationFactory->make(
  478. $requireData,
  479. [
  480. 'name' => 'required|string|regex:/^[\x{4e00}-\x{9fa5}]+$/u',
  481. 'pid' => 'required|integer',
  482. ],
  483. [
  484. 'name.required' => 'name 不能为空',
  485. 'name.string' => 'name 必须是字符串',
  486. 'name.regex' => 'name 必须是汉字',
  487. 'pid.required' => 'pid 不能为空',
  488. 'pid.integer' => 'pid 必须是整数',
  489. ]
  490. );
  491. if ($validator->fails()) {
  492. $errorMessage = $validator->errors()->first();
  493. return Result::error($errorMessage);
  494. }
  495. // $requireData['user_id'] = Context::get("UserId");
  496. $result = $this->publicServiceClient->addZhinengbumen($requireData);
  497. return $result['code'] == 200 ? Result::success() : Result::error("添加失败");
  498. }
  499. /**
  500. * 删除职能部门
  501. * @return array
  502. */
  503. public function delZhinengbumen()
  504. {
  505. $requireData = $this->request->all();
  506. $validator = $this->validationFactory->make(
  507. $requireData,
  508. [
  509. 'id' => 'required|integer',
  510. ],
  511. [
  512. 'id.required' => 'id 不能为空',
  513. 'id.integer' => 'id 必须是整数',
  514. ]
  515. );
  516. if ($validator->fails()) {
  517. $errorMessage = $validator->errors()->first();
  518. return Result::error($errorMessage);
  519. }
  520. $requireData['user_id'] = Context::get("UserId");
  521. $result = $this->publicServiceClient->delZhinengbumen($requireData);
  522. return $result['code'] == 200 ? Result::success() : Result::error("删除失败");
  523. }
  524. /**
  525. * 职能部门详情
  526. * @return array
  527. */
  528. public function getZhinengbumen()
  529. {
  530. $requireData = $this->request->all();
  531. $validator = $this->validationFactory->make(
  532. $requireData,
  533. [
  534. 'id' => 'required|integer',
  535. ],
  536. [
  537. 'id.required' => 'id 不能为空',
  538. 'id.integer' => 'id 必须是整数',
  539. ]
  540. );
  541. if ($validator->fails()) {
  542. $errorMessage = $validator->errors()->first();
  543. return Result::error($errorMessage);
  544. }
  545. $requireData['user_id'] = Context::get("UserId");
  546. $result = $this->publicServiceClient->getZhinengbumen($requireData);
  547. return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
  548. }
  549. /**
  550. * 获取职能部门某pid的所有子级,默认0级
  551. * @return array
  552. */
  553. public function getPidZhinengbumen()
  554. {
  555. // 获取请求参数
  556. $requireData = $this->request->all();
  557. // 参数验证
  558. $validator = $this->validationFactory->make(
  559. $requireData,
  560. [
  561. 'pid' => 'integer|min:0',
  562. ],
  563. [
  564. 'pid.integer' => 'pid 必须是整数',
  565. 'pid.min' => 'pid 必须大于等于 0',
  566. ]
  567. );
  568. if ($validator->fails()) {
  569. $errorMessage = $validator->errors()->first();
  570. return Result::error($errorMessage);
  571. }
  572. $requireData['user_id'] = Context::get("UserId");
  573. $result = $this->publicServiceClient->getPidZhinengbumen($requireData);
  574. return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
  575. }
  576. /**
  577. * 修改职能部门名称
  578. * @return array
  579. */
  580. public function modZhinengbumen()
  581. {
  582. $requireData = $this->request->all();
  583. // 参数验证
  584. $validator = $this->validationFactory->make(
  585. $requireData,
  586. [
  587. 'id' => 'required|integer',
  588. 'name' => 'required|string|regex:/^[\x{4e00}-\x{9fa5}]+$/u',
  589. ],
  590. [
  591. 'id.required' => 'id 不能为空',
  592. 'id.integer' => 'id 必须是整数',
  593. 'name.required' => 'name 不能为空',
  594. 'name.string' => 'name 必须是字符串',
  595. 'name.regex' => 'name 必须是汉字',
  596. ]
  597. );
  598. if ($validator->fails()) {
  599. $errorMessage = $validator->errors()->first();
  600. return Result::error($errorMessage);
  601. }
  602. $requireData['user_id'] = Context::get("UserId");
  603. $result = $this->publicServiceClient->modZhinengbumen($requireData);
  604. return $result['code'] == 200 ? Result::success() : Result::error("修改失败");
  605. }
  606. /**
  607. * 获取风格
  608. * @return void
  609. */
  610. public function getTemplateClassList()
  611. {
  612. $requireData = $this->request->all();
  613. $validator = $this->validationFactory->make(
  614. $requireData,
  615. [
  616. 'page' =>'required|integer',
  617. 'pageSize' =>'required|integer',
  618. ],
  619. [
  620. 'page.required' => '页码不能为空',
  621. 'page.integer' => '页码必须为整数',
  622. 'pageSize.required' => '每页条数不能为空',
  623. 'pageSize.integer' => '每页条数必须为整数',
  624. ]
  625. );
  626. if ($validator->fails()) {
  627. $errorMessage = $validator->errors()->first();
  628. return Result::error($errorMessage);
  629. }
  630. // return Result::success($requireData);
  631. $result = $this->publicServiceClient->getTemplateClassList($requireData);
  632. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  633. }
  634. /**
  635. * 添加风格
  636. * @return void
  637. */
  638. public function addTemplateClass()
  639. {
  640. $requireData = $this->request->all();
  641. $validator = $this->validationFactory->make(
  642. $requireData,
  643. [
  644. 'name' => 'required',
  645. 'keyword' =>'required',
  646. 'class_id' =>'required',
  647. ],
  648. [
  649. 'name.required' => '风格名称不能为空',
  650. 'keyword.required' => '风格关键词不能为空',
  651. 'class_id' =>'风格编号不能为空'
  652. ]
  653. );
  654. if ($validator->fails()) {
  655. $errorMessage = $validator->errors()->first();
  656. return Result::error($errorMessage);
  657. }
  658. $result = $this->publicServiceClient->addTemplateClass($requireData);
  659. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  660. }
  661. /**
  662. * 更新风格
  663. * @return array
  664. */
  665. public function upTemplateClass()
  666. {
  667. $requireData = $this->request->all();
  668. $validator = $this->validationFactory->make(
  669. $requireData,
  670. [
  671. 'name' => 'required',
  672. 'id' => 'required',
  673. 'keyword' =>'required',
  674. ],
  675. [
  676. 'name.required' => '风格名称不能为空',
  677. 'id.required' => '风格ID不能为空',
  678. 'keyword.required' => '风格关键词不能为空'
  679. ]
  680. );
  681. if ($validator->fails()) {
  682. $errorMessage = $validator->errors()->first();
  683. return Result::error($errorMessage);
  684. }
  685. $result = $this->publicServiceClient->upTemplateClass($requireData);
  686. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  687. }
  688. /**
  689. * 删除风格
  690. * @return array
  691. */
  692. public function delTemplateClass()
  693. {
  694. $requireData = $this->request->all();
  695. $validator = $this->validationFactory->make(
  696. $requireData,
  697. [
  698. 'id' => 'required'
  699. ],
  700. [
  701. 'id.required' => '风格id不能为空'
  702. ]
  703. );
  704. if ($validator->fails()) {
  705. $errorMessage = $validator->errors()->first();
  706. return Result::error($errorMessage);
  707. }
  708. $result = $this->publicServiceClient->delTemplateClass($requireData);
  709. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  710. }
  711. /**
  712. * 获取风格下拉框
  713. * @return void
  714. */
  715. public function getTemplateClass()
  716. {
  717. $requireData = $this->request->all();
  718. $result = $this->publicServiceClient->getTemplateClass($requireData);
  719. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  720. }
  721. /**
  722. * 获取皮肤列表
  723. * @return array
  724. */
  725. public function getTemplateList()
  726. {
  727. $requireData = $this->request->all();
  728. $validator = $this->validationFactory->make(
  729. $requireData,
  730. [
  731. 'page' => 'required|integer|min:1',
  732. 'page_size' => 'required|integer|min:1',
  733. 'template_name' => 'string|nullable',
  734. 'template_class_id' =>'integer|nullable',
  735. ],
  736. [
  737. 'page.required' => 'page 不能为空',
  738. 'page.integer' => 'page 必须是整数',
  739. 'page.min' => 'page 必须大于等于 1',
  740. 'page_size.required' => 'page_size 不能为空',
  741. 'page_size.integer' => 'page_size 必须是整数',
  742. 'page_size.min' => 'page_size 必须大于等于 1',
  743. 'template_name.string' => 'template_name 必须是字符串',
  744. 'template_class_id.integer' => 'template_class_id 必须是整数',
  745. ]
  746. );
  747. if ($validator->fails()) {
  748. $errorMessage = $validator->errors()->first();
  749. return Result::error($errorMessage);
  750. }
  751. $requireData['user_id'] = Context::get("UserId");
  752. $result = $this->publicServiceClient->getTemplateList($requireData);
  753. return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
  754. }
  755. /**
  756. * 获取皮肤详情
  757. * @return array
  758. */
  759. public function getTemplateInfo()
  760. {
  761. $requireData = $this->request->all();
  762. $validator = $this->validationFactory->make(
  763. $requireData,
  764. [
  765. 'id' => 'required|integer',
  766. ],
  767. [
  768. 'id.required' => 'id 不能为空',
  769. 'id.integer' => 'id 必须是整数',
  770. ]
  771. );
  772. if ($validator->fails()) {
  773. $errorMessage = $validator->errors()->first();
  774. return Result::error($errorMessage);
  775. }
  776. $requireData['user_id'] = Context::get("UserId");
  777. $result = $this->publicServiceClient->getTemplateInfo($requireData);
  778. return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
  779. }
  780. /**
  781. * 删除皮肤
  782. */
  783. public function delTemplate()
  784. {
  785. $requireData = $this->request->all();
  786. var_dump($requireData);
  787. $validator = $this->validationFactory->make(
  788. $requireData,
  789. [
  790. 'id' => 'required|integer',
  791. ],
  792. [
  793. 'id.required' => 'id 不能为空',
  794. 'id.integer' => 'id 必须是整数',
  795. ]
  796. );
  797. if ($validator->fails()) {
  798. $errorMessage = $validator->errors()->first();
  799. return Result::error($errorMessage);
  800. }
  801. $requireData['user_id'] = Context::get("UserId");
  802. $result = $this->publicServiceClient->delTemplate($requireData);
  803. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  804. }
  805. /**
  806. * 更新皮肤
  807. */
  808. public function updateTemplate()
  809. {
  810. $requireData = $this->request->all();
  811. $validator = $this->validationFactory->make(
  812. $requireData,
  813. [
  814. 'id' => 'required',
  815. ],
  816. [
  817. 'id.required' => 'id不能为空',
  818. ]
  819. );
  820. if ($validator->fails()) {
  821. $errorMessage = $validator->errors()->first();
  822. return Result::error($errorMessage);
  823. }
  824. $requireData['user_id'] = Context::get("UserId");
  825. $result = $this->publicServiceClient->updateTemplate($requireData);
  826. // var_dump($result,'1001010');
  827. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  828. }
  829. /**
  830. * 新增皮肤
  831. */
  832. public function addTemplate()
  833. {
  834. $requireData = $this->request->all();
  835. $validator = $this->validationFactory->make($requireData, [
  836. 'template_name' => 'required',
  837. 'template_class_id' => 'required',
  838. 'template_img' => 'required',
  839. 'template_keyword' =>'required',
  840. 'template_id' =>'required',
  841. ],
  842. [
  843. 'template_name.required' => '请输入皮肤名称',
  844. 'template_class_id.required' => '请选择风格分类',
  845. 'template_img.required' => '请上传皮肤图片',
  846. 'template_keyword.required' => '请输入皮肤关键词',
  847. 'template_id.required' => '请输入皮肤编号',
  848. ]
  849. );
  850. if ($validator->fails()) {
  851. $errorMessage = $validator->errors()->first();
  852. return Result::error($errorMessage);
  853. }
  854. $requireData['user_id'] = Context::get("UserId");
  855. $result = $this->publicServiceClient->addTemplate($requireData);
  856. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  857. }
  858. /**
  859. * 新增通栏
  860. */
  861. public function addSector()
  862. {
  863. $requireData = $this->request->all();
  864. $validator = $this->validationFactory->make(
  865. $requireData,
  866. [
  867. // 'id' => 'required|integer',
  868. 'template_id'=>'required|integer',
  869. 'sector_name'=>'required|string',
  870. 'page_type'=>'required',
  871. 'sector_img'=>'required|string',
  872. ],
  873. [
  874. // 'id.required' => 'id 不能为空',
  875. // 'id.integer' => 'id 必须是整数',
  876. 'template_id.required' => '皮肤id不能为空',
  877. 'template_id.integer' => '皮肤id必须是整数',
  878. 'sector_name.required' => '通栏名称不能为空',
  879. 'sector_name.string' => '通栏名称必须是字符串',
  880. 'sector_img.required' => '通栏图片不能为空',
  881. 'sector_img.string' => '通栏代码必须是字符串',
  882. 'page_type.required' => '页面类型不能为空',
  883. ]
  884. );
  885. if ($validator->fails()) {
  886. $errorMessage = $validator->errors()->first();
  887. return Result::error($errorMessage);
  888. }
  889. $requireData['user_id'] = Context::get("UserId");
  890. $result = $this->publicServiceClient->addSector($requireData);
  891. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  892. }
  893. /**
  894. * 获取通栏信息
  895. */
  896. public function getSectorInfo()
  897. {
  898. $requireData = $this->request->all();
  899. $validator = $this->validationFactory->make(
  900. $requireData,
  901. [
  902. 'id' => 'required|integer',
  903. ],
  904. [
  905. 'id.required' => 'id 不能为空',
  906. 'id.integer' => 'id 必须是整数',
  907. ]
  908. );
  909. if ($validator->fails()) {
  910. $errorMessage = $validator->errors()->first();
  911. return Result::error($errorMessage);
  912. }
  913. $requireData['user_id'] = Context::get("UserId");
  914. $result = $this->publicServiceClient->getSectorInfo($requireData);
  915. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  916. }
  917. /**
  918. * 删除通栏
  919. */
  920. public function delSector()
  921. {
  922. $requireData = $this->request->all();
  923. $validator = $this->validationFactory->make(
  924. $requireData,
  925. [
  926. 'id' => 'required|integer',
  927. ],
  928. [
  929. 'id.required' => 'id 不能为空',
  930. 'id.integer' => 'id 必须是整数',
  931. ]
  932. );
  933. if ($validator->fails()) {
  934. $errorMessage = $validator->errors()->first();
  935. return Result::error($errorMessage);
  936. }
  937. $requireData['user_id'] = Context::get("UserId");
  938. $result = $this->publicServiceClient->delSector($requireData);
  939. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  940. }
  941. /**
  942. * 更新通栏
  943. */
  944. public function updateSector()
  945. {
  946. $requireData = $this->request->all();
  947. $validator = $this->validationFactory->make(
  948. $requireData,
  949. [
  950. 'id' => 'required|integer',
  951. ],
  952. [
  953. 'id.required' => 'id 不能为空',
  954. 'id.integer' => 'id 必须是整数',
  955. ]
  956. );
  957. if ($validator->fails()) {
  958. $errorMessage = $validator->errors()->first();
  959. return Result::error($errorMessage);
  960. }
  961. $requireData['user_id'] = Context::get("UserId");
  962. $result = $this->publicServiceClient->updateSector($requireData);
  963. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  964. }
  965. /**
  966. * 获取所有皮肤
  967. */
  968. public function getAllTemplate()
  969. {
  970. $requireData = $this->request->all();
  971. $requireData['user_id'] = Context::get("UserId");
  972. $result = $this->publicServiceClient->getAllTemplate($requireData);
  973. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  974. }
  975. /**
  976. * 获取所有尺寸
  977. */
  978. public function getAllSize()
  979. {
  980. $requireData = $this->request->all();
  981. $requireData['user_id'] = Context::get("UserId");
  982. $result = $this->publicServiceClient->getAllSize($requireData);
  983. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  984. }
  985. /**
  986. * 获取通栏信息列表
  987. */
  988. public function getSectorList(){
  989. $requireData = $this->request->all();
  990. $validator = $this->validationFactory->make(
  991. $requireData,
  992. [
  993. 'page' => 'required|integer|min:1',
  994. 'page_size' => 'required|integer|min:1',
  995. ],
  996. [
  997. 'page.required' => 'page 不能为空',
  998. 'page.integer' => 'page 必须是整数',
  999. 'page.min' => 'page 必须大于等于 1',
  1000. 'page_size.required' => 'page_size 不能为空',
  1001. 'page_size.integer' => 'page_size 必须是整数',
  1002. 'page_size.min' => 'page_size 必须大于等于 1',
  1003. ]
  1004. );
  1005. if ($validator->fails()) {
  1006. $errorMessage = $validator->errors()->first();
  1007. return Result::error($errorMessage);
  1008. }
  1009. $requireData['user_id'] = Context::get("UserId");
  1010. $result = $this->publicServiceClient->getSectorList($requireData);
  1011. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1012. }
  1013. /*
  1014. * 获取通栏列表
  1015. */
  1016. public function getComponentInfo()
  1017. {
  1018. $requireData = $this->request->all();
  1019. $validator = $this->validationFactory->make(
  1020. $requireData,
  1021. [
  1022. 'id' => 'required|integer',
  1023. ],
  1024. [
  1025. 'id.required' => 'id 不能为空',
  1026. 'id.integer' => 'id 必须是整数',
  1027. ]
  1028. );
  1029. if ($validator->fails()) {
  1030. $errorMessage = $validator->errors()->first();
  1031. return Result::error($errorMessage);
  1032. }
  1033. $requireData['user_id'] = Context::get("UserId");
  1034. $result = $this->publicServiceClient->getComponentInfo($requireData);
  1035. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1036. }
  1037. /**
  1038. * 删除通栏
  1039. */
  1040. public function delComponent()
  1041. {
  1042. $requireData = $this->request->all();
  1043. $validator = $this->validationFactory->make(
  1044. $requireData,
  1045. [
  1046. 'id' => 'required|integer',
  1047. ],
  1048. [
  1049. 'id.required' => 'id 不能为空',
  1050. 'id.integer' => 'id 必须是整数',
  1051. ]
  1052. );
  1053. if ($validator->fails()) {
  1054. $errorMessage = $validator->errors()->first();
  1055. return Result::error($errorMessage);
  1056. }
  1057. $requireData['user_id'] = Context::get("UserId");
  1058. $result = $this->publicServiceClient->delComponent($requireData);
  1059. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1060. }
  1061. public function addComponent()
  1062. {
  1063. $requireData = $this->request->all();
  1064. $validator = $this->validationFactory->make(
  1065. $requireData,
  1066. [
  1067. 'component_name' => 'required|string',
  1068. 'component_type' => 'required|integer',
  1069. 'component_img' => 'required|string',
  1070. 'type_id' => 'required|integer',
  1071. ],
  1072. [
  1073. 'component_name.required' => '组件名称不能为空',
  1074. 'component_name.string' => '组件名称必须是字符串',
  1075. 'component_type.required' => '组件编号不能为空',
  1076. 'component_type.integer' => '组件编号必须是整数',
  1077. 'component_img.required' => '组件图片不能为空',
  1078. 'component_img.string' => '组件图片必须是字符串',
  1079. 'type_id.required' => '组件类型不能为空',
  1080. 'type_id.integer' => '组件类型必须是整数',
  1081. ]
  1082. );
  1083. if ($validator->fails()) {
  1084. $errorMessage = $validator->errors()->first();
  1085. return Result::error($errorMessage);
  1086. }
  1087. // $requireData['user_id'] = Context::get("UserId");
  1088. $result = $this->publicServiceClient->addComponent($requireData);
  1089. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1090. }
  1091. public function getComponentList()
  1092. {
  1093. $requireData = $this->request->all();
  1094. $validator = $this->validationFactory->make(
  1095. $requireData,
  1096. [
  1097. 'page' => 'required|integer|min:1',
  1098. 'page_size' => 'required|integer|min:1',
  1099. ],
  1100. [
  1101. 'page.required' => 'page 不能为空',
  1102. 'page.integer' => 'page 必须是整数',
  1103. 'page.min' => 'page 必须大于等于 1',
  1104. 'page_size.required' => 'page_size 不能为空',
  1105. 'page_size.integer' => 'page_size 必须是整数',
  1106. 'page_size.min' => 'page_size 必须大于等于 1',
  1107. ]
  1108. );
  1109. if ($validator->fails()) {
  1110. $errorMessage = $validator->errors()->first();
  1111. return Result::error($errorMessage);
  1112. }
  1113. $requireData['user_id'] = Context::get("UserId");
  1114. $result = $this->publicServiceClient->getComponentList($requireData);
  1115. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1116. }
  1117. public function updateComponent()
  1118. {
  1119. $requireData = $this->request->all();
  1120. $validator = $this->validationFactory->make(
  1121. $requireData,
  1122. [
  1123. 'id' => 'required|integer',
  1124. ],
  1125. [
  1126. 'id.required' => 'id 不能为空',
  1127. 'id.integer' => 'id 必须是整数',
  1128. ]
  1129. );
  1130. if ($validator->fails()) {
  1131. $errorMessage = $validator->errors()->first();
  1132. return Result::error($errorMessage);
  1133. }
  1134. // $requireData['user_id'] = Context::get("UserId");
  1135. $result = $this->publicServiceClient->updateComponent($requireData);
  1136. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1137. }
  1138. public function getWebsiteTemplateInfo()
  1139. {
  1140. $requireData = $this->request->all();
  1141. $validator = $this->validationFactory->make(
  1142. $requireData,
  1143. [
  1144. 'id' => 'required|integer',
  1145. ],
  1146. [
  1147. 'id.required' => 'id 不能为空',
  1148. 'id.integer' => 'id 必须是整数',
  1149. ]
  1150. );
  1151. if ($validator->fails()) {
  1152. $errorMessage = $validator->errors()->first();
  1153. return Result::error($errorMessage);
  1154. }
  1155. $requireData['user_id'] = Context::get("UserId");
  1156. $result = $this->publicServiceClient->getWebsiteTemplateInfo($requireData);
  1157. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1158. }
  1159. /**
  1160. * 获取所有的职能部门
  1161. * @return array
  1162. */
  1163. public function getAllDepartment()
  1164. {
  1165. $result = $this->publicServiceClient->getDepartment([]);
  1166. $result['data'] = PublicData::buildMenuTree($result['data']);
  1167. return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
  1168. }
  1169. /**
  1170. * 获取黑名单列表
  1171. * @return array
  1172. */
  1173. public function getBlackWordList()
  1174. {
  1175. $requireData = $this->request->all();
  1176. $validator = $this->validationFactory->make(
  1177. $requireData,
  1178. [
  1179. 'page' => 'integer|min:1',
  1180. 'pagesize' => 'integer|min:1',
  1181. 'search' => 'string|nullable',
  1182. ],
  1183. [
  1184. 'page.integer' => 'page 必须是整数',
  1185. 'page.min' => 'page 必须大于等于 1',
  1186. 'pagesize.integer' => 'pagesize 必须是整数',
  1187. 'pagesize.min' => 'pagesize 必须大于等于 1',
  1188. 'search.string' => 'search 必须是字符串',
  1189. ]
  1190. );
  1191. if ($validator->fails()) {
  1192. $errorMessage = $validator->errors()->first();
  1193. return Result::error($errorMessage);
  1194. }
  1195. $result = $this->publicServiceClient->getBlackWordList($requireData);
  1196. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1197. }
  1198. /**
  1199. * 添加黑名单
  1200. * @return array
  1201. */
  1202. public function addBlackWord()
  1203. {
  1204. $requireData = $this->request->all();
  1205. $validator = $this->validationFactory->make(
  1206. $requireData,
  1207. [
  1208. 'name' => 'required',
  1209. ],
  1210. [
  1211. 'name.required' => '过滤词不能为空',
  1212. ]
  1213. );
  1214. if ($validator->fails()) {
  1215. $errorMessage = $validator->errors()->first();
  1216. return Result::error($errorMessage);
  1217. }
  1218. $result = $this->publicServiceClient->addBlackWord($requireData);
  1219. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1220. }
  1221. /**
  1222. * 删除黑名单
  1223. * @return array
  1224. */
  1225. public function delBlackWord()
  1226. {
  1227. $requireData = $this->request->all();
  1228. $validator = $this->validationFactory->make(
  1229. $requireData,
  1230. [
  1231. 'name' => 'required',
  1232. ],
  1233. [
  1234. 'name.required' => 'name不能为空',
  1235. ]
  1236. );
  1237. if ($validator->fails()) {
  1238. $errorMessage = $validator->errors()->first();
  1239. return Result::error($errorMessage);
  1240. }
  1241. $result = $this->publicServiceClient->delBlackWord($requireData);
  1242. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1243. }
  1244. /**
  1245. * 修改违禁词
  1246. * @return array
  1247. */
  1248. public function upBlackWord()
  1249. {
  1250. $requireData = $this->request->all();
  1251. $validator = $this->validationFactory->make(
  1252. $requireData,
  1253. [
  1254. 'id' => 'required',
  1255. 'name' => 'required',
  1256. ],
  1257. [
  1258. 'id.required' => 'id不能为空',
  1259. 'name.required' => 'name不能为空',
  1260. ]
  1261. );
  1262. if ($validator->fails()) {
  1263. $errorMessage = $validator->errors()->first();
  1264. return Result::error($errorMessage);
  1265. }
  1266. $result = $this->publicServiceClient->upBlackWord($requireData);
  1267. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1268. }
  1269. /**
  1270. * 获取ip信息-经纬度
  1271. * @return array
  1272. */
  1273. public function getIpInfo()
  1274. {
  1275. $result = $this->publicServiceClient->getIpInfo([]);
  1276. var_dump("========",$result);
  1277. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1278. }
  1279. /**
  1280. * 获取天气信息
  1281. * @return array
  1282. */
  1283. public function getWeatherInfo()
  1284. {
  1285. $requireData = $this->request->all();
  1286. $validator = $this->validationFactory->make(
  1287. $requireData,
  1288. [
  1289. 'latitude' => 'required',
  1290. 'longitude' => 'required',
  1291. ],
  1292. [
  1293. 'latitude.required' => '纬度不能为空',
  1294. 'longitude.required' => '经度不能为空',
  1295. ]
  1296. );
  1297. if ($validator->fails()) {
  1298. $errorMessage = $validator->errors()->first();
  1299. return Result::error($errorMessage);
  1300. }
  1301. $result = $this->publicServiceClient->getWeatherInfo($requireData);
  1302. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1303. }
  1304. /**
  1305. * 获取日历信息
  1306. * @return array
  1307. */
  1308. public function getCalendar()
  1309. {
  1310. $year = $this->request->input('year', date('Y'));
  1311. $month = $this->request->input('month', date('m'));
  1312. $day = $this->request->input('day', date('d'));
  1313. $hour = $this->request->input('day', date('H'));
  1314. $data['year'] = $year;
  1315. $data['month'] = $month;
  1316. $data['day'] = $day;
  1317. $data['hour'] = $hour;
  1318. $result = $this->publicServiceClient->getCalendar($data);
  1319. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1320. }
  1321. /**
  1322. * 添加历史上的今天
  1323. * @return void
  1324. */
  1325. public function addHistoryToday()
  1326. {
  1327. $result = PublicData::getHistoryToday();
  1328. if($result['code']!=200){
  1329. return Result::error($result['msg']);
  1330. }
  1331. $dataList = $result['data']??[];
  1332. if($dataList){
  1333. foreach ($dataList as $value){
  1334. preg_match('/^(-?\d+)年(\d+)月(\d+)日$/', $value['year'], $matches);
  1335. if (isset($matches[1], $matches[2], $matches[3])) {
  1336. $year = $matches[1];
  1337. $month = str_pad($matches[2], 2, '0', STR_PAD_LEFT); // 补零至两位
  1338. $day = str_pad($matches[3], 2, '0', STR_PAD_LEFT); // 补零至两位
  1339. $formattedDate = "{$year}-{$month}-{$day}";
  1340. // echo $formattedDate; // 输出:-1184-04-24
  1341. } else {
  1342. return Result::error($result['msg']);
  1343. }
  1344. $value['year'] = $formattedDate;
  1345. HistoryToday::updateOrInsert(
  1346. ['title' => $value['title']],
  1347. ['title' => $value['title']??'','year' => $value['year']]
  1348. );
  1349. }
  1350. }
  1351. return Result::success($result['data']);
  1352. }
  1353. /**
  1354. * 添加对联
  1355. * @return void
  1356. */
  1357. public function addCouplet()
  1358. {
  1359. $requireData = $this->request->all();
  1360. // $validator = $this->validationFactory->make(
  1361. // $requireData,
  1362. // [
  1363. // 'type' => 'required',
  1364. // ],
  1365. // [
  1366. // 'type.required' => 'type不能为空',
  1367. // ]
  1368. // );
  1369. // if ($validator->fails()) {
  1370. // $errorMessage = $validator->errors()->first();
  1371. // return Result::error($errorMessage);
  1372. // }
  1373. $result = PublicData::getCouplet($requireData['type']??"");
  1374. if($result['code']!=200){
  1375. return Result::error($result['msg']);
  1376. }
  1377. $dataList = $result['result']['list']??[];
  1378. if($dataList){
  1379. foreach ($dataList as $value){
  1380. Couplet::updateOrInsert(
  1381. ['first' => $value['shanglian']],
  1382. ['center' => $value['hengpi']??'','first' => $value['shanglian'],'second'=>$value['xialian'],'type'=>$value['fenlei']??'']
  1383. );
  1384. }
  1385. }
  1386. return Result::success($result['result']['list']);
  1387. }
  1388. /**
  1389. * 添加对联
  1390. * @return void
  1391. */
  1392. public function addRiddle()
  1393. {
  1394. for ($i = 0; $i < 5; $i++) {
  1395. $result = PublicData::addRiddle();
  1396. if($result['code']!=1){
  1397. return Result::error("没资源了");
  1398. }
  1399. var_dump($result);
  1400. Riddle::updateOrInsert(
  1401. ['riddle_title' => $result['mt']],
  1402. ['riddle_title' => $result['mt']??'','riddle_bottom' => $result['md']??'','type' => $result['lx']??'','prompt' => $result['ts']??'']
  1403. );
  1404. $i++;
  1405. sleep(2);
  1406. }
  1407. return Result::success($result);
  1408. }
  1409. /**
  1410. * 添加采集数据
  1411. * @return \Psr\Http\Message\ResponseInterface
  1412. */
  1413. public function addArticle()
  1414. {
  1415. $requireData = $this->request->all();
  1416. $validator = $this->validationFactory->make(
  1417. $requireData,
  1418. [
  1419. 'title' => 'required',
  1420. 'content' => 'required',
  1421. 'web_site_id' => 'required',
  1422. 'catid' => 'required',
  1423. 'copyfrom' => 'required',
  1424. 'fromurl' => 'required',
  1425. 'author' => 'required',
  1426. ],
  1427. [
  1428. 'title.required' => '标题不能为空',
  1429. 'content.required' => '内容不能为空',
  1430. 'web_site_id.required' => '网站不能为空',
  1431. 'catid.required' => '栏目不能为空',
  1432. 'copyfrom.required' => '来源不能为空',
  1433. 'fromurl.required' => '来源网址不能为空',
  1434. 'author.required' => '作者不能为空',
  1435. ]
  1436. );
  1437. if ($validator->fails()) {
  1438. $errorMessage = $validator->errors()->first();
  1439. var_dump($errorMessage);
  1440. return $this->response->json(
  1441. [
  1442. 'id'=>uniqid(),
  1443. 'target'=>"采集失败",
  1444. 'desc'=>$errorMessage,
  1445. 'error'=>$errorMessage
  1446. ]
  1447. );
  1448. }
  1449. $arr_catid = explode(',',$requireData['catid']);
  1450. $arr_web_site_id = explode(',',$requireData['web_site_id']);
  1451. if(count($arr_catid) != count($arr_web_site_id)){
  1452. return $this->response->json(
  1453. [
  1454. 'id'=>uniqid(),
  1455. 'target'=>"采集失败",
  1456. 'desc'=>"网站栏目不匹配",
  1457. 'error'=>"网站栏目不匹配"
  1458. ]
  1459. );
  1460. }
  1461. // var_dump($arr_catid,$arr_web_site_id);
  1462. // die();
  1463. if($arr_catid){
  1464. foreach ($arr_catid as $key=>$val){
  1465. $categoryInfo = $this->newsServiceClient->getCategoryInfo(['id'=>$val]);
  1466. if($categoryInfo['code']!=200){
  1467. return $this->response->json(
  1468. [
  1469. 'id'=>uniqid(),
  1470. 'error'=>"栏目不存在"
  1471. ]
  1472. );
  1473. }
  1474. if($categoryInfo['data']['pid']!=0){
  1475. $pid_arr = json_decode($categoryInfo['data']['pid_arr'],true);
  1476. $requireData['cat_arr_id'] = array_push($pid_arr,intval($val));
  1477. $requireData['cat_arr_id'] = isset($pid_arr) ? json_encode($pid_arr) : '';
  1478. }else{
  1479. $requireData['cat_arr_id'] = json_encode([intval($val)]);
  1480. }
  1481. $loginIp = $this->request->getHeader('x-forwarded-for')[0] ?? $this->request->getHeader('x-real-ip')[0] ?? $this->request->getServerParams()['remote_addr'] ?? '0.0.0.0';
  1482. $requireData['ip'] = $loginIp;
  1483. $requireData['admin_user_id'] = 0;
  1484. $requireData['level'] = isset($requireData['level']) && $requireData['level'] ? $requireData['level'] : 0;
  1485. $requireData['hits'] = isset($requireData['hits']) && $requireData['hits'] ? $requireData['hits'] : 0;
  1486. $requireData['is_original'] = isset($requireData['is_original']) && $requireData['is_original'] ? $requireData['is_original'] : 0;
  1487. $requireData['status'] = isset($requireData['status']) && $requireData['status'] ? $requireData['status'] : 1;
  1488. $requireData['imgurl'] = '';
  1489. $requireData['user_type'] = 10000;
  1490. $requireData['level'] = "[0]";
  1491. $requireData['nav_add_pool_id'] = [];
  1492. $requireData['city_id'] = 0;
  1493. $requireData['city_arr_id'] = "[]";
  1494. $requireData['department_arr_id'] = "[]";
  1495. $requireData['department_id'] = 0;
  1496. $requireData['islink'] = 0;
  1497. $requireData['linkurl'] = "";
  1498. $requireData['keyword'] = "";
  1499. $requireData['introduce'] = "";
  1500. $requireData['is_survey'] = 0;
  1501. $requireData['survey_name'] = "";
  1502. $requireData['suvey_array'] = "";
  1503. $requireData['survey_type'] = 0;
  1504. $requireData['commend_id'] = "[]";
  1505. $requireData['catid'] = $val;
  1506. $requireData['web_site_id'] = $arr_web_site_id[$key];
  1507. $result = $this->newsServiceClient->addArticle($requireData);
  1508. $data = [
  1509. 'id'=>$result['data']['id'],
  1510. 'target'=>$categoryInfo['data']['name'],
  1511. 'desc'=>$requireData['title'],
  1512. ];
  1513. }
  1514. }
  1515. return $this->response->json(
  1516. $data
  1517. );
  1518. }
  1519. /**
  1520. * 自助建站-1.选择页面回显相关数据
  1521. * @return array
  1522. */
  1523. public function getWebPageType()
  1524. {
  1525. $requireData = $this->request->all();
  1526. $validator = $this->validationFactory->make(
  1527. $requireData,
  1528. [
  1529. 'website_id' =>'required',
  1530. ],
  1531. [
  1532. 'website_id.required' => '网站id 不能为空',
  1533. ]
  1534. );
  1535. if ($validator->fails()) {
  1536. $errorMessage = $validator->errors()->first();
  1537. return Result::error($errorMessage);
  1538. }
  1539. $result = $this->publicServiceClient->getWebPageType($requireData);
  1540. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1541. }
  1542. /**
  1543. * 自助建站-2.选择页面类型
  1544. * @return array
  1545. */
  1546. public function addWebPageType()
  1547. {
  1548. $requireData = $this->request->all();
  1549. $validator = $this->validationFactory->make(
  1550. $requireData,
  1551. [
  1552. 'is_search' =>'required',
  1553. 'website_id' =>'required',
  1554. ],
  1555. [
  1556. 'is_search.required' => '是否带搜索页面',
  1557. 'website_id.required' => '网站id 不能为空',
  1558. ]
  1559. );
  1560. if ($validator->fails()) {
  1561. $errorMessage = $validator->errors()->first();
  1562. return Result::error($errorMessage);
  1563. }
  1564. $requireData['user_id'] = Context::get("UserId");
  1565. $result = $this->publicServiceClient->addWebPageType($requireData);
  1566. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1567. }
  1568. /**
  1569. * 自助建站-3.皮肤列表
  1570. * @return array
  1571. */
  1572. public function getWebsiteTemplateList()
  1573. {
  1574. $requireData = $this->request->all();
  1575. $validator = $this->validationFactory->make(
  1576. $requireData,
  1577. [
  1578. 'page' => 'required|integer|min:1',
  1579. 'page_size' => 'required|integer|min:1',
  1580. 'website_id' =>'required',
  1581. ],
  1582. [
  1583. 'page.required' => 'page 不能为空',
  1584. 'page.integer' => 'page 必须是整数',
  1585. 'page.min' => 'page 必须大于等于 1',
  1586. 'page_size.required' => 'page_size 不能为空',
  1587. 'page_size.integer' => 'page_size 必须是整数',
  1588. 'page_size.min' => 'page_size 必须大于等于 1',
  1589. 'website_id.required' => '网站id 不能为空',
  1590. ]
  1591. );
  1592. if ($validator->fails()) {
  1593. $errorMessage = $validator->errors()->first();
  1594. return Result::error($errorMessage);
  1595. }
  1596. // return Result::success($requireData);
  1597. $requireData['user_id'] = Context::get("UserId");
  1598. $result = $this->publicServiceClient->getWebsiteTemplateList($requireData);
  1599. return $result['code'] == 200 ? Result::success($result['data']) : Result::error($result['message']);
  1600. }
  1601. /**
  1602. * 自助建站-4.添加网站
  1603. * @return array
  1604. */
  1605. public function chooseWebsiteTemplate()
  1606. {
  1607. $requireData = $this->request->all();
  1608. $validator = $this->validationFactory->make(
  1609. $requireData,
  1610. [
  1611. 'website_id' =>'required',
  1612. 'template_id' =>'required',
  1613. ],
  1614. [
  1615. 'website_id.required' => '网站id不能为空',
  1616. 'template_id.required' => '皮肤id不能为空',
  1617. ]
  1618. );
  1619. if ($validator->fails()) {
  1620. $errorMessage = $validator->errors()->first();
  1621. return Result::error($errorMessage);
  1622. }
  1623. $requireData['user_id'] = Context::get("UserId");
  1624. $result = $this->publicServiceClient->chooseWebsiteTemplate($requireData);
  1625. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1626. }
  1627. /**
  1628. * 自助建站-5.保存到草稿箱
  1629. * @return array
  1630. */
  1631. public function saveWebsiteTemplate()
  1632. {
  1633. $requireData = $this->request->all();
  1634. $validator = $this->validationFactory->make(
  1635. $requireData,
  1636. [
  1637. 'website_id' =>'required',
  1638. 'template_data' =>'required',
  1639. 'canvas_data' =>'required',
  1640. ],
  1641. [
  1642. 'website_id.required' => '网站名称不能为空',
  1643. 'template_data.required' => '网站名称不能为空',
  1644. 'canvas_data.required' => 'canvas_data不能为空',
  1645. ]
  1646. );
  1647. if ($validator->fails()) {
  1648. $errorMessage = $validator->errors()->first();
  1649. return Result::error($errorMessage);
  1650. }
  1651. $requireData['user_id'] = Context::get("UserId");
  1652. $result = $this->publicServiceClient->saveWebsiteTemplate($requireData);
  1653. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1654. }
  1655. /**
  1656. * 自助建站-6.返显保存的模版
  1657. * @return array
  1658. */
  1659. public function getWebsiteTemplate()
  1660. {
  1661. $requireData = $this->request->all();
  1662. $validator = $this->validationFactory->make(
  1663. $requireData,
  1664. [
  1665. 'website_id' =>'required',
  1666. ],
  1667. [
  1668. 'website_id.required' => '网站id不能为空',
  1669. ]
  1670. );
  1671. if ($validator->fails()) {
  1672. $errorMessage = $validator->errors()->first();
  1673. return Result::error($errorMessage);
  1674. }
  1675. $requireData['user_id'] = Context::get("UserId");
  1676. $result = $this->publicServiceClient->getWebsiteTemplate($requireData);
  1677. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1678. }
  1679. /**
  1680. * 通栏版式管理-通栏版式列表
  1681. * @return array
  1682. */
  1683. public function getSectorPlaceList()
  1684. {
  1685. $requireData = $this->request->all();
  1686. $validator = $this->validationFactory->make(
  1687. $requireData,
  1688. [
  1689. 'page' => 'required|integer|min:1',
  1690. 'page_size' => 'required|integer|min:1',
  1691. 'type_id' => 'required|integer',
  1692. ],
  1693. [
  1694. 'page.required' => 'page 不能为空',
  1695. 'page.integer' => 'page 必须是整数',
  1696. 'page.min' => 'page 必须大于等于 1',
  1697. 'page_size.required' => 'page_size 不能为空',
  1698. 'page_size.integer' => 'page_size 必须是整数',
  1699. 'page_size.min' => 'page_size 必须大于等于 1',
  1700. 'type_id.required' => '版式类型不能为空',
  1701. 'type_id.integer' => '版式类型必须为整数',
  1702. ]
  1703. );
  1704. if ($validator->fails()) {
  1705. $errorMessage = $validator->errors()->first();
  1706. return Result::error($errorMessage);
  1707. }
  1708. $requireData['user_id'] = Context::get("UserId");
  1709. $result = $this->publicServiceClient->getSectorPlaceList($requireData);
  1710. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1711. }
  1712. /**
  1713. * 通栏版式管理-添加通栏版式
  1714. * @return array
  1715. */
  1716. public function addSectorPlace()
  1717. {
  1718. $requireData = $this->request->all();
  1719. $validator = $this->validationFactory->make(
  1720. $requireData,
  1721. [
  1722. 'name' => 'required',
  1723. 'size_id' => 'required|integer',
  1724. 'sector_img' => 'required',
  1725. 'type' => 'required|integer',
  1726. 'type_id' => 'required|integer',
  1727. ],
  1728. [
  1729. 'name.required' => '版式名称不能为空',
  1730. 'size_id.required' => '通栏尺寸不能为空',
  1731. 'size_id.integer' => '通栏尺寸必须为整数',
  1732. 'sector_img.required' => '通栏图片不能为空',
  1733. 'type.required' => '版式编号不能为空',
  1734. 'type.integer' => '版式编号必须为整数',
  1735. 'type_id.required' => '版式类型id不能为空',
  1736. 'type_id.integer' => '版式类型id必须为整数',
  1737. ]
  1738. );
  1739. if ($validator->fails()) {
  1740. $errorMessage = $validator->errors()->first();
  1741. return Result::error($errorMessage);
  1742. }
  1743. $requireData['user_id'] = Context::get("UserId");
  1744. $result = $this->publicServiceClient->addSectorPlace($requireData);
  1745. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1746. }
  1747. /**
  1748. * 通栏版式管理-编辑通栏版式
  1749. * @return array
  1750. */
  1751. public function upSectorPlace()
  1752. {
  1753. $requireData = $this->request->all();
  1754. $validator = $this->validationFactory->make(
  1755. $requireData,
  1756. [
  1757. 'id' => 'required|integer',
  1758. 'name' => 'required',
  1759. 'size_id' => 'required|integer',
  1760. 'sector_img' => 'required',
  1761. 'type' => 'required|integer',
  1762. 'type_id' => 'required|integer',
  1763. ],
  1764. [
  1765. 'id.required' => '通栏版式id不能为空',
  1766. 'id.integer' => '通栏版式id必须为整数',
  1767. 'name.required' => '版式名称不能为空',
  1768. 'size_id.required' => '通栏尺寸不能为空',
  1769. 'size_id.integer' => '通栏尺寸必须为整数',
  1770. 'sector_img.required' => '通栏图片不能为空',
  1771. 'type.required' => '通栏类型不能为空',
  1772. 'type.integer' => '通栏类型必须为整数',
  1773. 'type_id.required' => '通栏类型id不能为空',
  1774. 'type_id.integer' => '通栏类型id必须为整数',
  1775. ]
  1776. );
  1777. if ($validator->fails()) {
  1778. $errorMessage = $validator->errors()->first();
  1779. return Result::error($errorMessage);
  1780. }
  1781. $requireData['user_id'] = Context::get("UserId");
  1782. $result = $this->publicServiceClient->upSectorPlace($requireData);
  1783. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1784. }
  1785. /**
  1786. * 通栏版式管理-删除通栏版式
  1787. * @return array
  1788. */
  1789. public function delSectorPlace()
  1790. {
  1791. $requireData = $this->request->all();
  1792. $validator = $this->validationFactory->make(
  1793. $requireData,
  1794. [
  1795. 'id' => 'required',
  1796. ],
  1797. [
  1798. 'id.required' => '版式id不能为空',
  1799. ]
  1800. );
  1801. if ($validator->fails()) {
  1802. $errorMessage = $validator->errors()->first();
  1803. return Result::error($errorMessage);
  1804. }
  1805. $requireData['user_id'] = Context::get("UserId");
  1806. $result = $this->publicServiceClient->delSectorPlace($requireData);
  1807. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1808. }
  1809. /**
  1810. * 通栏版式管理-获取通栏详情
  1811. * @return array
  1812. */
  1813. public function getSectorPlaceInfo()
  1814. {
  1815. $requireData = $this->request->all();
  1816. $validator = $this->validationFactory->make(
  1817. $requireData,
  1818. [
  1819. 'id' => 'required',
  1820. ],
  1821. [
  1822. 'id.required' => '通栏版式id不能为空',
  1823. ]
  1824. );
  1825. if ($validator->fails()) {
  1826. $errorMessage = $validator->errors()->first();
  1827. return Result::error($errorMessage);
  1828. }
  1829. $requireData['user_id'] = Context::get("UserId");
  1830. $result = $this->publicServiceClient->getSectorPlaceInfo($requireData);
  1831. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1832. }
  1833. /**
  1834. * 通栏版式管理-通栏版式位置
  1835. * @return array
  1836. */
  1837. public function getSectorPlaceSort()
  1838. {
  1839. $requireData = $this->request->all();
  1840. $validator = $this->validationFactory->make(
  1841. $requireData,
  1842. [
  1843. 'sector_type' => 'required',
  1844. ],
  1845. [
  1846. 'sector_type.required' => '通栏版式id不能为空',
  1847. ]
  1848. );
  1849. if ($validator->fails()) {
  1850. $errorMessage = $validator->errors()->first();
  1851. return Result::error($errorMessage);
  1852. }
  1853. $requireData['user_id'] = Context::get("UserId");
  1854. $result = $this->publicServiceClient->getSectorPlaceSort($requireData);
  1855. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1856. }
  1857. /**
  1858. * 通栏版式管理-获取所有的通栏版式
  1859. * @return array
  1860. */
  1861. public function getAllSectorPlace()
  1862. {
  1863. $requireData = $this->request->all();
  1864. $validator = $this->validationFactory->make(
  1865. $requireData,
  1866. [
  1867. 'type_id' => 'required|integer',
  1868. ],
  1869. [
  1870. 'type_id.required' => '版式类型不能为空',
  1871. 'type_id.integer' => '版式类型必须为整数',
  1872. ]
  1873. );
  1874. if ($validator->fails()) {
  1875. $errorMessage = $validator->errors()->first();
  1876. return Result::error($errorMessage);
  1877. }
  1878. $requireData['user_id'] = Context::get("UserId");
  1879. $result = $this->publicServiceClient->getAllSectorPlace($requireData);
  1880. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1881. }
  1882. /**
  1883. * 通栏版式管理-获取组件类型
  1884. * @return array
  1885. */
  1886. public function getComponentType()
  1887. {
  1888. $requireData = $this->request->all();
  1889. $requireData['user_id'] = Context::get("UserId");
  1890. $result = $this->publicServiceClient->getComponentType($requireData);
  1891. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1892. }
  1893. /**
  1894. * 组件管理-获取所有通栏
  1895. * @return array
  1896. */
  1897. public function getAllSector()
  1898. {
  1899. $requireData = $this->request->all();
  1900. $requireData['user_id'] = Context::get("UserId");
  1901. $result = $this->publicServiceClient->getAllSector($requireData);
  1902. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1903. }
  1904. /**
  1905. * 自助建站-流程管理-获取所有组件
  1906. * @return array
  1907. */
  1908. public function getAllComponent()
  1909. {
  1910. $requireData = $this->request->all();
  1911. $requireData['user_id'] = Context::get("UserId");
  1912. $result = $this->publicServiceClient->getAllComponent($requireData);
  1913. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1914. }
  1915. /**
  1916. * 自助建站-组件管理-获取组件预览图列表
  1917. * @return array
  1918. */
  1919. public function getComponentImgList()
  1920. {
  1921. $requireData = $this->request->all();
  1922. $validator = $this->validationFactory->make(
  1923. $requireData,
  1924. [
  1925. 'component_id' => 'required|int',
  1926. 'page' => 'required|int',
  1927. 'page_size' => 'required|int',
  1928. ],
  1929. [
  1930. 'component_id.required' => '组件编号不能为空',
  1931. 'component_id.int' => '组件编号必须为整数',
  1932. 'page.required' => '第几页不能为空',
  1933. 'page.int' => '第几页必须为整数',
  1934. 'page_size.required' => '每页数量不能为空',
  1935. 'page_size.int' => '每页数量必须为整数',
  1936. ]
  1937. );
  1938. if ($validator->fails()) {
  1939. $errorMessage = $validator->errors()->first();
  1940. return Result::error($errorMessage);
  1941. }
  1942. $requireData['user_id'] = Context::get("UserId");
  1943. $result = $this->publicServiceClient->getComponentImgList($requireData);
  1944. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1945. }
  1946. /**
  1947. * 自助建站-组件管理-添加组件预览图
  1948. * @return array
  1949. */
  1950. public function addComponentImg()
  1951. {
  1952. $requireData = $this->request->all();
  1953. $validator = $this->validationFactory->make(
  1954. $requireData,
  1955. [
  1956. 'component_id' => 'required|int',
  1957. 'template_id' => 'required|int',
  1958. 'img_url' => 'required|string',
  1959. 'img_id' => 'required|int',
  1960. ],
  1961. [
  1962. 'component_id.required' => '组件编号不能为空',
  1963. 'component_id.int' => '组件编号必须为整数',
  1964. 'template_id.required' => '皮肤编号不能为空',
  1965. 'template_id.int' => '皮肤编号必须为整数',
  1966. 'img_url.required' => '图片url不能为空',
  1967. 'img_url.url' => '图片url必须为url格式',
  1968. 'img_id.required' => '图片编号不能为空',
  1969. 'img_id.int' => '图片编号必须为整数',
  1970. ]
  1971. );
  1972. if ($validator->fails()) {
  1973. $errorMessage = $validator->errors()->first();
  1974. return Result::error($errorMessage);
  1975. }
  1976. $requireData['user_id'] = Context::get("UserId");
  1977. $result = $this->publicServiceClient->addComponentImg($requireData);
  1978. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  1979. }
  1980. /**
  1981. * 自助建站-组件管理-修改组件预览图
  1982. * @return array
  1983. */
  1984. public function updateComponentImg()
  1985. {
  1986. $requireData = $this->request->all();
  1987. $validator = $this->validationFactory->make(
  1988. $requireData,
  1989. [
  1990. 'id' => 'required|int',
  1991. 'component_id' => 'required|int',
  1992. 'template_id' => 'required|int',
  1993. 'img_url' => 'required|string',
  1994. 'img_id' => 'required|int',
  1995. ],
  1996. [
  1997. 'id.required' => '组件预览图id不能为空',
  1998. 'id.int' => '组件预览图id必须为整数',
  1999. 'component_id.required' => '组件编号不能为空',
  2000. 'component_id.int' => '组件编号必须为整数',
  2001. 'template_id.required' => '皮肤编号不能为空',
  2002. 'template_id.int' => '皮肤编号必须为整数',
  2003. 'img_url.required' => '图片url不能为空',
  2004. 'img_url.url' => '图片url必须为url格式',
  2005. 'img_id.required' => '图片编号不能为空',
  2006. 'img_id.int' => '图片编号必须为整数',
  2007. ]
  2008. );
  2009. if ($validator->fails()) {
  2010. $errorMessage = $validator->errors()->first();
  2011. return Result::error($errorMessage);
  2012. }
  2013. $requireData['user_id'] = Context::get("UserId");
  2014. $result = $this->publicServiceClient->updateComponentImg($requireData);
  2015. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  2016. }
  2017. /**
  2018. * 自助建站-组件管理-删除组件预览图
  2019. * @return array
  2020. */
  2021. public function delComponentImg()
  2022. {
  2023. $requireData = $this->request->all();
  2024. $validator = $this->validationFactory->make(
  2025. $requireData,
  2026. [
  2027. 'id' => 'required|int',
  2028. ],
  2029. [
  2030. 'id.required' => '组件预览图编号不能为空',
  2031. 'id.int' => '组件预览图编号必须为整数',
  2032. ]
  2033. );
  2034. if ($validator->fails()) {
  2035. $errorMessage = $validator->errors()->first();
  2036. return Result::error($errorMessage);
  2037. }
  2038. $requireData['user_id'] = Context::get("UserId");
  2039. $result = $this->publicServiceClient->delComponentImg($requireData);
  2040. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  2041. }
  2042. /**
  2043. * 自助建站-获取通栏类型
  2044. * @return array
  2045. */
  2046. public function getSectorType()
  2047. {
  2048. $requireData = $this->request->all();
  2049. $result = $this->publicServiceClient->getSectorType($requireData);
  2050. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  2051. }
  2052. public function addStyleCode()
  2053. {
  2054. $requireData = $this->request->all();
  2055. if($requireData['status'] == 1){
  2056. $result = $this->publicServiceClient->addStyleCode($requireData);
  2057. }else{
  2058. $result = $this->publicServiceClient->getStyleCode($requireData);
  2059. }
  2060. return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
  2061. }
  2062. }