eleFire.js 88 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388
  1. /*
  2. 电气火灾数据对接
  3. */
  4. // const URL = document.location.protocol+"//"+window.location.host;
  5. //动态获取登录用户名
  6. // const aaa = sessionStorage.getItem('V_LOGINNAME');
  7. // const LOGIN_NAME = aaa;
  8. updateUserState({
  9. "queryJson": '{"STATE":1}' //用户名需更改为动态获取到的
  10. });
  11. function updateUserState(params = {}) {
  12. $.ajax({
  13. type: "POST",
  14. url: URL + "/YtIoT/iot/userstate/updateUserState",
  15. data: params,
  16. success: function(data) {},
  17. error: function() {
  18. console.log("发生错误")
  19. },
  20. complete: function() {
  21. // console.log("ajax请求完事,最终操作在这里完成")
  22. }
  23. });
  24. }
  25. //建筑下拉
  26. getNameList();
  27. function getNameList(queryParam = {}) {
  28. ajaxRequest(GET_NAME_LIST_DATA, "POST", queryParam, function(result) {
  29. let data = result.RESULT;
  30. let items = '';
  31. data.forEach(function(item, key) {
  32. items += `<option value="${item.owner_id}">${item.owner_name}</option>`
  33. })
  34. $('#building').html(items);
  35. }, function(errorMsg) {
  36. // alert("请求数据失败!");
  37. }, 2)
  38. };
  39. //日期筛选
  40. layui.use('laydate', function() {
  41. var laydate = layui.laydate;
  42. ///年月选择器
  43. laydate.render({
  44. elem: '#chooseTime',
  45. type: 'month',
  46. max: -30, //7天后
  47. trigger: 'click', //呼出事件改成click
  48. done: function(value, date, endDate) {
  49. setTimeout(function() {
  50. getListData(getSearchParamObj());
  51. }, 100)
  52. }
  53. });
  54. });
  55. //建筑筛选
  56. $("#building").change(function() {
  57. setTimeout(function() {
  58. getListData(getSearchParamObj());
  59. }, 100)
  60. });
  61. // 数据请求传参
  62. getListData(getSearchParamObj());
  63. function getListData(queryParam = {}) {
  64. ajaxRequest(ELE_FIRE_DATA, "POST", queryParam, function(result) {
  65. if (result.totalCount != 0) {
  66. /*
  67. 主页面数据对接 start
  68. */
  69. //数据统计
  70. var data_statistics = result.RESULT[0].data_statistics;
  71. $('.total').html(data_statistics.alarm_number);
  72. $('.solved').html(data_statistics.processing_number);
  73. $('.unsolve').html(data_statistics.unprocessed_number);
  74. // 环状饼图定制 (数据统计计算)
  75. (function() {
  76. // 实例化对象
  77. var myChart = echarts.init(document.querySelector(".bar-3d .chart"));
  78. // 生成扇形的曲面参数方程,用于 series-surface.parametricEquation
  79. function getParametricEquation(startRatio, endRatio, isSelected, isHovered, k, height) {
  80. // 计算
  81. let midRatio = (startRatio + endRatio) / 2;
  82. let startRadian = startRatio * Math.PI * 2;
  83. let endRadian = endRatio * Math.PI * 2;
  84. let midRadian = midRatio * Math.PI * 2;
  85. // 如果只有一个扇形,则不实现选中效果。
  86. if (startRatio === 0 && endRatio === 1) {
  87. isSelected = false;
  88. }
  89. // 通过扇形内径/外径的值,换算出辅助参数 k(默认值 1/3)
  90. k = typeof k !== 'undefined' ? k : 1 / 3;
  91. // 计算选中效果分别在 x 轴、y 轴方向上的位移(未选中,则位移均为 0)
  92. let offsetX = isSelected ? Math.cos(midRadian) * 0.1 : 0;
  93. let offsetY = isSelected ? Math.sin(midRadian) * 0.1 : 0;
  94. // 计算高亮效果的放大比例(未高亮,则比例为 1)
  95. let hoverRate = isHovered ? 1.05 : 1;
  96. // 返回曲面参数方程
  97. return {
  98. u: {
  99. min: -Math.PI,
  100. max: Math.PI * 3,
  101. step: Math.PI / 32
  102. },
  103. v: {
  104. min: 0,
  105. max: Math.PI * 2,
  106. step: Math.PI / 20
  107. },
  108. x: function(u, v) {
  109. if (u < startRadian) {
  110. return offsetX + Math.cos(startRadian) * (1 + Math.cos(v) * k) * hoverRate;
  111. }
  112. if (u > endRadian) {
  113. return offsetX + Math.cos(endRadian) * (1 + Math.cos(v) * k) * hoverRate;
  114. }
  115. return offsetX + Math.cos(u) * (1 + Math.cos(v) * k) * hoverRate;
  116. },
  117. y: function(u, v) {
  118. if (u < startRadian) {
  119. return offsetY + Math.sin(startRadian) * (1 + Math.cos(v) * k) * hoverRate;
  120. }
  121. if (u > endRadian) {
  122. return offsetY + Math.sin(endRadian) * (1 + Math.cos(v) * k) * hoverRate;
  123. }
  124. return offsetY + Math.sin(u) * (1 + Math.cos(v) * k) * hoverRate;
  125. },
  126. z: function(u, v) {
  127. if (u < -Math.PI * 0.5) {
  128. return Math.sin(u);
  129. }
  130. if (u > Math.PI * 2.5) {
  131. return Math.sin(u);
  132. }
  133. return Math.sin(v) > 0 ? 1 : -1;
  134. }
  135. };
  136. }
  137. // 生成模拟 3D 饼图的配置项
  138. function getPie3D(pieData, internalDiameterRatio) {
  139. let series = [];
  140. let sumValue = 0;
  141. let startValue = 0;
  142. let endValue = 0;
  143. let legendData = [];
  144. let k = typeof internalDiameterRatio !== 'undefined' ? 1 : 1 / 3;
  145. // 为每一个饼图数据,生成一个 series-surface 配置
  146. for (let i = 0; i < pieData.length; i++) {
  147. sumValue += pieData[i].value;
  148. let seriesItem = {
  149. name: typeof pieData[i].name === 'undefined' ? `series${i}` : pieData[i].name,
  150. type: 'surface',
  151. parametric: true,
  152. wireframe: {
  153. show: false
  154. },
  155. pieData: pieData[i],
  156. pieStatus: {
  157. selected: false,
  158. hovered: false,
  159. k: k
  160. }
  161. };
  162. if (typeof pieData[i].itemStyle != 'undefined') {
  163. let itemStyle = {};
  164. typeof pieData[i].itemStyle.color != 'undefined' ? itemStyle.color = pieData[i].itemStyle.color : null;
  165. typeof pieData[i].itemStyle.opacity != 'undefined' ? itemStyle.opacity = pieData[i].itemStyle.opacity : null;
  166. seriesItem.itemStyle = itemStyle;
  167. }
  168. series.push(seriesItem);
  169. }
  170. // 使用上一次遍历时,计算出的数据和 sumValue,调用 getParametricEquation 函数,
  171. // 向每个 series-surface 传入不同的参数方程 series-surface.parametricEquation,也就是实现每一个扇形。
  172. for (let i = 0; i < series.length; i++) {
  173. endValue = startValue + series[i].pieData.value;
  174. // console.log(series[i]);
  175. series[i].pieData.startRatio = startValue / sumValue;
  176. series[i].pieData.endRatio = endValue / sumValue;
  177. series[i].parametricEquation = getParametricEquation(series[i].pieData.startRatio, series[i].pieData.endRatio, false, false, k, series[i].pieData.value);
  178. startValue = endValue;
  179. legendData.push(series[i].name);
  180. }
  181. // 准备待返回的配置项,把准备好的 legendData、series 传入。
  182. let option = {
  183. tooltip: {
  184. backgroundColor: '#12DFE0',
  185. formatter: params => {
  186. if (params.seriesName !== 'mouseoutSeries') {
  187. // return `${params.seriesName}<br/><span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:${params.color};"></span>${option.series[params.seriesIndex].pieData.value}%`;
  188. return `${params.seriesName}: ${option.series[params.seriesIndex].pieData.value}%`;
  189. }
  190. }
  191. },
  192. xAxis3D: {
  193. min: -1,
  194. max: 1
  195. },
  196. yAxis3D: {
  197. min: -1,
  198. max: 1
  199. },
  200. zAxis3D: {
  201. min: -1,
  202. max: 1
  203. },
  204. grid3D: {
  205. show: false,
  206. boxHeight: 50,
  207. top: '-10%',
  208. // bottom: '80%',
  209. // environment: '../images/3d-bg.png', //aa背景色
  210. viewControl: {
  211. distance: 260, //aa距离
  212. alpha: 21, //aa角度
  213. beta: 60, //aa角度
  214. zoomSensitivity: false //是否开启缩放和平移
  215. },
  216. },
  217. series: series
  218. };
  219. return option;
  220. }
  221. // 传入数据生成 option
  222. var option = getPie3D([{
  223. name: '已处理率',
  224. value: data_statistics.treatment_rate,
  225. itemStyle: {
  226. opacity: 0.5,
  227. color: 'rgba(0,127,244,.8)',
  228. }
  229. }, {
  230. name: '未处理率',
  231. value: data_statistics.untreated_rate,
  232. itemStyle: {
  233. opacity: 0.5,
  234. color: 'rgba(209,126,23,.8)',
  235. }
  236. }
  237. ], 2);
  238. // 把配置给实例对象
  239. myChart.setOption(option);
  240. window.addEventListener("resize", function() {
  241. myChart.resize();
  242. });
  243. })();
  244. // 折线图定制 (数据离散率挖掘)
  245. (function() {
  246. let dispersion_rate = result.RESULT[0].dispersion_rate;
  247. // 结论数据渲染
  248. var items = '';
  249. var conclusion = dispersion_rate.conclusion
  250. for (x in conclusion) {
  251. xIndex = x.substr(x.length - 1, 1);
  252. items += `<p>${xIndex}、${conclusion[x]}</p>`
  253. }
  254. $('.divergence .summaryDetail').html(items);
  255. // 三相电压
  256. let a = [];
  257. let b = [];
  258. let c = [];
  259. let d = [];
  260. let voltage = dispersion_rate.voltage;
  261. voltage.forEach(function(item, index) {
  262. a.push(item.variance)
  263. b.push(item.standard_deviation)
  264. c.push(item.average_value)
  265. d.push(item.data_time)
  266. });
  267. // 三相电流
  268. let a2 = [];
  269. let b2 = [];
  270. let c2 = [];
  271. let d2 = [];
  272. let electric_current = dispersion_rate.electric_current;
  273. electric_current.forEach(function(item, index) {
  274. a2.push(item.variance)
  275. b2.push(item.standard_deviation)
  276. c2.push(item.average_value)
  277. d2.push(item.data_time)
  278. });
  279. // 三相温度
  280. let a3 = [];
  281. let b3 = [];
  282. let c3 = [];
  283. let d3 = [];
  284. let temperature = dispersion_rate.temperature;
  285. temperature.forEach(function(item, index) {
  286. a3.push(item.variance)
  287. b3.push(item.standard_deviation)
  288. c3.push(item.average_value)
  289. d3.push(item.data_time)
  290. });
  291. // 漏电电流
  292. let a4 = [];
  293. let b4 = [];
  294. let c4 = [];
  295. let d4 = [];
  296. let leakage_current = dispersion_rate.leakage_current;
  297. leakage_current.forEach(function(item, index) {
  298. a4.push(item.variance)
  299. b4.push(item.standard_deviation)
  300. c4.push(item.average_value)
  301. d4.push(item.data_time)
  302. });
  303. var sortData = [{
  304. sortName: "三相电压",
  305. data: [a, b, c, d]
  306. },
  307. {
  308. sortName: "三相电流",
  309. data: [a2, b2, c2, d2]
  310. },
  311. {
  312. sortName: "三相温度",
  313. data: [a3, b3, c3, d3]
  314. }, {
  315. sortName: "漏电电流",
  316. data: [a4, b4, c4, d4]
  317. },
  318. ];
  319. var xData = function() {
  320. var data = [];
  321. for (var i = 1; i < leakage_current.length + 1; i++) {
  322. data.push(i);
  323. }
  324. return data;
  325. }();
  326. // 1. 实例化对象
  327. var myChart = echarts.init(document.querySelector(".divergence .chart"));
  328. // 2.指定配置
  329. var option = {
  330. color: [{
  331. colorStops: [{
  332. offset: 0,
  333. color: '#F9860C' // 0% 处的颜色
  334. }, {
  335. offset: 1,
  336. color: '#fff' // 100% 处的颜色
  337. }],
  338. },
  339. {
  340. colorStops: [{
  341. offset: 0,
  342. color: '#07E1F1' // 0% 处的颜色
  343. }, {
  344. offset: 1,
  345. color: '#0456CB' // 100% 处的颜色
  346. }],
  347. },
  348. {
  349. colorStops: [{
  350. offset: 0,
  351. color: '#11F90C' // 0% 处的颜色
  352. }, {
  353. offset: 1,
  354. color: '#3FC713' // 100% 处的颜色
  355. }],
  356. }
  357. ],
  358. tooltip: {
  359. trigger: "axis",
  360. textStyle: {
  361. align: 'left' //图例左对齐
  362. },
  363. backgroundColor: '#12DFE0',
  364. formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
  365. },
  366. legend: {
  367. // 如果series 对象有name 值,则 legend可以不用写data
  368. itemGap: 20,
  369. itemHeight: 2,
  370. itemWidth: 15,
  371. icon: 'rect',
  372. textStyle: {
  373. color: "#fff"
  374. },
  375. top: "bottom",
  376. },
  377. grid: {
  378. top: "0%",
  379. left: "1%",
  380. right: "1%",
  381. bottom: "20%",
  382. show: true, // 显示边框
  383. borderWidth: '0', //去除边框
  384. containLabel: true // 包含刻度文字在内
  385. },
  386. xAxis: {
  387. type: "category",
  388. boundaryGap: false,
  389. data: d,
  390. axisTick: {
  391. show: true
  392. },
  393. axisLabel: {
  394. interval: 0,
  395. show: false,
  396. // color: "#AADDFF" // 文本颜色
  397. },
  398. axisLine: {
  399. lineStyle: {
  400. color: 'rgba(255,255,255,.3)'
  401. }
  402. },
  403. splitNumber: 8,
  404. splitLine: {
  405. show: false
  406. },
  407. splitArea: {
  408. show: true,
  409. areaStyle: {
  410. color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
  411. }
  412. }
  413. },
  414. yAxis: {
  415. // scale: true,
  416. // min: 'dataMin',
  417. type: "value",
  418. axisTick: {
  419. show: false // 去除刻度线
  420. },
  421. axisLabel: {
  422. show: false // 去除文本
  423. },
  424. axisLine: {
  425. show: false // 去除轴线
  426. },
  427. splitLine: {
  428. lineStyle: {
  429. color: "#012f4a" // 分割线颜色
  430. }
  431. }
  432. },
  433. series: [{
  434. symbol: "none",
  435. name: "方差",
  436. type: "line",
  437. data: a
  438. },
  439. {
  440. symbol: "none",
  441. name: "标准差",
  442. type: "line",
  443. data: b
  444. }, {
  445. symbol: "none",
  446. name: "平均值",
  447. type: "line",
  448. data: c
  449. }
  450. ]
  451. };
  452. myChart.setOption(option);
  453. window.addEventListener("resize", function() {
  454. myChart.resize();
  455. });
  456. // 点击切换效果
  457. $(".divergence .tab-line").on("click", "a", function() {
  458. $(this).addClass('active').siblings().removeClass('active')
  459. var obj = sortData[$(this).index()];
  460. option.series[0].data = obj.data[0];
  461. option.series[1].data = obj.data[1];
  462. option.series[2].data = obj.data[2];
  463. // 重新渲染
  464. myChart.setOption(option);
  465. });
  466. })();
  467. // 折线图定制 (电老化分析)
  468. (function() {
  469. let electrical_aging = result.RESULT[0].electrical_aging;
  470. // console.log(electrical_aging)
  471. // 结论数据渲染
  472. var items = '';
  473. var conclusion = electrical_aging.conclusion
  474. for (x in conclusion) {
  475. xIndex = x.substr(x.length - 1, 1);
  476. items += `<p>${xIndex}、${conclusion[x]}</p>`
  477. }
  478. $('.oldAnalysis .summaryDetail').html(items);
  479. // 异常设备监控电缆数据
  480. let a = [];
  481. let b = [];
  482. let data_time = [];
  483. let abnormal_equipment = electrical_aging.abnormal_equipment;
  484. abnormal_equipment.forEach(function(item, index) {
  485. a.push(item.electric_current)
  486. b.push(item.voltage)
  487. data_time.push(item.data_time)
  488. });
  489. // console.log(data_time)
  490. // 漏电告警数据
  491. let a2 = [];
  492. let b2 = [];
  493. let data_time2 = [];
  494. let leakage_alarm = electrical_aging.leakage_alarm;
  495. leakage_alarm.forEach(function(item, index) {
  496. a2.push(item.electric_current)
  497. b2.push(item.voltage)
  498. data_time2.push(item.data_time)
  499. });
  500. // console.log(data_time2)
  501. var sortData = [{
  502. sortName: "异常设备",
  503. data: [a, b]
  504. },
  505. {
  506. sortName: "漏电告警",
  507. data: [a2, b2]
  508. }
  509. ];
  510. var xData = function() {
  511. var data = [];
  512. for (var i = 1; i < leakage_alarm.length + 1; i++) {
  513. data.push(i);
  514. }
  515. return data;
  516. }();
  517. // 1. 实例化对象
  518. var myChart = echarts.init(document.querySelector(".oldAnalysis .chart"));
  519. // 2.指定配置
  520. var option = {
  521. color: ["#FF9C00", "#0096FF"], // 通过这个color修改两条线的颜色
  522. tooltip: {
  523. trigger: "axis",
  524. textStyle: {
  525. align: 'left' //图例左对齐
  526. },
  527. backgroundColor: '#12DFE0',
  528. formatter: function(params) {
  529. if ($('#active').hasClass('active')) {
  530. var res = params[0].seriesName + ':' + params[0].value + 'mA<br />' + params[1].seriesName + ':' + params[1].value + 'V<br />时间:' + data_time[params[0].dataIndex];
  531. } else {
  532. var res = params[0].seriesName + ':' + params[0].value + 'mA<br />' + params[1].seriesName + ':' + params[1].value + 'V<br />时间:' + data_time2[params[0].dataIndex];
  533. }
  534. return res;
  535. },
  536. // formatter: '{a0}: {c0}<br />{a1}: {c1}<br />时间:' + chooseTime + ''
  537. },
  538. legend: {
  539. // 如果series 对象有name 值,则 legend可以不用写data
  540. itemGap: 20,
  541. itemHeight: 2,
  542. itemWidth: 15,
  543. icon: 'rect',
  544. textStyle: {
  545. color: "#fff"
  546. },
  547. top: "bottom",
  548. },
  549. grid: {
  550. top: "0%",
  551. left: "1%",
  552. right: "1%",
  553. bottom: "15%",
  554. show: true, // 显示边框
  555. borderWidth: '0', //去除边框
  556. containLabel: true // 包含刻度文字在内
  557. },
  558. xAxis: {
  559. type: "category",
  560. boundaryGap: false,
  561. data: xData,
  562. axisTick: {
  563. show: false // 去除刻度线
  564. },
  565. axisLabel: {
  566. color: "#AADDFF" // 文本颜色
  567. },
  568. axisLine: {
  569. show: false // 去除轴线
  570. }
  571. },
  572. yAxis: {
  573. type: "value",
  574. axisTick: {
  575. show: false // 去除刻度线
  576. },
  577. axisLabel: {
  578. show: false // 去除文本
  579. },
  580. axisLine: {
  581. show: false // 去除轴线
  582. },
  583. splitLine: {
  584. lineStyle: {
  585. color: "#012f4a" // 分割线颜色
  586. }
  587. }
  588. },
  589. series: [{
  590. symbol: "none",
  591. name: "电流",
  592. type: "line",
  593. smooth: true, // true 可以让我们的折线显示带有弧度
  594. areaStyle: {
  595. normal: {
  596. color: new echarts.graphic.LinearGradient(
  597. 0,
  598. 0,
  599. 0,
  600. 1, [{
  601. offset: 0,
  602. color: "rgba(255,156,0, 0.4)"
  603. },
  604. {
  605. offset: 0.8,
  606. color: "rgba(255,156,0, 0.3)"
  607. }
  608. ],
  609. false
  610. ),
  611. shadowColor: "rgba(0, 0, 0, 0.1)"
  612. }
  613. },
  614. data: sortData[0].data[0]
  615. },
  616. {
  617. symbol: "none",
  618. name: "电压",
  619. type: "line",
  620. smooth: true,
  621. areaStyle: {
  622. normal: {
  623. color: new echarts.graphic.LinearGradient(
  624. 0,
  625. 0,
  626. 0,
  627. 1, [{
  628. offset: 0,
  629. color: "rgba(0,150,255,0.5)"
  630. },
  631. {
  632. offset: 0.8,
  633. color: "rgba(0,150,255, 0.1)"
  634. }
  635. ],
  636. false
  637. ),
  638. shadowColor: "rgba(0, 0, 0, 0.1)"
  639. }
  640. },
  641. data: sortData[0].data[1]
  642. }
  643. ]
  644. };
  645. myChart.setOption(option);
  646. window.addEventListener("resize", function() {
  647. myChart.resize();
  648. });
  649. // 点击切换效果
  650. $(".oldAnalysis .tab-line").on("click", "a", function() {
  651. $(this).addClass('active').siblings().removeClass('active')
  652. var obj = sortData[$(this).index()];
  653. option.series[0].data = obj.data[0];
  654. option.series[1].data = obj.data[1];
  655. // 重新渲染
  656. myChart.setOption(option);
  657. });
  658. })();
  659. // 柱状图定制 (热老化分析)
  660. (function() {
  661. let thermal_aging = result.RESULT[0].thermal_aging;
  662. // 结论数据渲染
  663. var items = '';
  664. var conclusion = thermal_aging.conclusion
  665. for (x in conclusion) {
  666. xIndex = x.substr(x.length - 1, 1);
  667. items += `<p>${xIndex}、${conclusion[x]}</p>`
  668. }
  669. $('.hotAnalysis .summaryDetail').html(items);
  670. let a = [];
  671. let b = [];
  672. let c = [];
  673. let data_time = [];
  674. let visualization = thermal_aging.visualization;
  675. visualization.forEach(function(item, index) {
  676. a.push(item.generation_temperature)
  677. b.push(item.ambient_temperature)
  678. c.push(item.Cable_temperature)
  679. data_time.push(item.data_time)
  680. });
  681. var sortData = [{
  682. data: [
  683. // 三个数组是因为有3条线
  684. a, b, c
  685. ]
  686. }];
  687. var xData = function() {
  688. var data = [];
  689. for (var i = 1; i < visualization.length + 1; i++) {
  690. data.push(i);
  691. }
  692. return data;
  693. }();
  694. // 1. 实例化对象
  695. var myChart = echarts.init(document.querySelector(".hotAnalysis .chart"));
  696. // var xData = position;
  697. var xData = xData;
  698. // 2.指定配置
  699. var option = {
  700. backgroundColor: 'transparent',
  701. color: ['rgba(5,238,231,.6)', 'rgba(153,153,255,.6)', 'rgba(255,147,180,.6)'],
  702. tooltip: {
  703. backgroundColor: '#12DFE0',
  704. //提示框组件
  705. trigger: 'axis',
  706. formatter: function(params) {
  707. var res = params[0].seriesName + ':' + params[0].value + '°C<br />' + params[1].seriesName + ':' + params[1].value + '°C<br />' + params[2].seriesName + ':' + params[2].value + '°C<br />' + data_time[params[1].dataIndex];
  708. return res;
  709. },
  710. axisPointer: {
  711. type: 'shadow',
  712. },
  713. textStyle: {
  714. fontStyle: 'normal',
  715. fontFamily: '微软雅黑',
  716. align: 'left' //图例左对齐
  717. },
  718. },
  719. grid: {
  720. left: '0',
  721. right: '0',
  722. bottom: '40',
  723. top: '0',
  724. containLabel: true,
  725. },
  726. legend: {
  727. // 如果series 对象有name 值,则 legend可以不用写data
  728. itemGap: 20,
  729. itemHeight: 2,
  730. itemWidth: 15,
  731. icon: 'rect',
  732. textStyle: {
  733. color: "#fff"
  734. },
  735. top: "bottom",
  736. },
  737. //添加横线滚动条
  738. dataZoom: {
  739. start: 0, //默认为0
  740. end: 100 - 1500 / 10, //默认为100
  741. type: 'slider',
  742. show: xData.length > 4 ? true : false,
  743. xAxisIndex: [0],
  744. handleSize: 0, //滑动条的 左右2个滑动条的大小
  745. height: 4, //组件高度
  746. left: 20, //左边的距离
  747. right: 20, //右边的距离
  748. bottom: 30, //右边的距离
  749. handleColor: '#CBBCDB', //h滑动图标的颜色
  750. handleStyle: {
  751. borderColor: "#CBBCDB",
  752. borderWidth: "1",
  753. shadowBlur: 2,
  754. background: "#CBBCDB",
  755. shadowColor: "#CBBCDB",
  756. },
  757. textStyle: {
  758. color: "#fff"
  759. },
  760. backgroundColor: 'rgba(37, 46, 100, 0.45)', //两边未选中的滑动条区域的颜色
  761. showDataShadow: false, //是否显示数据阴影 默认auto
  762. // showDetail: false, //即拖拽时候是否显示详细数值信息 默认true
  763. filterMode: 'filter',
  764. },
  765. xAxis: [{
  766. type: 'category',
  767. // boundaryGap: true,//坐标轴两边留白
  768. data: xData,
  769. axisLabel: {
  770. interval: 0,
  771. // rotate: 340,
  772. // formatter: function(val) {
  773. // return val.split("").join("\n");
  774. // }, //横轴信息文字竖直显示
  775. textStyle: {
  776. color: '#AADDFF',
  777. fontStyle: 'normal',
  778. fontFamily: '微软雅黑',
  779. fontSize: 12,
  780. },
  781. },
  782. axisTick: {
  783. //坐标轴刻度相关设置。
  784. show: false,
  785. },
  786. axisLine: {
  787. //坐标轴轴线相关设置
  788. },
  789. splitLine: {
  790. //坐标轴在 grid 区域中的分隔线。
  791. show: false,
  792. },
  793. }, ],
  794. yAxis: [{
  795. type: 'value',
  796. axisLabel: false,
  797. axisLine: {
  798. show: false,
  799. },
  800. axisTick: {
  801. show: false,
  802. },
  803. splitLine: {
  804. show: true,
  805. lineStyle: {
  806. color: ['#204C6F'],
  807. opacity: 0.3,
  808. },
  809. },
  810. boundaryGap: ['0', '1%'],
  811. }],
  812. series: [{
  813. name: '线缆产生的温度',
  814. type: 'bar',
  815. data: sortData[0].data[0],
  816. barMaxWidth: '11',
  817. itemStyle: {
  818. borderColor: "#05EEE7",
  819. },
  820. barGap: '50%',
  821. },
  822. {
  823. name: '环境温度',
  824. type: 'bar',
  825. data: sortData[0].data[1],
  826. barMaxWidth: '11',
  827. itemStyle: {
  828. borderColor: "#9999FF"
  829. },
  830. },
  831. {
  832. name: '线缆温度',
  833. type: 'bar',
  834. data: sortData[0].data[2],
  835. barMaxWidth: '11',
  836. itemStyle: {
  837. borderColor: "#FE92B3",
  838. },
  839. },
  840. ],
  841. };
  842. myChart.setOption(option);
  843. window.addEventListener("resize", function() {
  844. myChart.resize();
  845. });
  846. })();
  847. /*
  848. 主页面数据对接 end
  849. */
  850. /*
  851. 导出数据对接 start
  852. */
  853. //项目情况
  854. var project_situation = result.RESULT[0].project_situation;
  855. var items = '';
  856. items = `<tr>
  857. <td>单位名称</td>
  858. <td colspan="5">${project_situation.company_name}</td>
  859. </tr>
  860. <tr>
  861. <td>进场日期</td>
  862. <td>${project_situation.entry_date} </td>
  863. <td>完工日期</td>
  864. <td>${project_situation.completion_date}</td>
  865. <td>验收日期</td>
  866. <td>${project_situation.acceptance_date}</td>
  867. </tr>`
  868. $('#project_situation').html(items);
  869. //设备清单
  870. var equipment_list = result.RESULT[0].equipment_list;
  871. var items2 = '';
  872. if (equipment_list) {
  873. equipment_list.forEach(function(item, key) {
  874. items2 += `<tr>
  875. <td>${item.device_name}</td>
  876. <td>${item.device_info}</td>
  877. <td>${item.device_code}</td>
  878. <td>${item.remarks}</td>
  879. </tr>`;
  880. })
  881. $('#equipment_list').html(items2)
  882. }
  883. //统计时段
  884. var statistical_period = result.RESULT[0].statistical_period;
  885. var items3 = '';
  886. items3 = `<div>统计起始日期:${statistical_period.start_date}</div>
  887. <div>统计截止日期:${statistical_period.closing_date}</div>
  888. <div>统计时段时长:${statistical_period.duration}</div>`;
  889. $('#statistical_period').html(items3)
  890. //数据统计计算
  891. var data_statistics = result.RESULT[0].data_statistics;
  892. var items4 = '';
  893. items4 = `<tr>
  894. <td>${data_statistics.alarm_number}</td>
  895. <td>${data_statistics.processing_number}</td>
  896. <td>${data_statistics.unprocessed_number}</td>
  897. <td>${data_statistics.treatment_rate}</td>
  898. <td>${data_statistics.untreated_rate}</td>
  899. </tr>`;
  900. $('#data_statistics').html(items4);
  901. // 数据离散率挖掘
  902. let dispersion_rate = result.RESULT[0].dispersion_rate;
  903. // 结论数据渲染
  904. var items = '';
  905. var conclusion = dispersion_rate.conclusion
  906. for (x in conclusion) {
  907. xIndex = x.substr(x.length - 1, 1);
  908. items += `<div>${xIndex}、${conclusion[x]}</div>`
  909. }
  910. $('.exportBox .divergence .summaryDetail').html(items);
  911. // 数据离散率挖掘1
  912. (function() {
  913. // 三相电压
  914. let a = [];
  915. let b = [];
  916. let c = [];
  917. let d = [];
  918. let voltage = dispersion_rate.voltage;
  919. voltage.forEach(function(item, index) {
  920. a.push(item.variance)
  921. b.push(item.standard_deviation)
  922. c.push(item.average_value)
  923. d.push(item.data_time)
  924. });
  925. var sortData = [{
  926. sortName: "三相电压",
  927. data: [
  928. a, b, c, d
  929. ]
  930. }, ];
  931. // var xData = function() {
  932. // var data = [];
  933. // for (var i = 1; i < voltage.length + 1; i++) {
  934. // data.push(i);
  935. // }
  936. // return data;
  937. // }();
  938. // 1. 实例化对象
  939. var myChart = echarts.init(document.querySelector("#divergenceChart1"));
  940. // 2.指定配置
  941. var option = {
  942. color: [{
  943. colorStops: [{
  944. offset: 0,
  945. color: '#F9860C' // 0% 处的颜色
  946. }, {
  947. offset: 1,
  948. color: '#fff' // 100% 处的颜色
  949. }],
  950. },
  951. {
  952. colorStops: [{
  953. offset: 0,
  954. color: '#07E1F1' // 0% 处的颜色
  955. }, {
  956. offset: 1,
  957. color: '#0456CB' // 100% 处的颜色
  958. }],
  959. },
  960. {
  961. colorStops: [{
  962. offset: 0,
  963. color: '#11F90C' // 0% 处的颜色
  964. }, {
  965. offset: 1,
  966. color: '#3FC713' // 100% 处的颜色
  967. }],
  968. }
  969. ],
  970. tooltip: {
  971. trigger: "axis",
  972. textStyle: {
  973. align: 'left' //图例左对齐
  974. },
  975. backgroundColor: '#12DFE0',
  976. formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
  977. },
  978. legend: {
  979. // 如果series 对象有name 值,则 legend可以不用写data
  980. itemGap: 20,
  981. itemHeight: 2,
  982. itemWidth: 15,
  983. icon: 'rect',
  984. textStyle: {
  985. color: "#aaa"
  986. },
  987. top: "bottom",
  988. },
  989. grid: {
  990. top: "0%",
  991. left: "1%",
  992. right: "1%",
  993. bottom: "20%",
  994. show: true, // 显示边框
  995. borderWidth: '0', //去除边框
  996. containLabel: true // 包含刻度文字在内
  997. },
  998. xAxis: {
  999. type: "category",
  1000. boundaryGap: false,
  1001. data: d,
  1002. axisTick: {
  1003. lineStyle: { color: 'rgb(150,150,150)' }
  1004. // show: true // 去除刻度线
  1005. },
  1006. axisLabel: {
  1007. interval: 0,
  1008. show: false,
  1009. color: "#AADDFF" // 文本颜色
  1010. },
  1011. axisLine: {
  1012. lineStyle: {
  1013. color: 'rgba(255,255,255,.3)'
  1014. }
  1015. },
  1016. splitLine: {
  1017. show: false
  1018. },
  1019. splitArea: {
  1020. show: true,
  1021. areaStyle: {
  1022. color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
  1023. }
  1024. }
  1025. },
  1026. yAxis: {
  1027. splitNumber: 8,
  1028. type: "value",
  1029. axisTick: {
  1030. show: false // 去除刻度线
  1031. },
  1032. axisLabel: {
  1033. show: false // 去除文本
  1034. },
  1035. axisLine: {
  1036. show: false // 去除轴线
  1037. },
  1038. splitLine: {
  1039. lineStyle: {
  1040. color: "#aaa", // 分割线颜色
  1041. opacity: .2
  1042. }
  1043. }
  1044. },
  1045. series: [{
  1046. symbol: "none",
  1047. name: "方差",
  1048. type: "line",
  1049. data: sortData[0].data[0]
  1050. },
  1051. {
  1052. symbol: "none",
  1053. name: "标准差",
  1054. type: "line",
  1055. data: sortData[0].data[1]
  1056. }, {
  1057. symbol: "none",
  1058. name: "平均值",
  1059. type: "line",
  1060. data: sortData[0].data[2]
  1061. }
  1062. ]
  1063. };
  1064. myChart.setOption(option);
  1065. //echarts赋值到src
  1066. var img1 = document.getElementById('divergenceChart1_img');
  1067. setTimeout(function() {
  1068. img1.src = myChart.getDataURL();
  1069. }, 1000)
  1070. })();
  1071. // 数据离散率挖掘2
  1072. (function() {
  1073. // 三相电流
  1074. let a2 = [];
  1075. let b2 = [];
  1076. let c2 = [];
  1077. let d2 = [];
  1078. let electric_current = dispersion_rate.electric_current;
  1079. electric_current.forEach(function(item, index) {
  1080. a2.push(item.variance)
  1081. b2.push(item.standard_deviation)
  1082. c2.push(item.average_value)
  1083. d2.push(item.data_time)
  1084. });
  1085. var sortData = [{
  1086. sortName: "三相电流",
  1087. data: [
  1088. a2, b2, c2
  1089. ]
  1090. },
  1091. ];
  1092. var xData = function() {
  1093. var data = [];
  1094. for (var i = 1; i < electric_current.length + 1; i++) {
  1095. data.push(i);
  1096. }
  1097. return data;
  1098. }();
  1099. // 1. 实例化对象
  1100. var myChart = echarts.init(document.querySelector("#divergenceChart2"));
  1101. // 2.指定配置
  1102. var option = {
  1103. color: [{
  1104. colorStops: [{
  1105. offset: 0,
  1106. color: '#F9860C' // 0% 处的颜色
  1107. }, {
  1108. offset: 1,
  1109. color: '#fff' // 100% 处的颜色
  1110. }],
  1111. },
  1112. {
  1113. colorStops: [{
  1114. offset: 0,
  1115. color: '#07E1F1' // 0% 处的颜色
  1116. }, {
  1117. offset: 1,
  1118. color: '#0456CB' // 100% 处的颜色
  1119. }],
  1120. },
  1121. {
  1122. colorStops: [{
  1123. offset: 0,
  1124. color: '#11F90C' // 0% 处的颜色
  1125. }, {
  1126. offset: 1,
  1127. color: '#3FC713' // 100% 处的颜色
  1128. }],
  1129. }
  1130. ],
  1131. tooltip: {
  1132. trigger: "axis",
  1133. textStyle: {
  1134. align: 'left' //图例左对齐
  1135. },
  1136. backgroundColor: '#12DFE0',
  1137. formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
  1138. },
  1139. legend: {
  1140. // 如果series 对象有name 值,则 legend可以不用写data
  1141. itemGap: 20,
  1142. itemHeight: 2,
  1143. itemWidth: 15,
  1144. icon: 'rect',
  1145. textStyle: {
  1146. color: "#aaa"
  1147. },
  1148. top: "bottom",
  1149. },
  1150. grid: {
  1151. top: "0%",
  1152. left: "1%",
  1153. right: "1%",
  1154. bottom: "20%",
  1155. show: true, // 显示边框
  1156. borderWidth: '0', //去除边框
  1157. containLabel: true // 包含刻度文字在内
  1158. },
  1159. xAxis: {
  1160. type: "category",
  1161. boundaryGap: false,
  1162. data: d2,
  1163. axisTick: {
  1164. lineStyle: { color: 'rgb(150,150,150)' },
  1165. show: true
  1166. },
  1167. axisLabel: {
  1168. interval: 0,
  1169. show: false,
  1170. color: "#AADDFF" // 文本颜色
  1171. },
  1172. axisLine: {
  1173. lineStyle: {
  1174. color: 'rgba(255,255,255,.3)'
  1175. }
  1176. },
  1177. splitNumber: 8,
  1178. splitLine: {
  1179. show: false
  1180. },
  1181. splitArea: {
  1182. show: true,
  1183. areaStyle: {
  1184. color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
  1185. }
  1186. }
  1187. },
  1188. yAxis: {
  1189. type: "value",
  1190. splitNumber: 8,
  1191. axisTick: {
  1192. show: false // 去除刻度线
  1193. },
  1194. axisLabel: {
  1195. show: false // 去除文本
  1196. },
  1197. axisLine: {
  1198. show: false // 去除轴线
  1199. },
  1200. splitLine: {
  1201. lineStyle: {
  1202. color: "#aaa", // 分割线颜色
  1203. opacity: .2
  1204. }
  1205. }
  1206. },
  1207. series: [{
  1208. symbol: "none",
  1209. name: "方差",
  1210. type: "line",
  1211. data: sortData[0].data[0]
  1212. },
  1213. {
  1214. symbol: "none",
  1215. name: "标准差",
  1216. type: "line",
  1217. data: sortData[0].data[1]
  1218. }, {
  1219. symbol: "none",
  1220. name: "平均值",
  1221. type: "line",
  1222. data: sortData[0].data[2]
  1223. }
  1224. ]
  1225. };
  1226. myChart.setOption(option);
  1227. //echarts赋值到src
  1228. var img1 = document.getElementById('divergenceChart2_img');
  1229. setTimeout(function() {
  1230. img1.src = myChart.getDataURL();
  1231. }, 1000)
  1232. })();
  1233. // 数据离散率挖掘3
  1234. (function() {
  1235. // 三相温度
  1236. let a3 = [];
  1237. let b3 = [];
  1238. let c3 = [];
  1239. let d3 = [];
  1240. let temperature = dispersion_rate.temperature;
  1241. temperature.forEach(function(item, index) {
  1242. a3.push(item.variance)
  1243. b3.push(item.standard_deviation)
  1244. c3.push(item.average_value)
  1245. d3.push(item.data_time)
  1246. });
  1247. var sortData = [{
  1248. sortName: "三相温度",
  1249. data: [
  1250. a3, b3, c3
  1251. ]
  1252. }, ];
  1253. var xData = function() {
  1254. var data = [];
  1255. for (var i = 1; i < temperature.length + 1; i++) {
  1256. data.push(i);
  1257. }
  1258. return data;
  1259. }();
  1260. // 1. 实例化对象
  1261. var myChart = echarts.init(document.querySelector("#divergenceChart3"));
  1262. // 2.指定配置
  1263. var option = {
  1264. color: [{
  1265. colorStops: [{
  1266. offset: 0,
  1267. color: '#F9860C' // 0% 处的颜色
  1268. }, {
  1269. offset: 1,
  1270. color: '#fff' // 100% 处的颜色
  1271. }],
  1272. },
  1273. {
  1274. colorStops: [{
  1275. offset: 0,
  1276. color: '#07E1F1' // 0% 处的颜色
  1277. }, {
  1278. offset: 1,
  1279. color: '#0456CB' // 100% 处的颜色
  1280. }],
  1281. },
  1282. {
  1283. colorStops: [{
  1284. offset: 0,
  1285. color: '#11F90C' // 0% 处的颜色
  1286. }, {
  1287. offset: 1,
  1288. color: '#3FC713' // 100% 处的颜色
  1289. }],
  1290. }
  1291. ],
  1292. tooltip: {
  1293. trigger: "axis",
  1294. textStyle: {
  1295. align: 'left' //图例左对齐
  1296. },
  1297. backgroundColor: '#12DFE0',
  1298. formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
  1299. },
  1300. legend: {
  1301. // 如果series 对象有name 值,则 legend可以不用写data
  1302. itemGap: 20,
  1303. itemHeight: 2,
  1304. itemWidth: 15,
  1305. icon: 'rect',
  1306. textStyle: {
  1307. color: "#aaa"
  1308. },
  1309. top: "bottom",
  1310. },
  1311. grid: {
  1312. top: "0%",
  1313. left: "1%",
  1314. right: "1%",
  1315. bottom: "20%",
  1316. show: true, // 显示边框
  1317. borderWidth: '0', //去除边框
  1318. containLabel: true // 包含刻度文字在内
  1319. },
  1320. xAxis: {
  1321. type: "category",
  1322. boundaryGap: false,
  1323. data: d3,
  1324. axisTick: {
  1325. lineStyle: { color: 'rgb(150,150,150)' },
  1326. show: true
  1327. },
  1328. axisLabel: {
  1329. interval: 0,
  1330. show: false,
  1331. color: "#AADDFF" // 文本颜色
  1332. },
  1333. axisLine: {
  1334. lineStyle: {
  1335. color: 'rgba(255,255,255,.3)'
  1336. }
  1337. },
  1338. splitNumber: 8,
  1339. splitLine: {
  1340. show: false
  1341. },
  1342. splitArea: {
  1343. show: true,
  1344. areaStyle: {
  1345. color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
  1346. }
  1347. }
  1348. },
  1349. yAxis: {
  1350. type: "value",
  1351. axisTick: {
  1352. show: false // 去除刻度线
  1353. },
  1354. axisLabel: {
  1355. show: false // 去除文本
  1356. },
  1357. axisLine: {
  1358. show: false // 去除轴线
  1359. },
  1360. splitLine: {
  1361. lineStyle: {
  1362. color: "#aaa", // 分割线颜色
  1363. opacity: .2
  1364. }
  1365. }
  1366. },
  1367. series: [{
  1368. symbol: "none",
  1369. name: "方差",
  1370. type: "line",
  1371. data: sortData[0].data[0]
  1372. },
  1373. {
  1374. symbol: "none",
  1375. name: "标准差",
  1376. type: "line",
  1377. data: sortData[0].data[1]
  1378. }, {
  1379. symbol: "none",
  1380. name: "平均值",
  1381. type: "line",
  1382. data: sortData[0].data[2]
  1383. }
  1384. ]
  1385. };
  1386. myChart.setOption(option);
  1387. //echarts赋值到src
  1388. var img1 = document.getElementById('divergenceChart3_img');
  1389. setTimeout(function() {
  1390. img1.src = myChart.getDataURL();
  1391. }, 1000)
  1392. })();
  1393. // 数据离散率挖掘4
  1394. (function() {
  1395. // 漏电电流
  1396. let a4 = [];
  1397. let b4 = [];
  1398. let c4 = [];
  1399. let d4 = [];
  1400. let leakage_current = dispersion_rate.leakage_current;
  1401. leakage_current.forEach(function(item, index) {
  1402. a4.push(item.variance)
  1403. b4.push(item.standard_deviation)
  1404. c4.push(item.average_value)
  1405. d4.push(item.data_time)
  1406. });
  1407. var sortData = [{
  1408. sortName: "三相电流",
  1409. data: [
  1410. a4, b4, c4
  1411. ]
  1412. }, ];
  1413. var xData = function() {
  1414. var data = [];
  1415. for (var i = 1; i < leakage_current.length + 1; i++) {
  1416. data.push(i);
  1417. }
  1418. return data;
  1419. }();
  1420. // 1. 实例化对象
  1421. var myChart = echarts.init(document.querySelector("#divergenceChart4"));
  1422. // 2.指定配置
  1423. var option = {
  1424. color: [{
  1425. colorStops: [{
  1426. offset: 0,
  1427. color: '#F9860C' // 0% 处的颜色
  1428. }, {
  1429. offset: 1,
  1430. color: '#fff' // 100% 处的颜色
  1431. }],
  1432. },
  1433. {
  1434. colorStops: [{
  1435. offset: 0,
  1436. color: '#07E1F1' // 0% 处的颜色
  1437. }, {
  1438. offset: 1,
  1439. color: '#0456CB' // 100% 处的颜色
  1440. }],
  1441. },
  1442. {
  1443. colorStops: [{
  1444. offset: 0,
  1445. color: '#11F90C' // 0% 处的颜色
  1446. }, {
  1447. offset: 1,
  1448. color: '#3FC713' // 100% 处的颜色
  1449. }],
  1450. }
  1451. ],
  1452. tooltip: {
  1453. trigger: "axis",
  1454. textStyle: {
  1455. align: 'left' //图例左对齐
  1456. },
  1457. backgroundColor: '#12DFE0',
  1458. formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
  1459. },
  1460. legend: {
  1461. // 如果series 对象有name 值,则 legend可以不用写data
  1462. itemGap: 20,
  1463. itemHeight: 2,
  1464. itemWidth: 15,
  1465. icon: 'rect',
  1466. textStyle: {
  1467. color: "#aaa"
  1468. },
  1469. top: "bottom",
  1470. },
  1471. grid: {
  1472. top: "0%",
  1473. left: "1%",
  1474. right: "1%",
  1475. bottom: "20%",
  1476. show: true, // 显示边框
  1477. borderWidth: '0', //去除边框
  1478. containLabel: true // 包含刻度文字在内
  1479. },
  1480. xAxis: {
  1481. type: "category",
  1482. boundaryGap: false,
  1483. data: d4,
  1484. axisTick: {
  1485. lineStyle: { color: 'rgb(150,150,150)' },
  1486. show: true
  1487. },
  1488. axisLabel: {
  1489. interval: 0,
  1490. show: false,
  1491. // color: "#AADDFF" // 文本颜色
  1492. },
  1493. axisLine: {
  1494. lineStyle: {
  1495. color: 'rgba(255,255,255,.3)'
  1496. }
  1497. },
  1498. splitNumber: 8,
  1499. splitLine: {
  1500. show: false
  1501. },
  1502. splitArea: {
  1503. show: true,
  1504. areaStyle: {
  1505. color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
  1506. }
  1507. }
  1508. },
  1509. yAxis: {
  1510. type: "value",
  1511. axisTick: {
  1512. show: false // 去除刻度线
  1513. },
  1514. axisLabel: {
  1515. show: false // 去除文本
  1516. },
  1517. axisLine: {
  1518. show: false // 去除轴线
  1519. },
  1520. splitLine: {
  1521. lineStyle: {
  1522. color: "#aaa", // 分割线颜色
  1523. opacity: .2
  1524. }
  1525. }
  1526. },
  1527. series: [{
  1528. symbol: "none",
  1529. name: "方差",
  1530. type: "line",
  1531. data: sortData[0].data[0]
  1532. },
  1533. {
  1534. symbol: "none",
  1535. name: "标准差",
  1536. type: "line",
  1537. data: sortData[0].data[1]
  1538. }, {
  1539. symbol: "none",
  1540. name: "平均值",
  1541. type: "line",
  1542. data: sortData[0].data[2]
  1543. }
  1544. ]
  1545. };
  1546. myChart.setOption(option);
  1547. //echarts赋值到src
  1548. var img1 = document.getElementById('divergenceChart4_img');
  1549. setTimeout(function() {
  1550. img1.src = myChart.getDataURL();
  1551. }, 1000)
  1552. })();
  1553. // 电老化分析
  1554. let electrical_aging = result.RESULT[0].electrical_aging;
  1555. // 结论数据渲染
  1556. var items = '';
  1557. var conclusion = electrical_aging.conclusion
  1558. for (x in conclusion) {
  1559. xIndex = x.substr(x.length - 1, 1);
  1560. items += `<div>${xIndex}、${conclusion[x]}</div>`
  1561. }
  1562. $('.exportBox .oldAnalysis .summaryDetail').html(items);
  1563. // 电老化分析1
  1564. (function() {
  1565. // 异常设备监控电缆数据
  1566. let a = [];
  1567. let b = [];
  1568. let data_time = [];
  1569. let abnormal_equipment = electrical_aging.abnormal_equipment;
  1570. abnormal_equipment.forEach(function(item, index) {
  1571. a.push(item.electric_current)
  1572. b.push(item.voltage)
  1573. data_time.push(item.data_time)
  1574. });
  1575. var sortData = [{
  1576. sortName: "异常设备",
  1577. data: [a, b]
  1578. },
  1579. ];
  1580. var xData = function() {
  1581. var data = [];
  1582. for (var i = 1; i < abnormal_equipment.length + 1; i++) {
  1583. data.push(i);
  1584. }
  1585. return data;
  1586. }();
  1587. // 1. 实例化对象
  1588. var myChart = echarts.init(document.querySelector("#oldAnalysisChart1"));
  1589. // 2.指定配置
  1590. var option = {
  1591. color: ["#FF9C00", "#0096FF"], // 通过这个color修改两条线的颜色
  1592. tooltip: {
  1593. trigger: "axis",
  1594. textStyle: {
  1595. align: 'left' //图例左对齐
  1596. },
  1597. backgroundColor: '#12DFE0',
  1598. // formatter: '{a0}: {c0}<br />{a1}: {c1}<br />时间:' + chooseTime + ''
  1599. formatter: function(params) {
  1600. var res = params[0].seriesName + ':' + params[0].value + 'mA<br />' + params[1].seriesName + ':' + params[1].value + 'V<br />时间:' + data_time[params[0].dataIndex];
  1601. return res;
  1602. },
  1603. },
  1604. legend: {
  1605. // 如果series 对象有name 值,则 legend可以不用写data
  1606. itemGap: 20,
  1607. itemHeight: 2,
  1608. itemWidth: 15,
  1609. icon: 'rect',
  1610. textStyle: {
  1611. color: "#aaa"
  1612. },
  1613. top: "bottom",
  1614. },
  1615. grid: {
  1616. top: "0%",
  1617. left: "1%",
  1618. right: "1%",
  1619. bottom: "15%",
  1620. show: true, // 显示边框
  1621. borderWidth: '0', //去除边框
  1622. containLabel: true // 包含刻度文字在内
  1623. },
  1624. xAxis: {
  1625. type: "category",
  1626. boundaryGap: false,
  1627. data: xData,
  1628. axisTick: {
  1629. show: false // 去除刻度线
  1630. },
  1631. axisLabel: {
  1632. color: "#AADDFF" // 文本颜色
  1633. },
  1634. axisLine: {
  1635. show: false // 去除轴线
  1636. }
  1637. },
  1638. yAxis: {
  1639. type: "value",
  1640. axisTick: {
  1641. show: false // 去除刻度线
  1642. },
  1643. axisLabel: {
  1644. show: false // 去除文本
  1645. },
  1646. axisLine: {
  1647. show: false // 去除轴线
  1648. },
  1649. splitLine: {
  1650. lineStyle: {
  1651. color: "#aaa", // 分割线颜色
  1652. opacity: .2
  1653. }
  1654. }
  1655. },
  1656. series: [{
  1657. symbol: "none",
  1658. name: "电流",
  1659. type: "line",
  1660. smooth: true, // true 可以让我们的折线显示带有弧度
  1661. areaStyle: {
  1662. normal: {
  1663. color: new echarts.graphic.LinearGradient(
  1664. 0,
  1665. 0,
  1666. 0,
  1667. 1, [{
  1668. offset: 0,
  1669. color: "rgba(255,156,0, 0.4)"
  1670. },
  1671. {
  1672. offset: 0.8,
  1673. color: "rgba(255,156,0, 0.3)"
  1674. }
  1675. ],
  1676. false
  1677. ),
  1678. shadowColor: "rgba(0, 0, 0, 0.1)"
  1679. }
  1680. },
  1681. data: sortData[0].data[0]
  1682. },
  1683. {
  1684. symbol: "none",
  1685. name: "电压",
  1686. type: "line",
  1687. smooth: true,
  1688. areaStyle: {
  1689. normal: {
  1690. color: new echarts.graphic.LinearGradient(
  1691. 0,
  1692. 0,
  1693. 0,
  1694. 1, [{
  1695. offset: 0,
  1696. color: "rgba(0,150,255,0.5)"
  1697. },
  1698. {
  1699. offset: 0.8,
  1700. color: "rgba(0,150,255, 0.1)"
  1701. }
  1702. ],
  1703. false
  1704. ),
  1705. shadowColor: "rgba(0, 0, 0, 0.1)"
  1706. }
  1707. },
  1708. data: sortData[0].data[1]
  1709. }
  1710. ]
  1711. };
  1712. myChart.setOption(option);
  1713. var img1 = document.getElementById('oldAnalysisChart1_img');
  1714. setTimeout(function() {
  1715. img1.src = myChart.getDataURL();
  1716. }, 1000)
  1717. })();
  1718. // 电老化分析2
  1719. (function() {
  1720. // 漏电告警数据
  1721. let a2 = [];
  1722. let b2 = [];
  1723. let data_time2 = [];
  1724. let leakage_alarm = electrical_aging.leakage_alarm;
  1725. leakage_alarm.forEach(function(item, index) {
  1726. a2.push(item.electric_current)
  1727. b2.push(item.voltage)
  1728. data_time2.push(item.data_time)
  1729. });
  1730. var sortData = [{
  1731. sortName: "漏电告警",
  1732. data: [a2, b2]
  1733. }];
  1734. var xData = function() {
  1735. var data = [];
  1736. for (var i = 1; i < leakage_alarm.length + 1; i++) {
  1737. data.push(i);
  1738. }
  1739. return data;
  1740. }();
  1741. // 1. 实例化对象
  1742. var myChart = echarts.init(document.querySelector("#oldAnalysisChart2"));
  1743. // 2.指定配置
  1744. var option = {
  1745. color: ["#FF9C00", "#0096FF"], // 通过这个color修改两条线的颜色
  1746. tooltip: {
  1747. trigger: "axis",
  1748. textStyle: {
  1749. align: 'left' //图例左对齐
  1750. },
  1751. backgroundColor: '#12DFE0',
  1752. // formatter: '{a0}: {c0}<br />{a1}: {c1}<br />时间:' + chooseTime + ''
  1753. formatter: function(params) {
  1754. var res = params[0].seriesName + ':' + params[0].value + 'mA<br />' + params[1].seriesName + ':' + params[1].value + 'V<br />时间:' + data_time2[params[0].dataIndex];
  1755. return res;
  1756. },
  1757. },
  1758. legend: {
  1759. // 如果series 对象有name 值,则 legend可以不用写data
  1760. itemGap: 20,
  1761. itemHeight: 2,
  1762. itemWidth: 15,
  1763. icon: 'rect',
  1764. textStyle: {
  1765. color: "#aaa"
  1766. },
  1767. top: "bottom",
  1768. },
  1769. grid: {
  1770. top: "0%",
  1771. left: "1%",
  1772. right: "1%",
  1773. bottom: "15%",
  1774. show: true, // 显示边框
  1775. borderWidth: '0', //去除边框
  1776. containLabel: true // 包含刻度文字在内
  1777. },
  1778. xAxis: {
  1779. type: "category",
  1780. boundaryGap: false,
  1781. data: xData,
  1782. axisTick: {
  1783. show: false // 去除刻度线
  1784. },
  1785. axisLabel: {
  1786. color: "#AADDFF" // 文本颜色
  1787. },
  1788. axisLine: {
  1789. show: false // 去除轴线
  1790. }
  1791. },
  1792. yAxis: {
  1793. type: "value",
  1794. axisTick: {
  1795. show: false // 去除刻度线
  1796. },
  1797. axisLabel: {
  1798. show: false // 去除文本
  1799. },
  1800. axisLine: {
  1801. show: false // 去除轴线
  1802. },
  1803. splitLine: {
  1804. lineStyle: {
  1805. color: "#aaa", // 分割线颜色
  1806. opacity: .2
  1807. }
  1808. }
  1809. },
  1810. series: [{
  1811. symbol: "none",
  1812. name: "电流",
  1813. type: "line",
  1814. smooth: true, // true 可以让我们的折线显示带有弧度
  1815. areaStyle: {
  1816. normal: {
  1817. color: new echarts.graphic.LinearGradient(
  1818. 0,
  1819. 0,
  1820. 0,
  1821. 1, [{
  1822. offset: 0,
  1823. color: "rgba(255,156,0, 0.4)"
  1824. },
  1825. {
  1826. offset: 0.8,
  1827. color: "rgba(255,156,0, 0.3)"
  1828. }
  1829. ],
  1830. false
  1831. ),
  1832. shadowColor: "rgba(0, 0, 0, 0.1)"
  1833. }
  1834. },
  1835. data: sortData[0].data[0]
  1836. },
  1837. {
  1838. symbol: "none",
  1839. name: "电压",
  1840. type: "line",
  1841. smooth: true,
  1842. areaStyle: {
  1843. normal: {
  1844. color: new echarts.graphic.LinearGradient(
  1845. 0,
  1846. 0,
  1847. 0,
  1848. 1, [{
  1849. offset: 0,
  1850. color: "rgba(0,150,255,0.5)"
  1851. },
  1852. {
  1853. offset: 0.8,
  1854. color: "rgba(0,150,255, 0.1)"
  1855. }
  1856. ],
  1857. false
  1858. ),
  1859. shadowColor: "rgba(0, 0, 0, 0.1)"
  1860. }
  1861. },
  1862. data: sortData[0].data[1]
  1863. }
  1864. ]
  1865. };
  1866. myChart.setOption(option);
  1867. var img1 = document.getElementById('oldAnalysisChart2_img');
  1868. setTimeout(function() {
  1869. img1.src = myChart.getDataURL();
  1870. }, 1000)
  1871. })();
  1872. // 热老化分析
  1873. let thermal_aging = result.RESULT[0].thermal_aging;
  1874. // 结论数据渲染
  1875. var items = '';
  1876. var conclusion = thermal_aging.conclusion
  1877. for (x in conclusion) {
  1878. xIndex = x.substr(x.length - 1, 1);
  1879. items += `<div>${xIndex}、${conclusion[x]}</div>`
  1880. }
  1881. $('.exportBox .hotAnalysis .summaryDetail').html(items);
  1882. // 热老化
  1883. (function() {
  1884. let a = [];
  1885. let b = [];
  1886. let c = [];
  1887. let data_time = [];
  1888. let visualization = thermal_aging.visualization;
  1889. visualization.forEach(function(item, index) {
  1890. a.push(item.generation_temperature)
  1891. b.push(item.ambient_temperature)
  1892. c.push(item.Cable_temperature)
  1893. data_time.push(item.data_time)
  1894. });
  1895. var sortData = [{
  1896. data: [a, b, c]
  1897. }];
  1898. var xData = function() {
  1899. var data = [];
  1900. for (var i = 1; i < visualization.length + 1; i++) {
  1901. data.push(i);
  1902. }
  1903. return data;
  1904. }();
  1905. // 1. 实例化对象
  1906. var myChart = echarts.init(document.querySelector("#hotAnalysisChart1"));
  1907. // 2.指定配置
  1908. var option = {
  1909. backgroundColor: 'transparent',
  1910. color: ['rgba(5,238,231,.6)', 'rgba(153,153,255,.6)', 'rgba(255,147,180,.6)'],
  1911. tooltip: {
  1912. backgroundColor: '#12DFE0',
  1913. //提示框组件
  1914. trigger: 'axis',
  1915. formatter: function(params) {
  1916. var res = params[0].seriesName + ':' + params[0].value + '°C<br />' + params[1].seriesName + ':' + params[1].value + '°C<br />' + params[2].seriesName + ':' + params[2].value + '°C<br />' + data_time[params[1].dataIndex];
  1917. return res;
  1918. },
  1919. axisPointer: {
  1920. type: 'shadow',
  1921. },
  1922. textStyle: {
  1923. fontStyle: 'normal',
  1924. fontFamily: '微软雅黑',
  1925. align: 'left' //图例左对齐
  1926. },
  1927. },
  1928. grid: {
  1929. left: '0',
  1930. right: '0',
  1931. bottom: '40',
  1932. top: '0',
  1933. containLabel: true,
  1934. },
  1935. legend: {
  1936. // 如果series 对象有name 值,则 legend可以不用写data
  1937. itemGap: 20,
  1938. itemHeight: 2,
  1939. itemWidth: 15,
  1940. icon: 'rect',
  1941. textStyle: {
  1942. color: "#aaa"
  1943. },
  1944. top: "bottom",
  1945. },
  1946. xAxis: [{
  1947. type: 'category',
  1948. // boundaryGap: true,//坐标轴两边留白
  1949. data: xData,
  1950. axisLabel: {
  1951. interval: 0,
  1952. // rotate: 340,
  1953. // formatter: function(val) {
  1954. // return val.split("").join("\n");
  1955. // }, //横轴信息文字竖直显示
  1956. textStyle: {
  1957. color: '#AADDFF',
  1958. fontStyle: 'normal',
  1959. fontFamily: '微软雅黑',
  1960. fontSize: 12,
  1961. },
  1962. },
  1963. axisTick: {
  1964. //坐标轴刻度相关设置。
  1965. show: false,
  1966. },
  1967. axisLine: {
  1968. //坐标轴轴线相关设置
  1969. },
  1970. splitLine: {
  1971. //坐标轴在 grid 区域中的分隔线。
  1972. show: false,
  1973. },
  1974. }, ],
  1975. yAxis: [{
  1976. type: 'value',
  1977. axisLabel: false,
  1978. axisLine: {
  1979. show: false,
  1980. },
  1981. axisTick: {
  1982. show: false,
  1983. },
  1984. splitLine: {
  1985. show: true,
  1986. lineStyle: {
  1987. color: ['#aaa'],
  1988. opacity: 0.2,
  1989. },
  1990. },
  1991. boundaryGap: ['0', '1%'],
  1992. }],
  1993. series: [{
  1994. name: '线缆产生的温度',
  1995. type: 'bar',
  1996. data: sortData[0].data[0],
  1997. barMaxWidth: '11',
  1998. itemStyle: {
  1999. borderColor: "#05EEE7",
  2000. },
  2001. barGap: '50%',
  2002. },
  2003. {
  2004. name: '环境温度',
  2005. type: 'bar',
  2006. data: sortData[0].data[1],
  2007. barMaxWidth: '11',
  2008. itemStyle: {
  2009. borderColor: "#9999FF"
  2010. },
  2011. },
  2012. {
  2013. name: '线缆温度',
  2014. type: 'bar',
  2015. data: sortData[0].data[2],
  2016. barMaxWidth: '11',
  2017. itemStyle: {
  2018. borderColor: "#FE92B3",
  2019. },
  2020. },
  2021. ],
  2022. };
  2023. myChart.setOption(option);
  2024. var img1 = document.getElementById('hotAnalysisChart1_img');
  2025. setTimeout(function() {
  2026. img1.src = myChart.getDataURL();
  2027. }, 1000)
  2028. })();
  2029. /*
  2030. 导出数据对接 end
  2031. */
  2032. } else {
  2033. // alert('暂无数据')
  2034. layui.use('layer', function() {
  2035. var layer = layui.layer;
  2036. layer.alert('暂无数据', { icon: 5 }, function() {
  2037. // location.reload();
  2038. layer.closeAll('dialog'); //关闭信息框
  2039. });
  2040. });
  2041. }
  2042. }, function(errorMsg) {
  2043. layui.use('layer', function() {
  2044. var layer = layui.layer;
  2045. layer.alert('数据请求失败', { icon: 5 });
  2046. });
  2047. }, 1)
  2048. };
  2049. function getSearchParamObj() {
  2050. let queryParam = {};
  2051. let buildingVal = $('#building').val();
  2052. let chooseTime = $('#chooseTime').val();
  2053. queryParam.company_code = buildingVal;
  2054. queryParam.generation_time = chooseTime;
  2055. var tabLine = document.getElementsByClassName('tab-line')
  2056. $(tabLine[0].children[0]).addClass('active').siblings().removeClass('active')
  2057. $(tabLine[1].children[0]).addClass('active').siblings().removeClass('active')
  2058. return queryParam;
  2059. }
  2060. // 打印
  2061. (function() {
  2062. $("#btnPrint").click(function() {
  2063. print_detail()
  2064. });
  2065. var print_detail = function() {
  2066. //打印前echarts图表转换成图片 start
  2067. $('#divergenceChart1_img,#divergenceChart2_img,#divergenceChart3_img,#divergenceChart4_img').show()
  2068. $('#divergenceChart1,#divergenceChart2,#divergenceChart3,#divergenceChart4').hide()
  2069. $('#oldAnalysisChart1_img,#oldAnalysisChart2_img').show()
  2070. $('#oldAnalysisChart1,#oldAnalysisChart2').hide()
  2071. $('#hotAnalysisChart1_img').show()
  2072. $('#hotAnalysisChart1').hide()
  2073. // end
  2074. var div1_label1 = document.getElementById('printArea').innerHTML;
  2075. var hkey_key;
  2076. var hkey_root = 'HKEY_CURRENT_USER';
  2077. var hkey_path = '\\Software\\Micorsoft\\Internet Explorer\\PageSetup\\';
  2078. var print_win = window.open('打印窗口', '_blank');
  2079. var div = document.createElement('div');
  2080. div.setAttribute('width', '100%');
  2081. div.setAttribute('height', '100%');
  2082. var div_print = document.createElement('div');
  2083. div_print.setAttribute('style', 'width:595px;height:842px;padding:50px 20px;margin:0px auto 0px auto');
  2084. div_print.innerHTML = div1_label1;
  2085. div.appendChild(div_print);
  2086. print_win.document.write(div.innerHTML);
  2087. print_win.document.close();
  2088. try {
  2089. var RegWsh = new ActiveXObject('WScript.Shell');
  2090. hkey_key = 'header';
  2091. RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, '');
  2092. hkey_key = 'footer';
  2093. RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, '');
  2094. } catch (e) {}
  2095. print_win.print();
  2096. print_win.close();
  2097. }
  2098. })()