index.ts 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import request from '@/config/axios'
  2. import { ProductExpandVO } from '@/api/crm/product'
  3. import { TransferReqVO } from '@/api/crm/customer'
  4. export interface ContractVO {
  5. id: number
  6. name: string
  7. customerId: number
  8. businessId: number
  9. businessName: string
  10. processInstanceId: number
  11. orderDate: Date
  12. ownerUserId: number
  13. no: string
  14. startTime: Date
  15. endTime: Date
  16. price: number
  17. discountPercent: number
  18. productPrice: number
  19. contactId: number
  20. signUserId: number
  21. signUserName: string
  22. contactLastTime: Date
  23. auditStatus: number
  24. remark: string
  25. productItems: ProductExpandVO[]
  26. creatorName: string
  27. updateTime?: Date
  28. createTime?: Date
  29. customerName: string
  30. contactName: string
  31. ownerUserName: string
  32. }
  33. // 查询 CRM 合同列表
  34. export const getContractPage = async (params) => {
  35. return await request.get({ url: `/crm/contract/page`, params })
  36. }
  37. // 查询 CRM 联系人列表,基于指定客户
  38. export const getContractPageByCustomer = async (params: any) => {
  39. return await request.get({ url: `/crm/contract/page-by-customer`, params })
  40. }
  41. // 查询 CRM 合同详情
  42. export const getContract = async (id: number) => {
  43. return await request.get({ url: `/crm/contract/get?id=` + id })
  44. }
  45. // 新增 CRM 合同
  46. export const createContract = async (data: ContractVO) => {
  47. return await request.post({ url: `/crm/contract/create`, data })
  48. }
  49. // 修改 CRM 合同
  50. export const updateContract = async (data: ContractVO) => {
  51. return await request.put({ url: `/crm/contract/update`, data })
  52. }
  53. // 删除 CRM 合同
  54. export const deleteContract = async (id: number) => {
  55. return await request.delete({ url: `/crm/contract/delete?id=` + id })
  56. }
  57. // 导出 CRM 合同 Excel
  58. export const exportContract = async (params) => {
  59. return await request.download({ url: `/crm/contract/export-excel`, params })
  60. }
  61. // 提交审核
  62. export const handleApprove = async (id: number) => {
  63. return await request.put({ url: `/crm/contract/approve?id=${id}` })
  64. }
  65. // 合同转移
  66. export const transferContract = async (data: TransferReqVO) => {
  67. return await request.put({ url: '/crm/contract/transfer', data })
  68. }