2 Коміти 65b67ee1ae ... 3c5474db6f

Автор SHA1 Опис Дата
  huangmp 3c5474db6f Merge remote-tracking branch 'origin/master' 4 роки тому
  huangmp 38fd144ca0 修改 4 роки тому

+ 68 - 0
src/components/desc/e-detail.vue

@@ -0,0 +1,68 @@
+<template>
+  <div>
+    <el-dialog :title="options.title" :visible.sync="dialogVisible" :append-to-body="true" :modal-append-to-body="true" center>
+      <e-desc :data='info' margin='-10px 2px 10px' label-width='100px'>
+        <e-desc-item :span="item.span" :label="item.label" v-for="(item,index) in options.column" :key="item.prop">
+          <template slot="content">
+            <div v-if="item.slot">
+              <slot :name="item.prop" :value="value(item)" v-if="value(item)"></slot>
+              <span v-else style="color: #aaaaaa;">暂无数据</span>
+            </div>
+            <div v-if="!item.slot">
+              <div v-if="value(item)">
+                <span v-if="item.dicData">{{dicValue(item)}}</span>
+                <span v-else>{{value(item)}}</span>
+              </div>
+              <span v-else style="color: #aaaaaa;">暂无数据</span>
+            </div>
+          </template>
+        </e-desc-item>
+      </e-desc>
+    </el-dialog>
+  </div>
+</template>
+<script>
+  import EDesc from '@/components/desc/e-desc.vue'
+  import EDescItem from '@/components/desc/e-desc-item.vue'
+  export default {
+    components: {
+      EDesc,
+      EDescItem
+    },
+    props: ['options'],
+    computed: {
+      value() {
+        return item => {
+          let data = this.info[item.prop]
+          if (data === 0) {
+            return "0"
+          }
+          if (this.$isNotEmpty(data)) {
+            return data
+          }
+          return null
+        }
+      },
+      dicValue() {
+        return item => {
+          let value = this.info[item.prop]
+          let dicData = item.dicData
+          let data = dicData.find(item => item.value == value)
+          return data?data.label:'未知'
+        }
+      }
+    },
+    data() {
+      return {
+        dialogVisible: false,
+        info: {}
+      }
+    },
+    methods: {
+      show(data) {
+        this.info = data
+        this.dialogVisible = true
+      }
+    }
+  }
+</script>

+ 80 - 46
src/views/dashboard/onefaceaccess/comps/person-detail.vue

@@ -1,61 +1,95 @@
 <template>
   <div>
-    <el-dialog title="陌生人员" :visible.sync="dialogVisible" :append-to-body="true" :modal-append-to-body="true">
-      <e-desc :data='info' margin='-10px 2px 10px' label-width='100px'>
-        <e-desc-item label="抓拍照片" :span="3">
-          <template slot="content">
-            <el-image style="width: 100px; height: 100px;margin-left: -15px;" :src="info.faceUrl" :preview-src-list="[info.faceUrl]"
-              fit="cover" :z-index="99999"></el-image>
-          </template>
-        </e-desc-item>
-        <e-desc-item label="人员姓名">{{info.userName}}</e-desc-item>
-        <e-desc-item label="体温检测">
-          <template slot="content">
-            <span v-if="info.temperature">{{ info.temperature }}℃</span>
-          </template>
-        </e-desc-item>
-        <e-desc-item label="开门方式">
-          <template slot="content">
-            <div v-if="info.openType==2">小程序一键开门</div>
-            <div v-else>刷脸开门</div>
-          </template>
-        </e-desc-item>
-        <e-desc-item label="开门时间" v-if="info.openTime">{{ info.openTime }}</e-desc-item>
-        <e-desc-item label="抓拍时间" v-if="info.createTime">{{ info.createTime }}</e-desc-item>
-        <e-desc-item label="抓拍分数">
-          <template slot="content">
-            <span v-if="info.score">{{ info.score }}分</span>
-          </template>
-        </e-desc-item>
-        <e-desc-item label="设备名称">{{ info.deviceName }}</e-desc-item>
-        <e-desc-item label="所在社区">{{ info.agencyName }}</e-desc-item>
-        <e-desc-item label="所在小区">{{ info.residentialName }}</e-desc-item>
-        <e-desc-item label="所在企业" v-if="info.enterpriseName">{{ info.enterpriseName }}</e-desc-item>
-        <e-desc-item label="设备地址">{{ info.deviceAddress }}</e-desc-item>
-      </e-desc>
-    </el-dialog>
+    <detail ref="detail" :options="options">
+      <template #faceUrl="{value}">
+        <el-image style="width: 100px; height: 100px;margin-left: -15px;" :src="value" :preview-src-list="[value]"
+          fit="cover" :z-index="99999"></el-image>
+      </template>
+      <template #temperature="{value}">
+        <span>{{value}}℃</span>
+      </template>
+      <template #openType="{value}">
+        <div v-if="value==2">小程序一键开门</div>
+        <div v-else>刷脸开门</div>
+      </template>
+      <template #score="{value}">
+        <span>{{value}}%</span>
+      </template>
+    </detail>
   </div>
 </template>
 
 <script>
-  import EDesc from '@/components/desc/e-desc.vue'
-  import EDescItem from '@/components/desc/e-desc-item.vue'
+  import detail from "@/components/desc/e-detail.vue"
   export default {
     components: {
-      EDesc,
-      EDescItem
+      detail
     },
     data() {
       return {
-        dialogVisible: false,
-        info: {}
-      }
+        options: {
+          title: '常住人员',
+          column: [{
+              label: '抓拍照片',
+              prop: 'faceUrl',
+              slot: true,
+              span: 3
+            },
+            {
+              label: '人员姓名',
+              prop: 'userName'
+            },
+            {
+              prop: 'temperature',
+              label: '体温检测',
+              slot: true
+            },
+            {
+              label: '开门方式',
+              prop: 'openType',
+              slot: true
+            },
+            {
+              label: '开门时间',
+              prop: 'openTime',
+            },
+            {
+              label: '抓拍时间',
+              prop: 'createTime',
+            },
+            {
+              label: '相似度',
+              prop: 'score',
+              slot:true
+            },
+            {
+              label: '设备名称',
+              prop: 'deviceName',
+            },
+            {
+              label: '所在社区',
+              prop: 'agencyName',
+            },
+            {
+              label: '所在小区',
+              prop: 'residentialName',
+            },
+            {
+              label: '设备地址',
+              prop: 'deviceAddress',
+            }
+          ]
+        }
+      };
     },
-    methods: {
-      show(data) {
-        this.info = data
-        this.dialogVisible = true
+    methods:{
+      show(data){
+        this.$refs.detail.show(data)
       }
     }
-  }
+  };
 </script>
+
+<style lang="scss" scoped>
+
+</style>

+ 7 - 2
src/views/dashboard/onefaceaccess/comps/resident.vue

@@ -4,7 +4,8 @@
 
     <div style="position: relative" v-if="$isNotEmpty(list)">
       <div style="position: absolute;right: -5px;bottom: -13px;z-index: 999;" v-show="!loading">
-        <el-pagination background @current-change="currentChange" small layout="prev, pager, next" :page-count="page.pages">
+        <el-pagination background @current-change="currentChange" small layout="prev, pager, next"
+          :page-count="page.pages">
         </el-pagination>
       </div>
 
@@ -69,7 +70,7 @@
           total: 0,
           pages: 0
         },
-        list: []
+        list: [],
       };
     },
     created() {
@@ -97,6 +98,10 @@
         this.loadStaffRecord()
       },
       showDetail(item) {
+        if (item.recgScore==-1||this.$isEmpty(item.recgScore)) {
+          item.recgScore=null
+        }
+        item.score=item.recgScore
         this.$refs.personDetail.show(item)
       },
       async loadStaffRecord() {

+ 3 - 0
src/views/dashboard/onefaceaccess/comps/strange.vue

@@ -93,6 +93,9 @@
         this.loadSnapRecord()
       },
       showDetail(item) {
+        if (item.recgScore==-1||this.$isEmpty(item.recgScore)) {
+          item.recgScore=null
+        }
         this.$refs.personDetail.show(item)
       },
       async loadSnapRecord() {

+ 292 - 606
src/views/smartaccess/form/houseuser.vue

@@ -13,7 +13,6 @@
       </div>
     </el-dialog>
 
-
     <el-dialog title="审核意见" :visible.sync="auditDialogShow" width="30%" :modal-append-to-body="true"
       :append-to-body="true" center>
       <el-input v-model="auditOpinion" placeholder="请输入审核意见(选填)"></el-input>
@@ -24,9 +23,17 @@
           确定审核不通过</el-button>
       </span>
     </el-dialog>
+
+    <detail ref="detail" :options="viewForm">
+      <template #faceUrl="{value}">
+        <el-image style="width: 100px; height: 100px;margin-left: -15px;" :src="value" :preview-src-list="[value]"
+          fit="cover" :z-index="99999"></el-image>
+      </template>
+    </detail>
   </div>
 </template>
 <script>
+  import detail from "@/components/desc/e-detail.vue"
   import {
     remove,
     update,
@@ -37,8 +44,13 @@
     pushFace,
     deleteFace,
   } from "@/api/estate/useraccesspermissions";
-  import {deepClone} from "@/util/util.js";
+  import {
+    deepClone
+  } from "@/util/util.js";
   export default {
+    components: {
+      detail
+    },
     data() {
       return {
         isAdd: false,
@@ -50,629 +62,306 @@
         dialogShow: false,
         type: 0,
         model: {},
-        editForm: {
-          detail: true,
+        option: {
+          detail: false,
           labelWidth: 110,
-
-          column: [
-            {
-              label: "",
-              prop: "faceUrl",
-              labelWidth: '43.5%',
-              row: true,
-              span: 24,
-              type: "upload",
-              listType: 'picture-img',
-              rules: [{
-                required: true,
-                message: "请上传人脸信息",
-                trigger: "blur"
-              }],
-              propsHttp: {
-                res: "data",
-                url: "link"
-              },
-              action: "/api/blade-resource/oss/endpoint/put-file",
+          column: [{
+            label: "",
+            prop: "faceUrl",
+            labelWidth: '43.5%',
+            row: true,
+            span: 24,
+            type: "upload",
+            listType: 'picture-img',
+            rules: [{
+              required: true,
+              message: "请上传人脸信息",
+              trigger: "blur"
             }],
-          group: [
-            {
-              label: '基本信息',
-              prop: 'group1',
-              column: [
-                {
-                  label: '姓名',
-                  prop: 'name',
-                  gutter:10,
-                  rules: [{
-                    required: true,
-                    message: "请输入真实姓名",
-                    trigger: "blur"
-                  }],
-                  span: 12
-                }, {
-                  label: '性别',
-                  prop: 'sex',
-                  type: 'select',
-                  dicData: [{
+            propsHttp: {
+              res: "data",
+              url: "link"
+            },
+            action: "/api/blade-resource/oss/endpoint/put-file",
+          }],
+          group: [{
+            label: '基本信息',
+            prop: 'group1',
+            column: [{
+                label: '姓名',
+                prop: 'name',
+                gutter: 10,
+                rules: [{
+                  required: true,
+                  message: "请输入真实姓名",
+                  trigger: "blur"
+                }],
+                span: 12
+              }, {
+                label: '性别',
+                prop: 'sex',
+                type: 'select',
+                dicData: [{
                     label: '男',
                     value: 1
                   },
-                    {
-                      label: '女',
-                      value: 2
-                    },
-                    {
-                      label: '未知',
-                      value: -1
-                    }
-                  ],
-                  span: 12
-                }, {
-                  label: '手机号',
-                  prop: 'phone',
-                  span: 12,
-                  rules: [{
-                    required: true,
-                    message: "请输入手机号",
-                    trigger: "blur"
-                  }],
-                },
-                {
-                  label: '身份证号',
-                  prop: 'idCard',
-                  span: 12,
-
-                },
-                {
-                  label: '登记来源',
-                  prop: 'createType',
-                  type: 'select',
-                  dicData: [{
-                    label: '小程序',
-                    value: 0
+                  {
+                    label: '女',
+                    value: 2
                   },
-                    {
-                      label: '后台',
-                      value: 1
-                    },
-                  ],
-                  span: 12
-                },
-              ]
-            }, {
-              label: '房屋信息',
-              prop: 'group2',
-              column: [
-                {
-                  label: "所属社区",
-                  prop: "agencyId",
-                  type: "select",
-                  overHidden: true,
-                  remote: true,
-                  dataType: "string",
-                  cascaderItem: ['residentialId'],
-                  dicUrl: '/api/cyzh-community/agency/list?size=100&name={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "name",
-                    value: "id"
-                  },
-                  rules: [{
-                    required: true,
-                    message: "请选择所属社区",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                },
-                {
-                  label: "所属小区",
-                  prop: "residentialId",
-                  type: "select",
-                  overHidden: true,
-                  cascaderItem: ['buildingId'],
-                  dicUrl: '/api/cyzh-community/residential/list?size=100&agencyId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "name",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属小区",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                },
-                {
-                  label: "所属楼栋",
-                  prop: "buildingId",
-                  type: "select",
-                  overHidden: true,
-                  cascaderItem: ['unitId'],
-                  dicUrl: '/api/cyzh-community/building/list?size=100&residentialId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "name",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属楼栋",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                },
-                {
-                  label: "所属单元",
-                  prop: "unitId",
-                  type: "select",
-                  overHidden: true,
-                  cascaderItem: ['roomId'],
-                  dicUrl: '/api/cyzh-community/unit/list?size=100&buildingId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "name",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属单元",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                },
-                // {
-                //   label: "所属楼层",
-                //   prop: "floorId",
-                //   type: "select",
-                //   overHidden: true,
-                //   dicUrl: '/api/cyzh-community/floor/list?size=100&unitId={{key}}',
-                //   dicFormatter: (res) => {
-                //     return res.data.records;
-                //   },
-                //   props: {
-                //     label: "floorName",
-                //     value: "id"
-                //   },
-                //   dataType: "string",
-                //   rules: [{
-                //     required: true,
-                //     message: "请选择所属楼层",
-                //     trigger: "blur"
-                //   }],
-                //   viewDisplay: false
-                // },
-                {
-                  label: "所属房间",
-                  prop: "roomId",
-                  type: "select",
-                  overHidden: true,
-                  dicUrl: '/api/cyzh-community/room/list?size=100&unitId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "name",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属房间",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                }
-              ]
-            }, {
-              label: '其他信息',
-              prop: 'group1',
-              column: [{
-                size: 'mini',
-                gutter: 10,
-                label: '备注信息',
-                prop: 'remark',
+                  {
+                    label: '未知',
+                    value: -1
+                  }
+                ],
                 span: 12
               }, {
-                readonly: true,
-                size: 'mini',
-                gutter: 10,
-                label: '审核意见',
-                prop: 'auditOpinion',
-                span: 12
-              }]
-            }]
-        },
-        viewForm: {
-          detail: true,
-          labelWidth: 110,
+                label: '手机号',
+                prop: 'phone',
+                span: 12,
+                rules: [{
+                  required: true,
+                  message: "请输入手机号",
+                  trigger: "blur"
+                }],
+              },
+              {
+                label: '身份证号',
+                prop: 'idCard',
+                span: 12,
 
-          column: [
-            {
-              label: "",
-              prop: "faceUrl",
-              labelWidth: '43.5%',
-              row: true,
-              span: 24,
-              type: "upload",
-              listType: 'picture-img',
-              rules: [{
-                required: true,
-                message: "请上传人脸信息",
-                trigger: "blur"
-              }],
-              propsHttp: {
-                res: "data",
-                url: "link"
               },
-              action: "/api/blade-resource/oss/endpoint/put-file",
-            }],
-          group: [
-            {
-              label: '基本信息',
-              prop: 'group1',
-              column: [
-                {
-                  label: '姓名',
-                  prop: 'name',
-                  gutter:10,
-                  rules: [{
-                    required: true,
-                    message: "请输入真实姓名",
-                    trigger: "blur"
-                  }],
-                  span: 12
-                }, {
-                  label: '性别',
-                  prop: 'sex',
-                  type: 'select',
-                  dicData: [{
-                    label: '男',
-                    value: 1
-                  },
-                    {
-                      label: '女',
-                      value: 2
-                    },
-                    {
-                      label: '未知',
-                      value: -1
-                    }
-                  ],
-                  span: 12
-                }, {
-                  label: '手机号',
-                  prop: 'phone',
-                  span: 12,
-                  rules: [{
-                    required: true,
-                    message: "请输入手机号",
-                    trigger: "blur"
-                  }],
+            ]
+          }, {
+            label: '房屋信息',
+            prop: 'group2',
+            column: [{
+                label: "所属社区",
+                prop: "agencyId",
+                type: "select",
+                overHidden: true,
+                remote: true,
+                dataType: "string",
+                cascaderItem: ['residentialId'],
+                dicUrl: '/api/cyzh-community/agency/list?size=100&name={{key}}',
+                dicFormatter: (res) => {
+                  return res.data.records;
                 },
-                {
-                  label: '身份证号',
-                  prop: 'idCard',
-                  span: 12,
-
+                props: {
+                  label: "name",
+                  value: "id"
                 },
-                {
-                  label: '登记来源',
-                  prop: 'createType',
-                  type: 'select',
-                  dicData: [{
-                    label: '小程序',
-                    value: 0
-                  },
-                    {
-                      label: '后台',
-                      value: 1
-                    },
-                  ],
-                  span: 12
+                rules: [{
+                  required: true,
+                  message: "请选择所属社区",
+                  trigger: "blur"
+                }],
+                viewDisplay: false
+              },
+              {
+                label: "所属小区",
+                prop: "residentialId",
+                type: "select",
+                overHidden: true,
+                cascaderItem: ['buildingId'],
+                dicUrl: '/api/cyzh-community/residential/list?size=100&agencyId={{key}}',
+                dicFormatter: (res) => {
+                  return res.data.records;
                 },
-              ]
-            }, {
-              label: '房屋信息',
-              prop: 'group2',
-              column: [
-                {
-                  label: "所属社区",
-                  prop: "agencyName",
+                props: {
+                  label: "name",
+                  value: "id"
                 },
-                {
-                  label: "所属小区",
-                  prop: "residentialName",
+                dataType: "string",
+                rules: [{
+                  required: true,
+                  message: "请选择所属小区",
+                  trigger: "blur"
+                }],
+                viewDisplay: false
+              },
+              {
+                label: "所属楼栋",
+                prop: "buildingId",
+                type: "select",
+                overHidden: true,
+                cascaderItem: ['unitId'],
+                dicUrl: '/api/cyzh-community/building/list?size=100&residentialId={{key}}',
+                dicFormatter: (res) => {
+                  return res.data.records;
                 },
-                {
-                  label: "所属楼栋",
-                  prop: "buildingName",
+                props: {
+                  label: "name",
+                  value: "id"
                 },
-                {
-                  label: "所属单元",
-                  prop: "unitName",
+                dataType: "string",
+                rules: [{
+                  required: true,
+                  message: "请选择所属楼栋",
+                  trigger: "blur"
+                }],
+                viewDisplay: false
+              },
+              {
+                label: "所属单元",
+                prop: "unitId",
+                type: "select",
+                overHidden: true,
+                cascaderItem: ['roomId'],
+                dicUrl: '/api/cyzh-community/unit/list?size=100&buildingId={{key}}',
+                dicFormatter: (res) => {
+                  return res.data.records;
                 },
-                // {
-                //   label: "所属楼层",
-                //   prop: "floorName",
-                // },
-                {
-                  label: "所属房间",
-                  prop: "roomName",
-                }
-              ]
+                props: {
+                  label: "name",
+                  value: "id"
+                },
+                dataType: "string",
+                rules: [{
+                  required: true,
+                  message: "请选择所属单元",
+                  trigger: "blur"
+                }],
+                viewDisplay: false
+              },
+              // {
+              //   label: "所属楼层",
+              //   prop: "floorId",
+              //   type: "select",
+              //   overHidden: true,
+              //   dicUrl: '/api/cyzh-community/floor/list?size=100&unitId={{key}}',
+              //   dicFormatter: (res) => {
+              //     return res.data.records;
+              //   },
+              //   props: {
+              //     label: "floorName",
+              //     value: "id"
+              //   },
+              //   dataType: "string",
+              //   rules: [{
+              //     required: true,
+              //     message: "请选择所属楼层",
+              //     trigger: "blur"
+              //   }],
+              //   viewDisplay: false
+              // },
+              {
+                label: "所属房间",
+                prop: "roomId",
+                type: "select",
+                overHidden: true,
+                dicUrl: '/api/cyzh-community/room/list?size=100&unitId={{key}}',
+                dicFormatter: (res) => {
+                  return res.data.records;
+                },
+                props: {
+                  label: "name",
+                  value: "id"
+                },
+                dataType: "string",
+                rules: [{
+                  required: true,
+                  message: "请选择所属房间",
+                  trigger: "blur"
+                }],
+                viewDisplay: false
+              }
+            ]
+          }, {
+            label: '其他信息',
+            prop: 'group1',
+            column: [{
+              size: 'mini',
+              gutter: 10,
+              label: '备注信息',
+              prop: 'remark',
+              span: 12
             }, {
-              label: '其他信息',
-              prop: 'group1',
-              column: [{
-                size: 'mini',
-                gutter: 10,
-                label: '备注信息',
-                prop: 'remark',
-                span: 12
-              }, {
-                readonly: true,
-                size: 'mini',
-                gutter: 10,
-                label: '审核意见',
-                prop: 'auditOpinion',
-                span: 12
-              }]
+              readonly: true,
+              size: 'mini',
+              gutter: 10,
+              label: '审核意见',
+              prop: 'auditOpinion',
+              span: 12
             }]
+          }]
         },
-        option: {
-          detail: true,
-          labelWidth: 110,
-
-          column: [
-            {
-              label: "",
+        viewForm: {
+          title: '常住人员信息',
+          column: [{
+              label: "人脸信息",
               prop: "faceUrl",
-              labelWidth: '43.5%',
-              row: true,
-              span: 24,
-              type: "upload",
-              listType: 'picture-img',
-              rules: [{
-                required: true,
-                message: "请上传人脸信息",
-                trigger: "blur"
-              }],
-              propsHttp: {
-                res: "data",
-                url: "link"
-              },
-              action: "/api/blade-resource/oss/endpoint/put-file",
-            }],
-          group: [
+              span: 3,
+              slot: true
+            },
             {
-              label: '基本信息',
-              prop: 'group1',
-              column: [
-                {
-                  label: '姓名',
-                  prop: 'name',
-                  gutter:10,
-                  rules: [{
-                    required: true,
-                    message: "请输入真实姓名",
-                    trigger: "blur"
-                  }],
-                  span: 12
-                }, {
-                  label: '性别',
-                  prop: 'sex',
-                  type: 'select',
-                  dicData: [{
-                    label: '男',
-                    value: 1
-                  },
-                    {
-                      label: '女',
-                      value: 2
-                    },
-                    {
-                      label: '未知',
-                      value: -1
-                    }
-                  ],
-                  span: 12
-                }, {
-                  label: '手机号',
-                  prop: 'phone',
-                  span: 12,
-                  rules: [{
-                    required: true,
-                    message: "请输入手机号",
-                    trigger: "blur"
-                  }],
+              label: '姓名',
+              prop: 'name',
+            }, {
+              label: '性别',
+              prop: 'sex',
+              dicData: [{
+                  label: '男',
+                  value: 1
                 },
                 {
-                  label: '身份证号',
-                  prop: 'idCard',
-                  span: 12,
-
+                  label: '女',
+                  value: 2
                 },
                 {
-                  label: '登记来源',
-                  prop: 'createType',
-                  type: 'select',
-                  dicData: [{
-                    label: '后台录入',
-                    value: 0
-                  },
-                    {
-                      label: '小程序录入',
-                      value: 1
-                    },
-                  ],
-                  span: 12
-                },
-              ]
+                  label: '未知',
+                  value: -1
+                }
+              ],
+            }, {
+              label: '手机号',
+              prop: 'phone',
             },
             {
-              label: '房屋信息',
-              prop: 'group2',
-              column: [
-                {
-                  label: "所属社区",
-                  prop: "agencyId",
-                  type: "select",
-                  overHidden: true,
-                  remote: true,
-                  dataType: "string",
-                  cascaderItem: ['residentialId'],
-                  dicUrl: '/api/cyzh-community/agency/list?size=100&name={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "name",
-                    value: "id"
-                  },
-                  rules: [{
-                    required: true,
-                    message: "请选择所属社区",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                },
-                {
-                  label: "所属小区",
-                  prop: "residentialId",
-                  type: "select",
-                  overHidden: true,
-                  dicUrl: '/api/cyzh-community/residential/list?size=100&agencyId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "residentialName",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属小区",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                },
-                {
-                  label: "所属楼栋",
-                  prop: "buildingId",
-                  type: "select",
-                  overHidden: true,
-                  dicUrl: '/api/cyzh-community/building/list?size=100&residentialId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "buildingName",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属楼栋",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
-                },
-                {
-                  label: "所属单元",
-                  prop: "unitId",
-                  type: "select",
-                  overHidden: true,
-                  dicUrl: '/api/cyzh-community/unit/list?size=100&buildingId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "unitName",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属单元",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
+              label: '身份证号',
+              prop: 'idCard',
+            },
+            {
+              label: '登记来源',
+              prop: 'createType',
+              dicData: [{
+                  label: '小程序',
+                  value: 0
                 },
-                // {
-                //   label: "所属楼层",
-                //   prop: "floorId",
-                //   type: "select",
-                //   overHidden: true,
-                //   dicUrl: '/api/cyzh-community/floor/list?size=100&unitId={{key}}',
-                //   dicFormatter: (res) => {
-                //     return res.data.records;
-                //   },
-                //   props: {
-                //     label: "floorName",
-                //     value: "id"
-                //   },
-                //   dataType: "string",
-                //   rules: [{
-                //     required: true,
-                //     message: "请选择所属楼层",
-                //     trigger: "blur"
-                //   }],
-                //   viewDisplay: false
-                // },
                 {
-                  label: "所属房间",
-                  prop: "roomId",
-                  type: "select",
-                  overHidden: true,
-                  dicUrl: '/api/cyzh-community/floor/list?size=100&floorId={{key}}',
-                  dicFormatter: (res) => {
-                    return res.data.records;
-                  },
-                  props: {
-                    label: "roomName",
-                    value: "id"
-                  },
-                  dataType: "string",
-                  rules: [{
-                    required: true,
-                    message: "请选择所属房间",
-                    trigger: "blur"
-                  }],
-                  viewDisplay: false
+                  label: '后台',
+                  value: 1
                 }
-              ]
+              ],
             },
             {
-              label: '其他信息',
-              prop: 'group1',
-              column: [{
-                size: 'mini',
-                gutter: 10,
-                label: '备注信息',
-                prop: 'remark',
-                span: 12
-              }, {
-                readonly: true,
-                size: 'mini',
-                gutter: 10,
-                label: '审核意见',
-                prop: 'auditOpinion',
-                span: 12
-              }]
-            }]
+              label: "所属社区",
+              prop: "agencyName",
+            },
+            {
+              label: "所属小区",
+              prop: "residentialName",
+            },
+            {
+              label: "所属楼栋",
+              prop: "buildingName",
+            },
+            {
+              label: "所属单元",
+              prop: "unitName",
+            },
+            {
+              label: "所属房间",
+              prop: "roomName",
+            },
+            {
+              label: '备注信息',
+              prop: 'remark',
+            }, {
+              label: '审核意见',
+              prop: 'auditOpinion',
+            }
+          ]
         },
       }
     },
@@ -691,7 +380,7 @@
     methods: {
       //下发人脸
       pushUserFaceToDevice(id, userName, deviceIdList) {
-        let params ={
+        let params = {
           userId: id,
           userName: userName,
           userType: "ZH_",
@@ -713,10 +402,10 @@
             type: "warning"
           })
           .then(() => {
-            let params={
-              deviceIds:deviceIdList.join(','),
-              userId:id,
-              userType:"ZH_"
+            let params = {
+              deviceIds: deviceIdList.join(','),
+              userId: id,
+              userType: "ZH_"
             };
             return deleteFace(params);
           })
@@ -730,23 +419,20 @@
       showDialog(model, detail = true) {
         this.isAdd = false
         this.model = model
-        if(detail){
-          this.option = this.viewForm;
-        }else{
-          this.option = this.editForm;
+        if (detail) {
+          this.$refs.detail.show(model)
+          return
         }
-        this.option.detail = detail
         this.dialogShow = true;
       },
       showAddForm() {
         this.isAdd = true;
         this.dialogShow = true;
-        this.option = this.editForm;
         this.option.detail = false;
-        setTimeout(()=>{
+        setTimeout(() => {
           this.$refs.avueForm.resetForm()
           this.model = {}
-        },20)
+        }, 20)
       },
       submit(form, done) {
         let data = deepClone(form)
@@ -764,7 +450,7 @@
           }, error => {
             window.console.log(error);
           });
-        }else{
+        } else {
           update(data).then(() => {
             done();
             this.dialogShow = false;