改组织架构不合理地方

This commit is contained in:
2026-02-26 20:56:55 +08:00
parent ef5eb809bc
commit f8437d15b4
6 changed files with 446 additions and 231 deletions
+61 -20
View File
@@ -30,27 +30,13 @@
</el-form-item>
<el-divider></el-divider>
<div class="form-title">个人信息</div>
<!-- 姓名 -->
<el-form-item label="姓名">
<el-input v-model="form.name" placeholder="请输入姓名" />
</el-form-item>
<!-- 电话 -->
<el-form-item label="电话">
<el-input v-model="form.phone" placeholder="请输入电话" />
</el-form-item>
<!-- 邮箱 -->
<el-form-item label="邮箱">
<el-input v-model="form.email" placeholder="请输入邮箱" />
</el-form-item>
<!-- QQ -->
<el-form-item label="QQ">
<el-input v-model="form.qq" placeholder="请输入QQ" />
</el-form-item>
<!-- 性别 -->
<el-form-item label="性别">
<el-radio-group v-model="form.sex" placeholder="请选择性别">
@@ -59,13 +45,68 @@
</el-radio-group>
</el-form-item>
<!-- 生日 -->
<el-form-item label="生日">
<el-date-picker
v-model="form.birthday"
type="date"
placeholder="请选择生日"
/>
</el-form-item>
<!-- 隶属单位 -->
<el-form-item label="隶属单位">
<el-input v-model="form.affiliate_unit" placeholder="请输入隶属单位" />
</el-form-item>
<!-- 部门 -->
<el-form-item label="部门">
<el-input v-model="form.department" placeholder="请输入部门" />
</el-form-item>
<!-- 职位 -->
<el-form-item label="职位">
<el-input v-model="form.position" placeholder="请输入职位" />
</el-form-item>
<!-- 学历 -->
<el-form-item label="学历">
<el-input v-model="form.education" placeholder="请输入学历" />
</el-form-item>
<!-- 民族 -->
<el-form-item label="民族">
<el-input v-model="form.nationality" placeholder="请输入民族" />
</el-form-item>
<!-- 手机 -->
<el-form-item label="手机">
<el-input v-model="form.phone" placeholder="请输入手机号" />
</el-form-item>
<!-- 微信 -->
<el-form-item label="微信">
<el-input v-model="form.wechat" placeholder="请输入微信" />
</el-form-item>
<!-- 邮箱 -->
<el-form-item label="邮箱">
<el-input v-model="form.email" placeholder="请输入邮箱" />
</el-form-item>
<!-- 家庭住址 -->
<el-form-item label="家庭住址">
<el-input v-model="form.home_address" placeholder="请输入家庭住址" />
</el-form-item>
<!-- 状态 -->
<el-form-item label="状态">
<el-select
v-model="form.status"
v-model="form.account_status"
placeholder="请选择状态"
style="width: 100%"
>
<el-option label="离职" :value="2" v-if="!isAdd" />
<el-option label="启用" :value="1" />
<el-option label="禁用" :value="0" />
</el-select>
@@ -83,7 +124,7 @@
<script setup lang="ts">
import { ref, computed, watch } from "vue";
import { ElMessage } from "element-plus";
import { addUser, editUser, getUserInfo } from "@/api/user";
import { createEmployee, editEmployee, getEmployeeDetail } from "@/api/erp";
const props = defineProps({
modelValue: {
@@ -214,7 +255,7 @@
throw new Error("未提供有效的用户 ID");
}
const res = await getUserInfo(userId);
const res = await getEmployeeDetail(userId);
const data = res.data || res;
@@ -301,7 +342,7 @@
password: form.value.password,
};
await addUser(submitData);
await createEmployee(submitData);
ElMessage.success("添加成功");
} else {
// 编辑用户
@@ -326,7 +367,7 @@
submitData.password = form.value.password;
}
await editUser(form.value.id, submitData);
await editEmployee(form.value.id, submitData);
ElMessage.success("更新成功");
}
+74
View File
@@ -57,11 +57,85 @@
<el-pagination :current-page="page" :page-size="pageSize" :total="total" @current-change="handlePageChange"
layout="total, prev, pager, next" />
</div>
<!-- 编辑弹窗 -->
<Edit ref="editRef" @submit="fetchData" />
</div>
</template>
<script setup lang="ts">
import { ref, onMounted } from "vue";
import { ElMessage, ElMessageBox } from "element-plus";
import { Plus, Refresh } from "@element-plus/icons-vue";
import { getEmployeeList, deleteEmployee } from "@/api/erp";
import Edit from "./components/edit.vue";
const users = ref<any[]>([]);
const loading = ref(false);
const page = ref(1);
const pageSize = ref(10);
const total = ref(0);
const editRef = ref<any>(null);
// 获取列表数据
const fetchData = async () => {
loading.value = true;
try {
const res = await getEmployeeList();
users.value = res.data || res || [];
total.value = users.value.length;
} catch (e: any) {
ElMessage.error(e?.message || "获取列表失败");
} finally {
loading.value = false;
}
};
// 刷新
const refresh = () => {
fetchData();
};
// 添加用户
const handleAddUser = () => {
editRef.value?.openAdd();
};
// 编辑用户
const handleEdit = (row: any) => {
editRef.value?.openEdit(row);
};
// 查看
const handlePreview = (row: any) => {
editRef.value?.openEdit(row);
};
// 删除用户
const handleDelete = async (row: any) => {
try {
await ElMessageBox.confirm(`确定删除用户 "${row.name}" 吗?`, "提示", {
type: "warning",
});
await deleteEmployee(row.id);
ElMessage.success("删除成功");
fetchData();
} catch (e: any) {
if (e !== "cancel") {
ElMessage.error(e?.message || "删除失败");
}
}
};
// 分页变化
const handlePageChange = (val: number) => {
page.value = val;
fetchData();
};
onMounted(() => {
fetchData();
});
</script>
<style lang="less" scoped>