Selaa lähdekoodia

其他分区-添加分区,查询空间信息

shaun-sheep 5 vuotta sitten
vanhempi
commit
c326e3cfa2

+ 5 - 0
src/api/scan/request.js

@@ -1921,3 +1921,8 @@ export function handleZoneUpdate(param,success) {
   let url = `${baseUrl}/datacenter/object/zone/update`
   http.postJson(url,param,success)
 }
+//查询空间信息
+export function searchZoneQuery(param,success) {
+  let url = `${baseUrl}/datacenter/object/zone/query`
+  http.postJson(url,param,success)
+}

+ 8 - 3
src/components/business_space/business/handsontable.vue

@@ -4,7 +4,7 @@
       <div style="display: inline-block" v-show="!onlyRead && zoneCode === 'OtherZone'">
         <!--      <div v-show="!onlyRead && zoneCode === 'other'">-->
         <el-button @click="addZoneBtn" type="primary">添加分区</el-button>
-        <el-select v-model="OtherValue" placeholder="请选择分区类型">
+        <el-select v-model="OtherValue" placeholder="请选择分区类型" @change="changeOtherZone">
           <el-option v-for="item in OtherList" :key="item.value" :label="item.label" :value="item.value">
           </el-option>
         </el-select>
@@ -711,7 +711,7 @@ export default {
       }
       queryAllZoneType(param,res=> {
         if(res.Content[0].ZoneType && res.Content[0].ZoneType.length) {
-          this.OtherList = res.Content[0].ZoneType.map(res=> {
+          this.OtherList = res.Content[0].ZoneType.map(t=> {
             t.value = t.Code
             t.label = t.Name
             return t
@@ -720,8 +720,13 @@ export default {
           this.OtherList = []
         }
       })
-    }
+    },
+    // 其他类型下拉change
+    changeOtherZone(val) {
+      console.log(val)
+    },
   },
+
   watch: {
     projectId() {
       this.buildFloorData = []

+ 1 - 0
src/components/business_space/newGraphy/graphy.vue

@@ -301,6 +301,7 @@ export default {
       queryAllZoneType(pa, res => {
         if (res.Content[0].ZoneType && res.Content[0].ZoneType.length) {
           this.options = res.Content[0].ZoneType.map(t => {
+
             t.value = t.Code;
             t.label = t.Name;
             return t;

+ 3 - 6
src/components/ledger/addDialog/dialogZone.vue

@@ -12,10 +12,6 @@
         <el-button @click="dialogFormVisible = false">取 消</el-button>
         <el-button type="primary" @click="submitForm('ruleForm')">添 加</el-button>
       </el-form-item>
-
-      <!--    <div slot="footer" class="dialog-footer">-->
-      <!--      <el-button type="primary" @click="dialogFormVisible = false">确 定</el-button>-->
-      <!--    </div>-->
     </el-form>
   </el-dialog>
 </template>
@@ -54,10 +50,11 @@ export default {
           }
           zoneCreateType(pa, res=>{
             this.dialogFormVisible = false
-            this.ruleForm.name = ''
-            this.ruleForm.id = '';
+            this.ruleForm.Name = ''
+            this.ruleForm.Id = '';
             this.$emit('createSuccess')
           })
+
         } else {
           console.log('error submit!!');
           return false;

+ 88 - 45
src/views/ledger/spacelist/index.vue

@@ -61,50 +61,48 @@
   </div>
 </template>
 <script>
-// import noModelDialog from "@/components/business_space/dialogs/noModelDialog";
-// import influenceDialog from "@/components/business_space/dialogs/influenceDialog";
-// import detailsDialog from "@/components/business_space/dialogs/detailsDialog";
-// import notRelated from "@/components/business_space/dialogs/notRelated";
-// import facilityDialog from "@/components/business_space/dialogs/facilityDialog";
-// import graphy from "@/components/business_space/graphy/business";
-import graphy from "@/components/business_space/newGraphy/graphy";
-import roomInFloorDialog from "@/components/business_space/newAddDialogs/roomInFloorDialog";
-import handsontableMain from "@/components/business_space/business/handsontable";
-import {
-  getDataDictionary,
-  getAllbusiness,
-  getSpaceFloor,
-  queryDictionaryHead, //数据中心-字典头部信息查询接口
-  getrelationTypeProject, //数据中心-当该项目中的"建筑体下的业务空间"“楼层下的业务空间”关系的状态为需更新时,业务空间台账功能不可用
-  getSpaceBdFlCount, // 属于多建筑楼层的空间数据统计
-  countObjZone, //受影响统计
-  queryBFloorWithState, // 定制建筑楼层
-  queryAllZoneType, // 定制分区类型
-} from "@/api/scan/request";
-import tools from '@/utils/scan/tools'
-import floorCascader from "@/components/ledger/lib/floorCascader";
-import { mapGetters, mapActions } from "vuex";
-export default {
-  components: {
-    graphy,
-    handsontableMain,
-    roomInFloorDialog,
-    floorCascader,
-  },
-  computed: {
-    ...mapGetters('layout', ['projectId', 'userId', 'secret'])
-  },
-  data() {
-    return {
-      floor: {
-        influence: false, //受影响的业务空间弹窗
-        details: false, //详情弹窗
-        notRelated: false,
-        facility: false
-      },
-      param: {
-        ProjId: this.projectId, //项目id
-        UserId: this.userId, //用户id
+  // import noModelDialog from "@/components/business_space/dialogs/noModelDialog";
+  // import influenceDialog from "@/components/business_space/dialogs/influenceDialog";
+  // import detailsDialog from "@/components/business_space/dialogs/detailsDialog";
+  // import notRelated from "@/components/business_space/dialogs/notRelated";
+  // import facilityDialog from "@/components/business_space/dialogs/facilityDialog";
+  // import graphy from "@/components/business_space/graphy/business";
+  import graphy from "@/components/business_space/newGraphy/graphy";
+  import roomInFloorDialog from "@/components/business_space/newAddDialogs/roomInFloorDialog";
+  import handsontableMain from "@/components/business_space/business/handsontable";
+  import {
+    countObjZone,
+    getDataDictionary,
+    getrelationTypeProject,
+    getSpaceBdFlCount,
+    queryAllZoneType,
+    queryBFloorWithState,
+    searchZoneQuery
+  } from "@/api/scan/request";
+  import floorCascader from "@/components/ledger/lib/floorCascader";
+  import {mapGetters} from "vuex";
+
+  export default {
+    components: {
+      graphy,
+      handsontableMain,
+      roomInFloorDialog,
+      floorCascader,
+    },
+    computed: {
+      ...mapGetters('layout', ['projectId', 'userId', 'secret'])
+    },
+    data() {
+      return {
+        floor: {
+          influence: false, //受影响的业务空间弹窗
+          details: false, //详情弹窗
+          notRelated: false,
+          facility: false
+        },
+        param: {
+          ProjId: this.projectId, //项目id
+          UserId: this.userId, //用户id
         secret: this.secret
       },
       buildMess: {
@@ -216,6 +214,7 @@ export default {
         }).filter(item => item);
         if (this.childBackParam.zone) {
           this.activeName = this.childBackParam.zone;
+
           this.buildFloorSelectd = this.childBackParam.buildFloorSelectd;
           this.isMyTab = this.childBackParam.isMyTab;
         } else {
@@ -264,6 +263,8 @@ export default {
     //修改所选建筑楼层
     changeCascader(val) {
       this.buildFloorSelectd = val;
+      this.inquireZone()
+
       // 如果选择的是全部或者未明确
       if (val.indexOf('noKnow') > -1 || val.indexOf('all') > -1) {
         this.getTypes()
@@ -279,13 +280,15 @@ export default {
       }
       this.changeGraphyOrTable(this.isMyTab)
     },
+
     // 判断切换至图还是表
     changeGraphyOrTable(num) {
       this.activeTabType = this.getItemForType()
       if (!this.buildFloorSelectd[0]) {
         this.$message.warning('请选择建筑楼层')
         return
-      };
+      }
+
       if (num == 2) {
         this.initMessage();
       } else {
@@ -293,8 +296,46 @@ export default {
         this.$refs.graphy.getData(this.buildFloorSelectd, this.FloorMap, this.activeTabType);
       }
     },
+    inquireZone() {
+      //查询空间信息
+      let params = {
+        ZoneType: this.activeName,
+        PageNumber: 1,
+        PageSize: 50,
+      };
+      if (this.buildFloorSelectd.length === 1) {
+        switch (this.buildFloorSelectd[0]) {
+          case 'noKnow':
+            params.BuildingId = 'isnull';
+            break;
+          case 'all':
+            // params.BuildingId = '';
+            break
+        }
+      } else if (this.buildFloorSelectd.length === 2) {
+        switch (this.buildFloorSelectd[1]) {
+          case 'noKnow':
+            params.BuildingId = this.buildFloorSelectd[0];
+            params.FloorId = 'isnull';
+            break;
+          case 'all' :
+            params.BuildingId = this.buildFloorSelectd[0];
+            // params.FloorId = '';
+            break;
+          default:
+            params.BuildingId = this.buildFloorSelectd[0];
+            params.FloorId = this.buildFloorSelectd[1]
+
+        }
+      }
+      searchZoneQuery(params, res => {
+
+      })
+    },
     // 触发获取表头-获取初始化信息点
     initMessage() {
+  this.inquireZone()
+      //
       let params = {
         data: {
           Orders: "sort asc",
@@ -303,8 +344,10 @@ export default {
         },
         type: this.activeName
       }
+
       getDataDictionary(params, res => {
         this.$refs.handsontable.getHeader(res.Content, this.buildFloorSelectd);
+
       })
     },
     checkSpace(list, build, graphyId) {