MrShi
2024-03-08 cf1972fe1e1ec70717d3a9edd63d906090d33e09
admin/src/components/business/OperaDeviceRoleWindow.vue
@@ -2,15 +2,15 @@
    <GlobalWindow
        :title="title"
        :visible.sync="visible"
        width="50%"
        width="900px"
        :confirm-working="isWorking"
        @confirm="confirm"
    >
        <el-form :model="form" ref="form" :rules="rules">
            <el-form-item label="门禁组名称" prop="name">
            <el-form-item label="门禁点分组名称" prop="name">
                <el-input v-model="form.name" placeholder="请输入名称" v-trim/>
            </el-form-item>
            <el-form-item label="默认门禁组" prop="isDefault">
            <el-form-item label="默认门禁点分组" prop="isDefault">
                <el-switch
                    v-model="form.isDefault"
                    active-color="#13ce66"
@@ -27,9 +27,10 @@
                <el-transfer
                    v-if="form.radio === 1"
                    style="margin-top: 15px;"
                    :titles="['未选门禁组', '已选门禁组']"
                    :titles="['未选门禁点', '已选门禁点']"
                    filterable
                    filter-placeholder="请输入门禁组名称"
                    :filter-method="filterMethod"
                    filter-placeholder="请输入门禁点或区域名称"
                    v-model="form.doorIds"
                    :data="device">
                </el-transfer>
@@ -54,7 +55,7 @@
        }
      }
      callback()
    }
    };
    return {
      // 表单数据
      form: {
@@ -66,6 +67,10 @@
        radio: 0
      },
      device: [],
      filterMethod(query, item) {
        if (!query) return item;
        return item.label.indexOf(query) > -1 || item.area.indexOf(query) > -1;
      },
      // 验证规则
      rules: {
        name: [
@@ -157,7 +162,8 @@
        .then(res => {
          this.device = res.map(item => {
            return {
              label: item.name,
              label: item.doorName,
              area: item.regionPathName,
              key: item.id
            }
          })
@@ -192,6 +198,6 @@
<style>
    .el-transfer-panel {
        width: 350px;
        width: 350px !important;
    }
</style>