Browse Source

页面优化

master
DX 3 months ago
parent
commit
22ace4f0b5
  1. 36
      src/views/airqualitycollection/index.vue
  2. 2
      src/views/enterpriseinspections/index.vue
  3. 405
      src/views/system/user/index.vue
  4. 4
      src/views/task/index.vue

36
src/views/airqualitycollection/index.vue

@ -13,15 +13,6 @@
<!-- 保持空内容 -->
</el-tab-pane>
</el-tabs>
<div>
<UploadExcel
v-model="fileUrls"
:file-type="['xlsx', 'xls']"
:file-size="1"
@success="getList"
/>
</div>
</section>
@ -34,27 +25,17 @@
label-position="right"
class="formClass"
>
<el-form-item label="站点" prop="siteName">
<el-form-item label="" prop="siteName">
<el-input
v-model="queryParams.siteName"
placeholder="请输入站点名称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
class="!w-370px"
/>
</el-form-item>
<el-form-item label="时间" prop="createTime">
<el-date-picker
v-model="queryParams.times"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class="!w-220px"
/>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"
><Icon icon="ep:search" class="mr-5px" /> 查询 </el-button
@ -64,6 +45,16 @@
>
</el-form-item>
<el-form-item>
<div>
<UploadExcel
v-model="fileUrls"
:file-type="['xlsx', 'xls']"
:file-size="1"
@success="getList"
/>
</div>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" style="margin-top: 25px">
@ -114,7 +105,6 @@
<script setup lang="ts">
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import { QualityCollectionApi, QualityCollectionVO } from '@/api/airqualitycollection'
import QualityCollectionForm from './QualityCollectionForm.vue'

2
src/views/enterpriseinspections/index.vue

@ -1,5 +1,5 @@
<template>
<ContentWrap style="padding: 10px">
<ContentWrap>
<section class="flex flex-col gap-20px">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryFormRef" :inline="true" class="formClass">

405
src/views/system/user/index.vue

@ -1,222 +1,200 @@
<template>
<el-row :gutter="20">
<!-- 左侧部门树 -->
<el-col :span="4" :xs="24">
<ContentWrap class="h-1/1">
<DeptTree @node-click="handleDeptNodeClick" />
</ContentWrap>
</el-col>
<el-col :span="20" :xs="24">
<!-- 搜索 -->
<ContentWrap>
<section class="flex flex-col gap-20px">
<el-form
class="-mb-15px"
:model="queryParams"
ref="queryFormRef"
:inline="true"
label-width="68px"
<ContentWrap>
<section class="flex flex-col gap-20px">
<el-form
class="-mb-15px"
:model="queryParams"
ref="queryFormRef"
:inline="true"
label-width="68px"
>
<el-form-item label="用名称" prop="username">
<el-input
v-model="queryParams.realName"
placeholder="请输入用户名称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="" prop="mobile">
<el-input
v-model="queryParams.mobile"
placeholder="请输入手机号码"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="" prop="status" v-if="!isInset">
<el-select
v-model="queryParams.status"
placeholder="用户状态"
clearable
class="!w-240px"
>
<el-form-item label="用名称" prop="username">
<el-input
v-model="queryParams.realName"
placeholder="请输入用户名称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="" prop="mobile">
<el-input
v-model="queryParams.mobile"
placeholder="请输入手机号码"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="" prop="status" v-if="!isInset">
<el-select
v-model="queryParams.status"
placeholder="用户状态"
clearable
class="!w-240px"
>
<el-option
v-for="dict in getIntDictOptions(DICT_TYPE.COMMON_STATUS)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="" prop="createTime" v-if="!isInset">
<el-date-picker
v-model="queryParams.createTime"
value-format="YYYY-MM-DD HH:mm:ss"
type="datetimerange"
start-placeholder="开始日期"
end-placeholder="结束日期"
class="!w-240px"
/>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" />搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" />重置</el-button>
<el-option
v-for="dict in getIntDictOptions(DICT_TYPE.COMMON_STATUS)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="" prop="createTime" v-if="!isInset">
<el-date-picker
v-model="queryParams.createTime"
value-format="YYYY-MM-DD HH:mm:ss"
type="datetimerange"
start-placeholder="开始日期"
end-placeholder="结束日期"
class="!w-240px"
/>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" />搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" />重置</el-button>
<el-button
type="primary"
plain
@click="openForm('create')"
v-hasPermi="['system:user:create']"
v-if="!isInset"
>
<Icon icon="ep:plus" /> 新增
</el-button>
<el-button
type="warning"
plain
@click="handleImport"
v-hasPermi="['system:user:import']"
v-if="!isInset"
>
<Icon icon="ep:upload" /> 导入
</el-button>
<el-button
type="success"
plain
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['system:user:export']"
v-if="!isInset"
>
<Icon icon="ep:download" />导出
</el-button>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="list">
<el-table-column
label="真实姓名"
align="center"
prop="realName"
:show-overflow-tooltip="true"
/>
<el-table-column label="用户性别" align="center" prop="sex" width="120" >
<template #default="scope">
{{getDictLabel(DICT_TYPE.SYSTEM_USER_SEX, scope.row.sex)}}
</template>
</el-table-column>
<el-table-column label="手机号码" align="center" prop="mobile" width="120" />
<el-table-column
label="所属部门"
align="center"
key="deptName"
prop="deptName"
:show-overflow-tooltip="true"
/>
<el-table-column label="状态" key="status" v-if="!isInset">
<template #default="scope">
<el-switch
v-model="scope.row.status"
:active-value="0"
:inactive-value="1"
@change="handleStatusChange(scope.row)"
:disabled="!checkPermi(['system:user:update'])"
/>
</template>
</el-table-column>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
:formatter="dateFormatter"
width="180"
/>
<el-table-column label="操作" align="center" width="160" v-if="!isInset">
<template #default="scope">
<div class="flex items-center justify-center">
<el-button
type="primary"
plain
@click="openForm('create')"
v-hasPermi="['system:user:create']"
v-if="!isInset"
link
@click="openForm('update', scope.row.id)"
v-hasPermi="['system:user:update']"
>
<Icon icon="ep:plus" /> 新增
<Icon icon="ep:edit" />修改
</el-button>
<el-button
type="warning"
plain
@click="handleImport"
v-hasPermi="['system:user:import']"
v-if="!isInset"
<el-dropdown
@command="(command) => handleCommand(command, scope.row)"
v-hasPermi="[
'system:user:delete',
'system:user:update-password',
'system:permission:assign-user-role'
]"
>
<Icon icon="ep:upload" /> 导入
</el-button>
<el-button
type="success"
plain
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['system:user:export']"
v-if="!isInset"
>
<Icon icon="ep:download" />导出
</el-button>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="list">
<el-table-column
label="头像"
align="center"
prop="realName"
:show-overflow-tooltip="true"
>
<template #default="scope">
<el-image
style="width: 60px; height: 60px;border-radius: 50%;"
:src="scope.row.avatar"
:preview-src-list="[scope.row.avatar]"
:preview-teleported="true"
/>
</template>
</el-table-column>
<el-table-column label="用户编号" align="center" key="id" prop="id" />
<el-table-column
label="用户名称"
align="center"
prop="realName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="部门"
align="center"
key="deptName"
prop="deptName"
:show-overflow-tooltip="true"
/>
<el-table-column label="手机号码" align="center" prop="mobile" width="120" />
<el-table-column label="状态" key="status" v-if="!isInset">
<template #default="scope">
<el-switch
v-model="scope.row.status"
:active-value="0"
:inactive-value="1"
@change="handleStatusChange(scope.row)"
:disabled="!checkPermi(['system:user:update'])"
/>
</template>
</el-table-column>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
:formatter="dateFormatter"
width="180"
/>
<el-table-column label="操作" align="center" width="160" v-if="!isInset">
<template #default="scope">
<div class="flex items-center justify-center">
<el-button
type="primary"
link
@click="openForm('update', scope.row.id)"
v-hasPermi="['system:user:update']"
>
<Icon icon="ep:edit" />修改
</el-button>
<el-dropdown
@command="(command) => handleCommand(command, scope.row)"
v-hasPermi="[
'system:user:delete',
'system:user:update-password',
'system:permission:assign-user-role'
]"
>
<el-button type="primary" link><Icon icon="ep:d-arrow-right" /> 更多</el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item
command="handleDelete"
v-if="checkPermi(['system:user:delete'])"
>
<Icon icon="ep:delete" />删除
</el-dropdown-item>
<el-dropdown-item
command="handleDelete2"
v-if="checkPermi(['system:user:deleteAllData'])"
>
<Icon icon="ep:delete" />测试删除全部数据
</el-dropdown-item>
<el-dropdown-item
command="handleResetPwd"
v-if="checkPermi(['system:user:update-password'])"
>
<Icon icon="ep:key" />重置密码
</el-dropdown-item>
<el-dropdown-item
command="handleRole"
v-if="checkPermi(['system:permission:assign-user-role'])"
>
<Icon icon="ep:circle-check" />分配角色
</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</div>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="100" v-if="isInset">
<template #default="{ row }">
<el-button type="primary" link @click="selectUser(row.id)">
<Icon icon="ep:select" />选择
</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<el-pagination
:total="total"
:show-page-size="false"
layout="total, prev, pager, next"
v-model:current-page="queryParams.pageNo"
v-model:page-size="queryParams.pageSize"
@change="getList"
class="ml-auto"
/>
</section>
</ContentWrap>
</el-col>
</el-row>
<el-button type="primary" link><Icon icon="ep:d-arrow-right" /> 更多</el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item
command="handleDelete"
v-if="checkPermi(['system:user:delete'])"
>
<Icon icon="ep:delete" />删除
</el-dropdown-item>
<el-dropdown-item
command="handleDelete2"
v-if="checkPermi(['system:user:deleteAllData'])"
>
<Icon icon="ep:delete" />测试删除全部数据
</el-dropdown-item>
<el-dropdown-item
command="handleResetPwd"
v-if="checkPermi(['system:user:update-password'])"
>
<Icon icon="ep:key" />重置密码
</el-dropdown-item>
<el-dropdown-item
command="handleRole"
v-if="checkPermi(['system:permission:assign-user-role'])"
>
<Icon icon="ep:circle-check" />分配角色
</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</div>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="100" v-if="isInset">
<template #default="{ row }">
<el-button type="primary" link @click="selectUser(row.id)">
<Icon icon="ep:select" />选择
</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<el-pagination
:total="total"
:show-page-size="false"
layout="total, prev, pager, next"
v-model:current-page="queryParams.pageNo"
v-model:page-size="queryParams.pageSize"
@change="getList"
class="ml-auto"
/>
</section>
</ContentWrap>
<!-- 添加或修改用户对话框 -->
<UserForm ref="formRef" @success="getList" />
@ -226,7 +204,7 @@
<UserAssignRoleForm ref="assignRoleFormRef" @success="getList" />
</template>
<script lang="ts" setup>
import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
import { DICT_TYPE, getIntDictOptions, getDictLabel } from '@/utils/dict'
import { checkPermi } from '@/utils/permission'
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
@ -235,7 +213,6 @@ import * as UserApi from '@/api/system/user'
import UserForm from './UserForm.vue'
import UserImportForm from './UserImportForm.vue'
import UserAssignRoleForm from './UserAssignRoleForm.vue'
import DeptTree from './DeptTree.vue'
defineOptions({ name: 'SystemUser' })

4
src/views/task/index.vue

@ -1,5 +1,5 @@
<template>
<ContentWrap style="padding: 10px">
<ContentWrap>
<section class="flex flex-col gap-20px">
<el-form :model="queryParams" ref="queryFormRef" inline>
<el-form-item label="" prop="title">
@ -66,7 +66,7 @@
<Icon icon="ep:circle-plus" class="mr-5px" /> 新增
</el-button>
<el-button
plain
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['system:task-info:export']"

Loading…
Cancel
Save