index.ts 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. import request from '@/config/axios'
  2. export interface PermissionVO {
  3. id?: number // 数据权限编号
  4. userId: number | undefined // 用户编号
  5. bizType: number | undefined // Crm 类型
  6. bizId: number | undefined // Crm 类型数据编号
  7. level: number | undefined // 权限级别
  8. deptName?: string // 部门名称
  9. nickname?: string // 用户昵称
  10. postNames?: string[] // 岗位名称数组
  11. createTime?: Date
  12. }
  13. /**
  14. * CRM 业务类型枚举
  15. *
  16. * @author HUIHUI
  17. */
  18. export enum BizTypeEnum {
  19. CRM_LEADS = 1, // 线索
  20. CRM_CUSTOMER = 2, // 客户
  21. CRM_CONTACTS = 3, // 联系人
  22. CRM_BUSINESS = 5, // 商机
  23. CRM_CONTRACT = 6 // 合同
  24. }
  25. /**
  26. * CRM 数据权限级别枚举
  27. */
  28. export enum PermissionLevelEnum {
  29. OWNER = 1, // 负责人
  30. READ = 2, // 只读
  31. WRITE = 3 // 读写
  32. }
  33. // 获得数据权限列表(查询团队成员列表)
  34. export const getPermissionList = async (params) => {
  35. return await request.get({ url: `/crm/permission/list`, params })
  36. }
  37. // 创建数据权限(新增团队成员)
  38. export const createPermission = async (data: PermissionVO) => {
  39. return await request.post({ url: `/crm/permission/create`, data })
  40. }
  41. // 编辑数据权限(修改团队成员权限级别)
  42. export const updatePermission = async (data) => {
  43. return await request.put({ url: `/crm/permission/update`, data })
  44. }
  45. // 删除数据权限(删除团队成员)
  46. export const deletePermissionBatch = async (params) => {
  47. return await request.delete({ url: '/crm/permission/delete', params })
  48. }
  49. // 删除自己的数据权限(退出团队)
  50. export const deleteSelfPermission = async (id) => {
  51. return await request.delete({ url: '/crm/permission/quit-team?id=' + id })
  52. }
  53. // TODO @puhui999:调整下位置
  54. // 领取公海数据
  55. export const receive = async (data: { bizType: number; bizId: number }) => {
  56. return await request.put({ url: `/crm/permission/receive`, data })
  57. }
  58. // TODO @puhui999:调整下位置
  59. // 数据放入公海
  60. export const putPool = async (data: { bizType: number; bizId: number }) => {
  61. return await request.put({ url: `/crm/permission/put-pool`, data })
  62. }