viewDialog.vue 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. <template>
  2. <el-dialog
  3. :visible.sync="dialogVisible"
  4. width="460px"
  5. custom-class="view-dialog"
  6. :modal-append-to-body="false"
  7. :append-to-body="true">
  8. <el-divider class="dialog-divider"></el-divider>
  9. <div class="dialog-content">
  10. <el-row class="dialog-row">
  11. <div class="dialog-row-title">告警信息</div>
  12. <div class="dialog-row-content">
  13. <!-- <span class="content-row"> <span class="name-item"> 设备名称: </span> <span>{{alarmInfo.realname}}</span> </span>
  14. <span class="content-row"> <span class="name-item"> 设备编号: </span> <span>{{alarmInfo.device_number}}</span> </span>
  15. <span class="content-row" style="color:red"> <span class="name-item"> 告警原因: </span> <span>{{alarmInfo.alarm_type_name}}</span> </span>
  16. <span class="content-row"> <span class="name-item"> 告警时间: </span> <span>{{alarmInfo.alarm_time}}</span> </span> -->
  17. <span class="content-row"> <span class="name-item"> 设备名称: </span> <span>测试设备1</span> </span>
  18. <span class="content-row"> <span class="name-item"> 设备编号: </span> <span>10001</span> </span>
  19. <span class="content-row" style="color:red"> <span class="name-item"> 告警原因: </span> <span>液压油偏低</span> </span>
  20. <span class="content-row"> <span class="name-item"> 告警时间: </span> <span>2022-05-16 14:43:00</span> </span>
  21. </div>
  22. </el-row>
  23. </div>
  24. <el-divider class="dialog-divider"></el-divider>
  25. <span slot="footer" class="dialog-footer">
  26. <!-- <el-button @click="dialogVisible = false">取 消</el-button> -->
  27. <el-button style="margin-left:20px" type="primary" @click="dialogVisible = false">确 定</el-button>
  28. </span>
  29. <device-dialog
  30. :deviceVisible="innerVisible"
  31. @sendVal="closeDeviceDialog"
  32. :assetNo="dialogAssetNo"
  33. />
  34. </el-dialog>
  35. </template>
  36. <script>
  37. import { CodeToText } from "element-china-area-data";
  38. import deviceDialog from "./deviceDialog"
  39. export default {
  40. props:['detailVisible',"alarmId"],
  41. components: {
  42. deviceDialog
  43. },
  44. data() {
  45. return {
  46. alarmInfo:{},
  47. deviceInfo:{},
  48. dialogAssetNo:'',
  49. path:"",
  50. innerVisible: false,
  51. };
  52. },
  53. methods: {
  54. handleDeviceInfo(){
  55. // console.log(this.deviceInfo)
  56. this.innerVisible=true
  57. this.dialogAssetNo=this.deviceInfo.asset_no
  58. },
  59. closeDeviceDialog(){
  60. this.innerVisible=false
  61. }
  62. },
  63. watch:{
  64. alarmId(newVal){
  65. this.$http.get('alarmReport/getDetail/'+newVal).then(response => {
  66. if (response.code === 10000) {
  67. this.alarmInfo = response.data || {}
  68. }
  69. })
  70. }
  71. },
  72. computed: {
  73. dialogVisible: {
  74. set (val) {
  75. this.$emit('sendVal', val)
  76. },
  77. get () {
  78. return this.detailVisible
  79. }
  80. },
  81. }
  82. };
  83. </script>
  84. <style scoped>
  85. ::v-deep .el-dialog{
  86. min-width: 360px;
  87. }
  88. .el-dialog__body{
  89. padding: 0px!important;
  90. /* padding-bottom: 0px!important; */
  91. }
  92. .dialog-divider{
  93. margin:0px;
  94. }
  95. .dialog-content{
  96. padding: 5px;
  97. }
  98. .dialog-row{
  99. display: flex;
  100. flex-direction: column;
  101. padding: 10px;
  102. font-size: 12px;
  103. }
  104. .dialog-row-title{
  105. margin-left: 20px;
  106. margin-bottom: 10px;
  107. font-size: 15px;
  108. color: black;
  109. }
  110. .dialog-row-content{
  111. margin-left: 50px;
  112. display: flex;
  113. flex-direction: column;
  114. }
  115. .content-row{
  116. margin-top: 5px;
  117. }
  118. .name-item{
  119. width: 60px;
  120. white-space:pre;
  121. word-wrap: break-word;
  122. }
  123. .el-drawer__body{
  124. max-height:100vh;
  125. overflow: hidden;
  126. overflow-y: auto;
  127. width:100%;
  128. }
  129. .primary-btn{
  130. color: #fff;
  131. background-color: #409eff;
  132. border-color: #98a9b9;
  133. margin-left:5px;
  134. }
  135. </style>