<template>
  <div class="obligee itemForm">
    <el-form :model="obligeeForm" ref="formList" label-width="113px" :key="key">
      <div v-for="(item, index) in obligeeForm.obligeeList" :key="index" class="obligee-item">
        <p class="obligee-item-name">权利人{{ index + 1 }}</p>
        <div class="obligee-item-list">
          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item class="borderTopNone" :prop="'obligeeList.' + index + '.YSDM'" :rules="rules.YSDM">
                <span slot="label">
                  要素代码: <br />
                  <p class="label-detail">(YSDM)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].YSDM"
                  placeholder="要素代码"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item class="borderTopNone" :prop="'obligeeList.' + index + '.SXH'"
                :rules="{ ...rules.SXH, ...typeNum }">
                <span slot="label">
                  顺序号: <br />
                  <p class="label-detail">(SXH)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model.number="obligeeForm.obligeeList[index].SXH"
                  type="number" v-only-number="{ max: 9999, min: 0, precision: 0 }" placeholder="顺序号"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item class="borderTopNone" :prop="'obligeeList.' + index + '.BDCDYH'" :rules="rules.BDCDYH">
                <span slot="label">
                  不动产单元号: <br />
                  <p class="label-detail">(BDCDYH)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].BDCDYH"
                  placeholder="不动产单元号"></el-input>
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.QLRMC'" :rules="rules.QLRMC">
                <span slot="label">
                  权利人名称: <br />
                  <p class="label-detail">(QLRMC)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QLRMC"
                  placeholder="权利人名称"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.BDCQZH'" :rules="rules.BDCQZH">
                <span slot="label">
                  不动产权证号: <br />
                  <p class="label-detail">(BDCQZH)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].BDCQZH"
                  placeholder="不动产权证号"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.QZYSXLH'" :rules="rules.QZYSXLH">
                <span slot="label">
                  权证印刷序列号: <br />
                  <p class="label-detail">(QZYSXLH)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QZYSXLH"
                  placeholder="权证印刷序列号"></el-input>
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.SFCZR'" :rules="rules.SFCZR">
                <span slot="label">
                  是否持证人: <br />
                  <p class="label-detail">(SFCZR)</p>
                </span>
                <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].SFCZR"
                  placeholder="请选择">
                  <el-option v-for="item in dicData['A6']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.ZJZL'" :rules="rules.ZJZL">
                <span slot="label">
                  证件种类: <br />
                  <p class="label-detail">(ZJZL)</p>
                </span>
                <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].ZJZL"
                  placeholder="请选择">
                  <el-option v-for="item in dicData['A30']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.ZJH'" :rules="rules.ZJH">
                <span slot="label">
                  证件号: <br />
                  <p class="label-detail">(ZJH)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].ZJH"
                  placeholder="证件号"></el-input>
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.FZJG'" :rules="rules.FZJG">
                <span slot="label">
                  发证机关: <br />
                  <p class="label-detail">(FZJG)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].FZJG"
                  placeholder="发证机关"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.SSHY'" :rules="rules.SSHY">
                <span slot="label">
                  所属行业: <br />
                  <p class="label-detail">(SSHY)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].SSHY"
                  placeholder="所属行业"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.GJ'" :rules="rules.GJ">
                <span slot="label">
                  国家/地区: <br />
                  <p class="label-detail">(GJ)</p>
                </span>
                <tree-select :options="dicData['A35']" v-model="obligeeForm.obligeeList[index].GJ"
                  placeholder="国家/地区" />
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.HJSZSS'" :rules="rules.HJSZSS">
                <span slot="label">
                  户籍所在省市: <br />
                  <p class="label-detail">(HJSZSS)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].HJSZSS"
                  placeholder="户籍所在省市"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.XB'" :rules="rules.XB">
                <span slot="label">
                  性别: <br />
                  <p class="label-detail">(XB)</p>
                </span>
                <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].XB"
                  placeholder="请选择">
                  <el-option v-for="item in dicData['A43']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.DH'" :rules="rules.DH">
                <span slot="label">
                  电话: <br />
                  <p class="label-detail">(DH)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" onkeyup="this.value=this.value.replace(/[^\d.]/g,'');"
                  maxlength="11" v-model="obligeeForm.obligeeList[index].DH" placeholder="电话"></el-input>
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.DZ'" :rules="rules.DZ">
                <span slot="label">
                  地址: <br />
                  <p class="label-detail">(DZ)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].DZ"
                  placeholder="地址"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.YB'" :rules="rules.YB">
                <span slot="label">
                  邮编: <br />
                  <p class="label-detail">(YB)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].YB"
                  placeholder="邮编"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.GZDW'" :rules="rules.GZDW">
                <span slot="label">
                  工作单位: <br />
                  <p class="label-detail">(GZDW)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].GZDW"
                  placeholder="工作单位"></el-input>
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.DZYJ'" :rules="rules.DZYJ">
                <span slot="label">
                  电子邮件: <br />
                  <p class="label-detail">(DZYJ)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].DZYJ"
                  placeholder="电子邮件"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.QLRLX'" :rules="rules.QLRLX">
                <span slot="label">
                  权利人类型: <br />
                  <p class="label-detail">(QLRLX)</p>
                </span>
                <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QLRLX"
                  placeholder="请选择">
                  <el-option v-for="item in dicData['A36']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.QLBL'" :rules="rules.QLBL">
                <span slot="label">
                  权利比例: <br />
                  <p class="label-detail">(QLBL)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QLBL"
                  placeholder="权利比例"></el-input>
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.GYFS'" :rules="rules.GYFS">
                <span slot="label">
                  共有方式: <br />
                  <p class="label-detail">(GYFS)</p>
                </span>
                <el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].GYFS"
                  placeholder="共有方式">
                  <el-option v-for="item in dicData['A34']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.GYQK'" :rules="rules.GYQK">
                <span slot="label">
                  共有情况: <br />
                  <p class="label-detail">(GYQK)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].GYQK"
                  placeholder="共有情况"></el-input>
              </el-form-item>
            </el-col>

            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.BZ'" :rules="rules.BZ">
                <span slot="label">
                  备注: <br />
                  <p class="label-detail">(BZ)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].BZ"
                  placeholder="备注"></el-input>
              </el-form-item>
            </el-col>
          </el-row>

          <el-row class="obligee-item-input">
            <el-col :span="8">
              <el-form-item :prop="'obligeeList.' + index + '.QXDM'" :rules="rules.QXDM">
                <span slot="label">
                  区县代码: <br />
                  <p class="label-detail">(QXDM)</p>
                </span>
                <el-input :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QXDM"
                  placeholder="区县代码"></el-input>
              </el-form-item>
            </el-col>
          </el-row>
        </div>
      </div>
    </el-form>
    <message-tips ref="msg" />
  </div>
</template>
<script>
import business from '@/api/business'
import ruleMixin from '@/mixins/ruleMixin.js'
import treeSelect from '../treeSelect/index.vue'
// 权利人
export default {
  mixins: [ruleMixin],
  props: {
    bsmSjsb: {
      type: String,
      default: ''
    },
    bsmYwsjb: {
      type: String,
      default: ''
    }
  },
  components: {
    treeSelect
  },
  data () {
    return {
      obligeeForm: {
        obligeeList: [
          {
            YSDM: '',
            SXH: '',
            BDCDYH: '',
            QLRMC: '',
            BDCQZH: '',
            QZYSXLH: '',
            SFCZR: '',
            ZJZL: '',
            ZJH: '',
            FZJG: '',
            SSHY: '',
            GJ: '',
            HJSZSS: '',
            XB: '',
            DH: '',
            DZ: '',
            YB: '',
            GZDW: '',
            DZYJ: '',
            QLRLX: '',
            QLBL: '',
            GYFS: '',
            GYQK: '',
            BZ: '',
            QXDM: ''
          }
        ]
      }
    }
  },
  methods: {
    async featchData () {
      try {
        let { result: res } = await business.getZttGyQlrById(this.bsmSjsb)
        this.obligeeForm.obligeeList = res
        //this.featchRule()
      } catch (error) {
        this.$refs.msg.messageShow()
      }
    },
    handleUpdateForm () {
      return new Promise(async (resolve) => {
        try {
          let res = await business.updateZttGyQlr(this.obligeeForm.obligeeList)
          // this.$refs['formList'].resetFields();
          resolve(res.code)
        } catch (error) {
          this.$refs.msg.messageShow()
        }
      })
    }
  }
}
</script>
<style scoped lang="scss">
@import "./css/itemForm.scss";

.obligee-item {
  display: flex;
  height: 100%;
  margin-bottom: 15px;
  margin-right: 5px;

  &-name {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    padding: 10px 20px;
    line-height: 28px;
    border: 1px solid #ccc;
    margin-right: 15px;
    border-radius: 3px;
  }

  &-list {
    width: 100%;
    flex: 1;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
}
</style>