descripDialog.vue 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. <template>
  2. <div class="descripDialog">
  3. <el-dialog
  4. :title="dialogTitle"
  5. v-model="dialogVisible"
  6. width="600px"
  7. @close="closeDialog(0)"
  8. @open="open"
  9. >
  10. <div style="width: 100%; ">
  11. <el-tabs v-model="activeName" @tab-click="handleClick">
  12. <el-tab-pane label="判定标准" name="first">
  13. <div class="desBlock">
  14. <h3>【电压】</h3>
  15. <span>电压偏差国标:</span>
  16. <span>35KV及以上正、负偏差的绝对值之和不超过标称电压的10%;</span>
  17. <span>20kv及以下电压偏差为标称电压的±7%;</span>
  18. <span>400V及以下电压偏差为标称电压的+7%、-10%;</span>
  19. <span>标称电压=额定电压,其数值为线电压</span>
  20. <span>比如:额定电压为380V,电压偏差的上限 和 下限分别为235.4V 和 198V</span>
  21. </div>
  22. <div class="desBlock">
  23. <h3>【频率】</h3>
  24. <span>频率超限范围:50±0.2(Hz)</span>
  25. </div>
  26. <div class="desBlock">
  27. <h3>【功率因数】</h3>
  28. <span>功率因数超限范围:用户可配置功率因数标准值</span>
  29. </div>
  30. <div class="desBlock">
  31. <h3>【三相不平衡】</h3>
  32. <span>三相不平衡度超限范围:15%</span>
  33. </div>
  34. <div class="desBlock">
  35. <h3>【电流负载率】</h3>
  36. <span>电流负载率超限范围:用户可配置电流负载率门限值</span>
  37. <span>电流负载率=电流/额定电流</span>
  38. </div>
  39. <div class="desBlock">
  40. <h3>【单项结论】</h3>
  41. <span>合格率:(测点数-超限数)/测点数×100%</span>
  42. <span>合格率>=95% 「合格」</span>
  43. <span>合格率95% 「不合格」</span>
  44. </div>
  45. </el-tab-pane>
  46. <el-tab-pane label="配置内容" name="second">
  47. <div class="desBlock">
  48. <h3>【站点级配置】<a @click="goSitePowerScore">立即前往</a></h3>
  49. <p>请在 站点管理->电能质量评分配置中配置 或 联系运维管理员:</p>
  50. <span>电能质量各要素权重、功率因数标准值</span>
  51. </div>
  52. <div class="desBlock">
  53. <h3>【设备级配置】<a @click="goSiteWatchDog">立即前往</a></h3>
  54. <p>请在 站点管理->监控设备中配置 或 联系运维管理员:</p>
  55. <span>额定电压、额定电流、电流负载率门限、电能质量分析</span>
  56. <span>如果设备没有配置额定电压,电压/谐波畸变率分析项可能没有数据</span>
  57. <span>如果设备不勾选电能质量分析,该设备不参与电能质量分析</span>
  58. </div>
  59. <div class="desBlock">
  60. <h3>【变量级配置】<a @click="goSiteVariableList">立即前往</a></h3>
  61. <p>请在 站点管理->变量列表中配置 或 联系运维管理员:配置下列变量,且需要指定变量的变量属性</p>
  62. <span>A/B/C相电压</span>
  63. <span>A/B/C相电流</span>
  64. <span>功率因数</span>
  65. <span>频率</span>
  66. <span>有功/无功功率</span>
  67. <span>有功/无功电度</span>
  68. <span>电压三相不平衡度</span>
  69. <span>电流三相不平衡度</span>
  70. <span>A/B/C相电压相角</span>
  71. <span>A/B/C相电流相角</span>
  72. <span>A/B/C相电压总谐波畸变率</span>
  73. <span>A/B/C相电流总谐波畸变率</span>
  74. <span>2~31次A/B/C相电压谐波含量或有效值 (可二选一)</span>
  75. <span>2~31次A/B/C相电流谐波含量或有效值 (可二选一)</span>
  76. <span>如果变量没有指定变量属性 或 变量没有数据,分析项可能没有数据</span>
  77. </div>
  78. </el-tab-pane>
  79. </el-tabs>
  80. </div>
  81. </el-dialog>
  82. </div>
  83. </template>
  84. <script>
  85. import { useStore } from 'vuex'
  86. import {useRouter} from 'vue-router'
  87. import { defineComponent, ref, watchEffect } from 'vue'
  88. // import * as api from '@/api/siteManage/watchDog.js'
  89. // import { ElMessage } from 'element-plus'
  90. export default defineComponent({
  91. name: 'DescripDialog',
  92. emits: ['closeDialog'],
  93. props: {
  94. flag: Boolean,
  95. dialogTitle: String,
  96. itemInfo: Object,
  97. },
  98. setup(props, context) {
  99. context
  100. let router = useRouter();
  101. const store = useStore()
  102. const dialogVisible = ref(false)
  103. const activeName=ref('first')
  104. // open(): Dialog弹窗打开之前做的事
  105. const open = () => {
  106. }
  107. // 关闭弹框
  108. const closeDialog = () => {
  109. context.emit('closeDialog', false)
  110. dialogVisible.value = false
  111. }
  112. watchEffect((fn, options) => {
  113. fn, options
  114. dialogVisible.value = props.flag
  115. })
  116. function handleClick(tab, event) {
  117. console.log(tab, event)
  118. }
  119. function goSiteWatchDog(){
  120. store.state.goUrl=2
  121. router.push({
  122. //传递参数使用query的话,指定path或者name都行,但使用params的话,只能使用name指定
  123. path:'/siteManage',
  124. query:{
  125. activeName:'second',
  126. siteId:store.state.siteId
  127. }
  128. })
  129. }
  130. function goSiteVariableList(){
  131. store.state.goUrl=3
  132. router.push({
  133. //传递参数使用query的话,指定path或者name都行,但使用params的话,只能使用name指定
  134. path:'/siteManage',
  135. query:{
  136. activeName:'six',
  137. siteId:store.state.siteId
  138. }
  139. })
  140. }
  141. function goSitePowerScore(){
  142. store.state.goUrl=6
  143. router.push({
  144. //传递参数使用query的话,指定path或者name都行,但使用params的话,只能使用name指定
  145. path:'/siteManage',
  146. query:{
  147. activeName:'six',
  148. siteId:store.state.siteId
  149. }
  150. })
  151. }
  152. return {
  153. store,
  154. closeDialog,
  155. dialogVisible,
  156. open,
  157. handleClick,
  158. activeName,
  159. goSitePowerScore,
  160. goSiteWatchDog,
  161. goSiteVariableList
  162. }
  163. },
  164. })
  165. </script>
  166. <style scoped lang="scss">
  167. .el-input,
  168. .el-select {
  169. width: 240px;
  170. }
  171. // label样式
  172. .el-form-item__label {
  173. width: 150px;
  174. }
  175. .el-form-item__content {
  176. margin-left: 150px;
  177. }
  178. .desBlock {
  179. padding:15px 0;
  180. border-bottom:1px solid rgba(0,0,0,0.06);
  181. h3{
  182. margin:0 0 10px 0;
  183. position:relative;
  184. a{
  185. position:absolute;
  186. right:0
  187. }
  188. span{
  189. position:absolute;
  190. right:0;
  191. font-size:14px;
  192. color:#409eff;
  193. cursor:pointer
  194. }
  195. }
  196. p{
  197. // margin-bottom:0px;
  198. }
  199. span{
  200. display:block;
  201. color:#7e93a6
  202. }
  203. }
  204. </style>
  205. <style>
  206. .descripDialog .el-dialog__body{
  207. padding-top:0
  208. }
  209. .descripDialog .el-overlay-dialog {
  210. /* left: auto !important; */
  211. /* bottom: auto !important; */
  212. }
  213. </style>