forked from kongfp/Tp_Web2.0
feat: 代码更新
parent
fc4fe75d24
commit
d810b6abce
@ -0,0 +1,11 @@
|
||||
import { http } from "@/utils/http";
|
||||
import { baseUrlApi } from "./utils";
|
||||
|
||||
type Result = {
|
||||
count: number;
|
||||
results?: Array<any>;
|
||||
};
|
||||
|
||||
export const getHomeList = (params?: object) => {
|
||||
return http.request<Result>("get", baseUrlApi(""), { params });
|
||||
};
|
@ -0,0 +1,2 @@
|
||||
const { VITE_APP_BASE_URL } = import.meta.env;
|
||||
export const baseUrlApi = (url: string) => `${VITE_APP_BASE_URL}/api/${url}`;
|
@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="133px" height="143px" viewBox="0 0 133 143" enable-background="new 0 0 133 143" xml:space="preserve"> <image id="image0" width="133" height="143" x="0" y="0"
|
||||
href="data:image/png;base64,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" />
|
||||
</svg>
|
After Width: | Height: | Size: 6.2 KiB |
@ -1,5 +1,6 @@
|
||||
import bg from "@/assets/login/bg.png";
|
||||
import avatar from "@/assets/login/avatar.svg?component";
|
||||
import illustration from "@/assets/login/illustration.svg?component";
|
||||
import logo from "@/assets/login/logo.svg?component";
|
||||
|
||||
export { bg, avatar, illustration };
|
||||
export { bg, avatar, illustration, logo };
|
||||
|
@ -0,0 +1,138 @@
|
||||
<script setup lang="ts">
|
||||
import { ref } from "vue";
|
||||
import ReCol from "@/components/ReCol";
|
||||
import { formRules } from "./utils/rule";
|
||||
import { FormProps } from "./utils/types";
|
||||
import { usePublicHooks } from "../hooks";
|
||||
|
||||
const props = withDefaults(defineProps<FormProps>(), {
|
||||
formInline: () => ({
|
||||
higherDeptOptions: [],
|
||||
parentId: 0,
|
||||
name: "",
|
||||
principal: "",
|
||||
phone: "",
|
||||
email: "",
|
||||
sort: 0,
|
||||
status: 1,
|
||||
remark: ""
|
||||
})
|
||||
});
|
||||
|
||||
const ruleFormRef = ref();
|
||||
const { switchStyle } = usePublicHooks();
|
||||
const newFormInline = ref(props.formInline);
|
||||
|
||||
function getRef() {
|
||||
return ruleFormRef.value;
|
||||
}
|
||||
|
||||
defineExpose({ getRef });
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<el-form
|
||||
ref="ruleFormRef"
|
||||
:model="newFormInline"
|
||||
:rules="formRules"
|
||||
label-width="82px"
|
||||
>
|
||||
<el-row :gutter="30">
|
||||
<re-col>
|
||||
<el-form-item label="上级部门">
|
||||
<el-cascader
|
||||
class="w-full"
|
||||
v-model="newFormInline.parentId"
|
||||
:options="newFormInline.higherDeptOptions"
|
||||
:props="{
|
||||
value: 'id',
|
||||
label: 'name',
|
||||
emitPath: false,
|
||||
checkStrictly: true
|
||||
}"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择上级部门"
|
||||
>
|
||||
<template #default="{ node, data }">
|
||||
<span>{{ data.name }}</span>
|
||||
<span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
|
||||
</template>
|
||||
</el-cascader>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
|
||||
<re-col :value="12" :xs="24" :sm="24">
|
||||
<el-form-item label="部门名称" prop="name">
|
||||
<el-input
|
||||
v-model="newFormInline.name"
|
||||
clearable
|
||||
placeholder="请输入部门名称"
|
||||
/>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
<re-col :value="12" :xs="24" :sm="24">
|
||||
<el-form-item label="部门负责人">
|
||||
<el-input
|
||||
v-model="newFormInline.principal"
|
||||
clearable
|
||||
placeholder="请输入部门负责人"
|
||||
/>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
|
||||
<re-col :value="12" :xs="24" :sm="24">
|
||||
<el-form-item label="手机号" prop="phone">
|
||||
<el-input
|
||||
v-model="newFormInline.phone"
|
||||
clearable
|
||||
placeholder="请输入手机号"
|
||||
/>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
<re-col :value="12" :xs="24" :sm="24">
|
||||
<el-form-item label="邮箱" prop="email">
|
||||
<el-input
|
||||
v-model="newFormInline.email"
|
||||
clearable
|
||||
placeholder="请输入邮箱"
|
||||
/>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
|
||||
<re-col :value="12" :xs="24" :sm="24">
|
||||
<el-form-item label="排序">
|
||||
<el-input-number
|
||||
v-model="newFormInline.sort"
|
||||
:min="0"
|
||||
:max="9999"
|
||||
controls-position="right"
|
||||
/>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
<re-col :value="12" :xs="24" :sm="24">
|
||||
<el-form-item label="部门状态">
|
||||
<el-switch
|
||||
v-model="newFormInline.status"
|
||||
inline-prompt
|
||||
:active-value="1"
|
||||
:inactive-value="0"
|
||||
active-text="启用"
|
||||
inactive-text="停用"
|
||||
:style="switchStyle"
|
||||
/>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
|
||||
<re-col>
|
||||
<el-form-item label="备注">
|
||||
<el-input
|
||||
v-model="newFormInline.remark"
|
||||
placeholder="请输入备注信息"
|
||||
type="textarea"
|
||||
/>
|
||||
</el-form-item>
|
||||
</re-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</template>
|
@ -0,0 +1,151 @@
|
||||
<script setup lang="ts">
|
||||
import { ref } from "vue";
|
||||
import { useDept } from "./utils/hook";
|
||||
import { PureTableBar } from "@/components/RePureTableBar";
|
||||
import { useRenderIcon } from "@/components/ReIcon/src/hooks";
|
||||
import { PureTable } from "@pureadmin/table";
|
||||
|
||||
import Delete from "@iconify-icons/ep/delete";
|
||||
import EditPen from "@iconify-icons/ep/edit-pen";
|
||||
import Search from "@iconify-icons/ep/search";
|
||||
import Refresh from "@iconify-icons/ep/refresh";
|
||||
import AddFill from "@iconify-icons/ri/add-circle-line";
|
||||
|
||||
defineOptions({
|
||||
name: "Dept"
|
||||
});
|
||||
|
||||
const formRef = ref();
|
||||
const tableRef = ref();
|
||||
const {
|
||||
form,
|
||||
loading,
|
||||
columns,
|
||||
dataList,
|
||||
onSearch,
|
||||
resetForm,
|
||||
openDialog,
|
||||
handleDelete,
|
||||
handleSelectionChange
|
||||
} = useDept();
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="main">
|
||||
<el-form
|
||||
ref="formRef"
|
||||
:inline="true"
|
||||
:model="form"
|
||||
class="search-form bg-bg_color w-[99/100] pl-8 pt-[12px]"
|
||||
>
|
||||
<el-form-item label="部门名称:" prop="name">
|
||||
<el-input
|
||||
v-model="form.name"
|
||||
placeholder="请输入部门名称"
|
||||
clearable
|
||||
class="!w-[200px]"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态:" prop="status">
|
||||
<el-select
|
||||
v-model="form.status"
|
||||
placeholder="请选择状态"
|
||||
clearable
|
||||
class="!w-[180px]"
|
||||
>
|
||||
<el-option label="启用" :value="1" />
|
||||
<el-option label="停用" :value="0" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button
|
||||
type="primary"
|
||||
:icon="useRenderIcon(Search)"
|
||||
:loading="loading"
|
||||
@click="onSearch"
|
||||
>
|
||||
搜索
|
||||
</el-button>
|
||||
<el-button :icon="useRenderIcon(Refresh)" @click="resetForm(formRef)">
|
||||
重置
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<PureTableBar
|
||||
title="部门列表(仅演示,操作后不生效)"
|
||||
:columns="columns"
|
||||
:tableRef="tableRef?.getTableRef()"
|
||||
@refresh="onSearch"
|
||||
>
|
||||
<template #buttons>
|
||||
<el-button
|
||||
type="primary"
|
||||
:icon="useRenderIcon(AddFill)"
|
||||
@click="openDialog()"
|
||||
>
|
||||
新增部门
|
||||
</el-button>
|
||||
</template>
|
||||
<template v-slot="{ size, dynamicColumns }">
|
||||
<pure-table
|
||||
ref="tableRef"
|
||||
border
|
||||
adaptive
|
||||
:adaptiveConfig="{ offsetBottom: 32 }"
|
||||
align-whole="center"
|
||||
row-key="id"
|
||||
showOverflowTooltip
|
||||
table-layout="auto"
|
||||
default-expand-all
|
||||
:loading="loading"
|
||||
:size="size"
|
||||
:data="dataList"
|
||||
:columns="dynamicColumns"
|
||||
:header-cell-style="{
|
||||
background: 'var(--el-table-row-hover-bg-color)',
|
||||
color: 'var(--el-text-color-primary)'
|
||||
}"
|
||||
@selection-change="handleSelectionChange"
|
||||
>
|
||||
<template #operation="{ row }">
|
||||
<el-button
|
||||
class="reset-margin"
|
||||
link
|
||||
type="primary"
|
||||
:size="size"
|
||||
:icon="useRenderIcon(EditPen)"
|
||||
@click="openDialog('编辑', row)"
|
||||
>
|
||||
编辑
|
||||
</el-button>
|
||||
<el-popconfirm
|
||||
:title="`是否确认删除部门名称为${row.name}的这条数据`"
|
||||
@confirm="handleDelete(row)"
|
||||
>
|
||||
<template #reference>
|
||||
<el-button
|
||||
class="reset-margin"
|
||||
link
|
||||
type="primary"
|
||||
:size="size"
|
||||
:icon="useRenderIcon(Delete)"
|
||||
>
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-popconfirm>
|
||||
</template>
|
||||
</pure-table>
|
||||
</template>
|
||||
</PureTableBar>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.search-form {
|
||||
:deep(.el-form-item) {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
}
|
||||
</style>
|
@ -0,0 +1,16 @@
|
||||
interface FormItemProps {
|
||||
higherDeptOptions: Record<string, unknown>[];
|
||||
parentId: number;
|
||||
name: string;
|
||||
principal: string;
|
||||
phone: string | number;
|
||||
email: string;
|
||||
sort: number;
|
||||
status: number;
|
||||
remark: string;
|
||||
}
|
||||
interface FormProps {
|
||||
formInline: FormItemProps;
|
||||
}
|
||||
|
||||
export type { FormItemProps, FormProps };
|
Loading…
Reference in New Issue