mirror of
https://github.com/continew-org/continew-admin-ui.git
synced 2025-11-10 14:57:09 +08:00
refactor: 简化命名,例如:UserAddDrawer => AddDrawer
This commit is contained in:
@@ -29,8 +29,6 @@ function calculateFileMd5Optimized(file: File, taskId: string, blockSize: number
|
|||||||
let activeWorkers = 0
|
let activeWorkers = 0
|
||||||
let nextBlockIndex = 0
|
let nextBlockIndex = 0
|
||||||
|
|
||||||
console.log(`[Worker] 使用并发块处理: 最大并发 ${maxConcurrency},总块数: ${blocks}`)
|
|
||||||
|
|
||||||
function processBlock(blockIndex: number): Promise<void> {
|
function processBlock(blockIndex: number): Promise<void> {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
try {
|
try {
|
||||||
@@ -63,9 +61,6 @@ function calculateFileMd5Optimized(file: File, taskId: string, blockSize: number
|
|||||||
} else {
|
} else {
|
||||||
blockHashes[blockIndex] = spark.end()
|
blockHashes[blockIndex] = spark.end()
|
||||||
processedBlocks++
|
processedBlocks++
|
||||||
|
|
||||||
console.log(`[Worker] 块 ${blockIndex + 1}/${blocks} 处理完成`)
|
|
||||||
|
|
||||||
resolve()
|
resolve()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -120,7 +115,6 @@ function calculateFileMd5Optimized(file: File, taskId: string, blockSize: number
|
|||||||
})
|
})
|
||||||
const finalMd5 = finalSpark.end()
|
const finalMd5 = finalSpark.end()
|
||||||
|
|
||||||
console.info(`[Worker] 所有块完成,最终 MD5: ${finalMd5}`)
|
|
||||||
globalThis.postMessage({
|
globalThis.postMessage({
|
||||||
type: 'complete',
|
type: 'complete',
|
||||||
taskId,
|
taskId,
|
||||||
|
|||||||
@@ -79,16 +79,16 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<AppAddModal ref="AppAddModalRef" @save-success="search" />
|
<AddModal ref="AddModalRef" @save-success="search" />
|
||||||
<AppDetailDrawer ref="AppDetailDrawerRef" />
|
<DetailDrawer ref="DetailDrawerRef" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import { Message, Modal } from '@arco-design/web-vue'
|
import { Message, Modal } from '@arco-design/web-vue'
|
||||||
import AppAddModal from './AppAddModal.vue'
|
import AddModal from './AddModal.vue'
|
||||||
import AppDetailDrawer from './AppDetailDrawer.vue'
|
import DetailDrawer from './DetailDrawer.vue'
|
||||||
import {
|
import {
|
||||||
type AppQuery,
|
type AppQuery,
|
||||||
type AppResp,
|
type AppResp,
|
||||||
@@ -200,21 +200,21 @@ const onResetSecret = async (record: AppResp) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const AppAddModalRef = ref<InstanceType<typeof AppAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = () => {
|
const onAdd = () => {
|
||||||
AppAddModalRef.value?.onAdd()
|
AddModalRef.value?.onAdd()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: AppResp) => {
|
const onUpdate = (record: AppResp) => {
|
||||||
AppAddModalRef.value?.onUpdate(record.id)
|
AddModalRef.value?.onUpdate(record.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
const AppDetailDrawerRef = ref<InstanceType<typeof AppDetailDrawer>>()
|
const DetailDrawerRef = ref<InstanceType<typeof DetailDrawer>>()
|
||||||
// 详情
|
// 详情
|
||||||
const onDetail = (record: AppResp) => {
|
const onDetail = (record: AppResp) => {
|
||||||
AppDetailDrawerRef.value?.onOpen(record.id)
|
DetailDrawerRef.value?.onOpen(record.id)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -72,8 +72,8 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<JobAddModal ref="JobAddModalRef" @save-success="reset" />
|
<AddModal ref="AddModalRef" @save-success="reset" />
|
||||||
<JobDetailDrawer ref="JobDetailDrawerRef" />
|
<DetailDrawer ref="DetailDrawerRef" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -81,8 +81,8 @@
|
|||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import { Message } from '@arco-design/web-vue'
|
import { Message } from '@arco-design/web-vue'
|
||||||
import { useRouter } from 'vue-router'
|
import { useRouter } from 'vue-router'
|
||||||
import JobAddModal from './JobAddModal.vue'
|
import AddModal from './AddModal.vue'
|
||||||
import JobDetailDrawer from './JobDetailDrawer.vue'
|
import DetailDrawer from './DetailDrawer.vue'
|
||||||
import { type JobQuery, type JobResp, deleteJob, listGroup, listJob, triggerJob, updateJobStatus } from '@/apis/schedule'
|
import { type JobQuery, type JobResp, deleteJob, listGroup, listJob, triggerJob, updateJobStatus } from '@/apis/schedule'
|
||||||
import { useTable } from '@/hooks'
|
import { useTable } from '@/hooks'
|
||||||
import { useDict } from '@/hooks/app'
|
import { useDict } from '@/hooks/app'
|
||||||
@@ -178,21 +178,21 @@ const onTrigger = (record: JobResp) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const JobAddModalRef = ref<InstanceType<typeof JobAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = () => {
|
const onAdd = () => {
|
||||||
JobAddModalRef.value?.onAdd()
|
AddModalRef.value?.onAdd()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: JobResp) => {
|
const onUpdate = (record: JobResp) => {
|
||||||
JobAddModalRef.value?.onUpdate(record)
|
AddModalRef.value?.onUpdate(record)
|
||||||
}
|
}
|
||||||
|
|
||||||
const JobDetailDrawerRef = ref<InstanceType<typeof JobDetailDrawer>>()
|
const DetailDrawerRef = ref<InstanceType<typeof DetailDrawer>>()
|
||||||
// 详情
|
// 详情
|
||||||
const onDetail = (record: JobResp) => {
|
const onDetail = (record: JobResp) => {
|
||||||
JobDetailDrawerRef.value?.onOpen(record)
|
DetailDrawerRef.value?.onOpen(record)
|
||||||
}
|
}
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
|
|||||||
@@ -53,16 +53,16 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<ClientAddModal ref="ClientAddModalRef" @save-success="search" />
|
<AddModal ref="AddModalRef" @save-success="search" />
|
||||||
<ClientDetailDrawer ref="ClientDetailDrawerRef" />
|
<DetailDrawer ref="DetailDrawerRef" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="tsx">
|
<script setup lang="tsx">
|
||||||
import type { LabelValue } from '@arco-design/web-vue/es/tree-select/interface'
|
import type { LabelValue } from '@arco-design/web-vue/es/tree-select/interface'
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import ClientAddModal from './ClientAddModal.vue'
|
import AddModal from './AddModal.vue'
|
||||||
import ClientDetailDrawer from './ClientDetailDrawer.vue'
|
import DetailDrawer from './DetailDrawer.vue'
|
||||||
import { type ClientQuery, type ClientResp, deleteClient, listClient } from '@/apis/system/client'
|
import { type ClientQuery, type ClientResp, deleteClient, listClient } from '@/apis/system/client'
|
||||||
import { DisEnableStatusList } from '@/constant/common'
|
import { DisEnableStatusList } from '@/constant/common'
|
||||||
import { useTable } from '@/hooks'
|
import { useTable } from '@/hooks'
|
||||||
@@ -186,21 +186,21 @@ const onDelete = (record: ClientResp) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const ClientAddModalRef = ref<InstanceType<typeof ClientAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = () => {
|
const onAdd = () => {
|
||||||
ClientAddModalRef.value?.onAdd()
|
AddModalRef.value?.onAdd()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: ClientResp) => {
|
const onUpdate = (record: ClientResp) => {
|
||||||
ClientAddModalRef.value?.onUpdate(record.id)
|
AddModalRef.value?.onUpdate(record.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
const ClientDetailDrawerRef = ref<InstanceType<typeof ClientDetailDrawer>>()
|
const DetailDrawerRef = ref<InstanceType<typeof DetailDrawer>>()
|
||||||
// 详情
|
// 详情
|
||||||
const onDetail = (record: ClientResp) => {
|
const onDetail = (record: ClientResp) => {
|
||||||
ClientDetailDrawerRef.value?.onOpen(record.id)
|
DetailDrawerRef.value?.onOpen(record.id)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -71,14 +71,14 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<SmsConfigAddModal ref="SmsConfigAddModalRef" @save-success="search" />
|
<AddModal ref="AddModalRef" @save-success="search" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="tsx">
|
<script setup lang="tsx">
|
||||||
import { Message, Modal } from '@arco-design/web-vue'
|
import { Message, Modal } from '@arco-design/web-vue'
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import SmsConfigAddModal from './SmsConfigAddModal.vue'
|
import AddModal from './AddModal.vue'
|
||||||
import {
|
import {
|
||||||
type SmsConfigQuery,
|
type SmsConfigQuery,
|
||||||
type SmsConfigResp,
|
type SmsConfigResp,
|
||||||
@@ -208,15 +208,15 @@ const onSetDefault = (record: SmsConfigResp) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const SmsConfigAddModalRef = ref<InstanceType<typeof SmsConfigAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = () => {
|
const onAdd = () => {
|
||||||
SmsConfigAddModalRef.value?.onAdd()
|
AddModalRef.value?.onAdd()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: SmsConfigResp) => {
|
const onUpdate = (record: SmsConfigResp) => {
|
||||||
SmsConfigAddModalRef.value?.onUpdate(record.id)
|
AddModalRef.value?.onUpdate(record.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
|
|||||||
@@ -14,11 +14,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>
|
||||||
|
|
||||||
<StorageAddModal ref="StorageAddModalRef" @save-success="search" />
|
<AddModal ref="AddModalRef" @save-success="search" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import StorageAddModal from '../StorageAddModal.vue'
|
import AddModal from '../AddModal.vue'
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
type: {
|
type: {
|
||||||
@@ -35,10 +35,10 @@ const search = () => {
|
|||||||
emit('save-success')
|
emit('save-success')
|
||||||
}
|
}
|
||||||
|
|
||||||
const StorageAddModalRef = ref<InstanceType<typeof StorageAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = () => {
|
const onAdd = () => {
|
||||||
StorageAddModalRef.value?.onAdd(props.type)
|
AddModalRef.value?.onAdd(props.type)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -72,12 +72,12 @@
|
|||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>
|
||||||
|
|
||||||
<StorageAddModal ref="StorageAddModalRef" @save-success="search" />
|
<AddModal ref="AddModalRef" @save-success="search" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { Message, Modal } from '@arco-design/web-vue'
|
import { Message, Modal } from '@arco-design/web-vue'
|
||||||
import StorageAddModal from '../StorageAddModal.vue'
|
import AddModal from '../AddModal.vue'
|
||||||
import has from '@/utils/has'
|
import has from '@/utils/has'
|
||||||
import { type StorageResp, deleteStorage, setDefaultStorage, updateStorageStatus } from '@/apis/system'
|
import { type StorageResp, deleteStorage, setDefaultStorage, updateStorageStatus } from '@/apis/system'
|
||||||
import { useDict } from '@/hooks/app'
|
import { useDict } from '@/hooks/app'
|
||||||
@@ -182,11 +182,11 @@ const onDelete = (record: StorageResp) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const StorageAddModalRef = ref<InstanceType<typeof StorageAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
|
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: StorageResp) => {
|
const onUpdate = (record: StorageResp) => {
|
||||||
StorageAddModalRef.value?.onUpdate(record.id)
|
AddModalRef.value?.onUpdate(record.id)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -87,7 +87,7 @@
|
|||||||
</a-dropdown>
|
</a-dropdown>
|
||||||
</a-card>
|
</a-card>
|
||||||
</div>
|
</div>
|
||||||
<DeptAddModal ref="DeptAddModalRef" :depts="dataList" @save-success="search" />
|
<AddModal ref="AddModalRef" :depts="dataList" @save-success="search" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -95,7 +95,7 @@
|
|||||||
import 'vue3-tree-org/lib/vue3-tree-org.css'
|
import 'vue3-tree-org/lib/vue3-tree-org.css'
|
||||||
import { Vue3TreeOrg } from 'vue3-tree-org'
|
import { Vue3TreeOrg } from 'vue3-tree-org'
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import DeptAddModal from './DeptAddModal.vue'
|
import AddModal from './AddModal.vue'
|
||||||
import { type DeptQuery, type DeptResp, deleteDept, exportDept, listDept } from '@/apis/system/dept'
|
import { type DeptQuery, type DeptResp, deleteDept, exportDept, listDept } from '@/apis/system/dept'
|
||||||
import type GiTable from '@/components/GiTable/index.vue'
|
import type GiTable from '@/components/GiTable/index.vue'
|
||||||
import { useDownload, useTable } from '@/hooks'
|
import { useDownload, useTable } from '@/hooks'
|
||||||
@@ -196,17 +196,17 @@ const onExport = () => {
|
|||||||
useDownload(() => exportDept(queryForm))
|
useDownload(() => exportDept(queryForm))
|
||||||
}
|
}
|
||||||
|
|
||||||
const DeptAddModalRef = ref<InstanceType<typeof DeptAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = (parentId?: string) => {
|
const onAdd = (parentId?: string) => {
|
||||||
DeptAddModalRef.value?.onAdd(parentId)
|
AddModalRef.value?.onAdd(parentId)
|
||||||
}
|
}
|
||||||
const handleAdd = (record: DeptResp) => {
|
const handleAdd = (record: DeptResp) => {
|
||||||
onAdd(record.id)
|
onAdd(record.id)
|
||||||
}
|
}
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: DeptResp) => {
|
const onUpdate = (record: DeptResp) => {
|
||||||
DeptAddModalRef.value?.onUpdate(record.id)
|
AddModalRef.value?.onUpdate(record.id)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -90,14 +90,14 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<MenuAddModal ref="MenuAddModalRef" :menus="dataList" @save-success="search" />
|
<AddModal ref="AddModalRef" :menus="dataList" @save-success="search" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import { Message, Modal } from '@arco-design/web-vue'
|
import { Message, Modal } from '@arco-design/web-vue'
|
||||||
import MenuAddModal from './MenuAddModal.vue'
|
import AddModal from './AddModal.vue'
|
||||||
import { type MenuResp, clearMenuCache, deleteMenu, listMenu } from '@/apis/system/menu'
|
import { type MenuResp, clearMenuCache, deleteMenu, listMenu } from '@/apis/system/menu'
|
||||||
import type GiTable from '@/components/GiTable/index.vue'
|
import type GiTable from '@/components/GiTable/index.vue'
|
||||||
import { useTable } from '@/hooks'
|
import { useTable } from '@/hooks'
|
||||||
@@ -209,15 +209,15 @@ const onExpanded = () => {
|
|||||||
tableRef.value?.tableRef?.expandAll(isExpanded.value)
|
tableRef.value?.tableRef?.expandAll(isExpanded.value)
|
||||||
}
|
}
|
||||||
|
|
||||||
const MenuAddModalRef = ref<InstanceType<typeof MenuAddModal>>()
|
const AddModalRef = ref<InstanceType<typeof AddModal>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = (parentId?: string) => {
|
const onAdd = (parentId?: string) => {
|
||||||
MenuAddModalRef.value?.onAdd(parentId)
|
AddModalRef.value?.onAdd(parentId)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: MenuResp) => {
|
const onUpdate = (record: MenuResp) => {
|
||||||
MenuAddModalRef.value?.onUpdate(record.id)
|
AddModalRef.value?.onUpdate(record.id)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -72,13 +72,13 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<NoticeDetailDrawer ref="NoticeDetailDrawerRef" />
|
<DetailDrawer ref="DetailDrawerRef" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import NoticeDetailDrawer from './NoticeDetailDrawer.vue'
|
import DetailDrawer from './DetailDrawer.vue'
|
||||||
import { type NoticeQuery, type NoticeResp, deleteNotice, listNotice } from '@/apis/system'
|
import { type NoticeQuery, type NoticeResp, deleteNotice, listNotice } from '@/apis/system'
|
||||||
import { useTable } from '@/hooks'
|
import { useTable } from '@/hooks'
|
||||||
import { useDict } from '@/hooks/app'
|
import { useDict } from '@/hooks/app'
|
||||||
@@ -153,10 +153,10 @@ const onUpdate = (record: NoticeResp) => {
|
|||||||
router.push({ path: '/system/notice/add', query: { id: record.id, type: 'update' } })
|
router.push({ path: '/system/notice/add', query: { id: record.id, type: 'update' } })
|
||||||
}
|
}
|
||||||
|
|
||||||
const NoticeDetailDrawerRef = ref<InstanceType<typeof NoticeDetailDrawer>>()
|
const DetailDrawerRef = ref<InstanceType<typeof DetailDrawer>>()
|
||||||
// 详情
|
// 详情
|
||||||
const onDetail = (record: NoticeResp) => {
|
const onDetail = (record: NoticeResp) => {
|
||||||
NoticeDetailDrawerRef.value?.onOpen(record.id)
|
DetailDrawerRef.value?.onOpen(record.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查看
|
// 查看
|
||||||
|
|||||||
@@ -57,13 +57,13 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<RoleAssignModal ref="RoleAssignModalRef" @save-success="search" />
|
<AssignModal ref="AssignModalRef" @save-success="search" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang='tsx' setup>
|
<script lang='tsx' setup>
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import { Message, Modal } from '@arco-design/web-vue'
|
import { Message, Modal } from '@arco-design/web-vue'
|
||||||
import RoleAssignModal from '../RoleAssignModal.vue'
|
import AssignModal from '../AssignModal.vue'
|
||||||
import { useResetReactive, useTable } from '@/hooks'
|
import { useResetReactive, useTable } from '@/hooks'
|
||||||
import { type RoleUserQuery, type RoleUserResp, listRoleUser, unassignFromUsers } from '@/apis/system/role'
|
import { type RoleUserQuery, type RoleUserResp, listRoleUser, unassignFromUsers } from '@/apis/system/role'
|
||||||
import { isMobile } from '@/utils'
|
import { isMobile } from '@/utils'
|
||||||
@@ -158,10 +158,10 @@ const onDelete = (record: RoleUserResp) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const RoleAssignModalRef = ref<InstanceType<typeof RoleAssignModal>>()
|
const AssignModalRef = ref<InstanceType<typeof AssignModal>>()
|
||||||
// 分配
|
// 分配
|
||||||
const onAssign = () => {
|
const onAssign = () => {
|
||||||
RoleAssignModalRef.value?.onOpen(props.roleId)
|
AssignModalRef.value?.onOpen(props.roleId)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 监听 roleId 的变化
|
// 监听 roleId 的变化
|
||||||
|
|||||||
@@ -40,7 +40,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<RoleAddDrawer ref="RoleAddDrawerRef" @save-success="getTreeData" />
|
<AddDrawer ref="AddDrawerRef" @save-success="getTreeData" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@
|
|||||||
import { Message, Modal } from '@arco-design/web-vue'
|
import { Message, Modal } from '@arco-design/web-vue'
|
||||||
import type { TreeNodeData } from '@arco-design/web-vue'
|
import type { TreeNodeData } from '@arco-design/web-vue'
|
||||||
import { mapTree } from 'xe-utils'
|
import { mapTree } from 'xe-utils'
|
||||||
import RoleAddDrawer from '../RoleAddDrawer.vue'
|
import AddDrawer from '../AddDrawer.vue'
|
||||||
import RightMenu from './RightMenu.vue'
|
import RightMenu from './RightMenu.vue'
|
||||||
import { type RoleResp, deleteRole, listRole } from '@/apis/system/role'
|
import { type RoleResp, deleteRole, listRole } from '@/apis/system/role'
|
||||||
import has from '@/utils/has'
|
import has from '@/utils/has'
|
||||||
@@ -112,16 +112,16 @@ const treeData = computed(() => {
|
|||||||
return search(searchKey.value.toLowerCase())
|
return search(searchKey.value.toLowerCase())
|
||||||
})
|
})
|
||||||
|
|
||||||
const RoleAddDrawerRef = ref<InstanceType<typeof RoleAddDrawer>>()
|
const AddDrawerRef = ref<InstanceType<typeof AddDrawer>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = () => {
|
const onAdd = () => {
|
||||||
RoleAddDrawerRef.value?.onAdd()
|
AddDrawerRef.value?.onAdd()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 点击菜单项
|
// 点击菜单项
|
||||||
const onMenuItemClick = (mode: string, node: RoleResp) => {
|
const onMenuItemClick = (mode: string, node: RoleResp) => {
|
||||||
if (mode === 'update') {
|
if (mode === 'update') {
|
||||||
RoleAddDrawerRef.value?.onUpdate(node.id)
|
AddDrawerRef.value?.onUpdate(node.id)
|
||||||
} else if (mode === 'delete') {
|
} else if (mode === 'delete') {
|
||||||
Modal.warning({
|
Modal.warning({
|
||||||
title: '提示',
|
title: '提示',
|
||||||
|
|||||||
@@ -77,22 +77,22 @@
|
|||||||
</template>
|
</template>
|
||||||
</GiTable>
|
</GiTable>
|
||||||
|
|
||||||
<UserAddDrawer ref="UserAddDrawerRef" @save-success="search" />
|
<AddDrawer ref="AddDrawerRef" @save-success="search" />
|
||||||
<UserImportDrawer ref="UserImportDrawerRef" @save-success="search" />
|
<ImportDrawer ref="ImportDrawerRef" @save-success="search" />
|
||||||
<UserDetailDrawer ref="UserDetailDrawerRef" />
|
<DetailDrawer ref="DetailDrawerRef" />
|
||||||
<UserResetPwdModal ref="UserResetPwdModalRef" />
|
<PwdResetModal ref="PwdResetModalRef" />
|
||||||
<UserUpdateRoleModal ref="UserUpdateRoleModalRef" @save-success="search" />
|
<RoleUpdateModal ref="RoleUpdateModalRef" @save-success="search" />
|
||||||
</GiPageLayout>
|
</GiPageLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { TableInstance } from '@arco-design/web-vue'
|
import type { TableInstance } from '@arco-design/web-vue'
|
||||||
import DeptTree from './dept/index.vue'
|
import DeptTree from './dept/index.vue'
|
||||||
import UserAddDrawer from './UserAddDrawer.vue'
|
import AddDrawer from './AddDrawer.vue'
|
||||||
import UserImportDrawer from './UserImportDrawer.vue'
|
import ImportDrawer from './ImportDrawer.vue'
|
||||||
import UserDetailDrawer from './UserDetailDrawer.vue'
|
import DetailDrawer from './DetailDrawer.vue'
|
||||||
import UserResetPwdModal from './UserResetPwdModal.vue'
|
import PwdResetModal from './PwdResetModal.vue'
|
||||||
import UserUpdateRoleModal from './UserUpdateRoleModal.vue'
|
import RoleUpdateModal from './RoleUpdateModal.vue'
|
||||||
import { type UserResp, deleteUser, exportUser, listUser } from '@/apis/system/user'
|
import { type UserResp, deleteUser, exportUser, listUser } from '@/apis/system/user'
|
||||||
import { DisEnableStatusList } from '@/constant/common'
|
import { DisEnableStatusList } from '@/constant/common'
|
||||||
import { useDownload, useResetReactive, useTable } from '@/hooks'
|
import { useDownload, useResetReactive, useTable } from '@/hooks'
|
||||||
@@ -212,39 +212,39 @@ const handleSelectDept = (keys: Array<any>) => {
|
|||||||
search()
|
search()
|
||||||
}
|
}
|
||||||
|
|
||||||
const UserImportDrawerRef = ref<InstanceType<typeof UserImportDrawer>>()
|
const ImportDrawerRef = ref<InstanceType<typeof ImportDrawer>>()
|
||||||
// 导入
|
// 导入
|
||||||
const onImport = () => {
|
const onImport = () => {
|
||||||
UserImportDrawerRef.value?.onOpen()
|
ImportDrawerRef.value?.onOpen()
|
||||||
}
|
}
|
||||||
|
|
||||||
const UserAddDrawerRef = ref<InstanceType<typeof UserAddDrawer>>()
|
const AddDrawerRef = ref<InstanceType<typeof AddDrawer>>()
|
||||||
// 新增
|
// 新增
|
||||||
const onAdd = () => {
|
const onAdd = () => {
|
||||||
UserAddDrawerRef.value?.onAdd()
|
AddDrawerRef.value?.onAdd()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改
|
// 修改
|
||||||
const onUpdate = (record: UserResp) => {
|
const onUpdate = (record: UserResp) => {
|
||||||
UserAddDrawerRef.value?.onUpdate(record.id)
|
AddDrawerRef.value?.onUpdate(record.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
const UserDetailDrawerRef = ref<InstanceType<typeof UserDetailDrawer>>()
|
const DetailDrawerRef = ref<InstanceType<typeof DetailDrawer>>()
|
||||||
// 详情
|
// 详情
|
||||||
const onDetail = (record: UserResp) => {
|
const onDetail = (record: UserResp) => {
|
||||||
UserDetailDrawerRef.value?.onOpen(record.id)
|
DetailDrawerRef.value?.onOpen(record.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
const UserResetPwdModalRef = ref<InstanceType<typeof UserResetPwdModal>>()
|
const PwdResetModalRef = ref<InstanceType<typeof PwdResetModal>>()
|
||||||
// 重置密码
|
// 重置密码
|
||||||
const onResetPwd = (record: UserResp) => {
|
const onResetPwd = (record: UserResp) => {
|
||||||
UserResetPwdModalRef.value?.onOpen(record.id)
|
PwdResetModalRef.value?.onOpen(record.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
const UserUpdateRoleModalRef = ref<InstanceType<typeof UserUpdateRoleModal>>()
|
const RoleUpdateModalRef = ref<InstanceType<typeof RoleUpdateModal>>()
|
||||||
// 分配角色
|
// 分配角色
|
||||||
const onUpdateRole = (record: UserResp) => {
|
const onUpdateRole = (record: UserResp) => {
|
||||||
UserUpdateRoleModalRef.value?.onOpen(record.id)
|
RoleUpdateModalRef.value?.onOpen(record.id)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,11 @@
|
|||||||
</template>
|
</template>
|
||||||
</a-upload>
|
</a-upload>
|
||||||
<div class="name">
|
<div class="name">
|
||||||
<span style="margin-right: 10px">{{ userInfo.nickname }}</span>
|
<span style="margin-right: 10px">
|
||||||
|
{{ userInfo.nickname }}
|
||||||
|
<icon-man v-if="userInfo.gender === 1" style="color: #19bbf1" />
|
||||||
|
<icon-woman v-else-if="userInfo.gender === 2" style="color: #fa7fa9" />
|
||||||
|
</span>
|
||||||
<icon-edit :size="16" class="btn" @click="onUpdate" />
|
<icon-edit :size="16" class="btn" @click="onUpdate" />
|
||||||
</div>
|
</div>
|
||||||
<div class="id">
|
<div class="id">
|
||||||
@@ -30,8 +34,6 @@
|
|||||||
<a-descriptions-item :span="4">
|
<a-descriptions-item :span="4">
|
||||||
<template #label> <icon-user /><span style="margin-left: 5px">用户名</span></template>
|
<template #label> <icon-user /><span style="margin-left: 5px">用户名</span></template>
|
||||||
{{ userInfo.username }}
|
{{ userInfo.username }}
|
||||||
<icon-man v-if="userInfo.gender === 1" style="color: #19bbf1" />
|
|
||||||
<icon-woman v-else-if="userInfo.gender === 2" style="color: #fa7fa9" />
|
|
||||||
</a-descriptions-item>
|
</a-descriptions-item>
|
||||||
<a-descriptions-item :span="4">
|
<a-descriptions-item :span="4">
|
||||||
<template #label> <icon-phone /><span style="margin-left: 5px">手机</span></template>
|
<template #label> <icon-phone /><span style="margin-left: 5px">手机</span></template>
|
||||||
|
|||||||
Reference in New Issue
Block a user