main.html 81 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title></title>
  6. <link rel="stylesheet" type="text/css" href="css/main.css">
  7. </head>
  8. <body onclick="$('#imp_item').hide();$('#search_result').html('').hide();$('#search input').val('')">
  9. <div id="loading_a1"></div>
  10. <div id="loading">正在加载模型中...</div>
  11. <div id="top" class="top">
  12. <div id="autoplayer_btn" title="切换自动漫游" style="cursor: pointer;position: absolute;right: 120px;top: 25px;height: 38px;width: 38px;"><IMG src="image/auto3d_stop.png"></div>
  13. <div id="imp_btn" title="导出数据" style="cursor: pointer;position: absolute;right: 65px;top: 25px;height: 38px;width: 38px;"><IMG src="image/imp_icon.png"></div>
  14. <div title="返回主视图" style="cursor: pointer;position: absolute;right: 10px;top: 25px;height: 38px;width: 38px;text-align: center;" onclick="backMasterView()"><img src="image/view.png"></div>
  15. </div>
  16. <div id="imp_item">
  17. <div itemcode="1"><span>停机原因</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
  18. <div itemcode="2"><span>生产效率</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
  19. <div itemcode="3"><span>稼动率</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
  20. <div itemcode="4"><span>生产趋势</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
  21. <div itemcode="5"><span>能耗趋势</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
  22. </div>
  23. <div id="search"><input type="text" placeholder="请输入设备编号" maxlength="4"><img style="position: absolute;top: 20%;right: 5px;" src="image/search_icon.png" class="search_btn"></div>
  24. <div id="search_result"></div>
  25. <!-- 添加呈现的video标签或img标签,并设置必要的css来控制其大小 -->
  26. <video id="EngineContent" autoplay muted style="width: 1920px;height:1080px;">浏览器不支持</video>
  27. <!-- <img id="EngineContent"></img> -->
  28. <div id="dev_state" show="设备状态">
  29. <div class="title"></div>
  30. <div class="content">
  31. <div style="float: left;width: 100%;margin-top: 20px;">
  32. <div title="设备总数" style="float: left;width: 45%;margin-left: 4%;background: linear-gradient( 89deg, rgba(33,62,117,0.8) 0%, rgba(33,62,117,0) 100%);">
  33. <img src="image/total_icon.png" style="float: left;width: 58px;">
  34. <span style="float: left;font-weight: 500;font-size: 15px;color: #9ED1FF;line-height: 22px;text-align: left;width: 60%;margin-left: 5%;">设备总数</span>
  35. <span id="dev_state_total" style="float: left;font-family: Bebas Neue, Bebas Neue;font-weight: 400;font-size: 30px;line-height: 30px;text-align: left;font-style: normal;text-transform: none;margin-left: 5%;color: #FFFFFF;">130</span>
  36. <span style="float: left;font-size: 22px;color: #49A8FF;">(台)</span>
  37. </div>
  38. <div title="运行数量" style="float: left;width: 45%;margin-left: 4%;background: linear-gradient( 89deg, rgba(33,62,117,0.8) 0%, rgba(33,62,117,0) 100%);">
  39. <img src="image/total_icon.png" style="float: left;width: 58px;">
  40. <span style="float: left;font-weight: 500;font-size: 15px;color: #9ED1FF;line-height: 22px;text-align: left;width: 60%;margin-left: 5%;">运行数量</span>
  41. <span id="dev_state_runtotal" style="float: left;font-family: Bebas Neue, Bebas Neue;font-weight: 400;font-size: 30px;line-height: 30px;text-align: left;font-style: normal;text-transform: none;margin-left: 5%;color: #FFFFFF;">45</span>
  42. <span style="float: left;font-size: 22px;color: #49A8FF;">(台)</span>
  43. </div>
  44. </div>
  45. <div class="stat" style="float: left;width: 100%;margin-top: 35px;">
  46. <div title="落米停机数" style="float: left;width: 33%;color: #FFB342;">
  47. <img src="image/t1.png" style="float: left;width: 40px;">
  48. <span class="number" attr="stop6" style="float: left;font-family: Bebas Neue, Bebas Neue;font-weight: 400;font-size: 20px;line-height: 30px;text-align: left;font-style: normal;text-transform: none;margin-left: 1%;">-</span>
  49. <span style="float: left;font-size: 15px;margin-top: 6px;">(台)</span>
  50. <span style="float: left;font-weight: 500;font-size: 14px;color: #FFFFFF;line-height: 22px;text-align: left;width: 65%;margin-left: 1%;">落米停机数</span>
  51. </div>
  52. <div title="断纱停机数" style="float: left;width: 33%;color: #FFB342;">
  53. <img src="image/t1.png" style="float: left;width: 40px;">
  54. <span class="number" attr="stop2" style="float: left;font-family: Bebas Neue, Bebas Neue;font-weight: 400;font-size: 20px;line-height: 30px;text-align: left;font-style: normal;text-transform: none;margin-left: 1%;color: #FFB342;">-</span>
  55. <span style="float: left;font-size: 15px;margin-top: 6px;">(台)</span>
  56. <span style="float: left;font-weight: 500;font-size: 14px;color: #FFFFFF;line-height: 22px;text-align: left;width: 65%;margin-left: 1%;">断纱停机数</span>
  57. </div>
  58. <div title="停经片停机数" style="float: left;width: 33%;color: #FFB342;">
  59. <img src="image/t1.png" style="float: left;width: 40px;">
  60. <span class="number" attr="stop1" style="float: left;font-family: Bebas Neue, Bebas Neue;font-weight: 400;font-size: 20px;line-height: 30px;text-align: left;font-style: normal;text-transform: none;margin-left: 1%;color: #FFB342;">-</span>
  61. <span style="float: left;font-size: 15px;margin-top: 6px;">(台)</span>
  62. <span style="float: left;font-weight: 500;font-size: 14px;color: #FFFFFF;line-height: 22px;text-align: left;width: 65%;margin-left: 1%;">停经片停机数</span>
  63. </div>
  64. <div title="叫料数" style="float: left;width: 33%;margin-top: 15px;color: #FFB342;">
  65. <img src="image/t1.png" style="float: left;width: 40px;">
  66. <span class="number" attr="stop8" style="float: left;font-family: Bebas Neue, Bebas Neue;font-weight: 700;font-size: 22px;line-height: 30px;text-align: left;font-style: normal;text-transform: none;margin-left: 1%;color: red;">-</span>
  67. <span style="float: left;font-size: 15px;margin-top: 6px;">(台)</span>
  68. <span style="float: left;font-weight: 500;font-size: 14px;color: #FFFFFF;line-height: 22px;text-align: left;width: 65%;margin-left: 1%;">叫料数</span>
  69. </div>
  70. <div title="故障告警数" style="float: left;width: 33%;margin-top: 15px;color: #FFB342;">
  71. <img src="image/t1.png" style="float: left;width: 40px;">
  72. <span class="number" attr="alarm" style="float: left;font-family: Bebas Neue, Bebas Neue;font-weight: 700;font-size: 22px;line-height: 30px;text-align: left;font-style: normal;text-transform: none;margin-left: 1%;color: red;">-</span>
  73. <span style="float: left;font-size: 15px;margin-top: 6px;">(台)</span>
  74. <span style="float: left;font-weight: 500;font-size: 14px;color: #FFFFFF;line-height: 22px;text-align: left;width: 65%;margin-left: 1%;">故障告警数</span>
  75. </div>
  76. </div>
  77. </div>
  78. </div>
  79. <div id="dev_alarm" show="当前告警" style="color: #ffffff;font-size: 14px;">
  80. <div class="title">当前无告警</div>
  81. <div class="content">
  82. <table style="width: 100%;font-weight: bold;" cellspacing=0>
  83. <thead>
  84. <tr>
  85. <td style="width: 30%">设备编号</td>
  86. <td style="width: 70%">告警类型</td>
  87. </tr>
  88. </thead>
  89. </table>
  90. <div style="max-height: 128px;width: 100%;overflow: hidden;">
  91. <table id="dev_alarm_list" style="width: 100%;background: rgba(25,57,103,0.3);" cellspacing=0>
  92. <tbody>
  93. <tr>
  94. <td style="width: 30%;color:red">-</td>
  95. <td style="width: 70%">-</td>
  96. </tr>
  97. </tbody>
  98. </table>
  99. </div>
  100. <div style="margin-top: 15px;">
  101. <div style="text-align: center;"><img src="image/alarm_txt.png"></div>
  102. <div class="echarts_alarm" id="echarts_alarm" style="height: 122px;width: 100%;">
  103. </div>
  104. </div>
  105. </div>
  106. </div>
  107. <div id="dev_stop" show="停机原因" style="color: #ffffff;font-size: 14px;">
  108. <div class="title">当前无机器停机</div>
  109. <div class="content">
  110. <div style="margin-top: 15px;">
  111. <div class="echarts_stop" id="echarts_stop" style="height: 190px;width: 100%;">
  112. </div>
  113. </div>
  114. </div>
  115. </div>
  116. <div id="dev_xiaolv" show="生产效率" style="color: #ffffff;font-size: 14px;">
  117. <div class="title"></div>
  118. <div class="content">
  119. <div style="">
  120. <div style="text-align: center;font-size: 16px;margin:16px 0;">今日产量</div>
  121. <div style="text-align: center;">
  122. <span style="background: #3D72AF;width: 135px;text-align: center;display: inline-block;height: 32px;line-height: 32px;margin: 0 12px;padding: 5px;"><span id="totay1" style="font-size: 30px">-</span><span style="color: #9ED1FF;font-size: 16px">(米)</span></span>
  123. <span style="background: #3D72AF;width: 128px;text-align: center;display: inline-block;height: 32px;line-height: 32px;margin: 0 12px;padding: 5px;"><span id="totay2" style="font-size: 30px">-</span><span style="color: #9ED1FF;font-size: 16px">(吨)</span></span>
  124. </div>
  125. </div>
  126. <div style="max-height: 96px;width: 100%;overflow: hidden;margin-top: 25px;">
  127. <table style="width: 100%;" cellspacing=0>
  128. <thead>
  129. <tr>
  130. <td style="width: 10%">班组</td>
  131. <td style="width: 25%">生产时间(H)</td>
  132. <td style="width: 25%">已织造数(米)</td>
  133. <td style="width: 20%">总重量(T)</td>
  134. <td style="width: 20%">稼动率(%)</td>
  135. </tr>
  136. </thead>
  137. <tbody>
  138. <tr id="scxl_a">
  139. <td style="width: 10%;color: #9ED1FF">A组</td>
  140. <td style="width: 25%;font-size: 18px;font-weight: bold;">12</td>
  141. <td style="width: 25%;font-size: 18px;font-weight: bold;">12000</td>
  142. <td style="width: 20%;font-size: 18px;font-weight: bold;">5.4</td>
  143. <td style="width: 20%;font-size: 18px;font-weight: bold;">100</td>
  144. </tr>
  145. <tr id="scxl_b">
  146. <td style="width: 10%;color: #9ED1FF">B组</td>
  147. <td style="width: 25%;font-size: 18px;font-weight: bold;">6</td>
  148. <td style="width: 25%;font-size: 18px;font-weight: bold;">2000</td>
  149. <td style="width: 20%;font-size: 18px;font-weight: bold;">1.2</td>
  150. <td style="width: 20%;font-size: 18px;font-weight: bold;">43</td>
  151. </tr>
  152. </tbody>
  153. </table>
  154. </div>
  155. </div>
  156. </div>
  157. <div id="dev_jiadonglv" show="稼动率周曲线" style="color: #ffffff;font-size: 14px;">
  158. <div class="title"></div>
  159. <div class="content">
  160. <div style="margin-top: 15px;">
  161. <div class="echarts_jiadonglv" id="echarts_jiadonglv" style="height: 142px;width: 100%;">
  162. </div>
  163. </div>
  164. </div>
  165. </div>
  166. <div id="dev_sc_qushi" show="生产趋势" style="color: #ffffff;font-size: 14px;">
  167. <div class="title"></div>
  168. <div class="content">
  169. <div style="margin-top: 15px;">
  170. <div class="echarts_sc_qushi" id="echarts_sc_qushi" style="height: 142px;width: 100%;">
  171. </div>
  172. </div>
  173. </div>
  174. </div>
  175. <div id="dev_used_qushi" show="能耗趋势" style="color: #ffffff;font-size: 14px;">
  176. <div class="title"></div>
  177. <div class="content">
  178. <div style="margin-top: 15px;">
  179. <div class="echarts_used_qushi" id="echarts_used_qushi" style="height: 142px;width: 100%;">
  180. </div>
  181. </div>
  182. </div>
  183. </div>
  184. <div id="showinfo" class="showinfo">
  185. <div class="title">
  186. <img src="image/title_icon.png" style="margin: 7px;float: left;">
  187. <span class="text">基本信息</span>
  188. <img src="image/Close.png" style="margin: 7px;float: right;cursor: pointer;" onclick="HideInfo()">
  189. </div>
  190. <div class="content">
  191. <div>
  192. <table style="width: 100%;text-align: center;" cellspacing="0" cellpadding="0">
  193. <tbody>
  194. <tr><td colspan="10" style="font-size: 20px;font-weight: bold;color: #7d7d7d;padding: 5px 0;">剩余时间</td></tr>
  195. <tr>
  196. <td>GB1(分)</td>
  197. <td rowspan="2" class="td_splitLine"></td>
  198. <td>GB2(分)</td>
  199. <td rowspan="2" class="td_splitLine"></td>
  200. <td>GB3(分)</td>
  201. <td rowspan="2" class="td_splitLine"></td>
  202. <td>GB4(分)</td>
  203. <td rowspan="2" class="td_splitLine"></td>
  204. <td>GB5(分)</td>
  205. </tr>
  206. <tr style="color: #FFFFFF;font-size: 20px;">
  207. <td>-</td><td>-</td><td>-</td><td>-</td><td>-</td>
  208. </tr>
  209. </tbody>
  210. </table>
  211. </div>
  212. <div>
  213. <table style="width: 100%;text-align: center;" cellspacing="0" cellpadding="0">
  214. <tbody>
  215. <tr><td colspan="10" style="font-size: 20px;font-weight: bold;color: #7d7d7d;padding: 5px 0;">盘头剩余周长</td></tr>
  216. <tr>
  217. <td>GB1(mm)</td>
  218. <td rowspan="2" class="td_splitLine"></td>
  219. <td>GB2(mm)</td>
  220. <td rowspan="2" class="td_splitLine"></td>
  221. <td>GB3(mm)</td>
  222. <td rowspan="2" class="td_splitLine"></td>
  223. <td>GB4(mm)</td>
  224. <td rowspan="2" class="td_splitLine"></td>
  225. <td>GB5(mm)</td>
  226. </tr>
  227. <tr style="color: #FFFFFF;font-size: 20px;">
  228. <td>-</td><td>-</td><td>-</td><td>-</td><td>-</td>
  229. </tr>
  230. </tbody>
  231. </table>
  232. </div>
  233. <div>
  234. <table style="width: 100%;text-align: center;" cellspacing="0" cellpadding="0">
  235. <tbody>
  236. <tr><td colspan="10" style="font-size: 20px;font-weight: bold;color: #7d7d7d;padding: 5px 0;">盘头剩余圈数</td></tr>
  237. <tr>
  238. <td>GB1(圈)</td>
  239. <td rowspan="2" class="td_splitLine"></td>
  240. <td>GB2(圈)</td>
  241. <td rowspan="2" class="td_splitLine"></td>
  242. <td>GB3(圈)</td>
  243. <td rowspan="2" class="td_splitLine"></td>
  244. <td>GB4(圈)</td>
  245. <td rowspan="2" class="td_splitLine"></td>
  246. <td>GB5(圈)</td>
  247. </tr>
  248. <tr style="color: #FFFFFF;font-size: 20px;">
  249. <td>-</td><td>-</td><td>-</td><td>-</td><td>-</td>
  250. </tr>
  251. </tbody>
  252. </table>
  253. </div>
  254. </div>
  255. </div>
  256. <div id="newwin" class="newwin">
  257. <div class="title"><img src="image/title_icon.png" style="margin: 7px;float: left;"><span class="text"></span><span class="text">#经编机-详细数据</span><img src="image/Close.png" style="margin: 7px;float: right;cursor: pointer;" onclick="CloseWin()"></div>
  258. <div class="content">
  259. <div style="text-align: center;"><span class="btn btn_active" style="margin-left: -220px;">告警</span><span class="btn">产能</span><span class="btn">产线及设备</span><span class="btn">配方</span><span class="btn">设备履历</span></div>
  260. <div class="dataContent">
  261. <div style="padding: 15px;display: none;width: 100%">
  262. <div class="no_alarm">当前无告警</div>
  263. <div class="has_alarm"></div>
  264. <div class="dev_alarm_echarts"></div>
  265. </div>
  266. <div style="padding: 15px;width: 100%">
  267. <div style="float: left;width: 25%;margin-right: 2%;">
  268. <table cellspacing="0" cellpadding="0">
  269. <tr style="background-color: #415683;height: 40px;"><td colspan="4">班组生产状态</td></tr>
  270. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="4"></td></tr>
  271. <tr><td rowspan="2" width="20%">当前产量</td><td rowspan="2" style="color: #817e7e">|</td><td width="20%">A组</td><td style="text-align: right;padding-right: 10px;" width="50%" class="value" attr="Capacity_data_39" unit="米">-</td></tr>
  272. <tr><td>B组</td><td style="text-align: right;padding-right: 10px;" width="50%" class="value" attr="Capacity_data_44" unit="米">-</td></tr>
  273. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="4"></td></tr>
  274. <tr><td rowspan="2" width="20%">开机时间</td><td rowspan="2" style="color: #817e7e">|</td><td width="20%">A组</td><td style="text-align: right;padding-right: 10px;" width="50%" class="value" attr="Capacity_data_37" unit="H">-</td></tr>
  275. <tr><td>B组</td><td style="text-align: right;padding-right: 10px;" width="50%" class="value" attr="Capacity_data_42" unit="H">-</td></tr>
  276. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="4"></td></tr>
  277. <tr><td rowspan="2" width="20%">停机时间</td><td rowspan="2" style="color: #817e7e">|</td><td width="20%">A组</td><td style="text-align: right; padding-right: 10px;" width="50%" class="value" attr="Capacity_data_38" unit="H">-</td></tr>
  278. <tr><td>B组</td><td style="text-align: right;padding-right: 10px;" width="50%" class="value" attr="Capacity_data_43" unit="H">-</td></tr>
  279. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="4"></td></tr>
  280. <tr><td rowspan="2" width="20%">停机率</td><td rowspan="2" style="color: #817e7e">|</td><td width="20%">A组</td><td style="text-align: right; padding-right: 10px;" width="50%" class="value" attr="Capacity_data_40" unit="%">-</td></tr>
  281. <tr><td>B组</td><td style="text-align: right;padding-right: 10px;" width="50%" class="value" attr="Capacity_data_45" unit="%">-</td></tr>
  282. </table>
  283. </div>
  284. <div style="float: left;width: 25%;margin-right: 2%;">
  285. <table cellspacing="0" cellpadding="0">
  286. <tr style="background-color: #415683;height: 40px;"><td colspan="3">当前设备生产状态</td></tr>
  287. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  288. <tr style="height: 100px"><td>主轴运行转速</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="60%" class="value" attr="Capacity_data_1" unit="转/分钟">-</td></tr>
  289. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  290. <tr style="height: 100px"><td>已织造米数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="60%" class="value" attr="Capacity_data_2" unit="米">-</td></tr>
  291. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  292. <tr style="height: 100px"><td>剩余落布时间</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="60%" class="value" attr="Capacity_data_3" unit="H">-</td></tr>
  293. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  294. <tr style="height: 100px"><td>设定落布米数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="60%" class="value" attr="Capacity_data_4" unit="米">-</td></tr>
  295. </table>
  296. </div>
  297. <div style="float: left;width: 44%;">
  298. <table cellspacing="0" cellpadding="0">
  299. <tr style="background-color: #415683;height: 40px;"><td colspan="6">供电</td></tr>
  300. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="6"></td></tr>
  301. <tr style="height: 80px"><td width="20%">AB相电压监控</td><td style="color: #817e7e">|</td><td width="20%" class="value" attr="Capacity_data_24" unit="U">-</td><td width="20%">C相电流监控</td><td style="color: #817e7e">|</td><td width="20%" style="text-align: right;padding-right: 10px;" class="value" attr="Capacity_data_29" unit="V">-</td></tr>
  302. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="6"></td></tr>
  303. <tr style="height: 80px"><td width="20%">BC相电压监控</td><td style="color: #817e7e">|</td><td width="20%" class="value" attr="Capacity_data_25" unit="U">-</td><td width="20%">A相功率监控</td><td style="color: #817e7e">|</td><td width="20%" style="text-align: right;padding-right: 10px;" class="value" attr="Capacity_data_30" unit="W">-</td></tr>
  304. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="6"></td></tr>
  305. <tr style="height: 80px"><td width="20%">AC相电压监控</td><td style="color: #817e7e">|</td><td width="20%" class="value" attr="Capacity_data_26" unit="U">-</td><td width="20%">B相功率监控</td><td style="color: #817e7e">|</td><td width="20%" style="text-align: right;padding-right: 10px;" class="value" attr="Capacity_data_31" unit="W">-</td></tr>
  306. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="6"></td></tr>
  307. <tr style="height: 80px"><td width="20%">A相电流监控</td><td style="color: #817e7e">|</td><td width="20%" class="value" attr="Capacity_data_27" unit="V">-</td><td width="20%">C相功率监控</td><td style="color: #817e7e">|</td><td width="20%" style="text-align: right;padding-right: 10px;" class="value" attr="Capacity_data_32" unit="W">-</td></tr>
  308. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="6"></td></tr>
  309. <tr style="height: 80px"><td width="20%">B相电流监控</td><td style="color: #817e7e">|</td><td width="20%" class="value" attr="Capacity_data_28" unit="V">-</td><td width="20%">总功率监控</td><td style="color: #817e7e">|</td><td width="20%" style="text-align: right;padding-right: 10px;" class="value" attr="Capacity_data_33" unit="W">-</td></tr>
  310. </table>
  311. </div>
  312. </div>
  313. <div style="padding: 15px;display: none;width: 100%">
  314. <div style="float: left;width: 23%;margin-right: 2%;">
  315. <table cellspacing="0" cellpadding="0">
  316. <tr style="height: 60px"><td>断纱检测开关</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="Capacity_data_46" unit="">-</td></tr>
  317. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  318. <tr style="height: 60px"><td>断纱检测延时</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="Capacity_data_47" unit="s">-</td></tr>
  319. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  320. <tr style="height: 60px"><td>牵拉罗拉辊周长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_15" unit="mm">-</td></tr>
  321. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  322. <tr style="height: 60px"><td>卷曲罗拉辊周长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_16" unit="mm">-</td></tr>
  323. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  324. <tr style="height: 60px"><td>主电机额定转速</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_38" unit="">-</td></tr>
  325. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  326. <tr style="height: 60px"><td>主电机额定频率</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_39" unit="">-</td></tr>
  327. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  328. <tr style="height: 60px"><td>电机传动比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_40" unit="">-</td></tr>
  329. </table>
  330. </div>
  331. <div style="float: left;width: 23%;margin-right: 2%;">
  332. <table cellspacing="0" cellpadding="0">
  333. <tr style="height: 60px"><td>GB1减速机减速比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_17" unit="">-</td></tr>
  334. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  335. <tr style="height: 60px"><td>GB2减速机减速比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_18" unit="">-</td></tr>
  336. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  337. <tr style="height: 60px"><td>GB3减速机减速比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_19" unit="">-</td></tr>
  338. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  339. <tr style="height: 60px"><td>GB4减速机减速比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_20" unit="">-</td></tr>
  340. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  341. <tr style="height: 60px"><td>GB5减速机减速比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_21" unit="">-</td></tr>
  342. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  343. <tr style="height: 60px"><td>牵拉减速机减速比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_22" unit="">-</td></tr>
  344. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  345. <tr style="height: 60px"><td>卷曲减速机减速比</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_23" unit="">-</td></tr>
  346. </table>
  347. </div>
  348. <div style="float: left;width: 23%;margin-right: 2%;">
  349. <table cellspacing="0" cellpadding="0">
  350. <tr style="height: 60px"><td>GB1被动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_24" unit="">-</td></tr>
  351. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  352. <tr style="height: 60px"><td>GB2被动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_25" unit="">-</td></tr>
  353. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  354. <tr style="height: 60px"><td>GB3被动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_26" unit="">-</td></tr>
  355. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  356. <tr style="height: 60px"><td>GB4被动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_27" unit="">-</td></tr>
  357. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  358. <tr style="height: 60px"><td>GB5被动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_28" unit="">-</td></tr>
  359. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  360. <tr style="height: 60px"><td>牵拉被动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_29" unit="">-</td></tr>
  361. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  362. <tr style="height: 60px"><td>卷曲被动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_30" unit="">-</td></tr>
  363. </table>
  364. </div>
  365. <div style="float: left;width: 23%;margin-right: 2%;">
  366. <table cellspacing="0" cellpadding="0">
  367. <tr style="height: 60px"><td>GB1主动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_31" unit="">-</td></tr>
  368. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  369. <tr style="height: 60px"><td>GB2主动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_32" unit="">-</td></tr>
  370. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  371. <tr style="height: 60px"><td>GB3主动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_33" unit="">-</td></tr>
  372. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  373. <tr style="height: 60px"><td>GB4主动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_34" unit="">-</td></tr>
  374. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  375. <tr style="height: 60px"><td>GB5主动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_35" unit="">-</td></tr>
  376. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  377. <tr style="height: 60px"><td>牵拉主动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_36" unit="">-</td></tr>
  378. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  379. <tr style="height: 60px"><td>卷曲主动齿轮数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_37" unit="">-</td></tr>
  380. </table>
  381. </div>
  382. </div>
  383. <div style="padding: 15px;display: none;width: 100%">
  384. <div style="float: left;width: 23%;margin-right: 2%;">
  385. <table cellspacing="0" cellpadding="0">
  386. <tr style="height: 48px"><td>配方号</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="Capacity_data_46" unit="">-</td></tr>
  387. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  388. <tr style="height: 48px"><td>机台号</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="Capacity_data_47" unit="">-</td></tr>
  389. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  390. <tr style="height: 48px"><td>米克重</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="System_data_15" unit="g/米">-</td></tr>
  391. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  392. <tr style="height: 48px"><td>L1、L5纱线规格D</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="System_data_16" unit="D">-</td></tr>
  393. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  394. <tr style="height: 48px"><td>L2、L4纱线规格D</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="System_data_38" unit="D">-</td></tr>
  395. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  396. <tr style="height: 48px"><td>L3纱线规格D</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="System_data_39" unit="D">-</td></tr>
  397. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  398. <tr style="height: 48px"><td>L1、L5纱线规格F</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="System_data_40" unit="F">-</td></tr>
  399. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  400. <tr style="height: 48px"><td>L2、L4纱线规格F</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="System_data_40" unit="F">-</td></tr>
  401. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  402. <tr style="height: 48px"><td>L3纱线规格F</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="40%" class="value" attr="System_data_40" unit="F">-</td></tr>
  403. </table>
  404. </div>
  405. <div style="float: left;width: 23%;margin-right: 2%;">
  406. <table cellspacing="0" cellpadding="0">
  407. <tr style="height: 48px"><td>L1、L5盘头根数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_17" unit="根">-</td></tr>
  408. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  409. <tr style="height: 48px"><td>L2、L4盘头根数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_18" unit="根">-</td></tr>
  410. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  411. <tr style="height: 48px"><td>L3盘头根数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_19" unit="根">-</td></tr>
  412. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  413. <tr style="height: 48px"><td>卷曲幅宽</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_20" unit="m">-</td></tr>
  414. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  415. <tr style="height: 48px"><td>下布长度</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_21" unit="m">-</td></tr>
  416. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  417. <tr style="height: 48px"><td>毛高</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_22" unit="m">-</td></tr>
  418. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  419. <tr style="height: 48px"><td>成片长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_23" unit="m">-</td></tr>
  420. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  421. <tr style="height: 48px"><td>成品宽</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_23" unit="m">-</td></tr>
  422. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  423. <tr style="height: 48px"><td>成品重</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_23" unit="kg">-</td></tr>
  424. </table>
  425. </div>
  426. <div style="float: left;width: 23%;margin-right: 2%;">
  427. <table cellspacing="0" cellpadding="0">
  428. <tr style="height: 48px"><td>GB1送经量</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_24" unit="mm/腊克">-</td></tr>
  429. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  430. <tr style="height: 48px"><td>GB2送经量</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_25" unit="mm/腊克">-</td></tr>
  431. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  432. <tr style="height: 48px"><td>GB3送经量</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_26" unit="mm/腊克">-</td></tr>
  433. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  434. <tr style="height: 48px"><td>GB4送经量</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_27" unit="mm/腊克">-</td></tr>
  435. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  436. <tr style="height: 48px"><td>GB5送经量</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_28" unit="mm/腊克">-</td></tr>
  437. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  438. <tr style="height: 48px"><td>奉拉密度</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_29" unit="r/cm">-</td></tr>
  439. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  440. <tr style="height: 48px"><td>卷曲张力系数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_30" unit="%">-</td></tr>
  441. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  442. <tr style="height: 48px"><td>GB1盘头最大圈数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_30" unit="r">-</td></tr>
  443. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  444. <tr style="height: 48px"><td>GB2盘头最大圈数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_30" unit="r">-</td></tr>
  445. </table>
  446. </div>
  447. <div style="float: left;width: 23%;margin-right: 2%;">
  448. <table cellspacing="0" cellpadding="0">
  449. <tr style="height: 48px"><td>GB3盘头最大圈数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_31" unit="r">-</td></tr>
  450. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  451. <tr style="height: 48px"><td>GB4盘头最大圈数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_32" unit="r">-</td></tr>
  452. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  453. <tr style="height: 48px"><td>GB5盘头最大圈数</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_33" unit="r">-</td></tr>
  454. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  455. <tr style="height: 48px"><td>GB1盘头最大外周长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_34" unit="mm">-</td></tr>
  456. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  457. <tr style="height: 48px"><td>GB2盘头最大外周长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_35" unit="mm">-</td></tr>
  458. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  459. <tr style="height: 48px"><td>GB3盘头最大外周长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_36" unit="mm">-</td></tr>
  460. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  461. <tr style="height: 48px"><td>GB4盘头最大外周长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_37" unit="mm">-</td></tr>
  462. <tr style="height: 1px;background-color: #5F6E8D;"><td colspan="3"></td></tr>
  463. <tr style="height: 48px"><td>GB5盘头最大外周长</td><td style="color: #817e7e">|</td><td style="text-align: right;padding-right: 10px;" width="45%" class="value" attr="System_data_37" unit="mm">-</td></tr>
  464. </table>
  465. </div>
  466. </div>
  467. <div style="padding: 15px;display: none;width: 100%">
  468. <img src="image/dev_log.png" style="width: 1300px;height: 459px;display: none;">
  469. </div>
  470. </div>
  471. </div>
  472. </div>
  473. </body>
  474. </html>
  475. <!-- 引入qwebchannel.js、Player.js、PlayerUtils.js -->
  476. <script type="text/javascript" src="jquery-3.4.1.js"></script>
  477. <script type="text/javascript" src="echarts.min.js"></script>
  478. <script src="qwebchannel.js"></script>
  479. <script src="global.js"></script>
  480. <script src="Player.js"></script>
  481. <script src="PlayerUtils.js"></script>
  482. <script src="lottie.min.js"></script>
  483. <script src="Loading.json.js"></script>
  484. <script src="animation.js"></script>
  485. <!--本地模拟测试数据,正式部署时需删除该2个js
  486. <script src="test-data.js"></script>
  487. <script src="device-data.js"></script>
  488. -->
  489. <script>
  490. lottie.loadAnimation({
  491. // 选取一个容器,用于渲染动画
  492. container: $("#loading_a1")[0],
  493. // 定义JSON文件路径
  494. animationData : lottiedata,
  495. // 是否循环播放
  496. loop: true,
  497. // 渲染的格式svg/canvas/html,svg性能更优,兼容性更好
  498. renderer: "svg",
  499. });
  500. var sam0023;
  501. var modelsMap={}
  502. var MODEL_LOADED = 0; //模型是否加载完成
  503. var ALARM_DEVS = []; //未提醒的告警设备,将在模型加载完成时提醒
  504. var LoadServerDataTimer=null;
  505. var DataFill={
  506. devStopAutoLoadTimter:null,//停机原因自动切计时器
  507. devAlarmAutoLoadTimter:null,//告警自动切计时器
  508. AlarmData:null,
  509. AlarmType:{
  510. "1":"GB1伺服通讯故障",
  511. "2":"GB2伺服通讯故障",
  512. "3":"GB3伺服通讯故障",
  513. "4":"GB4伺服通讯故障",
  514. "5":"GB5伺服通讯故障",
  515. "6":"牵引伺服通讯故障",
  516. "7":"卷曲伺服通讯故障",
  517. "8":"断纱故障",
  518. "9":"电源故障",
  519. "10":"联动未完全啮合",
  520. "11":"米长到达",
  521. "12":"GB1剩余圈数报警",
  522. "13":"GB2剩余圈数报警",
  523. "14":"GB3剩余圈数报警",
  524. "15":"GB4剩余圈数报警",
  525. "16":"GB5剩余圈数报警",
  526. "17":"主轴变频掉线",
  527. "18":"主轴变频故障",
  528. "19":"GB1伺服故障",
  529. "20":"GB2伺服故障",
  530. "21":"GB3伺服故障",
  531. "22":"GB4伺服故障",
  532. "23":"GB5伺服故障",
  533. "24":"牵引伺服故障",
  534. "25":"卷曲伺服故障",
  535. "26":"拍照自停",
  536. "27":"CCD位置报警信息显示",
  537. },
  538. //停机原因类型
  539. StopType:{
  540. "stop1":"停经片停机",
  541. "stop2":"CCD停机",
  542. "stop3":"人工停机",
  543. "stop4":"断电停机",
  544. "stop5":"设备故障停机",
  545. "stop6":"落布米数达到停机",
  546. "stop7":"盘头剩余圈数达到停机",
  547. },
  548. //告警设备列表数据
  549. AlarmTable:function(data){
  550. this.AlarmData = data;
  551. var t = $("#dev_alarm_list>tbody").html("")
  552. if(data==null || data.length==0){
  553. $("#dev_alarm .content").hide();
  554. $("#dev_alarm .title").html("当前无告警");
  555. return
  556. }
  557. $("#dev_alarm .title").html("");
  558. $("#dev_alarm .content").show();
  559. var tpl='<tr style="font-weight:bold" devno="{1}"><td style="width: 30%;">{1}#</td><td style="width: 70%;color:{COLOR}">{2}</td></tr>';
  560. var lst=[];
  561. for (var i = 0; i < data.length; i++) {
  562. var color = "rgb(206,161,94)" //默认告警文本颜色
  563. var typeName = this.AlarmType[data[i]["type"]];
  564. if(typeName.indexOf("故障")>-1) color="rgb(195,70,76)" //红色提醒
  565. lst.push(tpl.replace(/\{1\}/gi,data[i]["code"].replace(/C_/g,"")).replace(/\{2\}/g,typeName).replace('{COLOR}',color))
  566. if(MODEL_LOADED==1){
  567. //机器告警提示
  568. ChangeModelColor(data[i]["code"],DEV_ALAR_COLOR,this.AlarmType[data[i]["type"]])
  569. }else{
  570. //记录下来,等待模型加载完成时处理
  571. ALARM_DEVS.push(data[i]["code"]+">"+this.AlarmType[data[i]["type"]])
  572. }
  573. }
  574. t.html(lst.join(''))
  575. t.find("tr").off().on('click',function(){
  576. //点击告警行
  577. var devno = $.trim($(this).attr('devno'))
  578. if(devno=='') return;
  579. ShowInfo("C_"+devno)
  580. });
  581. var tb = $("#dev_alarm_list");
  582. if(tb.height()>tb.parent().height()){
  583. if(this.devAlarmAutoLoadTimter!=null) {
  584. clearInterval(this.devAlarmAutoLoadTimter);
  585. }
  586. tb.css({"top":"0px","position":"relative"});
  587. this.devAlarmAutoLoadTimter=window.setInterval(function(){
  588. var tb = $("#dev_alarm_list");
  589. var tbtop = tb.css("top").replace("px","")*1;
  590. if(Math.abs(tbtop)>=(tb.height()-32)){
  591. tb.css("top","0px");
  592. }else{
  593. tb.css("top",(tbtop-32)+"px");
  594. }
  595. },3000);
  596. }else{
  597. clearInterval(this.devAlarmAutoLoadTimter)
  598. tb.css("top","0px");
  599. }
  600. },
  601. //告警趋势数据填充
  602. AlarmLine:function(data){
  603. //只获取数据中的alarm数据
  604. var t =$("#echarts_alarm");
  605. var alarmWeek=[];
  606. var times=[];
  607. var v_series=[];
  608. for (var i = 0; i < data.length; i++) {
  609. var v = data[i]['alarm'];
  610. var tv = data[i]['time'].split("-")
  611. times.push(tv[1]+"-"+tv[2])
  612. if(v!=null) alarmWeek.push(v)
  613. }
  614. if(alarmWeek.length==0){
  615. t.parent().hide();
  616. }else{
  617. v_series.push({
  618. name:"",
  619. type:'line',
  620. smooth: true,
  621. //symbol: 'none',
  622. data:alarmWeek,
  623. itemStyle: {
  624. normal: {
  625. color: '#F0F275', // 这里设置折线的颜色
  626. lineStyle: {
  627. color: '#F0F27560' // 这里同时设置线头的颜色
  628. }
  629. }
  630. },
  631. });
  632. var opt={
  633. title: {
  634. show:false, //不显示标题
  635. text: '',
  636. textStyle:{
  637. color:"rgb(89, 151, 229)",
  638. fontWeight:"bold"
  639. },
  640. top:"0px",
  641. left:"30px"
  642. },
  643. tooltip: {
  644. trigger: 'axis'
  645. },
  646. legend: {
  647. show:false, //不显示图例
  648. inactiveColor:"#04417A",
  649. data:"",
  650. textStyle:{color:"#fff"},
  651. top:"0px"
  652. },
  653. grid: {
  654. left: '1%',
  655. right: '1%',
  656. bottom: '2%',
  657. top:'5%',
  658. containLabel: true
  659. },
  660. xAxis: {
  661. type: 'category',
  662. boundaryGap: false,
  663. axisLabel:{
  664. rotate:45,
  665. color:"#fff"
  666. },
  667. data: times
  668. },
  669. yAxis: {
  670. type: 'value',
  671. nameTextStyle:{
  672. color:"#fff"
  673. },
  674. axisLabel:{
  675. color:"rgb(203,215,235)"
  676. },
  677. splitLine:{
  678. lineStyle:{
  679. color:"#7DA7CD",
  680. type:"dashed",
  681. width:1
  682. }
  683. }
  684. },
  685. series:v_series
  686. };
  687. var echartsEle = echarts.init(t[0]);
  688. echartsEle.setOption(opt);
  689. }
  690. //动态设置停机原因的top
  691. $("#dev_stop").css("top",($("#dev_alarm").offset().top*1+$("#dev_alarm").height()+15)+"px");
  692. },
  693. DevInfo:function(data){
  694. $("#dev_state_total").html(data.total);
  695. $("#dev_state_runtotal").html(data.online);
  696. $("#dev_state .content .stat .number").each(function(){
  697. var attr=$(this).attr("attr");
  698. $(this).html(data[attr])
  699. })
  700. },
  701. StopLine:function(data,typecode){
  702. var t=$("#dev_stop");
  703. var week={"stop1A":[],"stop2A":[],"stop3A":[],"stop1B":[],"stop2B":[],"stop3B":[]};
  704. var times=[];
  705. var v_series=[];
  706. for (var i = 0; i < data.length; i++) {
  707. var tv = data[i]['time'].split("-")
  708. times.push(tv[1]+"-"+tv[2])
  709. for(var k1 in week){
  710. week[k1].push(data[i][k1])
  711. }
  712. }
  713. if((week.stop1A.length+week.stop2A.length+week.stop3A.length+week.stop1B.length+week.stop2B.length+week.stop3B.length)==0){
  714. t.find(".content").hide();
  715. t.find(".title").html("无机器停机");
  716. $("#echarts_stop").html("");
  717. return;
  718. }
  719. t.find(".content").show();
  720. t.find(".title").html("");
  721. var option = {
  722. title: {
  723. show:false,
  724. text: '',
  725. left: 'center',
  726. top: '1%',
  727. bottom:'0'
  728. },
  729. color: ["#37A2DA", "#32C5E9", "#67E0E3", "#9FE6B8", ],
  730. tooltip: {
  731. trigger: 'axis'
  732. },
  733. legend: {
  734. data: ['停经片A班', 'CCD断纱A班', '人工停机A班','停经片B班', 'CCD断纱B班', '人工停机B班',],
  735. button:'5%',
  736. textStyle:{color:"#fff"},
  737. top:"0",
  738. },
  739. grid: {
  740. containLabel: true,
  741. top: '25%',
  742. bottom:'0',
  743. right:'1%',
  744. left:'1%'
  745. },
  746. xAxis: [{
  747. type: 'category',
  748. boundaryGap: true,
  749. data: times,
  750. axisLabel:{
  751. rotate:45,
  752. color:"#fff"
  753. },
  754. axisPointer: {snap: false}
  755. }],
  756. yAxis: [{
  757. type: 'value',
  758. axisPointer: {snap: false},
  759. axisLabel:{
  760. color:"rgb(203,215,235)"
  761. },
  762. splitLine:{
  763. lineStyle:{
  764. color:"#7DA7CD",
  765. type:"dashed",
  766. width:1
  767. }
  768. }
  769. }],
  770. series: [{
  771. name: '停经片A班',
  772. type: 'bar',
  773. barWidth: 5,
  774. stack: 'jp',
  775. data: week.stop1A
  776. }, {
  777. name: '停经片B班',
  778. type: 'bar',
  779. stack: 'jp',
  780. data: week.stop2A
  781. },{
  782. name: 'CCD断纱A班',
  783. type: 'bar',
  784. barWidth: 5,
  785. stack: 'ccd',
  786. data: week.stop3A
  787. }, {
  788. name: 'CCD断纱B班',
  789. type: 'bar',
  790. stack: 'ccd',
  791. data: week.stop1B
  792. },{
  793. name: '人工停机A班',
  794. type: 'bar',
  795. barWidth: 5,
  796. stack: 'r',
  797. data: week.stop2B
  798. }, {
  799. name: '人工停机B班',
  800. type: 'bar',
  801. stack: 'r',
  802. data: week.stop3B
  803. }]
  804. };
  805. var echartsEle = echarts.init($("#echarts_stop")[0]);
  806. echartsEle.setOption(option);
  807. },
  808. LoadSCXL:function(data){
  809. //生产效率
  810. $("#totay1").html(data.totalLength.toFixed(2))
  811. $("#totay2").html(data.totalWeight.toFixed(2))
  812. $("#scxl_a>td:eq(1)").html(data.atime.toFixed(2))
  813. $("#scxl_a>td:eq(2)").html(data.alength.toFixed(2))
  814. $("#scxl_a>td:eq(3)").html(data.aweight.toFixed(2))
  815. $("#scxl_a>td:eq(4)").html(data.aefficiency.toFixed(2))
  816. $("#scxl_b>td:eq(1)").html(data.btime.toFixed(2))
  817. $("#scxl_b>td:eq(2)").html(data.blength.toFixed(2))
  818. $("#scxl_b>td:eq(3)").html(data.bweight.toFixed(2))
  819. $("#scxl_b>td:eq(4)").html(data.befficiency.toFixed(2))
  820. },
  821. LoadJDL:function(data){
  822. //稼动率
  823. //获取数据中efficiency、aefficiency、befficiency
  824. var t = $("#echarts_jiadonglv")
  825. var week_efficiency=[];
  826. var week_aefficiency=[];
  827. var week_befficiency=[];
  828. var times=[];
  829. var v_series=[];
  830. for (var i = 0; i < data.length; i++) {
  831. var v = data[i]['efficiency'];
  832. var tv = data[i]['time'].split("-")
  833. times.push(tv[1]+"-"+tv[2])
  834. if(v!=null) week_efficiency.push(v);
  835. week_aefficiency.push(data[i]['aefficiency'])
  836. week_befficiency.push(data[i]['befficiency'])
  837. }
  838. if(week_efficiency.length==0){
  839. return
  840. }
  841. v_series.push({name:"总稼动率",type:'line',smooth: true, //symbol: 'none',
  842. data:week_efficiency,itemStyle: {
  843. normal: {color: '#F0F275', // 这里设置折线的颜色
  844. lineStyle: {color: '#F0F275' // 这里同时设置线头的颜色
  845. }
  846. }
  847. },
  848. });
  849. v_series.push({name:"A组稼动率",type:'line',smooth: true, //symbol: 'none',
  850. data:week_aefficiency,itemStyle: {
  851. normal: {color: '#1EFFFF', // 这里设置折线的颜色
  852. lineStyle: {color: '#1EFFFF' // 这里同时设置线头的颜色
  853. }
  854. }
  855. },
  856. });
  857. v_series.push({name:"B组稼动率",type:'line',smooth: true, //symbol: 'none',
  858. data:week_befficiency,itemStyle: {
  859. normal: {color: '#295589', // 这里设置折线的颜色
  860. lineStyle: {color: '#295589' // 这里同时设置线头的颜色
  861. }
  862. }
  863. },
  864. });
  865. var opt={
  866. title: {
  867. show:false, //不显示标题
  868. text: '',
  869. textStyle:{
  870. color:"rgb(89, 151, 229)",
  871. fontWeight:"bold"
  872. },
  873. top:"0px",
  874. left:"30px"
  875. },
  876. tooltip: {
  877. trigger: 'axis'
  878. },
  879. legend: {
  880. show:true, //不显示图例
  881. inactiveColor:"#04417A",
  882. data:"",
  883. textStyle:{color:"#fff"},
  884. top:"5",
  885. },
  886. grid: {
  887. left: '3%',
  888. right: '1%',
  889. bottom: '0',
  890. top:'25%',
  891. containLabel: true
  892. },
  893. xAxis: {
  894. type: 'category',
  895. boundaryGap: false,
  896. axisLabel:{
  897. rotate:45,
  898. color:"#fff"
  899. },
  900. data: times
  901. },
  902. yAxis: {
  903. type: 'value',
  904. nameTextStyle:{
  905. color:"#fff"
  906. },
  907. axisLabel:{
  908. color:"rgb(203,215,235)"
  909. },
  910. splitLine:{
  911. lineStyle:{
  912. color:"#7DA7CD",
  913. type:"dashed",
  914. width:1
  915. }
  916. }
  917. },
  918. series:v_series
  919. };
  920. var echartsEle = echarts.init(t[0]);
  921. echartsEle.setOption(opt);
  922. },
  923. LoadSCLine:function(data){
  924. //生产趋势
  925. //获取数据中weight、aweight、bweight
  926. var t = $("#echarts_sc_qushi")
  927. var week_efficiency=[];
  928. var week_aefficiency=[];
  929. var week_befficiency=[];
  930. var times=[];
  931. var v_series=[];
  932. for (var i = 0; i < data.length; i++) {
  933. var v = data[i]['weight'];
  934. var tv = data[i]['time'].split("-")
  935. times.push(tv[1]+"-"+tv[2])
  936. if(v!=null) week_efficiency.push(v);
  937. week_aefficiency.push(data[i]['aweight'])
  938. week_befficiency.push(data[i]['bweight'])
  939. }
  940. if(week_efficiency.length==0){
  941. return
  942. }
  943. v_series.push({name:"总重量",type:'line',smooth: false, //symbol: 'none',
  944. data:week_efficiency,itemStyle: {
  945. normal: {color: '#F0F275', // 这里设置折线的颜色
  946. lineStyle: {color: '#F0F275' // 这里同时设置线头的颜色
  947. }
  948. }
  949. },
  950. });
  951. v_series.push({name:"A组重量",type:'bar',stack:'1',smooth: true, //symbol: 'none',
  952. data:week_aefficiency,itemStyle: {
  953. normal: {color: '#1EFFFF', // 这里设置折线的颜色
  954. lineStyle: {color: '#1EFFFF' // 这里同时设置线头的颜色
  955. }
  956. }
  957. },
  958. barWidth:"15",
  959. itemStyle: {
  960. color: new echarts.graphic.LinearGradient(
  961. 0, 0, 0, 1, // 这四个参数分别表示渐变的起点 (x1, y1) 与终点 (x2, y2)
  962. [
  963. {offset: 0, color: '#1EFFFF'}, // 0% 处的颜色
  964. {offset: 1, color: '#1D7777'} // 100% 处的颜色
  965. ]
  966. )
  967. }
  968. });
  969. v_series.push({name:"B组重量",type:'bar',stack:'1',smooth: true, //symbol: 'none',
  970. data:week_befficiency,itemStyle: {
  971. normal: {color: '#295589', // 这里设置折线的颜色
  972. lineStyle: {color: '#295589' // 这里同时设置线头的颜色
  973. }
  974. }
  975. },
  976. barWidth:"15",
  977. itemStyle: {
  978. barBorderRadius: [3,3,0,0,],
  979. color: new echarts.graphic.LinearGradient(
  980. 0, 0, 0, 1, // 这四个参数分别表示渐变的起点 (x1, y1) 与终点 (x2, y2)
  981. [
  982. {offset: 0, color: '#32A9FF'}, // 0% 处的颜色
  983. {offset: 1, color: '#2B5A7C'} // 100% 处的颜色
  984. ]
  985. )
  986. }
  987. });
  988. var opt={
  989. title: {
  990. show:false, //不显示标题
  991. text: '',
  992. textStyle:{
  993. color:"rgb(89, 151, 229)",
  994. fontWeight:"bold"
  995. },
  996. top:"0px",
  997. left:"30px"
  998. },
  999. tooltip: {
  1000. trigger: 'axis'
  1001. },
  1002. legend: {
  1003. show:true, //不显示图例
  1004. inactiveColor:"#04417A",
  1005. data:"",
  1006. textStyle:{color:"#fff"},
  1007. top:"5",
  1008. },
  1009. tooltip: {
  1010. trigger: 'axis',
  1011. axisPointer: {
  1012. label: {
  1013. show: true,
  1014. backgroundColor: '#fff',
  1015. color: '#556677',
  1016. borderColor: 'rgba(0,0,0,0)',
  1017. shadowColor: 'rgba(0,0,0,0)',
  1018. shadowOffsetY: 0
  1019. },
  1020. lineStyle: {
  1021. width: 0
  1022. }
  1023. },
  1024. backgroundColor: '#fff',
  1025. textStyle: {
  1026. color: '#5c6c7c'
  1027. },
  1028. padding: [10, 10],
  1029. extraCssText: 'box-shadow: 1px 0 2px 0 rgba(163,163,163,0.5)'
  1030. },
  1031. grid: {
  1032. left: '3%',
  1033. right: '1%',
  1034. bottom: '0',
  1035. top:'25%',
  1036. containLabel: true
  1037. },
  1038. xAxis: {
  1039. type: 'category',
  1040. boundaryGap: false,
  1041. axisLabel:{
  1042. rotate:45,
  1043. color:"#fff"
  1044. },
  1045. data: times
  1046. },
  1047. yAxis: {
  1048. type: 'value',
  1049. nameTextStyle:{
  1050. color:"#fff"
  1051. },
  1052. axisLabel:{
  1053. color:"rgb(203,215,235)"
  1054. },
  1055. splitLine:{
  1056. lineStyle:{
  1057. color:"#7DA7CD",
  1058. type:"dashed",
  1059. width:1
  1060. }
  1061. }
  1062. },
  1063. series:v_series
  1064. };
  1065. var echartsEle = echarts.init(t[0]);
  1066. echartsEle.setOption(opt);
  1067. },
  1068. LoadUsedLine:function(data){
  1069. //能耗趋势
  1070. //获取数据中kwh、akwh、bkwh
  1071. var t = $("#echarts_used_qushi")
  1072. var week_efficiency=[];
  1073. var week_aefficiency=[];
  1074. var week_befficiency=[];
  1075. var times=[];
  1076. var v_series=[];
  1077. for (var i = 0; i < data.length; i++) {
  1078. var v = data[i]['kwh'];
  1079. var tv = data[i]['time'].split("-")
  1080. times.push(tv[1]+"-"+tv[2])
  1081. if(v!=null) week_efficiency.push(v);
  1082. week_aefficiency.push(data[i]['akwh'])
  1083. week_befficiency.push(data[i]['bkwh'])
  1084. }
  1085. if(week_efficiency.length==0){
  1086. return
  1087. }
  1088. v_series.push({name:"总电量",type:'line',smooth: true, //symbol: 'none',
  1089. data:week_efficiency,itemStyle: {
  1090. normal: {color: '#F0F275', // 这里设置折线的颜色
  1091. lineStyle: {color: '#F0F275' // 这里同时设置线头的颜色
  1092. }
  1093. }
  1094. },
  1095. });
  1096. v_series.push({name:"A组电量",type:'line',smooth: true, //symbol: 'none',
  1097. data:week_aefficiency,itemStyle: {
  1098. normal: {color: '#1EFFFF', // 这里设置折线的颜色
  1099. lineStyle: {color: '#1EFFFF' // 这里同时设置线头的颜色
  1100. }
  1101. }
  1102. },
  1103. });
  1104. v_series.push({name:"B组电量",type:'line',smooth: true, //symbol: 'none',
  1105. data:week_befficiency,itemStyle: {
  1106. normal: {color: '#295589', // 这里设置折线的颜色
  1107. lineStyle: {color: '#295589' // 这里同时设置线头的颜色
  1108. }
  1109. }
  1110. },
  1111. });
  1112. var opt={
  1113. title: {
  1114. show:false, //不显示标题
  1115. text: '',
  1116. textStyle:{
  1117. color:"rgb(89, 151, 229)",
  1118. fontWeight:"bold"
  1119. },
  1120. top:"0px",
  1121. left:"30px"
  1122. },
  1123. tooltip: {
  1124. trigger: 'axis'
  1125. },
  1126. legend: {
  1127. show:true, //不显示图例
  1128. inactiveColor:"#04417A",
  1129. data:"",
  1130. textStyle:{color:"#fff"},
  1131. top:"5",
  1132. },
  1133. grid: {
  1134. left: '3%',
  1135. right: '1%',
  1136. bottom: '0',
  1137. top:'25%',
  1138. containLabel: true
  1139. },
  1140. xAxis: {
  1141. type: 'category',
  1142. boundaryGap: false,
  1143. axisLabel:{
  1144. rotate:45,
  1145. color:"#fff"
  1146. },
  1147. data: times
  1148. },
  1149. yAxis: {
  1150. type: 'value',
  1151. nameTextStyle:{
  1152. color:"#fff"
  1153. },
  1154. axisLabel:{
  1155. color:"rgb(203,215,235)"
  1156. },
  1157. splitLine:{
  1158. lineStyle:{
  1159. color:"#7DA7CD",
  1160. type:"dashed",
  1161. width:1
  1162. }
  1163. }
  1164. },
  1165. series:v_series
  1166. };
  1167. var echartsEle = echarts.init(t[0]);
  1168. echartsEle.setOption(opt);
  1169. }
  1170. }
  1171. $(document).ready(function(){
  1172. $("#dev_stop").css("top",($("#dev_alarm").offset().top*1+$("#dev_alarm").height()+15)+"px");
  1173. $("#search input:eq(0)").off().on('keypress',function(e){
  1174. if(e.keyCode==13){
  1175. search()
  1176. }
  1177. });
  1178. $("#imp_btn").on('click',function(e){
  1179. e.stopPropagation();
  1180. $('#imp_item').show();
  1181. $('#search_result').hide()
  1182. })
  1183. $("#search .search_btn").on('click',function(e){
  1184. e.stopPropagation();
  1185. search();
  1186. })
  1187. $("#imp_item>div").on('click',function(){
  1188. //导出数据
  1189. var code = $(this).attr("itemcode")
  1190. window.open(SERVER_URL+"/export/"+code)
  1191. })
  1192. $("#autoplayer_btn").off().on('click',function(){
  1193. var img=$(this).find("img");
  1194. AutoPlayer=!AutoPlayer
  1195. if(AutoPlayer){
  1196. img.attr("src","image/auto3d_start.png");
  1197. try{
  1198. //循环播放
  1199. player.Native.CameraAnimation.setLoop(true);
  1200. // 播放动画
  1201. player.Native.CameraAnimation.start();
  1202. }catch(e){}
  1203. }else{
  1204. img.attr("src","image/auto3d_stop.png");
  1205. try{
  1206. player.Native.CameraAnimation.stop();
  1207. }catch(e){}
  1208. }
  1209. })
  1210. function GetData(){
  1211. $.getJSON(SERVER_URL+"/index",{},function(res){
  1212. setTimeout(function(){
  1213. //每60秒主动查询一次数据
  1214. GetData()
  1215. },60000);
  1216. if(res==null || res.code!=0){
  1217. return
  1218. }
  1219. var jsondata=res.data;
  1220. DataFill.AlarmLine(jsondata.weekData)
  1221. DataFill.StopLine(jsondata.weekData)
  1222. DataFill.LoadSCXL(jsondata.efficiency)
  1223. DataFill.LoadJDL(jsondata.weekData)
  1224. DataFill.LoadSCLine(jsondata.weekData)
  1225. DataFill.LoadUsedLine(jsondata.weekData)
  1226. })
  1227. }
  1228. //获取数据
  1229. GetData();
  1230. function GetAlarmData(){
  1231. $.getJSON(SERVER_URL+"/alarm",{},function(res){
  1232. setTimeout(function(){
  1233. //每10秒主动查询一次数据
  1234. GetAlarmData()
  1235. },10000);
  1236. if(res==null || res.code!=0){
  1237. return
  1238. }
  1239. var jsondata=res.data;
  1240. DataFill.DevInfo(jsondata.device)
  1241. DataFill.AlarmTable(jsondata.alarm)
  1242. })
  1243. }
  1244. //获取数据
  1245. GetAlarmData();
  1246. });
  1247. //最佳视图
  1248. function backMasterView(){
  1249. player.Native.Camera.moveTo([-60.91624261330108, -39.68511717426356, 85.99570940739352],[-61.26059834308166, -0.225858934410347, -0.5930273740619612],[-0.007940809332449061, 0.9099266223396253, 0.41469324265623975],1);
  1250. }
  1251. //1.创建RemotePlayer对象
  1252. var player = new RemotePlayer({
  1253. video: document.getElementById("EngineContent"), //绑定视频标签或图片标签
  1254. signalServer: PLAYER3D_URL, //云渲染服务器,发布时需要改为实际地址
  1255. engineId: "" + Date.now(), // 引擎会话id,如果已存在则连接,没有则创建,会话在断开连接后超时自动关闭
  1256. rtcIni: 'rtc.ini', // 可指定webrtc配置文件,默认为rtc.ini,相对目录为集群节点的enginePath目录
  1257. autoResize: true, // 引擎是否跟跟随标签尺寸
  1258. limtMoveCPS: 10, // 限制每秒鼠标移动的消息个数
  1259. userTimeout: 1000 * 60 * 60 * 5, // 用户操作超时设置,毫秒
  1260. exitTimeout: 1000 * 60 * 60 * 999999, // 用户超时后多久断开会话
  1261. maxTimeout: 1000, // 会话超时时间,允许掉线后引擎保存多久,在该时间内可重新连接到会话,否则会创建新的会话
  1262. debug: false // 是否启用调试,开启后调用Native接口时会使用console.log进行记录
  1263. });
  1264. var playerConnState=false;
  1265. //2.[可选]监听连接成功消息
  1266. player.on("Connected", () => {
  1267. console.log("Has connected to engine")
  1268. playerConnState = true
  1269. });
  1270. //3.[可选]监听连接失败消息
  1271. player.on("Disconnected", (e) => {
  1272. console.log("Disconnected from engine", e);
  1273. playerConnState = false
  1274. //4.[推荐]尝试重新连接
  1275. setTimeout(function(){
  1276. if(playerConnState) return
  1277. player.reconnect();
  1278. },10000)
  1279. });
  1280. //5. [推荐] 响应UserTimeOut消息,引擎接收用户鼠标触屏事件超时发出通知
  1281. player.on("UserTimeOut", () => {
  1282. console.info(`用户长时间没有操作三维视图,会话即将退出,可调用player.resetTimer()取消退出`);
  1283. if(!AutoPlayer) $("#autoplayer_btn").trigger('click') //开启自动漫游
  1284. });
  1285. //6.监听远程过程调用加载完成消息
  1286. player.on("NativeLoad", async (Native) => {
  1287. var devAllCount = 6*12*2-4 //设备总数
  1288. //var loadedcnt = document.getElementById("loadedcnt")
  1289. //var totalcnt = document.getElementById("totalcnt")
  1290. //totalcnt.innerText = devAllCount;
  1291. //loadedcnt.innerText="0";
  1292. var cf="data://models/ALL.pr";
  1293. var t2File = "data://models/T2.pr";
  1294. //var SamplerFile = "data://models/sampler.pr";
  1295. // var errStr = await PlayerUtils.call(Native.NodeProxy.openProject, "data://pprj/test/test.pprj");
  1296. // 加载工程模型
  1297. var errStr = await PlayerUtils.call(Native.Model.loadModel, "all", cf);
  1298. //let cfInfo=await player.Native.Model.getInfo("all");
  1299. //player.Native.NodeProxy.setNodeRotation(cfInfo.nodePtr, [0,0,90]);
  1300. var rootItem = await player.Native.ModelTree.getRootItems()
  1301. var rowItems = await player.Native.ModelTree.getSubItems(rootItem[0].item)
  1302. for(var row =0;row<rowItems.length;row++){
  1303. if( rowItems[row].name.length<2 || rowItems[row].name.substr(0,1)!="R") continue;
  1304. var devItems = await player.Native.ModelTree.getSubItems(rowItems[row].item)
  1305. for (var i = 0; i < devItems.length; i++) {
  1306. if(devItems[i].name.length<2 || devItems[i].name.substr(0,2)!='C_') continue
  1307. var tmp = devItems[i] ;// await player.Native.ModelTree.findItemByName(name,0,true,3);
  1308. //计算当前设备在世界坐标
  1309. var xyz=await player.Native.ModelTree.calcItemAabb(tmp.item)
  1310. var xyz2=[(xyz.aabb.max[0]+xyz.aabb.min[0])*0.5,(xyz.aabb.max[1]+xyz.aabb.min[1])*0.5,(xyz.aabb.max[2]+xyz.aabb.min[2])*0.5];
  1311. // 创建设备编号标记
  1312. var options = {"text":devItems[i].name.replace("C_","")+"#","visible":true,"maxLod":110,"minLod":0.1,"textColor":parseInt("0xffffffff")};
  1313. options.pos = [xyz2[0]-1.5,xyz2[1]-3,0]
  1314. var markPtr = await player.Native.GisMarker.create(options);
  1315. player.Native.GisMarker.update(markPtr, options);
  1316. modelsMap[tmp.name] = {item: tmp.item,xyz:xyz2}
  1317. }
  1318. }
  1319. //loadedcnt.innerText=totalcnt.innerText;
  1320. MODEL_LOADED = 1;
  1321. if(ALARM_DEVS.length>0){
  1322. for (var i = 0; i < ALARM_DEVS.length; i++) {
  1323. var s = ALARM_DEVS[i].split(">")
  1324. ChangeModelColor(s[0],DEV_ALAR_COLOR,s[1]);
  1325. }
  1326. ALARM_DEVS=[];//清除
  1327. }
  1328. for (var i in ANIMATION_DATA) {
  1329. // 添加关键帧
  1330. player.Native.CameraAnimation.addKeyFrames([ANIMATION_DATA[i]]);
  1331. }
  1332. document.getElementById("loading").remove(true) //加载完成,移除Loading
  1333. document.getElementById("loading_a1").remove(true)
  1334. //调整视角,使其达到最佳初始效果
  1335. backMasterView();
  1336. //player.Native.Camera.moveToItem(lastPtr,1);
  1337. // // 选择Pickup工具
  1338. player.Native.Tools.setCurrentTool("system.Pickup");
  1339. //不显示提示框
  1340. player.Native.Settings.set("tips.enabled", "bool", false);
  1341. // //点选高亮显示
  1342. player.Native.Settings.set("pickUp.highlight", "bool", false);
  1343. //点选包围盒
  1344. player.Native.Settings.set("show.select.box", "bool", false);
  1345. player.Native.Settings.set("skybox.select", "string", "blue");
  1346. //点选背景虚化
  1347. player.Native.Settings.set("color.pickup.bkAlpha", "float", 0.8);
  1348. // 选中展示节点
  1349. // sam0023 = await player.Native.ModelTree.findItemByName("CYLINDER 3 of EQUIPMENT /C1101", 0, true, 3);
  1350. player.Native.Settings.set('ambientIndenty', 'float', 0.39);//初始化环境光补偿
  1351. player.Native.Settings.set('diffuseIntensity', 'float', 0.8);//初始化光线强度
  1352. player.Native.Settings.set('specularIntensity', 'float', 0.64);//初始化高光强度
  1353. player.Native.Settings.set('searchLightIntensity', 'float', 0.5);//初始化探照灯强度
  1354. // 点击事件一般仅用于浏览工具,在点选工具下无效
  1355. Native.Tools.setCurrentTool("system.Browse");
  1356. Native.ModelTree.EventBrowseLClick.connect((event) => {
  1357. updateInfo("LClick", event)
  1358. });
  1359. Native.ModelTree.EventBrowseRClick.connect((event) => {
  1360. updateInfo("RClick", event)
  1361. });
  1362. })
  1363. async function updateSettings(object, type) {
  1364. console.log(object)
  1365. if (object.id) {
  1366. if (type == "bool") {
  1367. player.Native.Settings.set(object.id, type, object.checked);
  1368. } else if (type == "red") {
  1369. //参数前3个为RGB值,最后一个为透明度?,有点问题,好像不是正常的RGB?
  1370. const xx = document.getElementById("color.value");
  1371. player.Native.Settings.set(object.id, "string", xx.value);
  1372. } else {
  1373. player.Native.Settings.set(object.id, type, object.value);
  1374. }
  1375. // 更新span值
  1376. if (type == "float") {
  1377. var showValueStr = object.id + "Value";
  1378. if (document.getElementById(showValueStr))
  1379. document.getElementById(showValueStr).innerText = object.value;
  1380. }
  1381. }
  1382. }
  1383. //修改模型
  1384. async function updateModel(object) {
  1385. // sam0023 = await player.Native.ModelTree.getSelectedItem();
  1386. sam0023 = await player.Native.ModelTree.getItemBySelfId(2433);
  1387. console.log("0023", sam0023);
  1388. if (object.id === "selectItem") {
  1389. // if (object.checked) {
  1390. player.Native.ModelTree.setSelectItem(sam0023.item);
  1391. // } else {
  1392. // player.Native.ModelTree.setSelectItem(0);
  1393. // }
  1394. } else if (object.id == "itemColor") {
  1395. console.log("瓦特?", JSON.stringify(sam0023))
  1396. // if (object.checked) {
  1397. const xx = document.getElementById("color.value");
  1398. player.Native.ModelTree.setItemColor(sam0023.item, parseInt(xx.value));
  1399. // } else {
  1400. // player.Native.ModelTree.restoreItemColor(sam0023.item);
  1401. // }
  1402. } else if (object.id == "itemColorClean") {
  1403. player.Native.ModelTree.restoreItemColor(sam0023.item);
  1404. } else if (object.id == "itemVisible") {
  1405. player.Native.ModelTree.setItemVisible(sam0023.item, object.checked);
  1406. }
  1407. }
  1408. //设置设置名称或者模型id的颜色
  1409. async function ChangeModelColor(name,color,hinttxt){
  1410. var iteminfo = modelsMap[name]
  1411. if(iteminfo==null) return
  1412. //var tmp = await player.Native.ModelTree.findItemByName(name,0,true,3);
  1413. if (color==null || color==""){
  1414. //还原
  1415. player.Native.ModelTree.restoreItemColor(iteminfo.item)
  1416. }else{
  1417. player.Native.ModelTree.setItemColor(iteminfo.item,parseInt("0x"+color+"ff"),true)
  1418. if(hinttxt!=null && hinttxt!=""){
  1419. var srcPosition = iteminfo.xyz // await player.Native.NodeProxy.getNodePosition(temp.item);
  1420. //console.log("posio",srcPosition)
  1421. // 创建标记
  1422. var imgid = await player.Native.GisMarker.loadImage("rgba:255,0,0,255");
  1423. var options = {"text":hinttxt,"visible":true,"maxLod":110,"minLod":0.1,"textColor":parseInt("0xffffffff")};
  1424. options.pos = [srcPosition[0]-1,srcPosition[1]-2,srcPosition[2]];
  1425. //options.parentNode=tmp.item;
  1426. options.imgId = imgid
  1427. options.imgSize=[-1,-1];
  1428. var markPtr = await player.Native.GisMarker.create(options);
  1429. player.Native.GisMarker.update(markPtr, options);
  1430. }
  1431. }
  1432. }
  1433. var LastClickObj=null;
  1434. var openState = false;
  1435. var dbClickTimer=null;
  1436. async function updateInfo(name, event) {
  1437. if(AutoPlayer) $("#autoplayer_btn").trigger('click') //停止 自动漫游
  1438. if(name!="LClick"){
  1439. CloseWin()
  1440. HideInfo();
  1441. return
  1442. }
  1443. //console.log(event)
  1444. var ty = event.object.nodePtr!=null ? 'NODE' : 'ITEM';
  1445. var modelsId = ty=='NODE' ? event.object.nodePtr : event.object.item;
  1446. if (modelsId==null || modelsId==""){
  1447. CloseWin()
  1448. HideInfo();
  1449. return
  1450. }
  1451. var devName=null;
  1452. var cnt=0;
  1453. var p = null;
  1454. while(devName==null){
  1455. if(cnt>5) break //最多查找5层
  1456. if(ty=='NODE') p=await player.Native.NodeProxy.getNodeParent(modelsId) //节点类型的node
  1457. else p= await player.Native.ModelTree.getItemInfo(modelsId)
  1458. if(p.name!=null && p.name.substr(0,2)=="C_"){
  1459. devName = p.name
  1460. break
  1461. }
  1462. modelsId = ty=='NODE'? p.nodePtr : p.parentItem;
  1463. cnt++
  1464. }
  1465. if(devName==null){
  1466. CloseWin()
  1467. HideInfo();
  1468. return
  1469. }
  1470. console.log(name,devName)
  1471. if(devName==LastClickObj){
  1472. if(dbClickTimer!=null) clearTimeout(dbClickTimer)
  1473. HideInfo();
  1474. //双击
  1475. if(openState) return //窗口已经打开
  1476. OpenWin(devName)
  1477. return
  1478. }
  1479. CloseWin();
  1480. HideInfo();
  1481. LastClickObj = devName
  1482. dbClickTimer = setTimeout(function(n){
  1483. ShowInfo(n)
  1484. LastClickObj=null
  1485. },200,devName)
  1486. }
  1487. function search(){
  1488. var v= $.trim($("#search input:eq(0)").val());
  1489. var s2=$("#search_result")
  1490. if(v==""){
  1491. s2.html("").hide();
  1492. return
  1493. }
  1494. var lst=[];
  1495. for(var k in modelsMap){
  1496. if(k.indexOf(v)>-1){
  1497. lst.push('<div class="item" devno="'+k+'">'+k.replace("C_","")+'</div>')
  1498. }
  1499. }
  1500. s2.html(lst.join("")).show();
  1501. if(lst.length==0){
  1502. s2.html('未搜索到任何设备')
  1503. return
  1504. }
  1505. s2.find(".item").off().on('click',function(){
  1506. ShowInfo($(this).attr('devno'))
  1507. })
  1508. }
  1509. //打开单设备窗口
  1510. function OpenWin(name){
  1511. if(LastClickObj!=null && name!=LastClickObj) return;
  1512. openState=true
  1513. name = name.replace("C_","")
  1514. $("#newwin .title .text:eq(0)").html(name)
  1515. $("#newwin").show();
  1516. $("#newwin .content .btn").removeClass("btn_active");
  1517. $("#newwin .content .btn:eq(0)").addClass("btn_active");
  1518. $("#newwin .content .btn").off().on("click",function(){
  1519. if($(this).hasClass("btn_active")) return
  1520. $("#newwin .content .btn").removeClass("btn_active");
  1521. $(this).addClass("btn_active");
  1522. LoadDevDetail(name,window.Device_Data,$(this).index())
  1523. })
  1524. $.getJSON(SERVER_URL+"/query/C_"+name,{},function(res){
  1525. window.Device_Data = res.data
  1526. LoadDevDetail(name,window.Device_Data,"0")
  1527. })
  1528. }
  1529. //关闭窗口
  1530. function CloseWin(){
  1531. LastClickObj=null
  1532. openState=false
  1533. window.Device_Data=null;
  1534. $("#newwin").hide();
  1535. }
  1536. //显示设备基本信息
  1537. async function ShowInfo(name){
  1538. var se=modelsMap[name];// await player.Native.ModelTree.findItemByName(name,0,true,3);
  1539. //选中
  1540. player.Native.ModelTree.setSelectItem(se.item);
  1541. var calcInfo = await PlayerUtils.call(player.Native.ModelTree.calcItemAabb, se.item);
  1542. player.Native.Camera.moveToAabbWithDistance([calcInfo.localAabb.min, calcInfo.localAabb.max], 0.2,21, 4);
  1543. name = name.replace("C_","")
  1544. $("#showinfo .title .text").html(name+"#经编机-基本信息")
  1545. $("#showinfo").show();
  1546. $.getJSON(SERVER_URL+"/query/C_"+name,{},function(res){
  1547. LoadDevBaseData(res.data.data)
  1548. })
  1549. }
  1550. //隐藏设备基本信息
  1551. function HideInfo(){
  1552. $("#showinfo").hide();
  1553. }
  1554. function LoadDevBaseData(data){
  1555. var t = $("#showinfo .content");
  1556. //盘头剩余时间
  1557. var tb = t.find("table:eq(0)>tbody>tr:eq(2)");
  1558. tb.find("td:eq(0)").html(data.Capacity_data_5);
  1559. tb.find("td:eq(1)").html(data.Capacity_data_6);
  1560. tb.find("td:eq(2)").html(data.Capacity_data_7);
  1561. tb.find("td:eq(3)").html(data.Capacity_data_8);
  1562. tb.find("td:eq(4)").html(data.Capacity_data_9);
  1563. //盘头剩余周长
  1564. tb = t.find("table:eq(1)>tbody>tr:eq(2)");
  1565. tb.find("td:eq(0)").html(data.Capacity_data_10);
  1566. tb.find("td:eq(1)").html(data.Capacity_data_11);
  1567. tb.find("td:eq(2)").html(data.Capacity_data_12);
  1568. tb.find("td:eq(3)").html(data.Capacity_data_13);
  1569. tb.find("td:eq(4)").html(data.Capacity_data_14);
  1570. //盘头剩余圈数
  1571. tb = t.find("table:eq(2)>tbody>tr:eq(2)");
  1572. tb.find("td:eq(0)").html(data.Capacity_data_15);
  1573. tb.find("td:eq(1)").html(data.Capacity_data_16);
  1574. tb.find("td:eq(2)").html(data.Capacity_data_17);
  1575. tb.find("td:eq(3)").html(data.Capacity_data_18);
  1576. tb.find("td:eq(4)").html(data.Capacity_data_19);
  1577. }
  1578. function LoadDevDetail(name,data,typecode){
  1579. if(typecode==null) typecode="0";
  1580. $("#newwin .dataContent>div").hide()
  1581. var t=$("#newwin .dataContent>div:eq("+typecode+")").show();
  1582. if(typecode=="0"){
  1583. //告警周趋势
  1584. t =t.find(".dev_alarm_echarts");
  1585. var alarmWeek=[];
  1586. var times=[];
  1587. var v_series=[];
  1588. for (var i = 0; i < data.alarms.length; i++) {
  1589. var v = data.alarms[i]['value'];
  1590. var tv = data.alarms[i]['time'].split("-")
  1591. times.push(tv[1]+"-"+tv[2])
  1592. if(v!=null) alarmWeek.push(v)
  1593. }
  1594. if(alarmWeek.length==0){
  1595. t.html('未获取到告警趋势数据')
  1596. }else{
  1597. v_series.push({
  1598. name:"",
  1599. type:'line',
  1600. smooth: true,
  1601. //symbol: 'none',
  1602. data:alarmWeek,
  1603. itemStyle: {
  1604. normal: {
  1605. color: '#F0F275', // 这里设置折线的颜色
  1606. lineStyle: {
  1607. color: '#F0F27560' // 这里同时设置线头的颜色
  1608. }
  1609. }
  1610. },
  1611. });
  1612. var opt={
  1613. title: {
  1614. show:false, //不显示标题
  1615. text: '',
  1616. textStyle:{
  1617. color:"rgb(89, 151, 229)",
  1618. fontWeight:"bold"
  1619. },
  1620. top:"0px",
  1621. left:"30px"
  1622. },
  1623. tooltip: {
  1624. trigger: 'axis'
  1625. },
  1626. legend: {
  1627. show:false, //不显示图例
  1628. inactiveColor:"#04417A",
  1629. data:"",
  1630. textStyle:{color:"#fff"},
  1631. top:"0px"
  1632. },
  1633. grid: {
  1634. left: '1%',
  1635. right: '1%',
  1636. bottom: '2%',
  1637. top:'5%',
  1638. containLabel: true
  1639. },
  1640. xAxis: {
  1641. type: 'category',
  1642. boundaryGap: false,
  1643. axisLabel:{
  1644. rotate:45,
  1645. color:"#fff"
  1646. },
  1647. data: times
  1648. },
  1649. yAxis: {
  1650. type: 'value',
  1651. nameTextStyle:{
  1652. color:"#fff"
  1653. },
  1654. axisLabel:{
  1655. color:"rgb(203,215,235)"
  1656. },
  1657. splitLine:{
  1658. lineStyle:{
  1659. color:"#7DA7CD",
  1660. type:"dashed",
  1661. width:1
  1662. }
  1663. }
  1664. },
  1665. series:v_series
  1666. };
  1667. var echartsEle = echarts.init(t[0]);
  1668. echartsEle.setOption(opt);
  1669. }
  1670. //当前告警数据加载
  1671. if(DataFill.AlarmData==null || DataFill.AlarmData.length==0){
  1672. $(".newwin .dataContent .no_alarm").show();
  1673. $(".newwin .dataContent .has_alarm").hide();
  1674. return
  1675. }
  1676. var t1 = [];
  1677. for (var i = 0; i < DataFill.AlarmData.length; i++) {
  1678. if(DataFill.AlarmData[i].code=='C_'+name){
  1679. t1.push(DataFill.AlarmType[DataFill.AlarmData[i].type])
  1680. }
  1681. }
  1682. if(t1.length==0){
  1683. $(".newwin .dataContent .no_alarm").show();
  1684. $(".newwin .dataContent .has_alarm").hide();
  1685. return
  1686. }
  1687. $(".newwin .dataContent .no_alarm").hide();
  1688. var a1=$(".newwin .dataContent .has_alarm").show().html("");
  1689. for (var i = 0; i < t1.length; i++) {
  1690. a1.append('<span class="alarm_span"><img src="image/alarm_icon.png" style="vertical-align: middle;"><b>'+t1[i]+'</b></span>')
  1691. }
  1692. }else{
  1693. t.find(".value").each(function(){
  1694. var th=$(this), attrname=th.attr("attr"),unit=th.attr("unit"),v=data.data[attrname];
  1695. if(v=="true") v="开";
  1696. if(v=="false") v="关";
  1697. if(unit!="") th.html(v+"("+th.attr("unit")+")")
  1698. else th.html(v)
  1699. })
  1700. }
  1701. }
  1702. </script>
  1703. <style type="text/css">
  1704. </script>