|
|
@ -3,7 +3,7 @@ import editForm from "../form.vue";
|
|
|
|
// import { handleTree } from "@/utils/tree";
|
|
|
|
// import { handleTree } from "@/utils/tree";
|
|
|
|
import { message } from "@/utils/message";
|
|
|
|
import { message } from "@/utils/message";
|
|
|
|
import { getDeptList, addDept, updateDept, deleteDept } from "@/api/system";
|
|
|
|
import { getDeptList, addDept, updateDept, deleteDept } from "@/api/system";
|
|
|
|
import { usePublicHooks } from "../../hooks";
|
|
|
|
// import { usePublicHooks } from "../../hooks";
|
|
|
|
import { addDialog } from "@/components/ReDialog";
|
|
|
|
import { addDialog } from "@/components/ReDialog";
|
|
|
|
import { reactive, ref, onMounted, h } from "vue";
|
|
|
|
import { reactive, ref, onMounted, h } from "vue";
|
|
|
|
import { type FormItemProps } from "../utils/types";
|
|
|
|
import { type FormItemProps } from "../utils/types";
|
|
|
@ -12,13 +12,13 @@ import { cloneDeep, isAllEmpty } from "@pureadmin/utils";
|
|
|
|
export function useDept() {
|
|
|
|
export function useDept() {
|
|
|
|
const form = reactive({
|
|
|
|
const form = reactive({
|
|
|
|
name: "",
|
|
|
|
name: "",
|
|
|
|
status: null
|
|
|
|
is_active: null
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
const formRef = ref();
|
|
|
|
const formRef = ref();
|
|
|
|
const dataList = ref([]);
|
|
|
|
const dataList = ref([]);
|
|
|
|
const loading = ref(true);
|
|
|
|
const loading = ref(true);
|
|
|
|
const { tagStyle } = usePublicHooks();
|
|
|
|
// const { tagStyle } = usePublicHooks();
|
|
|
|
|
|
|
|
|
|
|
|
const columns: TableColumnList = [
|
|
|
|
const columns: TableColumnList = [
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -32,28 +32,28 @@ export function useDept() {
|
|
|
|
// prop: "sort",
|
|
|
|
// prop: "sort",
|
|
|
|
// minWidth: 70
|
|
|
|
// minWidth: 70
|
|
|
|
// },
|
|
|
|
// },
|
|
|
|
{
|
|
|
|
// {
|
|
|
|
label: "状态",
|
|
|
|
// label: "状态",
|
|
|
|
prop: "status",
|
|
|
|
// prop: "is_active",
|
|
|
|
minWidth: 100,
|
|
|
|
// minWidth: 100,
|
|
|
|
cellRenderer: ({ row, props }) => (
|
|
|
|
// cellRenderer: ({ row, props }) => (
|
|
|
|
<el-tag size={props.size} style={tagStyle.value(row.status)}>
|
|
|
|
// <el-tag size={props.size} style={tagStyle.value(row.is_active ? 1 : 0)}>
|
|
|
|
{row.status === 1 ? "启用" : "停用"}
|
|
|
|
// {row.is_active ? "启用" : "停用"}
|
|
|
|
</el-tag>
|
|
|
|
// </el-tag>
|
|
|
|
)
|
|
|
|
// )
|
|
|
|
},
|
|
|
|
// },
|
|
|
|
{
|
|
|
|
{
|
|
|
|
label: "创建时间",
|
|
|
|
label: "创建时间",
|
|
|
|
minWidth: 200,
|
|
|
|
minWidth: 200,
|
|
|
|
prop: "createTime",
|
|
|
|
prop: "insert_time",
|
|
|
|
formatter: ({ createTime }) =>
|
|
|
|
formatter: ({ insert_time }) =>
|
|
|
|
dayjs(createTime).format("YYYY-MM-DD HH:mm:ss")
|
|
|
|
dayjs(insert_time).format("YYYY-MM-DD HH:mm:ss")
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: "备注",
|
|
|
|
|
|
|
|
prop: "remark",
|
|
|
|
|
|
|
|
minWidth: 320
|
|
|
|
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
// {
|
|
|
|
|
|
|
|
// label: "备注",
|
|
|
|
|
|
|
|
// prop: "remark",
|
|
|
|
|
|
|
|
// minWidth: 320
|
|
|
|
|
|
|
|
// },
|
|
|
|
{
|
|
|
|
{
|
|
|
|
label: "操作",
|
|
|
|
label: "操作",
|
|
|
|
fixed: "right",
|
|
|
|
fixed: "right",
|
|
|
@ -103,11 +103,15 @@ export function useDept() {
|
|
|
|
// newData = newData.filter(item => item.name.includes(form.name));
|
|
|
|
// newData = newData.filter(item => item.name.includes(form.name));
|
|
|
|
newData = filterNested(newData, item => item.name.includes(form.name));
|
|
|
|
newData = filterNested(newData, item => item.name.includes(form.name));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (!isAllEmpty(form.status)) {
|
|
|
|
// if (!isAllEmpty(form.is_active)) {
|
|
|
|
// 前端搜索状态
|
|
|
|
// // 前端搜索状态
|
|
|
|
// newData = newData.filter(item => item.status === form.status);
|
|
|
|
// // newData = newData.filter(item => item.status === form.status);
|
|
|
|
newData = filterNested(newData, item => item.status === form.status);
|
|
|
|
// // newData = filterNested(
|
|
|
|
}
|
|
|
|
// // newData,
|
|
|
|
|
|
|
|
// // item => item.is_active === form.is_active
|
|
|
|
|
|
|
|
// // );
|
|
|
|
|
|
|
|
// newData = newData.filter(item => item.is_active === form.is_active);
|
|
|
|
|
|
|
|
// }
|
|
|
|
// dataList.value = handleTree(newData); // 处理成树结构
|
|
|
|
// dataList.value = handleTree(newData); // 处理成树结构
|
|
|
|
dataList.value = newData; // 处理成树结构
|
|
|
|
dataList.value = newData; // 处理成树结构
|
|
|
|
setTimeout(() => {
|
|
|
|
setTimeout(() => {
|
|
|
@ -133,7 +137,7 @@ export function useDept() {
|
|
|
|
props: {
|
|
|
|
props: {
|
|
|
|
formInline: {
|
|
|
|
formInline: {
|
|
|
|
higherDeptOptions: formatHigherDeptOptions(cloneDeep(dataList.value)),
|
|
|
|
higherDeptOptions: formatHigherDeptOptions(cloneDeep(dataList.value)),
|
|
|
|
parentId: row?.id ?? "",
|
|
|
|
parent_id: row?.parent_id ?? "",
|
|
|
|
name: row?.name ?? "",
|
|
|
|
name: row?.name ?? "",
|
|
|
|
principal: row?.principal ?? "",
|
|
|
|
principal: row?.principal ?? "",
|
|
|
|
phone: row?.phone ?? "",
|
|
|
|
phone: row?.phone ?? "",
|
|
|
@ -141,7 +145,8 @@ export function useDept() {
|
|
|
|
sort: row?.sort ?? 0,
|
|
|
|
sort: row?.sort ?? 0,
|
|
|
|
status: row?.status ?? 1,
|
|
|
|
status: row?.status ?? 1,
|
|
|
|
remark: row?.remark ?? "",
|
|
|
|
remark: row?.remark ?? "",
|
|
|
|
id: row?.id ?? ""
|
|
|
|
id: row?.id ?? "",
|
|
|
|
|
|
|
|
is_active: row?.is_active ?? true
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
},
|
|
|
|
width: "40%",
|
|
|
|
width: "40%",
|
|
|
@ -160,8 +165,9 @@ export function useDept() {
|
|
|
|
onSearch(); // 刷新表格数据
|
|
|
|
onSearch(); // 刷新表格数据
|
|
|
|
}
|
|
|
|
}
|
|
|
|
FormRef.validate(valid => {
|
|
|
|
FormRef.validate(valid => {
|
|
|
|
|
|
|
|
console.log("curData", curData);
|
|
|
|
|
|
|
|
|
|
|
|
if (valid) {
|
|
|
|
if (valid) {
|
|
|
|
console.log("curData", curData);
|
|
|
|
|
|
|
|
// 表单规则校验通过
|
|
|
|
// 表单规则校验通过
|
|
|
|
if (title === "新增") {
|
|
|
|
if (title === "新增") {
|
|
|
|
// 实际开发先调用新增接口,再进行下面操作
|
|
|
|
// 实际开发先调用新增接口,再进行下面操作
|
|
|
@ -183,7 +189,8 @@ export function useDept() {
|
|
|
|
// deptList.data.push(addItem);
|
|
|
|
// deptList.data.push(addItem);
|
|
|
|
const params = {
|
|
|
|
const params = {
|
|
|
|
department_name: curData.name,
|
|
|
|
department_name: curData.name,
|
|
|
|
department_id: curData.parentId
|
|
|
|
department_id: curData.parent_id,
|
|
|
|
|
|
|
|
is_active: curData.is_active
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
addDept(params).then(res => {
|
|
|
|
addDept(params).then(res => {
|
|
|
@ -198,7 +205,9 @@ export function useDept() {
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
const params = {
|
|
|
|
const params = {
|
|
|
|
name: curData.name,
|
|
|
|
name: curData.name,
|
|
|
|
id: curData.id
|
|
|
|
id: curData.id,
|
|
|
|
|
|
|
|
department_id: curData.parent_id ? curData.parent_id : null,
|
|
|
|
|
|
|
|
is_active: curData.is_active
|
|
|
|
};
|
|
|
|
};
|
|
|
|
updateDept(params)
|
|
|
|
updateDept(params)
|
|
|
|
.then(res => {
|
|
|
|
.then(res => {
|
|
|
|