RtAnalogDataMapper.xml 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.bizmatics.persistence.mapper.RtAnalogDataMapper">
  4. <select id="selectTotalLoad" resultType="java.lang.Double">
  5. select COALESCE(SUM(P),0)
  6. from user_site as us
  7. inner join device as d
  8. on us.site_id = d.site_id
  9. inner join rt_analog_data as rad
  10. on d.device_code = rad.deviceName
  11. <where>
  12. <if test="userId != null and userId != 0">
  13. and us.user_id = #{userId}
  14. </if>
  15. <if test="siteId != null and siteId != 0">
  16. and us.site_id = #{siteId}
  17. </if>
  18. </where>
  19. </select>
  20. <select id="getOneMap" resultType="java.util.Map">
  21. select
  22. `Busot` as '母线停电次数',
  23. `COS` as '三相功率因数',
  24. `COSa` as 'A相功率因数',
  25. `COSb` as 'B相功率因数',
  26. `COSc` as 'C相功率因数',
  27. `Demand` as '实时有功需量',
  28. `DevResetTimes` as '设备复位次数',
  29. `DeviceTemp` as '设备温度',
  30. `Epn` as '三相反向有功电度',
  31. `Epn1` as '尖段反向有功电度',
  32. `Epn2` as '峰段反向有功电度',
  33. `Epn3` as '平段反向有功电度',
  34. `Epn4` as '谷段反向有功电度',
  35. `Epp` as '三相正向有功电度',
  36. `Epp1` as '尖段正向有功电度',
  37. `Epp2` as '峰段正向有功电度',
  38. `Epp3` as '平段正向有功电度',
  39. `Epp4` as '谷段正向有功电度',
  40. `Eqn` as '三相反向无功电度',
  41. `Eqp` as '三相正向无功电度',
  42. `F` as '频率',
  43. `I0` as '零序电流',
  44. `I2` as '负序电流',
  45. `IHa` as 'A相总谐波电流',
  46. `IHb` as 'B相总谐波电流',
  47. `IHc` as 'C相总谐波电流',
  48. `Ia` as 'A相电流',
  49. `Ib` as 'B相电流',
  50. `Ic` as 'C相电流',
  51. `Ir` as '剩余电流',
  52. `LastDayMD` as '昨日有功最大需量',
  53. `LastDayMDt` as '昨日有功最大需量发生时间',
  54. `P` as '三相总有功功率',
  55. `Pa` as 'A相有功功率',
  56. `Pb` as 'B相有功功率',
  57. `Pc` as 'C相有功功率',
  58. `Q` as '三相总无功功率',
  59. `Qa` as 'A相无功功率',
  60. `Qb` as 'B相无功功率',
  61. `Qc` as 'C相无功功率',
  62. `SignalIntensity` as '信号强度',
  63. `T1` as '第1路温度',
  64. `T2` as '第2路温度',
  65. `T3` as '第3路温度',
  66. `T4` as '第4路温度',
  67. `THDUa` as 'A相电压THD',
  68. `THDUb` as 'B相电压THD',
  69. `THDUc` as 'C相电压THD',
  70. `Ua` as 'A相电压',
  71. `Uab` as 'AB线电压',
  72. `Ub` as 'B相电压',
  73. `Ubc` as 'BC线电压',
  74. `UblU0` as '零序电压不平衡度',
  75. `UblU2` as '负序电压不平衡度',
  76. `Uc` as 'C相电压',
  77. `Uca` as 'CA线电压',
  78. `Udt` as '电压暂降次数',
  79. `Ul` as '线路侧电压',
  80. `Upt` as '电压暂升次数',
  81. `Ust` as '电压短时中断次数',
  82. `freezingTime` as '冻结时间',
  83. `dataTime` as '上报时间'
  84. from user_site as us
  85. inner join device as d
  86. on us.site_id = d.site_id
  87. inner join rt_analog_data as rad
  88. on d.device_code = rad.deviceName
  89. <where>
  90. <if test="siteId != null and siteId != 0">
  91. us.site_id = #{siteId}
  92. </if>
  93. <if test="userId != null and userId != 0">
  94. and us.user_id = #{userId}
  95. </if>
  96. </where>
  97. </select>
  98. <select id="getDataReportMap" resultType="com.bizmatics.model.HtAnalogData">
  99. select
  100. *
  101. from user_site as us
  102. inner join device as d
  103. on us.site_id = d.site_id
  104. inner join ht_analog_data as rad
  105. on d.device_code = rad.deviceName
  106. <where>
  107. and d.enable=1
  108. <if test="siteId != null and siteId != 0">
  109. and us.site_id = #{siteId}
  110. </if>
  111. <if test="startTime != null and endTime != null">
  112. and rad.dataTime BETWEEN #{startTime} and #{endTime}
  113. </if>
  114. </where>
  115. </select>
  116. <select id="getDeviceListMap" resultType="com.bizmatics.model.Device">
  117. select
  118. *
  119. from user_site as us
  120. inner join device as d
  121. on us.site_id = d.site_id
  122. <where>
  123. and d.enable=1
  124. <if test="siteId != null and siteId != 0">
  125. and d.site_id = #{siteId}
  126. </if>
  127. </where>
  128. </select>
  129. <select id="getDataReportDMap" resultType="com.bizmatics.model.HtAnalogData">
  130. SELECT
  131. t.deviceName AS deviceName,
  132. AVG(t.Busot) AS Busot,
  133. AVG(t.COS) AS COS,
  134. AVG(t.COSa) AS COSa,
  135. AVG(t.COSb) AS COSb,
  136. AVG(t.COSc) AS COSc,
  137. AVG(t.Demand) AS Demand,
  138. AVG(t.DevResetTimes) AS DevResetTimes,
  139. AVG(t.DeviceTemp) AS DeviceTemp,
  140. AVG(t.Epn) AS Epn,
  141. AVG(t.Epn1) AS Epn1,
  142. AVG(t.Epn2) AS Epn2,
  143. AVG(t.Epn3) AS Epn3,
  144. AVG(t.Epn4) AS Epn4,
  145. AVG(t.Epp) AS Epp,
  146. AVG(t.Epp1) AS Epp1,
  147. AVG(t.Epp2) AS Epp2,
  148. AVG(t.Epp3) AS Epp3,
  149. AVG(t.Epp4) AS Epp4,
  150. AVG(t.Eqn) AS Eqn,
  151. AVG(t.Eqp) AS Eqp,
  152. AVG(t.F) AS F,
  153. AVG(t.I0) AS I0,
  154. AVG(t.I2) AS I2,
  155. AVG(t.IHa) AS IHa,
  156. AVG(t.IHb) AS IHb,
  157. AVG(t.IHc) AS IHc,
  158. AVG(t.Ia) AS Ia,
  159. AVG(t.Ib) AS Ib,
  160. AVG(t.Ic) AS Ic,
  161. AVG(t.Ir) AS Ir,
  162. AVG(t.LastDayMD) AS LastDayMD,
  163. AVG(t.LastDayMDt) AS LastDayMDt,
  164. AVG(t.P) AS P,
  165. AVG(t.Pa) AS Pa,
  166. AVG(t.Pb) AS Pb,
  167. AVG(t.Pc) AS Pc,
  168. AVG(t.Q) AS Q,
  169. AVG(t.Qa) AS Qa,
  170. AVG(t.Qb) AS Qb,
  171. AVG(t.Qc) AS Qc,
  172. AVG(t.SignalIntensity) AS SignalIntensity,
  173. AVG(t.T1) AS T1,
  174. AVG(t.T2) AS T2,
  175. AVG(t.T3) AS T3,
  176. AVG(t.T4) AS T4,
  177. AVG(t.THDUa) AS THDUa,
  178. AVG(t.THDUb) AS THDUb,
  179. AVG(t.THDUc) AS THDUc,
  180. AVG(t.Ua) AS Ua,
  181. AVG(t.Uab) AS Uab,
  182. AVG(t.Ub) AS Ub,
  183. AVG(t.Ubc) AS Ubc,
  184. AVG(t.UblU0) AS UblU0,
  185. AVG(t.UblU2) AS UblU2,
  186. AVG(t.Uc) AS Uc,
  187. AVG(t.Uca) AS Uca,
  188. AVG(t.Udt) AS Udt,
  189. AVG(t.Ul) AS Ul,
  190. AVG(t.Upt) AS Upt,
  191. AVG(t.Ust) AS Ust,
  192. t.freezingTime AS freezingTime,
  193. t.dataTime
  194. FROM
  195. (
  196. SELECT
  197. deviceName,
  198. Busot,
  199. COS,
  200. COSa,
  201. COSb,
  202. COSc,
  203. Demand,
  204. DevResetTimes,
  205. DeviceTemp,
  206. Epn,
  207. Epn1,
  208. Epn2,
  209. Epn3,
  210. Epn4,
  211. Epp,
  212. Epp1,
  213. Epp2,
  214. Epp3,
  215. Epp4,
  216. Eqn,
  217. Eqp,
  218. F,
  219. I0,
  220. I2,
  221. IHa,
  222. IHb,
  223. IHc,
  224. Ia,
  225. Ib,
  226. Ic,
  227. Ir,
  228. LastDayMD,
  229. LastDayMDt,
  230. P,
  231. Pa,
  232. Pb,
  233. Pc,
  234. Q,
  235. Qa,
  236. Qb,
  237. Qc,
  238. SignalIntensity,
  239. T1,
  240. T2,
  241. T3,
  242. T4,
  243. THDUa,
  244. THDUb,
  245. THDUc,
  246. Ua,
  247. Uab,
  248. Ub,
  249. Ubc,
  250. UblU0,
  251. UblU2,
  252. Uc,
  253. Uca,
  254. Udt,
  255. Ul,
  256. Upt,
  257. Ust,
  258. freezingTime,
  259. date_format(dataTime, '%Y-%m-%d') AS dataTime
  260. FROM
  261. ht_analog_data
  262. <where>
  263. and deviceName in
  264. <foreach item="item" collection="deviceCode" open="(" separator="," close=")">
  265. #{item.deviceCode}
  266. </foreach>
  267. <if test="endTime != null and startTime != null">
  268. and dataTime BETWEEN #{startTime} and #{endTime}
  269. </if>
  270. </where>
  271. ) t
  272. GROUP BY
  273. t.dataTime
  274. ORDER BY
  275. t.dataTime
  276. </select>
  277. <select id="getDataReportMMap" resultType="com.bizmatics.model.HtAnalogData">
  278. SELECT
  279. t.deviceName AS deviceName,
  280. AVG(t.Busot) AS Busot,
  281. AVG(t.COS) AS COS,
  282. AVG(t.COSa) AS COSa,
  283. AVG(t.COSb) AS COSb,
  284. AVG(t.COSc) AS COSc,
  285. AVG(t.Demand) AS Demand,
  286. AVG(t.DevResetTimes) AS DevResetTimes,
  287. AVG(t.DeviceTemp) AS DeviceTemp,
  288. AVG(t.Epn) AS Epn,
  289. AVG(t.Epn1) AS Epn1,
  290. AVG(t.Epn2) AS Epn2,
  291. AVG(t.Epn3) AS Epn3,
  292. AVG(t.Epn4) AS Epn4,
  293. AVG(t.Epp) AS Epp,
  294. AVG(t.Epp1) AS Epp1,
  295. AVG(t.Epp2) AS Epp2,
  296. AVG(t.Epp3) AS Epp3,
  297. AVG(t.Epp4) AS Epp4,
  298. AVG(t.Eqn) AS Eqn,
  299. AVG(t.Eqp) AS Eqp,
  300. AVG(t.F) AS F,
  301. AVG(t.I0) AS I0,
  302. AVG(t.I2) AS I2,
  303. AVG(t.IHa) AS IHa,
  304. AVG(t.IHb) AS IHb,
  305. AVG(t.IHc) AS IHc,
  306. AVG(t.Ia) AS Ia,
  307. AVG(t.Ib) AS Ib,
  308. AVG(t.Ic) AS Ic,
  309. AVG(t.Ir) AS Ir,
  310. AVG(t.LastDayMD) AS LastDayMD,
  311. AVG(t.LastDayMDt) AS LastDayMDt,
  312. AVG(t.P) AS P,
  313. AVG(t.Pa) AS Pa,
  314. AVG(t.Pb) AS Pb,
  315. AVG(t.Pc) AS Pc,
  316. AVG(t.Q) AS Q,
  317. AVG(t.Qa) AS Qa,
  318. AVG(t.Qb) AS Qb,
  319. AVG(t.Qc) AS Qc,
  320. AVG(t.SignalIntensity) AS SignalIntensity,
  321. AVG(t.T1) AS T1,
  322. AVG(t.T2) AS T2,
  323. AVG(t.T3) AS T3,
  324. AVG(t.T4) AS T4,
  325. AVG(t.THDUa) AS THDUa,
  326. AVG(t.THDUb) AS THDUb,
  327. AVG(t.THDUc) AS THDUc,
  328. AVG(t.Ua) AS Ua,
  329. AVG(t.Uab) AS Uab,
  330. AVG(t.Ub) AS Ub,
  331. AVG(t.Ubc) AS Ubc,
  332. AVG(t.UblU0) AS UblU0,
  333. AVG(t.UblU2) AS UblU2,
  334. AVG(t.Uc) AS Uc,
  335. AVG(t.Uca) AS Uca,
  336. AVG(t.Udt) AS Udt,
  337. AVG(t.Ul) AS Ul,
  338. AVG(t.Upt) AS Upt,
  339. AVG(t.Ust) AS Ust,
  340. t.freezingTime AS freezingTime,
  341. t.dataTime
  342. FROM
  343. (
  344. SELECT
  345. deviceName,
  346. Busot,
  347. COS,
  348. COSa,
  349. COSb,
  350. COSc,
  351. Demand,
  352. DevResetTimes,
  353. DeviceTemp,
  354. Epn,
  355. Epn1,
  356. Epn2,
  357. Epn3,
  358. Epn4,
  359. Epp,
  360. Epp1,
  361. Epp2,
  362. Epp3,
  363. Epp4,
  364. Eqn,
  365. Eqp,
  366. F,
  367. I0,
  368. I2,
  369. IHa,
  370. IHb,
  371. IHc,
  372. Ia,
  373. Ib,
  374. Ic,
  375. Ir,
  376. LastDayMD,
  377. LastDayMDt,
  378. P,
  379. Pa,
  380. Pb,
  381. Pc,
  382. Q,
  383. Qa,
  384. Qb,
  385. Qc,
  386. SignalIntensity,
  387. T1,
  388. T2,
  389. T3,
  390. T4,
  391. THDUa,
  392. THDUb,
  393. THDUc,
  394. Ua,
  395. Uab,
  396. Ub,
  397. Ubc,
  398. UblU0,
  399. UblU2,
  400. Uc,
  401. Uca,
  402. Udt,
  403. Ul,
  404. Upt,
  405. Ust,
  406. freezingTime,
  407. date_format(dataTime, '%Y-%m-%d %H:00:00') AS dataTime
  408. FROM
  409. ht_analog_data
  410. <where>
  411. and deviceName in
  412. <foreach item="item" collection="deviceCode" open="(" separator="," close=")">
  413. #{item.deviceCode}
  414. </foreach>
  415. <if test="endTime != null and startTime != null">
  416. and dataTime BETWEEN #{startTime} and #{endTime}
  417. </if>
  418. </where>
  419. ) t
  420. GROUP BY
  421. t.dataTime
  422. ORDER BY
  423. t.dataTime
  424. </select>
  425. <select id="getDataReportMap1" resultType="com.bizmatics.model.HtAnalogData">
  426. select
  427. rad.*
  428. from user_site as us
  429. inner join device as d
  430. on us.site_id = d.site_id
  431. inner join ht_analog_data as rad
  432. on d.device_code = rad.deviceName
  433. <where>
  434. and d.enable=1
  435. <if test="siteId != null and siteId != 0">
  436. and us.site_id = #{siteId}
  437. </if>
  438. <if test="startTime != null and endTime != null">
  439. and rad.dataTime BETWEEN #{startTime} and #{endTime}
  440. </if>
  441. </where>
  442. </select>
  443. <select id="getDataReportDMap1" resultType="com.bizmatics.model.HtAnalogData">
  444. SELECT
  445. t.id as id
  446. t.deviceName AS deviceName,
  447. AVG(t.Busot) AS Busot,
  448. AVG(t.COS) AS COS,
  449. AVG(t.COSa) AS COSa,
  450. AVG(t.COSb) AS COSb,
  451. AVG(t.COSc) AS COSc,
  452. AVG(t.Demand) AS Demand,
  453. AVG(t.DevResetTimes) AS DevResetTimes,
  454. AVG(t.DeviceTemp) AS DeviceTemp,
  455. AVG(t.Epn) AS Epn,
  456. AVG(t.Epn1) AS Epn1,
  457. AVG(t.Epn2) AS Epn2,
  458. AVG(t.Epn3) AS Epn3,
  459. AVG(t.Epn4) AS Epn4,
  460. AVG(t.Epp) AS Epp,
  461. AVG(t.Epp1) AS Epp1,
  462. AVG(t.Epp2) AS Epp2,
  463. AVG(t.Epp3) AS Epp3,
  464. AVG(t.Epp4) AS Epp4,
  465. AVG(t.Eqn) AS Eqn,
  466. AVG(t.Eqp) AS Eqp,
  467. AVG(t.F) AS F,
  468. AVG(t.I0) AS I0,
  469. AVG(t.I2) AS I2,
  470. AVG(t.IHa) AS IHa,
  471. AVG(t.IHb) AS IHb,
  472. AVG(t.IHc) AS IHc,
  473. AVG(t.Ia) AS Ia,
  474. AVG(t.Ib) AS Ib,
  475. AVG(t.Ic) AS Ic,
  476. AVG(t.Ir) AS Ir,
  477. AVG(t.LastDayMD) AS LastDayMD,
  478. AVG(t.LastDayMDt) AS LastDayMDt,
  479. AVG(t.P) AS P,
  480. AVG(t.Pa) AS Pa,
  481. AVG(t.Pb) AS Pb,
  482. AVG(t.Pc) AS Pc,
  483. AVG(t.Q) AS Q,
  484. AVG(t.Qa) AS Qa,
  485. AVG(t.Qb) AS Qb,
  486. AVG(t.Qc) AS Qc,
  487. AVG(t.SignalIntensity) AS SignalIntensity,
  488. AVG(t.T1) AS T1,
  489. AVG(t.T2) AS T2,
  490. AVG(t.T3) AS T3,
  491. AVG(t.T4) AS T4,
  492. AVG(t.THDUa) AS THDUa,
  493. AVG(t.THDUb) AS THDUb,
  494. AVG(t.THDUc) AS THDUc,
  495. AVG(t.Ua) AS Ua,
  496. AVG(t.Uab) AS Uab,
  497. AVG(t.Ub) AS Ub,
  498. AVG(t.Ubc) AS Ubc,
  499. AVG(t.UblU0) AS UblU0,
  500. AVG(t.UblU2) AS UblU2,
  501. AVG(t.Uc) AS Uc,
  502. AVG(t.Uca) AS Uca,
  503. AVG(t.Udt) AS Udt,
  504. AVG(t.Ul) AS Ul,
  505. AVG(t.Upt) AS Upt,
  506. AVG(t.Ust) AS Ust,
  507. t.freezingTime AS freezingTime,
  508. t.dataTime
  509. FROM
  510. (
  511. SELECT
  512. id,
  513. deviceName,
  514. Busot,
  515. COS,
  516. COSa,
  517. COSb,
  518. COSc,
  519. Demand,
  520. DevResetTimes,
  521. DeviceTemp,
  522. Epn,
  523. Epn1,
  524. Epn2,
  525. Epn3,
  526. Epn4,
  527. Epp,
  528. Epp1,
  529. Epp2,
  530. Epp3,
  531. Epp4,
  532. Eqn,
  533. Eqp,
  534. F,
  535. I0,
  536. I2,
  537. IHa,
  538. IHb,
  539. IHc,
  540. Ia,
  541. Ib,
  542. Ic,
  543. Ir,
  544. LastDayMD,
  545. LastDayMDt,
  546. P,
  547. Pa,
  548. Pb,
  549. Pc,
  550. Q,
  551. Qa,
  552. Qb,
  553. Qc,
  554. SignalIntensity,
  555. T1,
  556. T2,
  557. T3,
  558. T4,
  559. THDUa,
  560. THDUb,
  561. THDUc,
  562. Ua,
  563. Uab,
  564. Ub,
  565. Ubc,
  566. UblU0,
  567. UblU2,
  568. Uc,
  569. Uca,
  570. Udt,
  571. Ul,
  572. Upt,
  573. Ust,
  574. freezingTime,
  575. date_format(dataTime, '%Y-%m-%d') AS dataTime
  576. FROM
  577. ht_analog_data
  578. <where>
  579. and deviceName in
  580. <foreach item="item" collection="deviceCode" open="(" separator="," close=")">
  581. #{item.deviceCode}
  582. </foreach>
  583. <if test="endTime != null and startTime != null">
  584. and dataTime BETWEEN #{startTime} and #{endTime}
  585. </if>
  586. </where>
  587. ) t
  588. GROUP BY
  589. t.dataTime
  590. ORDER BY
  591. t.dataTime
  592. </select>
  593. <select id="getDataReportMMap1" resultType="com.bizmatics.model.HtAnalogData">
  594. SELECT
  595. t.id,
  596. t.deviceName AS deviceName,
  597. AVG(t.Busot) AS Busot,
  598. AVG(t.COS) AS COS,
  599. AVG(t.COSa) AS COSa,
  600. AVG(t.COSb) AS COSb,
  601. AVG(t.COSc) AS COSc,
  602. AVG(t.Demand) AS Demand,
  603. AVG(t.DevResetTimes) AS DevResetTimes,
  604. AVG(t.DeviceTemp) AS DeviceTemp,
  605. AVG(t.Epn) AS Epn,
  606. AVG(t.Epn1) AS Epn1,
  607. AVG(t.Epn2) AS Epn2,
  608. AVG(t.Epn3) AS Epn3,
  609. AVG(t.Epn4) AS Epn4,
  610. AVG(t.Epp) AS Epp,
  611. AVG(t.Epp1) AS Epp1,
  612. AVG(t.Epp2) AS Epp2,
  613. AVG(t.Epp3) AS Epp3,
  614. AVG(t.Epp4) AS Epp4,
  615. AVG(t.Eqn) AS Eqn,
  616. AVG(t.Eqp) AS Eqp,
  617. AVG(t.F) AS F,
  618. AVG(t.I0) AS I0,
  619. AVG(t.I2) AS I2,
  620. AVG(t.IHa) AS IHa,
  621. AVG(t.IHb) AS IHb,
  622. AVG(t.IHc) AS IHc,
  623. AVG(t.Ia) AS Ia,
  624. AVG(t.Ib) AS Ib,
  625. AVG(t.Ic) AS Ic,
  626. AVG(t.Ir) AS Ir,
  627. AVG(t.LastDayMD) AS LastDayMD,
  628. AVG(t.LastDayMDt) AS LastDayMDt,
  629. AVG(t.P) AS P,
  630. AVG(t.Pa) AS Pa,
  631. AVG(t.Pb) AS Pb,
  632. AVG(t.Pc) AS Pc,
  633. AVG(t.Q) AS Q,
  634. AVG(t.Qa) AS Qa,
  635. AVG(t.Qb) AS Qb,
  636. AVG(t.Qc) AS Qc,
  637. AVG(t.SignalIntensity) AS SignalIntensity,
  638. AVG(t.T1) AS T1,
  639. AVG(t.T2) AS T2,
  640. AVG(t.T3) AS T3,
  641. AVG(t.T4) AS T4,
  642. AVG(t.THDUa) AS THDUa,
  643. AVG(t.THDUb) AS THDUb,
  644. AVG(t.THDUc) AS THDUc,
  645. AVG(t.Ua) AS Ua,
  646. AVG(t.Uab) AS Uab,
  647. AVG(t.Ub) AS Ub,
  648. AVG(t.Ubc) AS Ubc,
  649. AVG(t.UblU0) AS UblU0,
  650. AVG(t.UblU2) AS UblU2,
  651. AVG(t.Uc) AS Uc,
  652. AVG(t.Uca) AS Uca,
  653. AVG(t.Udt) AS Udt,
  654. AVG(t.Ul) AS Ul,
  655. AVG(t.Upt) AS Upt,
  656. AVG(t.Ust) AS Ust,
  657. t.freezingTime AS freezingTime,
  658. t.dataTime
  659. FROM
  660. (
  661. SELECT
  662. id,
  663. deviceName,
  664. Busot,
  665. COS,
  666. COSa,
  667. COSb,
  668. COSc,
  669. Demand,
  670. DevResetTimes,
  671. DeviceTemp,
  672. Epn,
  673. Epn1,
  674. Epn2,
  675. Epn3,
  676. Epn4,
  677. Epp,
  678. Epp1,
  679. Epp2,
  680. Epp3,
  681. Epp4,
  682. Eqn,
  683. Eqp,
  684. F,
  685. I0,
  686. I2,
  687. IHa,
  688. IHb,
  689. IHc,
  690. Ia,
  691. Ib,
  692. Ic,
  693. Ir,
  694. LastDayMD,
  695. LastDayMDt,
  696. P,
  697. Pa,
  698. Pb,
  699. Pc,
  700. Q,
  701. Qa,
  702. Qb,
  703. Qc,
  704. SignalIntensity,
  705. T1,
  706. T2,
  707. T3,
  708. T4,
  709. THDUa,
  710. THDUb,
  711. THDUc,
  712. Ua,
  713. Uab,
  714. Ub,
  715. Ubc,
  716. UblU0,
  717. UblU2,
  718. Uc,
  719. Uca,
  720. Udt,
  721. Ul,
  722. Upt,
  723. Ust,
  724. freezingTime,
  725. date_format(dataTime, '%Y-%m-%d %H:00:00') AS dataTime
  726. FROM
  727. ht_analog_data
  728. <where>
  729. and deviceName in
  730. <foreach item="item" collection="deviceCode" open="(" separator="," close=")">
  731. #{item.deviceCode}
  732. </foreach>
  733. <if test="endTime != null and startTime != null">
  734. and dataTime BETWEEN #{startTime} and #{endTime}
  735. </if>
  736. </where>
  737. ) t
  738. GROUP BY
  739. t.dataTime
  740. ORDER BY
  741. t.dataTime
  742. </select>
  743. <select id="list" resultType="com.bizmatics.model.RtAnalogData">
  744. select deviceName,P
  745. from user_site as us
  746. inner join device as d
  747. on us.site_id = d.site_id
  748. inner join rt_analog_data as rad
  749. on d.device_code = rad.deviceName
  750. <where>
  751. and d.enable=1
  752. <if test="userId != null and userId != 0">
  753. and us.user_id = #{userId}
  754. </if>
  755. </where>
  756. </select>
  757. <select id="evaluationReportList" resultType="com.bizmatics.model.vo.EvaluationReporVo">
  758. SELECT
  759. a.id,
  760. a.device_code,
  761. a.device_name,
  762. AVG(b.COS) AS COS,
  763. AVG(b.Ia) AS Ia,
  764. AVG(b.Ib) AS Ib,
  765. AVG(b.Ic) AS Ic,
  766. AVG(b.Ua) AS Ua,
  767. AVG(b.Ub) AS Ub,
  768. AVG(b.Uc) AS Uc,
  769. c.voltage_level,
  770. d.rated_current
  771. FROM
  772. device AS a
  773. LEFT JOIN ht_analog_data AS b ON a.device_code = b.deviceName
  774. LEFT JOIN site_dynamic_properties AS c ON a.site_id = c.site_id
  775. LEFT JOIN device_attribute AS d ON a.device_code = d.monitor_device_code
  776. <where>
  777. AND a.enable = 1
  778. AND a.device_type = 1
  779. AND a.site_id = #{siteId}
  780. AND b.dataTime BETWEEN #{startTime}
  781. AND #{endtime}
  782. </where>
  783. GROUP BY
  784. a.device_code
  785. </select>
  786. <select id="getEvaluationReportList" resultType="com.bizmatics.model.vo.EvaluationReporVo">
  787. SELECT
  788. a.id,
  789. a.device_code,
  790. a.device_name,
  791. AVG(b.COS) AS COS,
  792. AVG(b.Ia) AS Ia,
  793. AVG(b.Ib) AS Ib,
  794. AVG(b.Ic) AS Ic,
  795. AVG(b.Ua) AS Ua,
  796. AVG(b.Ub) AS Ub,
  797. AVG(b.Uc) AS Uc,
  798. c.voltage_level,
  799. d.rated_current
  800. FROM
  801. device AS a
  802. LEFT JOIN ${table} AS b ON a.device_code = b.deviceName
  803. LEFT JOIN site_dynamic_properties AS c ON a.site_id = c.site_id
  804. LEFT JOIN device_attribute AS d ON a.device_code = d.monitor_device_code
  805. <where>
  806. and a.device_code in
  807. <foreach item="item" collection="deviceCode" open="(" separator="," close=")">
  808. #{item}
  809. </foreach>
  810. AND a.site_id = #{siteId}
  811. AND a.enable = 1
  812. AND a.device_type = 1
  813. AND b.dataTime BETWEEN #{startTime}
  814. AND #{endtime}
  815. </where>
  816. GROUP BY
  817. a.device_code
  818. </select>
  819. <select id="getRtAnalogDataList" resultType="com.bizmatics.model.RtAnalogData">
  820. SELECT *
  821. FROM ${table}
  822. WHERE deviceName = #{deviceCode}
  823. </select>
  824. <select id="getP" resultType="com.bizmatics.model.RtAnalogData">
  825. SELECT t.deviceName, t.p, t.dataTime
  826. FROM rt_analog_data t
  827. INNER JOIN (
  828. SELECT deviceName, MAX(id) AS max_id
  829. FROM rt_analog_data
  830. WHERE deviceName IN
  831. <foreach item="item" collection="deviceCodes" open="(" separator="," close=")">
  832. #{item}
  833. </foreach>
  834. GROUP BY deviceName
  835. ) latest ON t.deviceName = latest.deviceName AND t.id = latest.max_id
  836. </select>
  837. </mapper>