|
@@ -178,14 +178,23 @@
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
|
<script setup lang="ts">
|
|
|
|
|
+ import { useRouter } from 'vue-router';
|
|
|
|
|
+ import { onMounted, reactive, ref } from 'vue';
|
|
|
|
|
+ import { ElMessage } from 'element-plus';
|
|
|
import { Plus } from '@element-plus/icons-vue';
|
|
import { Plus } from '@element-plus/icons-vue';
|
|
|
import Search from '@/views/disaster/components/Search.vue';
|
|
import Search from '@/views/disaster/components/Search.vue';
|
|
|
import CollapseItem from './src/components/CollapseItem.vue';
|
|
import CollapseItem from './src/components/CollapseItem.vue';
|
|
|
|
|
+ import ActionButton from '@/components/ActionButton.vue';
|
|
|
import BasicTable from '@/components/BasicTable.vue';
|
|
import BasicTable from '@/components/BasicTable.vue';
|
|
|
- import { getAllDepartments } from '@/api/auth/dept';
|
|
|
|
|
- import { onMounted, reactive, ref } from 'vue';
|
|
|
|
|
- import { formatDeptTree } from '@/views/disaster/utils/formatDeptTree';
|
|
|
|
|
- import type { DeptTreeItem } from '@/types/dept/type';
|
|
|
|
|
|
|
+ import useTableConfig from '@/hooks/useTableConfigHook';
|
|
|
|
|
+ import { useDeptInfoHook, useUserInfoHook } from '../hooks';
|
|
|
|
|
+ import { getTaskStage } from './src/util';
|
|
|
|
|
+ import { openMessageBox } from '@/utils/element-plus/messageBox';
|
|
|
|
|
+ import type {
|
|
|
|
|
+ disasterReportTaskInfoListResponse,
|
|
|
|
|
+ DisposalManagementTableResponse,
|
|
|
|
|
+ DisposalManagementCollapseListResponse,
|
|
|
|
|
+ } from '@/types/disaster-control';
|
|
|
import {
|
|
import {
|
|
|
getDisasterControlCollapseData,
|
|
getDisasterControlCollapseData,
|
|
|
getDisasterControlTableData,
|
|
getDisasterControlTableData,
|
|
@@ -195,35 +204,22 @@
|
|
|
deleteDisasterReportTask,
|
|
deleteDisasterReportTask,
|
|
|
editDisasterReportTask,
|
|
editDisasterReportTask,
|
|
|
} from '@/api/disaster-control';
|
|
} from '@/api/disaster-control';
|
|
|
- import type { disasterReportTaskInfoListResponse } from '@/types/disaster-control';
|
|
|
|
|
- import { DEFAULT_PAGE_SIZE, DISASTER_CONTROL_PAGE_SIZE_CONFIG, TASK_STAGE } from './src/constant';
|
|
|
|
|
- import type {
|
|
|
|
|
- DisposalManagementCollapseListResponse,
|
|
|
|
|
- DisposalManagementTableResponse,
|
|
|
|
|
- } from '@/types/disaster-control';
|
|
|
|
|
- import useTableConfig from '@/hooks/useTableConfigHook';
|
|
|
|
|
import {
|
|
import {
|
|
|
DISPOSAL_MANAGEMENT_SEARCH_CONFIG,
|
|
DISPOSAL_MANAGEMENT_SEARCH_CONFIG,
|
|
|
DISPOSAL_MANAGEMENT_TABLE_COLUMNS,
|
|
DISPOSAL_MANAGEMENT_TABLE_COLUMNS,
|
|
|
DISPOSAL_MANAGEMENT_TABLE_OPTIONS,
|
|
DISPOSAL_MANAGEMENT_TABLE_OPTIONS,
|
|
|
} from './src/config';
|
|
} from './src/config';
|
|
|
- import { getTaskStage } from './src/util';
|
|
|
|
|
|
|
+ import { DEFAULT_PAGE_SIZE, DISASTER_CONTROL_PAGE_SIZE_CONFIG, TASK_STAGE } from './src/constant';
|
|
|
import {
|
|
import {
|
|
|
ACTIVE_STATUS,
|
|
ACTIVE_STATUS,
|
|
|
ACTIVE_STATUS_COLOR,
|
|
ACTIVE_STATUS_COLOR,
|
|
|
ACTIVE_STATUS_MAP,
|
|
ACTIVE_STATUS_MAP,
|
|
|
DISASTER_PERMISSIONS,
|
|
DISASTER_PERMISSIONS,
|
|
|
} from '@/views/disaster/constant';
|
|
} from '@/views/disaster/constant';
|
|
|
- import ActionButton from '@/components/ActionButton.vue';
|
|
|
|
|
- import { useRouter } from 'vue-router';
|
|
|
|
|
import Empty from 'assets/images/empty@1X.png';
|
|
import Empty from 'assets/images/empty@1X.png';
|
|
|
import ViewDocument from './src/svg/view-document.svg';
|
|
import ViewDocument from './src/svg/view-document.svg';
|
|
|
- import { useUserInfoHook } from '@/views/disaster/hooks/userInfo';
|
|
|
|
|
- import { openMessageBox } from '@/utils/element-plus/messageBox';
|
|
|
|
|
- import { ElMessage } from 'element-plus';
|
|
|
|
|
|
|
|
|
|
const { permissions } = useUserInfoHook();
|
|
const { permissions } = useUserInfoHook();
|
|
|
- const firstLevelDepts = ref<DeptTreeItem[]>([]);
|
|
|
|
|
const searchData = reactive({
|
|
const searchData = reactive({
|
|
|
reportDeptIds: null,
|
|
reportDeptIds: null,
|
|
|
status: null,
|
|
status: null,
|
|
@@ -238,6 +234,7 @@
|
|
|
const collapseList = ref<DisposalManagementCollapseListResponse<DisposalManagementTableResponse>[]>([]);
|
|
const collapseList = ref<DisposalManagementCollapseListResponse<DisposalManagementTableResponse>[]>([]);
|
|
|
const disposalManagementPermissions = ref(false);
|
|
const disposalManagementPermissions = ref(false);
|
|
|
|
|
|
|
|
|
|
+ const { firstLevelDepts, getFirstLevelDepts } = useDeptInfoHook();
|
|
|
const { tableConfig } = useTableConfig(DISPOSAL_MANAGEMENT_TABLE_COLUMNS, DISPOSAL_MANAGEMENT_TABLE_OPTIONS, false);
|
|
const { tableConfig } = useTableConfig(DISPOSAL_MANAGEMENT_TABLE_COLUMNS, DISPOSAL_MANAGEMENT_TABLE_OPTIONS, false);
|
|
|
|
|
|
|
|
const activeId = ref<number | null>(null);
|
|
const activeId = ref<number | null>(null);
|
|
@@ -423,13 +420,12 @@
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
onMounted(async () => {
|
|
onMounted(async () => {
|
|
|
- const result = await getAllDepartments();
|
|
|
|
|
|
|
+ getFirstLevelDepts();
|
|
|
await getDisposalData();
|
|
await getDisposalData();
|
|
|
await getDisposalTableData();
|
|
await getDisposalTableData();
|
|
|
disposalManagementPermissions.value = Boolean(
|
|
disposalManagementPermissions.value = Boolean(
|
|
|
permissions.find((item: { code: string }) => item.code === DISASTER_PERMISSIONS.DISPOSAL_MANAGEMENT),
|
|
permissions.find((item: { code: string }) => item.code === DISASTER_PERMISSIONS.DISPOSAL_MANAGEMENT),
|
|
|
);
|
|
);
|
|
|
- firstLevelDepts.value = formatDeptTree(result);
|
|
|
|
|
});
|
|
});
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|