提交 4190a3e0 编写于 作者: 水晶土豆

Mon Nov 20 19:31:00 CST 2023 inscode

上级 cd287ae3
...@@ -4,6 +4,7 @@ import contractCategory from './component/contractManagement/contractCategory/co ...@@ -4,6 +4,7 @@ import contractCategory from './component/contractManagement/contractCategory/co
import register from './component/userLogin/login-dialog-button.vue' import register from './component/userLogin/login-dialog-button.vue'
import announcementType from './component/enterpriseAnnouncement/announcementType.vue'; import announcementType from './component/enterpriseAnnouncement/announcementType.vue';
import departments from './component/humanResources/department.vue' import departments from './component/humanResources/department.vue'
import jobTitle from './component/humanResources/jobTitle.vue';
</script> </script>
<template> <template>
...@@ -11,6 +12,7 @@ import departments from './component/humanResources/department.vue' ...@@ -11,6 +12,7 @@ import departments from './component/humanResources/department.vue'
<contract-list></contract-list> <contract-list></contract-list>
<!-- <announcementType></announcementType> <!-- <announcementType></announcementType>
<departments></departments> --> <departments></departments> -->
<job-title></job-title>
<el-row> <el-row>
<el-col>后台管理平台</el-col> <el-col>后台管理平台</el-col>
</el-row> </el-row>
......
...@@ -49,4 +49,6 @@ export function getContractListType(): Promise<AxiosResponse<any>>{ ...@@ -49,4 +49,6 @@ export function getContractListType(): Promise<AxiosResponse<any>>{
export function getHumanResourcesDepartment(): Promise<AxiosResponse<any>>{ export function getHumanResourcesDepartment(): Promise<AxiosResponse<any>>{
return request.get(HUMAN_RESOURCES_DEPARTMENT, {}); return request.get(HUMAN_RESOURCES_DEPARTMENT, {});
} }
\ No newline at end of file
// export function
\ No newline at end of file
<script setup>
</script>
<template>
</template>
<style scoped>
</style>
\ No newline at end of file
<script setup>
import mains from '@/component/main/main.vue'
import headers from '@/component/main/header/header.vue';
import addDownload from '@/component/main/header/add_download/addDownload.vue';
import buttoner from '@/component/main/header/add_download/button.vue';
import downloadItem from '@/component/main/header/add_download/downloadItem.vue';
import ejectDialog from '@/component/main/ejectDialog.vue';
import { ref, provide, onMounted } from 'vue';
import { getHumanResourcesDepartment } from '@/api/api';
import { FlatToTree } from '@/util/toTree';
import { deepClone } from '@/util/deepCode';
import { computed } from '@vue/reactivity';
let tableData = ref([
])
let respData = ref();
const getData = () => {
getHumanResourcesDepartment().then((res)=>{
respData.value = res.data.data.data;
tableData.value = FlatToTree(deepClone(res.data.data.data)).tree;
})
}
onMounted(async () => {
getData();
})
let tableType = ref([
{
name: "id号",
type: "id",
width: "150px",
isSort: false,
align: "center"
},
{
name: '上级ID',
type: "parentID",
width: "80px",
isSort: false,
align: "left"
},
{
name: '部门名称',
type: "departmentName",
width: "auto",
isSort: false,
align: "center"
},
{
name: "排序",
type: "sort",
width: "100px",
isSort: true,
align: "center"
},
{
name: '部门负责人',
type: "departmentHead",
width: "100px",
isSort: false,
align: "center"
},
{
name: '部门电话',
type: "departmentPhone",
width: "200px",
isSort: false,
align: "center"
},
{
name: '状态',
type: 'state',
width: '120px',
}
]
);
let operation = ref({ type: ["details", "edit", "delete"], width: "220px" });
const addDept = ref();
const addSubDept = ref();
const editDept = computed({
get: () => {
return row.value.departmentName;
},
set: (val) => {
row.value.departmentName = val;
getData();
}
})
const cellStyle = ({ row, column, rowIndex, columnIndex }) => {
if (column.property === "state") {
if (row.state == "正常")
return {
color: "#16b777"
};
}
return;
}
const addDialog = ref(false);
const addSubcategoriesDialog = ref(false);
const disabledDialog = ref(false);
const detailsDialog = ref(false);
const editDialog = ref(false);
const deleteDialog = ref(false);
const row = ref();
provide("addSubcategoriesDialog", addSubcategoriesDialog);
provide("disabledDialog", disabledDialog);
provide("detailsDialog", detailsDialog);
provide("editDialog", editDialog);
provide("deleteDialog", deleteDialog);
provide("tableData", tableData);
provide("row", row);
provide("changeState", () => {
console.log(1111);
})
provide("subString", "子部门");
provide("cellSetStyle", ({ row, column, rowIndex, columnIndex }) => {
if (column.property === "state") {
if (row.state == "正常") {
return {
color: "#16b777"
};
} else if (row.state == "禁用") {
return {
color: "#F56C6C"
}
}
}
return;
});
</script>
<template>
<mains :tableType="tableType" :operation="operation">
<headers>
<!-- <headerFmainsorm></headerForm> -->
<addDownload>
<buttoner class="left" @openDialog="addDialog = true">
添加岗位
</buttoner>
<downloadItem></downloadItem>
</addDownload>
</headers>
<ejectDialog v-model:openDialog="addDialog">
<template #header>添加岗位</template>
<el-input v-model="addDept"></el-input>
</ejectDialog>
<ejectDialog v-model:openDialog="addSubcategoriesDialog">
<template #header>详情</template>
<el-input v-model="addSubDept"></el-input>
</ejectDialog>
<ejectDialog v-model:openDialog="editDialog">
<template #header>编辑</template>
<el-input v-model="editDept"></el-input>
</ejectDialog>
<ejectDialog v-model:openDialog="deleteDialog">
<template #header>删除</template>
</ejectDialog>
</mains>
</template>
<style scoped>
.left {
margin-right: auto;
}
</style>
<script setup>
</script>
<template>
</template>
<style scoped>
</style>
\ No newline at end of file
<script setup>
</script>
<template>
</template>
<style scoped>
</style>
\ No newline at end of file
<script setup>
</script>
<template>
</template>
<style scoped>
</style>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册