Browse Source

adm:feat > 建筑,楼层,字典相关查询接口,现场任务,资产,设备相关,部分台账

shaun-sheep 4 years ago
parent
commit
f2ddaad53b
78 changed files with 8728 additions and 8151 deletions
  1. 9 0
      config/index.js
  2. 54 34
      src/api/data_admin/buildTaskApi.js
  3. 1 0
      src/api/scan/config.js
  4. 48 40
      src/api/scan/request.js
  5. 1 1
      src/components/business_space/dialogs/changeRea.vue
  6. 11 10
      src/components/business_space/newAddDialogs/addEquipDialog.vue
  7. 9 9
      src/components/business_space/newGraphy/unRelateBSP.vue
  8. 10 10
      src/components/config_point/dictionaryCascader.vue
  9. 61 50
      src/components/config_point/step3_point/3_temps.vue
  10. 1 1
      src/components/data_admin/buildTask/dialog/addTaskDialog.vue
  11. 19 18
      src/components/data_admin/buildTask/dialog/modelTaskDialog.vue
  12. 7 7
      src/components/data_admin/buildTask/draw/drawModel.vue
  13. 2 2
      src/components/data_admin/buildTask/lib/assetsCascader.vue
  14. 3 3
      src/components/data_admin/buildTask/lib/deviceCascader.vue
  15. 18 18
      src/components/data_admin/buildTask/table/assetsTable.vue
  16. 41 27
      src/components/data_admin/buildTask/table/deviceTable.vue
  17. 12 12
      src/components/data_admin/buildTask/table/replaceTable.vue
  18. 13 13
      src/components/data_admin/buildTask/table/tearTable.vue
  19. 6 6
      src/components/data_admin/buildTask/taskStatistics.vue
  20. 22 22
      src/components/dialogs/changeRea.vue
  21. 1228 1234
      src/components/ledger/handsontables/assets.vue
  22. 56 47
      src/components/ledger/handsontables/device.vue
  23. 38 32
      src/components/ledger/handsontables/system.vue
  24. 33 29
      src/components/ledger/lib/assets.vue
  25. 15 16
      src/components/ledger/lib/buildfloorCascader.vue
  26. 1 0
      src/components/ledger/lib/linkassets.vue
  27. 142 140
      src/components/ledger/lib/noAllDataFloor.vue
  28. 17 14
      src/components/ledger/lib/partsDieList.vue
  29. 12 11
      src/components/ledger/rentList/roomCountDrawer.vue
  30. 55 54
      src/components/ledger/report/dataexport.vue
  31. 10 8
      src/components/ledger/system/lib/equipType.vue
  32. 38 19
      src/components/ledger/tableTransfers.vue
  33. 44 25
      src/components/point/dynamicdata/buildRules.vue
  34. 22 21
      src/components/point/dynamicdata/delRelationDialog.vue
  35. 16 15
      src/components/point/dynamicdata/equipRules.vue
  36. 13 12
      src/components/point/dynamicdata/floorRules.vue
  37. 15 10
      src/components/point/dynamicdata/locationCascader.vue
  38. 60 76
      src/components/point/report/objectInstance.vue
  39. 135 135
      src/components/relation/overview/Modal/getCascader.vue
  40. 127 128
      src/components/relation/overview/Modal/setCascader.vue
  41. 52 50
      src/store/modules/project.js
  42. 11 10
      src/views/business_space/dataUtil/index.vue
  43. 49 37
      src/views/data_admin/buildAssets/assetsList.vue
  44. 124 122
      src/views/data_admin/buildAssets/index.vue
  45. 190 133
      src/views/data_admin/buildData/index-2.vue
  46. 1839 1750
      src/views/data_admin/buildData/index.vue
  47. 33 23
      src/views/data_admin/buildGraphy/createPointZone.vue
  48. 12 12
      src/views/data_admin/buildGraphy/index.vue
  49. 59 53
      src/views/data_admin/buildTask/addTask/addAssetsTask.vue
  50. 127 110
      src/views/data_admin/buildTask/addTask/addDeviceTask.vue
  51. 94 82
      src/views/ledger/cenotelist/cenoteDetail/index.vue
  52. 31 22
      src/views/ledger/cenotelist/cenoteadd/index.vue
  53. 53 33
      src/views/ledger/cenotelist/index.vue
  54. 15 14
      src/views/ledger/cenotelist/relatedSpace.vue
  55. 38 23
      src/views/ledger/facility/addfacility.vue
  56. 519 509
      src/views/ledger/facility/details/index.vue
  57. 485 477
      src/views/ledger/facility/details/index_old.vue
  58. 9 8
      src/views/ledger/facility/parts/index.vue
  59. 28 19
      src/views/ledger/facility/partsmanage/addparts/index.vue
  60. 44 29
      src/views/ledger/facility/partsmanage/index.vue
  61. 44 33
      src/views/ledger/property/addproperty.vue
  62. 432 423
      src/views/ledger/property/details/index.vue
  63. 418 410
      src/views/ledger/property/details/index_old.vue
  64. 54 33
      src/views/ledger/rentlist/index.vue
  65. 31 24
      src/views/ledger/rentlist/rentadd/index.vue
  66. 705 707
      src/views/ledger/report/index.vue
  67. 41 16
      src/views/ledger/spacelist/index.vue
  68. 142 123
      src/views/ledger/spacelist/spaceDetail/index.vue
  69. 31 22
      src/views/ledger/spacelist/spaceadd/index.vue
  70. 23 18
      src/views/ledger/system/addsystem.vue
  71. 143 123
      src/views/ledger/system/systemDetail/index.vue
  72. 10 10
      src/views/point/dynamicdata/addRelation/buildRela/index.vue
  73. 2 1
      src/views/point/dynamicdata/addRelation/equipRela/index.vue
  74. 7 7
      src/views/point/dynamicdata/addRelation/floorRela/index.vue
  75. 4 3
      src/views/ready/collectsetting/index.vue
  76. 10 10
      src/views/relation/overview/detail/index.vue
  77. 28 18
      src/views/screen/splitscreen/integrateresults/index.vue
  78. 366 345
      src/views/screen/splitscreen/spaceledger/index.vue

+ 9 - 0
config/index.js

@@ -280,6 +280,15 @@ module.exports = {
         // 将主机标头的原点更改为目标URL
         changeOrigin: false
       },
+      '/scanbuilding': {
+        // 目标 API 地址
+        // target: 'http://192.168.12.238:8080/',
+        target: 'http://60.205.177.43:8080',
+        // 如果要代理 websockets
+        ws: true,
+        // 将主机标头的原点更改为目标URL
+        changeOrigin: false
+      },
       '/image-service': {
         // 目标 API 地址
         // target: 'http://172.16.42.210:8080/',

+ 54 - 34
src/api/data_admin/buildTaskApi.js

@@ -1,6 +1,8 @@
-import http from '../scan/httpUtil'
+import http from '../scan/httpUtil';
 
 const baseUrl = '/api';
+import { scan } from './../scan/config';
+
 
 /**
  * info: 查询统计数量(查询总数量不传参数,查询已完成数量TaskState=0,查询未找到TaskState=-1,查询未验证TaskState=1)
@@ -9,71 +11,80 @@ const baseUrl = '/api';
  *
  */
 export function queryTaskCount(param, success) {
-    let url = `${baseUrl}/datacenter/scan-task-base/count`;
-    http.postJson(url, param, success)
+  // let url = `${baseUrl}/datacenter/scan-task-base/count`;
+  let url = `${scan}/task/aggregate/count`;
+  http.postJson(url, param, success);
 }
 
 /*************************模型任务接口****************************/
 //创建模型任务
 export function createModelTask(param, success) {
-    let url = `${baseUrl}/datacenter/model-scan-task/create`;
-    http.postJson(url, param, success)
+  let url = `${baseUrl}/datacenter/model-scan-task/create`;
+  http.postJson(url, param, success);
 }
+
 //根据id删除模型任务
 export function deleteModelTask(param, success) {
-    let url = `${baseUrl}/datacenter/model-scan-task/delete`;
-    http.postJson(url, param, success)
+  let url = `${baseUrl}/datacenter/model-scan-task/delete`;
+  http.postJson(url, param, success);
 }
+
 //查询:根据模型空间ID查询设备信息
 export function queryModelDiglog(param, success) {
-    let url = `${baseUrl}/datacenter/model-scan-task/equip-query`;
-    http.postJson(url, param, success)
+  let url = `${baseUrl}/datacenter/model-scan-task/equip-query`;
+  http.postJson(url, param, success);
 }
+
 //查询模型任务
 export function queryModelTask(param, success) {
-    let url = `${baseUrl}/datacenter/model-scan-task/page-query`;
-    http.postJson(url, param, success)
+  let url = `${baseUrl}/datacenter/model-scan-task/page-query`;
+  http.postJson(url, param, success);
 }
+
 //更新模型任务
 export function updateModelTask(param, success) {
-    let url = `${baseUrl}/datacenter/model-scan-task/update`;
-    http.postJson(url, param, success)
+  let url = `${baseUrl}/datacenter/model-scan-task/update`;
+  http.postJson(url, param, success);
 }
 
 //查询设备分类
 export function queryModelCategory(param, success) {
   let url = `${baseUrl}/datacenter/model-scan-task/model-category-query`;
-  http.postJson(url, param, success)
+  http.postJson(url, param, success);
 }
 
 //查询模型文件夹和文件
 export function queryModelFile(param, success) {
+  //todo
   let url = `${baseUrl}/datacenter/model-scan-task/model-file-query`;
-  http.postJson(url, param, success)
+  // let url = `${scan}/task/model/model-file-query`;
+  http.postJson(url, param, success);
 }
 
 //查询模型任务下的部件类型及数量
 export function modelCategoryCount(param, success) {
   let url = `${baseUrl}/datacenter/model-scan-task/category-count`;
-  http.postJson(url, param, success)
+  http.postJson(url, param, success);
 }
 
 /*************************设备台账任务接口****************************/
 //创建设备台账任务
 export function createDeviceTask(param, success) {
   let url = `${baseUrl}/datacenter/equip-scan-task/create`;
-  http.postJson(url, param, success)
+  http.postJson(url, param, success);
 }
 
 //根据id删除设备台账任务
 export function deleteDeviceTask(param, success) {
   let url = `${baseUrl}/datacenter/equip-scan-task/delete`;
-  http.postJson(url, param, success)
+  http.postJson(url, param, success);
 }
+
 //查询设备台账任务
 export function queryDeviceTask(param, success) {
-    let url = `${baseUrl}/datacenter/equip-scan-task/page-query`;
-    http.postJson(url, param, success)
+  // let url = `${baseUrl}/datacenter/equip-scan-task/page-query`;
+  let url = `${scan}/task/equip/page-query`;
+  http.postJson(url, param, success)
 }
 
 //更新设备台账任务
@@ -84,7 +95,8 @@ export function updateDeviceTask(param, success) {
 
 //查询设备分类
 export function queryDeviceCategory(param, success) {
-  let url = `${baseUrl}/datacenter/equip-scan-task/equip-category-query`;
+  // let url = `${baseUrl}/datacenter/equip-scan-task/equip-category-query`;
+  let url = `${scan}/task/equip/equip-category-query`;
   http.postJson(url, param, success)
 }
 
@@ -97,32 +109,40 @@ export function categoryCount(param, success) {
 /*************************资产台账任务接口****************************/
 //统计数量
 export function countAssetsTask(param, success) {
-  let url = `${baseUrl}/datacenter/property-scan-task/count`;
+  // let url = `${baseUrl}/datacenter/property-scan-task/count`;
+  let url = `${scan}/task/property/count`;
   http.postJson(url, param, success)
 }
 
 //创建设备台账任务
 export function createAssetsTask(param, success) {
-  let url = `${baseUrl}/datacenter/property-scan-task/create`;
-    http.postJson(url, param, success)
+  // let url = `${baseUrl}/datacenter/property-scan-task/create`;
+  let url = `${scan}/task/property/create`;
+  http.postJson(url, param, success)
 }
+
 //根据id删除设备台账任务
 export function deleteAssetsTask(param, success) {
-    let url = `${baseUrl}/datacenter/property-scan-task/delete`;
-    http.postJson(url, param, success)
+  let url = `${scan}/task/property/delete`;
+  http.postJson(url, param, success)
 }
-//查询设备台账任务
+
+//查询资产台账任务 y
 export function queryAssetsTask(param, success) {
-    let url = `${baseUrl}/datacenter/property-scan-task/page-query`;
-    http.postJson(url, param, success)
+  // let url = `${baseUrl}/datacenter/property-scan-task/page-query`;
+  let url = `${scan}/task/property/page-query`;
+  http.postJson(url, param, success)
 }
-//更新设备台账任务
+
+//更新资产台账任务
 export function updateAssetsTask(param, success) {
-    let url = `${baseUrl}/datacenter/property-scan-task/update`;
-    http.postJson(url, param, success)
+  let url = `${scan}/task/property/update`;
+  http.postJson(url, param, success)
 }
+
 //查询设备族
 export function queryAssetsFamily(param, success) {
-    let url = `${baseUrl}/datacenter/property-scan-task/property-category-query`;
-    http.postJson(url, param, success)
+  // let url = `${baseUrl}/datacenter/property-scan-task/property-category-query`;
+  let url = `${scan}/task/property/property-category-query`;
+  http.postJson(url, param, success)
 }

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

@@ -1,6 +1,7 @@
 export const baseUrl = '/api';
 export const api = '/ScanBuilding';
 export const api1 = '/scanbuilding-2';
+export const scan = '/scanbuilding';
 export const sass = 'sass';
 export const physics = '/data-platform-3';
 export const business = '/business-space'

+ 48 - 40
src/api/scan/request.js

@@ -1,5 +1,5 @@
 import fetch from './fetch'
-import {api, api1, baseUrl, business, physics, venders, zone} from './config.js'
+import { api, api1, baseUrl, business, physics, venders, zone } from './config.js'
 import http from './httpUtil'
 import storage from '@/framework/utils/storage'
 
@@ -9,7 +9,7 @@ var Comming = 'revit'
 
 //获取打印标签模板test
 export function getTest() {
-  return fetch({method: 'GET', url: `${api}/service/template/note_template`})
+  return fetch({ method: 'GET', url: `${api}/service/template/note_template` })
 }
 
 //查看扫楼日志接口
@@ -27,7 +27,7 @@ export function getBuildLog(
     "ProjId": param.ProjId,
     "UserId": param.UserId
   }
-  return fetch({method: 'POST', url: `${api}/service/user_log/query`, data})
+  return fetch({ method: 'POST', url: `${api}/service/user_log/query`, data })
 }
 
 //下载扫楼日志接口
@@ -43,7 +43,7 @@ export function dowmloadLog(
     "ProjId": param.ProjId,
     "UserId": param.UserId
   }
-  return fetch({method: 'POST', url: `${api}/service/user_log/export`, data})
+  return fetch({ method: 'POST', url: `${api}/service/user_log/export`, data })
 }
 
 //获取扫楼用户表格
@@ -77,7 +77,7 @@ export function getBuildSelect(param) {
     "ProjId": param.ProjId,
     "UserId": param.UserId,
   }
-  return fetch({method: 'POST', url: `${api}/service/building/query`, data})
+  return fetch({ method: 'POST', url: `${api}/service/building/query`, data })
 }
 
 //根据建筑ID获取楼层系信息
@@ -88,7 +88,7 @@ export function getFloor(param) {
     "UserId": param.UserId,
     "BuildId": param.BuildId
   }
-  return fetch({method: 'POST', url: `${api}/service/building/floor`, data})
+  return fetch({ method: 'POST', url: `${api}/service/building/floor`, data })
 }
 
 //获取异常资产接口
@@ -110,7 +110,7 @@ export function getErrAssets(param) {
   if (!param.CodeType) {
     delete data.CodeType
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/exception`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/exception`, data })
 }
 
 //删除资产接口
@@ -121,7 +121,7 @@ export function delErrAssets(param, paramList) {
     "UserId": param.UserId,
     "FmList": paramList
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/delete`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/delete`, data })
 }
 
 //根据选择的建筑楼层时间查询点位标签
@@ -139,7 +139,7 @@ export function getPT(param) {
   } else if (data.FloorId == "noKnow") {
     data.FloorId = ""
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/point_group`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/point_group`, data })
 }
 
 //查询点位标签信息/location-point/query
@@ -181,7 +181,7 @@ export function getPoint(param) {
     "UserId": param.UserId,
     "PointId": param.PointId,
   }
-  return fetch({method: 'POST', url: `${api}/service/point/query`, data})
+  return fetch({ method: 'POST', url: `${api}/service/point/query`, data })
 }
 
 //点位标签详情修改
@@ -192,7 +192,7 @@ export function updatePoint(param) {
     "UserId": param.UserId,
     "PointList": [param.PointList],
   }
-  return fetch({method: 'POST', url: `${api}/service/point/update`, data})
+  return fetch({ method: 'POST', url: `${api}/service/point/update`, data })
 }
 
 //点击点位标签获取tab设备族列表
@@ -216,7 +216,7 @@ export function getTabFamily(param) {
   } else if (data.FloorId == "noKnow") {
     data.FloorId = ""
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/family_list`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/family_list`, data })
 }
 
 //获取表格数据的title
@@ -226,7 +226,7 @@ export function getTableHeader(param) {
     "Code": param.code,
     "ProjId": param.ProjId
   }
-  return fetch({method: 'POST', url: `${api}/service/dict/infocode_query`, data})
+  return fetch({ method: 'POST', url: `${api}/service/dict/infocode_query`, data })
 }
 
 //获取表格主体内容
@@ -251,7 +251,7 @@ export function getTableMain(param) {
   if (data.Checked === '') {
     delete data.Checked
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/query`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/query`, data })
 }
 
 export function getPointList(param, success) {
@@ -286,7 +286,7 @@ export function getdelMain(param) {
   if (data.FloorId == 'all') {
     delete data.FloorId
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/queryRevit`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/queryRevit`, data })
 }
 
 export function getTestEquire() {
@@ -296,7 +296,7 @@ export function getTestEquire() {
     "ProjId": "Pj1101080003",
     "UserId": "string"
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/query`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/query`, data })
 }
 
 //批量更新表格数据
@@ -307,12 +307,12 @@ export function upDateTableMain(param, paramList) {
     "ProjId": param.ProjId,
     "UserId": param.UserId
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/update`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/update`, data })
 }
 
 //获取所有设备族/service/dict/equipment_family
 export function getAllFamily() {
-  return fetch({method: 'GET', url: `${api}/service/dict/equipment_family`})
+  return fetch({ method: 'GET', url: `${api}/service/dict/equipment_family` })
 }
 
 //获取当前默认楼层/service/fm/default_floor
@@ -322,7 +322,7 @@ export function defaultFloor(param) {
     "ProjId": param.ProjId,
     "UserId": param.UserId
   }
-  return fetch({method: 'POST', url: `${api}/service/fm/default_floor`, data})
+  return fetch({ method: 'POST', url: `${api}/service/fm/default_floor`, data })
 }
 
 //物理世界新建岗位(设备系统)
@@ -352,10 +352,10 @@ export function createComponent(param) {
     "floor_id": param.BIMID,
     "infos": {
       "BIMID": [
-        {"value": param.BIMID}
+        { "value": param.BIMID }
       ],
       "BIMLocation": [
-        {"value": param.BIMLocation}
+        { "value": param.BIMLocation }
       ]
     }
   }
@@ -401,7 +401,7 @@ export function setHeader(param) {
     "UserId": param.UserId,
     "Visible": param.Visible
   }
-  return fetch({method: 'POST', url: `${api}/service/dict/infopoint_visible`, data})
+  return fetch({ method: 'POST', url: `${api}/service/dict/infopoint_visible`, data })
 }
 
 //获取头部接口
@@ -412,7 +412,7 @@ export function getHeader(param) {
     "ProjId": param.perjectId
   }
   // return fetch({ method: 'POST', url: `${api}/service/dict/equipment_family_info_header`, data })
-  return fetch({method: 'POST', url: `${api}/service/dict/infocode_query_header`, data})
+  return fetch({ method: 'POST', url: `${api}/service/dict/infocode_query_header`, data })
 }
 
 
@@ -464,13 +464,17 @@ export function formBIMToPri(param) {
 
 //获取业务空间楼层的关系
 export function getSpaceFloor(param) {
-  return fetch({method: "POST", url: `${business}/floor/tree?projectId=${param.ProjId}&secret=${param.secret}`})
+  return fetch({ method: "POST", url: `${business}/floor/tree?projectId=${param.ProjId}&secret=${param.secret}` })
 }
 
 //创建业务空间
 export function createBusiness(param) {
   let data = param.data
-  return fetch({method: "POST", url: `${physics}/space/create?projectId=${param.ProjId}&secret=${param.secret}`, data})
+  return fetch({
+    method: "POST",
+    url: `${physics}/space/create?projectId=${param.ProjId}&secret=${param.secret}`,
+    data
+  })
   // return fetch({ method: "POST", url: `/test/space/create?projectId=${param.ProjId}&secret=${param.secret}`, data })
 }
 
@@ -497,12 +501,12 @@ export function updateBusiness(param) {
 //模糊搜索设备类型
 export function searchCode(param) {
   let data = param
-  return fetch({method: "POST", url: `${physics}/dict/query/equipment_all`, data})
+  return fetch({ method: "POST", url: `${physics}/dict/query/equipment_all`, data })
 }
 
 //获取所有设备类型
 export function getEqCode() {
-  return fetch({method: "GET", url: `${physics}/dict/query/equipment_all`})
+  return fetch({ method: "GET", url: `${physics}/dict/query/equipment_all` })
 }
 
 //批量删除业务空间
@@ -633,20 +637,20 @@ export function getBussTypes(success) {
 }
 
 export function getBussTypes2() {
-  return fetch({method: 'GET', url: `${physics}/infocode/business_space_type/query`})
+  return fetch({ method: 'GET', url: `${physics}/infocode/business_space_type/query` })
 }
 
 
 //验证元空间是否相邻
 export function isAbut(param) {
   let data = param.data
-  return fetch({method: 'POST', url: `${business}/space/abut?projectId=${param.ProjId}&secret=${param.secret}`, data})
+  return fetch({ method: 'POST', url: `${business}/space/abut?projectId=${param.ProjId}&secret=${param.secret}`, data })
 }
 
 /**算法接口 */
 export function strDiff(param) {
   let data = param
-  return fetch({method: 'POST', url: `${arithmetic}/str_diff`, data})
+  return fetch({ method: 'POST', url: `${arithmetic}/str_diff`, data })
 }
 
 
@@ -660,7 +664,7 @@ export function getManuLib(param, success) {
 //查询所有供应商信息
 export function getLib(param) {
   let data = param
-  return fetch({method: 'POST', url: `${venders}/auxiliary/query/all`, data})
+  return fetch({ method: 'POST', url: `${venders}/auxiliary/query/all`, data })
 }
 
 //查询资产的list
@@ -1059,7 +1063,7 @@ export function getProductList(param, success) {
 //完全匹配的厂商信息
 export function getBasicMatch(param) {
   let data = param
-  return fetch({method: 'POST', url: `${venders}/basic/autoFillId`, data})
+  return fetch({ method: 'POST', url: `${venders}/basic/autoFillId`, data })
 }
 
 //设备清单-查询设备内容
@@ -1135,9 +1139,10 @@ export function getDataDictionary(param, success) {
   http.postJson(url, data, success)
 }
 
-//all - 查询数据字典 --列表表头
+//all - 查询数据字典 --列表表头  字典-查询所有字典信息M和L类型,包括自定义信息点
 export function cacheDictionary(param, success) {
-  let url = `${baseUrl}/datacenter/class-def/query-dict`;
+  // let url = `${baseUrl}/datacenter/class-def/query-dict`;
+  let url = `${baseUrl}/equip-componnet/dict/morl/query`;
   http.postJson(url, param, success)
 }
 
@@ -1285,9 +1290,10 @@ export function equipRproperty(param, success) {
   http.postJson(url, param, success)
 }
 
-//创建资产所需(Family族id3位编码)-根据设备类型(4位编码)或部件类型(6位编码)查询
+//创建资产所需(Family族id3位编码)-根据设备类型(4位编码)或部件类型(6位编码)查询,!!设备与设备族的关系
 export function getEquipBelongs(param, success) {
-  let url = `${baseUrl}/datacenter/data-dictionary/family-query`;
+  // let url = `${baseUrl}/datacenter/data-dictionary/family-query`;
+  let url = `${baseUrl}/datacenter/dict/family/query`;
   let data = param.data;
   http.postJson(url, data, success)
 }
@@ -1300,7 +1306,8 @@ export function createPropertyData(param, success) {
 
 //查询资产
 export function queryProperty(param, success) {
-  let url = `${baseUrl}/datacenter/property/query`;
+  // let url = `${baseUrl}/datacenter/property/query`;
+  let url = `${baseUrl}/datacenter/object/property/query`;
   http.postJson(url, param, success)
 }
 
@@ -1330,7 +1337,8 @@ export function queryPartsDie(param, success) {
 
 //查询项目下设备或部件的类别、以及名称
 export function TypePartsDie(success) {
-  let url = `${baseUrl}/equip-component/equip-query/equip-compon-category`;
+  // let url = `${baseUrl}/equip-component/equip-query/equip-compon-category`;
+  let url = `${baseUrl}/equip-componnet/equip-query/equip-compon-category`;
   http.getJson(url, {}, success)
 }
 
@@ -2146,7 +2154,7 @@ export function pointTest(data) {
     method: 'POST',
     url: `/pointconfig/datasource/pointTest2`,
     data,
-    headers: {'ProjectId': ProjectId, 'Comming': 'adm', 'Account': userName}
+    headers: { 'ProjectId': ProjectId, 'Comming': 'adm', 'Account': userName }
   })
 }
 
@@ -2166,7 +2174,7 @@ export function getHistoryData(query, param, success) {
     url: url,
     method: 'post',
     data: param,
-    headers: {'ProjectId': query.projectId, 'Comming': 'adm', 'Account': query.userInfo.username}
+    headers: { 'ProjectId': query.projectId, 'Comming': 'adm', 'Account': query.userInfo.username }
   }).then((response) => {
     success(response.data);
   }).catch(error => {

+ 1 - 1
src/components/business_space/dialogs/changeRea.vue

@@ -40,7 +40,7 @@
               <template slot-scope="scope">{{getFramily(scope.row.family)}}</template>
             </el-table-column>
             <el-table-column label="安装位置">
-              <template slot-scope="scope">{{scope.row.infos.InstallLocation || "--"}}</template>
+              <template slot-scope="scope">{{scope.row.infos.installLocation || "--"}}</template>
             </el-table-column>
           </el-table>
         </el-radio-group>

+ 11 - 10
src/components/business_space/newAddDialogs/addEquipDialog.vue

@@ -47,7 +47,7 @@
 <script>
 import {
   getSpaceEquip,
-  buildingQuery, //数据中心-建筑查询
+  // buildingQuery, //数据中心-建筑查询
   notEqInSpaceQuery, //没有和当前空间绑定的设备
   notEqForSpaceQuery, //未服务当前空间的设备
   eqInSpaceCreate, //设备所在业务空间--创建关系
@@ -56,6 +56,7 @@ import {
   getEqNotForSpace, //空间内没有服务空间的设备
 } from "@/api/scan/request";
 import { mapGetters } from "vuex";
+import { buildingQuery } from '@/api/object/build';
 export default {
   components: {
 
@@ -96,7 +97,7 @@ export default {
   props: {
     type: {}, //Equipment--EquipmentFor
     spaceId: {},
-    zone: {}, //分区类型 
+    zone: {}, //分区类型
   },
   created() {
     this.getBuilding();
@@ -105,15 +106,15 @@ export default {
     // 获取项目下建筑
     getBuilding() {
       let pa = {
-        Cascade: [{ name: 'floor', Orders: 'SequenceId desc' }],
-        Orders: "BuildLocalName asc",
+        cascade: [{ name: 'floor', orders: 'sequenceId desc' }],
+        orders: "localName asc",
       }
       buildingQuery(pa, res => {
-        this.options = res.Content.map(t => {
-          if (t.Floor) {
-            t.Floor = t.Floor.map(item => {
-              item.BuildID = item.FloorID;
-              item.BuildLocalName = item.FloorLocalName;
+        this.options = res.content.map(t => {
+          if (t.floor) {
+            t.floor = t.floor.map(item => {
+              item.BuildID = item.id;
+              item.BuildLocalName = item.localName;
               return item;
             })
           } else {
@@ -277,4 +278,4 @@ export default {
     height: 350px;
   }
 }
-</style>
+</style>

+ 9 - 9
src/components/business_space/newGraphy/unRelateBSP.vue

@@ -109,17 +109,17 @@ export default {
     // 获取项目下建筑
     getBuilding() {
       let pa = {
-        Cascade: [{ name: 'floor', Orders: 'SequenceId desc' }],
-        Orders: "BuildLocalName asc",
+        cascade: [{ name: 'floor', orders: 'sequenceId desc' }],
+        orders: "localName asc",
       }
       buildingQuery(pa, res => {
-        this.options = res.Content.map(t => {
-          this.bfData[t.BuildID] = t.BuildLocalName;
-          if (t.Floor) {
-            t.Floor = t.Floor.map(item => {
-              this.bfData[item.FloorID] = item.FloorLocalName;
-              item.BuildID = item.FloorID;
-              item.BuildLocalName = item.FloorLocalName;
+        this.options = res.content.map(t => {
+          this.bfData[t.id] = t.localName;
+          if (t.floor) {
+            t.floor = t.floor.map(item => {
+              this.bfData[item.id] = item.localName;
+              item.BuildID = item.id;
+              item.BuildLocalName = item.localName;
               return item;
             })
           } else {

+ 10 - 10
src/components/config_point/dictionaryCascader.vue

@@ -23,9 +23,9 @@ export default {
         dict: [],
       },
       props: {
-        value: 'InfoPointCode',
-        label: 'InfoPointName',
-        children: 'Content'
+        value: 'code',
+        label: 'name',
+        children: 'content'
       },
       rules: {
         dict: [{ required: true, message: '请选择对应数据字典', trigger: 'blur' }]
@@ -38,7 +38,7 @@ export default {
   created() {
     if (!this.dictionary.length) {
       this.getDictionary().then(res => {
-        this.getDictSuc(res.Content)
+        this.getDictSuc(res.content)
       })
     } else {
       this.getDictSuc(this.dictionary);
@@ -57,7 +57,7 @@ export default {
           let labels = this.$refs.dictCas.selectedLabels;
           let data = {};
           this.$refs.dictCas.selectedNodes.forEach(t => {
-            let key = t.InfoPointCode;
+            let key = t.code;
             data[key] = t;
           });
           this.$emit('change', { val: val, labels: labels, data: data })
@@ -81,11 +81,11 @@ export default {
     transformList(list) {
       let arr = [];
       arr = list.map(t => {
-        if (t.Content) {
-          if (!t.Content.length) {
-            t.Content = [{ InfoPointName: '暂无可对应信息点', disabled: true }]
+        if (t.content) {
+          if (!t.content.length) {
+            t.content = [{ name: '暂无可对应信息点', disabled: true }]
           } else {
-            t.Content = this.transformList(t.Content);
+            t.content = this.transformList(t.content);
           }
         }
         return t;
@@ -115,4 +115,4 @@ export default {
     border-radius: 0 4px 4px 0;
   }
 }
-</style>
+</style>

+ 61 - 50
src/components/config_point/step3_point/3_temps.vue

@@ -13,15 +13,15 @@
       </el-form>
       <div>
         <div v-for="(it,ind) in typeList" :key="ind">
-          <p style="margin:10px 0;">信息点名称: {{it.name}}</p>
+          <p style="margin:10px 0;">信息点名称: {{ it.name }}</p>
           <div class="flex-around">
             <div class="point-despoint">
               <p class="center">原始点位说明</p>
-              <p class="p10">{{pointDes}}</p>
+              <p class="p10">{{ pointDes }}</p>
             </div>
             <div class="point-despoint">
               <p class="center">数据字典值说明</p>
-              <p class="content-view p10">{{delDataSource(it.unitObj.DataSource)}}</p>
+              <p class="content-view p10" v-if="it.unitObj.dataSource">{{ delDataSource(it.unitObj.dataSource) }}</p>
             </div>
           </div>
         </div>
@@ -32,28 +32,31 @@
     </div>
     <div class="collapse-item" v-if="activeName == 1">
       <div v-for="(it,ind) in typeList" :key="ind">
-        <p style="margin:10px 0;">信息点名称: {{it.name}}</p>
+        <p style="margin:10px 0;">信息点名称: {{ it.name }}</p>
         <div class="flex-around">
           <div class="point-despoint">
             <p class="center">原始点位说明</p>
-            <p class="p10">{{pointDes}}</p>
+            <p class="p10">{{ pointDes }}</p>
           </div>
           <div class="point-despoint">
             <p class="center">数据字典值说明</p>
-            <p class="content-view p10">{{delDataSource(it.unitObj.DataSource)}}</p>
+            <p class="content-view p10">{{ delDataSource(it.unitObj.DataSource) }}</p>
           </div>
         </div>
         <el-form class="form" :rules="rules" ref="form2" :model="form2" label-width="140px">
           <el-form-item label='值处理方式' prop='DataRuleType'>
             <el-select v-model='it.DataRuleType' placeholder='请选择'>
-              <el-option v-for='item in handleTypeArr' :key='item.value' :label='item.label' :value='item.value'></el-option>
+              <el-option v-for='item in handleTypeArr' :key='item.value' :label='item.label'
+                         :value='item.value'></el-option>
             </el-select>
           </el-form-item>
           <!-- components -->
           <div :ref='"noHandle"+ind' v-if='it.DataRuleType == "无需处理,直接使用"'></div>
-          <auto-handle :devFlag="false" :ref='"autoHandle"+ind' v-else-if='it.DataRuleType == "需自动单位转换"' :unitObj='it.unitObj'></auto-handle>
+          <auto-handle :devFlag="false" :ref='"autoHandle"+ind' v-else-if='it.DataRuleType == "需自动单位转换"'
+                       :unitObj='it.unitObj'></auto-handle>
           <enum-handle :devFlag="false" :ref='"enumHandle"+ind' v-else-if='it.DataRuleType == "需按设置枚举转换"'></enum-handle>
-          <formula-handle :devFlag="false" :ref='"formulaHandle"+ind' v-else-if='it.DataRuleType == "需按公式转换"'></formula-handle>
+          <formula-handle :devFlag="false" :ref='"formulaHandle"+ind'
+                          v-else-if='it.DataRuleType == "需按公式转换"'></formula-handle>
           <!-- <split-handle :devFlag="false" ref='splitHandle' v-else-if='form2.DataRuleType == "需按拆分枚举转换"'></split-handle> -->
         </el-form>
       </div>
@@ -106,6 +109,7 @@ import {
   batchCreate,
   queryDescription
 } from '@/fetch/point_http'
+
 export default {
   name: "tempsThree",
   computed: {
@@ -142,18 +146,18 @@ export default {
         label: '无需处理,直接使用',
         value: '无需处理,直接使用'
       },
-      {
-        label: '需自动单位转换',
-        value: '需自动单位转换'
-      },
-      {
-        label: '需按设置枚举转换',
-        value: '需按设置枚举转换'
-      },
-      {
-        label: '需按公式转换',
-        value: '需按公式转换'
-      },
+        {
+          label: '需自动单位转换',
+          value: '需自动单位转换'
+        },
+        {
+          label: '需按设置枚举转换',
+          value: '需按设置枚举转换'
+        },
+        {
+          label: '需按公式转换',
+          value: '需按公式转换'
+        },
         // {
         //     label: '需按拆分枚举转换',
         //     value: '需按拆分枚举转换'
@@ -176,7 +180,8 @@ export default {
       typeList: []
     }
   },
-  created() { },
+  created() {
+  },
   mounted() {
     this.init()
   },
@@ -263,7 +268,8 @@ export default {
     confirm(assage, params) {
       this.$confirm(assage, { type: 'warning' }).then(_ => {
         this.createParam(params)
-      }).catch(_ => { })
+      }).catch(_ => {
+      })
     },
     createParam(params) {
       let updateParams = {
@@ -372,18 +378,18 @@ export default {
             columns: [{
               data: 'EquipmentMark'
             },
-            {
-              data: 'Description',
-              readOnly: true
-            },
-            {
-              data: 'LocationFlag',
-              readOnly: true
-            },
-            {
-              data: 'Remarks',
-              readOnly: true
-            }
+              {
+                data: 'Description',
+                readOnly: true
+              },
+              {
+                data: 'LocationFlag',
+                readOnly: true
+              },
+              {
+                data: 'Remarks',
+                readOnly: true
+              }
             ]
           }
           if (this.renderData.length) {
@@ -458,13 +464,13 @@ export default {
             break
           case '需按公式转换':
             let subRule = t.other.from ? {
-              seq: 1,
-              ruletype: 'type4',
-              content: [{
-                from: t.other.from,
-                to: t.other.to
-              }]
-            } :
+                seq: 1,
+                ruletype: 'type4',
+                content: [{
+                  from: t.other.from,
+                  to: t.other.to
+                }]
+              } :
               undefined
             let extractRule = {
               seq: 2,
@@ -474,13 +480,13 @@ export default {
               }] : []
             }
             let countRule = t.other.mark ? {
-              seq: 3,
-              ruletype: 'type6',
-              content: [{
-                calculationtype: t.other.mark,
-                value: t.other.markValue
-              }]
-            } :
+                seq: 3,
+                ruletype: 'type6',
+                content: [{
+                  calculationtype: t.other.mark,
+                  value: t.other.markValue
+                }]
+              } :
               undefined
             let DataRuleContent3 = []
             if (subRule) {
@@ -622,7 +628,7 @@ export default {
       val = JSON.parse(val)
       let str = ''
       val.forEach(el => {
-        str += el.Code + '.' + el.Name + ' '
+        str += el.code + '.' + el.name + ' '
       })
       return str
     },
@@ -736,26 +742,31 @@ export default {
 .temp-point-view {
   padding: 10px;
   box-sizing: border-box;
+
   .el-steps {
     margin-bottom: 10px;
   }
+
   .flex-around {
     display: flex;
     justify-content: space-around;
     // margin-bottom: 5px;
     width: 100%;
     overflow: hidden;
+
     .point-despoint {
       width: 240px;
       border: 1px solid #dcdfe6;
       height: 190px;
       margin-bottom: 10px;
+
       .content-view {
         padding: 5px;
         box-sizing: border-box;
       }
     }
   }
+
   .collapse-item {
     height: 328px;
     overflow-y: auto;

+ 1 - 1
src/components/data_admin/buildTask/dialog/addTaskDialog.vue

@@ -26,7 +26,7 @@
       <div><el-radio v-model="ruleForm.taskType" label="assets">现场验证资产台账</el-radio></div>
     </el-row>-->
     <span slot="footer" class="dialog-footer">
-      <el-button type="primary" @click="$emit('update:addTaskDialog',false)">取 消</el-button>
+      <el-button type="default" @click="$emit('update:addTaskDialog',false)">取 消</el-button>
       <el-button type="primary" @click="toAddTask()">确 认</el-button>
     </span>
   </el-dialog>

+ 19 - 18
src/components/data_admin/buildTask/dialog/modelTaskDialog.vue

@@ -58,7 +58,7 @@
 </template>
 
 <script>
-  import {queryEquip} from "@/api/scan/request"
+  import { queryEquip } from "@/api/object/equip";
   import {createModelTask, queryModelDiglog} from "@/api/data_admin/buildTaskApi"
   import {mapGetters} from "vuex"
 
@@ -106,41 +106,41 @@
       this.loading = true
 
       let params = {
-        Cascade: [
+        cascade: [
           {
-            Name: "equipCategory",
-            Projection: ["EquipCode", "EquipName"]
+            name: "equipCategory",
+            projection: ["equipCode", "equipName"]
           },
           {
-            Name: "component",
-            Cascade: [{ Name: "equipCategory" }]
+            name: "component",
+            cascade: [{ name: "equipCategory" }]
           },
           {
-            Name: "building",
-            Projection: ["BuildLocalName", "BuildName", "BuildID"]
+            name: "building",
+            projection: ["localName", "name", "id"]
           },
           {
-            Name: "floor",
-            Projection: ["FloorLocalName", "FloorName", "FloorID"]
+            name: "floor",
+            projection: ["localName", "name", "id"]
           }
         ],
-        Filters: `ProjectId='${this.projectId}'`,
-        Orders: "CreateTime desc, EquipID asc",
-        PageNumber: this.page.pageNumber,
-        PageSize: this.page.pageSize
+        filters: `projectId='${this.projectId}'`,
+        orders: "createTime desc, equipID asc",
+        pageNumber: this.page.pageNumber,
+        pageSize: this.page.pageSize
       }
 
       if (this.params.isVerification) {
         // params.Filters += `;(TaskState isNull || TaskState=0 || TaskState=-1)`
         // params.Filters += `;(TaskState!=0 || TaskState!=-1 || TaskState!=1)`
-        params.Filters += `;TaskState isnull`
+        params.filters += `;taskState isnull`
       } else {
         // params.Filters += `;(TaskState!=1)`
-        params.Filters += `;(TaskState isnull or TaskState !=1 )`
+        params.filters += `;(taskState isnull or taskState !=1 )`
       }
 
       if (this.params.device) {
-        params.Filters += `;Category='${this.params.device}'`
+        params.filters += `;classCode='${this.params.device}'`
       }
 
       if (this.params.spaceList && this.params.spaceList.length) {
@@ -165,7 +165,7 @@
           this.dataFormatter(res)
         })
       } else {
-        params.Filters += `;ModelId='${this.params.CurrentModelId}'`
+        params.filters += `;modelId='${this.params.CurrentModelId}'`
         queryEquip(params, res => {
           this.loading = false
           this.dataFormatter(res)
@@ -175,6 +175,7 @@
     },
     // 表格数据格式化
     dataFormatter(res) {
+      debugger
       this.tableData = res.Content.map(item => {
         if (item.Component && item.Component.length) {
           item.ComponentCount = []

+ 7 - 7
src/components/data_admin/buildTask/draw/drawModel.vue

@@ -11,7 +11,7 @@
 import { DivideFloorScene, FloorView } from "@saga-web/cad-engine/lib"
 import { SColor, SPoint } from "@saga-web/draw/lib";
 import canvasFun from "@/components/business_space/newGraphy/canvasFun"
-import { queryEquip } from "@/api/scan/request";
+import { queryEquip } from "@/api/object/equip";
 import { mapGetters } from "vuex";
 export default {
   components: {
@@ -139,14 +139,14 @@ export default {
       return new Promise((resolve) => {
         pageNum = pageNum ? pageNum : 1
         let params = {
-          Filters: `TaskState isNull;ModelId='${this.CurrentModelId}'`,
-          Orders: "CreateTime desc, EquipID asc",
-          Projection: ["EquipID", "BIMID", "BIMLocation", "LocationJson"],
-          PageNumber: pageNum,
-          PageSize: 1000
+          filters: `taskState isNull;modelId='${this.CurrentModelId}'`,
+          orders: "createTime desc, equipID asc",
+          projection: ["equipID", "bimId", "bimLocation", "locationJson"],
+          pageNumber: pageNum,
+          pageSize: 1000
         }
         queryEquip(params, res => {
-          this.deviceList = res.Content
+          this.deviceList = res.content
           resolve();
         });
       });

+ 2 - 2
src/components/data_admin/buildTask/lib/assetsCascader.vue

@@ -2,7 +2,7 @@
   <div id="cascaderMap">
     <span class="buildFloor" style="margin-right: 12px;">设备族</span>
     <el-select v-model="value" placeholder="请选择" clearable filterable :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
-      <el-option  v-for="item in options" :key="item.Code" :label="item.Name" :value="item.Code"></el-option>
+      <el-option  v-for="item in options" :key="item.code" :label="item.name" :value="item.code"></el-option>
     </el-select>
   </div>
 </template>
@@ -52,7 +52,7 @@ export default {
     //获取当前项目下的资产任务-设备族
     getData() {
       queryAssetsFamily('', res => {
-        this.options = res.Content
+        this.options = res.content
       })
     }
   }

+ 3 - 3
src/components/data_admin/buildTask/lib/deviceCascader.vue

@@ -2,7 +2,7 @@
   <div id="cascaderMap">
     <span class="buildFloor" style="margin-right: 12px;">设备类别</span>
     <el-select v-model="value" placeholder="请选择" clearable filterable :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
-      <el-option  v-for="item in options" :key="item.Code" :label="item.Name" :value="item.Code"></el-option>
+      <el-option  v-for="item in options" :key="item.code" :label="item.name" :value="item.code"></el-option>
     </el-select>
   </div>
 </template>
@@ -42,7 +42,7 @@ export default {
     changeVal(val) {
       let value = {}
       this.options.map(item => {
-        if (item.Code == val) {
+        if (item.code == val) {
           value = item
         }
       })
@@ -52,7 +52,7 @@ export default {
     //获取当前项目下的设备任务-设备类型
     getData() {
       queryDeviceCategory('', res => {
-        this.options = res.Content
+        this.options = res.content
       })
     }
   }

+ 18 - 18
src/components/data_admin/buildTask/table/assetsTable.vue

@@ -85,43 +85,43 @@ export default {
     getTableData() {
       this.loading = true
       let params = {
-        Filters: `ProjectId='${this.projectId}'`,
-        Cascade: [
+        filters: `projectId='${this.projectId}'`,
+        cascade: [
           {
-            Name: 'equipFamily'
+            name: 'equipFamily'
           }, {
-            Name: 'scanScheme'
+            name: 'scanScheme'
           }, {
-            Name: 'building',
+            name: 'building',
           }, {
-            Name: 'floor',
+            name: 'floor',
           }
         ],
-        Orders: "CreateTime desc, TaskId asc",
-        PageNumber: this.page.pageNumber,
-        PageSize: this.page.pageSize
+        orders: "createTime desc, id asc",
+        pageNumber: this.page.pageNumber,
+        pageSize: this.page.pageSize
       }
       if (this.paramsData.buildfloor[0] == "noKnow") {
-        params.Filters += `;BuildingId isNull`
+        params.filters += `;buildingId isNull`
       } else if (this.paramsData.buildfloor[0] && this.paramsData.buildfloor[0] != "all") {
-        params.Filters += `;BuildingId='${this.paramsData.buildfloor[0]}'`
+        params.filters += `;buildingId='${this.paramsData.buildfloor[0]}'`
         if (this.paramsData.buildfloor[1] == "noKnow") {
-          params.Filters += `;FloorId isNull`
+          params.filters += `;floorId isNull`
         } else if (this.paramsData.buildfloor[1] && this.paramsData.buildfloor[1] != "all") {
-          params.Filters += `;FloorId='${this.paramsData.buildfloor[1]}'`
+          params.filters += `;floorId='${this.paramsData.buildfloor[1]}'`
         }
       }
       if(this.paramsData.taskState !== ''){
-        params.Filters += `;TaskState=${this.paramsData.taskState}`
+        params.filters += `;taskState=${this.paramsData.taskState}`
       }
       if(this.paramsData.family){
-        params.Filters += `;Category='${this.paramsData.family}'`
+        params.filters += `;classCode='${this.paramsData.family}'`
       }
       queryAssetsTask(params, res => {
         this.loading = false
-        this.page.total = res.Total;
-        this.tableData = res.Content.map(item => {
-          item.TaskState = this.taskStateMap[item.TaskState]
+        this.page.total = res.total;
+        this.tableData = res.content.map(item => {
+          item.taskState = this.taskStateMap[item.taskState]
           return item
         })
       })

+ 41 - 27
src/components/data_admin/buildTask/table/deviceTable.vue

@@ -96,62 +96,76 @@
     getTableData() {
       this.loading = true
       let params = {
-        Filters: `ProjectId='${this.projectId}'`,
-        Cascade: [
+        filters: `projectId='${this.projectId}'`,
+        cascade: [
           {
-            Name: 'component'
+            name: 'component'
           }, {
-            Name: 'scanScheme'
+            name: 'scanScheme'
           }, {
-            Name: 'building',
+            name: 'building',
           }, {
-            Name: 'floor',
+            name: 'floor',
           }, {
-            Name: 'equipCategory'
+            name: 'equipCategory'
           }
         ],
-        Orders: "CreateTime desc, TaskId asc",
-        PageNumber: this.page.pageNumber,
-        PageSize: this.page.pageSize
+        // orders: "createTime desc, taskId asc",
+        orders: "createTime desc, id asc",
+        pageNumber: this.page.pageNumber,
+        pageSize: this.page.pageSize
       }
       if (this.paramsData.buildfloor[0] == "noKnow") {
-        params.Filters += `;BuildingId isNull`
+        params.filters += `;buildingId isNull`
       } else if (this.paramsData.buildfloor[0] && this.paramsData.buildfloor[0] != "all") {
-        params.Filters += `;BuildingId='${this.paramsData.buildfloor[0]}'`
+        params.filters += `;buildingId='${this.paramsData.buildfloor[0]}'`
         if (this.paramsData.buildfloor[1] == "noKnow") {
-          params.Filters += `;FloorId isNull`
+          params.filters += `;floorId isNull`
         } else if (this.paramsData.buildfloor[1] && this.paramsData.buildfloor[1] != "all") {
-          params.Filters += `;FloorId='${this.paramsData.buildfloor[1]}'`
+          params.filters += `;floorId='${this.paramsData.buildfloor[1]}'`
         }
       }
       if(this.paramsData.taskState !== ''){
-        params.Filters += `;TaskState=${this.paramsData.taskState}`
+        params.filters += `;taskState=${this.paramsData.taskState}`
       }
       if(this.paramsData.deviceCategory){
-        params.Filters += `;Category='${this.paramsData.deviceCategory}'`
+        params.filters += `;classCode='${this.paramsData.deviceCategory}'`
       }
       queryDeviceTask(params, res => {
         this.loading = false
-        this.page.total = res.Total;
-        this.tableData = res.Content.map(item => {
-          if(item.Component && item.Component.length){
+        this.page.total = res.total;
+        this.tableData = res.content.map(item => {
+          if(item.component && item.component.length){
             item.ComponentCount = []
-            item.Component.map(parts => {
-              if(parts.EquipCategory && parts.EquipCategory.EquipCode && parts.EquipCategory.EquipName){
-                let index = item.ComponentCount.findIndex(c => {return c.code == parts.EquipCategory.EquipCode})
+            item.component.map(parts => {
+              // if(parts.EquipCategory && parts.EquipCategory.EquipCode && parts.EquipCategory.EquipName){
+              //   let index = item.ComponentCount.findIndex(c => {return c.code == parts.EquipCategory.EquipCode})
+              //   if(index != -1){
+              //     item.ComponentCount[index].count++
+              //   } else {
+              //     item.ComponentCount.push({
+              //       name: parts.EquipCategory.EquipName,
+              //       code: parts.EquipCategory.EquipCode,
+              //       count: 1
+              //     })
+              //   }
+              // }
+              // todo 待测试
+              if(parts.equipCategory && parts.equipCategory.equipCode && parts.equipCategory.equipName){
+                let index = item.componentCount.findIndex(c => {return c.code == parts.equipCategory.equipCode})
                 if(index != -1){
-                  item.ComponentCount[index].count++
+                  item.componentCount[index].count++
                 } else {
-                  item.ComponentCount.push({
-                    name: parts.EquipCategory.EquipName,
-                    code: parts.EquipCategory.EquipCode,
+                  item.componentCount.push({
+                    name: parts.equipCategory.equipName,
+                    code: parts.equipCategory.equipCode,
                     count: 1
                   })
                 }
               }
             })
           }
-          item.TaskState = this.taskStateMap[item.TaskState]
+          item.taskState = this.taskStateMap[item.taskState]
           return item
         })
       })

+ 12 - 12
src/components/data_admin/buildTask/table/replaceTable.vue

@@ -94,19 +94,19 @@ export default {
     getTableData() {
       this.loading = true
       let params = {
-        Filters: `ProjectId='${this.projectId}';TaskType in ['2']`,
-        Cascade: [
+        filters: `projectId='${this.projectId}';taskType in ['2']`,
+        cascade: [
           {
-            Name: 'equipFamily'
+            name: 'equipFamily'
           }, {
-            Name: 'building',
+            name: 'building',
           }, {
-            Name: 'floor',
+            name: 'floor',
           }
         ],
-        Orders: "CreateTime desc, TaskId asc",
-        PageNumber: this.page.pageNumber,
-        PageSize: this.page.pageSize
+        orders: "createTime desc, id asc",
+        pageNumber: this.page.pageNumber,
+        pageSize: this.page.pageSize
       }
       // if (this.paramsData.buildfloor[0] == "noKnow") {
       //   params.Filters += `;BuildingId isNull`
@@ -126,10 +126,10 @@ export default {
       // }
       queryAssetsTask(params, res => {
         this.loading = false
-        this.page.total = res.Total;
-        this.tableData = res.Content.map(item => {
-          item.TaskState = this.taskStateMap[item.TaskState]
-          item.TaskType = this.taskTypeMap[item.TaskType]
+        this.page.total = res.total;
+        this.tableData = res.content.map(item => {
+          item.taskState = this.taskStateMap[item.taskState]
+          item.taskType = this.taskTypeMap[item.taskType]
           return item
         })
       })

+ 13 - 13
src/components/data_admin/buildTask/table/tearTable.vue

@@ -94,19 +94,19 @@ export default {
     getTableData() {
       this.loading = true
       let params = {
-        Filters: `ProjectId='${this.projectId}';TaskType in ['3','-5']`,
-        Cascade: [
+        filters: `projectId='${this.projectId}';taskType in ['3','-5']`,
+        cascade: [
           {
-            Name: 'equipFamily'
+            name: 'equipFamily'
           }, {
-            Name: 'building',
+            name: 'building',
           }, {
-            Name: 'floor',
+            name: 'floor',
           }
         ],
-        Orders: "CreateTime desc, TaskId asc",
-        PageNumber: this.page.pageNumber,
-        PageSize: this.page.pageSize
+        orders: "createTime desc, id asc",
+        pageNumber: this.page.pageNumber,
+        pageSize: this.page.pageSize
       }
       // if (this.paramsData.buildfloor[0] == "noKnow") {
       //   params.Filters += `;BuildingId isNull`
@@ -126,10 +126,10 @@ export default {
       // }
       queryAssetsTask(params, res => {
         this.loading = false
-        this.page.total = res.Total;
-        this.tableData = res.Content.map(item => {
-          item.TaskState = this.taskStateMap[item.TaskState]
-          item.TaskType = this.taskTypeMap[item.TaskType]
+        this.page.total = res.total;
+        this.tableData = res.content.map(item => {
+          item.taskState = this.taskStateMap[item.taskState]
+          item.taskType = this.taskTypeMap[item.taskType]
           return item
         })
       })
@@ -201,4 +201,4 @@ export default {
     margin-right: 15px;
   }
 }
-</style>
+</style>

+ 6 - 6
src/components/data_admin/buildTask/taskStatistics.vue

@@ -64,22 +64,22 @@
   methods: {
     getTaskCount(){
       queryTaskCount({},(res) => {
-        this.allCount = res.Count
+        this.allCount = res.count
       })
       queryTaskCount({Filters: `TaskState=0`},(res) => {
-        this.alreadyCount = res.Count
+        this.alreadyCount = res.count
       })
       queryTaskCount({Filters: `TaskState=-1`},(res) => {
-        this.notFoundCount = res.Count
+        this.notFoundCount = res.count
       })
       queryTaskCount({Filters: `TaskState=1`},(res) => {
-        this.waitCount = res.Count
+        this.waitCount = res.count
       })
       countAssetsTask({Filters: `TaskState=1&&TaskType='3'`},(res) => {
-        this.waitTearCount = res.Count
+        this.waitTearCount = res.count
       })
       countAssetsTask({Filters: `TaskState=1&&TaskType='2'`},(res) => {
-        this.waitReplaceCount = res.Count
+        this.waitReplaceCount = res.count
       })
     },
     upDataList() {

+ 22 - 22
src/components/dialogs/changeRea.vue

@@ -17,17 +17,17 @@
           <el-table :data="tableData" style="width: 100%" height="300px">
             <el-table-column label="资产名称">
               <template slot-scope="scope">
-                <el-radio :label="scope.row.EquipID" :ref="scope.row.EquipID" :value="scope.row.EquipLocalName || scope.row.EquipName">
-                  {{scope.row.EquipLocalName || scope.row.EquipName}}
+                <el-radio :label="scope.row.id" :ref="scope.row.id" :value="scope.row.localName || scope.row.name">
+                  {{scope.row.localName || scope.row.name}}
                 </el-radio>
               </template>
             </el-table-column>
             <el-table-column label="本地编码">
-              <template slot-scope="scope">{{scope.row.EquipLocalID || scope.row.EquipID}}</template>
+              <template slot-scope="scope">{{scope.row.localId || scope.row.id}}</template>
             </el-table-column>
             <el-table-column prop="name" label="所在楼层">
               <template slot-scope="scope">
-                {{ scope.row.Building?scope.row.Building.BuildLocalName?scope.row.Building.BuildLocalName:'':'' }}-{{ scope.row.Floor?scope.row.Floor.FloorLocalName?scope.row.Floor.FloorLocalName:'':'' }}
+                {{ scope.row.building?scope.row.building.localName?scope.row.building.localName:'':'' }}-{{ scope.row.Floor?scope.row.Floor.FloorLocalName?scope.row.Floor.FloorLocalName:'':'' }}
               </template>
             </el-table-column>
             <el-table-column label="设备族">
@@ -131,44 +131,44 @@ export default {
     },
     //查询表数据
     getPropertyData() {
-      let param = { 
-        Cascade: [
+      let param = {
+        cascade: [
           {
-            Name: "equipFamilyList",
-            Projection: [ "Family", "FamilyName" ]
+            name: "equipFamilyList",
+            projection: [ "Family", "FamilyName" ]
           },
           {
-            Name: "building",
-            Projection: ["BuildLocalName", "BuildName", "BuildID"]
+            name: "building",
+            projection: ["localName", "name", "id"]
           },
           {
-            Name: "floor",
-            Projection: ["FloorLocalName", "FloorName", "FloorID"]
+            name: "floor",
+            projection: ["localName", "name", "id"]
           }
         ],
-        Filters: `EquipmentId isNull;Family="${this.category.assetType}"`,
-        PageNumber: this.page.currentPage,
-        PageSize: this.page.size
+        filters: `equipmentId isNull;family="${this.category.assetType}"`,
+        pageNumber: this.page.currentPage,
+        pageSize: this.page.size
       }
       //建筑id
       if (this.mess.buildId == "noKnow") {
-        param.Filters += `;buildingId isNull`
+        param.filters += `;buildingId isNull`
       } else if (this.mess.buildId && this.mess.buildId != "all") {
-        param.Filters += `;buildingId='${this.mess.buildId}'`
+        param.filters += `;buildingId='${this.mess.buildId}'`
       }
       //楼层id
       if (this.mess.floorId == "noKnow") {
-        param.Filters += `;floorId isNull`
+        param.filters += `;floorId isNull`
       } else if (this.mess.floorId && this.mess.floorId != "all") {
-        param.Filters += `;floorId='${this.mess.floorId}'`
+        param.filters += `;floorId='${this.mess.floorId}'`
       }
       //名称和编码
       if (this.search) {
-        param.Filters += `;EquipLocalName contain '${this.search}' || EquipLocalID contain '${this.search}'`
+        param.filters += `;localName contain '${this.search}' || localId contain '${this.search}'`
       }
       queryProperty(param, res => {
-        this.tableData = res.Content
-        this.page.total = res.Total
+        this.tableData = res.content
+        this.page.total = res.total
       })
     }
   },

File diff suppressed because it is too large
+ 1228 - 1234
src/components/ledger/handsontables/assets.vue


+ 56 - 47
src/components/ledger/handsontables/device.vue

@@ -36,24 +36,28 @@
       </el-select>
       <!-- <el-button size="small" style='width: 80px;' @click="download" icon="iconfont icon-xiazai">下载</el-button> -->
       <el-button size="small" style="width: 80px;" @click="addDevice"
-        >添加设备</el-button
+      >添加设备
+      </el-button
       >
       <el-button
         size="small"
         @click="Batch"
         v-show="!onlyRead"
         :disabled="!(tableData && tableData.length)"
-        >批量维护信息点</el-button
+      >批量维护信息点
+      </el-button
       >
       <el-button size="small" style="width: 80px;" @click="reset"
-        >刷新</el-button
+      >刷新
+      </el-button
       >
       <el-button
         size="small"
         style="width: 80px;"
         v-show="!onlyRead"
         @click="undo"
-        >撤销</el-button
+      >撤销
+      </el-button
       >
     </div>
     <!-- 二维码弹窗 -->
@@ -211,8 +215,10 @@
           @click="updateInputShow = true"
           type="primary"
           :underline="false"
-          >继续维护</el-link
-        >。
+        >继续维护
+        </el-link
+        >
+        。
       </el-row>
       <el-row style="margin-top:20px;" v-show="updateInputShow">
         <el-input
@@ -326,21 +332,21 @@ export default {
     bimDialog
   },
   created() {
-	buildFloor.getData(this.buildFloorData);
+    buildFloor.getData(this.buildFloorData);
   },
   computed: {
     ...mapGetters("layout", ["projectId", "secret", "userId"]),
     showTypes() {
       return this.onlyRead
         ? [
-            { value: "Visible", label: "只看采集信息" },
-            { value: "all", label: "全部" }
-          ]
+          { value: "Visible", label: "只看采集信息" },
+          { value: "all", label: "全部" }
+        ]
         : [
-            { value: "partInfo", label: "隐藏信息点" },
-            { value: "all", label: "全部" },
-            { value: "Visible", label: "只看采集信息" }
-          ];
+          { value: "partInfo", label: "隐藏信息点" },
+          { value: "all", label: "全部" },
+          { value: "Visible", label: "只看采集信息" }
+        ];
     },
     // batchDate() {
     //     // return !(!this.onlyRead && this.copyMain)
@@ -508,7 +514,6 @@ export default {
         };
         getDataDictionary(params, res => {
           this.tableHeader = res.content;
-          console.log(this.tableHeader);
           this.tableHeader.forEach(item => {
             if (item.path) {
               this.inputMap[item.path] = item;
@@ -660,7 +665,7 @@ export default {
             if (cur) {
               param.data.criterias.push({
                 id: item.id,
-                code: head.origCode
+                code: head.code
               });
             }
           });
@@ -676,20 +681,20 @@ export default {
               if (item.id == child.id) {
                 if (!!child.data || child.data == 0) {
                   this.tableHeader.map(head => {
-                    if (head.origCode == child.code) {
+                    if (head.code == child.code) {
                       tools.setDataForKey(item, head.path, child.data);
                     }
                   });
                 } else {
                   this.tableHeader.map(head => {
-                    if (head.origCode == child.code) {
+                    if (head.code == child.code) {
                       tools.setDataForKey(
                         item,
                         head.path,
                         child.error
                           ? child.value
-                            ? "表号功能号格式错误"
-                            : "表号功能号不存在"
+                          ? "表号功能号格式错误"
+                          : "表号功能号不存在"
                           : "暂未采集到实时数据"
                       );
                     }
@@ -816,7 +821,7 @@ export default {
         this.onlyRead,
         this.showType,
         true
-	  );
+      );
       if (this.showParts) {
         data.unshift(
           {
@@ -914,12 +919,12 @@ export default {
         contextMenu: this.onlyRead
           ? false
           : {
-              items: {
-                remove_row: {
-                  name: "删除选中设备"
-                }
+            items: {
+              remove_row: {
+                name: "删除选中设备"
               }
-            },
+            }
+          },
         // 事件
         afterChange: this.handleUpdataTable, //修改后
         afterFilter: this.trimmedRows, //排序前
@@ -1083,22 +1088,23 @@ export default {
         });
         param.Content.push(item);
       });
-      updateEquip(param, res => {});
+      updateEquip(param, res => {
+      });
     },
     //修改设备类型
     changeCader() {
       if (this.mess.deviceId) {
         let param = {
           data: {
-            Filters: `EquipCode='${this.mess.deviceId}'`,
-            PageNumber: 1,
-            PageSize: 50
+            filters: `equipCode='${this.mess.deviceId}'`,
+            pageNumber: 1,
+            pageSize: 50
           }
         };
         getEquipBelongs(param, res => {
-          if (res.Content.length) {
-            this.deviceType.assetType = res.Content[0].Family;
-            this.deviceType.assetName = res.Content[0].FamilyName;
+          if (res.content.length) {
+            this.deviceType.assetType = res.content[0].family;
+            this.deviceType.assetName = res.content[0].familyName;
           }
         });
       }
@@ -1129,12 +1135,12 @@ export default {
     forValue(arr, val) {
       let enclosure = [];
       arr &&
-        arr.length &&
-        arr.map(i => {
-          if (i.Path == val) {
-            enclosure = i.value;
-          }
-        });
+      arr.length &&
+      arr.map(i => {
+        if (i.Path == val) {
+          enclosure = i.value;
+        }
+      });
       return enclosure;
     },
     multiples(val) {
@@ -1270,7 +1276,7 @@ export default {
       lStorage.set("screen_data", {
         path: this.$route.path,
         data: { equip: infos }
-	  });
+      });
       switch (val) {
         //操作
         case "caozuo":
@@ -1284,8 +1290,8 @@ export default {
               equipName: infos.localName
                 ? infos.localName
                 : infos.name
-                ? infos.name
-                : "",
+                  ? infos.name
+                  : "",
               equipCode: infos.localId ? infos.localId : "",
               data: this.tableData.map(item => {
                 return {
@@ -1293,8 +1299,8 @@ export default {
                   label: item.localName
                     ? item.localName
                     : item.name
-                    ? item.name
-                    : ""
+                      ? item.name
+                      : ""
                 };
               })
             }
@@ -1769,11 +1775,13 @@ export default {
         let filterParam = this.filterCheck(param, "sole");
         let filterParam1 = this.filterCheck(param1, "multiple");
         if (filterParam) {
-          updateEquip(param, res => {});
+          updateEquip(param, res => {
+          });
         }
         if (filterParam1) {
           setTimeout(() => {
-            queryUpdate(param1, res => {});
+            queryUpdate(param1, res => {
+            });
           });
         }
       }
@@ -1781,7 +1789,8 @@ export default {
         //覆盖
         let filterParams = this.filterCheck(param, "sole");
         if (filterParams) {
-          updateEquip(param, res => {});
+          updateEquip(param, res => {
+          });
         }
       }
       setTimeout(() => {

+ 38 - 32
src/components/ledger/handsontables/system.vue

@@ -2,9 +2,10 @@
   <div style="height: calc(100% - 44.5px);padding: 0px 10px 10px;box-sizing: border-box;">
     <div class="hanson-bar">
       <div style="float:right;overflow:hidden;">
-        <span>当前筛选条件下共{{page.total || '--'}}系统</span>
+        <span>当前筛选条件下共{{ page.total || '--' }}系统</span>
       </div>
-      <el-select v-model="onlyRead" @change="getHeaderData(mess)" style="width:100px;margin-right:20px;vertical-align:bottom;">
+      <el-select v-model="onlyRead" @change="getHeaderData(mess)"
+                 style="width:100px;margin-right:20px;vertical-align:bottom;">
         <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
       </el-select>
       <el-select v-model="showType" @change="initTable" style="width:100px;margin-right:10px;vertical-align:bottom;">
@@ -15,7 +16,8 @@
       <el-button size="small" style="width: 80px" @click="undo" icon="iconfont icon-undo">撤销</el-button>
     </div>
     <qrcode :dialog="myDialog" :addBody="true" ref="qrcode"></qrcode>
-    <upload-files-dialog ref="upload" @changeFile="fileChange" :keysArr="filesArr" :dialog="myDialog"></upload-files-dialog>
+    <upload-files-dialog ref="upload" @changeFile="fileChange" :keysArr="filesArr"
+                         :dialog="myDialog"></upload-files-dialog>
     <upload-img-dialog @changeFile="imgChange" :keysArr="imgsArr" :dialog="myDialog"></upload-img-dialog>
     <pic-dialog :dialog="myDialog" :keysArr="picsArr" @change="changePics"></pic-dialog>
     <div class="center middle_sty" style="height: 91%" v-show="!mess.deviceId && (!tableData || !tableData.length)">
@@ -24,7 +26,8 @@
     <div class="center middle_sty" style="height: 91%" v-show="mess.deviceId && (!tableData || !tableData.length)">
       <p><i class="icon-wushuju iconfont"></i>暂无数据</p>
     </div>
-    <div v-show="mess.deviceId && tableData && tableData.length" v-loading="loading" id="handsontable" ref="handsontable"></div>
+    <div v-show="mess.deviceId && tableData && tableData.length" v-loading="loading" id="handsontable"
+         ref="handsontable"></div>
     <div v-show="mess.deviceId && tableData && tableData.length" class="right">
       <my-pagination @change="getTableData" :page="page"></my-pagination>
     </div>
@@ -34,10 +37,13 @@
     <!-- 不支持的输入方式 -->
     <el-dialog title="临时维护信息点" :visible.sync="myDialog.update" @close="handleCloseUpdate" width="670px">
       <el-row>
-        该信息点未定义对应组件,现在维护数据不确定后续是否可用。如确实需要维护,请点击<el-link @click="updateInputShow = true" type="primary" :underline="false">继续维护</el-link>。
+        该信息点未定义对应组件,现在维护数据不确定后续是否可用。如确实需要维护,请点击
+        <el-link @click="updateInputShow = true" type="primary" :underline="false">继续维护</el-link>
+        。
       </el-row>
       <el-row style="margin-top:20px;" v-show="updateInputShow">
-        <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 8}" placeholder="请输入内容" v-model="updateInput"></el-input>
+        <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 8}" placeholder="请输入内容"
+                  v-model="updateInput"></el-input>
       </el-row>
       <span slot="footer" class="dialog-footer">
         <el-button @click="myDialog.update = false">取 消</el-button>
@@ -60,11 +66,12 @@
 <script>
 import {
   BeatchQueryParam,
-  getDataDictionary,
   querySysLinkBuild,
   updateGeneralSys,
   deleteGeneralSys
 } from "@/api/scan/request"
+import { getDataDictionary } from "@/api/dict";
+
 import myCascader from "@/components/ledger/lib/system";
 import tools from "@/utils/scan/tools";
 import handsonUtils from "@/utils/scan/hasontableUtils"
@@ -82,6 +89,7 @@ import 'handsontable-pro/dist/handsontable.full.css'
 import editSysfloor from "@/components/ledger/lib/editSysFloor";
 
 import { mapGetters } from "vuex";
+
 export default {
   components: {
     qrcode, //二维码页面
@@ -154,10 +162,10 @@ export default {
       inputMap: {
         flowBuild: {
           InputMode: 'D1',
-          Editable:true,
-          InfoPointCode:"flowBuild",
-          InfoPointName:"建筑楼层",
-          Path:"flowBuild"
+          Editable: true,
+          InfoPointCode: "flowBuild",
+          InfoPointName: "建筑楼层",
+          Path: "flowBuild"
         }
       }, //信息点和输入方式映射表
       updateInputShow: false, //是否显示临时维护输入框
@@ -167,7 +175,8 @@ export default {
   },
   created() {
   },
-  mounted() { },
+  mounted() {
+  },
   methods: {
     //触发父组件change
     getClose(val) {
@@ -178,18 +187,13 @@ export default {
       this.mess = code
       if (this.mess.deviceId) {
         let params = {
-          data: {
-            Orders: "sort asc, InfoPointName desc",
-            PageNumber: 1,
-            PageSize: 1000
-          },
           type: this.mess.deviceId
         }
         getDataDictionary(params, res => {
-          this.tableHeader = res.Content;
+          this.tableHeader = res.content;
           this.tableHeader.forEach(item => {
-            if (item.Path) {
-              this.inputMap[item.Path] = item
+            if (item.path) {
+              this.inputMap[item.path] = item
             }
           })
           this.getTableData()
@@ -329,17 +333,17 @@ export default {
       this.tableHeader.map(head => {
         //如果一级标签为动态参数或者设定参数放入数据等待请求
         if (
-          head.InputMode == "L" ||
-          head.InputMode == "L1" ||
-          head.InputMode == "L2" ||
-          head.InputMode == "M"
+          head.inputMode == "L" ||
+          head.inputMode == "L1" ||
+          head.inputMode == "L2" ||
+          head.inputMode == "M"
         ) {
           data.map(item => {
-            let cur = tools.dataForKey(item, head.Path);
+            let cur = tools.dataForKey(item, head.path);
             if (cur) {
               param.data.criterias.push({
                 id: item.SysID,
-                code: head.InfoPointCode
+                code: head.code
               });
             }
           });
@@ -355,16 +359,16 @@ export default {
               if (item.SysID == child.id) {
                 if (!!child.data || child.data == 0) {
                   this.tableHeader.map(head => {
-                    if (head.InfoPointCode == child.code) {
-                      tools.setDataForKey(item, head.Path, child.data);
+                    if (head.code == child.code) {
+                      tools.setDataForKey(item, head.path, child.data);
                     }
                   });
                 } else {
                   this.tableHeader.map(head => {
-                    if (head.InfoPointCode == child.code) {
+                    if (head.code == child.code) {
                       tools.setDataForKey(
                         item,
-                        head.Path,
+                        head.path,
                         // child.error ? "表号功能号格式错误" : "表号功能号不存在"
                         child.error ? child.value ? "表号功能号格式错误" : "表号功能号不存在" : "暂未采集到实时数据"
                       );
@@ -409,7 +413,7 @@ export default {
           "filter_by_value",
           "filter_action_bar"
         ],
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除该系统"
@@ -526,7 +530,8 @@ export default {
         });
         param.Content.push(item);
       });
-      updateGeneralSys(param, res => { });
+      updateGeneralSys(param, res => {
+      });
     },
     //获取到了正确的信息
     getInfors(infos, row) {
@@ -706,6 +711,7 @@ export default {
   overflow: hidden;
   margin-top: 0;
   line-height: 40px;
+
   .iconfont {
     font-size: 12px;
   }

+ 33 - 29
src/components/ledger/lib/assets.vue

@@ -1,8 +1,9 @@
 <template>
   <div id="cascaderMap">
     <span class="buildFloor" style="padding-right: 12px;">设备族</span>
-    <el-select v-model="value" placeholder="请选择" clearable :props="props" filterable :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
-      <el-option  v-for="item in options" :key="item.code" :label="item.facility" :value="item.code"></el-option>
+    <el-select v-model="value" placeholder="请选择" clearable :props="props" filterable
+               :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
+      <el-option v-for="item in options" :key="item.code" :label="item.facility" :value="item.code"></el-option>
     </el-select>
     <!-- <el-cascader
       placeholder="请选择"
@@ -18,8 +19,9 @@
   </div>
 </template>
 <script>
-import {mapGetters} from 'vuex';
+import { mapGetters } from 'vuex';
 import { getEquipBelongs, queryProperty } from "@/api/scan/request";
+
 export default {
   name: "getCode",
   props: {
@@ -34,7 +36,7 @@ export default {
   },
   computed: {
     ...mapGetters("layout", [
-        "projectId",
+      "projectId",
     ])
   },
   data() {
@@ -52,10 +54,10 @@ export default {
   created() {
     this.getData();
   },
-    watch: {
-      projectId() {
-          this.value = ['']
-      }
+  watch: {
+    projectId() {
+      this.value = ['']
+    }
   },
   methods: {
     setValue(val) {
@@ -73,19 +75,20 @@ export default {
       this.$emit("change", value)
     },
     getData() {
+      let _this = this
       let param1 = {
-        data:{
-          Distinct: true,
-          PageNumber: 1,
-          PageSize: 500,
-          Projection:["Family","FamilyName"]
+        data: {
+          distinct: true,
+          pageNumber: 1,
+          pageSize: 500,
+          projection: ["family", "familyName"]
         }
       }, param2 = {
-        Distinct: true,
-        PageNumber: 1,
-        PageSize: 500,
-        Projection: [
-          "Family"
+        distinct: true,
+        pageNumber: 1,
+        pageSize: 500,
+        projection: [
+          "family"
         ]
       }
       let promise1 = new Promise((resolve, reject) => {
@@ -98,19 +101,19 @@ export default {
           resolve(res)
         })
       })
-      Promise.all([promise1,promise2]).then((res) => {
+      Promise.all([promise1, promise2]).then((res) => {
         let allData = res[0], data = res[1]
-        this.options = this.changeArr(allData.Content)
-        if (this.value) {
-          this.changeVal(this.value)
+        _this.options = _this.changeArr(allData.content)
+        if (_this.value) {
+          _this.changeVal(this.value)
         }
-        if(!this.all) {
-          this.content = data.Content.map(item => {
-            return item.Family
+        if (!_this.all) {
+          _this.content = data.content.map(item => {
+            return item.family
           });
-          this.changeList();
-          if (this.value) {
-            this.changeVal(this.value)
+          _this.changeList();
+          if (_this.value) {
+            _this.changeVal(this.value)
           }
         }
       })
@@ -133,7 +136,7 @@ export default {
     changeArr(arr) {
       let data = [];
       arr.map(item => {
-        data.push({ code: item.Family, facility: item.FamilyName, disabled: false })
+        data.push({ code: item.family, facility: item.familyName, disabled: false })
       });
       return data;
     },
@@ -160,6 +163,7 @@ export default {
 #cascaderMap {
   float: left;
   margin-left: 10px;
+
   .buildFloor {
     color: #999999;
     font-size: 14px;

+ 15 - 16
src/components/ledger/lib/buildfloorCascader.vue

@@ -12,9 +12,9 @@ export default {
       props: {
         multiple: true,
         checkStrictly: true,
-        value: 'BuildID',
-        label: 'BuildLocalName',
-        children: 'Floor'
+        value: 'id',
+        label: 'localName',
+        children: 'floor'
       },
       options: []
     }
@@ -28,26 +28,25 @@ export default {
   methods: {
     getCascader() {
       let param = {
-        Cascade: [
-          { Name: "floor", Orders: "FloorSequenceID desc" }
+        cascade: [
+          { name: "floor", orders: "floorSequenceID desc" }
         ],
-        Orders: "BuildLocalName asc",
-        PageNumber: 1,
-        PageSize: 50
+        orders: "localName asc",
+        pageNumber: 1,
+        pageSize: 50
       }
       buildingQuery(param, res => {
-
-        res.Content.map(t => {
-          if (t.Floor && t.Floor.length) {
-            t.Floor = t.Floor.map(item => {
-              if (item.FloorID == this.FloorID) return
-              item.BuildID = item.FloorID
-              item.BuildLocalName = item.FloorLocalName || item.FloorName
+        res.content.map(t => {
+          if (t.floor && t.floor.length) {
+            t.floor = t.floor.map(item => {
+              if (item.id == this.FloorID) return
+              item.BuildID = item.id
+              item.BuildLocalName = item.localName || item.name
               return item
             }).filter(it => it)
           }
         })
-        this.options = res.Content
+        this.options = res.content
       })
     },
     getSelectedNodes() {

+ 1 - 0
src/components/ledger/lib/linkassets.vue

@@ -82,6 +82,7 @@ export default {
     //获取未关联资产的设备或部件类型
     getPartsDieType() {
       TypePartsDie(res => {
+        debugger
         this.deviceTypeList = res.Content.filter(item => {
           return item.CategoryName
         })

+ 142 - 140
src/components/ledger/lib/noAllDataFloor.vue

@@ -1,152 +1,154 @@
 <template>
-    <div id="buildFloor">
-        <span class="buildFloor">建筑楼层</span>
-        <el-cascader placeholder="请选择建筑楼层" :options="options" v-model="value" filterable size="small" :style="isWidth ? '' : 'width:160px;'" @change="changeCascader"></el-cascader>
-    </div>
+  <div id="buildFloor">
+    <span class="buildFloor">建筑楼层</span>
+    <el-cascader placeholder="请选择建筑楼层" :options="options" v-model="value" filterable size="small"
+                 :style="isWidth ? '' : 'width:160px;'" @change="changeCascader"></el-cascader>
+  </div>
 </template>
 <script>
-    import tools from "@/utils/scan/tools"
-    // import { floorQuery, buildingQuery } from '@/api/scan/request'
-    import { buildingQuery } from '@/api/object/build'
-    import { floorQuery } from '@/api/object/floor'
+import tools from "@/utils/scan/tools"
+// import { floorQuery, buildingQuery } from '@/api/scan/request'
+import { buildingQuery } from '@/api/object/build'
+import { floorQuery } from '@/api/object/floor'
 
-    import { mapGetters, mapActions } from "vuex"
-    export default {
-        props: {
-            isWidth: {
-                type: Boolean,
-                default: true
-            },
-            type: {
-                type: String,
-                default: "yes"
-            }
-        },
-        computed: {
-            ...mapGetters("layout", [
-                "projectId",
-                "secret",
-                "userId"
-            ])
-        },
-        data() {
-            return {
-                options: [],
-                param: {
-                    ProjId: '',
-                    secret: ''
-                },
-                value: [],
-                floorToMap:{}
-            };
-        },
-        created() {
-            this.param.ProjId = this.projectId
-            this.param.secret = this.secret
-            this.getData()
-        },
-        watch: {
-            projectId() {
-                this.options = [];
-                this.param.ProjId = this.projectId
-                this.param.secret = this.secret
-                this.getData()
-                this.changeCascader([])
-            }
-        },
-        methods: {
-            //设置默认选项
-            setValue(val) {
-                if (val && val.length) {
-                    this.value = val
-                }
-            },
-            //获取数据
-            getData() {
-                let data, buildParams = {
-                    PageNumber: 1,
-                    PageSize: 1000,
-                    Orders: "BuildLocalName asc",
-                    Projection: [
-                        "BuildID",
-                        "BuildLocalName"
-                    ]
-                }, floorParams = {
-                    Orders: "FloorSequenceID desc",
-                    PageNumber: 1,
-                    PageSize: 1000
-                }
-                let promise1 = new Promise((resolve, reject) => {
-                    buildingQuery(buildParams, res => {
-                        resolve(res)
-                    })
-                })
-                let promise2 = new Promise((resolve, reject) => {
-                    floorQuery(floorParams, res => {
-                        resolve(res)
-                    })
+import { mapGetters, mapActions } from "vuex"
+
+export default {
+  props: {
+    isWidth: {
+      type: Boolean,
+      default: true
+    },
+    type: {
+      type: String,
+      default: "yes"
+    }
+  },
+  computed: {
+    ...mapGetters("layout", [
+      "projectId",
+      "secret",
+      "userId"
+    ])
+  },
+  data() {
+    return {
+      options: [],
+      param: {
+        ProjId: '',
+        secret: ''
+      },
+      value: [],
+      floorToMap: {}
+    };
+  },
+  created() {
+    this.param.ProjId = this.projectId
+    this.param.secret = this.secret
+    this.getData()
+  },
+  watch: {
+    projectId() {
+      this.options = [];
+      this.param.ProjId = this.projectId
+      this.param.secret = this.secret
+      this.getData()
+      this.changeCascader([])
+    }
+  },
+  methods: {
+    //设置默认选项
+    setValue(val) {
+      if (val && val.length) {
+        this.value = val
+      }
+    },
+    //获取数据
+    getData() {
+      let data, buildParams = {
+        pageNumber: 1,
+        pageSize: 1000,
+        orders: "localName asc",
+        projection: [
+          "id",
+          "localName"
+        ]
+      }, floorParams = {
+        orders: "floorSequenceID desc",
+        pageNumber: 1,
+        pageSize: 1000
+      }
+      let promise1 = new Promise((resolve, reject) => {
+        buildingQuery(buildParams, res => {
+          resolve(res)
+        })
+      })
+      let promise2 = new Promise((resolve, reject) => {
+        floorQuery(floorParams, res => {
+          resolve(res)
+        })
+      })
+      Promise.all([promise1, promise2]).then(values => {
+        let builData = values[0].content, floorData = values[1].content
+        data = builData.map(build => {
+          return {
+            value: build.id,
+            label: build.localName
+          }
+        })
+        data.unshift({
+          value: "noKnow",
+          label: "未明确建筑"
+        })
+        data.forEach(build => {
+          floorData.forEach(floor => {
+            this.floorToMap[floor.id] = floor;
+            if (build.value == floor.buildingId && floor.id && floor.localName && this.type == "yes") {
+              if (build.children) {
+                build.children.push({
+                  value: floor.id,
+                  label: floor.localName,
+                  FloorSequenceID: floor.floorSequenceId
                 })
-                Promise.all([promise1, promise2]).then(values => {
-                    let builData = values[0].Content, floorData = values[1].Content
-                    data = builData.map(build => {
-                        return {
-                            value: build.BuildID,
-                            label: build.BuildLocalName
-                        }
-                    })
-                    data.unshift({
-                        value: "noKnow",
-                        label: "未明确建筑"
-                    })
-                    data.forEach(build => {
-                        floorData.forEach(floor => {
-                            this.floorToMap[floor.FloorID] = floor;
-                            if (build.value == floor.BuildID && floor.FloorID && floor.FloorLocalName && this.type == "yes") {
-                                if (build.children) {
-                                    build.children.push({
-                                        value: floor.FloorID,
-                                        label: floor.FloorLocalName,
-                                        FloorSequenceID: floor.FloorSequenceID
-                                    })
-                                } else {
-                                    build.children = []
-                                    build.children.push({
-                                        value: 'noKnow',
-                                        label: "未明确楼层"
-                                    },{
-                                        value: floor.FloorID,
-                                        label: floor.FloorLocalName,
-                                        FloorSequenceID: floor.FloorSequenceID
-                                    })
-                                }
-                            }
-                        })
-                    })
-                    console.log(this.floorToMap)
-                    this.$emit('getFloorMap',this.floorToMap)
-                    this.options = data
+              } else {
+                build.children = []
+                build.children.push({
+                  value: 'noKnow',
+                  label: "未明确楼层"
+                }, {
+                  value: floor.id,
+                  label: floor.localName,
+                  FloorSequenceID: floor.floorSequenceId
                 })
-            },
-            //改变item
-            changeCascader(value) {
-                this.$emit("change", value)
+              }
             }
-        }
-    };
+          })
+        })
+        this.$emit('getFloorMap', this.floorToMap)
+        this.options = data
+      })
+    },
+    //改变item
+    changeCascader(value) {
+      this.$emit("change", value)
+    }
+  }
+};
 </script>
 <style lang="less">
-    .el-cascader .el-input .el-input__inner {
-        vertical-align: bottom;
-    }
+.el-cascader .el-input .el-input__inner {
+  vertical-align: bottom;
+}
 </style>
 <style lang="less" scoped>
-    #buildFloor {
-        margin-left: 10px;
-        float: left;
-    }
-    .buildFloor {
-        color: #999999;
-        font-size: 14px;
-        margin-right: 12px;
-    }
+#buildFloor {
+  margin-left: 10px;
+  float: left;
+}
+
+.buildFloor {
+  color: #999999;
+  font-size: 14px;
+  margin-right: 12px;
+}
 </style>

+ 17 - 14
src/components/ledger/lib/partsDieList.vue

@@ -1,8 +1,9 @@
 <template>
   <div id="cascaderMap">
     <span class="buildFloor" style="margin-right: 12px;">设备类</span>
-    <el-select v-model="value" placeholder="请选择" :props="props" filterable :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
-      <el-option  v-for="item in options" :key="item.code" :label="item.facility" :value="item.code"></el-option>
+    <el-select v-model="value" placeholder="请选择" :props="props" filterable :style="isWidth ? '' : 'width:160px;'"
+               size="small" @change="changeVal">
+      <el-option v-for="item in options" :key="item.code" :label="item.facility" :value="item.code"></el-option>
     </el-select>
     <!-- <el-cascader placeholder="请选择" :options="options" v-model="value" :props="props" filterable :style="isWidth ? '' : 'width:160px;'" size="small"
       @change="changeVal" change-on-select></el-cascader> -->
@@ -11,6 +12,7 @@
 <script>
 import { mapGetters } from 'vuex';
 import { getEqCode, getEquipBelongs, queryPartsDie } from "@/api/scan/request";
+
 export default {
   name: "getCode",
   props: {
@@ -39,7 +41,7 @@ export default {
     };
   },
   mounted() {
-    if(this.Family != "") {
+    if (this.Family != "") {
       this.getAllData()
     }
   },
@@ -87,7 +89,7 @@ export default {
       queryPartsDie(param, res => {
         this.content = res.Content
         this.filterForOptions()
-        let val = this.options.length?this.options[0].code:""
+        let val = this.options.length ? this.options[0].code : ""
         this.changeVal(val)
       })
     },
@@ -95,18 +97,18 @@ export default {
     getAllData() {
       let param = {
         data: {
-          Filters: `Family='${this.Family}'`,
-          Distinct: true,
-          Orders: "EquipName asc",
-          PageNumber: 1,
-          PageSize: 500,
-          Projection: [
-            "EquipCode", "EquipName"
+          filters: `family='${this.Family}'`,
+          distinct: true,
+          orders: "equipName asc",
+          pageNumber: 1,
+          pageSize: 500,
+          projection: [
+            "equipCode", "equipName"
           ]
         }
       }
       getEquipBelongs(param, res => {
-        this.options = this.formatOptions(res.Content)
+        this.options = this.formatOptions(res.content)
         this.getData()
       })
     },
@@ -115,8 +117,8 @@ export default {
       let data = [];
       arr.map(t => {
         let temp = {};
-        temp.code = t.EquipCode;
-        temp.facility = t.EquipName;
+        temp.code = t.equipCode;
+        temp.facility = t.equipName;
         data.push(temp)
       })
       return data;
@@ -136,6 +138,7 @@ export default {
 #cascaderMap {
   float: left;
   margin-left: 10px;
+
   .buildFloor {
     color: #999999;
     font-size: 14px;

+ 12 - 11
src/components/ledger/rentList/roomCountDrawer.vue

@@ -104,21 +104,22 @@ export default {
     },
     getBuilding() {
       let pa = {
-        Cascade: [{ Name: 'floor', Orders: 'FloorSequenceID desc' }],
-        Order: 'BuildLocalName asc'
+        cascade: [{ name: 'floor', orders: 'floorSequenceID desc' }],
+        order: 'localName asc'
       }
+      //todo 检测所有大小写
       buildingQuery(pa, res => {
-        this.option.GeneralZone = res.Content.map(build => {
-          build.value = build.BuildID;
-          build.label = build.BuildLocalName;
-          if (build.Floor) {
-            build.Floor = build.Floor.map(floor => {
-              floor.value = floor.FloorID;
-              floor.label = floor.FloorLocalName;
-              floor.Floor = [];
+        this.option.GeneralZone = res.content.map(build => {
+          build.value = build.id;
+          build.label = build.localName;
+          if (build.floor) {
+            build.floor = build.floor.map(floor => {
+              floor.value = floor.id;
+              floor.label = floor.localName;
+              floor.floor = [];
               return floor;
             });
-            build.Floor.unshift({ value: 'noknowFloor', label: '未明确楼层', Floor: [] })
+            build.floor.unshift({ value: 'noknowFloor', label: '未明确楼层', Floor: [] })
           }
           return build;
         })

+ 55 - 54
src/components/ledger/report/dataexport.vue

@@ -10,7 +10,8 @@
 <script>
 import jsontoExcel from "@/utils/JOSNToExcel"
 import { State, Family } from "@/data/mapTable"
-import { queryEquip, queryProperty } from "@/api/scan/request"
+import {  queryProperty } from "@/api/scan/request"
+import { queryEquip } from "@/api/object/equip";
 import { mapGetters, mapActions } from "vuex"
 
 export default {
@@ -175,44 +176,44 @@ export default {
     getheader1Data(pageNum) {
       pageNum = pageNum ? pageNum : 1
       let params = {
-        Cascade: [
+        cascade: [
           {
-            Name: "equipCategory",
-            Projection: ["EquipCode", "EquipName"]
+            name: "equipCategory",
+            projection: ["equipCode", "equipName"]
           },
           {
-            Name: "property",
-            Cascade: [
+            name: "property",
+            cascade: [
               {
-                Name: "equipFamilyList",
-                Projection: [ "Family", "FamilyName" ]
+                name: "equipFamilyList",
+                projection: [ "family", "familyName" ]
               }
             ],
-            Projection: ["Family", "EquipLocalName", "EquipLocalID", "EquipID", "CodeType", "CreateTime"]
+            projection: ["family", "equipLocalName", "equipLocalID", "equipID", "codeType", "createTime"]
           },
           {
-            Name: "building",
-            Projection: ["BuildLocalName", "BuildName", "BuildID"]
+            name: "building",
+            projection: ["localName", "name", "id"]
           },
           {
-            Name: "floor",
-            Projection: ["FloorLocalName", "FloorName", "FloorID"]
+            name: "floor",
+            projection: ["localName", "name", "id"]
           }
         ],
-        Filters: " not propertyId isnull ",
-        Orders: "CreateTime desc, EquipID asc",
-        PageNumber: pageNum,
-        PageSize: 1000,
-        Projection: ["CreateTime", "BuildingId", "FloorId", "Category", "EquipLocalName", "EquipLocalID", "EquipID", "BIMID", "LedgerParam"]
+        filters: " not propertyId isnull ",
+        orders: "createTime desc, equipID asc",
+        pageNumber: pageNum,
+        pageSize: 1000,
+        projection: ["createTime", "buildingId", "floorId", "classCode", "equipLocalName", "equipLocalID", "equipID", "bimId", "infos"]
       }
       queryEquip(params, res => {
-        this.dataList = this.dataList.concat(res.Content.map((item) => {
-          item.Property.CodeType = State[item.Property.CodeType]
+        this.dataList = this.dataList.concat(res.content.map((item) => {
+          item.property.codeType = State[item.property.codeType]
           // item.Property.Family = Family[item.Property.Family]
           return item
         }))
-        if (res.Total / (res.PageSize * res.PageNumber) > 1) {
-          this.getheader1Data(res.PageNumber + 1)
+        if (res.total / (res.pageSize * res.pageNumber) > 1) {
+          this.getheader1Data(res.pageNumber + 1)
         } else {
           let time = +new Date()
           this.loading = false
@@ -223,30 +224,30 @@ export default {
     getheader2Data(pageNum) {
       pageNum = pageNum ? pageNum : 1
       let params = {
-        Cascade: [
+        cascade: [
           {
-            Name: "equipCategory",
-            Projection: ["EquipCode", "EquipName"]
+            name: "equipCategory",
+            projection: ["equipCode", "equipName"]
           },
           {
-            Name: "building",
-            Projection: ["BuildLocalName", "BuildName", "BuildID"]
+            name: "building",
+            projection: ["localName", "name", "id"]
           },
           {
-            Name: "floor",
-            Projection: ["FloorLocalName", "FloorName", "FloorID"]
+            name: "floor",
+            projection: ["localName", "name", "id"]
           }
         ],
-        Filters: " propertyId isnull ",
-        Orders: "CreateTime desc, EquipID asc",
-        PageNumber: pageNum,
-        PageSize: 1000,
-        Projection: ["CreateTime", "BuildingId", "FloorId", "Category", "EquipLocalName", "EquipLocalID", "EquipID", "BIMID", "LedgerParam"]
+        filters: " propertyId isnull ",
+        orders: "createTime desc, equipID asc",
+        pageNumber: pageNum,
+        pageSize: 1000,
+        projection: ["createTime", "buildingId", "floorId", "classCode", "equipLocalName", "equipLocalID", "equipID", "bimId", "infos"]
       }
       queryEquip(params, res => {
-        this.dataList = this.dataList.concat(res.Content)
-        if (res.Total / (res.PageSize * res.PageNumber) > 1) {
-          this.getheader2Data(res.PageNumber + 1)
+        this.dataList = this.dataList.concat(res.content)
+        if (res.total / (res.pageSize * res.pageNumber) > 1) {
+          this.getheader2Data(res.pageNumber + 1)
         } else {
           let time = +new Date()
           this.loading = false
@@ -257,33 +258,33 @@ export default {
     getheader3Data(pageNum) {
       pageNum = pageNum ? pageNum : 1
       let params = {
-        Cascade: [
+        cascade: [
           {
-            Name: "equipFamilyList",
-            Projection: [ "Family", "FamilyName" ]
+            name: "equipFamilyList",
+            projection: [ "family", "familyName" ]
           },
           {
-            Name: "building",
-            Projection: [ "BuildLocalName", "BuildName", "BuildID" ]
+            name: "building",
+            projection: [ "localName", "name", "id" ]
           },
           {
-            Name: "floor",
-            Projection: [ "FloorLocalName", "FloorName", "FloorID" ]
+            name: "floor",
+            projection: [ "localName", "name", "id" ]
           }
         ],
-        Filters: " EquipmentId isnull ",
-        Orders: "CreateTime desc, EquipID asc",
-        PageNumber: pageNum,
-        PageSize: 1000,
-        Projection: [ "BuildingId", "FloorId", "Family", "EquipLocalName", "EquipLocalID", "EquipID", "CreateTime", "CodeType", "LedgerParam"]
+        filters: " equipmentId isnull ",
+        orders: "createTime desc, equipID asc",
+        pageNumber: pageNum,
+        pageSize: 1000,
+        projection: [ "buildingId", "floorId", "family", "equipLocalName", "equipLocalID", "equipID", "createTime", "codeType", "infos"]
       }
       queryProperty(params, res => {
-        this.dataList = this.dataList.concat(res.Content.map((item) => {
-          item.CodeType = State[item.CodeType]
+        this.dataList = this.dataList.concat(res.content.map((item) => {
+          item.codeType = State[item.codeType]
           return item
         }))
-        if (res.Total / (res.PageSize * res.PageNumber) > 1) {
-          this.getheader3Data(res.PageNumber + 1)
+        if (res.total / (res.pageSize * res.pageNumber) > 1) {
+          this.getheader3Data(res.pageNumber + 1)
         } else {
           let time = +new Date()
           this.loading = false
@@ -296,4 +297,4 @@ export default {
 </script>
 
 <style scoped>
-</style>
+</style>

+ 10 - 8
src/components/ledger/system/lib/equipType.vue

@@ -8,7 +8,9 @@
 </template>
 <script>
 import { mapGetters } from 'vuex';
-import { queryPhysicsAllType, queryEquip } from "@/api/scan/request";
+import { queryPhysicsAllType } from "@/api/scan/request";
+import { queryEquip } from "@/api/object/equip";
+
 export default {
   name: "getCode",
   props: {
@@ -65,11 +67,11 @@ export default {
     //获取当前项目下的设备类型(只拿到编码-需要过滤)
     getData() {
       let param2 = {
-        Distinct: true,
-        PageNumber: 1,
-        PageSize: 1000,
-        Projection: [
-          "Category"
+        distinct: true,
+        pageNumber: 1,
+        pageSize: 1000,
+        projection: [
+          "classCode"
         ]
       }
       let param1 = 'Equipment'
@@ -96,8 +98,8 @@ export default {
           this.changeVal(this.value)
         }
         if (!this.all) {
-          this.content = data.Content.map(t => {
-            return t.Category
+          this.content = data.content.map(t => {
+            return t.classCode
           });
           this.filterForOptions();
           if (this.value) {

+ 38 - 19
src/components/ledger/tableTransfers.vue

@@ -6,7 +6,8 @@
         <div class="border-view">
           <div class="search">
             <div class="search-small" style="padding: 10px 10px 0 10px">
-              <el-input placeholder="输入设备名称进行查询" v-model="search1" style="width:300px;margin-right: 10px;" size="small" clearable></el-input>
+              <el-input placeholder="输入设备名称进行查询" v-model="search1" style="width:300px;margin-right: 10px;" size="small"
+                        clearable></el-input>
               <el-button @click="getLeftData" size="small">查找</el-button>
             </div>
             <div class="search-small" style="padding: 10px">
@@ -14,8 +15,9 @@
               <cascader :isWidth="false" @change="changeCascader" :all="true"></cascader>
             </div>
           </div>
-          <el-table ref="multipleTable" :data="tableData" height="300px" tooltip-effect="dark" style="width: 100%" class="data-table"
-            @selection-change="handleSelectionChange" v-loading="isLoading1" border>
+          <el-table ref="multipleTable" :data="tableData" height="300px" tooltip-effect="dark" style="width: 100%"
+                    class="data-table"
+                    @selection-change="handleSelectionChange" v-loading="isLoading1" border>
             <el-table-column type="selection" width="55"></el-table-column>
             <el-table-column label="设备名称" width="120">
               <template slot-scope="scope">{{ scope.row.EquipLocalName || scope.row.EquipName }}</template>
@@ -37,22 +39,27 @@
       </div>
       <div class="main-button">
         <el-button class="top" @click="rightToLeft" :disabled="SelectionList && SelectionList.length ? false : true"
-          :type="SelectionList && SelectionList.length ? 'primary' : ''" icon="el-icon-arrow-left" circle></el-button>
-        <el-button class="bottom" @click="leftToRight" :disabled="multipleSelection && multipleSelection.length ? false : true"
-          :type="multipleSelection && multipleSelection.length ? 'primary' : ''" icon="el-icon-arrow-right" circle></el-button>
+                   :type="SelectionList && SelectionList.length ? 'primary' : ''" icon="el-icon-arrow-left"
+                   circle></el-button>
+        <el-button class="bottom" @click="leftToRight"
+                   :disabled="multipleSelection && multipleSelection.length ? false : true"
+                   :type="multipleSelection && multipleSelection.length ? 'primary' : ''" icon="el-icon-arrow-right"
+                   circle></el-button>
       </div>
       <div class="main-right">
         <h4>已关联该系统的设备</h4>
         <div class="border-view">
           <div class="search">
             <div class="search-big">
-              <el-input placeholder="输入设备名称进行查询" v-model="search2" style="width:200px; margin-bottom: 10px;" size="small" clearable>
+              <el-input placeholder="输入设备名称进行查询" v-model="search2" style="width:200px; margin-bottom: 10px;"
+                        size="small" clearable>
               </el-input>
               <el-button @click="getRightData" size="small">查找</el-button>
             </div>
           </div>
-          <el-table ref="multipleTable" :data="table2Data" height="300px" tooltip-effect="dark" style="width: 100%" class="data-table"
-            @selection-change="tableChange" v-loading="isLoading2" border>
+          <el-table ref="multipleTable" :data="table2Data" height="300px" tooltip-effect="dark" style="width: 100%"
+                    class="data-table"
+                    @selection-change="tableChange" v-loading="isLoading2" border>
             <el-table-column type="selection" width="55"></el-table-column>
             <el-table-column label="设备名称">
               <template slot-scope="scope">{{ scope.row.EquipLocalName || scope.row.EquipName }}</template>
@@ -82,6 +89,7 @@ import {
   mapGetters,
   mapActions
 } from "vuex";
+
 export default {
   props: {
     dialog: {
@@ -123,7 +131,7 @@ export default {
       search2: '',//右侧输入条件
       buildingId: '',//建筑id
       floorId: '',//楼层id
-      category: '',//设备类型 
+      category: '',//设备类型
       tableData: [], //第一个表格的数据
       table2Data: [], //第二个表格的数据
       multipleSelection: [], //第一个表格的被选择数组
@@ -156,17 +164,17 @@ export default {
     getAllData() {
       let param = {
         data: {
-          Distinct: true,
-          Orders: "EquipName asc",
-          PageNumber: 1,
-          PageSize: 500,
-          Projection: [
-            "EquipCode", "EquipName"
+          distinct: true,
+          orders: "equipName asc",
+          pageNumber: 1,
+          pageSize: 500,
+          projection: [
+            "equipCode", "equipName"
           ]
         }
       }
       getEquipBelongs(param, res => {
-        this.List = this.formatOptions(res.Content)
+        this.List = this.formatOptions(res.content)
       })
     },
     //格式化List数据
@@ -174,8 +182,8 @@ export default {
       let data = [];
       arr.map(t => {
         let temp = {};
-        temp.code = t.EquipCode;
-        temp.facility = t.EquipName;
+        temp.code = t.equipCode;
+        temp.facility = t.equipName;
         data.push(temp)
       })
       return data;
@@ -330,46 +338,57 @@ export default {
   width: 100%;
   overflow-x: hidden;
   overflow-y: auto;
+
   h4 {
     font-size: 20px;
     font-weight: 500;
   }
+
   .search {
     .search-small {
       overflow: hidden;
     }
+
     border-bottom: #dcdfe6 1px solid;
+
     .search-big {
       padding: 10px;
     }
   }
+
   .main-left {
     float: left;
     width: 550px;
     height: 500px;
   }
+
   .border-view {
     border: 1px solid #ccc;
   }
+
   .main-button {
     float: left;
     width: 60px;
     height: 500px;
     position: relative;
+
     .top {
       position: absolute;
       bottom: 300px;
       left: 10px;
     }
+
     .bottom {
       position: absolute;
       bottom: 200px;
       left: 10px;
     }
   }
+
   .el-button + .el-button {
     margin: 0;
   }
+
   .main-right {
     height: 300px;
     float: left;

+ 44 - 25
src/components/point/dynamicdata/buildRules.vue

@@ -1,4 +1,3 @@
-
 <template>
   <div id="equipRules">
     <!-- 查询条件 -->
@@ -8,7 +7,8 @@
           <el-form ref="form" :model="form" :inline="true">
             <el-row>
               <div class="query-item special" style="margin-bottom:20px;">
-                <el-input :placeholder="`请输入${typeName}标识关键字`" v-model="form.EquipmentMark" @keyup.enter.native="queryTableData">
+                <el-input :placeholder="`请输入${typeName}标识关键字`" v-model="form.EquipmentMark"
+                          @keyup.enter.native="queryTableData">
                   <i slot="suffix" class="el-input__icon el-icon-search" @click="queryTableData"></i>
                 </el-input>
               </div>
@@ -28,13 +28,16 @@
         </el-col>
         <el-col :span="2">
           <el-tooltip class="item" effect="dark" :content="`填充${typeName}标识与实例对应规则`" placement="left">
-            <el-button size="small" type="primary" @click="toAddRelation" icon="el-icon-edit-outline" style="float:right;margin-left:10px;"
-              :disabled="isPending">
+            <el-button size="small" type="primary" @click="toAddRelation" icon="el-icon-edit-outline"
+                       style="float:right;margin-left:10px;"
+                       :disabled="isPending">
             </el-button>
           </el-tooltip>
           <el-tooltip class="item" effect="dark" :content="`根据${typeName}标识自动填充实例`" placement="left">
-            <el-button size="small" type="primary" @click="autoGroupRela" :icon="autoLoading?'iconfont icon-jiazai':'iconfont icon-zidong'"
-              style="float:right;padding:7px 14px;width:44px;margin-left:0;" :disabled="autoLoading"></el-button>
+            <el-button size="small" type="primary" @click="autoGroupRela"
+                       :icon="autoLoading?'iconfont icon-jiazai':'iconfont icon-zidong'"
+                       style="float:right;padding:7px 14px;width:44px;margin-left:0;"
+                       :disabled="autoLoading"></el-button>
           </el-tooltip>
         </el-col>
       </el-row>
@@ -42,25 +45,30 @@
     <el-row>
       <el-col :span="12" style="margin-left:-5px;font-size:13px;">
         <span class="iconfont icon-juxing"></span>
-        点位表中出现的所有{{typeName}}</el-col>
+        点位表中出现的所有{{ typeName }}
+      </el-col>
       <el-col :span="12" style="font-size:13px;">
         <span class="iconfont icon-juxing"></span>
-        对应物理世界中的{{typeName}}实例</el-col>
+        对应物理世界中的{{ typeName }}实例
+      </el-col>
     </el-row>
     <!-- 列表区域 -->
     <div class="table-area">
-      <el-table :data="tableData" style="width: 100%" height="100%" v-loading="loading" :header-cell-style="headerStyle">
-        <el-table-column prop="EquipmentMark" :label="`${typeName}标识`" show-overflow-tooltip min-width="200"></el-table-column>
+      <el-table :data="tableData" style="width: 100%" height="100%" v-loading="loading"
+                :header-cell-style="headerStyle">
+        <el-table-column prop="EquipmentMark" :label="`${typeName}标识`" show-overflow-tooltip
+                         min-width="200"></el-table-column>
         <el-table-column prop="LocationFlag" label="位置标签" min-width="200">
           <template slot-scope="scope">
             <el-tooltip :content="scope.row.LocationFlag.toString()" placement="top">
-              <div class="tool-tip">{{scope.row.LocationFlag.toString()}}</div>
+              <div class="tool-tip">{{ scope.row.LocationFlag.toString() }}</div>
             </el-tooltip>
           </template>
         </el-table-column>
         <el-table-column prop="Datasource" label="数据源" show-overflow-tooltip min-width="100"></el-table-column>
         <!-- <el-table-column prop="SubTypeName" :label="`${typeName}类型`" show-overflow-tooltip min-width="100"></el-table-column> -->
-        <el-table-column prop="ObjectLocalName" :label="`${typeName}实例`" show-overflow-tooltip min-width="400" class-name="td-bl"></el-table-column>
+        <el-table-column prop="ObjectLocalName" :label="`${typeName}实例`" show-overflow-tooltip min-width="400"
+                         class-name="td-bl"></el-table-column>
         <!-- <el-table-column label="所在建筑楼层" min-width="300">
           <template slot-scope="scope">
             <el-tooltip
@@ -78,16 +86,18 @@
           <template slot-scope="scope">
             <el-tooltip class="item" effect="dark" content="清除对应规则" placement="left">
               <el-button size="mini" @click="handleDelete(scope.$index, scope.row)" type="danger" plain
-                :disabled="isPending||scope.row.Related=='False'" icon="el-icon-delete"></el-button>
+                         :disabled="isPending||scope.row.Related=='False'" icon="el-icon-delete"></el-button>
             </el-tooltip>
           </template>
         </el-table-column>
       </el-table>
     </div>
     <!-- 分页 -->
-    <el-pagination class="fr" v-show="tableData && tableData.length" @size-change="handleSizeChange" @current-change="handleCurrentChange"
-      :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper"
-      :total="page.total"></el-pagination>
+    <el-pagination class="fr" v-show="tableData && tableData.length" @size-change="handleSizeChange"
+                   @current-change="handleCurrentChange"
+                   :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize"
+                   layout="total, sizes, prev, pager, next, jumper"
+                   :total="page.total"></el-pagination>
     <!-- 清除对应关系弹窗 -->
     <del-relation-dialog ref="del" @refresh="refresh" :typeName="'build'"></del-relation-dialog>
   </div>
@@ -158,7 +168,8 @@ export default {
   created() {
     this.init();
   },
-  mounted() { },
+  mounted() {
+  },
   methods: {
     //获取查询条件-提示信息
     init() {
@@ -215,17 +226,17 @@ export default {
         }).filter(item => item);
         if (tempArr.length) {
           buildingQuery({
-            PageSize: this.page.pageSize,
-            Filters: `BuildID in ${JSON.stringify(tempArr)}`
+            pageSize: this.page.pageSize,
+            filters: `id in ${JSON.stringify(tempArr)}`
           }, response => {
-            let Data = response.Content;
+            let Data = response.content;
             dyData.forEach(item => {
               Data.forEach(t => {
-                if (t.BuildID == item.BuildID) {
-                  if (t.BuildLocalName && t.BuildLocalID) {
-                    item.ObjectLocalName = t.BuildLocalName + '/' + t.BuildLocalID;
-                  } else if (t.BuildLocalName || t.BuildLocalID) {
-                    item.ObjectLocalName = t.BuildLocalName || t.BuildLocalID;
+                if (t.id == item.BuildID) {
+                  if (t.localName && t.localId) {
+                    item.ObjectLocalName = t.localName + '/' + t.localId;
+                  } else if (t.localName || t.localId) {
+                    item.ObjectLocalName = t.localName || t.localId;
                   }
                 }
               })
@@ -284,30 +295,38 @@ export default {
 <style lang="scss" scoped>
 #equipRules {
   height: calc(100% - 54px);
+
   /deep/ .text-right {
     text-align: right;
   }
+
   .query-item {
     float: left;
+
     & + .query-item {
       margin-left: 10px;
     }
   }
+
   /deep/ .special .el-input__inner {
     width: 220px;
   }
+
   /deep/ .table-area {
     width: 100%;
     height: calc(100% - 71px);
     margin-bottom: 10px;
+
     td div {
       white-space: nowrap;
       text-overflow: ellipsis;
       overflow: hidden;
     }
+
     .td-bl {
       border-left: 1px solid #ebeef5;
     }
+
     .tool-tip {
       white-space: nowrap;
       overflow: hidden;

+ 22 - 21
src/components/point/dynamicdata/delRelationDialog.vue

@@ -79,14 +79,15 @@
 import {
   dynamicDeleteRelation,
   dynamicQueryPrompt,
-  queryEquip, //数据中心设备查询
-  floorQuery, //数据中心查询楼层
   projectQuery, //数据中心查询项目信息
   zoneQuery, //数据中心所有空间实例
   queryLinkSys, //数据中心系统查询
   queryTenant, //数据中心查询租户
   partsQuery, //数据中心部件查询
 } from "@/api/scan/request";
+import { queryEquip } from "@/api/object/equip";
+import { floorQuery } from '@/api/object/floor'
+
 import { buildingQuery } from '@/api/object/build'
 
 export default {
@@ -210,21 +211,21 @@ export default {
             }).filter(item => item);
             if (tempArr.length) {
               queryEquip({
-                PageSize: 500,
-                Filters: `EquipID in ${JSON.stringify(tempArr)}`,
-                Cascade: [{ Name: "zoneSpaceInBase" }, { Name: 'building' }, { Name: 'floor' }]
+                pageSize: 500,
+                filters: `equipID in ${JSON.stringify(tempArr)}`,
+                cascade: [{ name: "zoneSpaceInBase" }, { name: 'building' }, { name: 'floor' }]
               }, response => {
-                let Data = response.Content;
+                let Data = response.content;
                 dyData.forEach(item => {
                   Data.forEach(t => {
-                    if (t.EquipID == item.EquipID) {
-                      item.ObjectLocalName = t.EquipLocalName;
-                      item.FloorLocalName = t.Floor ? t.Floor.FloorLocalName : '';
-                      item.BuildLocalName = t.Building ? t.Building.BuildLocalName : '';
+                    if (t.equipID == item.EquipID) {
+                      item.ObjectLocalName = t.equipLocalName;
+                      item.FloorLocalName = t.floor ? t.floor.localName : '';
+                      item.BuildLocalName = t.building ? t.building.localName : '';
                       item.RoomLocalName = '';
-                      if (t.ZoneSpaceBaseIn) {
-                        t.ZoneSpaceBaseIn.forEach(it => {
-                          item.RoomLocalName += it.RoomLocalName + ',';
+                      if (t.zoneSpaceBaseIn) {
+                        t.zoneSpaceBaseIn.forEach(it => {
+                          item.RoomLocalName += it.roomLocalName + ',';
                         })
                         item.RoomLocalName = item.RoomLocalName.substring(0, item.RoomLocalName.length - 1);
                       }
@@ -354,17 +355,17 @@ export default {
             }).filter(item => item);
             if (tempArr.length) {
               floorQuery({
-                PageSize: 500,
-                Cascade: [{ Name: 'building' }],
-                Filters: `FloorID in ${JSON.stringify(tempArr)}`
+                pageSize: 500,
+                cascade: [{ name: 'building' }],
+                filters: `id in ${JSON.stringify(tempArr)}`
               }, response => {
-                let Data = response.Content;
+                let Data = response.content;
                 dyData.forEach(item => {
                   Data.forEach(t => {
-                    if (t.FloorID == item.FloorID) {
-                      item.ObjectLocalName = t.FloorLocalName;
-                      item.ObjectSequenceID = t.FloorSequenceID;
-                      item.BuildLocalName = t.Building ? t.Building.BuildLocalName : '';
+                    if (t.id == item.FloorID) {
+                      item.ObjectLocalName = t.localName;
+                      item.ObjectSequenceID = t.floorSequenceId;
+                      item.BuildLocalName = t.building ? t.building.localName : '';
                     }
                   })
                 })

+ 16 - 15
src/components/point/dynamicdata/equipRules.vue

@@ -107,8 +107,9 @@ import {
   dynamicQuery,
   dynamicQueryPoint,
   dynamicPointTypeList,
-  queryEquip, //数据中心设备查询
 } from "@/api/scan/request";
+import { queryEquip } from "@/api/object/equip";
+
 export default {
   computed: {
     ...mapGetters("layout", ["projectId"])
@@ -213,25 +214,25 @@ export default {
         }).filter(item => item);
         if (tempArr.length) {
           queryEquip({
-            PageSize: this.page.pageSize,
-            Filters: `EquipID in ${JSON.stringify(tempArr)}`,
-            Cascade: [{ Name: "zoneSpaceInBase" }, { Name: 'building' }, { Name: 'floor' }]
+            pageSize: this.page.pageSize,
+            filters: `equipID in ${JSON.stringify(tempArr)}`,
+            cascade: [{ name: "zoneSpaceInBase" }, { name: 'building' }, { name: 'floor' }]
           }, response => {
-            let Data = response.Content;
+            let Data = response.content;
             dyData.forEach(item => {
               Data.forEach(t => {
-                if (t.EquipID == item.EquipID) {
-                  if (t.EquipLocalName && t.EquipLocalID) {
-                    item.ObjectLocalName = t.EquipLocalName + '/' + t.EquipLocalID;
-                  } else if (t.EquipLocalName || t.EquipLocalID) {
-                    item.ObjectLocalName = t.EquipLocalName || t.EquipLocalID;
+                if (t.equipID == item.EquipID) {
+                  if (t.equipLocalName && t.equipLocalID) {
+                    item.ObjectLocalName = t.equipLocalName + '/' + t.equipLocalID;
+                  } else if (t.equipLocalName || t.equipLocalID) {
+                    item.ObjectLocalName = t.equipLocalName || t.equipLocalID;
                   }
-                  item.FloorLocalName = t.Floor ? t.Floor.FloorLocalName : '';
-                  item.BuildLocalName = t.Building ? t.Building.BuildLocalName : '';
+                  item.FloorLocalName = t.floor ? t.floor.localName : '';
+                  item.BuildLocalName = t.building ? t.building.localName : '';
                   item.RoomLocalName = '';
-                  if (t.ZoneSpaceBaseIn) {
-                    t.ZoneSpaceBaseIn.forEach(it => {
-                      item.RoomLocalName += it.RoomLocalName + ',';
+                  if (t.zoneSpaceBaseIn) {
+                    t.zoneSpaceBaseIn.forEach(it => {
+                      item.RoomLocalName += it.roomLocalName + ',';
                     })
                     item.RoomLocalName = item.RoomLocalName.substring(0, item.RoomLocalName.length - 1);
                   }

+ 13 - 12
src/components/point/dynamicdata/floorRules.vue

@@ -115,8 +115,9 @@ import {
   dynamicQuery,
   dynamicQueryPoint,
   dynamicPointTypeList,
-  floorQuery, //数据中心查询楼层
 } from "@/api/scan/request";
+import { floorQuery } from '@/api/object/floor'
+
 export default {
   computed: {
     ...mapGetters("layout", ["projectId"])
@@ -221,21 +222,21 @@ export default {
         }).filter(item => item);
         if (tempArr.length) {
           floorQuery({
-            PageSize: this.page.pageSize,
-            Cascade: [{ Name: 'building' }],
-            Filters: `FloorID in ${JSON.stringify(tempArr)}`
+            pageSize: this.page.pageSize,
+            cascade: [{ name: 'building' }],
+            filters: `id in ${JSON.stringify(tempArr)}`
           }, response => {
-            let Data = response.Content;
+            let Data = response.content;
             dyData.forEach(item => {
               Data.forEach(t => {
-                if (t.FloorID == item.FloorID) {
-                  if (t.FloorLocalName && t.FloorLocalID) {
-                    item.ObjectLocalName = t.FloorLocalName + '/' + t.FloorLocalID;
-                  } else if (t.FloorLocalName || t.FloorLocalID) {
-                    item.ObjectLocalName = t.FloorLocalName || t.FloorLocalID;
+                if (t.id == item.FloorID) {
+                  if (t.localName && t.id) {
+                    item.ObjectLocalName = t.localName + '/' + t.id;
+                  } else if (t.localName || t.id) {
+                    item.ObjectLocalName = t.localName || t.id;
                   }
-                  item.ObjectSequenceID = t.FloorSequenceID;
-                  item.BuildLocalName = t.Building ? t.Building.BuildLocalName : '';
+                  item.ObjectSequenceID = t.floorSequenceId;
+                  item.BuildLocalName = t.building ? t.building.localName : '';
                 }
               })
             })

+ 15 - 10
src/components/point/dynamicdata/locationCascader.vue

@@ -1,18 +1,22 @@
 <template>
-  <el-cascader placeholder="全部" :options="LocationList" v-model="value" filterable size="small" @change="changeCascader" :change-on-select="!isFloor"
-    :props="props" clearable class="location"></el-cascader>
+  <el-cascader placeholder="全部" :options="LocationList" v-model="value" filterable size="small" @change="changeCascader"
+               :change-on-select="!isFloor"
+               :props="props" clearable class="location"></el-cascader>
 </template>
 <script>
 import {
   // dynamicLocationList,
   // buildingQuery, //数据中心查询建筑
-  floorQuery, //数据中型查询楼层
+  // floorQuery, //数据中型查询楼层
   queryDictionaryHead, //数据中心查询分区类型
   zoneQuery, //数据中心查询所有空间
 } from "@/api/scan/request";
+import { floorQuery } from '@/api/object/floor'
+
 import { buildingQuery } from '@/api/object/build'
 
 import { mapGetters, mapActions } from "vuex";
+
 export default {
   data() {
     const that = this;
@@ -29,12 +33,12 @@ export default {
               resolve()
             } else {
               let pa = {
-                Filters: `BuildID='${node.value}'`
+                filters: `buildingId='${node.value}'`
               }
               floorQuery(pa, res => {
-                const nodes = res.Content.map(t => {
-                  t.value = t.FloorID;
-                  t.label = t.FloorLocalName;
+                const nodes = res.content.map(t => {
+                  t.value = t.id;
+                  t.label = t.localName;
                   t.leaf = that.isSpace;
                   return t;
                 })
@@ -123,9 +127,9 @@ export default {
       // });
       let pa = {}
       buildingQuery(pa, res => {
-        this.LocationList = res.Content.map(item => {
-          item.value = item.BuildID;
-          item.label = item.BuildLocalName;
+        this.LocationList = res.content.map(item => {
+          item.value = item.id;
+          item.label = item.localName;
           return item;
         });
         this.LocationList.unshift({ value: 'unknowBuild', label: '未明确建筑', leaf: true })
@@ -163,6 +167,7 @@ export default {
 <style lang="less" scoped>
 .location {
   width: 100%;
+
   /deep/ .el-input__inner {
     vertical-align: baseline;
   }

+ 60 - 76
src/components/point/report/objectInstance.vue

@@ -4,27 +4,28 @@
     <div class="obj-item" v-for="form in forms" :key="form.id" :style="{height:drawCanvas? '600px' : '350px'}">
       <el-form :model="form" label-width="150px">
         <el-form-item label="对象类型:">
-          {{form.TypeName || '--'}}
+          {{ form.TypeName || '--' }}
         </el-form-item>
         <el-form-item label="对象实例本地名称:">
-          {{form.ObjectLocalName || '--'}}
+          {{ form.ObjectLocalName || '--' }}
         </el-form-item>
         <el-form-item label="对象实例本地编码:">
-          {{form.ObjectLocalCode || '--'}}
+          {{ form.ObjectLocalCode || '--' }}
         </el-form-item>
         <el-form-item label="对象实例ID:">
-          {{form.ObjectID || '--'}}
+          {{ form.ObjectID || '--' }}
         </el-form-item>
         <el-form-item label="信息点名称:">
-          {{form.InfomationPointName || '--'}}
+          {{ form.InfomationPointName || '--' }}
         </el-form-item>
         <el-form-item label="对应值:">
-          {{ reValue || '--'}}
+          {{ reValue || '--' }}
         </el-form-item>
         <el-form-item label="对象实例位置图:">
           <span v-show="!drawCanvas">--</span>
           <div v-show="drawCanvas" style="border:1px solid rgba(0, 0, 0, 0.2);height:300px;">
-            <canvas v-show="drawCanvas" height="300" :width="canvasWidth" class="instanceMap" :id="form.instanceId" :k="refreshCanvas"></canvas>
+            <canvas v-show="drawCanvas" height="300" :width="canvasWidth" class="instanceMap" :id="form.instanceId"
+                    :k="refreshCanvas"></canvas>
           </div>
         </el-form-item>
       </el-form>
@@ -39,16 +40,16 @@ import { SColor } from "@saga-web/draw/lib";
 
 import {
   getTabFunNumObjInstance,
-  queryEquip, //数据中心设备查询
-  floorQuery, //数据中心查询楼层
-  // buildingQuery, //数据中心建筑查询
+  // floorQuery, //数据中心查询楼层
   projectQuery, //数据中心查询项目信息
   zoneQueryOutline, //数据中心所有空间实例
   queryLinkSys, //数据中心系统查询
   queryTenant, //数据中心查询租户
   partsQuery, //数据中心部件查询
-  getDataDictionary, // 项目数据字典
 } from '@/api/scan/request'
+import { floorQuery } from '@/api/object/floor'
+import { queryEquip } from "@/api/object/equip";
+import { getDataDictionary } from "@/api/dict";
 import { buildingQuery } from '@/api/object/build'
 
 export default {
@@ -82,33 +83,31 @@ export default {
             if (item.TypeCode == 'Eq') {
               //获取设备信息
               queryEquip({
-                Filters: `EquipID='${item.TypeCode + item.ProjectId + item.ObjectID}'`
+                filters: `equipID='${item.TypeCode + item.ProjectId + item.ObjectID}'`
               }, equipMsg => {
-                if (equipMsg.Content[0]) {
-                  if (equipMsg.Content[0].LocationJson && equipMsg.Content[0].FloorId) {
+                if (equipMsg.content[0]) {
+                  if (equipMsg.content[0].locationJson && equipMsg.content[0].floorId) {
                     let canvasOption = {
                       /** 标记的id  */
-                      Id: equipMsg.Content[0].EquipID,
+                      Id: equipMsg.content[0].equipID,
                       /** 标记的名称  */
-                      Name: equipMsg.Content[0].EquipName,
+                      Name: equipMsg.content[0].equipName,
                       /** X坐标 */
-                      X: equipMsg.Content[0].LocationJson.X,
+                      X: equipMsg.content[0].locationJson.X,
                       /** Y坐标 */
-                      Y: -equipMsg.Content[0].LocationJson.Y
+                      Y: -equipMsg.content[0].locationJson.Y
                     }
-                    that.forms[key].ObjectLocalName = equipMsg.Content[0].EquipLocalName
-                    that.forms[key].ObjectLocalCode = equipMsg.Content[0].EquipLocalID
-                    this.loadDataToInstanceByFloorID(equipMsg.Content[0].FloorId, key, item.TypeCode, canvasOption);
+                    that.forms[key].ObjectLocalName = equipMsg.content[0].equipLocalName
+                    that.forms[key].ObjectLocalCode = equipMsg.content[0].equipLocalID
+                    this.loadDataToInstanceByFloorID(equipMsg.content[0].floorId, key, item.TypeCode, canvasOption);
                   }
-                  if (item.InfoList.length && equipMsg.Content[0].Category) {
+                  if (item.InfoList.length && equipMsg.content[0].classCode) {
                     let params = {
-                      data: {
-                        Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                      },
-                      type: equipMsg.Content[0].Category
+                      filters: `code in ${JSON.stringify(item.InfoList)}`,
+                      type: equipMsg.content[0].classCode
                     }
                     getDataDictionary(params, resp => {
-                      that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName).join(',');
+                      that.forms[key].InfomationPointName = resp.content.map(t => t.name).join(',');
                       that.$forceUpdate()
                     })
                   }
@@ -135,13 +134,11 @@ export default {
                     }
                     if (item.InfoList.length && zoneMsg.Content[0].ObjectType) {
                       let params = {
-                        data: {
-                          Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                        },
+                        filters: `code in ${JSON.stringify(item.InfoList)}`,
                         type: zoneMsg.Content[0].ObjectType
                       }
                       getDataDictionary(params, resp => {
-                        that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName || '').join(',');
+                        that.forms[key].InfomationPointName = resp.content.map(t => t.name || '').join(',');
                         that.$forceUpdate()
                       })
                     }
@@ -170,13 +167,11 @@ export default {
                   }
                   if (item.InfoList.length && equipMsg.Content[0].Category) {
                     let params = {
-                      data: {
-                        Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                      },
+                      filters: `code in ${JSON.stringify(item.InfoList)}`,
                       type: equipMsg.Content[0].Category
                     }
                     getDataDictionary(params, resp => {
-                      that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName || '').join(',');
+                      that.forms[key].InfomationPointName = resp.content.map(t => t.name || '').join(',');
                       that.$forceUpdate()
                     })
                   }
@@ -191,13 +186,11 @@ export default {
                   that.forms[key].ObjectLocalCode = res.Content[0].SysLocalID
                   if (item.InfoList.length && res.Content[0].Category) {
                     let params = {
-                      data: {
-                        Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                      },
+                      filters: `code in ${JSON.stringify(item.InfoList)}`,
                       type: res.Content[0].Category
                     }
                     getDataDictionary(params, resp => {
-                      that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName || '').join(',');
+                      that.forms[key].InfomationPointName = resp.content.map(t => t.name || '').join(',');
                       that.$forceUpdate()
                     })
                   }
@@ -205,20 +198,18 @@ export default {
               })
             } else if (item.TypeCode == 'Bd') {
               buildingQuery({
-                Filters: `BuildID='${item.TypeCode + item.ProjectId + item.ObjectID}'`
+                filters: `id='${item.TypeCode + item.ProjectId + item.ObjectID}'`
               }, res => {
-                if (res.Content.length) {
-                  that.forms[key].ObjectLocalName = res.Content[0].BuildLocalName
-                  that.forms[key].ObjectLocalCode = res.Content[0].BuildLocalID
-                  if (item.InfoList.length && res.Content[0].ObjectType) {
+                if (res.content.length) {
+                  that.forms[key].ObjectLocalName = res.content[0].localName
+                  that.forms[key].ObjectLocalCode = res.content[0].localId
+                  if (item.InfoList.length && res.content[0].objectType) {
                     let params = {
-                      data: {
-                        Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                      },
-                      type: res.Content[0].ObjectType
+                      filters: `code in ${JSON.stringify(item.InfoList)}`,
+                      type: res.content[0].objectType
                     }
                     getDataDictionary(params, resp => {
-                      that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName || '').join(',');
+                      that.forms[key].InfomationPointName = resp.content.map(t => t.name || '').join(',');
                       that.$forceUpdate()
                     })
                   }
@@ -226,20 +217,18 @@ export default {
               })
             } else if (item.TypeCode == 'Fl') {
               floorQuery({
-                Filters: `FloorID='${item.TypeCode + item.ProjectId + item.ObjectID}'`
+                filters: `id='${item.TypeCode + item.ProjectId + item.ObjectID}'`
               }, res => {
-                if (res.Content.length) {
-                  that.forms[key].ObjectLocalName = res.Content[0].FloorLocalName
-                  that.forms[key].ObjectLocalCode = res.Content[0].FloorLocalID
-                  if (item.InfoList.length && res.Content[0].ObjectType) {
+                if (res.content.length) {
+                  that.forms[key].ObjectLocalName = res.content[0].localName
+                  that.forms[key].ObjectLocalCode = res.content[0].localId
+                  if (item.InfoList.length && res.content[0].objectType) {
                     let params = {
-                      data: {
-                        Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                      },
-                      type: res.Content[0].ObjectType
+                      filters: `code in ${JSON.stringify(item.InfoList)}`,
+                      type: res.content[0].objectType
                     }
                     getDataDictionary(params, resp => {
-                      that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName || '').join(',');
+                      that.forms[key].InfomationPointName = resp.content.map(t => t.name || '').join(',');
                       that.$forceUpdate()
                     })
                   }
@@ -254,13 +243,11 @@ export default {
                   that.forms[key].ObjectLocalCode = res.Content[0].TenantLocalID
                   if (item.InfoList.length && res.Content[0].ObjectType) {
                     let params = {
-                      data: {
-                        Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                      },
+                      filters: `code in ${JSON.stringify(item.InfoList)}`,
                       type: res.Content[0].ObjectType
                     }
                     getDataDictionary(params, resp => {
-                      that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName || '').join(',');
+                      that.forms[key].InfomationPointName = resp.content.map(t => t.name || '').join(',');
                       that.$forceUpdate()
                     })
                   }
@@ -275,13 +262,11 @@ export default {
                   that.forms[key].ObjectLocalCode = res.Content[0].ProjLocalID
                   if (item.InfoList.length && res.Content[0].ObjectType) {
                     let params = {
-                      data: {
-                        Filters: `InfoPointCode in ${JSON.stringify(item.InfoList)}`
-                      },
+                      filters: `code in ${JSON.stringify(item.InfoList)}`,
                       type: res.Content[0].ObjectType
                     }
                     getDataDictionary(params, resp => {
-                      that.forms[key].InfomationPointName = resp.Content.map(t => t.InfoPointName || '').join(',');
+                      that.forms[key].InfomationPointName = resp.content.map(t => t.name || '').join(',');
                       that.$forceUpdate()
                     })
                   }
@@ -295,7 +280,7 @@ export default {
     //通过floorid获取信息,后通过floormap获取数据后绘制canvas
     loadDataToInstanceByFloorID(floorId, key, typecode, options) {
       let param = {
-        Filters: `FloorId='${floorId}'`
+        filters: `floorId='${floorId}'`
       }
       let that = this;
       //获取楼层信息
@@ -310,26 +295,23 @@ export default {
         //类型
         if (typecode == 'Eq' || typecode == 'Ec') {
           that.scenes[key] = new LocationPointScene();
-        }
-        else if (typecode == 'Sp') {
+        } else if (typecode == 'Sp') {
           that.scenes[key] = new DivideFloorScene();
         }
-        if (floorMsg.Content[0] && floorMsg.Content[0].StructureInfo && floorMsg.Content[0].StructureInfo.FloorMap) {
+        if (floorMsg.content[0] && floorMsg.content[0].structureInfo && floorMsg.content[0].structureInfo.floorMap) {
           //获取数据,并加载canvas
-          that.scenes[key].loadUrl(`/image-service/common/file_get?systemId=revit&key=${floorMsg.Content[0].StructureInfo.FloorMap}`).then(() => {
+          that.scenes[key].loadUrl(`/image-service/common/file_get?systemId=revit&key=${floorMsg.content[0].structureInfo.floorMap}`).then(() => {
             that.drawCanvas = true;
             that.views[key].scene = that.scenes[key];
             that.scenes[key].isSpaceSelectable = false;
             if (typecode == 'Eq' || typecode == 'Ec') {
               that.scenes[key].addMarker(options);
-            }
-            else if (typecode == 'Sp') {
+            } else if (typecode == 'Sp') {
               that.scenes[key].addZone(options);
             }
             that.views[key].fitSceneToView();
           })
-        }
-        else {
+        } else {
           that.drawCanvas = false;
         }
       });
@@ -360,9 +342,11 @@ export default {
   height: 100%;
   overflow: auto;
 }
+
 .instanceMap {
   min-height: 100px;
 }
+
 .obj-item {
   margin: 15px 10px;
   box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.2);

+ 135 - 135
src/components/relation/overview/Modal/getCascader.vue

@@ -41,158 +41,158 @@
   </div>
 </template>
 <script>
-  import {mapGetters} from 'vuex';
-  import {getEquipBelongs, queryEquip} from "@/api/scan/request";
-  import {sourceQuery} from "@/api/relation/api";
+import { mapGetters } from 'vuex';
+import { getEquipBelongs } from "@/api/scan/request";
+import { queryEquip } from "@/api/object/equip"
 
-  export default {
-    name: "getCascader",
-    props: {
-      all: {
-        type: Boolean,
-        default: false,
-      },
-      RelationTypeName: {
-        type: String
-      },
-      number: {
-        type: Number
-      }
+import { sourceQuery } from "@/api/relation/api";
+
+export default {
+  name: "getCascader",
+  props: {
+    all: {
+      type: Boolean,
+      default: false,
     },
-    computed: {
-      ...mapGetters("layout", ["projectId"])
+    RelationTypeName: {
+      type: String
     },
-    data() {
-      return {
-        value: "",
-        endValue: '',
-        options: [],
-        oraginOption: [],
-        endOptions: [],
-        props: {
-          value: "code",
-          label: "facility"
-        },
-        falg: true,
-        content: [],
+    number: {
+      type: Number
+    }
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId"])
+  },
+  data() {
+    return {
+      value: "",
+      endValue: '',
+      options: [],
+      oraginOption: [],
+      endOptions: [],
+      props: {
+        value: "code",
+        label: "facility"
+      },
+      falg: true,
+      content: [],
 
-      };
+    };
+  },
+  created() {
+    this.getData();
+  },
+  watch: {
+    projectId() {
+      this.value = '';
+      this.getData();
     },
-    created() {
+    RelationTypeName() {
       this.getData();
     },
-    watch: {
-      projectId() {
-        this.value = '';
-        this.getData();
-      },
-      RelationTypeName() {
-        this.getData();
-      },
-      number() {
-        this.getData();
-      }
+    number() {
+      this.getData();
+    }
+  },
+  methods: {
+    setValue(val) {
+      this.value = val
     },
-    methods: {
-      setValue(val) {
-        this.value = val
-      },
-      //修改val
-      changeVal(val) {
-        this.endOptions = this.options.filter(i => !val.includes(i.code))
-        this.$emit("change", val)
-      },
-      //获取当前项目下的设备类型(只拿到编码-需要过滤)
-      getData() {
-        let param2 = {
-          Distinct: true,
-          PageNumber: 1,
-          PageSize: 500,
-          Projection: [
-            "Category"
+    //修改val
+    changeVal(val) {
+      this.endOptions = this.options.filter(i => !val.includes(i.code))
+      this.$emit("change", val)
+    },
+    //获取当前项目下的设备类型(只拿到编码-需要过滤)
+    getData() {
+      let param2 = {
+        distinct: true,
+        pageNumber: 1,
+        pageSize: 500,
+        projection: ["classCode"]
+      }
+      let param1 = {
+        data: {
+          distinct: true,
+          orders: "equipName asc",
+          pageNumber: 1,
+          pageSize: 500,
+          projection: [
+            "equipCode", "equipName"
           ]
         }
-        let param1 = {
-          data: {
-            Distinct: true,
-            Orders: "EquipName asc",
-            PageNumber: 1,
-            PageSize: 500,
-            Projection: [
-              "EquipCode", "EquipName"
-            ]
-          }
-        }
-        let param3 = {
-          Filters: `ProjectId='${this.projectId}';CalcName='${this.RelationTypeName}'`
+      }
+      let param3 = {
+        Filters: `ProjectId='${this.projectId}';CalcName='${this.RelationTypeName}'`
 
-        }
-        let promise2 = new Promise((resolve, reject) => {
-          queryEquip(param2, res => {
-            resolve(res)
-          })
-        })
-        let promise1 = new Promise((resolve, reject) => {
-          getEquipBelongs(param1, res => {
-            resolve(res)
-          })
-        })
-        let promise3 = new Promise((resolve, reject) => { //回显
-          sourceQuery(param3, res => {
-            resolve(res)
-          })
-        })
-        Promise.all([promise1, promise2, promise3]).then((res) => {
-          let allData = res[0], data = res[1], arr = res[2].Content
-          this.options = this.formatOptions(allData.Content)
-          if (!this.all) {
-            this.content = data.Content.map(t => {
-              return t.Category
-            });
-            this.filterForOptions();
-          }
-          if (this.value) {
-            this.changeVal(this.value)
-          }
-          if (arr) {
-            this.value = []
-            arr.forEach(({SourceType}) => this.value.push(SourceType))
-            this.oraginOption = this.options.filter(i => this.value.includes(i.code))
-            this.endOptions = this.options.filter(i => !this.value.includes(i.code))
-          }
+      }
+      let promise2 = new Promise((resolve, reject) => {
+        queryEquip(param2, res => {
+          resolve(res)
         })
-      },
-      //格式化options数据
-      formatOptions(arr) {
-        let data = [];
-        arr.map(t => {
-          let temp = {};
-          temp.code = t.EquipCode;
-          temp.facility = t.EquipName;
-          data.push(temp)
+      })
+      let promise1 = new Promise((resolve, reject) => {
+        getEquipBelongs(param1, res => {
+          resolve(res)
         })
-        return data;
-      },
-      //过滤
-      filterForOptions() {
-        this.options = this.options.filter(item => {
-          if (this.content.indexOf(item.code) > -1) {
-            return item
-          }
+      })
+      let promise3 = new Promise((resolve, reject) => { //回显
+        sourceQuery(param3, res => {
+          resolve(res)
         })
-      }
+      })
+      Promise.all([promise1, promise2, promise3]).then((res) => {
+        let allData = res[0], data = res[1], arr = res[2].Content
+        this.options = this.formatOptions(allData.content)
+        if (!this.all) {
+          this.content = data.content.map(t => {
+            return t.classCode
+          });
+          this.filterForOptions();
+        }
+        if (this.value) {
+          this.changeVal(this.value)
+        }
+        if (arr) {
+          this.value = []
+          arr.forEach(({ SourceType }) => this.value.push(SourceType))
+          this.oraginOption = this.options.filter(i => this.value.includes(i.code))
+          this.endOptions = this.options.filter(i => !this.value.includes(i.code))
+        }
+      })
+    },
+    //格式化options数据
+    formatOptions(arr) {
+      let data = [];
+      arr.map(t => {
+        let temp = {};
+        temp.code = t.equipCode;
+        temp.facility = t.equipName;
+        data.push(temp)
+      })
+      return data;
+    },
+    //过滤
+    filterForOptions() {
+      this.options = this.options.filter(item => {
+        if (this.content.indexOf(item.code) > -1) {
+          return item
+        }
+      })
     }
-  };
+  }
+};
 </script>
 <style lang="less" scoped>
-  #cascader-group {
-    /*float: left;*/
-    /*margin-left: 10px;*/
-    /*display: inline-block;*/
+#cascader-group {
+  /*float: left;*/
+  /*margin-left: 10px;*/
+  /*display: inline-block;*/
 
-    .buildFloor {
-      color: #999999;
-      font-size: 14px;
-    }
+  .buildFloor {
+    color: #999999;
+    font-size: 14px;
   }
+}
 </style>

+ 127 - 128
src/components/relation/overview/Modal/setCascader.vue

@@ -39,152 +39,151 @@
   </div>
 </template>
 <script>
-  import {mapGetters} from 'vuex';
-  import {getEquipBelongs, queryEquip} from "@/api/scan/request";
-  import {sourceQuery} from "@/api/relation/api";
-
-  export default {
-    name: "setCascader",
-    props: {
-      all: {
-        type: Boolean,
-        default: false,
-      },
-      RelationTypeName: {
-        type: String
-      },
+import { mapGetters } from 'vuex';
+import { getEquipBelongs } from "@/api/scan/request";
+import { queryEquip } from "@/api/object/equip"
+import { sourceQuery } from "@/api/relation/api";
 
+export default {
+  name: "setCascader",
+  props: {
+    all: {
+      type: Boolean,
+      default: false,
     },
-    computed: {
-      ...mapGetters("layout", ["projectId"])
+    RelationTypeName: {
+      type: String
     },
-    data() {
-      return {
-        value: "",
-        endValue: '',
-        options: [],
-        endOptions: [],
-        props: {
-          value: "code",
-          label: "facility"
-        },
-        falg: true,
-        content: [],
 
-      };
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId"])
+  },
+  data() {
+    return {
+      value: "",
+      endValue: '',
+      options: [],
+      endOptions: [],
+      props: {
+        value: "code",
+        label: "facility"
+      },
+      falg: true,
+      content: [],
+
+    };
+  },
+  created() {
+    this.getData();
+  },
+  watch: {
+    projectId() {
+      this.value = '';
+      this.getData();
     },
-    created() {
+    RelationTypeName() {
       this.getData();
     },
-    watch: {
-      projectId() {
-        this.value = '';
-        this.getData();
-      },
-      RelationTypeName() {
-        this.getData();
-      },
 
+  },
+  methods: {
+    setValue(val) {
+      this.value = val
     },
-    methods: {
-      setValue(val) {
-        this.value = val
-      },
-      //修改val
-      changeVal(val) {
-        this.endOptions = this.options.filter(i => !val.includes(i.code))
-        this.$emit("change", val)
-      },
-      //获取当前项目下的设备类型(只拿到编码-需要过滤)
-      getData() {
-        let param2 = {
-          Distinct: true,
-          PageNumber: 1,
-          PageSize: 500,
-          Projection: [
-            "Category"
+    //修改val
+    changeVal(val) {
+      this.endOptions = this.options.filter(i => !val.includes(i.code))
+      this.$emit("change", val)
+    },
+    //获取当前项目下的设备类型(只拿到编码-需要过滤)
+    getData() {
+      let param2 = {
+        distinct: true,
+        pageNumber: 1,
+        pageSize: 500,
+        projection: ["classCode"]
+      }
+      let param1 = {
+        data: {
+          distinct: true,
+          orders: "equipName asc",
+          pageNumber: 1,
+          pageSize: 500,
+          projection: [
+            "equipCode", "equipName"
           ]
         }
-        let param1 = {
-          data: {
-            Distinct: true,
-            Orders: "EquipName asc",
-            PageNumber: 1,
-            PageSize: 500,
-            Projection: [
-              "EquipCode", "EquipName"
-            ]
-          }
-        }
-        let param3 = {
-          Filters: `ProjectId='${this.projectId}';CalcName='${this.RelationTypeName}'`
+      }
+      let param3 = {
+        Filters: `ProjectId='${this.projectId}';CalcName='${this.RelationTypeName}'`
 
-        }
-        let promise2 = new Promise((resolve, reject) => {
-          queryEquip(param2, res => {
-            resolve(res)
-          })
-        })
-        let promise1 = new Promise((resolve, reject) => {
-          getEquipBelongs(param1, res => {
-            resolve(res)
-          })
-        })
-        let promise3 = new Promise((resolve, reject) => { //回显
-          sourceQuery(param3, res => {
-            resolve(res)
-          })
-        })
-        Promise.all([promise1, promise2, promise3]).then((res) => {
-          let allData = res[0], data = res[1], arr = res[2].Content
-          this.options = this.formatOptions(allData.Content)
-          if (!this.all) {
-            this.content = data.Content.map(t => {
-              return t.Category
-            });
-            this.filterForOptions();
-          }
-          if (this.value) {
-            this.changeVal(this.value)
-          }
-          if (arr) {
-            this.value = []
-            arr.forEach(({SourceType}) => this.value.push(SourceType))
-            this.endOptions = this.options.filter(i => !this.value.includes(i.code))
-          }
+      }
+      let promise2 = new Promise((resolve, reject) => {
+        queryEquip(param2, res => {
+          resolve(res)
         })
-      },
-      //格式化options数据
-      formatOptions(arr) {
-        let data = [];
-        arr.map(t => {
-          let temp = {};
-          temp.code = t.EquipCode;
-          temp.facility = t.EquipName;
-          data.push(temp)
+      })
+      let promise1 = new Promise((resolve, reject) => {
+        getEquipBelongs(param1, res => {
+          resolve(res)
         })
-        return data;
-      },
-      //过滤
-      filterForOptions() {
-        this.options = this.options.filter(item => {
-          if (this.content.indexOf(item.code) > -1) {
-            return item
-          }
+      })
+      let promise3 = new Promise((resolve, reject) => { //回显
+        sourceQuery(param3, res => {
+          resolve(res)
         })
-      }
+      })
+      Promise.all([promise1, promise2, promise3]).then((res) => {
+        let allData = res[0], data = res[1], arr = res[2].Content
+        this.options = this.formatOptions(allData.content)
+        if (!this.all) {
+          this.content = data.content.map(t => {
+            return t.classCode
+          });
+          this.filterForOptions();
+        }
+        if (this.value) {
+          this.changeVal(this.value)
+        }
+        if (arr) {
+          this.value = []
+          arr.forEach(({ SourceType }) => this.value.push(SourceType))
+          this.endOptions = this.options.filter(i => !this.value.includes(i.code))
+        }
+      })
+    },
+    //格式化options数据
+    formatOptions(arr) {
+      let data = [];
+      arr.map(t => {
+        let temp = {};
+        temp.code = t.equipCode;
+        temp.facility = t.equipName;
+        data.push(temp)
+      })
+      return data;
+    },
+    //过滤
+    filterForOptions() {
+      this.options = this.options.filter(item => {
+        if (this.content.indexOf(item.code) > -1) {
+          return item
+        }
+      })
     }
-  };
+  }
+};
 </script>
 <style lang="less" scoped>
-  #cascader-group {
-    /*float: left;*/
-    /*margin-left: 10px;*/
-    /*display: inline-block;*/
+#cascader-group {
+  /*float: left;*/
+  /*margin-left: 10px;*/
+  /*display: inline-block;*/
 
-    .buildFloor {
-      color: #999999;
-      font-size: 14px;
-    }
+  .buildFloor {
+    color: #999999;
+    font-size: 14px;
   }
+}
 </style>

+ 52 - 50
src/store/modules/project.js

@@ -1,57 +1,59 @@
 import { cacheDictionary } from "@/api/scan/request"
+
 const project_mess = {
-    namespaced: true,
-    state: {
-        datasourceId: "", //数据源id
-        protocolType: "", //数据源类型
-        dataName: "",
-        dictionary: [], // 数据字典
-        cacheTime:''
-    },
-    mutations: {
-        set_datasource(state, val) {
-            state.datasourceId = val
-        },
-        set_protocol_type(state, val) {
-            state.protocolType = val
-        },
-        set_datasource_name(state, val) {
-            state.dataName = val
-        }
+  namespaced: true,
+  state: {
+    datasourceId: "", //数据源id
+    protocolType: "", //数据源类型
+    dataName: "",
+    dictionary: [], // 数据字典
+    cacheTime: ''
+  },
+  mutations: {
+    set_datasource(state, val) {
+      state.datasourceId = val
     },
-    actions: {
-        getDictionary({ state }){
-            let pa = ["Project", "Building", "Floor", "Equipment", "GeneralSystem", "Tenant", "Component", "Space"];
-            let firstLevelMap = {
-                Project: 'Pj',
-                Building: 'Bd',
-                Floor: 'Fl',
-                Tenant: 'VOTn',
-                Equipment: 'Eq',
-                GeneralSystem: 'Sy',
-                Space: 'Sp',
-                Component: 'Ec'
-            }
-            return new Promise((resolve,reject) => {
-                cacheDictionary(pa, res => {
-                    state.dictionary = res.Content.map(t => {
-                        t.InfoPointCode = firstLevelMap[t.InfoPointCode];
-                        return t;
-                    });
-                    let date = new Date();
-                    state.cacheTime = `${date.getFullYear()}-${date.getMonth()+1}-${date.getDate()} ${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`;
-                    resolve(res);
-                })
-            })
-        }
+    set_protocol_type(state, val) {
+      state.protocolType = val
     },
-    getters: {
-        datasourceId: state => state.datasourceId,
-        protocolType: state => state.protocolType,
-        dataName: state => state.dataName,
-        dictionary: state => state.dictionary,
-        cacheTime: state => state.cacheTime
+    set_datasource_name(state, val) {
+      state.dataName = val
+    }
+  },
+  actions: {
+    getDictionary({ state }) {
+      // let pa = ["project", "building", "floor", "equipment", "generalSystem", "tenant", "component", "space"];
+      let pa = ["project", "building", "floor", "equipment", "system", "component", "space"];
+      let firstLevelMap = {
+        Project: 'Pj',
+        Building: 'Bd',
+        Floor: 'Fl',
+        Tenant: 'VOTn',
+        Equipment: 'Eq',
+        GeneralSystem: 'Sy',
+        Space: 'Sp',
+        Component: 'Ec'
+      }
+      return new Promise((resolve, reject) => {
+        cacheDictionary(pa, res => {
+          state.dictionary = res.content.map(t => {
+            t.infoPointCode = firstLevelMap[t.infoPointCode];
+            return t;
+          });
+          let date = new Date();
+          state.cacheTime = `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()} ${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`;
+          resolve(res);
+        })
+      })
     }
+  },
+  getters: {
+    datasourceId: state => state.datasourceId,
+    protocolType: state => state.protocolType,
+    dataName: state => state.dataName,
+    dictionary: state => state.dictionary,
+    cacheTime: state => state.cacheTime
+  }
 }
 
-export default project_mess
+export default project_mess;

+ 11 - 10
src/views/business_space/dataUtil/index.vue

@@ -25,6 +25,7 @@ import { buildingQuery } from '@/api/object/build';
 import { mapGetters } from "vuex";
 import pako from '@/assets/pako/pako'
 import axios from "axios";
+
 export default {
   data() {
     return {
@@ -32,7 +33,7 @@ export default {
       props: { //自定义字段
         value: "BuildID",
         label: "BuildLocalName",
-        children: "Floor"
+        children: "floor"
       },
       floorIdToMap: {}, //楼层id->楼层图
       options: [],
@@ -448,21 +449,21 @@ export default {
     // 获取项目下建筑
     getBuilding() {
       let pa = {
-        Cascade: [{ name: 'floor', Orders: 'SequenceId desc' }],
-        Orders: "BuildLocalName asc",
+        cascade: [{ name: 'floor', orders: 'sequenceId desc' }],
+        orders: "localName asc",
       }
       buildingQuery(pa, res => {
-        this.options = res.Content.map(t => {
-          if (t.Floor) {
-            t.Floor = t.Floor.map(item => {
-              item.BuildID = item.FloorID;
-              item.BuildLocalName = item.FloorLocalName;
-              this.floorIdToMap[item.FloorID] = item.StructureInfo ? item.StructureInfo.FloorMap : ''
+        this.options = res.content.map(t => {
+          if (t.floor) {
+            t.floor = t.floor.map(item => {
+              item.BuildID = item.id;
+              item.BuildLocalName = item.localName;
+              this.floorIdToMap[item.FloorID] = item.structureInfo ? item.structureInfo.floorMap : ''
               return item;
             })
             console.log(this.floorIdToMap)
           } else {
-            t.Floor = []
+            t.floor = []
           }
           return t;
         })

+ 49 - 37
src/views/data_admin/buildAssets/assetsList.vue

@@ -5,42 +5,47 @@
     </div>
     <div class="has-button-table">
       <el-table :data='tableData' style='width: 100%' border v-loading='loading' height="100%" ref="assetTable"
-        :header-cell-style="{background:'#e1e4e5',color:'#2b2b2b'}" @selection-change='handleSelectionChange'>
+                :header-cell-style="{background:'#e1e4e5',color:'#2b2b2b'}" @selection-change='handleSelectionChange'>
         <el-table-column type='selection' width='55' align='center'></el-table-column>
         <el-table-column header-align='center' align='center' label='建筑' width='150'>
           <template slot-scope='scope'>
-            {{getbuildName(scope.row.BuildingId)}}
+            {{ getbuildName(scope.row.buildingId) }}
           </template>
-        </el-table-column>、
+        </el-table-column>
+        、
         <el-table-column header-align='center' align='center' label='楼层' width='80'>
           <template slot-scope='scope'>
-            {{getfloorName(scope.row.FloorId)}}
+            {{ getfloorName(scope.row.floorId) }}
           </template>
         </el-table-column>
-        <el-table-column header-align='center' align='center' prop='Family' label='设备族'>
+        <el-table-column header-align='center' align='center' prop='family' label='设备族'>
           <template slot-scope='scope'>
-            {{getFamilyName(scope.row.Family)}}
+            {{ getFamilyName(scope.row.family) }}
           </template>
         </el-table-column>
-        <el-table-column header-align='center' align='center' prop='point' label='点位标签名称' v-if="active!='fourth'" show-overflow-tooltip>
+        <el-table-column header-align='center' align='center' prop='point' label='点位标签名称' v-if="active!='fourth'"
+                         show-overflow-tooltip>
         </el-table-column>
-        <el-table-column header-align='center' align='center' prop='EquipID' label='本地编码' width='250' show-overflow-tooltip></el-table-column>
-        <el-table-column header-align='center' align='center' prop='EquipName' label='本地名称' show-overflow-tooltip>
+        <el-table-column header-align='center' align='center' prop='equipId' label='本地编码' width='250'
+                         show-overflow-tooltip></el-table-column>
+        <el-table-column header-align='center' align='center' prop='name' label='本地名称' show-overflow-tooltip>
           <template slot-scope='scope'>
-            {{scope.row.EquipLocalName||scope.row.EquipName}}
+            {{ scope.row.localName || scope.row.name }}
           </template>
         </el-table-column>
         <div v-if="active=='fourth'">
-          <el-table-column header-align='center' align='center' prop='SpaceId' label='所在元空间'></el-table-column>
+          <el-table-column header-align='center' align='center' prop='spaceId' label='所在元空间'></el-table-column>
           <el-table-column header-align='center' align='center' prop='eq' label='设备类'></el-table-column>
-          <el-table-column header-align='center' align='center' prop='BIMLocation' label='BIM模型中坐标'></el-table-column>
-          <el-table-column header-align='center' align='center' prop='EquipmentId' label='对应的岗位' width='120'>
+          <el-table-column header-align='center' align='center' prop='bimLocation' label='BIM模型中坐标'></el-table-column>
+          <el-table-column header-align='center' align='center' prop='equipmentId' label='对应的岗位' width='120'>
             <template slot-scope='scope'>
-              <el-button v-if="scope.row.EquipmentId" type='primary' plain size='mini' @click='detail(scope.row)'>查看岗位详情</el-button>
+              <el-button v-if="scope.row.equipmentId" type='primary' plain size='mini' @click='detail(scope.row)'>
+                查看岗位详情
+              </el-button>
             </template>
           </el-table-column>
         </div>
-        <el-table-column header-align='center' align='center' prop='EquipID' label='操作' width='250'>
+        <el-table-column header-align='center' align='center' prop='equipId' label='操作' width='250'>
           <template slot-scope='scope'>
             <el-button type='primary' plain size='mini' @click='detail(scope.row)'>查看</el-button>
             <el-button type='primary' plain size='mini' @click='add(scope.row)' v-if="active=='third'">添加岗位</el-button>
@@ -49,9 +54,11 @@
         </el-table-column>
       </el-table>
     </div>
-    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange" @current-change="handleCurrentChange"
-      :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper"
-      :total="page.total">
+    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange"
+                   @current-change="handleCurrentChange"
+                   :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize"
+                   layout="total, sizes, prev, pager, next, jumper"
+                   :total="page.total">
     </el-pagination>
     <saga-station ref='station' :options='options' :itemObj='itemObj' @refresh='refresh'></saga-station>
   </div>
@@ -62,11 +69,12 @@ import { mapGetters } from 'vuex'
 import SagaStation from './Station'
 //api
 import {
-  floorQuery, //查询楼层信息
   queryProperty, //查询资产
   deleteProperty, //删除资产
   getEquipBelongs, //获取设备族
 } from '@/api/scan/request'
+import { floorQuery } from '@/api/object/floor';
+
 export default {
   name: 'assetslist',
   data() {
@@ -114,8 +122,8 @@ export default {
     //获取所有楼层
     getFloors() {
       floorQuery({}, res => {
-        res.Content.map(item => {
-          this.floorsObj[item.FloorID] = item.FloorLocalName
+        res.content.map(item => {
+          this.floorsObj[item.id] = item.localName
         })
       })
     },
@@ -123,19 +131,19 @@ export default {
     getDeviceType() {
       let param = {
         data: {
-          Orders: "EquipName asc",
-          PageNumber: 1,
-          PageSize: 500
+          orders: "equipName asc",
+          pageNumber: 1,
+          pageSize: 500
         }
       }
       getEquipBelongs(param, res => {
         let obj = {}
-        res.Content.map(t => {
-          this.allFamilyObj[t.Family] = t.FamilyName;
-          if (!obj[t.Family]) {
-            obj[t.Family] = []
+        res.content.map(t => {
+          this.allFamilyObj[t.family] = t.familyName;
+          if (!obj[t.family]) {
+            obj[t.family] = []
           }
-          obj[t.Family].push({ code: t.EquipCode, name: t.EquipName })
+          obj[t.family].push({ code: t.equipCode, name: t.equipName })
         })
         this.alloptions = obj
       })
@@ -146,14 +154,14 @@ export default {
         this.loading = true
         this.tableData = []
         let param = {
-          Filters: `BuildingId='${this.buildingId}';${this.filter[this.active]}`,
-          Orders: "CreateTime desc,EquipID desc",
-          PageNumber: this.page.pageNumber,
-          PageSize: this.page.pageSize
+          filters: `buildingId='${this.buildingId}';${this.filter[this.active]}`,
+          orders: "createTime desc,equipId desc",
+          pageNumber: this.page.pageNumber,
+          pageSize: this.page.pageSize
         }
         queryProperty(param, res => {
-          this.tableData = res.Content
-          this.page.total = res.Total
+          this.tableData = res.content
+          this.page.total = res.total
           this.loading = false
         })
       }
@@ -218,10 +226,10 @@ export default {
     refresh() {
       this.page.pageNumber = 1;
       this.getTableData()
-     },
+    },
     //添加岗位
     add(row) {
-      this.options = this.alloptions[row.Family]
+      this.options = this.alloptions[row.family]
       this.itemObj = row
       this.$refs.station.show()
     }
@@ -249,18 +257,22 @@ export default {
 .page-table-template {
   background-color: #fff;
   padding: 10px;
+
   .no-button-table {
     height: calc(100% - 48px);
   }
+
   .has-button-table {
     height: calc(100% - 94px);
   }
+
   .btn-box {
     padding: 10px;
     padding-top: 0;
     display: flex;
     justify-content: flex-end;
   }
+
   .right {
     padding: 10px;
   }

+ 124 - 122
src/views/data_admin/buildAssets/index.vue

@@ -15,11 +15,12 @@
       </div>
       <div style="float:left;margin-left:10px;">
         <label>发现问题:</label>
-        <span>{{total}}</span>
+        <span>{{ total }}</span>
       </div>
       <el-button style="float:right;" :disabled="total?false:true" @click="handleIssue">查看收集到的问题</el-button>
     </el-row>
-    <div style="background:#fff;display:flex;align-items:center;border: 1px solid #e4e4e4;justify-content:center;height:100%;">
+    <div
+      style="background:#fff;display:flex;align-items:center;border: 1px solid #e4e4e4;justify-content:center;height:100%;">
       <div class="center">
         <i class="icon-wushuju iconfont"></i>
         暂无数据
@@ -58,136 +59,136 @@
 </template>
 
 <script>
-  import SagaNofind from './Nofind'
-  import SagaNopaint from './Nopaint'
-  import SagaVerify from './Noverify'
-  // import assetsList from './assetsList'
-  import {mapActions, mapGetters, mapState} from 'vuex'
-  //api
-  import {
-    // buildingQuery,
-    getAllbusiness,
-    getEquipBelongs,
-    problemQuery
-  } from '@/api/scan/request'
-  import { buildingQuery } from '@/api/object/build';
+import SagaNofind from './Nofind'
+import SagaNopaint from './Nopaint'
+import SagaVerify from './Noverify'
+// import assetsList from './assetsList'
+import { mapActions, mapGetters, mapState } from 'vuex'
+//api
+import {
+  // buildingQuery,
+  getAllbusiness,
+  getEquipBelongs,
+  problemQuery
+} from '@/api/scan/request'
+import { buildingQuery } from '@/api/object/build';
 
-  export default {
-    name: 'build-assets',
-    data() {
-      return {
-        activeName: 'first',
-        buildVlaue: '',
-        options: [],
-        floorsObj: {},
-        allFamilyObj: {},
-        allEquipObj: {},
-        value: '',//
-        tabList: [
-          {label: '现场无法找到的资产', name: "first"},
-          {label: '未画入模型的资产', name: "second"},
-          {label: '无对应岗位的资产', name: "third"},
-          {label: '未扫楼验证的资产', name: "fourth"}
-        ],
-        total: 0,
+export default {
+  name: 'build-assets',
+  data() {
+    return {
+      activeName: 'first',
+      buildVlaue: '',
+      options: [],
+      floorsObj: {},
+      allFamilyObj: {},
+      allEquipObj: {},
+      value: '',//
+      tabList: [
+        { label: '现场无法找到的资产', name: "first" },
+        { label: '未画入模型的资产', name: "second" },
+        { label: '无对应岗位的资产', name: "third" },
+        { label: '未扫楼验证的资产', name: "fourth" }
+      ],
+      total: 0,
+    }
+  },
+  computed: {
+    ...mapGetters('layout', ['projectId', 'userId', 'secret']),
+    ...mapState('layout', ['errorReport'])
+
+  },
+  components: {
+    SagaNofind,
+    SagaNopaint,
+    SagaVerify,
+  },
+  methods: {
+    ...mapActions('layout', ['setErrorReport']),
+    handleTime(val) {
+      console.log(val)
+      let param = {
+        Filters: `createTime > '${val[0]}';createTime < '${val[1]}'`,
+        PageNumber: 1,
+        PageSize: 50
       }
+      problemQuery(param, res => {
+        this.total = res.Total
+        this.setErrorReport(res.Content)
+      })
+
     },
-    computed: {
-      ...mapGetters('layout', ['projectId', 'userId', 'secret']),
-      ...mapState('layout', ['errorReport'])
 
+    handleIssue() {
+      this.$router.push({
+        path: 'report'
+      })
     },
-    components: {
-      SagaNofind,
-      SagaNopaint,
-      SagaVerify,
+    //获取建筑列表
+    getBuilding() {
+      buildingQuery({}, res => {
+        this.options = res.content
+        this.buildValue = res.content ? res.content[0].id : ''
+      })
+      // let param = {
+      //   ProjId: this.projectId,
+      //   UserId: this.userId
+      // }
+      // getBuildSelect(param).then(res => {
+      //   if (res.data.Result == 'success') {
+      //     let data = res.data.BuildList
+      //     this.options = data
+      //     this.buildVlaue = data.length ? data[0].BuildId : ''
+      //   }
+      // })
     },
-    methods: {
-      ...mapActions('layout', ['setErrorReport']),
-      handleTime(val) {
-        console.log(val)
-        let param = {
-          Filters: `createTime > '${val[0]}';createTime < '${val[1]}'`,
-          PageNumber: 1,
-          PageSize: 50
-        }
-        problemQuery(param, res => {
-          this.total = res.Total
-          this.setErrorReport(res.Content)
-        })
-
-      },
+    //获取所有楼层
+    getFloors() {
+      let param = {
+        ProjId: this.projectId,
+        secret: this.secret,
+        id: this.projectId,
+        type: ['Fl']
+      }
+      getAllbusiness(param).then(res => {
+        if (res.data.Result == 'success') {
+          res.data.Content.forEach(item => {
+            this.floorsObj[item.infos.FloorID] = item.infos.FloorLocalName
+          })
 
-      handleIssue() {
-        this.$router.push({
-          path: 'report'
-        })
-      },
-      //获取建筑列表
-      getBuilding() {
-        buildingQuery({}, res => {
-          this.options = res.Content
-          this.buildValue = res.Content ? res.Content[0].BuildID : ''
-        })
-        // let param = {
-        //   ProjId: this.projectId,
-        //   UserId: this.userId
-        // }
-        // getBuildSelect(param).then(res => {
-        //   if (res.data.Result == 'success') {
-        //     let data = res.data.BuildList
-        //     this.options = data
-        //     this.buildVlaue = data.length ? data[0].BuildId : ''
-        //   }
-        // })
-      },
-      //获取所有楼层
-      getFloors() {
-        let param = {
-          ProjId: this.projectId,
-          secret: this.secret,
-          id: this.projectId,
-          type: ['Fl']
         }
-        getAllbusiness(param).then(res => {
-          if (res.data.Result == 'success') {
-            res.data.Content.forEach(item => {
-              this.floorsObj[item.infos.FloorID] = item.infos.FloorLocalName
-            })
-
-          }
-        })
-      },
-      //获取设备组
-      getAllFamily() {
-        // getAllFamily().then(result => {
-        //   if (result.data.Result == "success") {
-        //     console.log(result.data.Content)
-        //     let list = result.data.Content;
-        //     list.forEach(ele => {
-        //       this.allFamilyObj[ele.code] = ele
-        //     })
-        //     this.allEquipObj = {}
-        //     this.getEquip(list)
-        //   }
-        // });
-        let pa = {
-          data: {
-            Orders: 'Family asc',
-            Distinct: true,
-            PageSize: 500,
-            Projection: ["Family", "FamilyName"]
-          }
+      })
+    },
+    //获取设备组
+    getAllFamily() {
+      // getAllFamily().then(result => {
+      //   if (result.data.Result == "success") {
+      //     console.log(result.data.Content)
+      //     let list = result.data.Content;
+      //     list.forEach(ele => {
+      //       this.allFamilyObj[ele.code] = ele
+      //     })
+      //     this.allEquipObj = {}
+      //     this.getEquip(list)
+      //   }
+      // });
+      let pa = {
+        data: {
+          orders: 'family asc',
+          distinct: true,
+          pageSize: 500,
+          projection: ["family", "familyName"]
         }
-        getEquipBelongs(pa, res => {
-          this.AllFamily = res.Content.map(t => {
-            return {
-              Code: t.Family,
-              Name: t.FamilyName
-            }
-          })
+      }
+      getEquipBelongs(pa, res => {
+        this.AllFamily = res.content.map(t => {
+          return {
+            Code: t.family,
+            Name: t.familyName
+          }
         })
-      },
+      })
+    },
     getEquip(list) {
       list.forEach(ele => {
         if (ele.content) {
@@ -223,6 +224,7 @@
     background: #fff;
     margin-bottom: 10px;
   }
+
   /deep/ .el-tabs__nav {
     margin-left: 10px;
   }

+ 190 - 133
src/views/data_admin/buildData/index-2.vue

@@ -7,12 +7,14 @@
       <!-- 建筑选择 -->
       <span style="padding-right:12px;color:#999;vertical-align: middle;">建筑名称</span>
       <el-select v-model="buildId" style="margin-right:10px;" placeholder="请选择" @change="changeBuild">
-        <el-option v-for="item in buildList" :key="item.BuildID" :label="item.BuildLocalName" :value="item.BuildID"></el-option>
+        <el-option v-for="item in buildList" :key="item.id" :label="item.localName"
+                   :value="item.id"></el-option>
       </el-select>
       <!-- 楼层选择 -->
       <span style="padding-right:12px;color:#999;">楼层</span>
       <el-select v-model="floorId" placeholder="请选择" @change="changeFloor">
-        <el-option v-for="item in floorList" :key="item.FloorID" :label="item.FloorLocalName" :value="item.FloorID"></el-option>
+        <el-option v-for="item in floorList" :key="item.id" :label="item.localName"
+                   :value="item.id"></el-option>
       </el-select>
       <!-- 选择时间插件 -->
       <build-time :timeArr="timeArr" @checkTime="checkTime"></build-time>
@@ -31,25 +33,29 @@
             <div class="label_view">
               <el-scrollbar>
                 <div class="swiper-wrapper">
-                  <div class="swiper-slide" :class="checkPointClass == 'all' ? 'active_swiper' : ''" @click="checkPoint('all','all','all')">
+                  <div class="swiper-slide" :class="checkPointClass == 'all' ? 'active_swiper' : ''"
+                       @click="checkPoint('all','all','all')">
                     <div class="all_view">
                       <h3>全部</h3>
                     </div>
                   </div>
-                  <div class="swiper-slide" v-for="(item,index) in PTArr" :key="index" :class="checkPointClass == index ? 'active_swiper' : ''"
-                    @click="checkPoint(index,item.Id,item.Name)">
+                  <div class="swiper-slide" v-for="(item,index) in PTArr" :key="index"
+                       :class="checkPointClass == index ? 'active_swiper' : ''"
+                       @click="checkPoint(index,item.Id,item.Name)">
                     <div class="img_view">
                       <div :class="index == 0 ? 'msg_view' : 'title_view'">
-                        <h3>{{item.Name}}</h3>
+                        <h3>{{ item.Name }}</h3>
                         <p>
                           附近的资产:
-                          <span>{{item.Total}}</span> 个(
-                          <em>{{item.Nocheck}}</em> 个未完成修订)
+                          <span>{{ item.Total }}</span> 个(
+                          <em>{{ item.Nocheck }}</em> 个未完成修订)
                         </p>
                       </div>
                       <img v-if="index != 0" v-load @error="setErrorImg"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Image +'&width=200'" :alt="item.Name">
-                      <el-button type="text" v-if="index != 0" class="btn" @click.stop="getTable(item.Id,index)">查看详情</el-button>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Image +'&width=200'"
+                           :alt="item.Name">
+                      <el-button type="text" v-if="index != 0" class="btn" @click.stop="getTable(item.Id,index)">查看详情
+                      </el-button>
                       <i v-if="index != 0" class="iconfont icon-shuaxin icon" @click.stop="refreshImg(index)"></i>
                     </div>
                   </div>
@@ -63,7 +69,7 @@
           </div>
           <!-- 控制点位标签显示 -->
           <div class="label_show">
-            <el-button plain @click="labelShowBtn">{{labelChecked}}</el-button>
+            <el-button plain @click="labelShowBtn">{{ labelChecked }}</el-button>
           </div>
         </div>
         <!-- 全部与未完成 -->
@@ -81,25 +87,30 @@
           <div class="undo_btn" @click="download">
             <el-button plain>下载</el-button>
           </div>
-          <p class="build_msg" v-show="buildMsgShow" :class="buildMsg ? 'blink' : ''">其他设备族的资产只能在对应页签内维护,设备族变更的资产刷新后不匹配的信息点值将丢失,将会在对应的页签内显示</p>
+          <p class="build_msg" v-show="buildMsgShow" :class="buildMsg ? 'blink' : ''">
+            其他设备族的资产只能在对应页签内维护,设备族变更的资产刷新后不匹配的信息点值将丢失,将会在对应的页签内显示</p>
         </div>
         <!-- 主体表格与tab -->
         <div class="build_table">
           <el-tabs type="card" v-model="tabAvtive" @tab-click="createHotBtn">
-            <el-tab-pane v-for="(item,index) in facilityList" :key="index" :name="'table' + index" :label="item.FamilyName + '(' + item.Count + ')'">
+            <el-tab-pane v-for="(item,index) in facilityList" :key="index" :name="'table' + index"
+                         :label="item.FamilyName + '(' + item.Count + ')'">
               <div style="padding: .2rem;width:100%;padding-bottom:35px;" v-loading="loading">
                 <div :id="'table' + index" v-loading="tableLoading"></div>
                 <div class="data_page center">
-                  <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="currentPage[tabChecked]"
-                    :page-sizes="pageSizeArrs" :page-size="pageSizeArr[tabChecked]" layout="total, sizes, prev, pager, next, jumper"
-                    :total="pageCount[tabChecked]"></el-pagination>
+                  <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
+                                 :current-page.sync="currentPage[tabChecked]"
+                                 :page-sizes="pageSizeArrs" :page-size="pageSizeArr[tabChecked]"
+                                 layout="total, sizes, prev, pager, next, jumper"
+                                 :total="pageCount[tabChecked]"></el-pagination>
                 </div>
               </div>
             </el-tab-pane>
           </el-tabs>
         </div>
         <!-- 图片查看浮层 -->
-        <div class="mouse_move" style="backgroundColor:#ccc;height:3px;cursor:n-resize;" @mousedown="drag" @mouseup="mouseUp"></div>
+        <div class="mouse_move" style="backgroundColor:#ccc;height:3px;cursor:n-resize;" @mousedown="drag"
+             @mouseup="mouseUp"></div>
         <div class="build_pic" v-bind:style="{height:picHeight+'px'}" ref="picview">
           <!-- <div class="pic_show" @click="picNoShow">关闭</div> -->
           <div class="turn_left">
@@ -111,36 +122,58 @@
                 <div class="swiper-slide" v-for="(item,$index) in tablePicArr.Nameplate" :key="item.Key">
                   <div class="img_view">
                     <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key" :title="item.Name" :alt="item.Name">
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key"
+                         :title="item.Name" :alt="item.Name">
                     <i class="iconfont icon-shuaxin icon" @click.stop="changeImgUrl('Nameplate',$index)"></i>
                   </div>
                 </div>
                 <div class="swiper-slide" v-for="(item,$index) in tablePicArr.Pic" :key="item.Key">
                   <div class="img_view" v-if="item.Type != 'image_video'">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '铭牌照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '设备正面照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '带二维码的设备远景照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '设备左侧照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '设备右侧照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '设备背面照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '带二维码的设备近景照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '视频资料' && item.Type == 'image'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '铭牌照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '设备正面照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '带二维码的设备远景照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '设备左侧照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '设备右侧照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '设备背面照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '带二维码的设备近景照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '视频资料' && item.Type == 'image'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
                     <div v-if="item.Type == 'video'" style="width:100%;height:100%;">
-                      <video style="width:100%;height:100%;" :src="'/image-service/common/file_get/'+ item.Key + '?systemId=dataPlatform'" controls
-                        :poster="'/image-service/common/image_get?systemId=dataPlatform&key='+ delVideo(item.Key) +'&width=200'"></video>
+                      <video style="width:100%;height:100%;"
+                             :src="'/image-service/common/file_get/'+ item.Key + '?systemId=dataPlatform'" controls
+                             :poster="'/image-service/common/image_get?systemId=dataPlatform&key='+ delVideo(item.Key) +'&width=200'"></video>
                     </div>
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '其他照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
-                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)" v-if="item.Name == '全景照片'"
-                      :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '其他照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
+                    <img v-load @error="setErrorImg" @click="seeBig(item.Key,item.Name,item.Type)"
+                         v-if="item.Name == '全景照片'"
+                         :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                         :title="item.Name" :alt="item.Name">
                     <!-- <i
                           @click="delPic($index)"
                           class="iconfont icon-guanbi"
@@ -152,7 +185,7 @@
               </div>
             </div>
             <div v-show="!tablePicArr.Pic.length">
-              <p>{{ tablePicMsg ? tablePicMsg : '请选择资产'}}</p>
+              <p>{{ tablePicMsg ? tablePicMsg : '请选择资产' }}</p>
             </div>
           </div>
           <div class="turn_right">
@@ -164,8 +197,9 @@
           <div class="iframe_no" @click="iframeShow = false">
             <i class="iconfont icon-guanbi"></i>
           </div>
-          <iframe id="google_ads_frame2" name="google_ads_frame2" frameborder="0" :src="iframeSrc" marginwidth="0" marginheight="0" vspace="0"
-            hspace="0" allowtransparency="true" scrolling="no" allowfullscreen="true"></iframe>
+          <iframe id="google_ads_frame2" name="google_ads_frame2" frameborder="0" :src="iframeSrc" marginwidth="0"
+                  marginheight="0" vspace="0"
+                  hspace="0" allowtransparency="true" scrolling="no" allowfullscreen="true"></iframe>
         </div>
         <!-- 编辑点位标签弹窗 -->
         <el-dialog title="点位标签编辑" class="modification" :visible.sync="dialogTableVisible" @close="closeDialog">
@@ -173,21 +207,23 @@
             <div class="mod_title">
               <div class="qr_code">
                 <img v-if="pointList.PointId"
-                  :src="'/ScanBuilding/service/qrcode/point?projectId=' + projectId + '&pointId=' + pointList.PointId + '&FloorId=' + floorId + '&width=200&height=200'"
-                  alt>
+                     :src="'/ScanBuilding/service/qrcode/point?projectId=' + projectId + '&pointId=' + pointList.PointId + '&FloorId=' + floorId + '&width=200&height=200'"
+                     alt>
                 <p v-else>暂无二维码</p>
               </div>
               <!-- 头部信息 -->
               <div class="msg_main">
-                <p :title="floorName">现场位置:{{floorName ? floorName : '暂无'}}</p>
+                <p :title="floorName">现场位置:{{ floorName ? floorName : '暂无' }}</p>
                 <div class="input_view">
-                  <input type="text" v-model="pointList.PointName" @focus="nameShow = true" @blur="nameNotShow" @keyup.enter="savePointChange"
-                    placeholder="点位标签的名称">
+                  <input type="text" v-model="pointList.PointName" @focus="nameShow = true" @blur="nameNotShow"
+                         @keyup.enter="savePointChange"
+                         placeholder="点位标签的名称">
                   <i class="iconfont icon-check" v-show="nameShow" @click="savePointChange"></i>
                 </div>
                 <div class="input_view">
-                  <input type="text" v-model="pointList.PointLocalId" @focus="noShow = true" @blur="noNotShow" @keyup.enter="savePointChange"
-                    placeholder="点位标签的本地编码">
+                  <input type="text" v-model="pointList.PointLocalId" @focus="noShow = true" @blur="noNotShow"
+                         @keyup.enter="savePointChange"
+                         placeholder="点位标签的本地编码">
                   <i class="iconfont icon-check" v-show="noShow" @click="savePointChange"></i>
                 </div>
               </div>
@@ -198,14 +234,14 @@
                 <div class="table_header">编码及关系</div>
                 <table>
                   <tbody>
-                    <tr>
-                      <td>点位标签id</td>
-                      <td>{{pointList.PointId}}</td>
-                    </tr>
-                    <tr>
-                      <td>模型id</td>
-                      <td>{{pointList.BimId ? pointList.BimId : '暂无'}}</td>
-                    </tr>
+                  <tr>
+                    <td>点位标签id</td>
+                    <td>{{ pointList.PointId }}</td>
+                  </tr>
+                  <tr>
+                    <td>模型id</td>
+                    <td>{{ pointList.BimId ? pointList.BimId : '暂无' }}</td>
+                  </tr>
                   </tbody>
                 </table>
               </div>
@@ -217,57 +253,70 @@
                   <ul>
                     <li v-for="(item,index) in imgList.place" v-if="imgList.place.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="(item,index) in imgList.nameplate" v-if="imgList.nameplate.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="(item,index) in imgList.ahead" v-if="imgList.ahead.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
-                    <li v-for="(item,index) in imgList.qrCodeLooger" v-if="imgList.qrCodeLooger.length" class="img_view">
+                    <li v-for="(item,index) in imgList.qrCodeLooger" v-if="imgList.qrCodeLooger.length"
+                        class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="(item,index) in imgList.left" v-if="imgList.left.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="(item,index) in imgList.right" v-if="imgList.right.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="(item,index) in imgList.bottom" v-if="imgList.bottom.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="(item,index) in imgList.qrCode" v-if="imgList.qrCode.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="(item,index) in imgList.panorama" v-if="imgList.panorama.length" class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
-                    <li v-for="(item,index) in imgList.else" v-if="imgList.else.length && item.Type != 'image_video'" class="img_view">
+                    <li v-for="(item,index) in imgList.else" v-if="imgList.else.length && item.Type != 'image_video'"
+                        class="img_view">
                       <img @click="seeBig(item.Key,item.Name,item.Type)"
-                        :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'" alt>
+                           :src="'/image-service/common/image_get?systemId=dataPlatform&key='+ item.Key +'&width=200'"
+                           alt>
                       <i class="iconfont icon-shuaxin icon" @click.stop="changeImage(index)"></i>
                     </li>
                     <li v-for="item in imgList.video" style="border: 1px solid #ccc;">
-                      <video style="width:100%;height:100%;" :src="'/image-service/common/file_get/'+ item.Key + '?systemId=dataPlatform'" controls
-                        :poster="'/image-service/common/image_get?systemId=dataPlatform&key='+ delVideo(item.Key) +'&width=200'"></video>
+                      <video style="width:100%;height:100%;"
+                             :src="'/image-service/common/file_get/'+ item.Key + '?systemId=dataPlatform'" controls
+                             :poster="'/image-service/common/image_get?systemId=dataPlatform&key='+ delVideo(item.Key) +'&width=200'"></video>
                     </li>
                   </ul>
                 </div>
@@ -330,13 +379,15 @@ import {
   queryProperty, //数据中心-资产查询
   deleteProperty, //数据中心-删除资产
   updateProperty, //数据中心-更新资产
-  getDataDictionary, //数据中心-查询表头
+  // getDataDictionary, //数据中心-查询表头
   queryPropertyTypeCount, //数据中心-资产分类及数量
   queryPropertyPoint, //数据中心-位置标签及对应资产数量
 } from "@/api/scan/request";
+import { getDataDictionary } from "@/api/dict";
 import { buildingQuery } from '@/api/object/build';
 import { floorQuery } from '@/api/object/floor';
 import { mapGetters, mapActions } from "vuex"
+
 export default {
   components: {
     buildTime,
@@ -427,14 +478,14 @@ export default {
     getAllFamily() {
       let pa = {
         data: {
-          Orders: 'Family asc',
-          Distinct: true,
-          PageSize: 500,
-          Projection: ["Family", "FamilyName"]
+          orders: 'family asc',
+          distinct: true,
+          pageSize: 500,
+          projection: ["family", "familyName"]
         }
       }
       getEquipBelongs(pa, res => {
-        this.AllFamily = res.Content.map(t => {
+        this.AllFamily = res.content.map(t => {
           return {
             Code: t.Family,
             Name: t.FamilyName
@@ -500,14 +551,14 @@ export default {
           "删除图片", {
             dangerouslyUseHTMLString: true
           }).then(() => {
-            if (this.tablePicArr.Pic[index].name == "铭牌照片") {
-              this.delPicPost("Nameplate", this.tablePicArr.Pic[index].key)
-            } else {
-              this.delPicPost("Pic", this.tablePicArr.Pic[index].key)
-            }
-          }).catch(_ => {
-            this.$message("取消删除")
-          })
+          if (this.tablePicArr.Pic[index].name == "铭牌照片") {
+            this.delPicPost("Nameplate", this.tablePicArr.Pic[index].key)
+          } else {
+            this.delPicPost("Pic", this.tablePicArr.Pic[index].key)
+          }
+        }).catch(_ => {
+          this.$message("取消删除")
+        })
       } else {
         this.$message.error("请确定该资产有pic信息")
       }
@@ -596,7 +647,7 @@ export default {
     //获取建筑列表
     getBuilding() {
       buildingQuery({}, res => {
-        this.buildList = res.Content;
+        this.buildList = res.content;
       });
     },
     //获取点位标签详情
@@ -675,9 +726,9 @@ export default {
     //获取点位标签
     getPT() {
       let pa = {
-        buildingId:this.buildId,
-        endingTime:this.checkTimeArr[1],
-        startTime:this.checkTimeArr[0]
+        buildingId: this.buildId,
+        endingTime: this.checkTimeArr[1],
+        startTime: this.checkTimeArr[0]
       }
       if (this.floorId == 'all') {
         pa.floorId = `all`
@@ -693,20 +744,20 @@ export default {
     //获取楼层列表
     getFloorData() {
       let param = {
-        Filters: `BuildID='${this.buildId}'`,
-        Orders: 'FloorSequenceID desc'
+        filters: `buildingId='${this.buildId}'`,
+        orders: 'floorSequenceId desc'
       };
       floorQuery(param, res => {
-        this.floorList = res.Content
+        this.floorList = res.content
         this.floorList.unshift({
-          FloorName: "全部",
-          FloorLocalName: "全部",
-          FloorID: "all"
+          name: "全部",
+          localName: "全部",
+          floorId: "all"
         }, {
-            FloorName: "未明确楼层",
-            FloorLocalName: "未明确楼层",
-            FloorID: "noKnow"
-          })
+          name: "未明确楼层",
+          localName: "未明确楼层",
+          floorId: "noKnow"
+        })
       });
     },
     //保存设备资产的更新
@@ -827,13 +878,11 @@ export default {
       if (!!this.code) {
         let pa = {
           type: this.code,
-          data: {
-            Orders: 'sort asc',
-            PageSize: 500
-          }
+          orders: 'sort asc',
+          pageSize: 500
         }
         getDataDictionary(pa, res => {
-          this.myHotHeaderArr[this.tabChecked] = res.Content;
+          this.myHotHeaderArr[this.tabChecked] = res.content;
           this.getTableMain();
         })
       }
@@ -841,31 +890,31 @@ export default {
     //获取表格主体内容
     async getTableMain() {
       let pa = {
-        PageNumber: this.currentPage[this.tabChecked],
-        PageSize: this.pageSizeArr[this.tabChecked],
-        Filters: `CreateTime>='${this.checkTimeArr[0]}';CreateTime<='${this.checkTimeArr[1]}';BuildingId='${this.buildId}';Family='${this.code}'`
+        pageNumber: this.currentPage[this.tabChecked],
+        pageSize: this.pageSizeArr[this.tabChecked],
+        filters: `createTime>='${this.checkTimeArr[0]}';createTime<='${this.checkTimeArr[1]}';buildingId='${this.buildId}';family='${this.code}'`
       }
       //;codeType in [ -1,-2,-3,0,2]
       // 添加建筑条件
       if (this.floorId == 'noKnow') {
-        pa.Filters += `;FloorId isNull`
+        pa.filters += `;floorId isNull`
       } else if (this.floorId != 'all') {
-        pa.Filters += `;FloorId='${this.floorId}'`
+        pa.filters += `;floorId='${this.floorId}'`
       }
       // 添加完成修订条件
       if (this.checked === 0) {
-        pa.Filters += `;Checked=false or Checked isNull`
+        pa.filters += `;checked=false or checked isNull`
       }
       // 添加标签条件
       if (!this.pointCheck) {
-        pa.Filters += `;PointId isNull`
+        pa.filters += `;pointId isNull`
       } else if (this.pointCheck != 'all') {
-        pa.Filters += `;PointId='${this.pointCheck}'`
+        pa.filters += `;pointId='${this.pointCheck}'`
       }
       queryProperty(pa, res => {
-        let data = res.Content
+        let data = res.content
         this.myHotMainArr[this.tabChecked] = data;
-        this.pageCount[this.tabChecked] = res.Total;
+        this.pageCount[this.tabChecked] = res.total;
         let dom = this.myHotArr[this.tabChecked];
         this.tableLoading = false;
         this.deepArr = this.deepCopy(data);
@@ -936,13 +985,13 @@ export default {
       if (!!this.myHotArr[this.tabChecked]) {
         let fileName = ''
         this.buildList.map(item => {
-          if (item.BuildID == this.buildId) {
-            fileName += item.BuildLocalName
+          if (item.id == this.buildId) {
+            fileName += item.localName
           }
         })
         this.floorList.map(item => {
-          if (item.FloorID == this.floorId) {
-            fileName += '-' + item.FloorLocalName
+          if (item.id == this.floorId) {
+            fileName += '-' + item.localName
           }
         })
         this.facilityList.map((item, index) => {
@@ -1089,7 +1138,7 @@ export default {
           .rowsMapper.__arrayMap;
         let infos = this.myHotMainArr[this.tabChecked][
           trimmedArr[sortArr[rowArr.row]]
-        ];
+          ];
         this.getInfors(infos, rowArr);
       } else if (isSort) {
         //排序后的数组
@@ -1106,6 +1155,7 @@ export default {
       }
     },
     getInfors(data, rowArr, falg = false) {
+      debugger
       let val = this.myHotArr[this.tabChecked].getActiveEditor().prop;
       this.$refs.recommend.randerData(data, val, this.myHotHeaderArr[this.tabChecked])
       if (data.LedgerParam.PhotoDoc && (data.LedgerParam.PhotoDoc.Pic || data.LedgerParam.PhotoDoc.Nameplate)) {
@@ -1141,8 +1191,8 @@ export default {
     changeFloor() {
       this.checkPointClass = -1;
       for (let i = 0; i < this.floorList.length; i++) {
-        if (this.floorId == this.floorList[i].FloorId) {
-          this.floorName = this.floorList[i].FloorLocalName;
+        if (this.floorId == this.floorList[i].floorId) {
+          this.floorName = this.floorList[i].localName;
         }
       }
       this.getPT();
@@ -1506,7 +1556,7 @@ export default {
           .rowsMapper.__arrayMap;
         infos = this.myHotMainArr[this.tabChecked][
           trimmedArr[sortArr[row]]
-        ];
+          ];
       } else if (isSort) {
         //排序后的数组
         let sortArr = this.myHotArr[this.tabChecked].getPlugin("columnSorting")
@@ -1587,16 +1637,16 @@ export default {
           value: "完成修订"
         }
       }, {
-          data: "PointName",
-          readOnly: true
-        }, {
-          editor: "chosen",
-          data: "Family",
-          renderer: tools.customDropdownRenderer,
-          chosenOptions: {
-            data: this.AllFamily
-          }
-        });
+        data: "PointName",
+        readOnly: true
+      }, {
+        editor: "chosen",
+        data: "Family",
+        renderer: tools.customDropdownRenderer,
+        chosenOptions: {
+          data: this.AllFamily
+        }
+      });
       data = data.filter(item => item)
       return data;
     },
@@ -1643,6 +1693,7 @@ export default {
 .page-content {
   position: relative;
 }
+
 @import "../../../components/data_admin/buildData/style.scss";
 </style>
 
@@ -1651,28 +1702,34 @@ export default {
   .el-tabs__header {
     width: 100%;
   }
+
   .el-dialog {
     width: 900px;
     height: auto;
   }
+
   .center {
     text-align: center;
   }
+
   .el-radio-button__inner {
     width: 90px;
   }
+
   .build_label {
     .label_view {
       padding: 0 4rem;
       box-sizing: border-box;
     }
   }
+
   .build_pic {
     .turn_right {
       right: 0;
     }
   }
 }
+
 .content_box {
   max-height: 440px;
   overflow-y: auto;

File diff suppressed because it is too large
+ 1839 - 1750
src/views/data_admin/buildData/index.vue


+ 33 - 23
src/views/data_admin/buildGraphy/createPointZone.vue

@@ -10,14 +10,17 @@
           <span>基本信息:</span>
           <div>
             <label><span style="color:red;">*</span>业务空间名称</label>
-            <el-input placeholder="请输入业务空间名称" v-model="RoomLocalName" clearable style="width:215px;margin-right:10px;"></el-input>
+            <el-input placeholder="请输入业务空间名称" v-model="RoomLocalName" clearable
+                      style="width:215px;margin-right:10px;"></el-input>
             <label>业务空间编码</label>
-            <el-input placeholder="请输入业务空间编码" v-model="RoomLocalID" clearable style="width:215px;margin-right:10px;"></el-input>
+            <el-input placeholder="请输入业务空间编码" v-model="RoomLocalID" clearable
+                      style="width:215px;margin-right:10px;"></el-input>
           </div>
           <div>
             <label><span style="color:red;">*</span>所属建筑楼层</label>
-            <el-cascader placeholder='请选择' v-model="buildFloor" :options="options" :props="floorProps" filterable ref="buildfloor"
-              style="width:215px;margin-right:10px;"></el-cascader>
+            <el-cascader placeholder='请选择' v-model="buildFloor" :options="options" :props="floorProps" filterable
+                         ref="buildfloor"
+                         style="width:215px;margin-right:10px;"></el-cascader>
             <label><span style="color:red;">*</span>业务空间类型</label>
             <el-select v-model="space" placeholder="请选择空间" style="width:215px;margin-right:10px;" @change="changeSpace">
               <el-option v-for="item in spaceList" :key="item.Code" :label="item.Name" :value="item.Code">
@@ -28,7 +31,7 @@
         <div class="item">
           <span>其它可补充信息:</span>
           <i style="cursor: pointer;" :class="showEx"
-            @click="showEx = (showEx == 'el-icon-arrow-up' ? 'el-icon-arrow-down' : 'el-icon-arrow-up')"></i>
+             @click="showEx = (showEx == 'el-icon-arrow-up' ? 'el-icon-arrow-down' : 'el-icon-arrow-up')"></i>
           <div v-show="showEx == 'el-icon-arrow-up'" v-loading="loadingOtherMsg">
             <zoneInput v-show="otherList.length" :inputList="otherList" labelWidth="140px" ref="zoneInput"></zoneInput>
             <p v-show="!otherList.length">请选择业务空间类型</p>
@@ -45,9 +48,12 @@
 
 <script>
 import locationPointMsg from '@/views/data_admin/buildGraphy/locationPointMsg'
-import { queryDictionaryHead, getDataDictionary, zoneCreate } from '@/api/scan/request';
+import { queryDictionaryHead, zoneCreate } from '@/api/scan/request';
+import { getDataDictionary } from "@/api/dict";
+
 import { mapGetters } from 'vuex'
 import zoneInput from '@/components/data_admin/zoneInput'
+
 export default {
   data() {
     return {
@@ -72,9 +78,7 @@ export default {
   computed: {
     ...mapGetters("layout", ["projectId"])
   },
-  props: {
-
-  },
+  props: {},
   components: {
     locationPointMsg,
     zoneInput
@@ -113,14 +117,11 @@ export default {
           this.space = ''
           this.otherList = []
         })
-      }
-      else if (!this.RoomLocalName) {
+      } else if (!this.RoomLocalName) {
         this.$message("请输入业务空间名称");
-      }
-      else if (!this.buildFloor.length) {
+      } else if (!this.buildFloor.length) {
         this.$message("请选择所属建筑楼层");
-      }
-      else {
+      } else {
         this.$message("请选择业务空间类型");
       }
     },
@@ -130,7 +131,9 @@ export default {
         Filters: `parentId='Space'`
       }
       queryDictionaryHead(pa, res => {
-        this.spaceList = res.Content.filter((item => { return item.Name != '元空间' }));
+        this.spaceList = res.Content.filter((item => {
+          return item.Name != '元空间'
+        }));
       });
     },
     //选择业务空间
@@ -138,17 +141,17 @@ export default {
       this.space = val;
       let pa = {
         type: this.space,
-        data: {
-          "Orders": "sort asc", "PageNumber": 1, "PageSize": 500
-        }
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 500
       };
       this.loadingOtherMsg = true;
       getDataDictionary(pa, res => {
         this.loadingOtherMsg = false;
-        let filterCode = ["RoomLocalID", "RoomLocalName"]
-        res.Content = res.Content.filter(item => {
+        let filterCode = ["localId", "localName"]
+        res.content = res.content.filter(item => {
           item.inputValue = null;
-          return filterCode.indexOf(item.InfoPointCode) == -1
+          return filterCode.indexOf(item.code) == -1
         });
         this.otherList = res.Content;
         this.$refs.zoneInput.init(this.otherList);
@@ -181,31 +184,38 @@ export default {
   flex-direction: column;
   border: 1px solid #dfe6ec;
   background: #fff;
+
   .header {
     padding-bottom: 10px;
     border-bottom: 1px solid rgba(0, 0, 0, 0.5);
+
     span {
       line-height: 33px;
       margin-left: 15px;
     }
+
     /deep/ .buildFloor {
       line-height: 32px;
     }
   }
 }
+
 /deep/ .el-scrollbar__wrap {
   overflow-x: hidden;
 }
+
 .item {
   padding: 10px 10px;
+
   label {
     display: inline-block;
     padding: 5px 10px;
     width: 130px;
   }
 }
+
 .suppMsg {
   display: inline-block;
   position: relative;
 }
-</style>
+</style>

+ 12 - 12
src/views/data_admin/buildGraphy/index.vue

@@ -54,7 +54,7 @@ export default {
       props: {
         value: 'BuildID',
         label: 'BuildLocalName',
-        children: 'Floor'
+        children: 'floor'
       },
       param: {
         ProjId: this.projectId, //项目id
@@ -112,24 +112,24 @@ export default {
     //获取建筑列表
     getList() {
       let param = {
-        Cascade: [
-          { Name: "floor", Orders: "FloorSequenceID desc", }
+        cascade: [
+          { name: "floor", orders: "floorSequenceID desc", }
         ],
-        PageNumber: 1,
-        PageSize: 50
+        pageNumber: 1,
+        pageSize: 50
       }
       buildingQuery(param, res => {
-        res.Content.map(t => {
-          if (t.Floor && t.Floor.length) {
-            t.Floor = t.Floor.map(item => {
-              if (item.FloorID == this.FloorID) return
-              item.BuildID = item.FloorID
-              item.BuildLocalName = item.FloorLocalName || item.FloorName
+        res.content.map(t => {
+          if (t.floor && t.floor.length) {
+            t.floor = t.floor.map(item => {
+              if (item.id == this.FloorID) return
+              item.BuildID = item.id
+              item.BuildLocalName = item.localName || item.name
               return item
             }).filter(it => it)
           }
         })
-        this.options = res.Content
+        this.options = res.content
         if(this.$route.params.nowBuildFloor){
           this.changeFloor(this.$route.params.nowBuildFloor)
           this.buildVlaue = this.$route.params.nowBuildFloor

+ 59 - 53
src/views/data_admin/buildTask/addTask/addAssetsTask.vue

@@ -6,39 +6,43 @@
         <el-button style="float:left;" size="small" type="default" icon="el-icon-back" @click="goBack"></el-button>
         <floor-cascader ref="floorCascader" @change="changeFloor"></floor-cascader>
         <my-cascader ref="cascader" @change="changeDevice"></my-cascader>
-        <el-input placeholder="请输入安装位置" style="width: 200px;margin-left:20px;" v-model="keycode" clearable @keyup.enter.native="getTableData">
+        <el-input placeholder="请输入安装位置" style="width: 200px;margin-left:20px;" v-model="keycode" clearable
+                  @keyup.enter.native="getTableData">
           <i slot="suffix" class="el-input__icon el-icon-search" style="cursor:pointer;" @click="getTableData"></i>
         </el-input>
         <el-button style="float:right;margin-top:1px;" @click="handleClickCreate">创建已选</el-button>
       </div>
-      <div class="main" :style="tableData && tableData.length?'height: calc(100% - 96px);':'height: calc(100% - 46px);'">
-        <el-table ref="multipleTable" :data="tableData" v-loading='loading' stripe height="100%" @selection-change="handleSelectionChange" :header-cell-style="headerStyle">
+      <div class="main"
+           :style="tableData && tableData.length?'height: calc(100% - 96px);':'height: calc(100% - 46px);'">
+        <el-table ref="multipleTable" :data="tableData" v-loading='loading' stripe height="100%"
+                  @selection-change="handleSelectionChange" :header-cell-style="headerStyle">
           <el-table-column type="selection" width="55"></el-table-column>
           <el-table-column label="所属建筑楼层" width="200">
             <template slot-scope="scope">
               <div>
-                {{scope.row.Building?scope.row.Building.BuildLocalName?scope.row.Building.BuildLocalName:'':''}} -
-                {{scope.row.Floor?scope.row.Floor.FloorLocalName?scope.row.Floor.FloorLocalName:'':''}}
+                {{ scope.row.building ? scope.row.building.localName ? scope.row.Building.localName : '' : '' }} -
+                {{ scope.row.floor ? scope.row.floor.localName ? scope.row.Floor.localName : '' : '' }}
               </div>
             </template>
           </el-table-column>
-          <el-table-column prop="EquipLocalName" label="资产本地名称" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="EquipLocalID" label="资产本地编码" show-overflow-tooltip width="200"></el-table-column>
-          <el-table-column prop="FamilyName.Name" label="设备族"></el-table-column>
-          <el-table-column prop="LedgerParam.Siteinstall.InstallLocation" label="安装位置"></el-table-column>
+          <el-table-column prop="localName" label="资产本地名称" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="localId" label="资产本地编码" show-overflow-tooltip width="200"></el-table-column>
+          <el-table-column prop="familyName.name" label="设备族"></el-table-column>
+          <el-table-column prop="infos.installLocation" label="安装位置"></el-table-column>
           <el-table-column prop="type" label="现场验证操作规定" width="200">
             <template slot-scope="scope">
-              <el-select style="width:100px;" v-model="scope.row.SchemeId" placeholder="请选择">
-                <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
+              <el-select style="width:100px;" v-model="scope.row.schemeId" placeholder="请选择">
+                <el-option v-for="item in options" :key="item.value" :label="item.label"
+                           :value="item.value"></el-option>
               </el-select>
             </template>
           </el-table-column>
           <template slot="empty">
-          <div style="height: 60%;transform: translateY(50%);">
-            <i class="icon-wushuju iconfont"></i>
-            数据暂无
-          </div>
-        </template>
+            <div style="height: 60%;transform: translateY(50%);">
+              <i class="icon-wushuju iconfont"></i>
+              数据暂无
+            </div>
+          </template>
         </el-table>
       </div>
       <div class=footer>
@@ -59,15 +63,15 @@
 </template>
 
 <script>
-    import {mapGetters} from "vuex"
-    //组件
-    import floorCascader from "@/components/ledger/lib/floorCascader"
-    import myCascader from "@/components/ledger/lib/assets"
-    //api
-    import {queryProperty} from "@/api/scan/request"
-    import {createAssetsTask} from "@/api/data_admin/buildTaskApi"
+import {mapGetters} from "vuex"
+//组件
+import floorCascader from "@/components/ledger/lib/floorCascader"
+import myCascader from "@/components/ledger/lib/assets"
+//api
+import {queryProperty} from "@/api/scan/request"
+import {createAssetsTask} from "@/api/data_admin/buildTaskApi"
 
-    export default {
+export default {
   data() {
     return {
       params: {},
@@ -87,7 +91,7 @@
         label: '标准'
       }],
       tableData: [],
-      multipleSelection:[],
+      multipleSelection: [],
       headerStyle: {
         backgroundColor: '#e1e4e5',
         color: '#2b2b2b',
@@ -118,11 +122,11 @@
   methods: {
     //返回
     goBack() {
-      this.$router.push({ name: "buildTask" })
+      this.$router.push({name: "buildTask"})
     },
     //选择设备族
     changeDevice(val) {
-      if(val.code) {
+      if (val.code) {
         this.params.category = val.code
       } else {
         this.params.category = ''
@@ -148,62 +152,62 @@
       this.loading = true
       let param = this.formatFilter()
       queryProperty(param, res => {
-        this.tableData = res.Content
-        this.page.total = res.Total
+        this.tableData = res.content
+        this.page.total = res.total
         this.loading = false
       })
     },
     //格式化条件
     formatFilter() {
       let params = {
-        Cascade: [
+        cascade: [
           {
-            Name: "familyName"
+            name: "familyName"
           },
           {
-            Name: "building",
-            Projection: [ "BuildLocalName", "BuildName", "BuildID" ]
+            name: "building",
+            projection: ["localName", "name", "id"]
           },
           {
-            Name: "floor",
-            Projection: [ "FloorLocalName", "FloorName", "FloorID" ]
+            name: "floor",
+            projection: ["localName", "name", "id"]
           }
         ],
-        Filters: `ProjectId='${this.projectId}'`,
-        Orders: "CreateTime desc, EquipID asc",
-        PageNumber: this.page.pageNumber,
-        PageSize: this.page.pageSize
+        filters: `projectId='${this.projectId}'`,
+        orders: "createTime desc, equipId asc",
+        pageNumber: this.page.pageNumber,
+        pageSize: this.page.pageSize
       }
 
-      if(this.params.isVerification !== false){
+      if (this.params.isVerification !== false) {
         // params.Filters += `;(TaskState isNull || TaskState=0)`
         // params.Filters += `;(TaskState!=0 || TaskState!=-1 || TaskState!=1)`
-        params.Filters += `;TaskState isnull`
+        params.filters += `;taskState isnull`
 
       } else {
         // params.Filters += `;(TaskState!=1)`
-        params.Filters += `;(TaskState isnull or TaskState !=1 )`
+        params.filters += `;(taskState isnull or taskState !=1 )`
 
       }
 
-      if(this.keycode){
-        params.Filters += `;LedgerParam.Siteinstall.InstallLocation contain '${this.keycode}'`
+      if (this.keycode) {
+        params.filters += `;infos.installLocation contain '${this.keycode}'`
       }
 
-      if(this.params.category){
-        params.Filters += `;Family='${this.params.category}'`
+      if (this.params.category) {
+        params.filters += `;family='${this.params.category}'`
       }
 
       if (this.params.buildId == "noKnow") {
-        params.Filters += `;BuildingId isNull`
+        params.filters += `;buildingId isNull`
       } else if (this.params.buildId && this.params.buildId != "all") {
-        params.Filters += `;BuildingId='${this.params.buildId}'`
+        params.filters += `;buildingId='${this.params.buildId}'`
       }
 
       if (this.params.floorId == "noKnow") {
-        params.Filters += `;FloorId isNull`
+        params.filters += `;floorId isNull`
       } else if (this.params.floorId && this.params.floorId != "all") {
-        params.Filters += `;FloorId='${this.params.floorId}'`
+        params.filters += `;floorId='${this.params.floorId}'`
       }
 
       return params
@@ -243,7 +247,7 @@
         }
         createAssetsTask(param, res => {
           this.$message.success("创建成功!")
-          this.$router.push({ name: "buildTask",query:{ newTaskTypes:this.$route.query.newTaskTypes } })
+          this.$router.push({name: "buildTask", query: {newTaskTypes: this.$route.query.newTaskTypes}})
         })
       } else {
         this.$message('请选择要创建的任务!')
@@ -263,11 +267,13 @@
     border: 1px solid #dfe6ec;
     background: #fff;
     margin-bottom: 10px;
-    .header{
+
+    .header {
       padding-bottom: 10px;
       border-bottom: 1px solid #bcbcbc;
     }
-    .main{
+
+    .main {
       margin-top: 10px;
     }
   }

+ 127 - 110
src/views/data_admin/buildTask/addTask/addDeviceTask.vue

@@ -5,19 +5,25 @@
         <el-button style="float:left;" size="small" type="default" icon="el-icon-back" @click="goBack"></el-button>
         <floor-cascader ref="floorCascader" @change="changeFloor"></floor-cascader>
         <my-cascader ref="cascader" @change="changeDevice"></my-cascader>
-        <el-input placeholder="请输入安装位置" style="width: 200px;margin-left:20px;" v-model="keycode" clearable @keyup.enter.native="getTableData">
+        <el-input placeholder="请输入安装位置" style="width: 200px;margin-left:20px;" v-model="keycode" clearable
+                  @keyup.enter.native="getTableData">
           <i slot="suffix" class="el-input__icon el-icon-search" style="cursor:pointer;" @click="getTableData"></i>
         </el-input>
         <el-button style="float:right;margin-top:1px;" @click="handleClickCreate">创建已选</el-button>
       </div>
-      <div class="main" :style="tableData && tableData.length?'height: calc(100% - 96px);':'height: calc(100% - 46px);'">
-        <el-table ref="multipleTable" :data="tableData" v-loading='loading' stripe height="100%" @selection-change="handleSelectionChange" :header-cell-style="headerStyle">
+      <div class="main"
+           :style="tableData && tableData.length?'height: calc(100% - 96px);':'height: calc(100% - 46px);'">
+        <el-table ref="multipleTable" :data="tableData" v-loading='loading' stripe height="100%"
+                  @selection-change="handleSelectionChange" :header-cell-style="headerStyle">
           <el-table-column type="selection" width="55"></el-table-column>
           <el-table-column type="expand">
             <template slot-scope="props">
-              <p v-if="props.row.ComponentCount && props.row.ComponentCount.length" style="color:#99a9bf;line-height:32px;font-size:14px;">包含的部件:</p>
-              <el-form label-position="left" label-width="auto" inline class="demo-table-expand" v-if="props.row.ComponentCount && props.row.ComponentCount.length">
-                <el-form-item v-for="item in props.row.ComponentCount?props.row.ComponentCount:[]" :key="item.code" :label="`${item.name}:`">
+              <p v-if="props.row.ComponentCount && props.row.ComponentCount.length"
+                 style="color:#99a9bf;line-height:32px;font-size:14px;">包含的部件:</p>
+              <el-form label-position="left" label-width="auto" inline class="demo-table-expand"
+                       v-if="props.row.ComponentCount && props.row.ComponentCount.length">
+                <el-form-item v-for="item in props.row.ComponentCount?props.row.ComponentCount:[]" :key="item.code"
+                              :label="`${item.name}:`">
                   <span>{{ item.count }}</span>
                 </el-form-item>
               </el-form>
@@ -26,17 +32,21 @@
           <el-table-column label="所属建筑楼层" width="200">
             <template slot-scope="scope">
               <div>
-                {{scope.row.Building?scope.row.Building.BuildLocalName?scope.row.Building.BuildLocalName:'':''}} -
-                {{scope.row.Floor?scope.row.Floor.FloorLocalName?scope.row.Floor.FloorLocalName:'':''}}
+                {{
+                  scope.row.Building ? scope.row.Building.BuildLocalName ? scope.row.Building.BuildLocalName : '' : ''
+                }}
+                -
+                {{ scope.row.Floor ? scope.row.Floor.FloorLocalName ? scope.row.Floor.FloorLocalName : '' : '' }}
               </div>
             </template>
           </el-table-column>
           <el-table-column prop="EquipLocalName" label="设备本地名称" show-overflow-tooltip>
-             <template slot-scope="scope">
+            <template slot-scope="scope">
               <div>
-                {{scope.row.EquipLocalName}}
+                {{ scope.row.EquipLocalName }}
                 <el-badge v-if="scope.row.Component&&scope.row.Component.length?true:false"
-                  :value="scope.row.Component&&scope.row.Component.length?scope.row.Component.length:0" class="item" type="warning">
+                          :value="scope.row.Component&&scope.row.Component.length?scope.row.Component.length:0"
+                          class="item" type="warning">
                 </el-badge>
               </div>
             </template>
@@ -47,7 +57,8 @@
           <el-table-column prop="type" label="现场验证操作规定" width="200">
             <template slot-scope="scope">
               <el-select style="width:100px;" v-model="scope.row.SchemeId" placeholder="请选择">
-                <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
+                <el-option v-for="item in options" :key="item.value" :label="item.label"
+                           :value="item.value"></el-option>
               </el-select>
             </template>
           </el-table-column>
@@ -77,55 +88,55 @@
 </template>
 
 <script>
-  import {mapGetters} from "vuex"
-  //组件
-  import floorCascader from "@/components/ledger/lib/floorCascader"
-  import myCascader from "@/components/ledger/lib/cascader"
-  //api
-  import {queryEquip} from "@/api/scan/request"
-  import {createDeviceTask} from "@/api/data_admin/buildTaskApi"
+import {mapGetters} from "vuex"
+//组件
+import floorCascader from "@/components/ledger/lib/floorCascader"
+import myCascader from "@/components/ledger/lib/cascader"
+//api
+import {queryEquip} from "@/api/object/equip"
+import {createDeviceTask} from "@/api/data_admin/buildTaskApi"
 
-  export default {
-    data() {
-      return {
-        params: {},
-        loading: false,
-        keycode: '',
-        page: {
-          pageSize: 50,
-          pageSizes: [10, 20, 50, 100],
-          pageNumber: 1,
-          total: 0
-        },
-        options: [{//方案
-          value: '1',
-          label: '极简'
-        }, {
-          value: '2',
-          label: '标准'
-        }],
-        tableData: [],
-        multipleSelection: [],
-        headerStyle: {
-          backgroundColor: '#e1e4e5',
-          color: '#2b2b2b',
-          lineHeight: '30px'
-        }, // 列表样式
-      }
-    },
-    computed: {
-      ...mapGetters("layout", ["projectId", "userId", "secret"])
-    },
-    components: {
-      floorCascader,
-      myCascader
-    },
-    created() {
-      this.params = this.$route.query
-      console.log(this.params)
-    },
-    mounted() {
-      this.getTableData()
+export default {
+  data() {
+    return {
+      params: {},
+      loading: false,
+      keycode: '',
+      page: {
+        pageSize: 50,
+        pageSizes: [10, 20, 50, 100],
+        pageNumber: 1,
+        total: 0
+      },
+      options: [{//方案
+        value: '1',
+        label: '极简'
+      }, {
+        value: '2',
+        label: '标准'
+      }],
+      tableData: [],
+      multipleSelection: [],
+      headerStyle: {
+        backgroundColor: '#e1e4e5',
+        color: '#2b2b2b',
+        lineHeight: '30px'
+      }, // 列表样式
+    }
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId", "userId", "secret"])
+  },
+  components: {
+    floorCascader,
+    myCascader
+  },
+  created() {
+    this.params = this.$route.query
+    console.log(this.params)
+  },
+  mounted() {
+    this.getTableData()
   },
   watch: {
     projectId() {
@@ -137,11 +148,11 @@
   methods: {
     //返回
     goBack() {
-      this.$router.push({ name: "buildTask" })
+      this.$router.push({name: "buildTask"})
     },
     //选择设备或部件
     changeDevice(val) {
-      if(val.code) {
+      if (val.code) {
         this.params.category = val.code
       } else {
         this.params.category = ''
@@ -167,18 +178,20 @@
       this.loading = true
       let param = this.formatFilter()
       queryEquip(param, res => {
-        this.tableData = res.Content.map(item => {
-          if(item.Component && item.Component.length){
+        this.tableData = res.content.map(item => {
+          if (item.component && item.component.length) {
             item.ComponentCount = []
-            item.Component.map(parts => {
-              if(parts.EquipCategory && parts.EquipCategory.EquipCode && parts.EquipCategory.EquipName){
-                let index = item.ComponentCount.findIndex(c => {return c.code == parts.EquipCategory.EquipCode})
-                if(index != -1){
+            item.component.map(parts => {
+              if (parts.equipCategory && parts.equipCategory.equipCode && parts.equipCategory.equipName) {
+                let index = item.ComponentCount.findIndex(c => {
+                  return c.code == parts.equipCategory.equipCode
+                })
+                if (index != -1) {
                   item.ComponentCount[index].count++
                 } else {
                   item.ComponentCount.push({
-                    name: parts.EquipCategory.EquipName,
-                    code: parts.EquipCategory.EquipCode,
+                    name: parts.equipCategory.equipName,
+                    code: parts.equipCategory.equipCode,
                     count: 1
                   })
                 }
@@ -189,66 +202,67 @@
           // item.SchemeId = "1"
           return item
         })
-        this.page.total = res.Total
+        this.page.total = res.total
         this.loading = false
       })
     },
     //格式化条件
     formatFilter() {
       let params = {
-        Cascade: [
+        cascade: [
           {
-            Name: "equipCategory",
-            Projection: ["EquipCode", "EquipName"]
+            name: "equipCategory",
+            projection: ["equipCode", "equipName"]
           },
           {
-            Name: "component",
-            Cascade: [{Name: "equipCategory"}]
+            name: "component",
+            cascade: [{name: "equipCategory"}]
           },
           {
-            Name: "building",
-            Projection: [ "BuildLocalName", "BuildName", "BuildID" ]
+            name: "building",
+            projection: ["localName", "name", "id"]
           },
           {
-            Name: "floor",
-            Projection: [ "FloorLocalName", "FloorName", "FloorID" ]
+            name: "floor",
+            projection: ["localName", "name", "id"]
           }
         ],
-        Filters: `ProjectId='${this.projectId}'`,
-        Orders: "CreateTime desc, EquipID asc",
-        PageNumber: this.page.pageNumber,
-        PageSize: this.page.pageSize
+        filters: `projectId='${this.projectId}'`,
+        // Orders: "CreateTime desc, EquipID asc",
+        orders: "createTime desc",
+        pageNumber: this.page.pageNumber,
+        pageSize: this.page.pageSize
       }
 
-      if(this.params.isVerification){
+      if (this.params.isVerification) {
         // params.Filters += `;(TaskState isNull || TaskState=0 || TaskState=-1)`
         // params.Filters += `;(TaskState!=0 || TaskState!=-1 || TaskState!=1)`
-        params.Filters += `;TaskState isnull`
+        params.filters += `;taskState isnull`
 
       } else {
         // params.Filters += `;(TaskState!=1)`
-        params.Filters += `;(TaskState isnull or TaskState !=1 )`
+        params.filters += `;(taskState isnull or taskState !=1 )`
 
       }
 
-      if(this.keycode){
-        params.Filters += `;LedgerParam.Siteinstall.InstallLocation contain '${this.keycode}'`
+      if (this.keycode) {
+        params.filters += `;infos.installLocation contain '${this.keycode}'`
       }
 
-      if(this.params.category){
-        params.Filters += `;Category='${this.params.category}'`
+      if (this.params.category) {
+        params.filters += `;classCode='${this.params.category}'`
       }
 
       if (this.params.buildId == "noKnow") {
-        params.Filters += `;BuildingId isNull`
+        params.filters += `;buildingId isNull`
       } else if (this.params.buildId && this.params.buildId != "all") {
-        params.Filters += `;BuildingId='${this.params.buildId}'`
+        params.filters += `;buildingId='${this.params.buildId}'`
       }
 
       if (this.params.floorId == "noKnow") {
-        params.Filters += `;FloorId isNull`
+        params.filters += `;floorId isNull`
       } else if (this.params.floorId && this.params.floorId != "all") {
-        params.Filters += `;FloorId='${this.params.floorId}'`
+        params.filters += `;floorId='${this.params.floorId}'`
       }
       return params
     },
@@ -286,7 +300,7 @@
         }
         createDeviceTask(param, res => {
           this.$message.success("创建成功!")
-          this.$router.push({ name: "buildTask",query:{ newTaskTypes:this.$route.query.newTaskTypes } })
+          this.$router.push({name: "buildTask", query: {newTaskTypes: this.$route.query.newTaskTypes}})
         })
       } else {
         this.$message('请选择要创建的任务!')
@@ -314,7 +328,8 @@
       padding-bottom: 10px;
       border-bottom: 1px solid #bcbcbc;
     }
-    .main{
+
+    .main {
       margin-top: 10px;
     }
   }
@@ -322,17 +337,19 @@
 </style>
 
 <style>
-  .demo-table-expand {
-    font-size: 0;
-  }
-  .demo-table-expand label {
-    width: 90px;
-    color: #99a9bf;
-  }
-  .demo-table-expand .el-form-item {
-    margin-right: 0;
-    margin-bottom: 0;
-    margin-left: 120px;
-    width: 100%;
-  }
+.demo-table-expand {
+  font-size: 0;
+}
+
+.demo-table-expand label {
+  width: 90px;
+  color: #99a9bf;
+}
+
+.demo-table-expand .el-form-item {
+  margin-right: 0;
+  margin-bottom: 0;
+  margin-left: 120px;
+  width: 100%;
+}
 </style>

+ 94 - 82
src/views/ledger/cenotelist/cenoteDetail/index.vue

@@ -3,7 +3,7 @@
     <div class="condition">
       <div class="header">
         <el-button style="float:left;" size="small" type="default" icon="el-icon-back" @click="goBack"></el-button>
-        <span>{{params.name||''}}</span>
+        <span>{{ params.name || '' }}</span>
       </div>
       <el-row class="spaceTypes">
         <div class="types">
@@ -17,7 +17,7 @@
           <el-button size="small" @click="deleteCenote">删除竖井</el-button>
         </div>
       </el-row>
-      <div v-if="activeTab=='detail'"  class="content">
+      <div v-if="activeTab=='detail'" class="content">
         <div class="content-left">
           <div class="content-showType">
             <selectRadio
@@ -48,69 +48,72 @@
 </template>
 
 <script>
-  import {mapGetters} from "vuex"
-  import {deleteCenoteTableData, getDataDictionary, queryCenoteTableData} from '@/api/scan/request'
-  import cenoteTable from '@/components/ledger/cenote/table/cenoteTable'
-  import deviceTable from '@/components/ledger/cenote/table/deviceTable'
-  import systemTable from '@/components/ledger/cenote/table/systemTable'
-  import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
-  import selectRadio from "@/components/ledger/details/detail/selectRadio";
-  import tools from "@/utils/scan/tools"
+import { mapGetters } from "vuex"
+import { deleteCenoteTableData, queryCenoteTableData } from '@/api/scan/request'
+import { getDataDictionary } from "@/api/dict";
+import cenoteTable from '@/components/ledger/cenote/table/cenoteTable'
+import deviceTable from '@/components/ledger/cenote/table/deviceTable'
+import systemTable from '@/components/ledger/cenote/table/systemTable'
+import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
+import selectRadio from "@/components/ledger/details/detail/selectRadio";
+import tools from "@/utils/scan/tools"
 
-  export default {
-    data() {
-      return {
-        params: {},
-        tabsList: [
-          {Code: 'detail', Name: '竖井详情'},
-          {Code: 'device', Name: '竖井内的设备'},
-          {Code: 'cenote', Name: '连通的其它竖井'},
-          {Code: 'system', Name: '竖井内系统'},
-        ], //tab页
-        activeTab: 'detail', //当前选中的tab
-        pointData: [], //信息点数据
-        currentRadio: '1',//当前选中的select
-        exampleData: {}, //实例数据
-        exhibitionBaseInformation: {
-          information: {}
-        },
-        selectRadio: {
-          information: '设备信息点',
-          initRadio: '1',
-          radioList: [
-            {
-              value: '显示需采集信息点',
-              label: '1'
-            },
-            {
-              value: '显示有值信息点',
-              label: '2'
-            },
-            {
-              value: '显示全部信息点',
-              label: '3'
-            }
-          ]
-        },
-      }
-    },
-    computed: {
-      ...mapGetters("layout", ["projectId", "userId", "secret"])
-    },
-    components: {
-      cenoteTable,
-      deviceTable,
-      systemTable,
-      exhibitionBaseInformation,
-      selectRadio
-    },
-    created() {
-      this.params = this.$route.query;
-      this.getData();
+export default {
+  data() {
+    return {
+      params: {},
+      tabsList: [
+        { Code: 'detail', Name: '竖井详情' },
+        { Code: 'device', Name: '竖井内的设备' },
+        { Code: 'cenote', Name: '连通的其它竖井' },
+        { Code: 'system', Name: '竖井内系统' },
+      ], //tab页
+      activeTab: 'detail', //当前选中的tab
+      pointData: [], //信息点数据
+      currentRadio: '1',//当前选中的select
+      exampleData: {}, //实例数据
+      exhibitionBaseInformation: {
+        information: {}
+      },
+      selectRadio: {
+        information: '设备信息点',
+        initRadio: '1',
+        radioList: [
+          {
+            value: '显示需采集信息点',
+            label: '1'
+          },
+          {
+            value: '显示有值信息点',
+            label: '2'
+          },
+          {
+            value: '显示全部信息点',
+            label: '3'
+          }
+        ]
+      },
+    }
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId", "userId", "secret"])
+  },
+  components: {
+    cenoteTable,
+    deviceTable,
+    systemTable,
+    exhibitionBaseInformation,
+    selectRadio
+  },
+  created() {
+    this.params = this.$route.query;
+    this.getData();
+  },
+  mounted() {
   },
-  mounted() { },
   watch: {
-    projectId() { }
+    projectId() {
+    }
   },
   methods: {
     deepCopy(obj) {
@@ -118,16 +121,14 @@
     },
     // 返回
     goBack() {
-      this.$router.push({name: "cenotelist"});
+      this.$router.push({ name: "cenotelist" });
     },
     getData() {
       let params1 = {
-        data: {
-          Orders: "sort asc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
-        type: 'Shaft'
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: 'shaft'
       }, params2 = {
         Filters: `ShaftID='${this.params.ShaftID}'`
       };
@@ -142,12 +143,12 @@
         })
       })
       Promise.all([promise1, promise2]).then(values => {
-        this.pointData = values[0].Content;
+        this.pointData = values[0].content;
         this.exampleData = values[1].Content[0];
         let obj = this.deepCopy(values[1].Content[0]);
         obj = tools.flattenKeys(obj);
-        for(let key in obj) {
-          if(Array.isArray(obj[key]) && !obj[key].length) {
+        for (let key in obj) {
+          if (Array.isArray(obj[key]) && !obj[key].length) {
             delete obj[key]
           }
         }
@@ -158,14 +159,14 @@
     handleRadios(val) { //判断radio的值显示关键信息,基本信息,图片,文件
       let arr = []
       if (val == 1) { //需采集信息
-        arr = this.pointData.filter(i => i.Visible)
+        arr = this.pointData.filter(i => i.visible)
       } else if (val == 2) { //有值信息点
         let list = this.pointData
         list.map(j => {
-          if (this.instance.hasOwnProperty(j.Path)) {
+          if (this.instance.hasOwnProperty(j.path)) {
             return {
               ...j,
-              value: this.instance[j.Path]
+              value: this.instance[j.path]
             }
           }
           arr = list.filter(k => k.value)
@@ -180,11 +181,11 @@
       this.currentRadio = val
     },
     formatDate(str) {
-      if(str) {
-        if(str.includes('-')) {
+      if (str) {
+        if (str.includes('-')) {
           return str
-        }else {
-          return  str.substr(0,4)+"-"+str.substr(4,2)+"-"+str.substr(6,2)+" "+str.substr(8,2) + ":" +str.substr(10,2) + ":"+str.substr(12,2)
+        } else {
+          return str.substr(0, 4) + "-" + str.substr(4, 2) + "-" + str.substr(6, 2) + " " + str.substr(8, 2) + ":" + str.substr(10, 2) + ":" + str.substr(12, 2)
         }
       } else {
         return '--'
@@ -242,7 +243,7 @@
                 Value: i.value,
                 Visible: i.Visible,
                 KeyWord: i.KeyWord,
-                InputMode:i.InputMode
+                InputMode: i.InputMode
               })
             } else {
               result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
@@ -253,7 +254,7 @@
                   Value: i.value,
                   Visible: i.Visible,
                   KeyWord: i.KeyWord,
-                  InputMode:i.InputMode
+                  InputMode: i.InputMode
                 }]
               }
             }
@@ -271,7 +272,7 @@
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        deleteCenoteTableData([{ShaftID: this.params.ShaftID}], res => {
+        deleteCenoteTableData([{ ShaftID: this.params.ShaftID }], res => {
           this.$message.success('删除成功')
           this.goBack()
         })
@@ -293,24 +294,30 @@
     border: 1px solid #dfe6ec;
     box-sizing: border-box;
     background: #fff;
+
     .header {
       padding-bottom: 10px;
+
       span {
         line-height: 33px;
         margin-left: 15px;
       }
     }
+
     .spaceTypes {
       .types {
         float: left;
         width: calc(100% - 200px);
+
         /deep/ .el-tabs__item.is-top {
           border-top: 2px solid transparent;
+
           &.is-active {
             border-top: 2px solid #409eff;
           }
         }
       }
+
       .deleBtn {
         float: left;
         width: 200px;
@@ -325,22 +332,26 @@
       flex-direction: row;
       box-sizing: border-box;
       height: calc(100% - 99px);
+
       .content-left {
         display: flex;
         flex-direction: column;
         flex: 1;
+
         .content-showType {
           height: 50px;
           border: 1px solid #ccc;
           border-bottom: none;
           box-sizing: border-box;
         }
+
         .content-point {
           display: flex;
           flex-direction: row;
           height: calc(100% - 50px);
           border: 1px solid #ccc;
           box-sizing: border-box;
+
           .content-point-left {
             flex: 1;
           }
@@ -352,6 +363,7 @@
       margin-top: 10px;
       height: calc(100% - 96px);
     }
+
     .footer {
       margin-bottom: 10px;
     }

+ 31 - 22
src/views/ledger/cenotelist/cenoteadd/index.vue

@@ -34,8 +34,11 @@ import text from "@/utils/handsontable/mainText"
 import session from "@/framework/utils/storage"
 
 import handsonTable from "@/components/common/handsontable"
-import { getDataDictionary, createCenoteTableData } from "@/api/scan/request"
+import { createCenoteTableData } from "@/api/scan/request"
+import { getDataDictionary } from "@/api/dict";
+
 import { mapGetters, mapActions } from "vuex";
+
 export default {
   components: {
     handsonTable
@@ -50,12 +53,12 @@ export default {
       showTypes: [{ value: "Visible", label: '只看采集信息' }, { value: "all", label: '全部' }],
       showType: this.$route.query.showType,
       tableHeader: [],
-      tableData: session.get("cenoteAddData")? session.get("cenoteAddData").length? session.get("cenoteAddData"): [{}]: [{}],
+      tableData: session.get("cenoteAddData") ? session.get("cenoteAddData").length ? session.get("cenoteAddData") : [{}] : [{}],
       copyTableData: []
     };
   },
   computed: {
-    ...mapGetters("layout", [ "projectId", "secret", "userId" ])
+    ...mapGetters("layout", ["projectId", "secret", "userId"])
   },
   created() {
     this.getTableHeader()
@@ -67,15 +70,13 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let param = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000,
-        },
-        type: 'Shaft'
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: 'shaft'
       }
       await getDataDictionary(param, res => {
-        this.tableHeader = res.Content
+        this.tableHeader = res.content
         this.initTable()
       })
     },
@@ -86,20 +87,20 @@ export default {
       let newData = this.tableData.filter((item) => {
         let keys = Object.keys(item)
         keys.map((key) => { //将值为空字符串的属性删除
-          if(item[key] == "") {
+          if (item[key] == "") {
             delete item[key]
           }
         })
         if (!item.ShaftLocalName) {
           flag = 1
-        } else if (!item.hasOwnProperty('StructureInfo') ||  !item.StructureInfo.ShaftFuncType) {
+        } else if (!item.hasOwnProperty('StructureInfo') || !item.StructureInfo.ShaftFuncType) {
           flag = 2
         }
-        if(keys.length && Object.keys(item).length) {
+        if (keys.length && Object.keys(item).length) {
           return item
         }
       })
-      if(!newData.length) {
+      if (!newData.length) {
         this.$message("创建信息为空,请录入信息后再创建!")
         return
       } else if (flag == 1) {
@@ -113,7 +114,7 @@ export default {
       await createCenoteTableData(params, (res) => {
         this.$message.success("添加成功!")
         session.remove("cenoteAddData")
-        this.$router.push({ name: 'cenotelist'})
+        this.$router.push({ name: 'cenotelist' })
       })
     },
     // 删除表格行
@@ -124,7 +125,7 @@ export default {
     // 添加行
     handleAddTableRow() {
       let addRowLength = this.addNum
-      for(let i = 0; i < addRowLength; i++){
+      for (let i = 0; i < addRowLength; i++) {
         this.tableData.push({})
       }
       this.initTable()
@@ -139,11 +140,11 @@ export default {
       let newData = this.tableData.filter((item) => {
         let keys = Object.keys(item)
         keys.map((key) => { //将值为空字符串的属性删除
-          if(item[key] == "") {
+          if (item[key] == "") {
             delete item[key]
           }
         })
-        if(keys.length && Object.keys(item).length) {
+        if (keys.length && Object.keys(item).length) {
           return item
         }
       })
@@ -175,7 +176,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除竖井"
@@ -276,21 +277,26 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
-    padding:0 10px 10px 10px;
+    padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 100px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 2;
     }
+
     .tableRight {
       flex: 1;
       // display: none;
@@ -298,18 +304,21 @@ export default {
       padding: 5px 15px;
       margin-right: 5px;
       box-shadow: 0px 1px 5px 0px rgba(59, 66, 84, 0.15);
-      .table_right_box::after{
+
+      .table_right_box::after {
         display: block;
         content: "";
         clear: both;
       }
+
       .close_right {
         float: right;
         cursor: pointer;
       }
     }
   }
-  .create_button{
+
+  .create_button {
     margin-top: 10px;
   }
 }

+ 53 - 33
src/views/ledger/cenotelist/index.vue

@@ -4,8 +4,9 @@
       <cenote-type @change="changeFloor"></cenote-type>
     </div>
     <el-row class="left">
-      <span style="float:right;">当前筛选条件下共{{page.total || '--'}}竖井</span>
-      <el-select v-model="onlyRead" @change="getTableHeader" style="width:100px;margin-right:20px;vertical-align:bottom;">
+      <span style="float:right;">当前筛选条件下共{{ page.total || '--' }}竖井</span>
+      <el-select v-model="onlyRead" @change="getTableHeader"
+                 style="width:100px;margin-right:20px;vertical-align:bottom;">
         <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
       </el-select>
       <el-select v-model="showType" @change="initTable" style="width:100px;margin-right:10px;vertical-align:bottom;">
@@ -26,17 +27,22 @@
         <handson-table ref="table"></handson-table>
       </div>
     </div>
-    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange" @current-change="handleCurrentChange"
-      :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper"
-      :total="page.total">
+    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange"
+                   @current-change="handleCurrentChange"
+                   :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize"
+                   layout="total, sizes, prev, pager, next, jumper"
+                   :total="page.total">
     </el-pagination>
     <!-- 不支持的输入方式 -->
     <el-dialog title="临时维护信息点" :visible.sync="myDialog.update" @close="handleCloseUpdate" width="670px">
       <el-row>
-        该信息点未定义对应组件,现在维护数据不确定后续是否可用。如确实需要维护,请点击<el-link @click="updateInputShow = true" type="primary" :underline="false">继续维护</el-link>。
+        该信息点未定义对应组件,现在维护数据不确定后续是否可用。如确实需要维护,请点击
+        <el-link @click="updateInputShow = true" type="primary" :underline="false">继续维护</el-link>
+        。
       </el-row>
       <el-row style="margin-top:20px;" v-show="updateInputShow">
-        <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 8}" placeholder="请输入内容" v-model="updateInput"></el-input>
+        <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 8}" placeholder="请输入内容"
+                  v-model="updateInput"></el-input>
       </el-row>
       <span slot="footer" class="dialog-footer">
         <el-button @click="myDialog.update = false">取 消</el-button>
@@ -52,8 +58,16 @@ import showTools from "@/utils/handsontable/notShow"
 import text from "@/utils/handsontable/mainText"
 import cenoteType from "@/components/ledger/lib/cenoteType";
 import handsonTable from "@/components/common/handsontable";
-import { getDataDictionary, queryCenoteTableData, updataCenoteTableData, deleteCenoteTableData, saveCenoteRelateSpace, BeatchQueryParam } from "@/api/scan/request"
+import { getDataDictionary } from "@/api/dict";
+import {
+  queryCenoteTableData,
+  updataCenoteTableData,
+  deleteCenoteTableData,
+  saveCenoteRelateSpace,
+  BeatchQueryParam
+} from "@/api/scan/request"
 import { mapGetters, mapActions } from "vuex";
+
 export default {
   components: {
     cenoteType,
@@ -90,10 +104,10 @@ export default {
       inputMap: {
         flowBuild: {
           InputMode: 'D1',
-          Editable:true,
-          InfoPointCode:"flowBuild",
-          InfoPointName:"建筑楼层",
-          Path:"flowBuild"
+          Editable: true,
+          InfoPointCode: "flowBuild",
+          InfoPointName: "建筑楼层",
+          Path: "flowBuild"
         }
       }, //信息点和输入方式映射表
       updateInputShow: false, //是否显示临时维护输入框
@@ -133,18 +147,16 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let param = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
-        type: 'Shaft'
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: 'shaft'
       }
       await getDataDictionary(param, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.tableHeader.forEach(item => {
-          if (item.Path) {
-            this.inputMap[item.Path] = item
+          if (item.path) {
+            this.inputMap[item.path] = item
           }
         })
         this.getTableData()
@@ -307,7 +319,7 @@ export default {
         data: "SpaceList",
         renderer: (instance, td, row, col, prop, value, cellProperties) => {
           td.style.color = "#409EFF";
-          td.innerHTML = `<span>${value?value.length:0}</span>`
+          td.innerHTML = `<span>${value ? value.length : 0}</span>`
           return td;
         },
         readOnly: true
@@ -331,7 +343,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除竖井"
@@ -471,17 +483,17 @@ export default {
       };
       this.tableHeader.map(head => {
         if (
-          head.InputMode == "L" ||
-          head.InputMode == "L1" ||
-          head.InputMode == "L2" ||
-          head.InputMode == "M"
+          head.inputMode == "L" ||
+          head.inputMode == "L1" ||
+          head.inputMode == "L2" ||
+          head.inputMode == "M"
         ) {
           data.map(item => {
-            let cur = tools.dataForKey(item, head.Path);
+            let cur = tools.dataForKey(item, head.path);
             if (cur) {
               param.data.criterias.push({
                 id: item.ShaftID,
-                code: head.InfoPointCode
+                code: head.code
               });
             }
           });
@@ -494,16 +506,16 @@ export default {
               if (item.ShaftID == child.id) {
                 if (child.data || child.data == 0) {
                   this.tableHeader.map(head => {
-                    if (head.InfoPointCode == child.code) {
-                      tools.setDataForKey(item, head.Path, child.data);
+                    if (head.code == child.code) {
+                      tools.setDataForKey(item, head.path, child.data);
                     }
                   });
                 } else {
                   this.tableHeader.map(head => {
-                    if (head.InfoPointCode == child.code) {
+                    if (head.code == child.code) {
                       tools.setDataForKey(
                         item,
-                        head.Path,
+                        head.path,
                         // child.error ? "表号功能号格式错误" : "表号功能号不存在"
                         child.error ? child.value ? "表号功能号格式错误" : "表号功能号不存在" : "暂未采集到实时数据"
                       );
@@ -528,22 +540,27 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding-bottom: 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 140px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 2;
       margin-right: 20px;
     }
+
     .tableRight {
       flex: 1;
       // display: none;
@@ -551,11 +568,13 @@ export default {
       padding: 5px 15px;
       margin-right: 5px;
       box-shadow: 0px 1px 5px 0px rgba(59, 66, 84, 0.15);
+
       .table_right_box::after {
         display: block;
         content: "";
         clear: both;
       }
+
       .close_right {
         float: right;
         cursor: pointer;
@@ -563,6 +582,7 @@ export default {
     }
   }
 }
+
 .el-pagination button,
 .el-pagination span:not([class*="suffix"]) {
   vertical-align: middle;

+ 15 - 14
src/views/ledger/cenotelist/relatedSpace.vue

@@ -216,15 +216,15 @@ export default {
       }
       else {
         let param = {
-          Cascade: [
+          cascade: [
             {
-              Name: "floor",
-              Orders: "FloorSequenceID desc, name asc",
+              name: "floor",
+              orders: "floorSequenceId desc, name asc",
             }
           ]
         };
         buildingQuery(param, res => {
-          this.buildingList = res.Content;
+          this.buildingList = res.content;
           this.handleBuildingData();
         });
       }
@@ -238,7 +238,7 @@ export default {
         // if (this.buildingList.length > 1 && this.cenoteObj.onlyRead) {
         //   this.showBuildDot = true;
         // }
-        this.changeBuilding(this.buildingList[0].BuildID);
+        this.changeBuilding(this.buildingList[0].id);
       } else {
         this.buildingList = [];
         this.building = '';
@@ -246,12 +246,12 @@ export default {
         // this.showBuildDot = false;
       }
       this.buildingList.map(item => {
-        if (item.BuildID && item.BuildLocalName) {
-          this.floorType[item.BuildID] = item.BuildLocalName;
-          if (item.Floor instanceof Array) {
-            item.Floor.map(f => {
-              if (f.FloorID && f.FloorLocalName) {
-                this.floorType[f.FloorID] = f.FloorLocalName;
+        if (item.id && item.BuildLocalName) {
+          this.floorType[item.id] = item.BuildLocalName;
+          if (item.floor instanceof Array) {
+            item.floor.map(f => {
+              if (f.id && f.localName) {
+                this.floorType[f.id] = f.localName;
               }
             })
           }
@@ -290,11 +290,11 @@ export default {
       this.buildingObj = {};
       this.building = bid;
       this.buildingList.map(item => {
-        if (item.BuildID == bid) {
+        if (item.id == bid) {
           this.buildingObj = item;
-          if (item.Floor && item.Floor.length) {
+          if (item.floor && item.floor.length) {
             // this.floor = item.Floor[0].FloorID
-            this.changeFloor(item.Floor[0]);
+            this.changeFloor(item.floor[0]);
           }
         }
       })
@@ -302,6 +302,7 @@ export default {
     },
     //更换楼层
     changeFloor(floorObj) {
+      debugger
       this.buildFloorName = `${this.buildingObj.BuildLocalName?this.buildingObj.BuildLocalName:
                               this.buildingObj.BuildName?this.buildingObj.BuildName:""}-${floorObj.FloorLocalName?
                               floorObj.FloorLocalName:floorObj.FloorName?floorObj.FloorName:""}`

+ 38 - 23
src/views/ledger/facility/addfacility.vue

@@ -4,13 +4,13 @@
       <!-- <span style="width:20px;float:left;display:block;height:20px;cursor: pointer;" @click="changeAssetsFalg">
         <i class="el-icon-fa  el-icon-fa-compass"></i>
       </span> -->
-      <span style="float:left;">当前选择的设备类型:{{category.name}}</span>
+      <span style="float:left;">当前选择的设备类型:{{ category.name }}</span>
       <el-select v-model="showType" @change="initTable" style="width:125px;margin-right:10px;vertical-align:bottom;">
         <el-option v-for="item in showTypes" :key="item.value" :label="item.label" :value="item.value"></el-option>
       </el-select>
       <span>增加</span>
       <el-input v-model="addNum" style="width:50px;" size="small"></el-input>
-      <span>个{{category.name}}</span>
+      <span>个{{ category.name }}</span>
       <el-button @click="handleAddTableRow">增加</el-button>
     </el-row>
     <div class="tableBox">
@@ -36,13 +36,16 @@
     <!-- 供应商弹窗 -->
     <supplier-dialog ref="supplier" @changeSupplier="supplierChange" :dialog="myDialog"></supplier-dialog>
     <guarantee-dialog :id="id" ref="guarantee" @change="guaranteeChange" :dialog="myDialog"></guarantee-dialog>
-    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr" :dialog="myDialog">
+    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr"
+                         :dialog="myDialog">
     </upload-files-dialog>
-    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr" :dialog="myDialog"></upload-img-dialog>
+    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr"
+                       :dialog="myDialog"></upload-img-dialog>
     <maintainer-dialog @changeMaintainer="changeMaintainer" ref="maintainer" :dialog="myDialog"></maintainer-dialog>
     <insurer-dialog @changeInsurer="changeInsurer" ref="insurer" :dialog="myDialog"></insurer-dialog>
     <pic-dialog :read="onlyRead ? true : false" :dialog="myDialog" :keysArr="picsArr" @change="changePics"></pic-dialog>
-    <system-type :device="category" :dialog="myDialog" :type="onlyRead?'read':'edit'" @change="changeSystemType" :list="systemList"></system-type>
+    <system-type :device="category" :dialog="myDialog" :type="onlyRead?'read':'edit'" @change="changeSystemType"
+                 :list="systemList"></system-type>
     <details-dialog :iframeSrc="iframeSrc" v-if="myDialog.details" :dialog="myDialog"></details-dialog>
   </div>
 </template>
@@ -56,12 +59,14 @@ import buildFloor from '@/utils/handsontable/buildFloorData'
 
 import handsonTable from "@/components/common/handsontable";
 import {
-  getDataDictionary,
+  // getDataDictionary,
   createEquip,
   createPropertyData,
   getEquipBelongs,
   createEquipAndProperty
 } from "@/api/scan/request";
+import { getDataDictionary } from "@/api/dict";
+
 import { mapGetters, mapActions } from "vuex";
 
 import qrcode from "@/components/ledger/lib/qrcode";
@@ -75,6 +80,7 @@ import uploadFilesDialog from "@/components/dialogs/list/filesDialog";
 import uploadImgDialog from "@/components/dialogs/list/uploadImgDialog";
 import picDialog from "@/components/dialogs/list/picDialog";
 import systemType from "@/components/dialogs/list/systemType";
+
 export default {
   components: {
     qrcode, //二维码页面
@@ -94,7 +100,10 @@ export default {
     return {
       addNum: 1,
       onlyRead: false,
-      showTypes: [{ value: "partInfo", label: '隐藏信息点' }, { value: "all", label: '全部' }, { value: "Visible", label: '只看采集信息' }],
+      showTypes: [{ value: "partInfo", label: '隐藏信息点' }, { value: "all", label: '全部' }, {
+        value: "Visible",
+        label: '只看采集信息'
+      }],
       tableHeader: [],
       tableData: session.get("deviceAddData")
         ? session.get("deviceAddData").length
@@ -149,13 +158,13 @@ export default {
     getBelongs() {
       let params = {
         data: {
-          Filters: `EquipCode='${this.category.deviceId}'`,
-          PageNumber: 1,
-          PageSize: 50
+          filters: `equipCode='${this.category.deviceId}'`,
+          pageNumber: 1,
+          pageSize: 50
         }
       }
       getEquipBelongs(params, res => {
-        this.firmId = res.Content[0].Family;
+        this.firmId = res.content[0].family;
       })
     },
     //维护建筑
@@ -204,15 +213,13 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let params = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.category.deviceId
       };
       await getDataDictionary(params, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.initTable();
       });
     },
@@ -365,10 +372,10 @@ export default {
           position: "after"
         }
       }, {
-          data: "LinkSystem",
-          renderer: text.systemList,
-          readOnly: true
-        });
+        data: "LinkSystem",
+        renderer: text.systemList,
+        readOnly: true
+      });
       if (this.floorFlag) {
         data.splice(1, 0, {
           data: "flowBuild",
@@ -390,7 +397,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除设备"
@@ -641,7 +648,10 @@ export default {
           if (this.onlyRead) {
             this.$router.push({ path: '/ledger/parts', query: { deviceId: infos.EquipID } });
           } else {
-            this.$router.push({ path: '/ledger/partsmanage', query: { deviceId: infos.EquipID, typeId: this.mess.deviceId } });
+            this.$router.push({
+              path: '/ledger/partsmanage',
+              query: { deviceId: infos.EquipID, typeId: this.mess.deviceId }
+            });
           }
           break;
         default:
@@ -680,22 +690,27 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 100px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 1;
     }
   }
+
   .create_button {
     margin-top: 10px;
   }

File diff suppressed because it is too large
+ 519 - 509
src/views/ledger/facility/details/index.vue


File diff suppressed because it is too large
+ 485 - 477
src/views/ledger/facility/details/index_old.vue


+ 9 - 8
src/views/ledger/facility/parts/index.vue

@@ -68,7 +68,7 @@ import {
   deleteParts,
   BeatchQueryParam
 } from "@/api/scan/request";
-import {getDataDictionary} from "@/api/dict";
+import { getDataDictionary } from "@/api/dict";
 import {mapGetters, mapActions} from "vuex";
 
 export default {
@@ -467,19 +467,20 @@ export default {
           criterias: []
         }
       };
+      debugger
       this.tableHeader.map(head => {
         if (
-          head.InputMode == "L" ||
-          head.InputMode == "L1" ||
-          head.InputMode == "L2" ||
-          head.InputMode == "M"
+          head.inputMode == "L" ||
+          head.inputMode == "L1" ||
+          head.inputMode == "L2" ||
+          head.inputMode == "M"
         ) {
           data.map(item => {
-            let cur = tools.dataForKey(item, head.Path);
+            let cur = tools.dataForKey(item, head.path);
             if (cur) {
               param.data.criterias.push({
-                id: item.EquipID,
-                code: head.InfoPointCode
+                id: item.id,
+                code: head.code
               });
             }
           });

+ 28 - 19
src/views/ledger/facility/partsmanage/addparts/index.vue

@@ -1,7 +1,7 @@
 <template>
   <div id="deviceList">
     <el-row class="left">
-      <span style="float:right;">当前选择的部件类型:{{category.Name}}</span>
+      <span style="float:right;">当前选择的部件类型:{{ category.Name }}</span>
       <!-- <div style="width:200px;display:inline-block;text-align:left;color:gray;">
         <span>隐藏自动填充的信息</span>
         <el-checkbox v-model="isWatch" @change="getTableHeader"></el-checkbox>
@@ -12,7 +12,7 @@
       </el-select>
       <span>增加</span>
       <el-input v-model="addNum" style="width:50px;" size="small"></el-input>
-      <span>个{{category.Name}}</span>
+      <span>个{{ category.Name }}</span>
       <el-button @click="handleAddTableRow">增加</el-button>
     </el-row>
     <div class="tableBox">
@@ -38,9 +38,11 @@
     <!-- 供应商弹窗 -->
     <supplier-dialog ref="supplier" @changeSupplier="supplierChange" :dialog="myDialog"></supplier-dialog>
     <guarantee-dialog :id="id" ref="guarantee" @change="guaranteeChange" :dialog="myDialog"></guarantee-dialog>
-    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr" :dialog="myDialog">
+    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr"
+                         :dialog="myDialog">
     </upload-files-dialog>
-    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr" :dialog="myDialog"></upload-img-dialog>
+    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr"
+                       :dialog="myDialog"></upload-img-dialog>
     <maintainer-dialog @changeMaintainer="changeMaintainer" ref="maintainer" :dialog="myDialog"></maintainer-dialog>
     <insurer-dialog @changeInsurer="changeInsurer" ref="insurer" :dialog="myDialog"></insurer-dialog>
     <pic-dialog :read="onlyRead ? true : false" :dialog="myDialog" :keysArr="picsArr" @change="changePics"></pic-dialog>
@@ -56,11 +58,13 @@ import session from "@/framework/utils/storage";
 
 import handsonTable from "@/components/common/handsontable";
 import {
-  getDataDictionary,
+  // getDataDictionary,
   createPart,
   createPropertyData,
   getEquipBelongs
 } from "@/api/scan/request";
+import { getDataDictionary } from "@/api/dict";
+
 import { mapGetters, mapActions } from "vuex";
 
 import qrcode from "@/components/ledger/lib/qrcode";
@@ -73,6 +77,7 @@ import guaranteeDialog from "@/components/dialogs/list/guaranteeDialog";
 import uploadFilesDialog from "@/components/dialogs/list/filesDialog";
 import uploadImgDialog from "@/components/dialogs/list/uploadImgDialog";
 import picDialog from "@/components/dialogs/list/picDialog";
+
 export default {
   components: {
     qrcode, //二维码页面
@@ -147,28 +152,26 @@ export default {
     getBelongs() {
       let params = {
         data: {
-          Filters: `EquipCode='${this.category.Code}'`,
-          PageNumber: 1,
-          PageSize: 50
+          filters: `equipCode='${this.category.Code}'`,
+          pageNumber: 1,
+          pageSize: 50
         }
       }
       getEquipBelongs(params, res => {
-        this.firmId = res.Content[0].Family;
+        this.firmId = res.content[0].family;
       })
     },
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let params = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.category.Code
         // Filters: `type='Equipment' or type='${this.category.Code}'`
       };
       await getDataDictionary(params, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.initTable();
       });
     },
@@ -208,14 +211,15 @@ export default {
         newData[i].Family = this.firmId;
         //待接口修改为关联创建
         let param = {
-          Cascade:[],
-          Content:[newData[i]]
+          Cascade: [],
+          Content: [newData[i]]
         }
 
         await createPart(param, async res => {
           if (newData[i].Checked) {//同时创建资产
             param.Content[0].EquipmentId = res.EntityList[0].EquipID
-            await createPropertyData(param, res => { })
+            await createPropertyData(param, res => {
+            })
           }
           if (i == newData.length - 1) {
             this.$message.success('创建成功')
@@ -320,7 +324,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除部件"
@@ -571,22 +575,27 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 100px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 1;
     }
   }
+
   .create_button {
     margin-top: 10px;
   }

+ 44 - 29
src/views/ledger/facility/partsmanage/index.vue

@@ -2,7 +2,8 @@
   <div id="deviceList">
     <el-row>
       <el-tabs @tab-click="tabsClick" v-model="tabVal">
-        <el-tab-pane v-for="t in partsTypeList" :key="t.Id" :name="t.Code" :label="t.Name+'('+t.Count+')'"></el-tab-pane>
+        <el-tab-pane v-for="t in partsTypeList" :key="t.Id" :name="t.Code"
+                     :label="t.Name+'('+t.Count+')'"></el-tab-pane>
       </el-tabs>
     </el-row>
     <el-row class="left">
@@ -22,7 +23,7 @@
         <span style="width:20px;float:left;display:block;height:20px;cursor: pointer;" @click="changeAssetsFalg">
           <i v-show="!onlyRead" class="el-icon-fa  el-icon-fa-compass"></i>
         </span>
-        <span>当前筛选条件下共{{page.total || '--'}}部件</span>
+        <span>当前筛选条件下共{{ page.total || '--' }}部件</span>
       </div>
     </el-row>
     <div class="tableBox">
@@ -36,9 +37,11 @@
         <handson-table ref="table"></handson-table>
       </div>
     </div>
-    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange" @current-change="handleCurrentChange"
-      :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper"
-      :total="page.total"></el-pagination>
+    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange"
+                   @current-change="handleCurrentChange"
+                   :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize"
+                   layout="total, sizes, prev, pager, next, jumper"
+                   :total="page.total"></el-pagination>
     <!-- 二维码弹窗 -->
     <qrcode :dialog="myDialog" :qrcodeUrl="qrcodeUrl" :addBody="true" ref="qrcode"></qrcode>
     <!-- 型号弹窗 -->
@@ -48,9 +51,11 @@
     <!-- 供应商弹窗 -->
     <supplier-dialog ref="supplier" @changeSupplier="supplierChange" :dialog="myDialog"></supplier-dialog>
     <guarantee-dialog :id="id" ref="guarantee" @change="guaranteeChange" :dialog="myDialog"></guarantee-dialog>
-    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr" :dialog="myDialog">
+    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr"
+                         :dialog="myDialog">
     </upload-files-dialog>
-    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr" :dialog="myDialog"></upload-img-dialog>
+    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr"
+                       :dialog="myDialog"></upload-img-dialog>
     <maintainer-dialog @changeMaintainer="changeMaintainer" ref="maintainer" :dialog="myDialog"></maintainer-dialog>
     <insurer-dialog @changeInsurer="changeInsurer" ref="insurer" :dialog="myDialog"></insurer-dialog>
     <pic-dialog :read="onlyRead ? true : false" :dialog="myDialog" :keysArr="picsArr" @change="changePics"></pic-dialog>
@@ -84,12 +89,14 @@ import text from "@/utils/handsontable/mainText";
 import handsonTable from "@/components/common/handsontable";
 import {
   getPartsAllType,
-  getDataDictionary,
+  // getDataDictionary,
   getEquipPartsCon,
   updateParts,
   deleteParts,
   getEquipBelongs
 } from "@/api/scan/request";
+import { getDataDictionary } from "@/api/dict";
+
 import { mapGetters, mapActions } from "vuex";
 
 import qrcode from "@/components/ledger/lib/qrcode";
@@ -103,6 +110,7 @@ import uploadFilesDialog from "@/components/dialogs/list/filesDialog";
 import uploadImgDialog from "@/components/dialogs/list/uploadImgDialog";
 import picDialog from "@/components/dialogs/list/picDialog";
 import changeRea from "@/components/dialogs/changeRea"
+
 export default {
   components: {
     qrcode, //二维码页面
@@ -142,10 +150,10 @@ export default {
       inputMap: {
         flowBuild: {
           InputMode: 'D1',
-          Editable:true,
-          InfoPointCode:"flowBuild",
-          InfoPointName:"建筑楼层",
-          Path:"flowBuild"
+          Editable: true,
+          InfoPointCode: "flowBuild",
+          InfoPointName: "建筑楼层",
+          Path: "flowBuild"
         }
       }, //信息点和输入方式映射表
       updateInputShow: false, //是否显示临时维护输入框
@@ -201,16 +209,16 @@ export default {
     getBelongs() {
       let params = {
         data: {
-          Filters: `EquipCode='${this.tabVal}'`,
-          PageNumber: 1,
-          PageSize: 50
+          filters: `equipCode='${this.tabVal}'`,
+          pageNumber: 1,
+          pageSize: 50
         }
       }
       getEquipBelongs(params, res => {
-        if (res.Content.length) {
-          this.firmId = res.Content[0].Family;
-          this.deviceType.assetType = res.Content[0].Family
-          this.deviceType.assetName = res.Content[0].FamilyName
+        if (res.content.length) {
+          this.firmId = res.content[0].family;
+          this.deviceType.assetType = res.content[0].family
+          this.deviceType.assetName = res.content[0].familyName
         }
       })
     },
@@ -236,18 +244,16 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let params = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.tabVal
       };
       await getDataDictionary(params, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.tableHeader.forEach(item => {
-          if (item.Path) {
-            this.inputMap[item.Path] = item
+          if (item.path) {
+            this.inputMap[item.path] = item
           }
         })
         this.getTableData();
@@ -308,7 +314,8 @@ export default {
         param.data.Content.push(item);
       });
       param.Projection = []
-      await updateParts(param, res => { });
+      await updateParts(param, res => {
+      });
     },
     // 删除表格数据
     async deleteTableData(params) {
@@ -741,7 +748,10 @@ export default {
           if (this.onlyRead) {
             this.$router.push({ path: '/ledger/parts', query: { deviceId: infos.EquipID } });
           } else {
-            this.$router.push({ path: '/ledger/partsmanage', query: { deviceId: infos.EquipID, typeId: this.mess.deviceId } });
+            this.$router.push({
+              path: '/ledger/partsmanage',
+              query: { deviceId: infos.EquipID, typeId: this.mess.deviceId }
+            });
           }
           break;
         default:
@@ -832,24 +842,29 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 150px);
     margin-top: 10px;
+
     .tableLeft,
     .middle_sty {
       flex: 1;
     }
   }
 }
+
 .el-pagination button,
 .el-pagination span:not([class*="suffix"]) {
   vertical-align: middle;

+ 44 - 33
src/views/ledger/property/addproperty.vue

@@ -1,13 +1,13 @@
 <template>
   <div id="deviceList">
     <el-row class="right">
-      <span style="float:left;">当前选择的设备族:{{category.name}}</span>
+      <span style="float:left;">当前选择的设备族:{{ category.name }}</span>
       <el-select v-model="showType" @change="initTable" style="width:125px;margin-right:10px;vertical-align:bottom;">
         <el-option v-for="item in showTypes" :key="item.value" :label="item.label" :value="item.value"></el-option>
       </el-select>
       <span>增加</span>
       <el-input v-model="addNum" style="width:50px;" size="small"></el-input>
-      <span>个{{category.name}}</span>
+      <span>个{{ category.name }}</span>
       <el-button @click="handleAddTableRow">增加</el-button>
     </el-row>
     <div class="tableBox">
@@ -31,8 +31,10 @@
     <!-- 供应商弹窗 -->
     <supplier-dialog ref="supplier" @changeSupplier="supplierChange" :dialog="myDialog"></supplier-dialog>
     <guarantee-dialog :id="id" ref="guarantee" @change="guaranteeChange" :dialog="myDialog"></guarantee-dialog>
-    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr" :dialog="myDialog"></upload-files-dialog>
-    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr" :dialog="myDialog"></upload-img-dialog>
+    <upload-files-dialog :read="onlyRead ? true : false" ref="upload" @changeFile="fileChange" :keysArr="filesArr"
+                         :dialog="myDialog"></upload-files-dialog>
+    <upload-img-dialog :read="onlyRead ? true : false" @changeFile="imgChange" :keysArr="imgsArr"
+                       :dialog="myDialog"></upload-img-dialog>
     <maintainer-dialog @changeMaintainer="changeMaintainer" ref="maintainer" :dialog="myDialog"></maintainer-dialog>
     <insurer-dialog @changeInsurer="changeInsurer" ref="insurer" :dialog="myDialog"></insurer-dialog>
     <pic-dialog :read="onlyRead ? true : false" :dialog="myDialog" :keysArr="picsArr" @change="changePics"></pic-dialog>
@@ -48,7 +50,9 @@ import session from "@/framework/utils/storage"
 import buildFloor from '@/utils/handsontable/buildFloorData'
 
 import handsonTable from "@/components/common/handsontable"
-import { getDataDictionary, createPropertyData } from "@/api/scan/request"
+import { createPropertyData } from "@/api/scan/request"
+import { getDataDictionary } from "@/api/dict";
+
 import { mapGetters, mapActions } from "vuex"
 
 import firm from "@/components/dialogs/list/firm"
@@ -60,6 +64,7 @@ import guaranteeDialog from "@/components/dialogs/list/guaranteeDialog"
 import uploadFilesDialog from "@/components/dialogs/list/filesDialog"
 import uploadImgDialog from "@/components/dialogs/list/uploadImgDialog"
 import picDialog from "@/components/dialogs/list/picDialog"
+
 export default {
   components: {
     firm, //品牌型号弹窗
@@ -77,7 +82,10 @@ export default {
     return {
       addNum: 1,
       onlyRead: false,
-      showTypes: [{ value: "partInfo", label: '隐藏信息点' }, { value: "all", label: '全部' }, { value: "Visible", label: '只看采集信息' }],
+      showTypes: [{ value: "partInfo", label: '隐藏信息点' }, { value: "all", label: '全部' }, {
+        value: "Visible",
+        label: '只看采集信息'
+      }],
       buildFloorData: [],
       tableHeader: [],
       tableData: session.get("propertyAddData")
@@ -125,15 +133,13 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let params = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.category.Family
       };
       await getDataDictionary(params, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.initTable();
       });
     },
@@ -159,35 +165,35 @@ export default {
       }
       let flag = false;
       newData.map(item => {
-				item.Family = this.category.Family
+        item.Family = this.category.Family
         if (!item.EquipLocalName) {
           flag = true
         }
         // 处理建筑-楼层
         if (item.flowBuild) {
-					let BuildingId = item.flowBuild.split("-")[0]
-					let FloorId = item.flowBuild.split("-")[1]
-					if (BuildingId && FloorId) {
-						item.BuildingId = BuildingId
-          	item.FloorId = FloorId
-					} else if (BuildingId && !FloorId) {
-						item.BuildingId = BuildingId
-					}
-				}
+          let BuildingId = item.flowBuild.split("-")[0]
+          let FloorId = item.flowBuild.split("-")[1]
+          if (BuildingId && FloorId) {
+            item.BuildingId = BuildingId
+            item.FloorId = FloorId
+          } else if (BuildingId && !FloorId) {
+            item.BuildingId = BuildingId
+          }
+        }
       })
       if (flag) {
         this.$message.info("存在设备的本地名称为空,请检查")
         return;
-			}
-			params.Content = newData
-			await createPropertyData(params, res => {
+      }
+      params.Content = newData
+      await createPropertyData(params, res => {
         this.$message.success("添加成功!")
         session.remove("propertyAddData")
-				this.$router.push({
-					name: "propertyLedger",
-					params: { Family: this.category.Family }
-				})
-			})
+        this.$router.push({
+          name: "propertyLedger",
+          params: { Family: this.category.Family }
+        })
+      })
     },
     // 删除表格行
     handleDeleteTableRow() {
@@ -197,7 +203,7 @@ export default {
     // 添加行
     handleAddTableRow() {
       let addRowLength = this.addNum
-      for(let i = 0; i < addRowLength; i++){
+      for (let i = 0; i < addRowLength; i++) {
         this.tableData.push({})
       }
       this.initTable()
@@ -241,7 +247,7 @@ export default {
         renderer: tools.customDropdownRenderer,
         editor: "chosen",
         chosenOptions: {
-            data: this.buildFloorData
+          data: this.buildFloorData
         }
       })
       return data
@@ -254,7 +260,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除资产"
@@ -505,22 +511,27 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 100px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 1;
     }
   }
+
   .create_button {
     margin-top: 10px;
   }

+ 432 - 423
src/views/ledger/property/details/index.vue

@@ -2,7 +2,7 @@
   <div class="tableDisplay">
     <div class="header">
       <el-button style="float:left;" size="small" type="default" icon="el-icon-back" @click="goBack"></el-button>
-      <span :title="`${name} - ${code}`" class="details-title"><b>{{name}} - {{code}}</b></span>
+      <span :title="`${name} - ${code}`" class="details-title"><b>{{ name }} - {{ code }}</b></span>
     </div>
     <div class="content">
       <el-scrollbar style="height:100%;">
@@ -42,7 +42,8 @@
           icon="el-icon-arrow-left">
           上一页
         </el-button>
-        <el-select size="mini" style="float:left;margin:0 10px;" v-model="id" @change="handleChangeExample" placeholder="请选择">
+        <el-select size="mini" style="float:left;margin:0 10px;" v-model="id" @change="handleChangeExample"
+                   placeholder="请选择">
           <el-option
             v-for="item in list"
             :key="item.value"
@@ -63,489 +64,497 @@
 </template>
 
 <script>
-  import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
-  import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
-  import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
-  import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
-  import exhibitionCrux from "@/components/ledger/details/detail/exhibitionCrux";
-  import selectRadio from "@/components/ledger/details/detail/selectRadio";
+import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
+import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
+import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
+import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
+import exhibitionCrux from "@/components/ledger/details/detail/exhibitionCrux";
+import selectRadio from "@/components/ledger/details/detail/selectRadio";
+import { getDataDictionary } from "@/api/dict";
+import { queryProperty } from "@/api/scan/request";
+import { mapGetters } from "vuex";
+import tools from "@/utils/scan/tools"
 
-  import {getDataDictionary, queryProperty} from "@/api/scan/request";
-  import {mapGetters} from "vuex";
-  import tools from "@/utils/scan/tools"
 
-
-  export default {
-    name: "propertyDetails",
-    components: {
-      exhibitionBaseInformation,
-      exhibitionFile,
-      exhibitionImage,
-      selectRadio,
-      exhibitionCrux,
-      exhibitionVideo
-    },
-    created() {
-      this.id = this.$route.query.equipId;
-      this.name = this.$route.query.equipName;
-      this.code = this.$route.query.equipCode;
-      this.type = this.$route.query.type;
-      this.list = this.$route.query.data;
-      this.getData();
-      console.log(this.$route.query)
-    },
-    computed: {
-      ...mapGetters("layout", ["projectId", "secret", "userId"])
-    },
-    data() {
-      return {
-        id: '', //当前资产id
-        name: '', //当前资产本地名称
-        code: '', //当前资产的本地编码
-        type: '', //资产类型
-        list: [], //资产列表
-        pointData: [], //信息点数据
-        currentRadio: '1',//当前选中的select
-        selectRadio: {
-          information: '设备信息点',
-          initRadio: '1',
-          radioList: [
-            {
-              value: '显示需采集信息点',
-              label: '1'
-            },
-            {
-              value: '显示有值信息点',
-              label: '2'
-            },
-            {
-              value: '显示全部信息点',
-              label: '3'
-            }
-          ]
-        },
-        exhibitionBaseInformation: {
-          information: {}
-        },
-        exhibitionFile: {
-          title: '文件',
-          list: {}
-        },
-        exhibitionCrux: {
-          title: '关键信息点:',
-          cruxArray: [],
-          allMessage: [],//全部信息点
-        },
-        exhibitionImage: {
-          title: '图片',
-          list: {},
-          arr:[]
-        },
-        exhibitionVideo: {
-          title: '视频',
-          list: {}
-        },
-        instance: {},//实例信息处理
-        isShowImage: true,
-        isShowVideo: true,
-        isShowFile: true,
-      }
-    },
-    methods: {
-      deepCopy(obj) {
-        return JSON.parse(JSON.stringify(obj))
+export default {
+  name: "propertyDetails",
+  components: {
+    exhibitionBaseInformation,
+    exhibitionFile,
+    exhibitionImage,
+    selectRadio,
+    exhibitionCrux,
+    exhibitionVideo
+  },
+  created() {
+    this.id = this.$route.query.equipId;
+    this.name = this.$route.query.equipName;
+    this.code = this.$route.query.equipCode;
+    this.type = this.$route.query.type;
+    this.list = this.$route.query.data;
+    this.getData();
+    console.log(this.$route.query)
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId", "secret", "userId"])
+  },
+  data() {
+    return {
+      id: '', //当前资产id
+      name: '', //当前资产本地名称
+      code: '', //当前资产的本地编码
+      type: '', //资产类型
+      list: [], //资产列表
+      pointData: [], //信息点数据
+      currentRadio: '1',//当前选中的select
+      selectRadio: {
+        information: '设备信息点',
+        initRadio: '1',
+        radioList: [
+          {
+            value: '显示需采集信息点',
+            label: '1'
+          },
+          {
+            value: '显示有值信息点',
+            label: '2'
+          },
+          {
+            value: '显示全部信息点',
+            label: '3'
+          }
+        ]
       },
-      cruxSuccess(){
-        this.getData()
+      exhibitionBaseInformation: {
+        information: {}
       },
-      // 获取表头和实例数据
-      getData () {
-        let params1 = {
-          data: {
-            Orders: "sort asc",
-            PageNumber: 1,
-            PageSize: 1000
-          },
-          type: this.type
-        }, params2 = {
-          Filters: `EquipID='${this.id}'`,
-        };
-        let promise1 = new Promise((resolve, reject) => {
-          getDataDictionary(params1, res => {
-            resolve(res)
-          })
+      exhibitionFile: {
+        title: '文件',
+        list: {}
+      },
+      exhibitionCrux: {
+        title: '关键信息点:',
+        cruxArray: [],
+        allMessage: [],//全部信息点
+      },
+      exhibitionImage: {
+        title: '图片',
+        list: {},
+        arr: []
+      },
+      exhibitionVideo: {
+        title: '视频',
+        list: {}
+      },
+      instance: {},//实例信息处理
+      isShowImage: true,
+      isShowVideo: true,
+      isShowFile: true,
+    }
+  },
+  methods: {
+    deepCopy(obj) {
+      return JSON.parse(JSON.stringify(obj))
+    },
+    cruxSuccess() {
+      this.getData()
+    },
+    // 获取表头和实例数据
+    getData() {
+      let params1 = {
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: this.type
+      }, params2 = {
+        filters: `equipId='${this.id}'`,
+      };
+      let promise1 = new Promise((resolve, reject) => {
+        getDataDictionary(params1, res => {
+          resolve(res)
         })
-        let promise2 = new Promise((resolve, reject) => {
-          queryProperty(params2, res => {
-            resolve(res)
-          })
+      })
+      let promise2 = new Promise((resolve, reject) => {
+        queryProperty(params2, res => {
+          resolve(res)
         })
-        Promise.all([promise1, promise2]).then(values => {
-          this.pointData = values[0].Content;
-          this.exampleData = values[1].Content[0];
-          this.name = this.exampleData.EquipLocalName?this.exampleData.EquipLocalName:this.exampleData.EquipName?this.exampleData.EquipName:'';
-          this.code = this.exampleData.EquipLocalID?this.exampleData.EquipLocalID:'';
-          let obj = this.deepCopy(values[1].Content[0]);
-          obj = tools.flattenKeys(obj);
-          for(let key in obj) {
-            if(Array.isArray(obj[key]) && !obj[key].length) {
-              delete obj[key]
-            }
+      })
+      Promise.all([promise1, promise2]).then(values => {
+        this.pointData = values[0].content;
+        this.exampleData = values[1].content[0];
+        this.name = this.exampleData.localName ? this.exampleData.localName : this.exampleData.name ? this.exampleData.name : '';
+        this.code = this.exampleData.localId ? this.exampleData.localId : '';
+        let obj = this.deepCopy(values[1].content[0]);
+        obj = tools.flattenKeys(obj);
+        for (let key in obj) {
+          if (Array.isArray(obj[key]) && !obj[key].length) {
+            delete obj[key]
           }
-          this.instance = obj;
-          this.handleRadios(this.currentRadio)
-          this.handleEnclosure() //处理图片视频文件信息
-        })
-      },
-      handleEnclosure() {
-        //图片文件处理,脱离radio控制
-        let isList = this.pointData
-        let isArr = []
-        isList.map(j => {
-          if (this.instance.hasOwnProperty(j.Path)) {
-            j.value = this.instance[j.Path]
-            return j
+        }
+        this.instance = obj;
+        this.handleRadios(this.currentRadio)
+        this.handleEnclosure() //处理图片视频文件信息
+      })
+    },
+    handleEnclosure() {
+      //图片文件处理,脱离radio控制
+      let isList = this.pointData
+      let isArr = []
+      isList.map(j => {
+        if (this.instance.hasOwnProperty(j.path)) {
+          j.value = this.instance[j.path]
+          return j
+        }
+      })
+      isArr = isList.filter(k => k.value)
+      this.handlePicList(isArr)
+      this.handleFileList(isArr)
+    },
+    handleRadios(val) { //判断radio的值显示关键信息,基本信息,图片,文件
+      let arr = []
+      //关键信息点
+      this.exhibitionCrux.cruxArray = this.pointData.filter(i => i.keyWord)
+      this.exhibitionCrux.cruxArray.map(i => {
+        if (this.instance.hasOwnProperty(i.path)) {
+          return {
+            ...i,
+            value: this.instance[i.path]
           }
-        })
-        isArr = isList.filter(k => k.value)
-        this.handlePicList(isArr)
-        this.handleFileList(isArr)
-      },
-      handleRadios(val) { //判断radio的值显示关键信息,基本信息,图片,文件
-        let arr = []
-        //关键信息点
-        this.exhibitionCrux.cruxArray = this.pointData.filter(i => i.KeyWord)
-        this.exhibitionCrux.cruxArray.map(i => {
-          if (this.instance.hasOwnProperty(i.Path)) {
+        }
+      })
+      if (val == 1) { //需采集信息
+        arr = this.pointData.filter(i => i.visible)
+
+        //  图片和的处理
+        // this.handlePicList(arr)
+        // //  文件处理
+        // this.handleFileList(arr)
+
+      } else if (val == 2) { //有值信息点
+        let list = this.pointData
+        list.map(j => {
+          if (this.instance.hasOwnProperty(j.path)) {
             return {
-              ...i,
-              value: this.instance[i.Path]
+              ...j,
+              value: this.instance[j.path]
             }
           }
-        })
-        if (val == 1) { //需采集信息
-          arr = this.pointData.filter(i => i.Visible)
-
-          //  图片和的处理
+          arr = list.filter(k => k.value)
           // this.handlePicList(arr)
-          // //  文件处理
           // this.handleFileList(arr)
+        })
+      } else { //全部信息点
+        arr = this.pointData
+        // this.handlePicList(arr)
+        // this.handleFileList(arr)
+      }
+      this.displayData(arr)
+    },
+    handlePicList(arr) {
+      let picObject = {}
+      //处理数据格式
+      arr.map(i => {
+        debugger
+        if (i.inputMode == 'F2') {
+          switch (i.path) {
+            case 'LedgerParam.PhotoDoc.Drawing':
+            case 'LedgerParam.Siteinstall.InstallPic':
+            case 'LedgerParam.Siteinstall.InstallDrawing':
+            case 'LedgerParam.PhotoDoc.Nameplate':
+            case 'LedgerParam.PhotoDoc.Pic':
+              if (this.instance.hasOwnProperty(i.path)) {
+                i.PicList = this.instance[i.path]
+              }
+              if (picObject[i.name]) {
 
-        } else if (val == 2) { //有值信息点
-          let list = this.pointData
-          list.map(j => {
-            if (this.instance.hasOwnProperty(j.Path)) {
-              return {
-                ...j,
-                value: this.instance[j.Path]
+              } else {
+                picObject[i.name] = []
               }
-            }
-            arr = list.filter(k => k.value)
-            // this.handlePicList(arr)
-            // this.handleFileList(arr)
-          })
-        } else { //全部信息点
-          arr = this.pointData
-          // this.handlePicList(arr)
-          // this.handleFileList(arr)
-        }
-        this.displayData(arr)
-      },
-      handlePicList(arr) {
-        let picObject = {}
-        //处理数据格式
-        arr.map(i => {
-          if(i.InputMode == 'F2') {
-            switch (i.Path) {
-              case 'LedgerParam.PhotoDoc.Drawing':
-              case 'LedgerParam.Siteinstall.InstallPic':
-              case 'LedgerParam.Siteinstall.InstallDrawing':
-              case 'LedgerParam.PhotoDoc.Nameplate':
-              case 'LedgerParam.PhotoDoc.Pic':
-                if (this.instance.hasOwnProperty(i.Path)) {
-                  i.PicList = this.instance[i.Path]
-                }
-                if (picObject[i.InfoPointName]) {
+              picObject[i.name].push({
+                ...i,
+              })
+              break;
 
-                } else {
-                  picObject[i.InfoPointName] = []
-                }
-                picObject[i.InfoPointName].push({
-                  ...i,
-                })
-                break;
+          }
+        }
 
+      })
+      //展示图片
+      this.exhibitionImage.list = picObject
+      let isArray = [] //获取图片数组
+      for (let i in picObject) {
+        if (Array.isArray(picObject[i])) {
+          let list = picObject[i]
+          list.forEach(i => {
+            if (i.PicList) {
+              isArray.push(...i.PicList)
             }
-          }
+          })
+        }
+      }
+      this.exhibitionImage.arr = isArray
+      let video = isArray.filter(i => i.Type == 'video' && i.type == 'video')
+      this.exhibitionVideo.list = video
+      //判断是否显示图片组件
+      this.isShowImage = isArray.length ? true : false
+      //判断是否显示video组件
+      this.isShowVideo = video.length ? true : false
+    },
+    handleFileList(arr) {
+      let picObject = {}
+      //处理数据格式
+      arr.map(i => {
+        if (i.InputMode == 'F2') {
+          switch (i.Path) {
+            case 'LedgerParam.InsuranceDoc.InsuranceFile':
+            case 'LedgerParam.PhotoDoc.Archive':
+            case 'LedgerParam.Siteinstall.CheckReport':
+              if (this.instance.hasOwnProperty(i.Path)) {
+                i.fileList = this.instance[i.Path]
+              }
+              if (picObject[i.InfoPointName]) {
 
-        })
-        //展示图片
-        this.exhibitionImage.list = picObject
-        let isArray = [] //获取图片数组
-        for (let i in picObject) {
-          if (Array.isArray(picObject[i])) {
-            let list = picObject[i]
-            list.forEach(i => {
-              if (i.PicList) {
-                isArray.push(...i.PicList)
+              } else {
+                picObject[i.InfoPointName] = []
               }
-            })
+
+              picObject[i.InfoPointName].push({
+                ...i,
+              })
+              break
           }
         }
-        this.exhibitionImage.arr = isArray
-        let video = isArray.filter(i => i.Type =='video' && i.type == 'video' )
-        this.exhibitionVideo.list = video
-        //判断是否显示图片组件
-        this.isShowImage = isArray.length ? true : false
-        //判断是否显示video组件
-        this.isShowVideo = video.length ? true : false
-      },
-      handleFileList(arr) {
-        let picObject = {}
-        //处理数据格式
-        arr.map(i => {
-          if (i.InputMode == 'F2') {
-            switch (i.Path) {
-              case 'LedgerParam.InsuranceDoc.InsuranceFile':
-              case 'LedgerParam.PhotoDoc.Archive':
-              case 'LedgerParam.Siteinstall.CheckReport':
-                if (this.instance.hasOwnProperty(i.Path)) {
-                  i.fileList = this.instance[i.Path]
-                }
-                if (picObject[i.InfoPointName]) {
-
-                } else {
-                  picObject[i.InfoPointName] = []
-                }
 
-                picObject[i.InfoPointName].push({
-                  ...i,
-                })
-                break
+      })
+      //展示文件
+      this.exhibitionFile.list = picObject
+      let isArray = [] //获取文件数组
+      for (let i in picObject) {
+        if (Array.isArray(picObject[i])) {
+          let list = picObject[i]
+          list.forEach(i => {
+            if (i.fileList) {
+              isArray.push(...i.fileList)
             }
-          }
-
-        })
-        //展示文件
-        this.exhibitionFile.list = picObject
-        let isArray = [] //获取文件数组
-        for (let i in picObject) {
-          if (Array.isArray(picObject[i])) {
-            let list = picObject[i]
-            list.forEach(i => {
-              if (i.fileList) {
-                isArray.push(...i.fileList)
-              }
-            })
-          }
+          })
         }
-        //判断是否显示文件组件
-        this.isShowFile = isArray.length ? true : false
-      },
-      changeRadio(val) { //1,需采集,2,有值,3,全部
-        this.handleRadios(val)
-        this.currentRadio = val
-      },
-      formatDate(str) {
-        if(str) {
-          if(str.includes('-')) {
-            return str
-          }else {
-            return  str.substr(0,4)+"-"+str.substr(4,2)+"-"+str.substr(6,2)+" "+str.substr(8,2) + ":" +str.substr(10,2) + ":"+str.substr(12,2)
-          }
+      }
+      //判断是否显示文件组件
+      this.isShowFile = isArray.length ? true : false
+    },
+    changeRadio(val) { //1,需采集,2,有值,3,全部
+      this.handleRadios(val)
+      this.currentRadio = val
+    },
+    formatDate(str) {
+      if (str) {
+        if (str.includes('-')) {
+          return str
         } else {
-          return '--'
+          return str.substr(0, 4) + "-" + str.substr(4, 2) + "-" + str.substr(6, 2) + " " + str.substr(8, 2) + ":" + str.substr(10, 2) + ":" + str.substr(12, 2)
         }
-      },
-      displayData(arr) {//对数据进行处理传给组件展示
-        const result = {}
-        arr.forEach(i => {
-          if (this.instance.hasOwnProperty(i.Path) && this.currentRadio != 2) {
-            i.value = this.instance[i.Path]
+      } else {
+        return '--'
+      }
+    },
+    displayData(arr) {//对数据进行处理传给组件展示
+      const result = {}
+      arr.forEach(i => {
+        if (this.instance.hasOwnProperty(i.Path) && this.currentRadio != 2) {
+          i.value = this.instance[i.Path]
+        }
+        if (i.InputMode == 'C5') {
+          if (this.instance.hasOwnProperty(i.Path)) {
+            let time = this.instance[i.Path]
+            i.value = this.formatDate(time)
           }
-          if (i.InputMode == 'C5') {
+        }
+        if (i.DataSource && i.DataSource.length) {
+          let source = JSON.parse(i.DataSource)
+          //判断输入类型
+          if (i.InputMode == 'D1L') {
+            let d1l = tools.formatDataSource(i.DataSource)
+            d1l.forEach(k => {
+              if (k.Code == this.instance[i.Path]) {
+                i.value = k.Name
+              }
+            })
+          } else if (i.InputMode == 'D2' || i.InputMode == 'C6') {
             if (this.instance.hasOwnProperty(i.Path)) {
-             let time = this.instance[i.Path]
-              i.value = this.formatDate(time)
-            }
-          }
-          if (i.DataSource && i.DataSource.length) {
-            let source = JSON.parse(i.DataSource)
-            //判断输入类型
-            if (i.InputMode == 'D1L') {
-              let d1l = tools.formatDataSource(i.DataSource)
-              d1l.forEach(k => {
-                if (k.Code == this.instance[i.Path]) {
-                  i.value = k.Name
-                }
-              })
-            } else if (i.InputMode == 'D2' || i.InputMode == 'C6') {
-              if (this.instance.hasOwnProperty(i.Path)) {
-                if (!Array.isArray(this.instance[i.Path])) {
-                  let transArray = this.instance[i.Path].split(',')
-                  i.value = source.filter(item => transArray.includes(item.Code)).map(item => item.Name).join(',')
-                }
+              if (!Array.isArray(this.instance[i.Path])) {
+                let transArray = this.instance[i.Path].split(',')
+                i.value = source.filter(item => transArray.includes(item.Code)).map(item => item.Name).join(',')
               }
             }
-            source.forEach(j => {
-              if (j.Code == this.instance[i.Path]) {
-                console.log(j.Name)
-                i.value = j.Name
-              }
-            })
           }
-          switch (i.InputMode) {
-            case "L":
-            case "L1":
-            case "L2":
-            case "M":
-              break;
-            default:
-              if (result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`]) {
-                result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`].paths.push({
+          source.forEach(j => {
+            if (j.Code == this.instance[i.Path]) {
+              console.log(j.Name)
+              i.value = j.Name
+            }
+          })
+        }
+        switch (i.InputMode) {
+          case "L":
+          case "L1":
+          case "L2":
+          case "M":
+            break;
+          default:
+            if (result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`]) {
+              result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`].paths.push({
+                Path: i.Path,
+                InfoPointName: i.InfoPointName,
+                InfoPointCode: i.InfoPointCode,
+                Value: i.value,
+                Visible: i.Visible,
+                KeyWord: i.KeyWord,
+                InputMode: i.InputMode
+              })
+            } else {
+              result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
+                paths: [{
                   Path: i.Path,
                   InfoPointName: i.InfoPointName,
                   InfoPointCode: i.InfoPointCode,
                   Value: i.value,
                   Visible: i.Visible,
                   KeyWord: i.KeyWord,
-                  InputMode:i.InputMode
-                })
-              } else {
-                result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
-                  paths: [{
-                    Path: i.Path,
-                    InfoPointName: i.InfoPointName,
-                    InfoPointCode: i.InfoPointCode,
-                    Value: i.value,
-                    Visible: i.Visible,
-                    KeyWord: i.KeyWord,
-                    InputMode:i.InputMode
-                  }]
-                }
+                  InputMode: i.InputMode
+                }]
               }
+            }
 
-          }
+        }
 
 
-        })
-        this.exhibitionBaseInformation.information = result
-        this.exhibitionCrux.allMessage = result
-      },
-      goBack () {
-        this.$router.push({
-          name: 'propertyLedger',
-          params: {
-            Family: this.type
-          }
-        })
-      },
-      // 切换实例
-      handleChangeExample() {
-        this.selectRadio.initRadio = '1';
-        this.currentRadio = '1';
-        this.getData();
-      },
-      // 切换上一个实例
-      handleClickPrev() {
-        let index = this.list.findIndex(item => item.value == this.id);
-        this.id = this.list[index-1].value;
-        this.handleChangeExample();
-      },
-      // 切换下一个实例
-      handleClickNext() {
-        let index = this.list.findIndex(item => item.value == this.id);
-        this.id = this.list[index+1].value;
-        this.handleChangeExample();
-      },
+      })
+      this.exhibitionBaseInformation.information = result
+      this.exhibitionCrux.allMessage = result
     },
-    watch: {
-      projectId() {
-        this.$router.push({path: "/ledger/property"})
-      }
+    goBack() {
+      this.$router.push({
+        name: 'propertyLedger',
+        params: {
+          Family: this.type
+        }
+      })
+    },
+    // 切换实例
+    handleChangeExample() {
+      this.selectRadio.initRadio = '1';
+      this.currentRadio = '1';
+      this.getData();
+    },
+    // 切换上一个实例
+    handleClickPrev() {
+      let index = this.list.findIndex(item => item.value == this.id);
+      this.id = this.list[index - 1].value;
+      this.handleChangeExample();
+    },
+    // 切换下一个实例
+    handleClickNext() {
+      let index = this.list.findIndex(item => item.value == this.id);
+      this.id = this.list[index + 1].value;
+      this.handleChangeExample();
+    },
+  },
+  watch: {
+    projectId() {
+      this.$router.push({ path: "/ledger/property" })
     }
   }
+}
 </script>
 
 <style scoped lang="less">
-  @bgc: #fff;
-  .tableDisplay {
-    .header {
-      padding-bottom: 10px;
-      overflow: hidden;
-      text-overflow:ellipsis;
-      white-space: nowrap;
-      .details-title {
-        color: #333;
-        font-size: 16px;
-        margin-left: 20px;
-        line-height: 32px;
-        cursor: pointer;
-      }
+@bgc: #fff;
+.tableDisplay {
+  .header {
+    padding-bottom: 10px;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
+
+    .details-title {
+      color: #333;
+      font-size: 16px;
+      margin-left: 20px;
+      line-height: 32px;
+      cursor: pointer;
     }
+  }
 
-    .content {
-      height: calc(100% - 77px);
-      .content-scrollbar {
+  .content {
+    height: calc(100% - 77px);
+
+    .content-scrollbar {
+      display: flex;
+      height: 100%;
+      flex-direction: row;
+      box-sizing: border-box;
+      background-color: #f2f2f2;
+
+      .content-left {
         display: flex;
-        height: 100%;
-        flex-direction: row;
+        flex-direction: column;
+        flex: 1;
         box-sizing: border-box;
-        background-color: #f2f2f2;
-        .content-left {
-          display: flex;
-          flex-direction: column;
-          flex: 1;
+
+        .content-keyPoint {
+          border: 1px solid #ccc;
           box-sizing: border-box;
-          .content-keyPoint {
-            border: 1px solid #ccc;
-            box-sizing: border-box;
-            margin-bottom: 10px;
-            // overflow: hidden;
-            background: @bgc;
-          }
-          .content-showType {
-            height: 50px;
-            border: 1px solid #ccc;
-            border-bottom: none;
-            box-sizing: border-box;
-            background: @bgc;
-          }
-          .content-point {
-            display: flex;
-            flex-direction: row;
-            border: 1px solid #ccc;
-            box-sizing: border-box;
-            background: @bgc;
-            .content-point-left {
-              flex: 1;
-            }
-          }
+          margin-bottom: 10px;
+          // overflow: hidden;
+          background: @bgc;
         }
-        .content-right {
-          width: 400px;
-          margin-left: 10px;
+
+        .content-showType {
+          height: 50px;
+          border: 1px solid #ccc;
+          border-bottom: none;
           box-sizing: border-box;
-          .content-media {
-            box-sizing: border-box;
+          background: @bgc;
+        }
+
+        .content-point {
+          display: flex;
+          flex-direction: row;
+          border: 1px solid #ccc;
+          box-sizing: border-box;
+          background: @bgc;
+
+          .content-point-left {
+            flex: 1;
           }
         }
       }
-    }
 
-    .footer {
-      position: fixed;
-      bottom: 0;
-      left: 235px;
-      width: calc(100% - 235px);
-      height: 45px;
-      background-color: #fff;
-      box-sizing: border-box;
+      .content-right {
+        width: 400px;
+        margin-left: 10px;
+        box-sizing: border-box;
+
+        .content-media {
+          box-sizing: border-box;
+        }
+      }
     }
   }
 
-  /deep/ .el-scrollbar__wrap {
-    overflow-x: hidden;
+  .footer {
+    position: fixed;
+    bottom: 0;
+    left: 235px;
+    width: calc(100% - 235px);
+    height: 45px;
+    background-color: #fff;
+    box-sizing: border-box;
   }
+}
+
+/deep/ .el-scrollbar__wrap {
+  overflow-x: hidden;
+}
 
 </style>

+ 418 - 410
src/views/ledger/property/details/index_old.vue

@@ -2,7 +2,7 @@
   <div class="tableDisplay">
     <div class="header">
       <el-button style="float:left;" size="small" type="default" icon="el-icon-back" @click="goBack"></el-button>
-      <span :title="`${name} - ${code}`" class="details-title"><b>{{name}} - {{code}}</b></span>
+      <span :title="`${name} - ${code}`" class="details-title"><b>{{ name }} - {{ code }}</b></span>
     </div>
     <div class="content">
       <div class="content-left">
@@ -39,7 +39,8 @@
       </div>
     </div>
     <div class="footer">
-      <el-select size="mini" style="float:right;margin:7px 30px 0 0" v-model="id" @change="handleChangeExample" placeholder="请选择">
+      <el-select size="mini" style="float:right;margin:7px 30px 0 0" v-model="id" @change="handleChangeExample"
+                 placeholder="请选择">
         <el-option
           v-for="item in list"
           :key="item.value"
@@ -52,473 +53,480 @@
 </template>
 
 <script>
-  import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
-  import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
-  import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
-  import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
-  import exhibitionCrux from "@/components/ledger/details/detail/exhibitionCrux";
-  import selectRadio from "@/components/ledger/details/detail/selectRadio";
+import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
+import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
+import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
+import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
+import exhibitionCrux from "@/components/ledger/details/detail/exhibitionCrux";
+import selectRadio from "@/components/ledger/details/detail/selectRadio";
+import { getDataDictionary } from "@/api/dict";
+import { queryProperty } from "@/api/scan/request";
+import { mapGetters } from "vuex";
+import tools from "@/utils/scan/tools"
 
-  import {getDataDictionary, queryProperty} from "@/api/scan/request";
-  import {mapGetters} from "vuex";
-  import tools from "@/utils/scan/tools"
 
-
-  export default {
-    name: "propertyDetails",
-    components: {
-      exhibitionBaseInformation,
-      exhibitionFile,
-      exhibitionImage,
-      selectRadio,
-      exhibitionCrux,
-      exhibitionVideo
-    },
-    created() {
-      this.id = this.$route.query.equipId;
-      this.name = this.$route.query.equipName;
-      this.code = this.$route.query.equipCode;
-      this.type = this.$route.query.type;
-      this.list = this.$route.query.data;
-      this.getData();
-      console.log(this.$route.query)
-    },
-    computed: {
-      ...mapGetters("layout", ["projectId", "secret", "userId"])
-    },
-    data() {
-      return {
-        id: '', //当前资产id
-        name: '', //当前资产本地名称
-        code: '', //当前资产的本地编码
-        type: '', //资产类型
-        list: [], //资产列表
-        pointData: [], //信息点数据
-        currentRadio: '',//当前选中的select
-        selectRadio: {
-          information: '设备信息点',
-          initRadio: '1',
-          radioList: [
-            {
-              value: '显示需采集信息点',
-              label: '1'
-            },
-            {
-              value: '显示有值信息点',
-              label: '2'
-            },
-            {
-              value: '显示全部信息点',
-              label: '3'
-            }
-          ]
-        },
-        exhibitionBaseInformation: {
-          information: {}
-        },
-        exhibitionFile: {
-          title: '文件',
-          list: {}
-        },
-        exhibitionCrux: {
-          title: '关键信息点:',
-          cruxArray: [],
-          allMessage: [],//全部信息点
-        },
-        exhibitionImage: {
-          title: '图片',
-          list: {},
-          arr:[]
-        },
-        exhibitionVideo: {
-          title: '视频',
-          list: {}
-        },
-        instance: {},//实例信息处理
-        isShowImage: true,
-        isShowVideo: true,
-        isShowFile: true,
-      }
-    },
-    methods: {
-      deepCopy(obj) {
-        return JSON.parse(JSON.stringify(obj))
+export default {
+  name: "propertyDetails",
+  components: {
+    exhibitionBaseInformation,
+    exhibitionFile,
+    exhibitionImage,
+    selectRadio,
+    exhibitionCrux,
+    exhibitionVideo
+  },
+  created() {
+    this.id = this.$route.query.equipId;
+    this.name = this.$route.query.equipName;
+    this.code = this.$route.query.equipCode;
+    this.type = this.$route.query.type;
+    this.list = this.$route.query.data;
+    this.getData();
+    console.log(this.$route.query)
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId", "secret", "userId"])
+  },
+  data() {
+    return {
+      id: '', //当前资产id
+      name: '', //当前资产本地名称
+      code: '', //当前资产的本地编码
+      type: '', //资产类型
+      list: [], //资产列表
+      pointData: [], //信息点数据
+      currentRadio: '',//当前选中的select
+      selectRadio: {
+        information: '设备信息点',
+        initRadio: '1',
+        radioList: [
+          {
+            value: '显示需采集信息点',
+            label: '1'
+          },
+          {
+            value: '显示有值信息点',
+            label: '2'
+          },
+          {
+            value: '显示全部信息点',
+            label: '3'
+          }
+        ]
       },
-      cruxSuccess(){
-        this.getData()
+      exhibitionBaseInformation: {
+        information: {}
       },
-      // 获取表头和实例数据
-      getData () {
-        let params1 = {
-          data: {
-            Orders: "sort asc",
-            PageNumber: 1,
-            PageSize: 1000
-          },
-          type: this.type
-        }, params2 = {
-          Filters: `EquipID='${this.id}'`,
-        };
-        let promise1 = new Promise((resolve, reject) => {
-          getDataDictionary(params1, res => {
-            resolve(res)
-          })
+      exhibitionFile: {
+        title: '文件',
+        list: {}
+      },
+      exhibitionCrux: {
+        title: '关键信息点:',
+        cruxArray: [],
+        allMessage: [],//全部信息点
+      },
+      exhibitionImage: {
+        title: '图片',
+        list: {},
+        arr: []
+      },
+      exhibitionVideo: {
+        title: '视频',
+        list: {}
+      },
+      instance: {},//实例信息处理
+      isShowImage: true,
+      isShowVideo: true,
+      isShowFile: true,
+    }
+  },
+  methods: {
+    deepCopy(obj) {
+      return JSON.parse(JSON.stringify(obj))
+    },
+    cruxSuccess() {
+      this.getData()
+    },
+    // 获取表头和实例数据
+    getData() {
+      let params1 = {
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: this.type
+      }, params2 = {
+        filters: `equipId='${this.id}'`,
+      };
+      let promise1 = new Promise((resolve, reject) => {
+        getDataDictionary(params1, res => {
+          resolve(res)
         })
-        let promise2 = new Promise((resolve, reject) => {
-          queryProperty(params2, res => {
-            resolve(res)
-          })
+      })
+      let promise2 = new Promise((resolve, reject) => {
+        queryProperty(params2, res => {
+          resolve(res)
         })
-        Promise.all([promise1, promise2]).then(values => {
-          this.pointData = values[0].Content;
-          this.exampleData = values[1].Content[0];
-          this.name = this.exampleData.EquipLocalName?this.exampleData.EquipLocalName:this.exampleData.EquipName?this.exampleData.EquipName:'';
-          this.code = this.exampleData.EquipLocalID?this.exampleData.EquipLocalID:'';
-          let obj = this.deepCopy(values[1].Content[0]);
-          obj = tools.flattenKeys(obj);
-          for(let key in obj) {
-            if(Array.isArray(obj[key]) && !obj[key].length) {
-              delete obj[key]
-            }
+      })
+      Promise.all([promise1, promise2]).then(values => {
+        this.pointData = values[0].content;
+        this.exampleData = values[1].content[0];
+        this.name = this.exampleData.localName ? this.exampleData.localName : this.exampleData.name ? this.exampleData.name : '';
+        this.code = this.exampleData.localId ? this.exampleData.localId : '';
+        let obj = this.deepCopy(values[1].content[0]);
+        obj = tools.flattenKeys(obj);
+        for (let key in obj) {
+          if (Array.isArray(obj[key]) && !obj[key].length) {
+            delete obj[key]
           }
-          this.instance = obj;
-          this.handleRadios(1)
-          this.handleEnclosure() //处理图片视频文件信息
-        })
-      },
-      handleEnclosure() {
-        //图片文件处理,脱离radio控制
-        let isList = this.pointData
-        let isArr = []
-        isList.map(j => {
-          if (this.instance.hasOwnProperty(j.Path)) {
-            j.value = this.instance[j.Path]
-            return j
+        }
+        this.instance = obj;
+        this.handleRadios(1)
+        this.handleEnclosure() //处理图片视频文件信息
+      })
+    },
+    handleEnclosure() {
+      //图片文件处理,脱离radio控制
+      let isList = this.pointData
+      let isArr = []
+      isList.map(j => {
+        if (this.instance.hasOwnProperty(j.path)) {
+          j.value = this.instance[j.path]
+          return j
+        }
+      })
+      isArr = isList.filter(k => k.value)
+      this.handlePicList(isArr)
+      this.handleFileList(isArr)
+    },
+    handleRadios(val) { //判断radio的值显示关键信息,基本信息,图片,文件
+      let arr = []
+      //关键信息点
+      this.exhibitionCrux.cruxArray = this.pointData.filter(i => i.keyWord)
+      this.exhibitionCrux.cruxArray.map(i => {
+        if (this.instance.hasOwnProperty(i.path)) {
+          return {
+            ...i,
+            value: this.instance[i.path]
           }
-        })
-        isArr = isList.filter(k => k.value)
-        this.handlePicList(isArr)
-        this.handleFileList(isArr)
-      },
-      handleRadios(val) { //判断radio的值显示关键信息,基本信息,图片,文件
-        let arr = []
-        //关键信息点
-        this.exhibitionCrux.cruxArray = this.pointData.filter(i => i.KeyWord)
-        this.exhibitionCrux.cruxArray.map(i => {
-          if (this.instance.hasOwnProperty(i.Path)) {
+        }
+      })
+      if (val == 1) { //需采集信息
+        arr = this.pointData.filter(i => i.visible)
+
+        //  图片和的处理
+        // this.handlePicList(arr)
+        // //  文件处理
+        // this.handleFileList(arr)
+
+      } else if (val == 2) { //有值信息点
+        let list = this.pointData
+        list.map(j => {
+          if (this.instance.hasOwnProperty(j.path)) {
             return {
-              ...i,
-              value: this.instance[i.Path]
+              ...j,
+              value: this.instance[j.path]
             }
           }
-        })
-        if (val == 1) { //需采集信息
-          arr = this.pointData.filter(i => i.Visible)
-
-          //  图片和的处理
+          arr = list.filter(k => k.value)
           // this.handlePicList(arr)
-          // //  文件处理
           // this.handleFileList(arr)
+        })
+      } else { //全部信息点
+        arr = this.pointData
+        // this.handlePicList(arr)
+        // this.handleFileList(arr)
+      }
+      this.displayData(arr)
+    },
+    handlePicList(arr) {
+      let picObject = {}
+      debugger
+      //处理数据格式
+      arr.map(i => {
+        if (i.InputMode == 'F2') {
+          switch (i.Path) {
+            case 'LedgerParam.PhotoDoc.Drawing':
+            case 'LedgerParam.Siteinstall.InstallPic':
+            case 'LedgerParam.Siteinstall.InstallDrawing':
+            case 'LedgerParam.PhotoDoc.Nameplate':
+            case 'LedgerParam.PhotoDoc.Pic':
+              if (this.instance.hasOwnProperty(i.path)) {
+                i.PicList = this.instance[i.path]
+              }
+              if (picObject[i.name]) {
 
-        } else if (val == 2) { //有值信息点
-          let list = this.pointData
-          list.map(j => {
-            if (this.instance.hasOwnProperty(j.Path)) {
-              return {
-                ...j,
-                value: this.instance[j.Path]
+              } else {
+                picObject[i.name] = []
               }
-            }
-            arr = list.filter(k => k.value)
-            // this.handlePicList(arr)
-            // this.handleFileList(arr)
-          })
-        } else { //全部信息点
-          arr = this.pointData
-          // this.handlePicList(arr)
-          // this.handleFileList(arr)
-        }
-        this.displayData(arr)
-      },
-      handlePicList(arr) {
-        let picObject = {}
-        //处理数据格式
-        arr.map(i => {
-          if(i.InputMode == 'F2') {
-            switch (i.Path) {
-              case 'LedgerParam.PhotoDoc.Drawing':
-              case 'LedgerParam.Siteinstall.InstallPic':
-              case 'LedgerParam.Siteinstall.InstallDrawing':
-              case 'LedgerParam.PhotoDoc.Nameplate':
-              case 'LedgerParam.PhotoDoc.Pic':
-                if (this.instance.hasOwnProperty(i.Path)) {
-                  i.PicList = this.instance[i.Path]
-                }
-                if (picObject[i.InfoPointName]) {
+              picObject[i.name].push({
+                ...i,
+              })
+              break;
 
-                } else {
-                  picObject[i.InfoPointName] = []
-                }
-                picObject[i.InfoPointName].push({
-                  ...i,
-                })
-                break;
+          }
+        }
 
+      })
+      //展示图片
+      this.exhibitionImage.list = picObject
+      let isArray = [] //获取图片数组
+      for (let i in picObject) {
+        if (Array.isArray(picObject[i])) {
+          let list = picObject[i]
+          list.forEach(i => {
+            if (i.PicList) {
+              isArray.push(...i.PicList)
             }
-          }
+          })
+        }
+      }
+      this.exhibitionImage.arr = isArray
+      let video = isArray.filter(i => i.Type == 'video' && i.type == 'video')
+      this.exhibitionVideo.list = video
+      //判断是否显示图片组件
+      this.isShowImage = isArray.length ? true : false
+      //判断是否显示video组件
+      this.isShowVideo = video.length ? true : false
+    },
+    handleFileList(arr) {
+      let picObject = {}
+      //处理数据格式
+      arr.map(i => {
+        if (i.InputMode == 'F2') {
+          switch (i.Path) {
+            case 'LedgerParam.InsuranceDoc.InsuranceFile':
+            case 'LedgerParam.PhotoDoc.Archive':
+            case 'LedgerParam.Siteinstall.CheckReport':
+              if (this.instance.hasOwnProperty(i.Path)) {
+                i.fileList = this.instance[i.Path]
+              }
+              if (picObject[i.InfoPointName]) {
 
-        })
-        //展示图片
-        this.exhibitionImage.list = picObject
-        let isArray = [] //获取图片数组
-        for (let i in picObject) {
-          if (Array.isArray(picObject[i])) {
-            let list = picObject[i]
-            list.forEach(i => {
-              if (i.PicList) {
-                isArray.push(...i.PicList)
+              } else {
+                picObject[i.InfoPointName] = []
               }
-            })
+
+              picObject[i.InfoPointName].push({
+                ...i,
+              })
+              break
           }
         }
-        this.exhibitionImage.arr = isArray
-        let video = isArray.filter(i => i.Type =='video' && i.type == 'video' )
-        this.exhibitionVideo.list = video
-        //判断是否显示图片组件
-        this.isShowImage = isArray.length ? true : false
-        //判断是否显示video组件
-        this.isShowVideo = video.length ? true : false
-      },
-      handleFileList(arr) {
-        let picObject = {}
-        //处理数据格式
-        arr.map(i => {
-          if (i.InputMode == 'F2') {
-            switch (i.Path) {
-              case 'LedgerParam.InsuranceDoc.InsuranceFile':
-              case 'LedgerParam.PhotoDoc.Archive':
-              case 'LedgerParam.Siteinstall.CheckReport':
-                if (this.instance.hasOwnProperty(i.Path)) {
-                  i.fileList = this.instance[i.Path]
-                }
-                if (picObject[i.InfoPointName]) {
 
-                } else {
-                  picObject[i.InfoPointName] = []
-                }
-
-                picObject[i.InfoPointName].push({
-                  ...i,
-                })
-                break
+      })
+      //展示文件
+      this.exhibitionFile.list = picObject
+      let isArray = [] //获取文件数组
+      for (let i in picObject) {
+        if (Array.isArray(picObject[i])) {
+          let list = picObject[i]
+          list.forEach(i => {
+            if (i.fileList) {
+              isArray.push(...i.fileList)
             }
-          }
-
-        })
-        //展示文件
-        this.exhibitionFile.list = picObject
-        let isArray = [] //获取文件数组
-        for (let i in picObject) {
-          if (Array.isArray(picObject[i])) {
-            let list = picObject[i]
-            list.forEach(i => {
-              if (i.fileList) {
-                isArray.push(...i.fileList)
-              }
-            })
-          }
+          })
         }
-        //判断是否显示文件组件
-        this.isShowFile = isArray.length ? true : false
-      },
-      changeRadio(val) { //1,需采集,2,有值,3,全部
-        this.handleRadios(val)
-        this.currentRadio = val
-      },
-      formatDate(str) {
-        if(str) {
-          if(str.includes('-')) {
-            return str
-          }else {
-            return  str.substr(0,4)+"-"+str.substr(4,2)+"-"+str.substr(6,2)+" "+str.substr(8,2) + ":" +str.substr(10,2) + ":"+str.substr(12,2)
-          }
+      }
+      //判断是否显示文件组件
+      this.isShowFile = isArray.length ? true : false
+    },
+    changeRadio(val) { //1,需采集,2,有值,3,全部
+      this.handleRadios(val)
+      this.currentRadio = val
+    },
+    formatDate(str) {
+      if (str) {
+        if (str.includes('-')) {
+          return str
         } else {
-          return '--'
+          return str.substr(0, 4) + "-" + str.substr(4, 2) + "-" + str.substr(6, 2) + " " + str.substr(8, 2) + ":" + str.substr(10, 2) + ":" + str.substr(12, 2)
         }
-      },
-      displayData(arr) {//对数据进行处理传给组件展示
-        const result = {}
-        arr.forEach(i => {
-          if (this.instance.hasOwnProperty(i.Path) && this.currentRadio != 2) {
-            i.value = this.instance[i.Path]
+      } else {
+        return '--'
+      }
+    },
+    displayData(arr) {//对数据进行处理传给组件展示
+      const result = {}
+      arr.forEach(i => {
+        if (this.instance.hasOwnProperty(i.Path) && this.currentRadio != 2) {
+          i.value = this.instance[i.Path]
+        }
+        if (i.InputMode == 'C5') {
+          if (this.instance.hasOwnProperty(i.Path)) {
+            let time = this.instance[i.Path]
+            i.value = this.formatDate(time)
           }
-          if (i.InputMode == 'C5') {
+        }
+        if (i.DataSource && i.DataSource.length) {
+          let source = JSON.parse(i.DataSource)
+          //判断输入类型
+          if (i.InputMode == 'D1L') {
+            let d1l = tools.formatDataSource(i.DataSource)
+            d1l.forEach(k => {
+              if (k.Code == this.instance[i.Path]) {
+                i.value = k.Name
+              }
+            })
+          } else if (i.InputMode == 'D2' || i.InputMode == 'C6') {
             if (this.instance.hasOwnProperty(i.Path)) {
-             let time = this.instance[i.Path]
-              i.value = this.formatDate(time)
-            }
-          }
-          if (i.DataSource && i.DataSource.length) {
-            let source = JSON.parse(i.DataSource)
-            //判断输入类型
-            if (i.InputMode == 'D1L') {
-              let d1l = tools.formatDataSource(i.DataSource)
-              d1l.forEach(k => {
-                if (k.Code == this.instance[i.Path]) {
-                  i.value = k.Name
-                }
-              })
-            } else if (i.InputMode == 'D2' || i.InputMode == 'C6') {
-              if (this.instance.hasOwnProperty(i.Path)) {
-                if (!Array.isArray(this.instance[i.Path])) {
-                  let transArray = this.instance[i.Path].split(',')
-                  i.value = source.filter(item => transArray.includes(item.Code)).map(item => item.Name).join(',')
-                }
+              if (!Array.isArray(this.instance[i.Path])) {
+                let transArray = this.instance[i.Path].split(',')
+                i.value = source.filter(item => transArray.includes(item.Code)).map(item => item.Name).join(',')
               }
             }
-            source.forEach(j => {
-              if (j.Code == this.instance[i.Path]) {
-
-                i.value = j.Name
-              }
-            })
           }
-          switch (i.InputMode) {
-            case "L":
-            case "L1":
-            case "L2":
-            case "M":
-              break;
-            default:
-              if (result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`]) {
-                result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`].paths.push({
+          source.forEach(j => {
+            if (j.Code == this.instance[i.Path]) {
+
+              i.value = j.Name
+            }
+          })
+        }
+        switch (i.InputMode) {
+          case "L":
+          case "L1":
+          case "L2":
+          case "M":
+            break;
+          default:
+            if (result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`]) {
+              result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`].paths.push({
+                Path: i.Path,
+                InfoPointName: i.InfoPointName,
+                InfoPointCode: i.InfoPointCode,
+                Value: i.value,
+                Visible: i.Visible,
+                KeyWord: i.KeyWord,
+                InputMode: i.InputMode
+              })
+            } else {
+              result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
+                paths: [{
                   Path: i.Path,
                   InfoPointName: i.InfoPointName,
                   InfoPointCode: i.InfoPointCode,
                   Value: i.value,
                   Visible: i.Visible,
                   KeyWord: i.KeyWord,
-                  InputMode:i.InputMode
-                })
-              } else {
-                result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
-                  paths: [{
-                    Path: i.Path,
-                    InfoPointName: i.InfoPointName,
-                    InfoPointCode: i.InfoPointCode,
-                    Value: i.value,
-                    Visible: i.Visible,
-                    KeyWord: i.KeyWord,
-                    InputMode:i.InputMode
-                  }]
-                }
+                  InputMode: i.InputMode
+                }]
               }
+            }
 
-          }
+        }
 
 
-        })
-        this.exhibitionBaseInformation.information = result
-        this.exhibitionCrux.allMessage = result
-      },
-      goBack () {
-        this.$router.push({
-          name: 'propertyLedger',
-          params: {
-            Family: this.type
-          }
-        })
-      },
-      // 切换实例
-      handleChangeExample() {
-        this.selectRadio.initRadio = '1'
-        this.getData();
-      },
+      })
+      this.exhibitionBaseInformation.information = result
+      this.exhibitionCrux.allMessage = result
     },
-    watch: {
-      projectId() {
-        this.$router.push({path: "/ledger/property"})
-      }
+    goBack() {
+      this.$router.push({
+        name: 'propertyLedger',
+        params: {
+          Family: this.type
+        }
+      })
+    },
+    // 切换实例
+    handleChangeExample() {
+      this.selectRadio.initRadio = '1'
+      this.getData();
+    },
+  },
+  watch: {
+    projectId() {
+      this.$router.push({ path: "/ledger/property" })
     }
   }
+}
 </script>
 
 <style scoped lang="less">
-  @bgc: #fff;
-  .tableDisplay {
-    .header {
-      padding-bottom: 10px;
-      overflow: hidden;
-      text-overflow:ellipsis;
-      white-space: nowrap;
-      .details-title {
-        color: #333;
-        font-size: 16px;
-        margin-left: 20px;
-        line-height: 32px;
-        cursor: pointer;
-      }
+@bgc: #fff;
+.tableDisplay {
+  .header {
+    padding-bottom: 10px;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
+
+    .details-title {
+      color: #333;
+      font-size: 16px;
+      margin-left: 20px;
+      line-height: 32px;
+      cursor: pointer;
     }
+  }
+
+  .content {
+    display: flex;
+    flex-direction: row;
+    box-sizing: border-box;
+    height: calc(100% - 95px);
 
-    .content {
+    .content-left {
       display: flex;
-      flex-direction: row;
-      box-sizing: border-box;
-      height: calc(100% - 95px);
-      .content-left {
-        display: flex;
-        flex-direction: column;
-        flex: 1;
-        .content-keyPoint {
-          border: 1px solid #ccc;
-          box-sizing: border-box;
-          height: 100px;
-          margin-bottom: 10px;
-          overflow: hidden;
-          background: @bgc;
-        }
-        .content-showType {
-          height: 50px;
-          border: 1px solid #ccc;
-          border-bottom: none;
-          box-sizing: border-box;
-          background: @bgc;
-        }
-        .content-point {
-          display: flex;
-          flex-direction: row;
-          height: calc(100% - 160px);
-          border: 1px solid #ccc;
-          box-sizing: border-box;
-          background: @bgc;
-          .content-point-left {
-            flex: 1;
-          }
-        }
+      flex-direction: column;
+      flex: 1;
+
+      .content-keyPoint {
+        border: 1px solid #ccc;
+        box-sizing: border-box;
+        height: 100px;
+        margin-bottom: 10px;
+        overflow: hidden;
+        background: @bgc;
       }
-      .content-right {
-        width: 400px;
-        margin-left: 10px;
-        .content-media {
-          height: 100%;
-          background: @bgc;
-          border: 1px solid #ccc;
-          box-sizing: border-box;
+
+      .content-showType {
+        height: 50px;
+        border: 1px solid #ccc;
+        border-bottom: none;
+        box-sizing: border-box;
+        background: @bgc;
+      }
+
+      .content-point {
+        display: flex;
+        flex-direction: row;
+        height: calc(100% - 160px);
+        border: 1px solid #ccc;
+        box-sizing: border-box;
+        background: @bgc;
+
+        .content-point-left {
+          flex: 1;
         }
       }
     }
 
-    .footer {
-      margin-top: 5px;
-      height: 45px;
-      background-color: #fff;
-      box-sizing: border-box;
-      border: 1px solid #ccc;
+    .content-right {
+      width: 400px;
+      margin-left: 10px;
+
+      .content-media {
+        height: 100%;
+        background: @bgc;
+        border: 1px solid #ccc;
+        box-sizing: border-box;
+      }
     }
   }
 
-  /deep/ .el-scrollbar__wrap {
-    overflow-x: hidden;
+  .footer {
+    margin-top: 5px;
+    height: 45px;
+    background-color: #fff;
+    box-sizing: border-box;
+    border: 1px solid #ccc;
   }
+}
+
+/deep/ .el-scrollbar__wrap {
+  overflow-x: hidden;
+}
 
 </style>

+ 54 - 33
src/views/ledger/rentlist/index.vue

@@ -4,8 +4,9 @@
       <floor-cascader @change="changeFloor"></floor-cascader>
     </div> -->
     <el-row class="left">
-      <span style="float:right;">当前筛选条件下共{{page.total || '--'}}租户</span>
-      <el-select v-model="onlyRead" @change="getTableHeader" style="width:100px;margin-right:10px;vertical-align:bottom;">
+      <span style="float:right;">当前筛选条件下共{{ page.total || '--' }}租户</span>
+      <el-select v-model="onlyRead" @change="getTableHeader"
+                 style="width:100px;margin-right:10px;vertical-align:bottom;">
         <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
         </el-option>
       </el-select>
@@ -33,17 +34,22 @@
         <handson-table ref="table"></handson-table>
       </div>
     </div>
-    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange" @current-change="handleCurrentChange"
-      :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper"
-      :total="page.total">
+    <el-pagination class="right" v-show="tableData && tableData.length" @size-change="handleSizeChange"
+                   @current-change="handleCurrentChange"
+                   :current-page="page.pageNumber" :page-sizes="page.pageSizes" :page-size="page.pageSize"
+                   layout="total, sizes, prev, pager, next, jumper"
+                   :total="page.total">
     </el-pagination>
     <!-- 不支持的输入方式 -->
     <el-dialog title="临时维护信息点" :visible.sync="myDialog.update" @close="handleCloseUpdate" width="670px">
       <el-row>
-        该信息点未定义对应组件,现在维护数据不确定后续是否可用。如确实需要维护,请点击<el-link @click="updateInputShow = true" type="primary" :underline="false">继续维护</el-link>。
+        该信息点未定义对应组件,现在维护数据不确定后续是否可用。如确实需要维护,请点击
+        <el-link @click="updateInputShow = true" type="primary" :underline="false">继续维护</el-link>
+        。
       </el-row>
       <el-row style="margin-top:20px;" v-show="updateInputShow">
-        <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 8}" placeholder="请输入内容" v-model="updateInput"></el-input>
+        <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 8}" placeholder="请输入内容"
+                  v-model="updateInput"></el-input>
       </el-row>
       <span slot="footer" class="dialog-footer">
         <el-button @click="myDialog.update = false">取 消</el-button>
@@ -62,8 +68,17 @@ import text from "@/utils/handsontable/mainText"
 import roomCountDrawer from "@/components/ledger/rentList/roomCountDrawer"
 import floorCascader from "@/components/ledger/lib/floorCascader"
 import handsonTable from "@/components/common/handsontable"
-import { getDataDictionary, getRentTableHeader, queryRentTableData, updataRentTableData, deleteRentTableData, saveRentRelateSpace, BeatchQueryParam } from "@/api/scan/request"
+import { getDataDictionary } from "@/api/dict";
+import {
+  getRentTableHeader,
+  queryRentTableData,
+  updataRentTableData,
+  deleteRentTableData,
+  saveRentRelateSpace,
+  BeatchQueryParam
+} from "@/api/scan/request"
 import { mapGetters, mapActions } from "vuex";
+
 export default {
   components: {
     floorCascader,
@@ -102,10 +117,10 @@ export default {
       inputMap: {
         FloorId: {
           InputMode: 'B1',
-          Editable:true,
-          InfoPointCode:"FloorId",
-          InfoPointName:"所属楼层",
-          Path:"FloorId"
+          Editable: true,
+          InfoPointCode: "FloorId",
+          InfoPointName: "所属楼层",
+          Path: "FloorId"
         }
       }, //信息点和输入方式映射表
       updateInputShow: false, //是否显示临时维护输入框
@@ -122,7 +137,7 @@ export default {
     }
   },
   created() {
-    this.onlyRead = this.$route.query.onlyRead ==='true' || this.$route.query.onlyRead === true || !this.$route.query.onlyRead;
+    this.onlyRead = this.$route.query.onlyRead === 'true' || this.$route.query.onlyRead === true || !this.$route.query.onlyRead;
     this.getTableHeader()
   },
   watch: {
@@ -145,18 +160,16 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let param = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
-        type: 'Tenant'
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: 'tenant'
       }
       await getDataDictionary(param, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.tableHeader.forEach(item => {
-          if (item.Path) {
-            this.inputMap[item.Path] = item
+          if (item.path) {
+            this.inputMap[item.path] = item
           }
         })
         this.getTableData()
@@ -363,7 +376,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除租户"
@@ -503,17 +516,17 @@ export default {
       };
       this.tableHeader.map(head => {
         if (
-          head.InputMode == "L" ||
-          head.InputMode == "L1" ||
-          head.InputMode == "L2" ||
-          head.InputMode == "M"
+          head.inputMode == "L" ||
+          head.inputMode == "L1" ||
+          head.inputMode == "L2" ||
+          head.inputMode == "M"
         ) {
           data.map(item => {
-            let cur = tools.dataForKey(item, head.Path);
+            let cur = tools.dataForKey(item, head.path);
             if (cur) {
               param.data.criterias.push({
                 id: item.TenantID,
-                code: head.InfoPointCode
+                code: head.code
               });
             }
           });
@@ -526,16 +539,16 @@ export default {
               if (item.TenantID == child.id) {
                 if (child.data || child.data == 0) {
                   this.tableHeader.map(head => {
-                    if (head.InfoPointCode == child.code) {
-                      tools.setDataForKey(item, head.Path, child.data);
+                    if (head.code == child.code) {
+                      tools.setDataForKey(item, head.path, child.data);
                     }
                   });
                 } else {
                   this.tableHeader.map(head => {
-                    if (head.InfoPointCode == child.code) {
+                    if (head.code == child.code) {
                       tools.setDataForKey(
                         item,
-                        head.Path,
+                        head.path,
                         // child.error ? "表号功能号格式错误" : "表号功能号不存在"
                         child.error ? child.value ? "表号功能号格式错误" : "表号功能号不存在" : "暂未采集到实时数据"
                       );
@@ -564,22 +577,27 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 95px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 2;
       margin-right: 20px;
     }
+
     .tableRight {
       flex: 1;
       // display: none;
@@ -587,11 +605,13 @@ export default {
       padding: 5px 15px;
       margin-right: 5px;
       box-shadow: 0px 1px 5px 0px rgba(59, 66, 84, 0.15);
+
       .table_right_box::after {
         display: block;
         content: "";
         clear: both;
       }
+
       .close_right {
         float: right;
         cursor: pointer;
@@ -599,6 +619,7 @@ export default {
     }
   }
 }
+
 .el-pagination button,
 .el-pagination span:not([class*="suffix"]) {
   vertical-align: middle;

+ 31 - 24
src/views/ledger/rentlist/rentadd/index.vue

@@ -32,10 +32,11 @@ import handsonUtils from "@/utils/hasontableUtils"
 import showTools from "@/utils/handsontable/notShow"
 import text from "@/utils/handsontable/mainText"
 import session from "@/framework/utils/storage"
-
 import handsonTable from "@/components/common/handsontable"
-import { getDataDictionary, getRentTableHeader, createRentTableData } from "@/api/scan/request"
+import { getDataDictionary } from "@/api/dict";
+import { getRentTableHeader, createRentTableData } from "@/api/scan/request"
 import { mapGetters, mapActions } from "vuex";
+
 export default {
   components: {
     handsonTable
@@ -47,18 +48,18 @@ export default {
       relationids: "",
       onlyRead: false,
       showTypes: [
-        // { value: "partInfo", label: '隐藏信息点' }, 
-        { value: "all", label: '全部' }, 
+        // { value: "partInfo", label: '隐藏信息点' },
+        { value: "all", label: '全部' },
         { value: "Visible", label: '只看采集信息' }
       ],
       showType: this.$route.query.showType,
       tableHeader: [],
-      tableData: session.get("rentAddData")? session.get("rentAddData").length? session.get("rentAddData"): [{}]: [{}],
+      tableData: session.get("rentAddData") ? session.get("rentAddData").length ? session.get("rentAddData") : [{}] : [{}],
       copyTableData: []
     };
   },
   computed: {
-    ...mapGetters("layout", [ "projectId", "secret", "userId" ])
+    ...mapGetters("layout", ["projectId", "secret", "userId"])
   },
   created() {
     this.getTableHeader()
@@ -70,15 +71,13 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let param = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000,
-        },
-        type: 'Tenant'
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: 'tenant'
       }
       await getDataDictionary(param, res => {
-        this.tableHeader = res.Content
+        this.tableHeader = res.content
         this.initTable()
       })
     },
@@ -89,18 +88,18 @@ export default {
       let newData = this.tableData.filter((item) => {
         let keys = Object.keys(item)
         keys.map((key) => { //将值为空字符串的属性删除
-          if(item[key] == "") {
+          if (item[key] == "") {
             delete item[key]
           }
         })
         if (!item.TenantLocalName) {
           flag = 1
         }
-        if(keys.length && Object.keys(item).length) {
+        if (keys.length && Object.keys(item).length) {
           return item
         }
       })
-      if(!newData.length) {
+      if (!newData.length) {
         this.$message("创建信息为空,请录入信息后再创建!")
         return
       } else if (flag == 1) {
@@ -111,7 +110,7 @@ export default {
       await createRentTableData(params, (res) => {
         this.$message.success("添加成功!")
         session.remove("rentAddData")
-        this.$router.push({ name: 'rentlist'})
+        this.$router.push({ name: 'rentlist' })
       })
     },
     // 删除表格行
@@ -122,7 +121,7 @@ export default {
     // 添加行
     handleAddTableRow() {
       let addRowLength = this.addNum
-      for(let i = 0; i < addRowLength; i++){
+      for (let i = 0; i < addRowLength; i++) {
         this.tableData.push({})
       }
       this.initTable()
@@ -137,11 +136,11 @@ export default {
       let newData = this.tableData.filter((item) => {
         let keys = Object.keys(item)
         keys.map((key) => { //将值为空字符串的属性删除
-          if(item[key] == "") {
+          if (item[key] == "") {
             delete item[key]
           }
         })
-        if(keys.length && Object.keys(item).length) {
+        if (keys.length && Object.keys(item).length) {
           return item
         }
       })
@@ -173,7 +172,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除租户"
@@ -274,21 +273,26 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
-    padding:0 10px 10px 10px;
+    padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 100px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 2;
     }
+
     .tableRight {
       flex: 1;
       // display: none;
@@ -296,18 +300,21 @@ export default {
       padding: 5px 15px;
       margin-right: 5px;
       box-shadow: 0px 1px 5px 0px rgba(59, 66, 84, 0.15);
-      .table_right_box::after{
+
+      .table_right_box::after {
         display: block;
         content: "";
         clear: both;
       }
+
       .close_right {
         float: right;
         cursor: pointer;
       }
     }
   }
-  .create_button{
+
+  .create_button {
     margin-top: 10px;
   }
 }

File diff suppressed because it is too large
+ 705 - 707
src/views/ledger/report/index.vue


+ 41 - 16
src/views/ledger/spacelist/index.vue

@@ -10,7 +10,8 @@
       <div class="saga-build-mess">
         <div style="margin-left: 10px;float: left;">
           <span style="color: #999999;font-size: 14px;margin-right: 12px;">建筑楼层</span>
-          <el-cascader :options="options" @change="changeCascader" placeholder="请选择建筑楼层" ref="cascaderAddr" v-model="buildFloorSelectd">
+          <el-cascader :options="options" @change="changeCascader" placeholder="请选择建筑楼层" ref="cascaderAddr"
+                       v-model="buildFloorSelectd">
             <template slot-scope="{ node, data }">
               <span>{{ data.label }}</span>
               <i class="el-icon-warning-outline" v-if="data.Count" style="color:red;margin-right:10px;"></i>
@@ -25,7 +26,7 @@
           <el-radio-button label="2" class="space-own-radio" style="width: 68px;">列表</el-radio-button>
         </el-radio-group>
       </div>
-      <div class="saga-build-tips" v-if="mutiCount>0" @click="getTips">有{{mutiCount}}个空间同时属于多个建筑楼层,点击处理</div>
+      <div class="saga-build-tips" v-if="mutiCount>0" @click="getTips">有{{ mutiCount }}个空间同时属于多个建筑楼层,点击处理</div>
     </div>
     <div class="saga-business-sapce-main" v-show="!needCalculate">
       <el-row class="spaceTypes">
@@ -34,25 +35,29 @@
             <template v-for="(item,index) in tabsList">
               <el-tab-pane :name="item.Code" :key="index">
                 <span slot="label"><i class="el-icon-warning-outline" v-if="item.Count>0"
-                    style="color:red;margin-right:10px;"></i>{{item.Name}}</span>
+                                      style="color:red;margin-right:10px;"></i>{{ item.Name }}</span>
               </el-tab-pane>
             </template>
           </el-tabs>
         </div>
       </el-row>
       <div v-show="isMyTab == 1" style="width:100%;height:100%">
-        <graphy @getSp="checkSpace" @dimension="checkSpace" @businessDetails="getBuinessDetails" ref="graphy" @copyID="copyID"
-          @updateState="updateStateSuc"></graphy>
+        <graphy @getSp="checkSpace" @dimension="checkSpace" @businessDetails="getBuinessDetails" ref="graphy"
+                @copyID="copyID"
+                @updateState="updateStateSuc"></graphy>
       </div>
       <div v-show="isMyTab == 2">
-        <handsontable-main @lookEqu="lookEqu" ref="handsontable" :zoneCode="activeName" :otherType="otherType" :id="`handsontable${activeName}`">
+        <handsontable-main @lookEqu="lookEqu" ref="handsontable" :zoneCode="activeName" :otherType="otherType"
+                           :id="`handsontable${activeName}`">
         </handsontable-main>
       </div>
       <div class="infectedTips" v-show="isMyTab==1&&infectedTotal>0">
-        <p>因底图变化而受影响的业务空间{{infectedTotal.toString()}}个<span v-show="buildFloorSelectd.length>1">,本层受影响的业务空间{{infectedCurfloor.toString()}}个</span></p>
+        <p>因底图变化而受影响的业务空间{{ infectedTotal.toString() }}个<span
+          v-show="buildFloorSelectd.length>1">,本层受影响的业务空间{{ infectedCurfloor.toString() }}个</span></p>
       </div>
     </div>
-    <div v-show="needCalculate" style="display:flex;align-items:center;justify-content:center;height:100%;background-color:#fff;">
+    <div v-show="needCalculate"
+         style="display:flex;align-items:center;justify-content:center;height:100%;background-color:#fff;">
       <div class="center" style="flex:1">
         <i class="iconfont icon-jianzhu" style="font-size:50px;"></i>
         <p style="margin:10px 0;">空间关系已发生变化,请更新关系后再使用业务空间台账</p>
@@ -73,13 +78,15 @@ 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,
+  // getDataDictionary,
   getrelationTypeProject,
   getSpaceBdFlCount,
   queryAllZoneType,
   queryBFloorWithState,
   zoneCount
 } from "@/api/scan/request";
+import { getDataDictionary } from "@/api/dict";
+
 import floorCascader from "@/components/ledger/lib/floorCascader";
 import { mapGetters } from "vuex";
 
@@ -141,7 +148,8 @@ export default {
     this.getRelations()
     this.childBackParam = this.$route.params;
   },
-  mounted() { },
+  mounted() {
+  },
   methods: {
     // 初始化
     init() {
@@ -311,15 +319,13 @@ export default {
     // 触发获取表头-获取初始化信息点
     initMessage() {
       let params = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.activeName
       }
       getDataDictionary(params, res => {
-        this.$refs.handsontable.getHeader(res.Content, this.buildFloorSelectd);
+        this.$refs.handsontable.getHeader(res.content, this.buildFloorSelectd);
       })
     },
     checkSpace(list, build, graphyId) {
@@ -397,15 +403,18 @@ export default {
   position: relative;
   display: flex;
   flex-direction: column;
+
   .space-own-radio {
     .el-radio-button__inner {
       padding: 9px 21px;
     }
   }
+
   .el-dialog__body {
     max-height: 600px;
     overflow-y: auto;
   }
+
   .saga-title {
     height: 54px;
     background-color: #fff;
@@ -414,17 +423,21 @@ export default {
     line-height: 54px;
     margin-bottom: 10px;
     border: 1px solid #dfe6ec;
+
     .saga-build-mess {
       // position: absolute;
       // left: 10px;
       width: 500px;
       margin-left: 10px;
+
       i {
         padding-right: 5px;
       }
+
       p {
         float: left;
       }
+
       .saga-btn {
         float: left;
         height: 40px;
@@ -432,10 +445,12 @@ export default {
         padding: 0 10px;
       }
     }
+
     .saga-build-tab {
       position: absolute;
       left: 50%;
       transform: translateX(-50%);
+
       .tab-main {
         float: left;
         width: 120px;
@@ -448,6 +463,7 @@ export default {
         text-align: center;
         cursor: pointer;
         overflow: hidden;
+
         i {
           font-size: 18px;
           padding-right: 10px;
@@ -455,16 +471,19 @@ export default {
           line-height: 30px;
           margin-left: 10px;
         }
+
         span {
           line-height: 30px;
           float: left;
         }
       }
+
       .tab-active {
         background-color: #409eff;
         color: #fff;
       }
     }
+
     .saga-build-tips {
       float: right;
       margin-right: 10px;
@@ -473,6 +492,7 @@ export default {
       cursor: pointer;
     }
   }
+
   .saga-business-sapce-main {
     overflow: hidden;
     height: 100%;
@@ -480,10 +500,12 @@ export default {
     // padding: 10px;
     /deep/ .el-tabs__item.is-top {
       border-top: 2px solid transparent;
+
       &.is-active {
         border-top: 2px solid #409eff;
       }
     }
+
     .infectedTips {
       position: absolute;
       bottom: 0px;
@@ -496,13 +518,16 @@ export default {
       z-index: 9;
     }
   }
+
   .spaceTypes {
     padding: 10px 10px 0;
+
     .types {
       float: left;
       width: 100%;
       // width: calc(100% - 200px);
     }
+
     .groupAdd {
       float: left;
       width: 200px;

+ 142 - 123
src/views/ledger/spacelist/spaceDetail/index.vue

@@ -3,7 +3,7 @@
     <div class="condition">
       <div class="header">
         <el-button style="float:left;" size="small" type="default" icon="el-icon-back" @click="goBack"></el-button>
-        <span>{{exampleData ? exampleData.RoomLocalName||exampleData.RoomName :''}}</span>
+        <span>{{ exampleData ? exampleData.RoomLocalName || exampleData.RoomName : '' }}</span>
       </div>
       <el-row class="spaceTypes">
         <div class="types">
@@ -17,7 +17,7 @@
           <el-button size="small" @click="deleteSpace">删除业务空间</el-button>
         </div>
       </el-row>
-      <div v-if="activeTab=='detail'"  class="content">
+      <div v-if="activeTab=='detail'" class="content">
         <!-- <iframe v-if="params.isMyTab == 1" height="100%" width="100%" :src="iframeSrc"></iframe> -->
         <el-scrollbar style="height:100%;">
           <div class="content-scrollbar">
@@ -33,7 +33,7 @@
                   <exhibitionBaseInformation :exhibitionBaseInformation="exhibitionBaseInformation"/>
                 </div>
                 <div class="content-point-right">
-                  <exhibitionEnergy :exhibitionEnergy="exhibitionEnergy" />
+                  <exhibitionEnergy :exhibitionEnergy="exhibitionEnergy"/>
                 </div>
               </div>
             </div>
@@ -51,7 +51,8 @@
         </el-scrollbar>
       </div>
       <!-- 空间内设备列表--服务于空间的设备 -->
-      <eqToSpaceTable v-else-if="activeTab=='Equipment' || activeTab=='EquipmentFor'" :params="params" :type="activeTab"></eqToSpaceTable>
+      <eqToSpaceTable v-else-if="activeTab=='Equipment' || activeTab=='EquipmentFor'" :params="params"
+                      :type="activeTab"></eqToSpaceTable>
       <!-- 空间内系统 -->
       <syInSpaceTable v-else-if="activeTab=='generalSystem'" :params="params" :type="activeTab"></syInSpaceTable>
 
@@ -60,91 +61,92 @@
 </template>
 
 <script>
-  import {mapGetters} from "vuex";
-  import tools from "@/utils/scan/tools";
-  import {getDataDictionary, zoneDelete, zoneQuery,BeatchQueryParam} from '@/api/scan/request';
-
-  import eqToSpaceTable from '@/components/business_space/newTables/eqToSpaceTable';
-  import syInSpaceTable from '@/components/business_space/newTables/syInSpaceTable';
-  import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
-  import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
-  import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
-  import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
-  import exhibitionCrux from "@/components/ledger/details/detail/exhibitionCrux";
-  import exhibitionEnergy from "@/components/ledger/details/detail/exhibitionEnergy";
-  import exhibitionMaintain from "@/components/ledger/details/detail/exhibitionMaintain";
-  import selectRadio from "@/components/ledger/details/detail/selectRadio";
-
-
-  export default {
-    data() {
-      return {
-        params: {}, //参数-包含空间id 分区类型 进入方式(1-平面图 2-列表)
-        tabsList: [
-          {Code: 'detail', Name: '空间详情'},
-          {Code: 'Equipment', Name: '空间内设备'},
-          {Code: 'EquipmentFor', Name: '服务于空间的设备'},
-          {Code: 'generalSystem', Name: '空间内系统'},
-        ], //tab页
-        activeTab: 'detail', //当前选中的tab
-        pointData: [], //信息点数据
-        exampleData: {}, //实例数据
-        currentRadio: '1',//当前选中的select
-        criterias: [], //动态参数
-        instance: {},
-        iframeSrc: '', //空间详情iframe
-        selectRadio: {
-          information: '设备信息点',
-          initRadio: '1',
-          radioList: [
-            {
-              value: '显示需采集信息点',
-              label: '1'
-            },
-            {
-              value: '显示有值信息点',
-              label: '2'
-            },
-            {
-              value: '显示全部信息点',
-              label: '3'
-            }
-          ]
-        },
-        exhibitionBaseInformation: {
-          information: {}
-        },
-        exhibitionEnergy: {
-          title: '能耗信息',
-          firstName:'',
-          dynamic: [],
-          list: {}
-        },
-        exhibitionMaintain: {
-          title: '维修/维保记录'
-        },
-        exhibitionFile: {
-          title: '文件',
-          list: {}
-        },
-        exhibitionCrux: {
-          title: '关键信息点:',
-          cruxArray: [],
-          allMessage: [],//全部信息点
-        },
-        exhibitionImage: {
-          title: '图片',
-          list: {},
-          arr:[]
-        },
-        exhibitionVideo: {
-          title: '视频',
-          list: {}
-        },
-        isShowImage: false,
-        isShowVideo: false,
-        isShowFile: false,
-      }
+import { mapGetters } from "vuex";
+import tools from "@/utils/scan/tools";
+import { zoneDelete, zoneQuery, BeatchQueryParam } from '@/api/scan/request';
+import { getDataDictionary } from "@/api/dict";
+
+import eqToSpaceTable from '@/components/business_space/newTables/eqToSpaceTable';
+import syInSpaceTable from '@/components/business_space/newTables/syInSpaceTable';
+import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
+import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
+import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
+import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
+import exhibitionCrux from "@/components/ledger/details/detail/exhibitionCrux";
+import exhibitionEnergy from "@/components/ledger/details/detail/exhibitionEnergy";
+import exhibitionMaintain from "@/components/ledger/details/detail/exhibitionMaintain";
+import selectRadio from "@/components/ledger/details/detail/selectRadio";
+
+
+export default {
+  data() {
+    return {
+      params: {}, //参数-包含空间id 分区类型 进入方式(1-平面图 2-列表)
+      tabsList: [
+        { Code: 'detail', Name: '空间详情' },
+        { Code: 'Equipment', Name: '空间内设备' },
+        { Code: 'EquipmentFor', Name: '服务于空间的设备' },
+        { Code: 'generalSystem', Name: '空间内系统' },
+      ], //tab页
+      activeTab: 'detail', //当前选中的tab
+      pointData: [], //信息点数据
+      exampleData: {}, //实例数据
+      currentRadio: '1',//当前选中的select
+      criterias: [], //动态参数
+      instance: {},
+      iframeSrc: '', //空间详情iframe
+      selectRadio: {
+        information: '设备信息点',
+        initRadio: '1',
+        radioList: [
+          {
+            value: '显示需采集信息点',
+            label: '1'
+          },
+          {
+            value: '显示有值信息点',
+            label: '2'
+          },
+          {
+            value: '显示全部信息点',
+            label: '3'
+          }
+        ]
+      },
+      exhibitionBaseInformation: {
+        information: {}
+      },
+      exhibitionEnergy: {
+        title: '能耗信息',
+        firstName: '',
+        dynamic: [],
+        list: {}
+      },
+      exhibitionMaintain: {
+        title: '维修/维保记录'
+      },
+      exhibitionFile: {
+        title: '文件',
+        list: {}
+      },
+      exhibitionCrux: {
+        title: '关键信息点:',
+        cruxArray: [],
+        allMessage: [],//全部信息点
+      },
+      exhibitionImage: {
+        title: '图片',
+        list: {},
+        arr: []
+      },
+      exhibitionVideo: {
+        title: '视频',
+        list: {}
+      },
+      isShowImage: false,
+      isShowVideo: false,
+      isShowFile: false,
+    }
   },
   computed: {
     ...mapGetters("layout", ["projectId", "userId", "secret"])
@@ -166,9 +168,11 @@
     this.getData();
     this.setFrame();
   },
-  mounted() { },
+  mounted() {
+  },
   watch: {
-    projectId() { }
+    projectId() {
+    }
   },
   methods: {
     deepCopy(obj) {
@@ -184,11 +188,9 @@
     // 查询空间详情
     getData() {
       let params1 = {
-        data: {
-          Orders: "sort asc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.params.zone
       }, params2 = {
         Filters: `RoomID='${this.params.RoomID}'`,
@@ -209,24 +211,24 @@
       this.criterias = [];
 
       Promise.all([promise1, promise2]).then(values => {
-        this.pointData = values[0].Content;
+        this.pointData = values[0].content;
         this.exampleData = values[1].Content[0];
-        let obj = values[1].Content[0] ? this.deepCopy(values[1].Content[0]) :values[1].Content[0];
+        let obj = values[1].Content[0] ? this.deepCopy(values[1].Content[0]) : values[1].Content[0];
 
         obj = tools.flattenKeys(obj);
-        for(let key in obj) {
-          if(Array.isArray(obj[key]) && !obj[key].length) {
+        for (let key in obj) {
+          if (Array.isArray(obj[key]) && !obj[key].length) {
             delete obj[key]
           }
         }
         this.instance = obj;
         this.pointData.forEach(item => {
-          if (item.InputMode == "L" || item.InputMode == "L1" || item.InputMode == "L2" || item.InputMode == "M") {
-            let cur = tools.dataForKey(this.exampleData, item.Path);
+          if (item.inputMode == "L" || item.inputMode == "L1" || item.inputMode == "L2" || item.inputMode == "M") {
+            let cur = tools.dataForKey(this.exampleData, item.path);
             if (cur) {
               this.criterias.push({
                 id: this.exampleData.RoomID,
-                code: item.InfoPointCode
+                code: item.code
               })
             }
           }
@@ -243,7 +245,7 @@
             // this.criteriasArray = res.Content;
             res.Content.length && res.Content.map(child => {
               this.pointData.map(head => {
-                if (head.InfoPointCode == child.code) {
+                if (head.code == child.code) {
                   this.$set(head, 'svalue', child.value)
                   this.$set(head, 'data', child.data)
                   this.$set(head, 'receivetime', child.receivetime)
@@ -266,8 +268,8 @@
       let isList = this.pointData
       let isArr = []
       isList.map(j => {
-        if (this.instance &&this.instance.hasOwnProperty(j.Path)) {
-          j.value = this.instance[j.Path]
+        if (this.instance && this.instance.hasOwnProperty(j.path)) {
+          j.value = this.instance[j.path]
           return j
         }
       })
@@ -278,17 +280,17 @@
     handleRadios(val) { //判断radio的值显示关键信息,基本信息,图片,文件
       let arr = []
       //关键信息点
-      this.exhibitionCrux.cruxArray = this.pointData.filter(i => i.KeyWord)
+      this.exhibitionCrux.cruxArray = this.pointData.filter(i => i.keyWord)
       this.exhibitionCrux.cruxArray.map(i => {
-        if (this.instance &&this.instance.hasOwnProperty(i.Path)) {
+        if (this.instance && this.instance.hasOwnProperty(i.path)) {
           return {
             ...i,
-            value: this.instance[i.Path]
+            value: this.instance[i.path]
           }
         }
       })
       if (val == 1) { //需采集信息
-        arr = this.pointData.filter(i => i.Visible)
+        arr = this.pointData.filter(i => i.visible)
         //  图片和的处理
         // this.handlePicList(arr)
         // //  文件处理
@@ -297,10 +299,10 @@
       } else if (val == 2) { //有值信息点
         let list = this.pointData
         list.map(j => {
-          if (this.instance && this.instance.hasOwnProperty(j.Path)) {
+          if (this.instance && this.instance.hasOwnProperty(j.path)) {
             return {
               ...j,
-              value: this.instance[j.Path]
+              value: this.instance[j.path]
             }
           }
           arr = list.filter(k => k.value)
@@ -316,6 +318,7 @@
     },
     handlePicList(arr) {
       let picObject = {}
+      debugger
       //处理数据格式
       arr.map(i => {
         if (i.InputMode == 'F2') {
@@ -326,7 +329,7 @@
             case 'LedgerParam.PhotoDoc.Nameplate':
             case 'LedgerParam.PhotoDoc.Pic':
             case 'Pic' :
-              if (this.instance &&this.instance.hasOwnProperty(i.Path)) {
+              if (this.instance && this.instance.hasOwnProperty(i.Path)) {
                 i.PicList = this.instance[i.Path]
               }
               if (picObject[i.InfoPointName]) {
@@ -355,11 +358,11 @@
         }
       }
       this.exhibitionImage.arr = isArray
-      let video = isArray.filter(i => i.Type != 'image' &&i.type != 'image' )
+      let video = isArray.filter(i => i.Type != 'image' && i.type != 'image')
       this.exhibitionVideo.list = video
 
       //判断是否显示图片组件
-      this.isShowImage = isArray.length  ? true : false
+      this.isShowImage = isArray.length ? true : false
 
       //判断是否显示video组件
       this.isShowVideo = video.length ? true : false
@@ -373,7 +376,7 @@
             case 'LedgerParam.InsuranceDoc.InsuranceFile':
             case 'LedgerParam.PhotoDoc.Archive':
             case 'LedgerParam.Siteinstall.CheckReport':
-              if (this.instance &&this.instance.hasOwnProperty(i.Path)) {
+              if (this.instance && this.instance.hasOwnProperty(i.Path)) {
                 i.fileList = this.instance[i.Path]
               }
               if (picObject[i.InfoPointName]) {
@@ -411,11 +414,11 @@
       this.currentRadio = val
     },
     formatDate(str) {
-      if(str) {
-        if(str.includes('-')) {
+      if (str) {
+        if (str.includes('-')) {
           return str
-        }else {
-          return  str.substr(0,4)+"-"+str.substr(4,2)+"-"+str.substr(6,2)+" "+str.substr(8,2) + ":" +str.substr(10,2) + ":"+str.substr(12,2)
+        } else {
+          return str.substr(0, 4) + "-" + str.substr(4, 2) + "-" + str.substr(6, 2) + " " + str.substr(8, 2) + ":" + str.substr(10, 2) + ":" + str.substr(12, 2)
         }
       } else {
         return '--'
@@ -445,7 +448,7 @@
               }
             })
           } else if (i.InputMode == 'D2' || i.InputMode == 'C6') {
-            if (this.instance &&this.instance.hasOwnProperty(i.Path)) {
+            if (this.instance && this.instance.hasOwnProperty(i.Path)) {
               if (!Array.isArray(this.instance[i.Path])) {
                 let transArray = this.instance[i.Path].split(',')
                 i.value = source.filter(item => transArray.includes(item.Code)).map(item => item.Name).join(',')
@@ -506,7 +509,7 @@
                 Value: i.value,
                 Visible: i.Visible,
                 KeyWord: i.KeyWord,
-                InputMode:i.InputMode
+                InputMode: i.InputMode
               })
             } else {
               result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
@@ -517,7 +520,7 @@
                   Value: i.value,
                   Visible: i.Visible,
                   KeyWord: i.KeyWord,
-                  InputMode:i.InputMode
+                  InputMode: i.InputMode
                 }]
               }
             }
@@ -568,24 +571,30 @@
     border: 1px solid #dfe6ec;
     box-sizing: border-box;
     background: #fff;
+
     .header {
       padding-bottom: 10px;
+
       span {
         line-height: 33px;
         margin-left: 15px;
       }
     }
+
     .spaceTypes {
       .types {
         float: left;
         width: calc(100% - 200px);
+
         /deep/ .el-tabs__item.is-top {
           border-top: 2px solid transparent;
+
           &.is-active {
             border-top: 2px solid #409eff;
           }
         }
       }
+
       .deleBtn {
         float: left;
         width: 200px;
@@ -597,16 +606,19 @@
 
     .content {
       height: calc(100% - 99px);
+
       .content-scrollbar {
         display: flex;
         height: 100%;
         flex-direction: row;
         box-sizing: border-box;
         background-color: @bgc;
+
         .content-left {
           display: flex;
           flex-direction: column;
           flex: 1;
+
           .content-showType {
             height: 50px;
             border: 1px solid #ccc;
@@ -614,25 +626,30 @@
             box-sizing: border-box;
             background: @bgc;
           }
+
           .content-point {
             display: flex;
             flex-direction: row;
             border: 1px solid #ccc;
             box-sizing: border-box;
             background: @bgc;
+
             .content-point-left {
               flex: 1;
             }
+
             .content-point-right {
               width: 300px;
               border-left: 1px solid #ccc;
             }
           }
         }
+
         .content-right {
           width: 400px;
           margin-left: 10px;
           box-sizing: border-box;
+
           .content-repair {
             height: 50px;
             line-height: 50px;
@@ -641,6 +658,7 @@
             background: @bgc;
             box-sizing: border-box;
           }
+
           .content-media {
             box-sizing: border-box;
           }
@@ -652,6 +670,7 @@
       margin-top: 10px;
       height: calc(100% - 96px);
     }
+
     .footer {
       margin-bottom: 10px;
     }

+ 31 - 22
src/views/ledger/spacelist/spaceadd/index.vue

@@ -1,13 +1,13 @@
 <template>
   <div id="deviceList">
     <el-row class="right">
-      <span style="float:left;">当前选择的分区类型:{{space.spaceName}}</span>
+      <span style="float:left;">当前选择的分区类型:{{ space.spaceName }}</span>
       <el-select v-model="showType" @change="initTable" style="width:125px;margin-right:10px;vertical-align:bottom;">
         <el-option v-for="item in showTypes" :key="item.value" :label="item.label" :value="item.value"></el-option>
       </el-select>
       <span>增加</span>
       <el-input v-model="addNum" style="width:50px;" size="small"></el-input>
-      <span>个{{space.spaceName}}</span>
+      <span>个{{ space.spaceName }}</span>
       <el-button @click="handleAddTableRow">增加</el-button>
     </el-row>
     <div class="tableBox">
@@ -28,7 +28,7 @@
     <!--二维码弹窗 -->
     <qrcode :dialog="myDialog" :qrcodeUrl="qrcodeUrl" :addBody="true" ref="qrcode"></qrcode>
     <!--上传图片-->
-    <upload-img-dialog :read="false" @changeFile="imgChange" :keysArr="imgsArr" :dialog="myDialog" />
+    <upload-img-dialog :read="false" @changeFile="imgChange" :keysArr="imgsArr" :dialog="myDialog"/>
     <!-- 不支持的输入方式 -->
     <el-dialog title="临时维护信息点" :visible.sync="myDialog.update" @close="handleCloseUpdate" width="670px">
       <el-row>
@@ -56,11 +56,14 @@ import session from "@/framework/utils/storage";
 import buildFloor from '@/utils/handsontable/buildFloorData'
 
 import handsonTable from "@/components/common/handsontable";
-import { getDataDictionary, zoneCreate } from "@/api/scan/request";
+import { zoneCreate } from "@/api/scan/request";
+import { getDataDictionary } from "@/api/dict";
+
 import { mapGetters, mapActions } from "vuex";
 
 import qrcode from "@/components/ledger/lib/qrcode";
 import uploadImgDialog from "@/components/dialogs/list/uploadImgDialog";
+
 export default {
   components: {
     qrcode, //二维码页面
@@ -71,7 +74,10 @@ export default {
     return {
       addNum: 1,
       onlyRead: false,
-      showTypes: [{ value: "partInfo", label: '隐藏信息点' }, { value: "all", label: '全部' }, { value: "Visible", label: '只看采集信息' }],
+      showTypes: [{ value: "partInfo", label: '隐藏信息点' }, { value: "all", label: '全部' }, {
+        value: "Visible",
+        label: '只看采集信息'
+      }],
       tableHeader: [],
       tableData: session.get("spaceAddData")
         ? session.get("spaceAddData").length
@@ -88,10 +94,10 @@ export default {
       inputMap: {
         flowBuild: {
           InputMode: 'D1',
-          Editable:true,
-          InfoPointCode:"flowBuild",
-          InfoPointName:"建筑楼层",
-          Path:"flowBuild"
+          Editable: true,
+          InfoPointCode: "flowBuild",
+          InfoPointName: "建筑楼层",
+          Path: "flowBuild"
         }
       }, //信息点和输入方式映射表
       updateInputShow: false, //是否显示临时维护输入框
@@ -109,7 +115,7 @@ export default {
       let buildFloorSelectd = this.space.buildFloorSelectd
       if (buildFloorSelectd && buildFloorSelectd.length == 0) {
         return ""
-      } else if (buildFloorSelectd && buildFloorSelectd.length == 1){
+      } else if (buildFloorSelectd && buildFloorSelectd.length == 1) {
         let build = buildFloorSelectd[0]
         if (build == 'all' && build == 'noKnow') {
           return ""
@@ -135,18 +141,16 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let params = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.space.spaceType
       };
       await getDataDictionary(params, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.tableHeader.forEach(item => {
-          if (item.Path) {
-            this.inputMap[item.Path] = item
+          if (item.path) {
+            this.inputMap[item.path] = item
           }
         })
         this.tableData[0].flowBuild = this.flowBuild
@@ -201,10 +205,10 @@ export default {
         this.$router.push({
           name: "spacelist",
           params: {
-            zone: this.space.otherType?this.space.otherType:this.space.spaceType,
+            zone: this.space.otherType ? this.space.otherType : this.space.spaceType,
             buildFloorSelectd: ['all'],
             isMyTab: '2',
-            otherType: this.space.otherType?this.space.spaceType:''
+            otherType: this.space.otherType ? this.space.spaceType : ''
           }
         });
       })
@@ -218,7 +222,7 @@ export default {
     handleAddTableRow() {
       let addRowLength = this.addNum;
       for (let i = 0; i < addRowLength; i++) {
-        this.tableData.push({flowBuild:this.flowBuild});
+        this.tableData.push({ flowBuild: this.flowBuild });
       }
       this.initTable();
       this.formaTableData();
@@ -274,7 +278,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除业务空间"
@@ -429,22 +433,27 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 100px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 1;
     }
   }
+
   .create_button {
     margin-top: 10px;
   }

+ 23 - 18
src/views/ledger/system/addsystem.vue

@@ -4,13 +4,13 @@
       <!-- <span style="width:20px;float:left;display:block;height:20px;cursor: pointer;" @click="changeAssetsFalg">
         <i class="el-icon-fa  el-icon-fa-compass"></i>
       </span> -->
-      <span style="float:left;">当前选择的系统类型:{{category.CategoryName}}</span>
+      <span style="float:left;">当前选择的系统类型:{{ category.CategoryName }}</span>
       <el-select v-model="showType" @change="initTable" style="width:125px;margin-right:10px;vertical-align:bottom;">
         <el-option v-for="item in showTypes" :key="item.value" :label="item.label" :value="item.value"></el-option>
       </el-select>
       <span>增加</span>
       <el-input v-model="addNum" style="width:50px;" size="small"></el-input>
-      <span>个{{category.CategoryName}}</span>
+      <span>个{{ category.CategoryName }}</span>
       <el-button @click="handleAddTableRow">增加</el-button>
     </el-row>
     <div class="tableBox">
@@ -41,14 +41,16 @@ import session from "@/framework/utils/storage";
 
 import editSysfloor from "@/components/ledger/lib/editSysFloor";
 import handsonTable from "@/components/common/handsontable";
+import { getDataDictionary } from "@/api/dict";
 import {
-  getDataDictionary,
+  // getDataDictionary,
   createSystemBuildFloor,
   // buildingQuery
 } from "@/api/scan/request";
 import { mapGetters, mapActions } from "vuex";
 import { buildingQuery } from '@/api/object/build';
 import qrcode from "@/components/ledger/lib/qrcode";
+
 export default {
   components: {
     handsonTable,
@@ -130,18 +132,18 @@ export default {
     //获取建筑数据
     getBuildData() {
       let param = {
-        PageNumber: 1,
-        PageSize: 1000,
-        Projection: [
-          "BuildID",
-          "BuildLocalName"
+        pageNumber: 1,
+        pageSize: 1000,
+        projection: [
+          "id",
+          "localName"
         ]
       }
       buildingQuery(param, res => {
-        let data = res.Content.map(t => {
+        let data = res.content.map(t => {
           return {
-            Code: t.BuildID,
-            Name: t.BuildLocalName,
+            Code: t.id,
+            Name: t.localName,
           }
         })
         data.unshift({ Code: '', Name: '未明确建筑' })
@@ -151,15 +153,13 @@ export default {
     // 获取表头数据(初始化表格)
     async getTableHeader() {
       let params = {
-        data: {
-          Orders: "sort asc, InfoPointName desc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc, name desc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.category.Category
       };
       await getDataDictionary(params, res => {
-        this.tableHeader = res.Content;
+        this.tableHeader = res.content;
         this.initTable();
       });
     },
@@ -265,7 +265,7 @@ export default {
         columns: this.formatHeaderType(this.tableHeader),
         rowHeights: 30,
         maxRows: this.tableData.length,
-        contextMenu: this.onlyRead ? false :{
+        contextMenu: this.onlyRead ? false : {
           items: {
             remove_row: {
               name: "删除该系统"
@@ -392,22 +392,27 @@ export default {
   background-color: #fff;
   padding: 10px;
   position: relative;
+
   .right {
     background: #fff;
   }
+
   .search-header {
     overflow: hidden;
     padding: 0 10px 10px 10px;
     border-bottom: 1px solid #bcbcbc;
   }
+
   .tableBox {
     display: flex;
     height: calc(100% - 100px);
     margin-top: 10px;
+
     .tableLeft {
       flex: 1;
     }
   }
+
   .create_button {
     margin-top: 10px;
   }

+ 143 - 123
src/views/ledger/system/systemDetail/index.vue

@@ -3,7 +3,7 @@
     <div class="condition">
       <div class="header">
         <el-button style="float:left;" size="small" type="default" icon="el-icon-back" @click="goBack"></el-button>
-        <span>{{params.Name}}</span>
+        <span>{{ params.Name }}</span>
       </div>
       <el-row class="spaceTypes">
         <div class="types">
@@ -51,100 +51,102 @@
       <!-- 系统所在竖井 -->
       <cenoteTable v-else-if="activeTab=='cenote'" :params="params" :type="activeTab"></cenoteTable>
       <!-- 系统所在业务空间 -->
-      <spaceTable v-else-if="activeTab=='space'" :params="params" :type="activeTab" :spaceType="spaceType" :floorType="floorType"></spaceTable>
+      <spaceTable v-else-if="activeTab=='space'" :params="params" :type="activeTab" :spaceType="spaceType"
+                  :floorType="floorType"></spaceTable>
     </div>
   </div>
 </template>
 
 <script>
-  import {mapGetters} from "vuex";
-  import {
-    // buildingQuery,
-    deleteGeneralSys,
-    getDataDictionary,
-    queryDictionaryHead,
-    queryLinkSys
-  } from '@/api/scan/request';
-  import { buildingQuery } from '@/api/object/build';
-  import cenoteTable from '@/components/ledger/system/table/cenoteTable';
-  import deviceTable from '@/components/ledger/system/table/deviceTable';
-  import spaceTable from '@/components/ledger/system/table/spaceTable';
-  import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
-  import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
-  import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
-  import selectRadio from "@/components/ledger/details/detail/selectRadio";
-  import exhibitionMaintain from "@/components/ledger/details/detail/exhibitionMaintain";
-  import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
-  import tools from "@/utils/scan/tools"
-
-
-  export default {
-    data() {
-      return {
-        params: {}, //参数-包含系统id 分区类型
-        tabsList: [
-          {Code: 'detail', Name: '系统详情'},
-          {Code: 'Equipment', Name: '系统内设备'},
-          {Code: 'cenote', Name: '系统所在竖井'},
-          {Code: 'space', Name: '系统所在业务空间'},
-        ], //tab页
-        activeTab: 'detail', //当前选中的tab
-        pointData: [], //信息点数据
-        exampleData: {}, //实例数据
-        spaceType: {},//空间种类
-        floorType: {},
-        currentRadio: '1',//当前选中的select
-        selectRadio: {
-          information: '设备信息点',
-          initRadio: '1',
-          radioList: [
-            {
-              value: '显示需采集信息点',
-              label: '1'
-            },
-            {
-              value: '显示有值信息点',
-              label: '2'
-            },
-            {
-              value: '显示全部信息点',
-              label: '3'
-            }
-          ]
-        },
-        exhibitionBaseInformation: {
-          information: {}
-        },
-        exhibitionEnergy: {
-          title: '能耗信息',
-          dynamic: [],
-        },
-        exhibitionMaintain: {
-          title: '维修/维保记录'
-        },
-        exhibitionFile: {
-          title: '文件',
-          list: {}
-        },
-        exhibitionCrux: {
-          title: '关键信息点:',
-          cruxArray: [],
-          allMessage: [],//全部信息点
-        },
-        exhibitionImage: {
-          title: '图片',
-          list: {},
-          arr:[]
-        },
-        exhibitionVideo: {
-          title: '视频',
-          list: {}
-        },
-        instance: {},//实例信息处理
-        isShowImage: true,
-        isShowVideo: true,
-        isShowFile: true,
-      }
+import { mapGetters } from "vuex";
+import {
+  // buildingQuery,
+  deleteGeneralSys,
+  // getDataDictionary,
+  queryDictionaryHead,
+  queryLinkSys
+} from '@/api/scan/request';
+import { getDataDictionary } from "@/api/dict";
+import { buildingQuery } from '@/api/object/build';
+import cenoteTable from '@/components/ledger/system/table/cenoteTable';
+import deviceTable from '@/components/ledger/system/table/deviceTable';
+import spaceTable from '@/components/ledger/system/table/spaceTable';
+import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
+import exhibitionFile from "@/components/ledger/details/detail/exhibitionFile";
+import exhibitionImage from "@/components/ledger/details/detail/exhibitionImage";
+import selectRadio from "@/components/ledger/details/detail/selectRadio";
+import exhibitionMaintain from "@/components/ledger/details/detail/exhibitionMaintain";
+import exhibitionVideo from "@/components/ledger/details/detail/exhibitionVideo";
+import tools from "@/utils/scan/tools"
+
+
+export default {
+  data() {
+    return {
+      params: {}, //参数-包含系统id 分区类型
+      tabsList: [
+        { Code: 'detail', Name: '系统详情' },
+        { Code: 'Equipment', Name: '系统内设备' },
+        { Code: 'cenote', Name: '系统所在竖井' },
+        { Code: 'space', Name: '系统所在业务空间' },
+      ], //tab页
+      activeTab: 'detail', //当前选中的tab
+      pointData: [], //信息点数据
+      exampleData: {}, //实例数据
+      spaceType: {},//空间种类
+      floorType: {},
+      currentRadio: '1',//当前选中的select
+      selectRadio: {
+        information: '设备信息点',
+        initRadio: '1',
+        radioList: [
+          {
+            value: '显示需采集信息点',
+            label: '1'
+          },
+          {
+            value: '显示有值信息点',
+            label: '2'
+          },
+          {
+            value: '显示全部信息点',
+            label: '3'
+          }
+        ]
+      },
+      exhibitionBaseInformation: {
+        information: {}
+      },
+      exhibitionEnergy: {
+        title: '能耗信息',
+        dynamic: [],
+      },
+      exhibitionMaintain: {
+        title: '维修/维保记录'
+      },
+      exhibitionFile: {
+        title: '文件',
+        list: {}
+      },
+      exhibitionCrux: {
+        title: '关键信息点:',
+        cruxArray: [],
+        allMessage: [],//全部信息点
+      },
+      exhibitionImage: {
+        title: '图片',
+        list: {},
+        arr: []
+      },
+      exhibitionVideo: {
+        title: '视频',
+        list: {}
+      },
+      instance: {},//实例信息处理
+      isShowImage: true,
+      isShowVideo: true,
+      isShowFile: true,
+    }
   },
   computed: {
     ...mapGetters("layout", ["projectId", "userId", "secret"])
@@ -176,18 +178,18 @@
     });
 
     let param = {
-      Cascade: [
-        { Name: "floor" }
+      cascade: [
+        { name: "floor" }
       ]
     };
     buildingQuery(param, res => {
-      res.Content.map(item => {
-        if (item.BuildID && item.BuildLocalName) {
-          this.floorType[item.BuildID] = item.BuildLocalName;
-          if (item.Floor instanceof Array) {
-            item.Floor.map(f => {
-              if (f.FloorID && f.FloorLocalName) {
-                this.floorType[f.FloorID] = f.FloorLocalName;
+      res.content.map(item => {
+        if (item.id && item.localName) {
+          this.floorType[item.id] = item.localName;
+          if (item.floor instanceof Array) {
+            item.floor.map(f => {
+              if (f.id && f.localName) {
+                this.floorType[f.id] = f.localName;
               }
             })
           }
@@ -196,9 +198,11 @@
     });
 
   },
-  mounted() { },
+  mounted() {
+  },
   watch: {
-    projectId() { }
+    projectId() {
+    }
   },
   methods: {
     // 返回
@@ -209,13 +213,11 @@
       })
     },
     // 获取表头和实例数据
-    getData () {
+    getData() {
       let params1 = {
-        data: {
-          Orders: "sort asc",
-          PageNumber: 1,
-          PageSize: 1000
-        },
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 1000,
         type: this.params.SysType
       }, params2 = {
         Filters: `SysID='${this.params.SysID}'`,
@@ -231,12 +233,12 @@
         })
       })
       Promise.all([promise1, promise2]).then(values => {
-        this.pointData = values[0].Content;
+        this.pointData = values[0].content;
         this.exampleData = values[1].Content[0];
         let obj = this.deepCopy(values[1].Content[0]);
         obj = tools.flattenKeys(obj);
-        for(let key in obj) {
-          if(Array.isArray(obj[key]) && !obj[key].length) {
+        for (let key in obj) {
+          if (Array.isArray(obj[key]) && !obj[key].length) {
             delete obj[key]
           }
         }
@@ -253,8 +255,8 @@
       let isList = this.pointData
       let isArr = []
       isList.map(j => {
-        if (this.instance.hasOwnProperty(j.Path)) {
-          j.value = this.instance[j.Path]
+        if (this.instance.hasOwnProperty(j.path)) {
+          j.value = this.instance[j.path]
           return j
         }
       })
@@ -265,7 +267,7 @@
     handleRadios(val) { //判断radio的值显示关键信息,基本信息,图片,文件
       let arr = []
       if (val == 1) { //需采集信息
-        arr = this.pointData.filter(i => i.Visible)
+        arr = this.pointData.filter(i => i.visible)
         //  图片和的处理
         // this.handlePicList(arr)
         // //  文件处理
@@ -274,10 +276,10 @@
       } else if (val == 2) { //有值信息点
         let list = this.pointData
         list.map(j => {
-          if (this.instance.hasOwnProperty(j.Path)) {
+          if (this.instance.hasOwnProperty(j.path)) {
             return {
               ...j,
-              value: this.instance[j.Path]
+              value: this.instance[j.path]
             }
           }
           arr = list.filter(k => k.value)
@@ -295,7 +297,7 @@
       let picObject = {}
       //处理数据格式
       arr.map(i => {
-        if(i.InputMode == 'F2') {
+        if (i.InputMode == 'F2') {
           switch (i.Path) {
             case 'LedgerParam.PhotoDoc.Drawing':
             case 'LedgerParam.Siteinstall.InstallPic':
@@ -333,7 +335,7 @@
         }
       }
       this.exhibitionImage.arr = isArray
-      let video = isArray.filter(i => i.Type != 'image' &&i.type != 'image' )
+      let video = isArray.filter(i => i.Type != 'image' && i.type != 'image')
       this.exhibitionVideo.list = video
       //判断是否显示图片组件
       this.isShowImage = isArray.length ? true : false
@@ -387,11 +389,11 @@
       this.currentRadio = val
     },
     formatDate(str) {
-      if(str) {
-        if(str.includes('-')) {
+      if (str) {
+        if (str.includes('-')) {
           return str
-        }else {
-          return  str.substr(0,4)+"-"+str.substr(4,2)+"-"+str.substr(6,2)+" "+str.substr(8,2) + ":" +str.substr(10,2) + ":"+str.substr(12,2)
+        } else {
+          return str.substr(0, 4) + "-" + str.substr(4, 2) + "-" + str.substr(6, 2) + " " + str.substr(8, 2) + ":" + str.substr(10, 2) + ":" + str.substr(12, 2)
         }
       } else {
         return '--'
@@ -449,7 +451,7 @@
                 Value: i.value,
                 Visible: i.Visible,
                 KeyWord: i.KeyWord,
-                InputMode:i.InputMode
+                InputMode: i.InputMode
               })
             } else {
               result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
@@ -460,7 +462,7 @@
                   Value: i.value,
                   Visible: i.Visible,
                   KeyWord: i.KeyWord,
-                  InputMode:i.InputMode
+                  InputMode: i.InputMode
                 }]
               }
             }
@@ -508,24 +510,30 @@
     border: 1px solid #dfe6ec;
     background: #fff;
     box-sizing: border-box;
+
     .header {
       padding-bottom: 10px;
+
       span {
         line-height: 33px;
         margin-left: 15px;
       }
     }
+
     .spaceTypes {
       .types {
         float: left;
         width: calc(100% - 200px);
+
         /deep/ .el-tabs__item.is-top {
           border-top: 2px solid transparent;
+
           &.is-active {
             border-top: 2px solid #409eff;
           }
         }
       }
+
       .deleBtn {
         float: left;
         width: 200px;
@@ -534,18 +542,22 @@
         border-bottom: 1px solid #e4e7ed;
       }
     }
+
     .content {
       height: calc(100% - 99px);
+
       .content-scrollbar {
         display: flex;
         height: 100%;
         flex-direction: row;
         box-sizing: border-box;
         background-color: @bgc;
+
         .content-left {
           display: flex;
           flex-direction: column;
           flex: 1;
+
           .content-showType {
             height: 50px;
             border: 1px solid #ccc;
@@ -553,21 +565,25 @@
             box-sizing: border-box;
             background: @bgc;
           }
+
           .content-point {
             display: flex;
             flex-direction: row;
             border: 1px solid #ccc;
             box-sizing: border-box;
             background: @bgc;
+
             .content-point-left {
               flex: 1;
             }
           }
         }
+
         .content-right {
           width: 400px;
           margin-left: 10px;
           box-sizing: border-box;
+
           .content-repair {
             height: 50px;
             line-height: 50px;
@@ -576,19 +592,23 @@
             background: @bgc;
             box-sizing: border-box;
           }
+
           .content-media {
             box-sizing: border-box;
           }
         }
       }
     }
+
     .main {
       margin-top: 10px;
       height: calc(100% - 96px);
     }
+
     .footer {
       margin-bottom: 10px;
     }
+
     /deep/ .el-scrollbar__wrap {
       overflow-x: hidden;
     }

+ 10 - 10
src/views/point/dynamicdata/addRelation/buildRela/index.vue

@@ -393,13 +393,13 @@ export default {
     //获取待关联实例-右侧
     getRightData() {
       let pa = {
-        PageNumber: this.rPage.pageNumber,
-        PageSize: this.rPage.pageSize,
-        Filters: 'not BuildID isNull'
+        pageNumber: this.rPage.pageNumber,
+        pageSize: this.rPage.pageSize,
+        filters: 'not id isNull'
       };
       //处理查询条件
       if (this.form.ObjectLocalName && this.form.ObjectLocalName.length) {
-        pa.Filters += `;BuildLocalName contain '${this.form.ObjectLocalName}'`;
+        pa.filters += `;localName contain '${this.form.ObjectLocalName}'`;
       }
       this.rTableLoading = true;
       dynamicRelatedObj({ Filters: `TypeName='${this.typeName}'` },
@@ -408,14 +408,14 @@ export default {
             return t.TypeCode + t.ProjectId + t.ObjectID
           })
           if (tempArr.length) {
-            pa.Filters += `;not BuildID in ${JSON.stringify(tempArr)}`
+            pa.filters += `;not id in ${JSON.stringify(tempArr)}`
           }
           buildingQuery(pa, res => {
-            this.rPage.total = res.Total;
-            let tempArr = res.Content.map(t => {
-              t.ObjectID = t.BuildID.substr(12);
-              t.ObjectLocalName = t.BuildLocalName;
-              t.ObjectLocalCode = t.BuildLocalID;
+            this.rPage.total = res.total;
+            let tempArr = res.content.map(t => {
+              t.ObjectID = t.id.substr(12);
+              t.ObjectLocalName = t.localName;
+              t.ObjectLocalCode = t.localId;
               return t;
             });
             if (this.rPage.pageNumber == 1) {

+ 2 - 1
src/views/point/dynamicdata/addRelation/equipRela/index.vue

@@ -161,10 +161,11 @@ import {
   dynamicDeleteRelation,
   dynamicPointTypeList,
   dynamicQueryAI,
-  queryEquip, //数据中心设备查询
   dynamicRelatedObj,
   dynamicEquipQuery
 } from "@/api/scan/request";
+import {queryEquip} from "@/api/object/equip"
+
 export default {
   components: {
     historyDialog,

+ 7 - 7
src/views/point/dynamicdata/addRelation/floorRela/index.vue

@@ -423,13 +423,13 @@ export default {
             pa.Filters += `;not FloorID in ${JSON.stringify(tempArr)}`
           }
           floorQuery(pa, res => {
-            this.rPage.total = res.Total;
-            let tempArr = res.Content.map(t => {
-              t.ObjectID = t.FloorID.substr(12);
-              t.ObjectLocalName = t.FloorLocalName;
-              t.ObjectLocalCode = t.FloorLocalID;
-              t.ObjectSequenceID = t.FloorSequenceID;
-              t.BuildLocalName = t.Building ? t.Building.BuildLocalName : '';
+            this.rPage.total = res.total;
+            let tempArr = res.content.map(t => {
+              t.ObjectID = t.id.substr(12);
+              t.ObjectLocalName = t.localName;
+              t.ObjectLocalCode = t.localId;
+              t.ObjectSequenceID = t.floorSequenceId;
+              t.BuildLocalName = t.building ? t.building.localName : '';
               return t;
             });
             if (this.rPage.pageNumber == 1) {

+ 4 - 3
src/views/ready/collectsetting/index.vue

@@ -127,9 +127,10 @@ import {
   queryFamilyAll,
   queryDictionaryHead
 } from "@/api/scan/request";
-import {queryPhysicsAllType, getDataDictionary, setDataDictionary} from "@/api/dict";
+import { queryPhysicsAllType, setDataDictionary } from "@/api/dict";
+import { getDataDictionary } from "@/api/dict";
 
-import {mapGetters} from "vuex";
+import { mapGetters } from "vuex";
 
 export default {
   name: "family",
@@ -644,7 +645,7 @@ export default {
       //   })
       // }
 
-      let param = {"Type": this.value, ProjectId: 'Pj1101050029'}
+      let param = { "Type": this.value, ProjectId: 'Pj1101050029' }
       queryPhysicsAllType(param, res => {
         this.allFamily = res.content.map((item) => ({
           code: item.code,

+ 10 - 10
src/views/relation/overview/detail/index.vue

@@ -78,7 +78,7 @@ export default {
       props: {
         value: 'BuildID',
         label: 'BuildLocalName',
-        children: 'Floor'
+        children: 'floor'
       },
       idToFloor: {},
       config: {
@@ -231,20 +231,20 @@ export default {
     // 获取项目下建筑
     getBuilding() {
       let pa = {
-        Cascade: [{ name: 'floor', Orders: 'SequenceId desc' }],
-        Orders: "BuildLocalName asc",
+        cascade: [{ name: 'floor', orders: 'sequenceId desc' }],
+        orders: "localName asc",
       }
       buildingQuery(pa, res => {
-        this.options = res.Content.map(t => {
-          if (t.Floor) {
-            t.Floor = t.Floor.map(item => {
-              item.BuildID = item.FloorID;
-              item.BuildLocalName = item.FloorLocalName;
-              this.idToFloor[item.FloorID] = item;
+        this.options = res.content.map(t => {
+          if (t.floor) {
+            t.floor = t.floor.map(item => {
+              item.BuildID = item.id;
+              item.BuildLocalName = item.localName;
+              this.idToFloor[item.id] = item;
               return item;
             })
           } else {
-            t.Floor = []
+            t.floor = []
           }
           return t;
         })

+ 28 - 18
src/views/screen/splitscreen/integrateresults/index.vue

@@ -22,7 +22,8 @@
         </div>
       </div>
       <div class="content-right" id="cadBox" v-loading="loading">
-        <canvas v-show="drawCanvas" :height="cadHeight" :width="cadWidth" id="exampleCanvas" :k="refreshCanvas"></canvas>
+        <canvas v-show="drawCanvas" :height="cadHeight" :width="cadWidth" id="exampleCanvas"
+                :k="refreshCanvas"></canvas>
         <div v-show="drawCanvas" class="operate">
           <!-- <canvasFun @fit="fit" @savePng="savePng" @saveSvg="saveSvg" @scale="scale" @saveJson="saveJson" :config="config" ref="canvasFun">
           </canvasFun> -->
@@ -41,7 +42,10 @@
 <script>
 import { LocationPointScene, DivideFloorScene, FloorView } from "@saga-web/cad-engine";
 import { SColor } from "@saga-web/draw/lib";
-import { queryEquip, floorQuery, zoneQueryOutline } from '@/api/scan/request';
+import { zoneQueryOutline } from '@/api/scan/request';
+import { floorQuery } from '@/api/object/floor';
+import { queryEquip } from "@/api/object/equip"
+
 //组件
 import realtimeData from '@/components/screen/integrateresults/realtimeData';
 import exampleList from '@/components/screen/integrateresults/exampleList';
@@ -81,22 +85,22 @@ export default {
         this.ObjectLocalName = example.ObjectLocalName;
         if (example.TypeCode == 'Eq' || example.TypeCode == 'Ec') {//设备或者组件
           let pa = {
-            Filters: `EquipID='${example.TypeCode + localStorage.getItem('projectId').substring(2) + example.ObjectID}'`
+            filters: `equipID='${example.TypeCode + localStorage.getItem('projectId').substring(2) + example.ObjectID}'`
           }
           //获取设备信息
           queryEquip(pa, equipMsg => {
-            if (equipMsg.Content[0] && equipMsg.Content[0].LocationJson && equipMsg.Content[0].FloorId) {
+            if (equipMsg.content[0] && equipMsg.content[0].locationJson && equipMsg.content[0].floorId) {
               let canvasOption = {
                 /** 标记的id  */
-                Id: equipMsg.Content[0].EquipID,
+                Id: equipMsg.content[0].equipID,
                 /** 标记的名称  */
-                Name: equipMsg.Content[0].EquipName,
+                Name: equipMsg.content[0].equipName,
                 /** X坐标 */
-                X: equipMsg.Content[0].LocationJson.X,
+                X: equipMsg.content[0].locationJson.X,
                 /** Y坐标 */
-                Y: -equipMsg.Content[0].LocationJson.Y
+                Y: -equipMsg.content[0].locationJson.Y
               }
-              this.loadDataToInstanceByFloorID(equipMsg.Content[0].FloorId, example.TypeCode, canvasOption);
+              this.loadDataToInstanceByFloorID(equipMsg.content[0].floorId, example.TypeCode, canvasOption);
             }
           })
         } else if (example.TypeCode == 'Sp') {//空间
@@ -140,22 +144,20 @@ export default {
         //类型
         if (typecode == 'Eq' || typecode == 'Ec') {
           this.scenes = new LocationPointScene();
-        }
-        else if (typecode == 'Sp') {
+        } else if (typecode == 'Sp') {
           this.scenes = new DivideFloorScene();
         }
-        if (floorMsg.Content[0] && floorMsg.Content[0].StructureInfo && floorMsg.Content[0].StructureInfo.FloorMap) {
+        if (floorMsg.content[0] && floorMsg.content[0].structureInfo && floorMsg.content[0].structureInfo.floorMap) {
           this.loading = true;
           //获取数据,并加载canvas
-          this.scenes.loadUrl(`/image-service/common/file_get?systemId=revit&key=${floorMsg.Content[0].StructureInfo.FloorMap}`).then(() => {
+          this.scenes.loadUrl(`/image-service/common/file_get?systemId=revit&key=${floorMsg.content[0].structureInfo.floorMap}`).then(() => {
             this.drawCanvas = true;
             this.loading = false;
             this.views.scene = this.scenes;
             this.scenes.isSpaceSelectable = false;
             if (typecode == 'Eq' || typecode == 'Ec') {
               this.scenes.addMarker(options);
-            }
-            else if (typecode == 'Sp') {
+            } else if (typecode == 'Sp') {
               this.scenes.addZone(options);
             }
             this.views.fitSceneToView();
@@ -165,8 +167,7 @@ export default {
               this.$refs.canvasFun.everyScale = this.views.scale;
             }
           })
-        }
-        else {
+        } else {
           this.loading = false;
           this.drawCanvas = false;
         }
@@ -227,10 +228,12 @@ $borderColor: rgba(201, 201, 201, 1);
   padding: 0 10px;
   margin-bottom: 10px;
   border-bottom: 1px solid $borderColor;
+
   /deep/ .el-breadcrumb {
     font-size: 14px;
   }
 }
+
 .page-content {
   display: flex;
   flex-grow: 1;
@@ -238,16 +241,19 @@ $borderColor: rgba(201, 201, 201, 1);
   flex-direction: row;
   justify-content: flex-start;
   overflow-y: auto;
+
   .content-left {
     display: flex;
     flex-direction: column;
     justify-content: flex-start;
     width: 260px;
     margin-right: 15px;
+
     .data-box {
       height: 140px;
       margin-bottom: 15px;
     }
+
     .example-box {
       flex-grow: 1;
       flex-shrink: 1;
@@ -255,12 +261,14 @@ $borderColor: rgba(201, 201, 201, 1);
       border: 1px solid $borderColor;
     }
   }
+
   .content-right {
     flex-grow: 1;
     flex-shrink: 1;
     border: 1px solid $borderColor;
     overflow: hidden;
     position: relative;
+
     .operate {
       position: absolute;
       left: 50%;
@@ -268,11 +276,13 @@ $borderColor: rgba(201, 201, 201, 1);
       transform: translateX(-50%);
       z-index: 99;
     }
+
     .no-data {
       height: 100%;
       text-align: center;
       box-sizing: border-box;
       position: relative;
+
       .position-icon {
         position: absolute;
         top: 50%;
@@ -282,4 +292,4 @@ $borderColor: rgba(201, 201, 201, 1);
     }
   }
 }
-</style>
+</style>

+ 366 - 345
src/views/screen/splitscreen/spaceledger/index.vue

@@ -1,30 +1,31 @@
-
 <template>
   <div class="box">
     <el-container style="height:100%">
       <el-header>
         <div class="spaceName">
-          <b>空间名称:</b>{{spaceDetails.RoomLocalName?spaceDetails.RoomLocalName:"-"}}
+          <b>空间名称:</b>{{ spaceDetails.RoomLocalName ? spaceDetails.RoomLocalName : "-" }}
         </div>
       </el-header>
       <el-container>
         <el-aside width="450px">
           <div class="aside-top">
             <div class="aside-top-left">
-              <p><b>空间功能区类型:</b>{{spaceDetails.RoomFuncType?spaceDetails.RoomFuncType:"-"}}</p>
-              <p style="padding-right: 10px"><b>备注文字:</b>{{spaceDetails.Intro?spaceDetails.Intro:"-"}}</p>
+              <p><b>空间功能区类型:</b>{{ spaceDetails.RoomFuncType ? spaceDetails.RoomFuncType : "-" }}</p>
+              <p style="padding-right: 10px"><b>备注文字:</b>{{ spaceDetails.Intro ? spaceDetails.Intro : "-" }}</p>
             </div>
             <div class="aside-top-right">
               <p><b>空间二维码:</b><span v-if="!spaceDetails.RoomQRCode">-</span></p>
-              <img :src="'/image-service/common/file_get/'+ spaceDetails.RoomQRCode +'?systemId=dataPlatform'" alt="二维码图片"
-                v-if="spaceDetails.RoomQRCode">
+              <img :src="'/image-service/common/file_get/'+ spaceDetails.RoomQRCode +'?systemId=dataPlatform'"
+                   alt="二维码图片"
+                   v-if="spaceDetails.RoomQRCode">
             </div>
           </div>
           <div>
             <p><b>位置图片:</b></p>
-            <div v-show="spaceDetails.Outline && spaceDetails.Outline[0] && spaceDetails.Outline[0].length" id="graphy" ref="graphy"
-              style="width:400px;height:280px;" v-loading="canvasLoading">
-              <div style="color:#333;font-weight: 700">{{buildingFloor}}</div>
+            <div v-show="spaceDetails.Outline && spaceDetails.Outline[0] && spaceDetails.Outline[0].length" id="graphy"
+                 ref="graphy"
+                 style="width:400px;height:280px;" v-loading="canvasLoading">
+              <div style="color:#333;font-weight: 700">{{ buildingFloor }}</div>
               <canvas id="floorCanvas" :width="canvasWidth" :height="canvasHeight" ref="canvas" tabindex="0"></canvas>
             </div>
           </div>
@@ -60,36 +61,36 @@
                     v-for="(item,index) in radioList"
                     :key="index"
                   >
-                    <el-radio :label="item.label">{{item.value}}</el-radio>
+                    <el-radio :label="item.label">{{ item.value }}</el-radio>
                   </el-radio-group>
 
                   <exhibitionBaseInformation :exhibitionBaseInformation="exhibitionBaseInformation"/>
                 </section>
                 <section v-show="activeTab === 'dynamicData'">
-                    <div style="text-align: left;margin-bottom: 10px">
-                      <el-checkbox v-model="onlyMessage" @change="handleCheckbox">只看需采集的信息点</el-checkbox>
-                    </div>
-                    <el-table height="700" ref="multipleTable" :data="tableData" stripe :header-cell-style="headerStyle">
-                      <el-table-column prop="InfoPointName" label="信息点名称">
-                        <template slot-scope="scope">
-                          <div>
-                            <span>{{ scope.row.InfoPointName}}</span>
-                            <span class="unit">{{scope.row.Unit?`${"("+scope.row.Unit+")"}`:""}}</span>
-                          </div>
-                        </template>
-                      </el-table-column>
-                      <el-table-column prop="functionNo" label="表号功能号"></el-table-column>
-                      <el-table-column prop="functionNoDynamicData" label="动态数据"></el-table-column>
-                      <el-table-column prop="functionNoTime" label="数据采集时间"></el-table-column>
-                      <!-- 后台未提供,暂不显示 -->
-                      <!-- <el-table-column prop="LastUpdate" label="数据采集时间"></el-table-column> -->
-                      <template slot="empty">
-                        <div style="height: 60%;transform: translateY(50%);">
-                          <i class="icon-wushuju iconfont"></i>
-                          数据暂无
+                  <div style="text-align: left;margin-bottom: 10px">
+                    <el-checkbox v-model="onlyMessage" @change="handleCheckbox">只看需采集的信息点</el-checkbox>
+                  </div>
+                  <el-table height="700" ref="multipleTable" :data="tableData" stripe :header-cell-style="headerStyle">
+                    <el-table-column prop="name" label="信息点名称">
+                      <template slot-scope="scope">
+                        <div>
+                          <span>{{ scope.row.name }}</span>
+                          <span class="unit">{{ scope.row.unit ? `${"(" + scope.row.unit + ")"}` : "" }}</span>
                         </div>
                       </template>
-                    </el-table>
+                    </el-table-column>
+                    <el-table-column prop="functionNo" label="表号功能号"></el-table-column>
+                    <el-table-column prop="functionNoDynamicData" label="动态数据"></el-table-column>
+                    <el-table-column prop="functionNoTime" label="数据采集时间"></el-table-column>
+                    <!-- 后台未提供,暂不显示 -->
+                    <!-- <el-table-column prop="LastUpdate" label="数据采集时间"></el-table-column> -->
+                    <template slot="empty">
+                      <div style="height: 60%;transform: translateY(50%);">
+                        <i class="icon-wushuju iconfont"></i>
+                        数据暂无
+                      </div>
+                    </template>
+                  </el-table>
 
                 </section>
                 <div v-if="activeTab === 'objectRelationship'" class="objectRelationship">
@@ -116,287 +117,295 @@
 </template>
 
 <script>
-  import {BeatchQueryParam, floorQuery, getDataDictionary, zoneQuery, zoneQueryOutline} from '@/api/scan/request'
-  import eqToSpaceTable from '@/components/business_space/newTables/eqToSpaceTable'
-  import syInSpaceTable from '@/components/business_space/newTables/syInSpaceTable'
-  import {DivideFloorScene, FloorView} from "@saga-web/cad-engine/lib";
-  import tools from "@/utils/scan/tools";
-  import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
-
-
-  export default {
-    data() {
-      return {
-        tabsList: [
-          {Code: 'staticData', Name: '静态数据'},
-          {Code: 'dynamicData', Name: '动态数据'},
-          {Code: 'objectRelationship', Name: '对象关系'}
-        ],
-        activeTab: 'staticData',
-        checked: true,
-        spaceDetails: {},
-        iframeSrc: '',
-        proId: '',
-        params: {},
-        view: null,
-        scene: null,
-        canvasWidth: 410,
-        canvasHeight: 300,
-        page: {
-          pageSize: 50,
-          pageSizes: [10, 20, 50, 100],
-          pageNumber: 1,
-          total: 0
-        },
-        tableData: [],
-        headerStyle: {// 列表样式
-          backgroundColor: '#e1e4e5',
-          color: '#2b2b2b',
-          lineHeight: '30px'
-        },
-        secret: '',
-        canvasLoading: false,
-        buildingFloor: localStorage.getItem('buildingFloor'),
-        onlyMessage: false,
-        exhibitionBaseInformation: {
-          information: {},
+import { BeatchQueryParam, floorQuery, zoneQuery, zoneQueryOutline } from '@/api/scan/request'
+import { getDataDictionary } from "@/api/dict";
+
+import eqToSpaceTable from '@/components/business_space/newTables/eqToSpaceTable'
+import syInSpaceTable from '@/components/business_space/newTables/syInSpaceTable'
+import { DivideFloorScene, FloorView } from "@saga-web/cad-engine/lib";
+import tools from "@/utils/scan/tools";
+import exhibitionBaseInformation from "@/components/ledger/details/detail/exhibitionBaseInformation";
+
+
+export default {
+  data() {
+    return {
+      tabsList: [
+        { Code: 'staticData', Name: '静态数据' },
+        { Code: 'dynamicData', Name: '动态数据' },
+        { Code: 'objectRelationship', Name: '对象关系' }
+      ],
+      activeTab: 'staticData',
+      checked: true,
+      spaceDetails: {},
+      iframeSrc: '',
+      proId: '',
+      params: {},
+      view: null,
+      scene: null,
+      canvasWidth: 410,
+      canvasHeight: 300,
+      page: {
+        pageSize: 50,
+        pageSizes: [10, 20, 50, 100],
+        pageNumber: 1,
+        total: 0
+      },
+      tableData: [],
+      headerStyle: {// 列表样式
+        backgroundColor: '#e1e4e5',
+        color: '#2b2b2b',
+        lineHeight: '30px'
+      },
+      secret: '',
+      canvasLoading: false,
+      buildingFloor: localStorage.getItem('buildingFloor'),
+      onlyMessage: false,
+      exhibitionBaseInformation: {
+        information: {},
+      },
+      pointData: [],
+      instance: {},
+      radioList: [
+        {
+          value: '显示全部信息点',
+          label: '1'
         },
-        pointData: [],
-        instance: {},
-        radioList: [
-          {
-            value: '显示全部信息点',
-            label: '1'
-          },
-          {
-            value: '显示有值信息点',
-            label: '2'
-          }
-        ],
-        radio: '1'
+        {
+          value: '显示有值信息点',
+          label: '2'
+        }
+      ],
+      radio: '1'
+    }
+  },
+  components: {
+    eqToSpaceTable,
+    syInSpaceTable,
+    exhibitionBaseInformation
+  },
+  beforeRouteEnter(to, from, next) {
+    if (to.query.RoomID && to.query.zone) {
+      next();
+    }
+  },
+  created() {
+    if (this.$route.name === "spaceLedger" && this.$route.query.RoomID && this.$route.query.zone) {
+      this.getData();
+    }
+  },
+
+  updated() {
+  },
+  computed: {},
+  methods: {
+    getData() {
+      //获取表头
+      let params1 = {
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 1000,
+        type: this.$route.query.zone
+      }
+      // 获取空间数据
+      let params2 = {
+        Filters: `RoomID="${this.$route.query.RoomID}"`,
+        ZoneType: this.$route.query.zone
       }
+      this.params = this.$route.query;
+      let promise1 = new Promise((resolve, reject) => {
+        getDataDictionary(params1, res => {
+          resolve(res)
+        })
+      })
+      let promise2 = new Promise((resolve, reject) => {
+        zoneQuery(params2, res => {
+          resolve(res)
+        })
+      })
+      Promise.all([promise1, promise2]).then(values => {
+        this.pointData = values[0].content;
+        this.spaceDetails = values[1].Content[0];
+        this.getOutline();
+        // if (this.spaceDetails.Outline && this.spaceDetails.Outline[0] && this.spaceDetails.Outline[0].length) {
+        //   this.getSpaceFloor();
+        // }
+        let obj = values[1].Content[0] ? this.deepCopy(values[1].Content[0]) : values[1].Content[0];
+        obj = tools.flattenKeys(obj);
+        for (let key in obj) {
+          if (Array.isArray(obj[key]) && !obj[key].length) {
+            delete obj[key]
+          }
+        }
+        this.instance = obj;
+        this.getInFormationPoitnName();
+        this.handleRadios(this.radio);
+      })
     },
-    components: {
-      eqToSpaceTable,
-      syInSpaceTable,
-      exhibitionBaseInformation
+    getOutline() {
+      zoneQueryOutline({
+        Filters: `RoomID="${this.$route.query.RoomID}"`,
+        ZoneType: this.$route.query.zone
+      }, res => {
+        if (res.Content[0] && res.Content[0].Outline && res.Content[0].Outline.length) {
+          this.spaceDetails.Outline = res.Content[0].Outline;
+          this.getSpaceFloor();
+        }
+      })
     },
-    beforeRouteEnter(to, from, next) {
-      if (to.query.RoomID && to.query.zone) {
-        next();
-      }
+    deepCopy(obj) {
+      return JSON.parse(JSON.stringify(obj))
     },
-    created() {
-      if (this.$route.name === "spaceLedger" && this.$route.query.RoomID && this.$route.query.zone) {
-        this.getData();
+    getSpaceFloor() {
+      // 获取业务空间楼层
+      let params = {
+        filters: `id='${this.spaceDetails.FloorId}'`
       }
+      floorQuery(params, res => {
+        if (res.content[0] && res.content[0].structureInfo && res.content[0].structureInfo.floorMap) {
+          this.FloorMap = res.content[0].structureInfo.floorMap;
+          this.getGraphy();
+        }
+      })
     },
-
-    updated() {
+    getGraphy() {// 绘制空间位置图片
+      let that = this;
+      that.clearGraphy()
+      that.scene = new DivideFloorScene();
+      this.canvasLoading = true;
+      that.scene.loadUrl(`/image-service/common/file_get?systemId=revit&key=${this.FloorMap}`).then(res => {
+        that.canvasLoading = false;
+        if (res == 'error') {
+          this.FloorMap = '';
+          this.$message.warning('数据解析异常');
+          return;
+        }
+        that.view.scene = that.scene;
+        that.view.fitSceneToView();
+        let tempArr = {
+          RoomLocalName: this.spaceDetails.RoomLocalName,
+          OutLine: this.spaceDetails.Outline,
+          RoomID: this.spaceDetails.RoomID,
+          Color: "#F56C6C",
+          HighLightFlag: true
+        }
+        that.scene.addZoneList([tempArr]);
+        this.scene.isSpaceSelectable = false;
+      })
     },
-    computed: {},
-    methods: {
-      getData() {
-        //获取表头
-        let params1 = {
-          data: {
-            Orders: "sort asc",
-            PageNumber: 1,
-            PageSize: 1000
-          },
-          type: this.$route.query.zone
+    clearGraphy() {
+      if (this.view && this.view.scene) {
+        this.view.scene = null;
+        return
+      }
+      this.view = new FloorView('floorCanvas')
+    },
+    getInFormationPoitnName() {// 获取动态数据
+      let proId = localStorage.getItem('projectId');
+      let secret = localStorage.getItem('secret');
+      let params = {
+        filters: 'inputMode in ["L1","L2","L","M"]',
+        orders: "sort asc",
+        pageNumber: 1,
+        pageSize: 500,
+        type: this.$route.query.zone
+      }
+      let param = {
+        secret: secret,
+        ProjId: proId,
+        data: {
+          criterias: []
         }
-        // 获取空间数据
-        let params2 = {
-          Filters: `RoomID="${this.$route.query.RoomID}"`,
-          ZoneType: this.$route.query.zone
+      }
+      getDataDictionary(params, res => {// 获取表号功能号
+        // this.tableData = res.Content;
+        if (this.onlyMessage) {
+          this.tableData = res.content.filter(i => i.visible)
+        } else {
+          this.tableData = res.content
         }
-        this.params = this.$route.query;
-        let promise1 = new Promise((resolve, reject) => {
-          getDataDictionary(params1, res => {
-            resolve(res)
-          })
+        this.tableData.map(item => {
+          let cur = tools.dataForKey(this.spaceDetails, item.path);
+          // item.functionNo = cur;
+          param.data.criterias.push({
+            id: this.spaceDetails.RoomID,
+            code: item.code
+          });
         })
-        let promise2 = new Promise((resolve, reject) => {
-          zoneQuery(params2, res => {
-            resolve(res)
+        BeatchQueryParam(param, res => {// 获取动态数据
+          res.Content.forEach((item, index) => {
+            this.$set(this.tableData[index], 'functionNo', item.data)
+            this.$set(this.tableData[index], 'functionNoTime', item.receivetime)
+            tools.setDataForKey(
+              this.spaceDetails,
+              this.tableData[index].path,
+              this.$set(this.tableData[index], "functionNoDynamicData", item.interrupt ? '已断数' : (item.error ? item.value ? "表号功能号不存在" : "未维护" : "暂未采集到实时数据"))
+            );
           })
-        })
-        Promise.all([promise1, promise2]).then(values => {
-          this.pointData = values[0].Content;
-          this.spaceDetails = values[1].Content[0];
-          this.getOutline();
-          // if (this.spaceDetails.Outline && this.spaceDetails.Outline[0] && this.spaceDetails.Outline[0].length) {
-          //   this.getSpaceFloor();
-          // }
-          let obj = values[1].Content[0] ? this.deepCopy(values[1].Content[0]) : values[1].Content[0];
-          obj = tools.flattenKeys(obj);
-          for(let key in obj) {
-            if(Array.isArray(obj[key]) && !obj[key].length) {
-              delete obj[key]
-            }
-          }
-          this.instance = obj;
-          this.getInFormationPoitnName();
-          this.handleRadios(this.radio);
-        })
-      },
-      getOutline(){
-        zoneQueryOutline({
-          Filters: `RoomID="${this.$route.query.RoomID}"`,
-          ZoneType: this.$route.query.zone
-        },res => {
-          if(res.Content[0]&&res.Content[0].Outline&&res.Content[0].Outline.length){
-            this.spaceDetails.Outline = res.Content[0].Outline;
-            this.getSpaceFloor();
-          }
-        })
-      },
-      deepCopy(obj) {
-        return JSON.parse(JSON.stringify(obj))
-      },
-      getSpaceFloor() {
-        // 获取业务空间楼层
-        let params = {
-          Filters: `FloorID='${this.spaceDetails.FloorId}'`
-        }
-        floorQuery(params, res => {
-          if (res.Content[0] && res.Content[0].StructureInfo && res.Content[0].StructureInfo.FloorMap) {
-            this.FloorMap = res.Content[0].StructureInfo.FloorMap;
-            this.getGraphy();
-          }
-        })
-      },
-      getGraphy() {// 绘制空间位置图片
-        let that = this;
-        that.clearGraphy()
-        that.scene = new DivideFloorScene();
-        this.canvasLoading = true;
-        that.scene.loadUrl(`/image-service/common/file_get?systemId=revit&key=${this.FloorMap}`).then(res => {
-          that.canvasLoading = false;
-          if (res == 'error') {
-            this.FloorMap = '';
-            this.$message.warning('数据解析异常');
-            return;
-          }
-          that.view.scene = that.scene;
-          that.view.fitSceneToView();
-          let tempArr = {
-            RoomLocalName: this.spaceDetails.RoomLocalName,
-            OutLine: this.spaceDetails.Outline,
-            RoomID: this.spaceDetails.RoomID,
-            Color: "#F56C6C",
-            HighLightFlag: true
-          }
-          that.scene.addZoneList([tempArr]);
-          this.scene.isSpaceSelectable = false;
-        })
-      },
-      clearGraphy() {
-        if (this.view && this.view.scene) {
-          this.view.scene = null;
-          return
-        }
-        this.view = new FloorView('floorCanvas')
-      },
-      getInFormationPoitnName() {// 获取动态数据
-        let proId = localStorage.getItem('projectId');
-        let secret = localStorage.getItem('secret');
-        let params = {
-          data: {
-            Filters: 'InputMode in ["L1","L2","L","M"]',
-            Orders: "sort asc",
-            PageNumber: 1,
-            PageSize: 500
-          },
-          type: this.$route.query.zone
+        });
+      })
+    },
+    handleCheckbox(val) {
+      this.onlyMessage = val
+      this.getInFormationPoitnName()
+    },
+    displayData(arr) {//对数据进行处理传给组件展示
+      const result = {}
+      const resultEnergy = {};
+      arr.forEach(i => {
+        if (this.instance && this.instance.hasOwnProperty(i.Path) && this.currentRadio != 2) {
+          i.value = this.instance[i.Path]
         }
-        let param = {
-          secret: secret,
-          ProjId: proId,
-          data: {
-            criterias: []
+        if (i.InputMode == 'C5') {
+          if (this.instance && this.instance.hasOwnProperty(i.Path)) {
+            let time = this.instance[i.Path]
+            i.value = this.formatDate(time)
           }
         }
-        getDataDictionary(params, res => {// 获取表号功能号
-          // this.tableData = res.Content;
-
-          if (this.onlyMessage) {
-            this.tableData = res.Content.filter(i => i.Visible)
-          } else {
-            this.tableData = res.Content
-          }
-          this.tableData.map(item => {
-            let cur = tools.dataForKey(this.spaceDetails, item.Path);
-            // item.functionNo = cur;
-            param.data.criterias.push({
-              id: this.spaceDetails.RoomID,
-              code: item.InfoPointCode
-            });
-          })
-          BeatchQueryParam(param, res => {// 获取动态数据
-            res.Content.forEach((item, index) => {
-              this.$set(this.tableData[index], 'functionNo', item.data)
-              this.$set(this.tableData[index], 'functionNoTime', item.receivetime)
-              tools.setDataForKey(
-                this.spaceDetails,
-                this.tableData[index].Path,
-                this.$set(this.tableData[index], "functionNoDynamicData", item.interrupt ? '已断数' : (item.error ? item.value ? "表号功能号不存在" : "未维护" : "暂未采集到实时数据"))
-              );
+        if (i.DataSource && i.DataSource.length) {
+          let source = JSON.parse(i.DataSource)
+          //判断输入类型
+          if (i.InputMode == 'D1L') {
+            let d1l = tools.formatDataSource(i.DataSource)
+            d1l.forEach(k => {
+              if (k.Code == this.instance[i.Path]) {
+                i.value = k.Name
+              }
             })
-          });
-        })
-      },
-      handleCheckbox(val) {
-        this.onlyMessage = val
-        this.getInFormationPoitnName()
-      },
-      displayData(arr) {//对数据进行处理传给组件展示
-        const result = {}
-        const resultEnergy = {};
-        arr.forEach(i => {
-          if (this.instance && this.instance.hasOwnProperty(i.Path) && this.currentRadio != 2) {
-            i.value = this.instance[i.Path]
-          }
-          if (i.InputMode == 'C5') {
+          } else if (i.InputMode == 'D2' || i.InputMode == 'C6') {
             if (this.instance && this.instance.hasOwnProperty(i.Path)) {
-              let time = this.instance[i.Path]
-              i.value = this.formatDate(time)
-            }
-          }
-          if (i.DataSource && i.DataSource.length) {
-            let source = JSON.parse(i.DataSource)
-            //判断输入类型
-            if (i.InputMode == 'D1L') {
-              let d1l = tools.formatDataSource(i.DataSource)
-              d1l.forEach(k => {
-                if (k.Code == this.instance[i.Path]) {
-                  i.value = k.Name
-                }
-              })
-            } else if (i.InputMode == 'D2' || i.InputMode == 'C6') {
-              if (this.instance && this.instance.hasOwnProperty(i.Path)) {
-                if (!Array.isArray(this.instance[i.Path])) {
-                  let transArray = this.instance[i.Path].split(',')
-                  i.value = source.filter(item => transArray.includes(item.Code)).map(item => item.Name).join(',')
-                }
+              if (!Array.isArray(this.instance[i.Path])) {
+                let transArray = this.instance[i.Path].split(',')
+                i.value = source.filter(item => transArray.includes(item.Code)).map(item => item.Name).join(',')
               }
             }
-            source.forEach(j => {
-              if (this.instance && j.Code == this.instance[i.Path]) {
-                i.value = j.Name
-              }
-            })
           }
-          switch (i.InputMode) {
-            case "L":
-            case "L1":
-            case "L2":
-            case "M":
-              break;
-            default:
-              if (result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`]) {
-                result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`].paths.push({
+          source.forEach(j => {
+            if (this.instance && j.Code == this.instance[i.Path]) {
+              i.value = j.Name
+            }
+          })
+        }
+        switch (i.InputMode) {
+          case "L":
+          case "L1":
+          case "L2":
+          case "M":
+            break;
+          default:
+            if (result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`]) {
+              result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`].paths.push({
+                Path: i.Path,
+                InfoPointName: i.InfoPointName,
+                InfoPointCode: i.InfoPointCode,
+                Value: i.value,
+                Visible: i.Visible,
+                KeyWord: i.KeyWord,
+                InputMode: i.InputMode
+              })
+            } else {
+              result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
+                paths: [{
                   Path: i.Path,
                   InfoPointName: i.InfoPointName,
                   InfoPointCode: i.InfoPointCode,
@@ -404,48 +413,37 @@
                   Visible: i.Visible,
                   KeyWord: i.KeyWord,
                   InputMode: i.InputMode
-                })
-              } else {
-                result[`${i.FirstName}${i.SecondName ? '/' + i.SecondName : ''}`] = {
-                  paths: [{
-                    Path: i.Path,
-                    InfoPointName: i.InfoPointName,
-                    InfoPointCode: i.InfoPointCode,
-                    Value: i.value,
-                    Visible: i.Visible,
-                    KeyWord: i.KeyWord,
-                    InputMode: i.InputMode
-                  }]
-                }
+                }]
               }
+            }
 
+        }
+      })
+      this.exhibitionBaseInformation.information = result
+    },
+    changRadio(val) {
+      this.handleRadios(val)
+      this.radio = val
+    },
+    handleRadios(val) {
+      let arr = []
+      if (val == 1) {
+        arr = this.pointData
+      } else {
+        let list = this.pointData
+        list.map(j => {
+          if (this.instance.hasOwnProperty(j.path)) {
+            return {
+              ...j,
+              value: this.instance[j.path]
+            }
           }
         })
-        this.exhibitionBaseInformation.information = result
-      },
-      changRadio(val) {
-        this.handleRadios(val)
-        this.radio = val
-      },
-      handleRadios(val) {
-        let arr = []
-        if (val == 1) {
-          arr = this.pointData
-        } else {
-          let list = this.pointData
-          list.map(j => {
-            if (this.instance.hasOwnProperty(j.Path)) {
-              return {
-                ...j,
-                value: this.instance[j.Path]
-              }
-            }
-          })
-          arr = list.filter(k => k.value)
-        }
-        this.displayData(arr)
+        arr = list.filter(k => k.value)
       }
-    },
+      this.displayData(arr)
+    }
+  },
   watch: {
     // 监听路由地址,并判断有RoomID和zone,重新请求空间数据
     "$route"(to, from) {
@@ -458,26 +456,27 @@
 </script>
 
 <style lang="less" scoped>
-  /*.box{*/
-  /*  .content-box{*/
-  /*    width: 100%;*/
-  /*    height: calc(100% - 90px);*/
-  /*  }*/
-  /*}*/
-  .box.screen-router {
-    padding: 0;
-
-    section {
-      .el-container {
-        padding: 0;
-      }
+/*.box{*/
+/*  .content-box{*/
+/*    width: 100%;*/
+/*    height: calc(100% - 90px);*/
+/*  }*/
+/*}*/
+.box.screen-router {
+  padding: 0;
+
+  section {
+    .el-container {
+      padding: 0;
     }
   }
+}
 
-  .el-header {
-    padding: 0;
+.el-header {
+  padding: 0;
   height: 30px !important;
   margin-top: -10px;
+
   .boxName {
     color: #fff;
     font-size: 16px;
@@ -486,6 +485,7 @@
     padding: 0 10px;
     background-color: #3f4f62;
   }
+
   .spaceName {
     font-size: 14px;
     line-height: 30px;
@@ -493,6 +493,7 @@
     box-sizing: border-box;
   }
 }
+
 .el-aside {
   color: #333;
   border: 1px solid #e4e7ed;
@@ -501,14 +502,18 @@
   box-sizing: border-box;
   height: calc(100% - 10px);
   overflow: hidden;
+
   .aside-top {
     overflow: hidden;
     display: flex;
+
     .aside-top-left {
       flex: 3;
     }
+
     .aside-top-right {
       float: right;
+
       img {
         margin-left: -10px;
         width: 140px;
@@ -516,8 +521,10 @@
       }
     }
   }
+
   .space-img {
     width: 100%;
+
     .img-box {
       float: left;
       position: relative;
@@ -525,6 +532,7 @@
       height: 180px;
       margin: 10px 10px 0 0;
       overflow: hidden;
+
       img {
         position: absolute;
         left: 50%;
@@ -535,11 +543,13 @@
     }
   }
 }
+
 .el-scrollbar {
   width: 430px;
   height: 100%;
   overflow-x: hidden !important;
 }
+
 .el-main {
   color: #333;
   /*text-align: center;*/
@@ -547,14 +557,17 @@
   width: 100%;
   padding: 10px 0 0 10px;
 }
+
 .el-tabs.el-tabs--card.el-tabs--top {
   height: 100% !important;
   width: 100%;
 }
+
 .objectRelationship {
   height: 100%;
   width: 100%;
   display: flex;
+
   .objectRelationship-left,
   .objectRelationship-center,
   .objectRelationship-right {
@@ -564,31 +577,39 @@
     height: 100% !important;
   }
 }
+
 #pane-dynamicData {
   height: calc(100% - 10px);
 }
+
 .el-tab-pane {
   height: 100%;
 }
+
 #pane-staticData {
   div {
     height: 100%;
   }
 }
+
 .unit {
   color: rgb(167, 167, 167);
 }
+
 #floorCanvas {
   position: static;
 }
+
 /deep/ .el-scrollbar__wrap {
   height: 100%;
   overflow-x: hidden !important;
   overflow-y: auto !important;
 }
+
 .objectRelationship {
   height: calc(100% - 46px) !important;
 }
+
 /deep/ .el-tabs__content {
   height: 100%;
 }