From 188d4a764d8bcedf53ac67127b4b9e142f79b1eb Mon Sep 17 00:00:00 2001
From: linwenling <3256558519@qq.com>
Date: 星期日, 27 八月 2023 21:30:07 +0800
Subject: [PATCH] 旅游完善
---
ruoyi-ui/src/views/bignote/index.vue | 277 ++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 203 insertions(+), 74 deletions(-)
diff --git a/ruoyi-ui/src/views/bignote/index.vue b/ruoyi-ui/src/views/bignote/index.vue
index 5099535..42ae195 100644
--- a/ruoyi-ui/src/views/bignote/index.vue
+++ b/ruoyi-ui/src/views/bignote/index.vue
@@ -38,7 +38,7 @@
v-model="queryParams.address"
placeholder="璇疯緭鍏ュ湴鐐�"
clearable
- style="width: 197px;
+ style=" width:197px;
height: 30px;
background: #FFFFFF;
border-radius: 14px 14px 14px 14px;
@@ -48,38 +48,38 @@
/>
</el-form-item>
- <el-form-item label="鏃堕棿">
+ <el-form-item label="鏃堕棿" prop="happenTime">
<el-date-picker
v-model="dateRange"
- style=" width: 197px;
+ style="width: 197px;
height: 30px;
background: #FFFFFF;
border-radius: 14px 14px 14px 14px;
opacity: 0.5;
border: 1px solid rgba(0,0,0,0.25);"
- value-format="yyyy-MM-dd HH-MM"
+ value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡"
></el-date-picker>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
- <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
- </el-form-item>
+ </el-form-item><el-form-item>
+ <el-button size="mini" @click="handleQuery" style=" width: 65px; height: 32px;background: #FFDDE3;
+ border-radius: 6px 6px 6px 6px;opacity:1; " >鎼滅储</el-button>
+ <el-button size="mini" @click="resetQuery" style=" width: 65px; height: 32px;background: #FFDDE3;
+ border-radius: 6px 6px 6px 6px;opacity:1; " >閲嶇疆</el-button>
+ </el-form-item>
+
</el-form>
-
-
- <div style="width: 72px;
-height: 24px;
-font-size: 18px;
-font-family: Microsoft YaHei-Regular, Microsoft YaHei;
-font-weight: 400;
-color: #000000;
-line-height: 21px;
-">瀹跺ぇ浜嬭</div>
+<!-- <div style="width: 72px;-->
+<!--height: 24px;-->
+<!--font-size: 18px;-->
+<!--font-family: Microsoft YaHei-Regular, Microsoft YaHei;-->
+<!--font-weight: 400;-->
+<!--color: #000000;-->
+<!--line-height: 21px;-->
+<!--">瀹跺ぇ浜嬭</div>-->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
@@ -114,26 +114,75 @@
v-hasPermi="['family:note:export']"
>瀵煎嚭</el-button>
</el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExportTemplate"
+ v-hasPermi="['family:note:export']"
+ >瀵煎叆妯℃澘涓嬭浇</el-button>
+ </el-col>
+ <el-col :span="1.2">
+
+ <el-upload
+ action=""
+
+ class="upload-demo"
+ :show-file-list="false"
+ :http-request="handleEnport"
+ >
+ <el-button size="mini" type="primary"
+ plain
+ icon="el-icon-plus" >瀵煎叆</el-button>
+
+ </el-upload>
+ </el-col>
+
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 搴忓彿銆佹椂闂淬�佷汉鐗┿�佸湴鐐广�佸ぇ浜嬫爣棰樸�佺數瀛愭枃浠躲�佸娉� -->
<!-- 杩欓噷鏈変釜familyList鏁扮粍 鏄湪data()涓畾涔夌殑 -->
- <el-table v-loading="loading" :data="familyList" @selection-change="handleSelectionChange" >
- <el-table-column type="selection" width="55" align="center" />
- <el-table-column label="搴忓彿" prop="id" sortable width="120" />
+ <el-table v-loading="loading" :data="familyList" :row-key="getRowId" ref="multipleTable" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName">
+ <el-table-column type="selection" :reserve-selection="true" width="55" align="center" />
- <el-table-column label="鏃堕棿" align="center" sortable prop="createTime" width="180">
- <template slot-scope="scope">
- <span>{{ parseTime(scope.row.createTime) }}</span>
+ <el-table-column label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="80px"/>
+ <el-table-column label="鍙戠敓鏃堕棿" prop="happenTime" sortable width="200px" align="center">
+ <template slot-scope="scope">{{scope.row.happenTime? scope.row.happenTime: '鈥斺�斺�斺��'}}</template>
+ </el-table-column>
+ <el-table-column label="浜虹墿" prop="people" sortable width="150px" />
+ <el-table-column label="鍦扮偣" prop="address" sortable width="150px" />
+ <el-table-column label="澶т簨鏍囬" prop="title" sortable :show-overflow-tooltip="true" width="150px" />
+
+ <el-table-column label="澶囨敞" prop="remark" sortable width="150px" >
+ <template slot-scope="scope">{{scope.row.remark? scope.row.remark: '鈥斺�斺�斺��'}}</template>
+ </el-table-column>
+
+ <!-- <el-table-column label="瀹跺涵鍙�" prop="familyId" sortable width="100" /> -->
+ <el-table-column label="鐢靛瓙鏂囦欢" prop="url" width="150px" align="center">
+
+ <template slot-scope="scope" >
+ <div @click="handleCheck(scope.row)">
+ <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="people" sortable width="100" />
- <el-table-column label="鍦扮偣" prop="address" sortable width="100" />
- <el-table-column label="澶т簨鏍囬" prop="title" sortable :show-overflow-tooltip="true" width="150" />
-
- <el-table-column label="澶囨敞" prop="remark" sortable width="100" />
- <el-table-colum label="鐢靛瓙鏂囦欢" prop="fujian" sortable width="100"/>
- <el-table-column label="瀹跺涵鍙�" prop="familyId" sortable width="100" />
<el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope" v-if="scope.row.roleId !== 1">
<el-button
@@ -141,7 +190,7 @@
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
- v-hasPermi="['system:role:edit']"
+ v-hasPermi="['familymodel:bignote:list']"
>淇敼</el-button>
<el-button
size="mini"
@@ -150,7 +199,7 @@
@click="handleDelete(scope.row)"
v-hasPermi="['system:role:remove']"
>鍒犻櫎</el-button>
- <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['system:role:edit']">
+ <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['familymodel:bignote:list']">
<el-button size="mini" type="text" icon="el-icon-d-arrow-right" @click="handleCheck(scope.row)">鏌ョ湅璇︽儏</el-button>
</el-dropdown>
@@ -164,6 +213,7 @@
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
+ style="background: #FEF7FC;"
/>
<!-- 娣诲姞鎴栦慨鏀硅祫浜т俊鎭厤缃璇濇 -->
@@ -183,9 +233,13 @@
<el-input v-model="formDat.address" placeholder="璇疯緭鍏ュ湴鐐�" clearable :style="{width: '100%'}" >
</el-input>
</el-form-item>
- <el-form-item label="瀹跺涵鍙�" prop="familyId">
- <el-input v-model="formDat.familyId" placeholder="璇疯緭鍏ュ搴彿" clearable :style="{width: '100%'}" >
- </el-input>
+
+ <el-form-item label="鍙戠敓鏃堕棿" prop="happenTime">
+ <el-input
+ v-model='formDat.happenTime'
+ type='date'
+ placeholder='閫夋嫨鏃ユ湡'
+ ></el-input>
</el-form-item>
<el-form-item label="澶囨敞" prop="remark">
<el-input v-model="formDat.remark" placeholder="璇疯緭鍏ュ娉�" clearable :style="{width: '100%'}" ></el-input>
@@ -199,7 +253,8 @@
:http-request="requestUpload"
:file-list="fileList"
>
- <i 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"
@@ -236,11 +291,13 @@
class="upload-demo"
multiple
- :on-remove="handleRemove"
+ :on-remove="handleRemoveFile"
:http-request="requestUpload"
:show-file-list="true"
>
- <el-button type="primary">Click to upload</el-button>
+
+ <el-button type="primary">鐐瑰嚮涓婁紶</el-button>
+ <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div>
<template #tip>
<div class="el-upload__tip">
</div>
@@ -251,7 +308,7 @@
<h4 class="form-header"> </h4>
<div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="submitDataScope">纭� 瀹�</el-button>
+ <el-button type="primary" @click="submitDataScope">淇� 瀛�</el-button>
<el-button @click="cancelData">鍙� 娑�</el-button>
</div>
</el-dialog>
@@ -271,9 +328,10 @@
import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu";
+import { Notification, MessageBox, Message, Loading } from 'element-ui'
//鍦╯ystem/note/index.js涓鍏ユ帴鍙e嚱鏁� --鎺ュソ浜�
-import {listFamilyevent , getFamilyeventInfo , delFamilyevent , addFamilyevent , uploadPic} from "@/api/bignote/index";
+import {listFamilyevent,enload, delFamilyevent , addFamilyevent , uploadPic} from "@/api/bignote/index";
export default {
name: "Role",
dicts: ['sys_normal_disable'],
@@ -310,21 +368,20 @@
dateRange: [],
// 鏁版嵁鑼冨洿閫夐」
fot:[".jpg",".jif"],
- fileList:[
- ],
- fileListOther:[
-
- ],
+ fileList:[],
+ fileListOther:[],
dsb:true,
btn:false,
+ uploading: false,
formDat: {
- type: undefined,
+ // type: undefined,
title: undefined,
location: undefined,
holder: undefined,
address: undefined,
remark: undefined,
familyId:undefined,
+ happenTime:undefined,
url: undefined,
},
// 鑿滃崟鍒楄〃
@@ -338,7 +395,8 @@
title:undefined,
people:undefined,
address:undefined,
- createTime:undefined
+ happenStartTime:undefined,
+ happenEndTime:undefined
},
// 琛ㄥ崟鍙傛暟
form: {},
@@ -369,7 +427,7 @@
message: '璇疯緭鍏ュ搴彿',
trigger: 'blur'
}],
- createTime: [{
+ happenTime: [{
required: true,
message: '璇烽�夋嫨鏃ユ湡閫夋嫨',
trigger: 'change'
@@ -389,31 +447,34 @@
this.open = false;
this.reset();
},
-
+ getRowId(row)
+ {
+ return row.id
+ },
//闅旇鍙樿壊
+ tableRowClassName({ row, rowIndex }) {
+ if (rowIndex % 2 == 0) {
+ return "statistics-warning-row1";
+ } else {
+ return "statistics-warning-row";
+ }
+ },
- // methods: {
- // tableRowClassName({row, rowIndex}) {
- // if (rowIndex === 1) //=>杩欓噷鍙互鏀规垚 rowIndex%2=== 1锛屽悗闈㈢洿鎺lse鍗冲彲杈惧埌闅旇鍙樿壊鏁堟灉銆�
- // {
- // return 'warning-row';
- // } else if (rowIndex === 3) {
- // return 'success-row';
- // }
- // return '';
- // }
- // },
/** 鏌ヨ瑙掕壊鍒楄〃 */
//鍒楄〃鏄剧ず瀹跺ぇ浜嬭
getList() {
this.loading = true;
- console.log(this.queryParams)
+ console.log(this.queryParams)
+ this.queryParams.happenStartTime = this.dateRange.length > 0 && this.dateRange[0]
+ this.queryParams.happenEndTime = this.dateRange.length > 0 && this.dateRange[1]
+
// listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
listFamilyevent(this.queryParams).then(response => {
-
- // console.log(response.data.data)
+ // alert(123)
+ // console.log(response.data.data)
+ // alert(response.data.data[1].url)
this.familyList = response.data.data;
this.total = response.data.total;
@@ -458,7 +519,6 @@
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
this.queryParams.pageNum = 1;
-
this.getList();
},
/** 閲嶇疆鎸夐挳鎿嶄綔 */
@@ -470,7 +530,7 @@
// 澶氶�夋閫変腑鏁版嵁
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
- console.log(this.ids)
+ // alert(this.ids)
this.single = selection.length!=1
this.multiple = !selection.length
},
@@ -486,8 +546,7 @@
/** 鏌ョ湅璇︾粏淇℃伅 */
handleCheck(row){
const id = row.id;
-
- this.$router.push("/family1/bignote/familyeventInfo/" + id);
+ this.$router.push("/familymodel/bignote/familyeventInfo/" + id);
},
/** 淇敼鎸夐挳鎿嶄綔 */
handleUpdate(row) {
@@ -495,14 +554,27 @@
let jd = true
this.$router.push({
- path:"/family1/bignote/familyeventInfo/" + id,
+ path:"/familymodel/bignote/familyeventInfo/" + id,
query:{
detail:jd
}
});
},
-
+ handleRemove(file) {
+ for(let i = 0; i < this.fileList.length; i++)
+ {
+ if(this.fileList[i].url==file.url)
+ this.$delete(this.fileList,i);
+ }
+ },
+ handleRemoveFile(file) {
+ for(let i = 0; i < this.fileListOther.length; i++)
+ {
+ if(this.fileListOther[i].url==file.url)
+ this.$delete(this.fileListOther,i);
+ }
+ },
handlePictureCardPreview(file) {
this.dialogImageUrl = file.url;
this.dialogVisible = true;
@@ -527,6 +599,17 @@
});
}
});
+ // 娓呯┖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)
{
@@ -534,10 +617,11 @@
var formData = new FormData();
formData.append('uploadFile', file);
let _this = this
-
+ this.uploading = true;
uploadPic(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})
@@ -554,19 +638,64 @@
/** 鍒犻櫎鎸夐挳鎿嶄綔 */
handleDelete(row) {
const Ids = row.id || this.ids;
- this.$modal.confirm('鏄惁纭鍒犻櫎搴忓彿涓�"' + Ids + '"鐨勬暟鎹」锛�').then(function() {
+
+ this.$modal.confirm('鏄惁纭鍒犻櫎鎵�閫変腑鏁版嵁椤癸紵').then(function() {
return delFamilyevent(Ids);
}).then(() => {
this.getList();
+ this.ids = []
this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
}).catch(() => {});
},
/** 瀵煎嚭鎸夐挳鎿嶄綔 */
handleExport() {
+ const Ids = this.ids;
+
+ if(Ids.length==0)
+ {
this.download('/family/zfEvent/export', {
...this.queryParams
}, `zfEvent_${new Date().getTime()}.xlsx`)
+ }
+ else{
+ this.download('/family/zfEvent/export1/'+Ids, {
+ }, `zfEvent_${new Date().getTime()}.xlsx`)
+ }
+ },
+ /** 瀵煎叆妯℃澘涓嬭浇鎿嶄綔*/
+ handleExportTemplate()
+ {
+ this.download('/family/zfEvent/model', {
+
+ }, `zfEvent_${new Date().getTime()}.xlsx`)
+ },
+ /** 瀵煎叆鎿嶄綔*/
+ handleEnport(params){
+ var file = params.file;
+ var formData = new FormData();
+ formData.append('excelImport', file);
+ let _this = this
+ enload(formData).then(response => {
+ _this.getList();
+ Message({ message: "瀵煎叆鎴愬姛", type: 'warning' })
+
+ }).catch(err)
+ {
+ Message({ message: "瀵煎叆澶辫触", type: 'error' })
+ }
+
}
+
}
};
</script>
+<style>
+.el-table__row.statistics-warning-row {
+ background: #E0EEFE;
+
+}
+.el-table__row.statistics-warning-row1 {
+ background: #FFEFF2;
+
+}
+</style>
--
Gitblit v1.9.1