index.vue 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. <!--
  2. 系统清单
  3. -->
  4. <template>
  5. <div id="deviceList">
  6. <saga-title :mess="mess"></saga-title>
  7. <div class="table-main">
  8. <div class="search-header">
  9. <floor-cascader :type="'no'" @change="changeFloor"></floor-cascader>
  10. <my-cascader ref="cascader" @change="changeDevice"></my-cascader>
  11. </div>
  12. <hanson-table @close="close" ref="tableMain"></hanson-table>
  13. </div>
  14. <table-transfers></table-transfers>
  15. </div>
  16. </template>
  17. <script>
  18. import sagaTitle from "@/components/ledger/lib/title";
  19. import floorCascader from "@/components/ledger/lib/floorCascader";
  20. import myCascader from "@/components/ledger/lib/system";
  21. import hansonTable from "@/components/ledger/handsontables/system";
  22. import tableTransfers from "@/components/ledger/tableTransfers";
  23. import {
  24. mapGetters,
  25. mapActions
  26. } from "vuex";
  27. import { getAllbusiness, getFamilyList, getSpaceName } from "@/api/scan/request"
  28. import Handsontable from "handsontable-pro"
  29. import 'handsontable-pro/dist/handsontable.full.css'
  30. import zhCN from 'handsontable-pro/languages/zh-CN';
  31. export default {
  32. components: {
  33. sagaTitle,
  34. floorCascader,
  35. myCascader,
  36. hansonTable,
  37. tableTransfers
  38. },
  39. data() {
  40. return {
  41. mess: {
  42. perjectName: "",
  43. name: [
  44. {
  45. key: "系统",
  46. num: 0
  47. }
  48. ]
  49. },
  50. param: {
  51. buildId: "",
  52. floorId: "",
  53. deviceId: "",
  54. ProjId: '',
  55. secret: ''
  56. }
  57. };
  58. },
  59. computed: {
  60. ...mapGetters("peojMess", [
  61. "projectId",
  62. "secret",
  63. "userId"
  64. ])
  65. },
  66. created() {
  67. this.param.ProjId = this.projectId
  68. this.param.secret = this.secret
  69. this.getProjName()
  70. },
  71. mounted() { },
  72. methods: {
  73. getProjName() {
  74. let param = {
  75. list: [{ id: this.param.ProjId }],
  76. perjectId: this.param.ProjId,
  77. secret: this.param.secret,
  78. }
  79. getSpaceName(param).then(res => {
  80. if (res.data.Result == "success") {
  81. this.mess.perjectName = res.data.Content[0].infos.ProjLocalName
  82. this.getAllbusiness()
  83. } else {
  84. this.$message.error("请求失败:" + res.data.ResultMsg)
  85. }
  86. }).catch(_ => {
  87. this.$message.error("请求失败")
  88. })
  89. },
  90. getFamilyList() {
  91. let param = {
  92. ProjId: this.param.ProjId,
  93. secret: this.param.secret,
  94. data: { type: "Sy" }
  95. }
  96. getFamilyList(param, res => {
  97. if (this.$refs.cascader) {
  98. this.$refs.cascader.pushData(res.Content)
  99. }
  100. })
  101. },
  102. close(val) {
  103. this.getProjName()
  104. console.log(val)
  105. if (!!val && !!val.code) {
  106. if(this.$refs.cascader)
  107. this.$refs.cascader.changeVal([val.code])
  108. }
  109. },
  110. //获取header的list
  111. getAllbusiness() {
  112. let param = {
  113. ProjId: this.param.ProjId,
  114. secret: this.param.secret,
  115. data: {
  116. criteria: {
  117. type: ["Sy"]
  118. },
  119. returnInfos: ["SystemID"]
  120. }
  121. }
  122. getAllbusiness(param).then(res => {
  123. if (res.data.Result == "success") {
  124. this.mess.name[0].num = res.data.Count
  125. this.getFamilyList()
  126. } else {
  127. this.$message.error("请求失败" + res.data.resultMsg)
  128. }
  129. }).catch(res => { this.$message.error("请求失败") })
  130. },
  131. //修改楼层
  132. changeFloor(value) {
  133. console.log(this.param);
  134. if (value[0]) {
  135. this.param.buildId = value[0]
  136. }
  137. if (value[1]) {
  138. this.param.floorId = value[1]
  139. } else {
  140. this.param.floorId = null
  141. }
  142. if (!!this.param.deviceId) {
  143. if(this.$refs.tableMain)
  144. this.$refs.tableMain.getHeaderData(this.param);
  145. } else {
  146. return;
  147. }
  148. },
  149. //修改设备族
  150. changeDevice(value) {
  151. console.log(value)
  152. this.param.deviceId = value.code
  153. if (!!value) {
  154. if(this.$refs.tableMain)
  155. this.$refs.tableMain.getHeaderData(this.param);
  156. } else {
  157. return;
  158. }
  159. }
  160. }
  161. };
  162. </script>
  163. <style lang="scss" scoped>
  164. #deviceList {
  165. overflow: hidden;
  166. height: 100%;
  167. background-color: #f6f6f6;
  168. position: relative;
  169. .table-main {
  170. position: absolute;
  171. top: 76px;
  172. bottom: 10px;
  173. left: 0;
  174. right: 0;
  175. background-color: #fff;
  176. // border-radius: 5px;
  177. padding: 10px;
  178. }
  179. .search-header {
  180. overflow: hidden;
  181. padding-bottom: 10px;
  182. border-bottom: 1px solid #bcbcbc;
  183. }
  184. }
  185. </style>