From 87e28c4bc7fe04eb14629482e97541d183c1d067 Mon Sep 17 00:00:00 2001
From: yz3456 <2753272399@qq.com>
Date: 星期六, 18 五月 2024 16:10:34 +0800
Subject: [PATCH] 修改完除了用户管理的其他报错

---
 ruoyi-ui/src/views/economy/index.vue |  344 +++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 249 insertions(+), 95 deletions(-)

diff --git a/ruoyi-ui/src/views/economy/index.vue b/ruoyi-ui/src/views/economy/index.vue
index 9ed05e9..d14e14a 100644
--- a/ruoyi-ui/src/views/economy/index.vue
+++ b/ruoyi-ui/src/views/economy/index.vue
@@ -2,11 +2,14 @@
   <div class="app-container" style="opacity: 1;">
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
 
-      <el-form-item label="鏃堕棿" >
+      <el-form-item label="鏃堕棿"  prop="createTime">
         <el-date-picker
           v-model="dateRange"
-          style="width: 240px;"
-          value-format="yyyy-MM-dd HH-MM"
+          style="width: 240px;
+                   height: 35px;
+                   border-radius: 16px 16px 16px 16px;
+                   opacity: 0.5;"
+          value-format="yyyy-MM-dd"
           type="daterange"
           range-separator="-"
           start-placeholder="寮�濮嬫棩鏈�"
@@ -18,26 +21,24 @@
           v-model="queryParams.usePeople"
           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>
-      <el-form-item label="绫诲瀷" prop="type">
-        <el-input
-          v-model="queryParams.type"
-          placeholder="璇疯緭鍏ョ被鍨�"
-          clearable
-          style="width: 240px"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
+
 
       <el-form-item label="鐢ㄩ��" prop="useFor">
         <el-input
           v-model="queryParams.useFor"
           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>
@@ -99,7 +100,7 @@
         >
           <el-button size="mini"   type="primary"
                      plain
-                     icon="el-icon-plus" >瀵煎叆</el-button>
+                     icon="el-icon-top" >瀵煎叆</el-button>
 
         </el-upload>
       </el-col>
@@ -107,11 +108,11 @@
     </el-row>
     <!-- 搴忓彿銆佸熀閲�/鍙拌处銆佹椂闂淬�佹敹鍏�/鏀嚭銆佺敤閫斻�佷娇鐢ㄤ汉銆佺幇閲�/鑷姩鎵e垝銆佷綑棰濄�佺數瀛愭枃浠躲�佸娉� 鎿嶄綔-->
     <!-- 杩欓噷鏈変釜familyList鏁扮粍 鏄湪data()涓畾涔夌殑 -->
-    <el-table v-loading="loading" :data="economyList"  @selection-change="handleSelectionChange" @row-click="handleCheck" :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
+    <el-table v-loading="loading" :data="economyList"  @selection-change="handleSelectionChange"  :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
       <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 fixed label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="80"/>
 
-      <el-table-column label="鍙戠敓鏃堕棿" prop="createTime" sortable width="100" align="center">
+      <el-table-column label="鍙戠敓鏃堕棿" prop="createTime" sortable width="150" align="center">
         <template slot-scope="scope">{{scope.row.createTime? scope.row.createTime: '鈥斺�斺�斺��'}}</template>
       </el-table-column>
       <el-table-column label="鍙拌处" prop="type" sortable width="100" />
@@ -125,50 +126,59 @@
       <el-table-column label="鐜伴噾/鑷姩鎵e垝" prop="kind" sortable width="130" >
         <template slot-scope="scope">{{scope.row.kind? scope.row.kind: '鈥斺�斺�斺��'}}</template>
       </el-table-column>
-
+      <el-table-column label="鏄惁鏄湰瀹跺涵璁板綍" prop="ownData" sortable width="150px" >
+        <template slot-scope="scope">{{scope.row.ownData === 1 ? '鏄�': '鍚�'}}</template>
+      </el-table-column>
       <el-table-column label="鐢靛瓙鏂囦欢" prop="url" align="center" sortable  width="110" >
         <template slot-scope="scope" >
-          <img
-            class="el-upload-list__item-thumbnail"
-            src="../../assets/images/deviceLis.png"
-            alt=""
-            style="width: 35px; height: 35px;"
-            fit="cover"
-            v-if="scope.row.url !== ','"
-          >
-          <img
-            class="el-upload-list__item-thumbnail"
-            src="../../assets/images/deviceA.png"
-            alt=""
-            style="width: 35px; height: 35px;"
-            fit="cover"
-            v-if="scope.row.url === ','"
-          >
+          <div >
+            <img
+              class="el-upload-list__item-thumbnail"
+              src="../../assets/images/deviceLis.png"
+              alt=""
+              style="width: 35px; height: 35px;"
+              fit="cover"
+              v-if="!(scope.row.url === '' || scope.row.url === ',' || scope.row.url === null)"
+            >
+            <img
+              v-else
+              class="el-upload-list__item-thumbnail"
+              src="../../assets/images/deviceA.png"
+              alt=""
+              style="width: 35px; height: 35px;"
+              fit="cover"
+
+            ></div>
         </template>
       </el-table-column>
       <el-table-column label="澶囨敞" prop="remark" sortable width="100" >
         <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '鈥斺�斺�斺��'}}</template>
       </el-table-column>
-      <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">
         <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:economy:info']"
           >淇敼</el-button>
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row)"
-            v-hasPermi="['system:role:remove']"
-          >鍒犻櫎</el-button>
+  <el-button
+    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:economy: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>
@@ -190,11 +200,9 @@
           <el-input v-model="formDat.type" placeholder="璇疯緭鍏ュ唴瀹�" clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
 
-        <el-form-item label="鏃堕棿" prop="happenTime">
-          <el-date-picker
-            v-model='formDat.happenTime'
-            type='date'
-            placeholder='閫夋嫨鏃ユ湡'
+        <el-form-item label="鍙戠敓鏃堕棿" prop="creatTime">
+          <el-date-picker v-model="formDat.createTime" 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="price">
@@ -204,7 +212,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="閲戦" prop="balance">
-          <el-input v-model="formDat.balance" placeholder="璇疯緭鍏ヤ綑棰�" clearable :style="{width: '100%'}" >
+          <el-input v-model.number="formDat.balance" type="number" placeholder="璇疯緭鍏ラ噾棰�" clearable :style="{width: '100%'}" >
           </el-input>
         </el-form-item>
         <el-form-item label="鐢ㄩ��" prop="useFor">
@@ -232,6 +240,9 @@
           multiple
           :http-request="requestUpload"
           :file-list="fileList"
+          :on-change="handleChange"
+          :auto-upload="false"
+          	ref="upload"
         >
           <i slot="default" class="el-icon-plus"></i>
           <div slot="file" slot-scope="{file}">
@@ -263,6 +274,13 @@
 
           </div>
         </el-upload>
+		<el-button
+		         style="margin-left: 10px"
+		         size="small"
+		         type="success"
+
+		         @click="picUpload"
+		       >涓婁紶鍒版湇鍔″櫒</el-button>
         <h4 class="form-header">鍏朵粬闄勪欢 </h4>
         <el-upload
           action=""
@@ -270,17 +288,61 @@
           class="upload-demo"
           multiple
 
-          :on-remove="handleRemove"
-          :http-request="requestUpload"
+          :on-remove="handleRemoveFile"
           :show-file-list="true"
-        >
-          <el-button type="primary">涓婁紶</el-button>
-          <template #tip>
-            <div class="el-upload__tip">
-            </div>
-          </template>
-        </el-upload>
 
+		  ref="upload1"
+		  :on-change="handleChange1"
+		  :auto-upload="false"
+		  list-type="picture-card"
+		    :http-request="requestUpload1"
+        >
+
+        <i slot="default" class="el-icon-plus"></i>
+                <div slot="file" slot-scope="{file}">
+                  <!-- 娣诲姞video鍏冪礌鐢ㄤ簬鏄剧ず瑙嗛 -->
+                  <video
+                    v-if="file.url.includes('.mp4')"
+                    class="el-upload-list__item-thumbnail"
+                    :src="file.url"
+                    style="width: 147px; height: 147px"
+                    fit="cover"
+                  ></video>
+                  <img v-else
+                       class="el-upload-list__item-thumbnail"
+                       src="../../assets/images/deviceLis.png"
+                       alt=""
+                       style="width: 100%; height: 100%"
+                       fit="cover"></img>
+
+                  <span class="el-upload-list__item-actions">
+                       <span class="el-upload-list__item-name">{{ file.name }}</span>
+                            <span
+                              class="el-upload-list__item-preview"
+                              @click="handleFileCardPreview(file)"
+                            >
+                              <i class="el-icon-zoom-in"></i>
+                            </span>A
+
+                            <span
+
+                              class="el-upload-list__item-delete"
+                              @click="handleRemoveFile(file)"
+                            >
+                              <i class="el-icon-delete"></i>
+                            </span>
+                      </span>
+
+                </div>
+
+
+        </el-upload>
+	 <el-button
+		          style="margin-left: 10px"
+		          size="small"
+		          type="success"
+		          @click="fileUpload"
+		        >涓婁紶鍒版湇鍔″櫒</el-button>
       </el-form>
       <h4 class="form-header"> </h4>
 
@@ -305,7 +367,7 @@
 
 
 //鍦╯ystem/note/index.js涓鍏ユ帴鍙e嚱鏁�  --鎺ュソ浜�
-import {listEconomy,enload,getEconomyInfo,delEconomy, addEconomy, uploadPic} from "@/api/economy/index";
+import {listEconomy,enload,delEconomy, addEconomy, uploadPic} from "@/api/economy/index";
 
 export default {
   name: "Role",
@@ -341,14 +403,19 @@
       // 鏃ユ湡鑼冨洿
       dateRange: [],
       // 鏁版嵁鑼冨洿閫夐」
-      fot:[".jpg",".jif"],
+  // 鏁版嵁鑼冨洿閫夐」
+  fot:['.bmp','.jpg','.jpeg','.png','.tif','.gif','.pcx','.tga','.exif','.fpx',
+    '.svg','.psd','.cdr','.pcd','.dxf','.ufo','.eps','.ai','.aw','.WMF','.webp','.apng'],
+
       fileList:[
       ],
-      fileListOther:[
-
-      ],
+	  fileList1:[],
+ 	  uploadFileList: [],
+ 	  uploadFileList1: [],
+	  fileListOther:[],
       dsb:true,
       btn:false,
+      uploading: false,
       formDat: {
         type: undefined,
         createTime: undefined,
@@ -356,7 +423,7 @@
         usePeople: undefined,
         kind:undefined,
         remark: undefined,
-        url: undefined,
+        url: "",
       },
       // 鑿滃崟鍒楄〃
       menuOptions: [],
@@ -369,7 +436,8 @@
         type:undefined,
         useFor:undefined,
         usePeople:undefined,
-        createTime:undefined,
+
+        createTime:undefined
 
       },
       // 琛ㄥ崟鍙傛暟
@@ -491,7 +559,7 @@
 
       listEconomy(this.queryParams).then(response => {
           //  alert(123)
-          //   console.log(response.data)
+        //    console.log(response.data.data)
           this.economyList = response.data.data;
 
           this.total = response.data.total;
@@ -500,10 +568,25 @@
       );
     },
     handleRemove(file) {
+      for(let i = 0; i < this.fileList.length; i++)
+      {
+        if(this.fileList[i].url==file.url)
+        {
+          this.$delete(this.fileList,i);
+        		 this.$delete(this.uploadFileList,i);
+        		 }
+      }
+    },
+    handleRemoveFile(file) {
       for(let i = 0; i < this.fileListOther.length; i++)
       {
         if(this.fileListOther[i].url==file.url)
+        {
+
           this.$delete(this.fileListOther,i);
+          this.$delete(this.uploadFileList1,i);
+
+          }
       }
     },
     getCateInfor()
@@ -547,7 +630,7 @@
           deptCheckStrictly: true,
           remark: undefined
         };
-      this.resetForm("form");
+      this.resetForm("elForm");
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
@@ -578,6 +661,7 @@
 
     /** 鏌ョ湅璇︾粏淇℃伅 */
     handleCheck(row){
+     // alert(123)
       const id = row.id;
       this.$router.push("/familymodel/economy/economyInfo/" + id);
     },
@@ -602,13 +686,7 @@
     /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */
     submitDataScope: function() {
 
-      let ul = this.fileList.map(function (elem){
-        return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-      }).join(",")
-      let uls = this.fileListOther.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) {
 
@@ -619,29 +697,99 @@
           });
         }
       });
+      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+      Object.keys(this.formDat).forEach(key => {
+        this.formDat[key] = '';
+      });
+      for(let i = 0; i <= this.fileList.length; i++)
+      {
+        this.handleRemove(this.fileList[0]);
+      }
+      for(let i = 0; i < this.fileListOther.length; i++){
+        this.handleRemoveFile(this.fileListOther[0]);
+      }
     },
-    requestUpload(params)
+	handleChange(file, fileList1) {
+	   //瀹氫箟涓�涓叏灞�鏁扮粍uploadFileList鏉ュ仛瀛樺偍
+
+	 // this.uploadFileList.push(file.raw);
+	  console.log("=========5555=========")
+	  console.log(file)
+	//  console.log(this.uploadFileList)
+	//  this.fileList = fileList
+	//alert(file)
+	    this.uploadFileList.push(file.raw);
+	     this.fileList.push({name:file.name,url:file.url})
+	//alert(fileList1.length)
+	},
+	handleChange1(file, fileOtherList1) {
+	   //瀹氫箟涓�涓叏灞�鏁扮粍uploadFileList鏉ュ仛瀛樺偍
+	this.uploadFileList1.push(file.raw);
+	 this.fileListOther.push({name:file.name,url:file.url})
+	 // this.uploadFileList.push(file.raw);
+	  console.log("=========5555=========")
+	  //console.log(file)
+	//  console.log(this.uploadFileList)
+	//  this.fileList = fileList
+	},
+	fileUpload(){
+	//	var file = params.file;
+
+		var formData = new FormData();
+		this.$refs.upload1.submit();
+		// formData.append('uploadFile', file);
+		if(this.uploadFileList1.length==0){
+			  this.$modal.msgSuccess("鏂囨。涓婁紶鍒楄〃涓嶈兘涓虹┖!");
+			  return
+		}
+		this.uploadFileList1.forEach((elem)=>{
+			formData.append("files", elem)
+
+		})
+
+		let _this = this
+
+		this.uploading = true;
+		uploadPic(formData).then(response => {
+		_this.uploadFileList1 = []
+		_this.formDat.url = _this.formDat.url+","+response.fileNames
+		_this.$modal.msgSuccess("鏂囦欢涓婁紶鎴愬姛!");
+		  })
+
+	},
+	picUpload()
+	{
+		var formData = new FormData();
+		//alert(976)
+		//this.$refs.upload.submit();
+		//alert(8)
+		//alert(this.uploadFileList.length)
+	if(this.uploadFileList.length==0){
+		  this.$modal.msgSuccess("鍥剧墖涓婁紶鍒楄〃涓嶈兘涓虹┖锛�");
+		  return}
+	//console.log(this.uploadFileList)
+		this.uploadFileList.forEach((elem)=>{
+			formData.append("files", elem)
+
+		})
+		//alert(90)
+		let _this = this
+		//alert(9)
+	    uploadPic(formData).then(response => {
+		//	alert("dds")
+	      _this.formDat.url = _this.formDat.url+","+response.fileNames
+		  _this.uploadFileList = []
+		  _this.$modal.msgSuccess("鍥剧墖涓婁紶鎴愬姛");
+
+	  });
+	},
+    requestUpload(params) {
+//alert(98)
+ //    this.uploadFileList.push(params.file);
+    },
+    requestUpload1(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})
-
-        }
-      })
-
+		//     this.uploadFileList1.push(params.file);
     },
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
@@ -690,4 +838,10 @@
   background: #FFEFF2;
 
 }
+.el-table__cell {
+  font-size: 14px; /* 璁剧疆瀛椾綋澶у皬 */
+}
+.button-container {
+  display: inline-flex; /* 璁剧疆鎸夐挳瀹瑰櫒涓鸿鍐呭厓绱� */
+}
 </style>

--
Gitblit v1.9.1