Bladeren bron

1、门禁录入

slowslo 4 jaren geleden
bovenliggende
commit
10588fc2cb
1 gewijzigde bestanden met toevoegingen van 208 en 62 verwijderingen
  1. 208 62
      src/views/accesscontrolmng/doordevice.vue

+ 208 - 62
src/views/accesscontrolmng/doordevice.vue

@@ -83,7 +83,8 @@ export default {
         calcHeight: 60,
         tip: false,
         searchShow: true,
-        searchMenuSpan: 6,
+        searchMenuSpan: 4,
+        searchMenuPosition: "left",
         border: true,
         index: true,
         viewBtn: false,
@@ -95,7 +96,6 @@ export default {
           {
             label: "设备名称",
             prop: "name",
-            search: true,
             overHidden: true,
             rules: [{
               required: true,
@@ -104,87 +104,163 @@ export default {
             }]
           },
           {
-            label:'',
-            prop:'mapSelect',
-            viewDisplay: false,
-            formslot: true,
-            hide: true,
-          },
-          {
-            label: "经度",
-            prop: "longitude",
-            width: 100,
-            overHidden: true,
-            hide:true,
+            label: "设备序列号",
+            prop: "serialNum",
+            labelWidth: 100,
+            width:150,
             rules: [{
               required: true,
-              message: "请输入经度",
+              message: "请输入Mac编码",
               trigger: "blur"
             }]
           },
           {
-            label: "纬度",
-            prop: "latitude",
-            width: 100,
-            overHidden: true,
-            hide:true,
-            rules: [{
-              required: true,
-              message: "请输入纬度",
-              trigger: "blur"
-            }]
+            label: "所属园区",
+            prop: "agencyName",
+            addDisplay: false,
+            editDisplay: false
           },
           {
-            label: "设备序列号",
-            prop: "serialNum",
-            width: 200,
-            rules: [{
-              required: true,
-              message: "请输入Mac编码",
-              trigger: "blur"
-            }]
+            label: "所属区域",
+            prop: "residentialName",
+            addDisplay: false,
+            editDisplay: false,
+            width: 120
+          },
+          {
+            label: "所属楼栋",
+            prop: "buildingName",
+            addDisplay: false,
+            editDisplay: false,
+            width: 100
+          },
+          {
+            label: "所属楼层",
+            prop: "floorName",
+            addDisplay: false,
+            editDisplay: false,
+            width: 100
+          },
+          {
+            label: "所属房间",
+            prop: "roomName",
+            addDisplay: false,
+            editDisplay: false,
+            width: 100
+          },
+          {
+            label: "所属企业",
+            prop: "enterpriseName",
+            addDisplay: false,
+            editDisplay: false,
+            hide: true,
           },
           {
-            label: "设备厂商",
-            prop: "deviceFactory",
+            label: "所属园区",
+            prop: "agencyId",
             type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=door_device_factory",
-            props:{
-              label: "dictValue",
-              value: "dictKey"
+            search: true,
+            remote: true,
+            searchSpan: 4,
+            searchFilterable: true,
+            hide: true,
+            dataType: "string",
+            cascaderItem: ['residentialId'],
+            dicUrl: "/api/cyzh-community/agency/list?size=500&id={{key}}",
+            dicFormatter:(res)=>{
+              return res.data.records;//返回字典的层级结构
+            },
+            props: {
+              label: "name",
+              value: "id"
             },
-            width: 135,
             rules: [{
               required: true,
-              message: "请选择设备厂商",
-              trigger: "blur"
+              message: "请选择所属区域",
+              trigger: "change"
             }],
-            hide: true
           },
           {
-            label: "园区",
-            prop: "agencyName"
+            label: "所属区域",
+            prop: "residentialId",
+            type: "select",
+            search: true,
+            searchSpan: 4,
+            searchFilterable: true,
+            hide: true,
+            cascaderItem: ['buildingId'],
+            dicUrl: "/api/cyzh-community/residential/list?size=500&agencyId={{key}}",
+            dicFormatter:(res)=>{
+              return res.data.records;//返回字典的层级结构
+            },
+            dateType: "string",
+            props: {
+              label: "name",
+              value: "id"
+            },
+            rules: [{
+              required: true,
+              message: "请选择所属区域",
+              trigger: "change"
+            }],
           },
           {
-            label: "区域",
-            prop: "residentialName"
+            label: "所属楼栋",
+            prop: "buildingId",
+            type: "select",
+            search: true,
+            searchSpan: 4,
+            searchFilterable: true,
+            hide: true,
+            cascaderItem: ['unitId'],
+            dicUrl: "/api/cyzh-community/building/list?size=500&residentialId={{key}}",
+            dicFormatter:(res)=>{
+              return res.data.records;//返回字典的层级结构
+            },
+            props: {
+              label: "name",
+              value: "id"
+            },
+            rules: [{
+              required: false,
+              message: "请选择所属楼栋",
+              trigger: "change"
+            }],
           },
           {
-            label: "楼栋",
-            prop: "buildingName"
+            label: "所属单元",
+            prop: "unitId",
+            type: "select",
+            search: true,
+            searchSpan: 4,
+            searchFilterable: true,
+            hide: true,
+            cascaderItem: ['floorId'],
+            dicUrl: "/api/cyzh-community/unit/list?size=500&buildingId={{key}}",
+            dicFormatter:(res)=>{
+              return res.data.records;//返回字典的层级结构
+            },
+            props: {
+              label: "name",
+              value: "id"
+            },
+            rules: [{
+              required: false,
+              message: "请选择所属单元",
+              trigger: "change"
+            }],
           },
           {
-            label: "所属区域",
-            prop: "residentialId",
-            dicFlag: true,
+            label: "所属楼层",
+            prop: "floorId",
             type: "select",
             search: true,
             searchFilterable: true,
-            slot: true,
-            formslot: true,
-            dataType: "number",
             hide: true,
-            dicUrl: "/api/cyzh-community/residential/list?size=500&name={{key}}",
+            searchSpan: 4,
+            dateType: "string",
+            cascaderItem: ['roomId'],
+            dicUrl: "/api/cyzh-community/floor/list?size=500&unitId={{key}}",
             dicFormatter:(res)=>{
               return res.data.records;//返回字典的层级结构
             },
@@ -193,8 +269,28 @@ export default {
               value: "id"
             },
             rules: [{
-              required: true,
-              message: "请选择所属区域",
+              required: false,
+              message: "请选择所属楼层",
+              trigger: "change"
+            }],
+          },
+          {
+            label: "所属房间",
+            prop: "roomId",
+            type: "select",
+            hide: true,
+            dicUrl: "/api/cyzh-community/room/list?size=500&floorId={{key}}",
+            dicFormatter:(res)=>{
+              return res.data.records;//返回字典的层级结构
+            },
+            dateType: "number",
+            props: {
+              label: "name",
+              value: "id"
+            },
+            rules: [{
+              required: false,
+              message: "请选择所属房间",
               trigger: "change"
             }],
           },
@@ -202,6 +298,9 @@ export default {
             label: "进出方向",
             prop: "isOut",
             type: "select",
+            width: 80,
+            hide: true,
+            align: "center",
             dicData:[
               {
                 label: "进",
@@ -221,11 +320,10 @@ export default {
           {
             label: "安装地址",
             prop: "address",
-            width: 350,
-            search: true,
+            hide: true,
             overHidden: true,
             rules: [{
-              required: true,
+              required: false,
               message: "请输入具体地址",
               trigger: "blur"
             }]
@@ -234,6 +332,8 @@ export default {
             label: "设备状态",
             prop: "deviceStatus",
             type: "select",
+            width: 90,
+            align: "center",
             dicUrl:"/api/blade-system/dict-biz/dictionary?code=face_device_status",
             props: {
               label: 'dictValue',
@@ -245,7 +345,53 @@ export default {
           },
           {
             label: "最近心跳",
-            prop: "heartbeatTime"
+            prop: "heartbeatTime",
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: true,
+            width: 130
+          }
+        ],
+        group:[
+          {
+            icon:'el-icon-info',
+            label: '地理位置',
+            prop: 'group',
+            column:[
+              {
+                label:'',
+                prop:'mapSelect',
+                viewDisplay: false,
+                formslot: true,
+                span: 24,
+                row: true,
+                hide: true,
+              },
+              {
+                label: "经度",
+                prop: "longitude",
+                width: 100,
+                overHidden: true,
+                hide:true,
+                rules: [{
+                  required: false,
+                  message: "请输入经度",
+                  trigger: "blur"
+                }]
+              },
+              {
+                label: "纬度",
+                prop: "latitude",
+                width: 100,
+                overHidden: true,
+                hide:true,
+                rules: [{
+                  required: false,
+                  message: "请输入纬度",
+                  trigger: "blur"
+                }]
+              },
+            ]
           }
         ]
       },