YZProjectCloud/yanzhu-ui-vue3/src/views/trouble/auditinfo/index.vue

299 lines
9.1 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="问题整改质量留痕id" prop="mainId">
<el-input
v-model="queryParams.mainId"
placeholder="请输入问题整改质量留痕id"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="流程状态(0待审1通过2驳回)" prop="processState">
<el-input
v-model="queryParams.processState"
placeholder="请输入流程状态(0待审1通过2驳回)"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="意见" prop="opinion">
<el-input
v-model="queryParams.opinion"
placeholder="请输入意见"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="删除状态(0未删除1已删除)" prop="isDel">
<el-input
v-model="queryParams.isDel"
placeholder="请输入删除状态(0未删除1已删除)"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="创建人" prop="createUser">
<el-input
v-model="queryParams.createUser"
placeholder="请输入创建人"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker clearable
v-model="queryParams.createTime"
type="date"
value-format="YYYY-MM-DD"
placeholder="请选择创建时间">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="Plus"
@click="handleAdd"
v-hasPermi="['trouble:auditinfo:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="Edit"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['trouble:auditinfo:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="Delete"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['trouble:auditinfo:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
v-hasPermi="['trouble:auditinfo:export']"
>导出</el-button>
</el-col>
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="auditinfoList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="${comment}" align="center" prop="id" />
<el-table-column label="问题整改质量留痕id" align="center" prop="mainId" />
<el-table-column label="流程状态(0待审1通过2驳回)" align="center" prop="processState" />
<el-table-column label="意见" align="center" prop="opinion" />
<el-table-column label="删除状态(0未删除1已删除)" align="center" prop="isDel" />
<el-table-column label="创建人" align="center" prop="createUser" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template #default="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['trouble:auditinfo:edit']">修改</el-button>
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['trouble:auditinfo:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改隐患流程信息对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="auditinfoRef" :model="form" :rules="rules" label-width="80px">
<el-form-item label="问题整改质量留痕id" prop="mainId">
<el-input v-model="form.mainId" placeholder="请输入问题整改质量留痕id" />
</el-form-item>
<el-form-item label="流程状态(0待审1通过2驳回)" prop="processState">
<el-input v-model="form.processState" placeholder="请输入流程状态(0待审1通过2驳回)" />
</el-form-item>
<el-form-item label="意见" prop="opinion">
<el-input v-model="form.opinion" placeholder="请输入意见" />
</el-form-item>
<el-form-item label="删除状态(0未删除1已删除)" prop="isDel">
<el-input v-model="form.isDel" placeholder="请输入删除状态(0未删除1已删除)" />
</el-form-item>
<el-form-item label="创建人" prop="createUser">
<el-input v-model="form.createUser" placeholder="请输入创建人" />
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
<script setup name="Auditinfo">
import { listAuditinfo, getAuditinfo, delAuditinfo, addAuditinfo, updateAuditinfo } from "@/api/trouble/auditinfo";
const { proxy } = getCurrentInstance();
const auditinfoList = ref([]);
const open = ref(false);
const loading = ref(true);
const showSearch = ref(true);
const ids = ref([]);
const single = ref(true);
const multiple = ref(true);
const total = ref(0);
const title = ref("");
const data = reactive({
form: {},
queryParams: {
pageNum: 1,
pageSize: 10,
mainId: null,
processState: null,
opinion: null,
isDel: null,
createUser: null,
createTime: null
},
rules: {
}
});
const { queryParams, form, rules } = toRefs(data);
/** */
function getList() {
loading.value = true;
listAuditinfo(queryParams.value).then(response => {
auditinfoList.value = response.rows;
total.value = response.total;
loading.value = false;
});
}
// 取消按钮
function cancel() {
open.value = false;
reset();
}
// 表单重置
function reset() {
form.value = {
id: null,
mainId: null,
processState: null,
opinion: null,
isDel: null,
createUser: null,
createTime: null
};
proxy.resetForm("auditinfoRef");
}
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.pageNum = 1;
getList();
}
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef");
handleQuery();
}
// 多选框选中数据
function handleSelectionChange(selection) {
ids.value = selection.map(item => item.id);
single.value = selection.length != 1;
multiple.value = !selection.length;
}
/** 新增按钮操作 */
function handleAdd() {
reset();
open.value = true;
title.value = "添加隐患流程信息";
}
/** 修改按钮操作 */
function handleUpdate(row) {
reset();
const _id = row.id || ids.value
getAuditinfo(_id).then(response => {
form.value = response.data;
open.value = true;
title.value = "修改隐患流程信息";
});
}
/** 提交按钮 */
function submitForm() {
proxy.$refs["auditinfoRef"].validate(valid => {
if (valid) {
if (form.value.id != null) {
updateAuditinfo(form.value).then(response => {
proxy.$modal.msgSuccess("修改成功");
open.value = false;
getList();
});
} else {
addAuditinfo(form.value).then(response => {
proxy.$modal.msgSuccess("新增成功");
open.value = false;
getList();
});
}
}
});
}
/** 删除按钮操作 */
function handleDelete(row) {
const _ids = row.id || ids.value;
proxy.$modal.confirm('是否确认删除隐患流程信息编号为"' + _ids + '"的数据项?').then(function() {
return delAuditinfo(_ids);
}).then(() => {
getList();
proxy.$modal.msgSuccess("删除成功");
}).catch(() => {});
}
/** 导出按钮操作 */
function handleExport() {
proxy.download('trouble/auditinfo/export', {
...queryParams.value
}, `auditinfo_${new Date().getTime()}.xlsx`)
}
getList();
</script>