工具应用

master
shenhan000 2025-05-16 17:24:20 +08:00
parent d9e6b33045
commit bc0d87ac9f
3 changed files with 376 additions and 21 deletions

View File

@ -2,7 +2,7 @@ import request from '@/utils/request'
export function emailList() {
return request({
url: '/email/listEmail',
url: 'sys/email/listEmail',
method: 'get',
})
}
@ -11,14 +11,14 @@ export function emailList() {
export function deleteList(id) {
return request({
url: '/email/deleteEmail?emailId=' + id,
url: 'sys/email/deleteEmail?emailId=' + id,
method: 'get',
})
}
export function updateList(data) {
return request({
url: `/email/updateEmail`,
url: `sys/email/updateEmail`,
method: 'post',
data: data
})
@ -26,25 +26,8 @@ export function emailList() {
export function add(data) {
return request({
url: `/email/createEmail`,
url: `sys/email/createEmail`,
method: 'post',
data: data
})
}
// 根据权益名称id查询权益
export function getBenefitByBenefitId() {
return request({
url: '/benefit/getBenefitByBenefitId',
method: 'get',
})
}
// 添加权益
export function addBenefit(data) {
return request({
url: `/benefit/add`,
method: 'post',
data: data
})
}

View File

@ -0,0 +1,33 @@
import request from '@/utils/request'
export function emailList() {
return request({
url: 'sys/tool/listTool',
method: 'get',
})
}
export function deleteList(id) {
return request({
url: 'sys/tool/delTool?toolId=' + id,
method: 'get',
})
}
export function updateList(data) {
return request({
url: `sys/tool/editTool`,
method: 'post',
data: data
})
}
export function add(data) {
return request({
url: `sys/tool/addTool`,
method: 'post',
data: data
})
}

View File

@ -0,0 +1,339 @@
<template>
<div class="app-container">
<el-row :gutter="10" class="mb8">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
>新增</el-button
>
</el-row>
<el-table ref="tables" v-loading="loading" :data="list">
<el-table-column
label="创建时间"
align="center"
width="200"
prop="createTime"
:show-overflow-tooltip="true"
/>
<el-table-column
label="图片"
align="center"
width="200"
prop="imageUrl"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
<img style="width: 100px;height: 100px;" :src="scope.row.imageUrl" alt="">
</template>
</el-table-column>
<el-table-column
label="状态"
align="center"
width="200"
prop="status"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
{{scope.row.status === 1 ? '启用' : "禁用"}}
</template>
</el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-close"
@click="showEdit(scope.row)"
>修改</el-button
>
</template>
</el-table-column>
</el-table>
<!-- <el-dialog title="添加邮箱" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" label-width="120px">
<el-row>
<el-col :span="24">
<el-form-item label="邮箱" required>
<el-input
v-model="form.recipientEmail"
type="input"
placeholder="请输入邮箱"
></el-input>
</el-form-item>
<el-form-item label="备注" required>
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="onAdd"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog> -->
<!-- 新增 -->
<el-dialog title="新增工具" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" label-width="120px">
<el-row>
<el-col :span="24">
<img v-if="form.imageUrl" style="width: 100px;height: 100px;" :src="form.imageUrl" alt="">
<div class="upload-container" v-loading="uploadLoading" element-loading-text="上传中...">
<el-upload
:action="uploadFileUrl"
:before-upload="handleBeforeUpload"
:limit="1"
:on-error="handleUploadError"
:on-exceed="handleExceed"
:on-success="handleUploadSuccess"
:show-file-list="false"
:headers="headers"
class="upload-file-uploader"
ref="fileUpload"
>
<!-- 上传按钮 -->
<el-button size="mini" type="primary">选取图片</el-button>
<!-- 上传提示 -->
</el-upload>
</div>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="onAdd"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 编辑 -->
<el-dialog title="编辑工具" :visible.sync="editOpen" width="600px" append-to-body>
<el-form ref="editForm" :model="editForm" label-width="80px">
<el-row>
<el-col :span="24">
<img v-if="editForm.imageUrl" style="width: 100px;height: 100px;margin-left:30px" :src="editForm.imageUrl" alt="">
<div class="upload-container" style="display: flex;margin:10px 0;margin-left:30px" v-loading="uploadLoading" element-loading-text="上传中...">
<el-upload
:action="uploadFileUrl"
:before-upload="handleBeforeUpload"
:limit="1"
:on-error="handleUploadError"
:on-exceed="handleExceed"
:on-success="handleUploadSuccess"
:show-file-list="false"
:headers="headers"
class="upload-file-uploader"
ref="fileUpload"
>
<!-- 上传按钮 -->
<el-button size="mini" type="primary">重新选取图片</el-button>
<!-- 上传提示 -->
</el-upload>
</div>
<el-form-item label="状态">
<el-select style="width: 100%;" v-model="editForm.status" placeholder="状态">
<el-option v-for="dict in statusList" :key="dict.dictValue" :label="dict.label" :value="dict.value"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleEdit"></el-button>
<el-button @click="cancelEdit"> </el-button>
</div>
</el-dialog>
<!-- <el-dialog title="编辑邮箱" :visible.sync="editOpen" width="600px" append-to-body>
<el-form ref="form" :model="editForm" label-width="120px">
<el-row>
<el-col :span="24">
<el-form-item label="邮箱" required>
<el-input
v-model="editForm.recipientEmail"
type="input"
placeholder="请输入邮箱"
></el-input>
</el-form-item>
<el-form-item label="备注" required>
<el-input
v-model="editForm.remark"
type="textarea"
placeholder="请输入备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleEdit"></el-button>
<el-button @click="cancelEdit"> </el-button>
</div>
</el-dialog> -->
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import { emailList, add, deleteList, updateList } from "@/api/useTool/index";
export default {
name: "useTool",
dicts: [],
data() {
return {
statusList: [
{
label: '启用',
value: 1
},
{
label: '禁用',
value: 0
}
],
uploadFileUrl: process.env.VUE_APP_BASE_API + '/file/fileUpload',
uploadLoading: false,
open: false,
editOpen: false,
form: {},
//
loading: true,
headers: {
Authorization: 'Bearer ' + getToken(),
},
list: [],
queryParams: {
pageNumber: 1,
pageSize: 10,
},
editForm: {},
};
},
created() {
this.getList();
// this.onGetDict()
},
methods: {
//
cancelEdit() {
this.editOpen = false;
this.editForm = {};
},
//
handleEdit() {
this.$refs["editForm"].validate((valid) => {
if (valid) {
updateList(this.addDateRange(this.editForm)).then((response) => {
this.$modal.msgSuccess("编辑成功");
this.getList();
this.cancelEdit();
});
}
});
},
showEdit(row) {
this.editOpen = true;
this.editForm = JSON.parse(JSON.stringify(row)) ;
},
handleBeforeUpload(file) {
this.uploadLoading = true; // loading
return true; // true
},
handleUploadSuccess(response, file, fileList) {
this.$nextTick(() => {
if(this.editOpen){
this.editForm.imageUrl = response.data.path
}else{
this.form.imageUrl = response.data.path
}
this.uploadLoading = false;
this.$message.success('上传成功');
this.$refs.fileUpload.clearFiles(); //
})
},
handleUploadError(error, file, fileList) {
console.log('error3',error);
console.log('file3',file);
console.log('fileList3',fileList);
this.uploadLoading = false;
this.$message.error('上传失败,请重新上传');
},
handleExceed(files, fileList) {
this.$message.warning(`当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
},
//
handleAdd() {
this.open = true;
},
cancel() {
this.form = {};
this.open = false;
},
onAdd() {
this.$refs["form"].validate((valid) => {
if (valid) {
add(this.addDateRange({ ...this.form })).then((response) => {
this.$modal.msgSuccess("添加成功");
this.getList();
this.cancel();
});
}
});
},
//
// onGetDict() {
// getDict(this.addDateRange({type:'memberBenefitType'})).then((response) => {
// });
// },
/** 查询登录日志列表 */
getList() {
this.loading = true;
emailList(this.addDateRange(this.queryParams, this.dateRange)).then((response) => {
this.list = response.data;
this.loading = false;
});
},
/** 删除按钮操作 */
handleDelete(row) {
this.$modal
.confirm("是否确认删除?")
.then(function () {
return deleteList(row.id);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 清空按钮操作 */
handleClean() {
this.$modal
.confirm("是否确认清空所有登录日志数据项?")
.then(function () {
return cleanLogininfor();
})
.then(() => {
this.getList();
this.$modal.msgSuccess("清空成功");
})
.catch(() => {});
},
},
};
</script>