LeftCounter.vue 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. <template>
  2. <div class="content-container">
  3. <el-row class="list-group">
  4. <div>
  5. <el-row class="sub-title-bar">
  6. <p class="sub-title">按状态</p>
  7. </el-row>
  8. <div :class="curSel === 'status0' ? 'list-item active' : 'list-item'" @click="selectItem('status',0)">
  9. <el-col :span="18">
  10. <p class="title">未提交</p>
  11. </el-col>
  12. </div>
  13. <div :class="curSel === 'status1' ? 'list-item active' : 'list-item'" @click="selectItem('status',1)">
  14. <el-col :span="18">
  15. <p class="title">处理中</p>
  16. </el-col>
  17. </div>
  18. <div :class="curSel === 'status2' ? 'list-item active' : 'list-item'" @click="selectItem('status',2)">
  19. <el-col :span="18">
  20. <p class="title">完成</p>
  21. </el-col>
  22. </div>
  23. <div :class="curSel === 'status-1' ? 'list-item active' : 'list-item'" @click="selectItem('status',-1)">
  24. <el-col :span="18">
  25. <p class="title">撤销</p>
  26. </el-col>
  27. </div>
  28. </div>
  29. <div>
  30. <el-row class="sub-title-bar">
  31. <p class="sub-title">按等级</p>
  32. </el-row>
  33. <div :class="curSel === 'hdangerLevel0' ? 'list-item active' : 'list-item'" @click="selectItem('hdangerLevel',0)">
  34. <el-col :span="18">
  35. <p class="title">较低</p>
  36. </el-col>
  37. </div>
  38. <div :class="curSel === 'hdangerLevel1' ? 'list-item active' : 'list-item'" @click="selectItem('hdangerLevel',1)">
  39. <el-col :span="18">
  40. <p class="title">一般</p>
  41. </el-col>
  42. </div>
  43. <div :class="curSel === 'hdangerLevel2' ? 'list-item active' : 'list-item'" @click="selectItem('hdangerLevel',2)">
  44. <el-col :span="18">
  45. <p class="title">较大</p>
  46. </el-col>
  47. </div>
  48. <div :class="curSel === 'hdangerLevel3' ? 'list-item active' : 'list-item'" @click="selectItem('hdangerLevel',3)">
  49. <el-col :span="18">
  50. <p class="title">重大</p>
  51. </el-col>
  52. </div>
  53. </div>
  54. </el-row>
  55. </div>
  56. </template>
  57. <script>
  58. export default {
  59. name: 'AlertCounter',
  60. components: { },
  61. data() {
  62. return {
  63. title: '预警中心',
  64. listLoading: false,
  65. curSel: ''
  66. }
  67. },
  68. methods: {
  69. // 选中事件
  70. selectItem(type, val) {
  71. this.curSel = `${type}${val}`
  72. this.$emit('selectItem', {
  73. type, val
  74. })
  75. }
  76. }
  77. }
  78. </script>
  79. <style lang="scss" scoped>
  80. .content-container {
  81. height: calc(100vh - 145px);
  82. padding-bottom: 0;
  83. margin: 10px 10px 0 0;
  84. .sub-title-bar {
  85. height: 40px;
  86. line-height: 40px;
  87. text-indent: 15px;
  88. background: #113849;
  89. margin-bottom: 10px;
  90. .sub-title {
  91. font-size: 16px;
  92. color: #FFF;
  93. margin: 0;
  94. }
  95. }
  96. .btn-group {
  97. margin-top: 25px;
  98. margin-bottom: 10px;
  99. .send-menu {
  100. width: 90%;
  101. background: #3D5F76;
  102. color: #FFF;
  103. border-color: #3D5F76;
  104. &:hover {
  105. background: #283c4c;
  106. color: #FFF;
  107. border-color: #283c4c;
  108. }
  109. }
  110. }
  111. .list-group {
  112. margin-top: 0;
  113. padding-top: 0;
  114. background: #193142;
  115. p {
  116. margin: 0;
  117. padding: 0;
  118. }
  119. .count {
  120. text-align: right;
  121. }
  122. .list-item {
  123. height: 40px;
  124. line-height: 40px;
  125. color: #FFF;
  126. padding: 0 10px;
  127. font-size: 14px;
  128. &.active {
  129. color: #08A6DC;
  130. position: relative;
  131. &::after {
  132. position: absolute;
  133. content: "";
  134. width: 0;
  135. height: 0;
  136. top: calc(50% - 3.5px);
  137. right: -3px;
  138. border-left: 7px solid transparent;
  139. border-right: 7px solid transparent;
  140. border-bottom: 7px solid #08A6DC;
  141. transform: rotate(270deg);
  142. }
  143. }
  144. }
  145. }
  146. }
  147. </style>
  148. <style lang="scss">
  149. .vue-treeselect{
  150. .vue-treeselect__control{
  151. background-color: inherit;
  152. border: 1px solid rgba(255, 255, 255, 0.1);
  153. .vue-treeselect__single-value{
  154. color: #fff;
  155. }
  156. }
  157. }
  158. </style>