linwenling
2023-09-26 d0460adaf25a64e37a40422e4931e3b1e5afa521
ruoyi-ui/src/views/pet/petInfo.vue
@@ -25,7 +25,7 @@
        <el-container >
          <el-col >
            <el-form ref="elForm" :model="petList" :rules="rules" size="medium"  label-position="left"
                     v-loading="loading" :data="petList" @selection-change="handleSelectionChange" label-width="120px" >
                     v-loading="loading" :data="petList"  label-width="120px" >
              <el-row :span="5">
                <el-form-item label="证件号码" prop="idNum" label-width="80px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.idNum" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb" >
@@ -39,25 +39,26 @@
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="出生日期" prop="birth" label-width="70px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.birth" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                <el-form-item label="出生日期" prop="birth" label-width="80px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-date-picker v-model="petList.birth" type="date" placeholder="请选择日期"
                                  :editable="false" :clearable="false" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd"
                  ></el-date-picker>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="颜色" prop="color" label-width="40px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                <el-form-item label="颜色" prop="color" label-width="50px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.color" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="饮食习惯(喜)" prop="eatHabit" label-width="100px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                <el-form-item label="饮食习惯(喜)" prop="eatHabit" label-width="110px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.eatHabit" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="生活习惯(喜)" prop="lifeHabit" label-width="100px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                <el-form-item label="生活习惯(喜)" prop="lifeHabit" label-width="110px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.lifeHabit" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
@@ -78,26 +79,33 @@
          <el-col v-loading="loading" :data="petList" @selection-change="handleSelectionChange">
            <el-form ref="elForm" :model="petList" :rules="rules" size="medium"  label-position="left" >
              <el-row :span="5">
                <el-form-item label="种类" prop="type" label-width="50px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                <el-form-item label="品种" prop="type" label-width="50px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.type" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="名字" prop="name" label-width="40px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                <el-form-item label="名字" prop="name" label-width="50px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.name" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="性别" prop="sex" label-width="40px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.sex === 1 ? '雄性':'雌性' " placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                <el-form-item label="性别" prop="sex" label-width="50px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <template v-if="dsb">
                    <el-input v-model="petList.sex === 1 ? '雄性':'雌性'" :disabled="true"></el-input>
                  </template>
                  <template v-else>
                    <el-select v-model="petList.sex" placeholder="请选择保洁/收纳" clearable :style="{width: '100%'}">
                      <el-option label="雌性" value="0"></el-option>
                      <el-option label="雄性" value="1"></el-option>
                    </el-select>
                  </template>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="性质" prop="properties" label-width="40px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.properties" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                <el-form-item label="种类" prop="animal" label-width="50px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.animal" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
@@ -151,18 +159,18 @@
        <el-container >
          <el-col >
            <el-form ref="elForm" :model="petList" :rules="rules" size="medium"  label-position="left"
                     v-loading="loading" :data="petList" @selection-change="handleSelectionChange" label-width="120px" >
                     v-loading="loading" :data="petList" label-width="120px" >
              <el-row :span="5">
                <el-form-item label="饲养人姓名" prop="masterName" label-width="100px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.masterName" placeholder="" clearable :style="{width: '100%'}" readonly  unselectable="on"  >
                  <el-input v-model="petList.masterName" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb" >
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="住所详细地址" prop="masterAddress" label-width="100px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.masterAddress" placeholder="" clearable :style="{width: '100%'}" readonly  unselectable="on">
                <el-form-item label="住所详细地址" prop="masterAddress" label-width="110px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.masterAddress" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
@@ -178,13 +186,13 @@
              <el-row :span="5">
                <el-form-item label="身份证号" prop="masterIdNum" label-width="80px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.masterIdNum" placeholder="" clearable :style="{width: '100%'}" readonly  unselectable="on">
                  <el-input v-model="petList.masterIdNum" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="5">
                <el-form-item label="移动电话" prop="phone" label-width="100px" style="background: #FAD1E0;border-radius: 6px 6px 0px 6px;opacity: 1;">
                  <el-input v-model="petList.phone" placeholder="" clearable :style="{width: '100%'}" readonly  unselectable="on">
                  <el-input v-model="petList.phone" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
@@ -387,46 +395,115 @@
      },
      petList: {
        type: undefined,
        kind: undefined,
        suitable: undefined,
        method: undefined,
        location:undefined,
        place:undefined,
        remark: undefined,
        idNum: undefined,
        name: undefined,
        birth: undefined,
        sex: undefined,
        color: undefined,
        properties: undefined,
        securityCode: undefined,
        dialect: undefined,
        address:undefined,
        eatHabit:undefined,
        diseatHabit: undefined,
        LifeHabit: undefined,
        disLifeHabit: undefined,
        url: undefined,
        headPicture:undefined,
        fullPicture:undefined,
      },
      dialogImageUrl: '',
      dialogVisible: false,
      disabled: false,
      // 表单校验
      rules: {
        animal: [{
          required: true,
          message: '请输入种类',
          trigger: 'blue'
        }],
        idNum: [{
          required: true,
          message: '请输入证件号码',
          trigger: 'blue'
        }],
        securityCode: [{
          // required: true,
          message: '请输入防伪码',
          trigger: 'blue'
        }],
        name: [{
          required: true,
          message: '请输入名字',
          trigger: 'blue'
        }],
        birth: [{
          required: true,
          message: '请输入出生日期',
          trigger: 'change'
        }],
        color: [{
          required: true,
          message: '请输入颜色',
          trigger: 'blue'
        }],
        properties: [{
          // required: true,
          message: '请输入性质',
          trigger: 'blue'
        }],
        sex: [{
          required: true,
          message: '请选择性别',
          trigger: 'change'
        }],
        LifeHabit: [{
          // required: true,
          message: '请输入生活习惯(喜)',
          trigger: 'blur'
        }],
        disLifeHabit: [{
          // required: true,
          message: '请输入生活习惯(恶)',
          trigger: 'blur'
        }],
        eatHabit: [{
          required: true,
          message: '请输入饮食习惯(喜)',
          trigger: 'blur'
        }],
        diseatHabit: [{
          required: true,
          message: '请输入饮食习惯(喜)',
          trigger: 'blur'
        }],
        masterName: [{
          required: true,
          message: '请输入主人姓名',
          trigger: 'blur'
        }],
        masterIdNum: [{
          required: true,
          message: '请输入主人身份证号码',
          trigger: 'blur'
        }],
        phone: [{
          required: true,
          message: '请输入手机号',
          trigger: 'blur'
        }],
        masterAddress: [{
          required: true,
          message: '请输入主人地址',
          trigger: 'blur'
        }],
        type: [{
          required: true,
          message: '请输入类别',
          trigger: 'blur'
        }],
        method: [{
          required: true,
          message: '请输入保洁方法',
          trigger: 'blur'
        }],
        location: [{
          required: true,
          message: '请输入材料存放地',
          trigger: 'blur'
        }],
        place: [{
          required: true,
          message: '请输入放置地点',
          trigger: 'blur'
        }],
        suitable: [{
          required: true,
          message: '请输入适用人',
          trigger: 'blur'
        }],
      },
      typeOptions: [],
@@ -631,29 +708,7 @@
      this.dsb = false
      this.btn = true
    },
    requestUpload(params)
    {
      var file = params.file;
      var formData = new FormData();
      formData.append('uploadFile', file);
      let _this = this
      uploadPic(formData).then(response => {
        let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
        if(_this.fot.includes(pth) === true)
        {
          _this.fileList.push({name:response.data.fileName, "url":response.data.url})
        }
        else{
          _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
        }
      })
    }
  }
}