Browse Source

业务空间表头接口替换及逻辑修改

zhangyu 5 years ago
parent
commit
6e16f301af

+ 8 - 1
src/api/scan/config.js

@@ -3,4 +3,11 @@ export const api = '/ScanBuilding';
 export const sass = 'sass';
 export const physics = '/data-platform-3';
 export const business = '/business-space'
-export const venders = '/venders'
+export const venders = '/venders'
+export const zone = {
+  GeneralZone: 'zone-general', //默认分区
+  PowerSupplyZone: 'zone-power-supply', //供电分区
+  LightingZone: 'zone-lighting', //照明分区
+  AirConditioningZone: 'metaspace', //空调分区
+  TenantZone: 'zone-tenant' //租赁分区
+}

+ 29 - 3
src/api/scan/request.js

@@ -1,11 +1,9 @@
 import fetch from './fetch'
-import { api, physics, business, venders, baseUrl } from './config.js'
+import { api, physics, business, venders, baseUrl, zone } from './config.js'
 import http from './httpUtil'
 let arithmetic = '/arithmetic'
 
 var Comming = 'revit'
-var ProjId = 'Pj1101080001'
-var UserId = '25518428919955458'
     //获取打印标签模板test
 export function getTest() {
     return fetch({ method: 'GET', url: `${api}/service/template/note_template` })
@@ -1142,4 +1140,32 @@ export function floorQuery(param, success) {
 export function buildingQuery(param, success) {
     let url = `${baseUrl}/datacenter/building/query`;
     http.postJson(url, param, success)
+}
+
+//创建分区信息
+export function createZone(param, success) {
+    let data = param.data
+    let url = `${baseUrl}/datacenter/${zone[param.zone]}/create`;
+    http.postJson(url, data, success)
+}
+
+//删除分区信息
+export function deleteZone(param, success) {
+    let data = param.data
+    let url = `${baseUrl}/datacenter/${zone[param.zone]}/delete`;
+    http.postJson(url, data, success)
+}
+
+//查询分区信息
+export function queryZone(param, success) {
+    let data = param.data
+    let url = `${baseUrl}/datacenter/${zone[param.zone]}/query`;
+    http.postJson(url, data, success)
+}
+
+//更新分区信息
+export function updateZone(param, success) {
+    let data = param.data
+    let url = `${baseUrl}/datacenter/${zone[param.zone]}/update`;
+    http.postJson(url, data, success)
 }

File diff suppressed because it is too large
+ 634 - 648
src/components/business_space/business/handsontable.vue


+ 9 - 0
src/utils/handsontable/fillterField.js

@@ -46,6 +46,15 @@ const data = {
       "BIMID",
       "BIMLocation"
     ]
+  },
+  space:{//业务空间
+    onlyRead: [],
+    edit: [
+      "RoomID",
+      "RoomName",
+      "BIMID",
+      "BIMLocation"
+    ]
   }
 }
 

+ 11 - 7
src/utils/scan/tools.js

@@ -460,16 +460,20 @@ tools.dateAddYear = function(date, yearCount) {
 tools.formatDataSource = function (data) {
     let options
     let arr = []
+    function recursion (data) {
+        let arr = []
+        data.map((item) =>{
+            if (item.Code && item.Name)
+            arr.push({ Code: item.Code, Name: item.Name })
+            if (item.Content && item.Content.length)
+            arr = arr.concat(recursion(item.Content))
+        })
+        return arr
+    }
     try{
         options = JSON.parse(data)
         if(options) {
-            options.forEach((item) =>{
-                arr.push({
-                    Code: item.Code,
-                    Name: item.Name
-                }) 
-            })
-            return arr
+            return recursion(options)
         } else {
             return arr
         }

+ 16 - 23
src/views/business_space/business_list/index.vue

@@ -5,10 +5,8 @@
   <div id="businessSpace">
     <!------------------------    头部弹窗,选择楼层信息     -------------->
     <!-- <no-model-dialog :param="param" title="选择要进行空间管理的楼层" :isShow="floor" @close="close"></no-model-dialog> -->
-    <influence-dialog ref="influence" :param="param" :tabsList="tabsList" title="受元空间变化影响的业务空间" :isShow="floor">
-    </influence-dialog>
-    <details-dialog ref="details" @del="delSuccess" :param="param" :tabsList="tabsList" title="业务空间详情" :isShow="floor"
-      :activeTabType="activeTabType"></details-dialog>
+    <influence-dialog ref="influence" :param="param" :tabsList="tabsList" title="受元空间变化影响的业务空间" :isShow="floor"></influence-dialog>
+    <details-dialog ref="details" @del="delSuccess" :param="param" :tabsList="tabsList" title="业务空间详情" :isShow="floor" :activeTabType="activeTabType"></details-dialog>
     <not-related ref="notRelated" @createSuccess="createSuccess" :isShow="floor"></not-related>
     <facility-dialog ref="facility" :activeTabType="activeTabType" :isShow="floor"></facility-dialog>
     <!--------- 页面头部   -------------->
@@ -21,8 +19,7 @@
             </div> -->
       <div class="saga-build-mess">
         <span style="padding-right:12px">建筑楼层</span>
-        <el-cascader :options="options" v-model="buildMess.selectd" :props="props" @change="close">
-        </el-cascader>
+        <el-cascader :options="options" v-model="buildMess.selectd" :props="props" @change="close"></el-cascader>
       </div>
       <div class="saga-build-tab">
         <!-- <div class="tab-main" @click="tabList(1)" :class="isMyTab == 1 ? 'tab-active' : ''">
@@ -75,7 +72,7 @@ import facilityDialog from "@/components/business_space/dialogs/facilityDialog";
 // import spaceHandsontable from "@/components/business_space/business/spaceHandsontable";
 import graphy from "@/components/business_space/graphy/business";
 import handsontableMain from "@/components/business_space/business/handsontable";
-import { getTableHeader, getAllbusiness, getBussTypes, getSpaceFloor } from "@/api/scan/request";
+import { getDataDictionary, getAllbusiness, getBussTypes, getSpaceFloor } from "@/api/scan/request";
 import tools from '@/utils/scan/tools'
 import { mapGetters, mapActions } from "vuex";
 export default {
@@ -327,22 +324,18 @@ export default {
     },
     //获取初始化信息点
     initMessage() {
-      getTableHeader({
-        code: this.activeTabType.code,
-        ProjId: this.param.ProjId
-      }).then(res => {
-        console.log(res)
-        if (res.data.Result == "success") {
-          console.log(res);
-          let refFlag = "handsontable" + this.activeName;
-          this.$refs[refFlag][0].getHeader(res.data.Content, this.activeTabType);
-          //   for (let i = 0; i < this.tabsList.length; i++) {
-          //   }
-          this.getTableMain();
-        } else {
-          this.$message.error("请求错误");
-        }
-      });
+      let params = {
+        data: {
+          PageNumber: 1,
+          PageSize: 500
+        },
+        type: this.activeTabType.code
+      }
+      getDataDictionary(params, res => {
+        let refFlag = "handsontable" + this.activeName;
+        this.$refs[refFlag][0].getHeader(res.Content, this.activeTabType);
+        this.getTableMain()
+      })
     },
     getItemForType() {
       let data = {}