index.tsx 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import React from 'react'
  2. import { createModalHook, ModalStore } from './src'
  3. import ClientDetail from '@/pages/Customer/Client/components/ClientDetail'
  4. import CompanyDetail from '@/pages/Customer/Company/components/CompanyDetail'
  5. import ConnectCompany from '@/pages/Customer/Company/components/ConnectCompany'
  6. import AddClient from '@/pages/Customer/Client/components/AddClient'
  7. import AddCompany from '@/pages/Customer/Company/components/AddCompany'
  8. import EmployeeDetail from '@/pages/Hr/Employee/components/EmployeeDetail'
  9. import StaffModal from '@/pages/Hr/Employee/components/StaffModal'
  10. import AddBusiness from '@/pages/Customer/Business/components/AddBusiness'
  11. import BusinessDetail from '@/pages/Customer/Business/components/BusinessDetail'
  12. import ReminderList from '@/pages/Workbench/Dashboard/components/ReminderList'
  13. import RatioPanels from '@/pages/Workbench/Dashboard/components/RatioPanels'
  14. import SoftwareDetail from '@/pages/Product/Lock/LockStore/components/SoftwareDetail'
  15. import AddRecord from '@/pages/Customer/Client/components/ClientDetail/AddRecord'
  16. import OpreateLock from '@/pages/Product/Lock/LockStore/components/LockDetail/OpreateLock'
  17. import LockDetail from '@/pages/Product/Lock/LockStore/components/LockDetail'
  18. import ConnectClient from '@/pages/Customer/Client/components/ConnectClient'
  19. import ReceiveLock from '@/pages/Product/Lock/LockStore/components/ReceiveLock'
  20. import CustomPerm from '@/pages/Customer/Company/components/CustomPerm'
  21. import MessageDetail from '@/pages/Hr/Notification/components/MessageDetail'
  22. import CloudDetail from '@/pages/Product/Cloud/components/Detail'
  23. import PersonalDetail from '@/pages/Product/Road/Personal/components/Detail'
  24. import EnterpriseDetail from '@/pages/Product/Road/Enterprise/components/Detail'
  25. import AddEnterprise from '@/pages/Product/Road/Enterprise/components/AddEnterprise'
  26. const modalMap = {
  27. M_CLIENT_ADD: AddClient, // 添加客户弹窗
  28. M_COMPANY_ADD: AddCompany, // 添加单位弹窗
  29. M_BUSINESS_ADD: AddBusiness, // 添加商机弹窗
  30. D_CLIENT_DETAIL: ClientDetail, // 客户详情抽屉
  31. D_COMPANY_DETAIL: CompanyDetail, // 单位详情抽屉
  32. D_BUSINESS_DETAIL: BusinessDetail, // 商机详情抽屉
  33. M_CONNECT_CLIENT: ConnectClient, // 关联客户弹窗
  34. M_CONNECT_COMPANY: ConnectCompany, // 关联单位弹窗
  35. D_EMPLOYEE_DETAIL: EmployeeDetail, // 部门与员工详情抽屉
  36. M_CONNECT_STAFF: StaffModal, // 关联员工弹窗
  37. M_REMINDER_LIST: ReminderList, // 仪表盘提醒列表弹窗
  38. M_RATIO_PANELS: RatioPanels, // 仪表盘环比数据弹窗
  39. D_LOCK_DETAIL: LockDetail, // 锁库详情抽屉
  40. D_SOFTWARE_DETAIL: SoftwareDetail, // 软件锁详情抽屉
  41. M_RECORD_ADD: AddRecord, // 添加服务记录
  42. M_OPREATE_LOCK: OpreateLock, // 操作锁库弹窗
  43. M_RECEIVE_LOCK: ReceiveLock, // 接受锁库弹窗
  44. M_CUSTOM_PERM: CustomPerm, // 自定义数据权限弹窗
  45. D_NOTICE_DETAIL: MessageDetail, // 通知详情
  46. D_CLOUD_DETAIL: CloudDetail, // 云版详情
  47. D_PERSONAL_DETAIL: PersonalDetail, // 大司空2.0个人版详情
  48. D_ENTERPRISE_DETAIL: EnterpriseDetail, // 大司空2.0企业版详情
  49. M_ENTERPRISE_ADD: AddEnterprise // 大司空2.0企业版添加企业
  50. }
  51. export const useModal = createModalHook<typeof modalMap>()
  52. export default ({ children }: { children: React.ReactChildren }) => (
  53. <ModalStore modalMap={modalMap} destroyOnClose="afterClose">
  54. {children}
  55. </ModalStore>
  56. )