sceneEnergyAircondition.vue 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <template>
  2. <div class="container">
  3. <div class="sceneEnergy-top">
  4. <div class="dashboardPortrait-select">
  5. <a-checkable-tag v-model="tagCheck.air" color="white" class="dashboardPortrait-select-tag"
  6. @change="handleTagSelect('air')">
  7. <span class="dashboardPortrait-select-text">空调总览</span>
  8. </a-checkable-tag>
  9. <a-checkable-tag v-model="tagCheck.methods" color="white" class="dashboardPortrait-select-tag"
  10. @change="handleTagSelect('methods')">
  11. <span class="dashboardPortrait-select-text">智能策略</span>
  12. </a-checkable-tag>
  13. </div>
  14. </div>
  15. <div class="dashboardPortrait-body">
  16. <AirconditioningCard v-if="currCheck == 'air'" />
  17. </div>
  18. </div>
  19. </template>
  20. <script>
  21. import timeRange from "@/components/common/timeRange.vue";
  22. import AirconditioningCard from "@/components/scene/energy/sceneEnergyAircondition/airconditioningCard.vue";
  23. export default {
  24. components: {
  25. AirconditioningCard,
  26. timeRange,
  27. },
  28. data() {
  29. return {
  30. currCheck: '',
  31. tagCheck: {
  32. air: false,
  33. methods: false,
  34. },
  35. };
  36. },
  37. mounted() {
  38. this.handleTagSelect('air');
  39. },
  40. methods: {
  41. handleTagSelect(item) {
  42. for (const key in this.tagCheck) {
  43. this.tagCheck[key] = false;
  44. }
  45. this.currCheck = item;
  46. this.tagCheck[item] = true;
  47. },
  48. }
  49. }
  50. </script>
  51. <style lang="less" scoped>
  52. .container {
  53. width: 100%;
  54. height: 100%;
  55. background-color: #ffffff;
  56. border-radius: 4px;
  57. padding: 15px;
  58. .ant-tabs {
  59. width: 100%;
  60. height: 100%;
  61. /deep/ .ant-tabs-content {
  62. width: 100%;
  63. height: calc(100% - 36px);
  64. }
  65. /deep/ .ant-tabs-bar {
  66. border-bottom: 0px solid transparent;
  67. margin-bottom: 5px;
  68. .ant-tabs-tab {
  69. font-size: 16px;
  70. font-weight: bold;
  71. font-family: SourceHanSansSC;
  72. padding: 4px 4px;
  73. margin: 0 32px 0 0;
  74. &.ant-tabs-tab-active {
  75. color: #156de4;
  76. }
  77. }
  78. .ant-tabs-ink-bar {
  79. width: 72px !important;
  80. background-color: #156de4;
  81. }
  82. }
  83. }
  84. .search_container {
  85. border-radius: 4px;
  86. background: #cecece29;
  87. margin-bottom: 5px;
  88. .ant-advanced-search-form {
  89. padding: 8px;
  90. background: #fbfbfb;
  91. // border: 1px solid #d9d9d9;
  92. // border-radius: 6px
  93. }
  94. .ant-advanced-search-form .ant-form-item {
  95. display: flex;
  96. margin-bottom: 0px;
  97. /deep/ .ant-form-item-label {
  98. min-width: 60px;
  99. }
  100. }
  101. .ant-advanced-search-form .ant-form-item-control-wrapper {
  102. flex: 1
  103. }
  104. .ant-select {
  105. width: 180px;
  106. }
  107. }
  108. .aircon_resutlt_container {
  109. height: calc(100% - 103px);
  110. .ant-layout-sider {
  111. background-color: #f5f5f5;
  112. padding: 4px 4px;
  113. // .list_container {}
  114. .ant-list-item-meta-title {
  115. text-indent: 40px;
  116. }
  117. }
  118. .ant-layout {
  119. height: 100%;
  120. background-color: transparent;
  121. .ant-layout-content {
  122. overflow: hidden;
  123. }
  124. }
  125. }
  126. .footer {
  127. height: 60px;
  128. line-height: 60px;
  129. margin-right: 50px;
  130. padding-top: 14px;
  131. .ant-pagination {
  132. float: right;
  133. }
  134. }
  135. }
  136. </style>