diff --git a/apps/web-ele/src/views/crm/backlog/data.ts b/apps/web-ele/src/views/crm/backlog/data.ts new file mode 100644 index 000000000..d0b66d13e --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/data.ts @@ -0,0 +1,102 @@ +import type { Ref } from 'vue'; + +export interface LeftSideItem { + name: string; + menu: string; + count: Ref; +} + +/** 跟进状态 */ +export const FOLLOWUP_STATUS = [ + { label: '待跟进', value: false }, + { label: '已跟进', value: true }, +]; + +/** 归属范围 */ +export const SCENE_TYPES = [ + { label: '我负责的', value: 1 }, + { label: '我参与的', value: 2 }, + { label: '下属负责的', value: 3 }, +]; + +/** 联系状态 */ +export const CONTACT_STATUS = [ + { label: '今日需联系', value: 1 }, + { label: '已逾期', value: 2 }, + { label: '已联系', value: 3 }, +]; + +/** 审批状态 */ +export const AUDIT_STATUS = [ + { label: '待审批', value: 10 }, + { label: '审核通过', value: 20 }, + { label: '审核不通过', value: 30 }, +]; + +/** 回款提醒类型 */ +export const RECEIVABLE_REMIND_TYPE = [ + { label: '待回款', value: 1 }, + { label: '已逾期', value: 2 }, + { label: '已回款', value: 3 }, +]; + +/** 合同过期状态 */ +export const CONTRACT_EXPIRY_TYPE = [ + { label: '即将过期', value: 1 }, + { label: '已过期', value: 2 }, +]; + +/** 左侧菜单 */ +export const useLeftSides = ( + customerTodayContactCount: Ref, + clueFollowCount: Ref, + customerFollowCount: Ref, + customerPutPoolRemindCount: Ref, + contractAuditCount: Ref, + contractRemindCount: Ref, + receivableAuditCount: Ref, + receivablePlanRemindCount: Ref, +): LeftSideItem[] => { + return [ + { + name: '今日需联系客户', + menu: 'customerTodayContact', + count: customerTodayContactCount, + }, + { + name: '分配给我的线索', + menu: 'clueFollow', + count: clueFollowCount, + }, + { + name: '分配给我的客户', + menu: 'customerFollow', + count: customerFollowCount, + }, + { + name: '待进入公海的客户', + menu: 'customerPutPoolRemind', + count: customerPutPoolRemindCount, + }, + { + name: '待审核合同', + menu: 'contractAudit', + count: contractAuditCount, + }, + { + name: '待审核回款', + menu: 'receivableAudit', + count: receivableAuditCount, + }, + { + name: '待回款提醒', + menu: 'receivablePlanRemind', + count: receivablePlanRemindCount, + }, + { + name: '即将到期的合同', + menu: 'contractRemind', + count: contractRemindCount, + }, + ]; +}; diff --git a/apps/web-ele/src/views/crm/backlog/index.vue b/apps/web-ele/src/views/crm/backlog/index.vue new file mode 100644 index 000000000..7e85c2d5d --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/index.vue @@ -0,0 +1,115 @@ + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/clue-follow-list.vue b/apps/web-ele/src/views/crm/backlog/modules/clue-follow-list.vue new file mode 100644 index 000000000..3a4841c1e --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/clue-follow-list.vue @@ -0,0 +1,79 @@ + + + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/contract-audit-list.vue b/apps/web-ele/src/views/crm/backlog/modules/contract-audit-list.vue new file mode 100644 index 000000000..5e4631c96 --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/contract-audit-list.vue @@ -0,0 +1,124 @@ + + + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/contract-remind-list.vue b/apps/web-ele/src/views/crm/backlog/modules/contract-remind-list.vue new file mode 100644 index 000000000..e35662ce9 --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/contract-remind-list.vue @@ -0,0 +1,125 @@ + + + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/customer-follow-list.vue b/apps/web-ele/src/views/crm/backlog/modules/customer-follow-list.vue new file mode 100644 index 000000000..292d3106d --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/customer-follow-list.vue @@ -0,0 +1,79 @@ + + + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/customer-put-pool-remind-list.vue b/apps/web-ele/src/views/crm/backlog/modules/customer-put-pool-remind-list.vue new file mode 100644 index 000000000..42fc3881e --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/customer-put-pool-remind-list.vue @@ -0,0 +1,79 @@ + + + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/customer-today-contact-list.vue b/apps/web-ele/src/views/crm/backlog/modules/customer-today-contact-list.vue new file mode 100644 index 000000000..9ed859690 --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/customer-today-contact-list.vue @@ -0,0 +1,89 @@ + + + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/receivable-audit-list.vue b/apps/web-ele/src/views/crm/backlog/modules/receivable-audit-list.vue new file mode 100644 index 000000000..2aeb8910f --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/receivable-audit-list.vue @@ -0,0 +1,106 @@ + + + + diff --git a/apps/web-ele/src/views/crm/backlog/modules/receivable-plan-remind-list.vue b/apps/web-ele/src/views/crm/backlog/modules/receivable-plan-remind-list.vue new file mode 100644 index 000000000..37f76b458 --- /dev/null +++ b/apps/web-ele/src/views/crm/backlog/modules/receivable-plan-remind-list.vue @@ -0,0 +1,104 @@ + + + +