From a27ffbdd8353c381312839a0c00ae7444c7a381c Mon Sep 17 00:00:00 2001
From: yz3456 <2753272399@qq.com>
Date: 星期四, 30 五月 2024 15:40:49 +0800
Subject: [PATCH] 修改完bug

---
 ruoyi-ui/src/views/pet/index.vue |  299 +++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 186 insertions(+), 113 deletions(-)

diff --git a/ruoyi-ui/src/views/pet/index.vue b/ruoyi-ui/src/views/pet/index.vue
index 43840fe..b904392 100644
--- a/ruoyi-ui/src/views/pet/index.vue
+++ b/ruoyi-ui/src/views/pet/index.vue
@@ -6,7 +6,10 @@
           v-model="queryParams.sex"
           placeholder="璇烽�夋嫨鎬у埆"
           clearable
-          style="width: 240px"
+          style="width: 200px;
+                   height: 35px;
+                   border-radius: 16px 16px 16px 16px;
+                   opacity: 0.5;"
         >
           <el-option
             v-for="dict in typeOptions"
@@ -20,7 +23,10 @@
             v-model="queryParams.name"
             placeholder="璇疯緭鍏ュ悕瀛�"
             clearable
-            style="width: 240px"
+            style="width: 200px;
+                   height: 35px;
+                   border-radius: 16px 16px 16px 16px;
+                   opacity: 0.5;"
             @keyup.enter.native="handleQuery"
           />
         </el-form-item>
@@ -29,7 +35,10 @@
             v-model="queryParams.idNum"
             placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�"
             clearable
-            style="width: 240px"
+            style="width: 200px;
+                   height: 35px;
+                   border-radius: 16px 16px 16px 16px;
+                   opacity: 0.5;"
             @keyup.enter.native="handleQuery"
           />
         </el-form-item>
@@ -55,7 +64,7 @@
       </el-form-item>
     </el-form>
 
-    <el-row :gutter="10" class="mb8">
+    <el-row :gutter="10" class="mb8" v-if="userId != 2">
       <el-col :span="1.5">
         <el-button
           type="primary"
@@ -86,9 +95,10 @@
     <el-table v-loading="loading" :data="petList,PetNoteList" @selection-change="handleSelectionChange"  :row-class-name="tableRowClassName">
       <el-table-column type="selection" width="55"  align="center" />
 
-      <el-table-column  label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="120"/>
+      <el-table-column label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="120"/>
+      <el-table-column label="绉嶇被" prop="animal" sortable :show-overflow-tooltip="true" width="150" />
 
-      <el-table-column label="绫诲瀷" prop="type" sortable :show-overflow-tooltip="true" width="150" />
+      <el-table-column label="鍝佺" prop="type" sortable :show-overflow-tooltip="true" width="150" />
       <el-table-column label="鍚嶅瓧" prop="name" sortable :show-overflow-tooltip="true" width="150" />
       <el-table-column label="鎬у埆" prop="sex" sortable width="120" >
         <template slot-scope="scope">
@@ -105,12 +115,14 @@
       </el-table-column>
       <el-table-column label="瀹犵墿id" prop="id" sortable width="100" />
       <el-table-column label="涓讳汉濮撳悕" prop="masterName" sortable width="100" />
-      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+      <el-table-column label="鎿嶄綔" align="center" width="250" class-name="small-padding fixed-width" v-if="userId != 2">
         <template slot-scope="scope" v-if="scope.row.roleId !== 1">
+          <div class="button-container">
           <el-button
             size="mini"
             type="text"
             icon="el-icon-edit"
+                :disabled="!scope.row.ownData"
             @click="handleUpdate(scope.row)"
             v-hasPermi="['familymodel:property:info']"
           >淇敼</el-button>
@@ -118,13 +130,14 @@
             size="mini"
             type="text"
             icon="el-icon-delete"
+                :disabled="!scope.row.ownData"
             @click="handleDelete(scope.row)"
             v-hasPermi="['system:role:remove']"
           >鍒犻櫎</el-button>
           <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['familymodel:property:info']">
             <el-button size="mini" type="text" icon="el-icon-d-arrow-right"  @click="handleCheck(scope.row)">鏌ョ湅璇︽儏</el-button>
           </el-dropdown>
-
+          </div>
         </template>
       </el-table-column>
     </el-table>
@@ -150,6 +163,9 @@
         <el-form-item label="闃蹭吉璇�" prop="securityCode">
           <el-input v-model="formDat.securityCode" placeholder="璇疯緭鍏ラ槻浼瘉" clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
+        <el-form-item label="绉嶇被" prop="animal">
+          <el-input v-model="formDat.animal" placeholder="璇疯緭鍏ョ绫�" clearable :style="{width: '100%'}" ></el-input>
+        </el-form-item>
         <el-form-item label="鍝佺" prop="type">
           <el-input v-model="formDat.type" placeholder="璇疯緭鍏ュ搧绉�" clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
@@ -157,11 +173,9 @@
           <el-input v-model="formDat.name" placeholder="璇疯緭鍏ュ悕瀛�" clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
         <el-form-item label="鍑虹敓鏃ユ湡" prop="birth">
-          <el-input
-            v-model='formDat.birth'
-            type='date'
-            placeholder='閫夋嫨鏃ユ湡'
-          ></el-input>
+          <el-date-picker v-model="formDat.birth" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                          :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+          ></el-date-picker>
         </el-form-item>
         <el-form-item label="鎬у埆" prop="sex">
           <el-select v-model="formDat.sex" placeholder="璇烽�夋嫨鎬у埆" clearable :style="{width: '100%'}"  >
@@ -180,8 +194,8 @@
           <el-input v-model="formDat.eatHabit" placeholder="璇疯緭鍏ラギ椋熶範鎯�(鍠�)" clearable :style="{width: '100%'}" >
           </el-input>
         </el-form-item>
-        <el-form-item label="楗涔犳儻(鎭�)" prop="diseatHabit">
-          <el-input v-model="formDat.diseatHabit" placeholder="璇疯緭鍏ラギ椋熶範鎯�(鎭�)" clearable :style="{width: '100%'}" >
+        <el-form-item label="楗涔犳儻(鎭�)" prop="disEatHabit">
+          <el-input v-model="formDat.disEatHabit" placeholder="璇疯緭鍏ラギ椋熶範鎯�(鎭�)" clearable :style="{width: '100%'}" >
           </el-input>
         </el-form-item>
         <el-form-item label="鐢熸椿涔犳儻(鍠�)" prop="lifeHabit">
@@ -223,12 +237,11 @@
         <el-upload
           action="#"
           list-type="picture-card"
-          multiple
+          :limit="1"
           :http-request="requestUpload"
-          :file-list="fileList"
+          :file-list="fileList1"
         >
-          <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div>
-          <i v-if="!uploading" slot="default" class="el-icon-plus"></i>
+          <i slot="default" class="el-icon-plus"></i>
           <div slot="file" slot-scope="{file}">
             <img
               class="el-upload-list__item-thumbnail"
@@ -262,12 +275,11 @@
         <el-upload
           action="#"
           list-type="picture-card"
-          multiple
-          :http-request="requestUpload"
-          :file-list="fileListOther"
+          :limit="1"
+          :http-request="requestUpload2"
+          :file-list="fileList2"
         >
-          <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div>
-          <i v-if="!uploading" slot="default" class="el-icon-plus"></i>
+          <i slot="default" class="el-icon-plus"></i>
           <div slot="file" slot-scope="{file}">
             <img
               class="el-upload-list__item-thumbnail"
@@ -293,8 +305,6 @@
           <i class="el-icon-delete"></i>
         </span>
       </span>
-
-
           </div>
         </el-upload>
       </el-form>
@@ -312,22 +322,27 @@
 
     </el-dialog>
 
+    <el-dialog  :visible.sync="dialogVisible">
+      <img w-full :src="dialogImageUrl"    style="width: 100%; height: 100%" alt="Preview Image" />
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
 import { listRole, getRole, delRole, addRole, updateRole, dataScope, changeRoleStatus, deptTreeSelect } from "@/api/system/role";
 import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu";
-
+import {getInfo} from "@/api/login";
 
 
 //鍦╯ystem/note/index.js涓鍏ユ帴鍙e嚱鏁�
-import {listPet,enload, getPetInfo, delPet,addPet, uploadPic} from "@/api/pet/index";
+import {listPet,enload, getPetInfo, delPet,addPet, uploadPic1} from "@/api/pet/index";
 export default {
   name: "Role",
   dicts: ['sys_normal_disable'],
   data() {
     return {
+      userId: undefined,
       // 閬僵灞�
       disabled: false,
 
@@ -343,8 +358,6 @@
       showSearch: true,
       // 鎬绘潯鏁�
       total: 0,
-      // 璧勪骇琛ㄦ牸鏁版嵁
-      petList: [],
       // 寮瑰嚭灞傛爣棰�
       title: "",
       // 鏄惁鏄剧ず寮瑰嚭灞�
@@ -355,24 +368,24 @@
       menuNodeAll: false,
       deptExpand: true,
       deptNodeAll: false,
+
+      dialogImageUrl: '',
+      dialogVisible: false,
       // 鏃ユ湡鑼冨洿
       dateRange: [],
       // 鏁版嵁鑼冨洿閫夐」
-      fot:[".jpg",".jif"],
-      fileList:[
-      ],
-      fileListOther:[
+      // 鏁版嵁鑼冨洿閫夐」
+      fot:['.bmp','.jpg','.jpeg','.png','.tif','.gif','.pcx','.tga','.exif','.fpx',
+        '.svg','.psd','.cdr','.pcd','.dxf','.ufo','.eps','.ai','.aw','.WMF','.webp','.apng'],
 
-      ],
+      fileList1:[ ],
+      fileList2:[ ],
+      fileListOther:[ ],
+      		uploadFileList1: [],
       dsb:true,
       btn:false,
-      uploading: false,
       formDat: {
-        type: undefined,
-        name: undefined,
-        sex: undefined,
-        color: undefined,
-        address: undefined,
+        animal:undefined,
         remark: undefined,
         url: undefined,
         type: undefined,
@@ -386,10 +399,11 @@
         dialect: undefined,
         address:undefined,
         eatHabit:undefined,
-        diseatHabit: undefined,
+        disEatHabit: undefined,
         LifeHabit: undefined,
         disLifeHabit: undefined,
-        url: undefined,
+        headPicture:undefined,
+        fullPicture:undefined,
 
       },
       petList: {
@@ -404,10 +418,12 @@
         dialect: undefined,
         address:undefined,
         eatHabit:undefined,
-        diseatHabit: undefined,
+        disEatHabit: undefined,
         LifeHabit: undefined,
         disLifeHabit: undefined,
         url: undefined,
+        headPicture:undefined,
+        fullPicture:undefined,
       },
 
       // 鑿滃崟鍒楄〃
@@ -434,25 +450,25 @@
       },
       // 琛ㄥ崟鏍¢獙
       rules: {
-        type: [{
+        animal: [{
           required: true,
-          message: '璇疯緭鍏ュ搧绉�',
-          trigger: 'blue'
+          message: '璇疯緭鍏ョ绫�',
+          trigger: 'blur'
         }],
         idNum: [{
           required: true,
           message: '璇疯緭鍏ヨ瘉浠跺彿鐮�',
-          trigger: 'blue'
+          trigger: 'blur'
         }],
         securityCode: [{
-          required: true,
+          // required: true,
           message: '璇疯緭鍏ラ槻浼爜',
-          trigger: 'blue'
+          trigger: 'blur'
         }],
         name: [{
           required: true,
           message: '璇疯緭鍏ュ悕瀛�',
-          trigger: 'blue'
+          trigger: 'blur'
         }],
         birth: [{
           required: true,
@@ -462,12 +478,12 @@
         color: [{
           required: true,
           message: '璇疯緭鍏ラ鑹�',
-          trigger: 'blue'
+          trigger: 'blur'
         }],
         properties: [{
-          required: true,
+          // required: true,
           message: '璇疯緭鍏ユ�ц川',
-          trigger: 'blue'
+          trigger: 'blur'
         }],
         sex: [{
           required: true,
@@ -476,13 +492,13 @@
         }],
 
         LifeHabit: [{
-          required: true,
+          // required: true,
           message: '璇疯緭鍏ョ敓娲讳範鎯�(鍠�)',
           trigger: 'blur'
         }],
 
         disLifeHabit: [{
-          required: true,
+          // required: true,
           message: '璇疯緭鍏ョ敓娲讳範鎯�(鎭�)',
           trigger: 'blur'
         }],
@@ -493,11 +509,32 @@
           trigger: 'blur'
         }],
 
-        diseatHabit: [{
+        disEatHabit: [{
           required: true,
-          message: '璇疯緭鍏ラギ椋熶範鎯�(鍠�)',
+          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'
+        }],
+
 
 
       },
@@ -513,9 +550,17 @@
   },
   created() {
     this.getList();
-
+    this.getInfo()
   },
   methods: {
+    getInfo(){
+          console.log('-----------------')
+          getInfo().then(response=>{
+            console.log(response.user.roles[0].roleId,'roleID')
+            this.userId = response.user.roles[0].roleId
+          })
+        },
+
     // 鍙栨秷鎸夐挳
     cancelData() {
       this.open = false;
@@ -570,18 +615,26 @@
     },
 
     handleRemove(file) {
-      for(let i = 0; i < this.fileList.length; i++)
+      for(let i = 0; i < this.fileList1.length; i++)
       {
-        if(this.fileList[i].url==file.url)
-          this.$delete(this.fileList,i);
+        if(this.fileList1[i].url==file.url)
+          this.$delete(this.fileList1,i);
       }
     },
     handleRemoveFile(file) {
-      for(let i = 0; i < this.fileListOther.length; i++)
+      // for(let i = 0; i < this.fileList2.length; i++)
+      // {
+      //   if(this.fileList2[i].url==file.url)
+      //     this.$delete(this.fileList2,i);
+      // }
+      for(let i = 0; i < this.fileList2.length; i++)
+        {
+          if(this.fileList2[i].url==file.url)
       {
-        if(this.fileListOther[i].url==file.url)
-          this.$delete(this.fileListOther,i);
-      }
+            this.$delete(this.fileList2,i);
+        this.$delete(this.uploadFileList1,i);
+        }
+        }
     },
     // 鍙栨秷鎸夐挳
     cancel() {
@@ -614,7 +667,7 @@
           deptCheckStrictly: true,
           remark: undefined
         };
-      this.resetForm("form");
+      this.resetForm("elForm");
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
@@ -660,59 +713,77 @@
       });
     },
 
-
+    //鏀惧ぇ
     handlePictureCardPreview(file) {
       this.dialogImageUrl = file.url;
       this.dialogVisible = true;
     },
+
     /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */
     submitDataScope: function() {
 
-      let ul = this.fileList.map(function (elem){
+      let ul = this.fileList1.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
       }).join(",")
-      let uls = this.fileListOther.map(function (elem){
+      let uls = this.fileList2.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
       }).join(",")
-      this.formDat.url = ul+","+uls
-      this.$refs["elForm"].validate(valid => {
-        if (valid) {
+      this.formDat.headPicture = ul,
+        this.formDat.fullPicture = uls,
+        this.$refs["elForm"].validate(valid => {
+          if (valid) {
 
-          addPet(this.formDat).then(response => {
-            this.$modal.msgSuccess("鏂板鎴愬姛");
-            this.open = false;
-            this.getList();
-          });
-        }
-      });
-      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
-      Object.keys(this.formDat).forEach(key => {
-        this.formDat[key] = '';
-      });
-      this.handleRemove(this.fileList[0]);
-      this.handleRemoveFile(this.fileListOther[0]);
+            addPet(this.formDat).then(response => {
+              // alert(this.formDat.diseatHabit)
+              // alert(this.formDat.eatHabit)
+              this.$modal.msgSuccess("鏂板鎴愬姛");
+              this.open = false;
+              // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+              Object.keys(this.formDat).forEach(key => {
+                this.formDat[key] = '';
+              });
+              for(let i = 0; i <= this.fileList1.length; i++)
+              {
+                this.handleRemove(this.fileList1[0]);
+              }
+              for(let i = 0; i < this.fileList2.length; i++){
+                this.handleRemoveFile(this.fileList2[0]);
+              }
+              this.getList();
+            });
+          }
+        });
+
     },
     requestUpload(params)
     {
       var file = params.file;
       var formData = new FormData();
+
       formData.append('uploadFile', file);
       let _this = this
-      this.uploading = true;
-      uploadPic(formData).then(response => {
+
+      uploadPic1(formData).then(response => {
         let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
-        this.uploading = false;
-        this.$modal.msgSuccess("涓婁紶鎴愬姛");
-        if(_this.fot.includes(pth) === true)
-        {
-          _this.fileList.push({name:response.data.fileName, "url":response.data.url})
+        _this.fileList1.push({name:response.data.fileName, url:response.data.url})
+        // _this.fileList2.push({name:response.data.fileName, url:response.data.url})
+        console("ok")
+      })
 
-        }
+    },
+    requestUpload2(params)
+    {
+      var file = params.file;
+      var formData = new FormData();
 
-        else{
-          _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
+      formData.append('uploadFile', file);
+      let _this = this
 
-        }
+      uploadPic1(formData).then(response => {
+        let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
+        // _this.fileList1.push({name:response.data.fileName, url:response.data.url})
+        _this.fileList2.push({name:response.data.fileName, url:response.data.url})
+        console("ok")
       })
 
     },
@@ -726,29 +797,15 @@
         this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
       }).catch(() => {});
     },
+
+
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     handleExport() {
       this.download('family/pet/export', {
         ...this.queryParams
       }, `pet_${new Date().getTime()}.xlsx`)
     },
-    /** 瀵煎叆鎿嶄綔*/
-    handleEnport(params){
-      var file = params.file;
-      var formData = new FormData();
-      formData.append('excelImport', file);
-      let _this = this
-      alert(file)
-      enload(formData).then(response => {
-        _this.getList();
-        Message({ message: "瀵煎叆鎴愬姛", type: 'warning' })
 
-      }).catch(err)
-      {
-        Message({ message: "瀵煎叆澶辫触", type: 'error' })
-      }
-
-    }
   }
 };
 </script>
@@ -761,4 +818,20 @@
   background: #FFEFF2;
 
 }
+.upload-demo .el-upload-list__item-thumbnail img {
+  width: 100%;
+  height: 100%;
+  object-fit: cover;
+}
+.upload-demo .el-icon-plus {
+  font-size: 28px;
+  color: #999;
+  border: 1px dashed #999;
+}
+.el-table__cell {
+  font-size: 14px; /* 璁剧疆瀛椾綋澶у皬 */
+}
+.button-container {
+  display: inline-flex; /* 璁剧疆鎸夐挳瀹瑰櫒涓鸿鍐呭厓绱� */
+}
 </style>

--
Gitblit v1.9.1