TankConfigRnav.cshtml 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. 
  2. <div id="TankConfigDiv">
  3. <form action="" method="post" class="config-form">
  4. <div class="config-form-group">
  5. <label class="config-form-label">油罐编号选择</label>
  6. <select class="config-form-select" v-model="values.DeviceId" @@change="changeSerial">
  7. <option v-for='item in values.atgList' v-bind:value='item.DeviceId'>{{ item.Name }}</option>
  8. </select>
  9. <span class="config-form-danger"></span>
  10. </div>
  11. <div class="config-form-hint-group">
  12. <label class="config-form-hint">请选择罐号编辑</label>
  13. </div>
  14. <div class="config-form-group">
  15. <label class="config-form-label">油罐总容积(升)</label>
  16. <input class="config-form-input" v-model="values.FullVolume" />
  17. <span class="config-form-danger">请输入探棒物理地址</span>
  18. </div>
  19. <div class="config-form-hint-group">
  20. <label class="config-form-hint">油罐可用总容量</label>
  21. </div>
  22. <div class="config-form-group">
  23. <label class="config-form-label">高油位警戒线(%)</label>
  24. <input class="config-form-input" v-model="values.HighProduct" />
  25. <span class="config-form-danger">请输入人工标注</span>
  26. </div>
  27. <div class="config-form-hint-group">
  28. <label class="config-form-hint">高油位警戒线,总容量百分比计算</label>
  29. </div>
  30. <div class="config-form-group">
  31. <label class="config-form-label">入油高油位警戒线(%)</label>
  32. <input class="config-form-input" v-model="values.HighProduct" />
  33. <span class="config-form-danger">请输入人工标注</span>
  34. </div>
  35. <div class="config-form-hint-group">
  36. <label class="config-form-hint">入油时,高油位警戒线,总容量百分比计算</label>
  37. </div>
  38. <div class="config-form-group">
  39. <label class="config-form-label">入油极限警戒线(%)</label>
  40. <input class="config-form-input" v-model="values.HighProduct" />
  41. <span class="config-form-danger">请输入人工标注</span>
  42. </div>
  43. <div class="config-form-hint-group">
  44. <label class="config-form-hint">入油时,极限最高油位警戒线,总容量百分比计算</label>
  45. </div>
  46. <div class="config-form-group">
  47. <label class="config-form-label">低油位警戒线(升)</label>
  48. <input class="config-form-input" v-model="values.LowProduct" />
  49. <span class="config-form-danger"></span>
  50. </div>
  51. <div class="config-form-hint-group">
  52. <label class="config-form-hint">低油位警戒线,按照升计算</label>
  53. </div>
  54. <div class="config-form-group">
  55. <label class="config-form-label">高水位预警线(毫米)</label>
  56. <input class="config-form-input" v-model="values.HighWaterWarning" />
  57. <span class="config-form-danger"></span>
  58. </div>
  59. <div class="config-form-hint-group">
  60. <label class="config-form-hint">水位过高预警线</label>
  61. </div>
  62. <div class="config-form-group">
  63. <label class="config-form-label">高水位报警线(毫米)</label>
  64. <input class="config-form-input" v-model="values.HighWaterAlarm" />
  65. <span class="config-form-danger"></span>
  66. </div>
  67. <div class="config-form-hint-group">
  68. <label class="config-form-hint">水位过高报警线</label>
  69. </div>
  70. <div class="config-form-group">
  71. <label class="config-form-label">水位报警筛选等级</label>
  72. <input class="config-form-input" value="LOW" required />
  73. <span class="config-form-danger"></span>
  74. </div>
  75. <div class="config-form-hint-group">
  76. <label class="config-form-hint" style="color: transparent;">p</label>
  77. </div>
  78. <div class="config-form-group">
  79. <label class="config-form-label">水位报警时间延迟</label>
  80. <input class="config-form-input" value="180" required />
  81. <span class="config-form-danger"></span>
  82. </div>
  83. <div class="config-form-hint-group">
  84. <label class="config-form-hint" style="color: transparent;">p</label>
  85. </div>
  86. <div class="config-form-group">
  87. <label class="config-form-label">油温下限(℃)</label>
  88. <input class="config-form-input" v-model="values.FuelTemperatureLowLimit" />
  89. <span class="config-form-danger"></span>
  90. </div>
  91. <div class="config-form-hint-group">
  92. <label class="config-form-hint">油温低于设定值则报警</label>
  93. </div>
  94. <div class="config-form-group">
  95. <label class="config-form-label">油温上限(℃)</label>
  96. <input class="config-form-input" v-model="values.FuelTemperatureHighLimit" />
  97. <span class="config-form-danger"></span>
  98. </div>
  99. <div class="config-form-hint-group">
  100. <label class="config-form-hint">油温高于设定值则报警</label>
  101. </div>
  102. <div class="config-form-group">
  103. <label class="config-form-label">上传油罐容积表</label>
  104. <div class="config-form-file-bg">
  105. <input class="config-form-file" type="file" @@change="changeFile" />
  106. </div>
  107. <span class="config-form-danger"></span>
  108. </div>
  109. <div class="config-form-hint-group">
  110. <label class="config-form-hint">选择匹配的容积表文件上传</label>
  111. <label class="config-form-hint">文件名{{ fileName }}</label>
  112. </div>
  113. <div class="config-form-submit-group">
  114. <label :class="show ? (result ? 'config-form-result' : 'config-form-result-fail') : 'color-transparent'">{{ result ? '提交完成' : '提交失败' }}</label>
  115. </div>
  116. <div class="config-form-submit-group">
  117. <label class="config-form-label"></label>
  118. <button class="config-form-submit" type="button" @@click="submit(event)" id="TankLimitConfig" />
  119. </div>
  120. </form>
  121. </div>
  122. <script type="text/javascript">
  123. var vm = new Vue({
  124. el: '#TankConfigDiv',
  125. data: {
  126. values: { 'atgList': [{ 'DeviceId': 1, 'Name': '1号罐探棒' }, { 'DeviceId': 3, 'Name': '3号罐探棒' }], 'DeviceId': 3, 'FullVolume': 1960.00, 'HighProduct': 90.00, 'LowProduct': 30, 'HighWaterWarning': 100.00, 'HighWaterAlarm': 135.00, 'FuelTemperatureLowLimit': -50, 'FuelTemperatureHighLimit': 60 },
  127. descrip: '',
  128. fileName: '',
  129. show: false,
  130. result: false
  131. },
  132. mounted: function () {
  133. let path = '/sys/atg_classic_App/Application.ATG_Classic_App.App/thing/service/GetConfigAsync'
  134. Publish1(path)
  135. },
  136. methods: {
  137. changeFile: function (ev) {
  138. if (window.FileReader && ev.target.files.length) {
  139. let fr = new FileReader()
  140. let file = ev.target.files[0]
  141. fr.onloadend = function (e) {
  142. vm.values.fileContent = e.target.result
  143. }
  144. this.fileName = file.name
  145. fr.readAsText(file)
  146. } else {
  147. alert("Not supported by your browser!")
  148. }
  149. },
  150. changeSerial: function (ev) {
  151. console.log(this.values.DeviceId, ev.target)
  152. //let val = this.values.atgList.find((m) => m.DeviceId == this.values.DeviceId)
  153. //this.descrip = val.Name
  154. },
  155. submit(e) {
  156. let path = '/sys/atg_classic_App/Application.ATG_Classic_App.App/thing/service/UpsertConfigAsync'
  157. Publish(e.target.id, JSON.stringify(this.values), path)
  158. return false
  159. }
  160. }
  161. })
  162. function OnReply(jsonObj) {
  163. console.log(JSON.stringify(jsonObj));
  164. //vm.values = jsonObj
  165. }
  166. </script>