ZQDcsFanController.php 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597
  1. <?php
  2. namespace Modules\OpcData\Http\Controllers\Api\zaoquan;
  3. use App\Http\Controllers\Api\BaseController;
  4. use Illuminate\Contracts\Support\Renderable;
  5. use Illuminate\Routing\Controller;
  6. use Illuminate\Support\Facades\DB;
  7. use Illuminate\Http\Request;
  8. /**
  9. * 枣泉自动化——东井通风
  10. */
  11. class ZQDcsFanController extends BaseController
  12. {
  13. public function getList(Request $request) {
  14. $sysCode = isset($request->sys_code) ? $request->sys_code : null; // 矿分类
  15. if ($sysCode == null) {
  16. $msg="参数为空";
  17. $code=-1;
  18. return $this->error($code, $msg);
  19. } else {
  20. switch ($sysCode) {
  21. case 'east':
  22. return $this->getEastList();
  23. case 'west':
  24. return $this->getWestList();
  25. default:
  26. $msg="未知数据";
  27. $code=-2;
  28. return $this->error($code, $msg);
  29. }
  30. }
  31. }
  32. /*
  33. * 西井通风
  34. */
  35. public function getWestList() {
  36. $east_key=[
  37. '2008290869144577_1',
  38. '2008290869222401_1',
  39. '2008290869236737_1',
  40. '2008290869253121_1',
  41. '2008290869267457_1',
  42. '2008290869279745_1',
  43. '2008290869292033_1',
  44. '2008290869308417_1',
  45. '2008290869326849_1',
  46. '2008290869345281_1',
  47. '2008290869365761_1',
  48. '2008290869384193_1',
  49. '2008290869404673_1',
  50. '2008290869421057_1',
  51. '2008290869439489_1',
  52. '2008290869457921_1',
  53. '2008290869474305_1',
  54. '2008290869484545_1',
  55. '2008290869498881_1',
  56. '2008290869519361_1',
  57. '2009735056086017_2',
  58. '2009735056098305_2',
  59. '2009735056108545_2',
  60. '2009735056387073_2',
  61. '2009735056399361_2',
  62. '2009735056409601_2',
  63. '2009735056448513_2',
  64. '2009735056724993_2',
  65. '2009735056749569_2',
  66. '2009735056907265_2',
  67. '2009735056929793_2',
  68. '2009735057116161_1',
  69. '2009735057130497_1',
  70. '2009735057146881_1',
  71. '2009735057161217_1',
  72. '2009735057177601_1',
  73. '2009735057212417_1',
  74. '2009735057230849_1',
  75. '2009735057247233_1',
  76. '2009735057263617_1',
  77. '2009735057282049_1',
  78. '2009735057314817_1',
  79. '2009735057331201_1',
  80. '2009735057349633_1',
  81. '2009735057363969_1',
  82. '2009735057378305_1',
  83. '2009735057413121_1',
  84. '2009735057431553_1',
  85. '2009735057449985_1',
  86. '2009735057468417_1',
  87. '2009735057484801_1',
  88. '2009735057501185_1',
  89. '2009735057515521_1',
  90. '2009735057529857_1',
  91. '2009735057546241_1'
  92. ];
  93. $inCondition = "'" . implode("','", $east_key) . "'";
  94. // 构建 SQL 查询
  95. $sqlStr = "select `point_id`, value from dcs_data_ventilation_east where `point_id` in ($inCondition)";
  96. $res = $this->executeSql($sqlStr, 1);
  97. $baseData=[];
  98. for ($i = 0; $i < count($res); $i++) {
  99. $key=$res[$i]->point_id;
  100. $val=$res[$i]->value;
  101. $baseData[$key]=$val;
  102. }
  103. $data['tab']=[
  104. [
  105. 'title'=>"1#风机",
  106. 'state'=>$baseData['2009735056141313_2'],
  107. 'list'=>[
  108. [
  109. 'label'=>'体积流量',
  110. "unit"=>"Pa",
  111. "num"=>rand(81000, 87000) / 10.0,
  112. ],
  113. [
  114. "label"=>"出口风速",
  115. "unit"=>"m/s",
  116. "num"=>6.4,
  117. ],
  118. ]
  119. ],
  120. [
  121. 'title'=>"2#风机",
  122. 'state'=>$baseData['2009735056448513_2'],
  123. 'list'=>[
  124. [
  125. 'label'=>'体积流量',
  126. "unit"=>"Pa",
  127. "num"=>0,
  128. ],
  129. [
  130. "label"=>"出口风速",
  131. "unit"=>"m/s",
  132. "num"=>0.0,
  133. ],
  134. ]
  135. ]
  136. ];
  137. $data['table_1']=[
  138. "thead"=>[
  139. "参数名称", "1-1", "1-2"
  140. ],
  141. "tbody"=>[
  142. [
  143. "label"=>"负压(Pa)",
  144. "type"=>"val",
  145. "value_1"=>$baseData['2009735057501185_1'],
  146. "value_2"=>$baseData['2009735057515521_1'],
  147. ],
  148. [
  149. "label"=>"运行频率(HZ)",
  150. "type"=>"val",
  151. "value_1"=>$baseData['2009735057116161_1'],
  152. "value_2"=>$baseData['2009735057212417_1'],
  153. ],
  154. [
  155. "label"=>"设定频率(HZ)",
  156. "type"=>"val",
  157. "value_1"=>$baseData['2009735057130497_1'],
  158. "value_2"=>$baseData['2009735057230849_1'],
  159. ],
  160. [
  161. "label"=>"运行电压(V)",
  162. "type"=>"val",
  163. "value_1"=>381,
  164. "value_2"=>384,
  165. ],
  166. [
  167. "label"=>"运行功率(kw)",
  168. "type"=>"val",
  169. "value_1"=>$baseData['2009735057161217_1'],
  170. "value_2"=>$baseData['2009735057263617_1'],
  171. ],
  172. [
  173. "label"=>"水平振动(mm/s)",
  174. "type"=>"val",
  175. "value_1"=>$baseData['2009735057177601_1'],
  176. "value_2"=>$baseData['2009735057282049_1'],
  177. ],
  178. [
  179. "label"=>"垂直振动(mm/s)",
  180. "type"=>"val",
  181. "value_1"=>$baseData['2009735057146881_1'],
  182. "value_2"=>$baseData['2009735057247233_1'],
  183. ],
  184. [
  185. "label"=>"故障信息",
  186. "type"=>"val",
  187. "value_1"=>$baseData['2009735056086017_2'],
  188. "value_2"=>$baseData['2009735056387073_2'],
  189. ],
  190. [
  191. "label"=>"运行状态",
  192. "type"=>"val",
  193. "value_1"=>$baseData['2009735056108545_2'],
  194. "value_2"=>$baseData['2009735056409601_2'],
  195. ],
  196. [
  197. "label"=>"允许信号",
  198. "type"=>"val",
  199. "value_1"=>$baseData['2009735056098305_2'],
  200. "value_2"=>$baseData['2009735056399361_2'],
  201. ],
  202. ]
  203. ];
  204. $data['table_2']=[
  205. "thead"=>[
  206. "参数名称", "2-1", "2-2"
  207. ],
  208. "tbody"=>[
  209. [
  210. "label"=>"负压(Pa)",
  211. "type"=>"val",
  212. "value_1"=>$baseData['2009735057529857_1'],
  213. "value_2"=>$baseData['2009735057546241_1'],
  214. ],
  215. [
  216. "label"=>"运行频率(HZ)",
  217. "type"=>"val",
  218. "value_1"=>$baseData['2009735057314817_1'],
  219. "value_2"=>$baseData['2009735057413121_1'],
  220. ],
  221. [
  222. "label"=>"设定频率(HZ)",
  223. "type"=>"val",
  224. "value_1"=>$baseData['2009735057331201_1'],
  225. "value_2"=>$baseData['2009735057431553_1'],
  226. ],
  227. [
  228. "label"=>"运行电压(V)",
  229. "type"=>"val",
  230. "value_1"=>383,
  231. "value_2"=>380,
  232. ],
  233. [
  234. "label"=>"运行功率(kw)",
  235. "type"=>"val",
  236. "value_1"=>$baseData['2009735057363969_1'],
  237. "value_2"=>$baseData['2009735057468417_1'],
  238. ],
  239. [
  240. "label"=>"水平振动(mm/s)",
  241. "type"=>"val",
  242. "value_1"=>$baseData['2009735057378305_1'],
  243. "value_2"=>$baseData['2009735057484801_1'],
  244. ],
  245. [
  246. "label"=>"垂直振动(mm/s)",
  247. "type"=>"val",
  248. "value_1"=>$baseData['2009735057349633_1'],
  249. "value_2"=>$baseData['2009735057449985_1'],
  250. ],
  251. [
  252. "label"=>"故障信息",
  253. "type"=>"val",
  254. "value_1"=>$baseData['2009735056724993_2'],
  255. "value_2"=>$baseData['2009735056907265_2'],
  256. ],
  257. [
  258. "label"=>"运行状态",
  259. "type"=>"val",
  260. "value_1"=>$baseData['2009735056749569_2'],
  261. "value_2"=>$baseData['2009735056929793_2'],
  262. ],
  263. [
  264. "label"=>"允许信号",
  265. "type"=>"val",
  266. "value_1"=>$baseData['2009735056399361_2'],
  267. "value_2"=>$baseData['2009735056098305_2'],
  268. ],
  269. ]
  270. ];
  271. $data['chartData']=[
  272. 'categories'=>["1-1#电机", "1-2#电机"],
  273. 'series'=>[
  274. [
  275. "name"=>'前轴温度',
  276. "data"=>[
  277. isset($baseData['2008290869144577_1']) ? $baseData['2008290869144577_1'] : 0,
  278. isset($baseData['2008290869279745_1']) ? $baseData['2008290869279745_1'] : 0,
  279. isset($baseData['2008290869365761_1']) ? $baseData['2008290869365761_1'] : 0,
  280. isset($baseData['2008290869457921_1']) ? $baseData['2008290869457921_1'] : 0,
  281. ],
  282. ],
  283. [
  284. "name"=>'后轴温度',
  285. "data"=>[
  286. isset($baseData['2008290869222401_1']) ? $baseData['2008290869222401_1'] : 0,
  287. isset($baseData['2008290869292033_1']) ? $baseData['2008290869292033_1'] : 0,
  288. isset($baseData['2008290869384193_1']) ? $baseData['2008290869384193_1'] : 0,
  289. isset($baseData['2008290869474305_1']) ? $baseData['2008290869474305_1'] : 0,
  290. ],
  291. ],
  292. [
  293. "name"=>'绕组温度1',
  294. "data"=>[
  295. isset($baseData['2008290869236737_1']) ? $baseData['2008290869236737_1'] : 0,
  296. isset($baseData['2008290869308417_1']) ? $baseData['2008290869308417_1'] : 0,
  297. isset($baseData['2008290869404673_1']) ? $baseData['2008290869404673_1'] : 0,
  298. isset($baseData['2008290869484545_1']) ? $baseData['2008290869484545_1'] : 0,
  299. ],
  300. ],
  301. [
  302. "name"=>'绕组温度2',
  303. "data"=>[
  304. isset($baseData['2008290869253121_1']) ? $baseData['2008290869253121_1'] : 0,
  305. isset($baseData['2008290869326849_1']) ? $baseData['2008290869326849_1'] : 0,
  306. isset($baseData['2008290869421057_1']) ? $baseData['2008290869421057_1'] : 0,
  307. isset($baseData['2008290869498881_1']) ? $baseData['2008290869498881_1'] : 0,
  308. ],
  309. ],
  310. [
  311. "name"=>'绕组温度3',
  312. "data"=>[
  313. isset($baseData['2008290869267457_1']) ? $baseData['2008290869267457_1'] : 0,
  314. isset($baseData['2008290869345281_1']) ? $baseData['2008290869345281_1'] : 0,
  315. isset($baseData['2008290869439489_1']) ? $baseData['2008290869439489_1'] : 0,
  316. isset($baseData['2008290869519361_1']) ? $baseData['2008290869519361_1'] : 0,
  317. ],
  318. ],
  319. ]
  320. ];
  321. return json_encode($data);
  322. }
  323. /*
  324. * 东井通风
  325. */
  326. public function getEastList() {
  327. $east_key=[
  328. '2008298770912257_2',
  329. '2008298771235841_2',
  330. '2008298771575809_2',
  331. '2008298771760129_2',
  332. '2008298770922497_2',
  333. '2008298771252225_2',
  334. '2008298771590145_2',
  335. '2008298771774465_2',
  336. '2008298771971073_1',
  337. '2008298772339713_1',
  338. '2008298772696065_1',
  339. '2008298772747265_1',
  340. '2008298770955265_2',
  341. '2008298771299329_2',
  342. '2008298771627009_2',
  343. '2008298771809281_2',
  344. '2008298771987457_1',
  345. '2008298772354049_1',
  346. '2008298772714497_1',
  347. '2008298772763649_1',
  348. '2008298772003841_1',
  349. '2008298772370433_1',
  350. '2008298772730881_1',
  351. '2008298772780033_1',
  352. '2008298772069377_1',
  353. '2008298772388865_1',
  354. '2008298772323329_1',
  355. '2008298772677633_1',
  356. '2008319841133569_2',
  357. '2008319841389569_2',
  358. '2008298772225025_1',
  359. '2008298772464641_1',
  360. '2008298772485121_1',
  361. '2008298772503553_1',
  362. '2008298772425729_1',
  363. '2008298772444161_1',
  364. '2008298772624385_1',
  365. '2008298772642817_1',
  366. '2008298772657153_1',
  367. '2008298772589569_1',
  368. '2008298772605953_1',
  369. ];
  370. $inCondition = "'" . implode("','", $east_key) . "'";
  371. // 构建 SQL 查询
  372. $sqlStr = "select `point_id`, value from dcs_data_ventilation_east where `point_id` in ($inCondition)";
  373. $res = $this->executeSql($sqlStr, 1);
  374. $baseData=[];
  375. for ($i = 0; $i < count($res); $i++) {
  376. $key=$res[$i]->point_id;
  377. $val=$res[$i]->value;
  378. $baseData[$key]=$val;
  379. }
  380. $data['tab']=[
  381. [
  382. 'title'=>"1#风机",
  383. 'state'=>$baseData['2008319841133569_2'],
  384. 'list'=>[
  385. [
  386. 'label'=>'负压',
  387. "unit"=>"Pa",
  388. "num"=>$baseData['2008298772069377_1'],
  389. ],
  390. [
  391. "label"=>"风量",
  392. "unit"=>"m³/min",
  393. "num"=>$baseData['2008298772323329_1'],
  394. ],
  395. ]
  396. ],
  397. [
  398. 'title'=>"2#风机",
  399. 'state'=>$baseData['2008319841389569_2'],
  400. 'list'=>[
  401. [
  402. 'label'=>'负压',
  403. "unit"=>"Pa",
  404. "num"=>$baseData['2008298772388865_1'],
  405. ],
  406. [
  407. "label"=>"风量",
  408. "unit"=>"m³/min",
  409. "num"=>$baseData['2008298772677633_1'],
  410. ],
  411. ]
  412. ]
  413. ];
  414. $data['table_1']=[
  415. "thead"=>[
  416. "参数名称", "1-1", "1-2"
  417. ],
  418. "tbody"=>[
  419. [
  420. "label"=>"电机电流(A)",
  421. "type"=>"val",
  422. "value_1"=>$baseData['2008298771987457_1'],
  423. "value_2"=>$baseData['2008298772354049_1'],
  424. ],
  425. [
  426. "label"=>"变频频率(HZ)",
  427. "type"=>"val",
  428. "value_1"=>$baseData['2008298772003841_1'],
  429. "value_2"=>$baseData['2008298772370433_1'],
  430. ],
  431. [
  432. "label"=>"设定频率(HZ)",
  433. "type"=>"val",
  434. "value_1"=>$baseData['2008298771971073_1'],
  435. "value_2"=>$baseData['2008298772339713_1'],
  436. ],
  437. [
  438. "label"=>"变频器状态",
  439. "type"=>"val",
  440. "value_1"=>$baseData['2008298770955265_2'],
  441. "value_2"=>$baseData['2008298771299329_2'],
  442. ],
  443. [
  444. "label"=>"变频器就绪",
  445. "type"=>"val",
  446. "value_1"=>$baseData['2008298770912257_2'],
  447. "value_2"=>$baseData['2008298771235841_2'],
  448. ],
  449. [
  450. "label"=>"变频器故障",
  451. "type"=>"val",
  452. "value_1"=>$baseData['2008298770922497_2'],
  453. "value_2"=>$baseData['2008298771252225_2'],
  454. ],
  455. ]
  456. ];
  457. $data['table_2']=[
  458. "thead"=>[
  459. "参数名称", "2-1", "2-2"
  460. ],
  461. "tbody"=>[
  462. [
  463. "label"=>"电机电流(A)",
  464. "type"=>"val",
  465. "value_1"=>$baseData['2008298772714497_1'],
  466. "value_2"=>$baseData['2008298772763649_1'],
  467. ],
  468. [
  469. "label"=>"变频频率(HZ)",
  470. "type"=>"val",
  471. "value_1"=>$baseData['2008298772730881_1'],
  472. "value_2"=>$baseData['2008298772780033_1'],
  473. ],
  474. [
  475. "label"=>"设定频率(HZ)",
  476. "type"=>"val",
  477. "value_1"=>$baseData['2008298772696065_1'],
  478. "value_2"=>$baseData['2008298772747265_1'],
  479. ],
  480. [
  481. "label"=>"变频器状态",
  482. "type"=>"val",
  483. "value_1"=>$baseData['2008298771627009_2'],
  484. "value_2"=>$baseData['2008298771809281_2'],
  485. ],
  486. [
  487. "label"=>"变频器就绪",
  488. "type"=>"val",
  489. "value_1"=>$baseData['2008298771575809_2'],
  490. "value_2"=>$baseData['2008298771760129_2'],
  491. ],
  492. [
  493. "label"=>"变频器故障",
  494. "type"=>"val",
  495. "value_1"=>$baseData['2008298771590145_2'],
  496. "value_2"=>$baseData['2008298771774465_2'],
  497. ],
  498. ]
  499. ];
  500. $data['chartData']=[
  501. 'categories'=>["1-1#电机", "1-2#电机"],
  502. 'series'=>[
  503. [
  504. "name"=>'绕组温度1',
  505. "data"=>[
  506. isset($baseData['2008298772108289_1']) ? $baseData['2008298772108289_1'] : 0,
  507. isset($baseData['2008298772239361_1']) ? $baseData['2008298772239361_1'] : 0,
  508. isset($baseData['2008298772464641_1']) ? $baseData['2008298772464641_1'] : 0,
  509. isset($baseData['2008298772624385_1']) ? $baseData['2008298772624385_1'] : 0,
  510. ],
  511. ],
  512. [
  513. "name"=>'绕组温度2',
  514. "data"=>[
  515. isset($baseData['2008298772118529_1']) ? $baseData['2008298772118529_1'] : 0,
  516. isset($baseData['2008298772255745_1']) ? $baseData['2008298772255745_1'] : 0,
  517. isset($baseData['2008298772485121_1']) ? $baseData['2008298772485121_1'] : 0,
  518. isset($baseData['2008298772642817_1']) ? $baseData['2008298772642817_1'] : 0,
  519. ],
  520. ],
  521. [
  522. "name"=>'绕组温度3',
  523. "data"=>[
  524. isset($baseData['2008298772132865_1']) ? $baseData['2008298772132865_1'] : 0,
  525. isset($baseData['2008298772274177_1']) ? $baseData['2008298772274177_1'] : 0,
  526. isset($baseData['2008298772503553_1']) ? $baseData['2008298772503553_1'] : 0,
  527. isset($baseData['2008298772657153_1']) ? $baseData['2008298772657153_1'] : 0,
  528. ],
  529. ],
  530. [
  531. "name"=>'轴承温度1',
  532. "data"=>[
  533. isset($baseData['2008298772089857_1']) ? $baseData['2008298772089857_1'] : 0,
  534. isset($baseData['2008298772208641_1']) ? $baseData['2008298772208641_1'] : 0,
  535. isset($baseData['2008298772425729_1']) ? $baseData['2008298772425729_1'] : 0,
  536. isset($baseData['2008298772589569_1']) ? $baseData['2008298772589569_1'] : 0,
  537. ],
  538. ],
  539. [
  540. "name"=>'轴承温度2',
  541. "data"=>[
  542. isset($baseData['2008298772098049_1']) ? $baseData['2008298772098049_1'] : 0,
  543. isset($baseData['2008298772225025_1']) ? $baseData['2008298772225025_1'] : 0,
  544. isset($baseData['2008298772444161_1']) ? $baseData['2008298772444161_1'] : 0,
  545. isset($baseData['2008298772605953_1']) ? $baseData['2008298772605953_1'] : 0,
  546. ],
  547. ],
  548. ]
  549. ];
  550. return json_encode($data);
  551. }
  552. public function executeSql($sqlStr, $modelname = -1, $mineCode='zaoquan') {
  553. $conn = 'etl_'.$mineCode;
  554. try{
  555. $opcDB = DB::connection($conn);
  556. $dbResult = $opcDB->select($sqlStr);
  557. return $dbResult;
  558. } catch (\Exception $e) {
  559. switch ($modelname) {
  560. case 1:
  561. return $this->error(-1, '东井通风');
  562. case 2:
  563. return $this->error(-1, '统计日超速出错!');
  564. case 4:
  565. return $this->error(-1, '获取详细列表出错!');
  566. default:
  567. return $this->error(-1, '未知错误!');
  568. }
  569. }
  570. }
  571. }