Blame view

src/views/system/sqywgz/components/dyztsd.vue 4.29 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
<!--
  功能:单元状态设定
-->
<template>
  <div class='该组件名称'>
    <el-form :model="ruleForm" :rules="rules" label-width="135px">
      <el-row :gutter="20">
        <el-col :span="8">
          <el-form-item label="登记业务编码" prop="djywbm">
            <el-input v-model="ruleForm.djywbm"></el-input>
          </el-form-item>
        </el-col>
        <el-col :span="16">
          <el-form-item label="登记业务名称" prop="djywmc">
            <el-input v-model="ruleForm.djywmc"></el-input>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
    <div class="dyztsd-title">
      <b>请勾选需要查询的权利信息</b>
      <div>
        <el-button type="text" @click="handleSelectall">选择全部</el-button>
        <el-button type="text" @click="handleInvert">清除全部</el-button>
      </div>
    </div>
    <el-divider></el-divider>
    <ul class="qlxx-list">
      <li v-for="(item, index) in dataList.qlxxList" :key="index">
        <el-checkbox v-model="item.checked">{{ item.name }}</el-checkbox>
      </li>
    </ul>
    <ul class="screen-list">
      <li v-for="(item, index) in dataList.screenList" :key="index">
        <div class="screen-list-left">
任超 committed
36
          <el-switch v-model="item.checked" @change="handleSelect(item)">
37 38 39
          </el-switch>
          {{ item.name }}
        </div>
任超 committed
40
        <el-radio-group v-model="item.radio" :disabled="!item.checked">
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
          <el-radio :label="1">正在办理</el-radio>
          <el-radio :label="2">未办理</el-radio>
        </el-radio-group>
      </li>
    </ul>
  </div>
</template>
<script>
export default {
  data () {
    return {
      ruleForm: {
        djywbm: '',
        djywmc: ''
      },
      rules: {
        djywbm: [
          { required: true, message: '登记业务编码', trigger: 'blur' },
        ],
        djywmc: [
          { required: true, message: '登记业务名称', trigger: 'blur' },
        ],
      },
      dataList: {
        qlxxList: [
          {
            checked: false,
            name: '国有建设用地使用权'
          },
          {
            checked: false,
            name: '宅基地使用权'
          },
          {
            checked: false,
            name: '国有建设用地使用权'
          },
          {
            checked: false,
            name: '宅基地使用权/房屋所有权'
          },
          {
            checked: false,
            name: '国有建设用地使用权'
          },
          {
            checked: false,
            name: '国有建设用地使用权'
          },
        ],
        screenList: [
          {
            checked: true,
            name: '筛选单元办理状态条件',
            radio: 1
          },
          {
            checked: true,
            name: '筛选单元办理状态条件',
            radio: 1
          },
          {
            checked: true,
            name: '筛选单元办理状态条件',
            radio: 1
          },
          {
            checked: true,
            name: '筛选单元办理状态条件',
            radio: 1
          }
        ]
      },

    }
  },
  watch: {
    dataList: {
      handler (newValue, oldValue) {
        this.$emit('updateValue', newValue)
      },
      deep: true
    }
  },
  methods: {
任超 committed
126 127 128 129 130
    handleSelect (item) {
      if (!item.checked) {
        item.radio = 0
      }
    },
131
    handleSelectall () {
任超 committed
132
      this.dataList.qlxxList.forEach(item => {
133 134 135 136
        item.checked = true
      })
    },
    handleInvert () {
任超 committed
137
      this.dataList.qlxxList.forEach(item => {
138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189
        item.checked = false
      })
    }
  }
}
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";

.dyztsd-title {
  @include flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 20px;
}

.qlxx-list {
  @include flex;
  flex-wrap: wrap;
  padding-left: 20px;

  li {
    width: 20%;
    margin-bottom: 15px;
  }
}

.screen-list {
  @include flex;
  align-items: center;
  flex-wrap: wrap;
  border: 1px solid $borderColor;
  border-bottom: none;

  li {
    @include flex;
    align-items: center;
    width: 50%;
    line-height: 50px;
    border-bottom: 1px solid $borderColor;
    padding-left: 20px;
  }

  &-left {
    margin-right: 20px;
  }

  li:nth-child(odd) {
    border-right: 1px solid $borderColor;
  }
}
</style>