feat: CRM/backlog 提醒数量

This commit is contained in:
dhb52 2024-02-18 00:04:43 +08:00
parent 42b8df4767
commit e067d5073d
2 changed files with 66 additions and 27 deletions

View File

@ -1,17 +1,41 @@
import request from '@/config/axios'
import { type CustomerVO } from '../customer'
import { type ClueVO } from '../clue'
// 查询客户列表
// TODO @芋艿:看看是不是后续融合到 getCustomerPage 里;
export const getTodayCustomerPage = async (params) => {
return await request.get({ url: `/crm/backlog/today-customer-page`, params })
// 1. 获得今日需联系客户数量
export const getTodayCustomerCount = async () => {
return await request.get({ url: '/crm/customer/today-customer-count' })
}
// 查询线索列表
export const getFollowLeadsPage = async (params) => {
return await request.get({ url: `/crm/backlog/page`, params })
// 2. 获得分配给我的线索数量
export const getFollowLeadsCount = async () => {
return await request.get({ url: '/crm/clue/follow-leads-count' })
}
export { type CustomerVO, type ClueVO }
// 3. 获得分配给我的客户数量
export const getFollowCustomerCount = async () => {
return await request.get({ url: '/crm/customer/follow-customer-count' })
}
// 4. 获得待进入公海的客户数量
export const getPutInPoolCustomerRemindCount = async () => {
return await request.get({ url: '/crm/customer/put-in-pool-remind-count' })
}
// 5. 获得待审核合同数量
export const getCheckContractCount = async () => {
return await request.get({ url: '/crm/contract/check-contract-count' })
}
// 6. 获得待审核回款数量
export const getCheckReceivablesCount = async () => {
return await request.get({ url: '/crm/receivable/check-receivables-count' })
}
// 7. 获得待回款提醒数量
export const getRemindReceivablePlanCount = async () => {
return await request.get({ url: '/crm/receivable-plan/remind-receivable-plan-count' })
}
// 8. 获得即将到期的合同数量
export const getEndContractCount = async () => {
return await request.get({ url: '/crm/contract/end-contract-count' })
}

View File

@ -29,6 +29,7 @@
</template>
<script lang="ts" setup>
import * as BacklogApi from '@/api/crm/backlog'
import CheckContract from './tables/CheckContract.vue'
import CheckReceivables from './tables/CheckReceivables.vue'
import EndContract from './tables/EndContract.vue'
@ -39,54 +40,56 @@ import RemindReceivables from './tables/RemindReceivables.vue'
import TodayCustomer from './tables/TodayCustomer.vue'
const leftType = ref('todayCustomer')
const todayCustomerCountRef = ref(0)
const followLeadsCountRef = ref(0)
const followCustomerCountRef = ref(0)
const putInPoolCustomerRemindCountRef = ref(0)
const checkContractCountRef = ref(0)
const checkReceivablesCountRef = ref(0)
const remindReceivablesCountRef = ref(0)
const endContractCountRef = ref(0)
const leftSides = ref([
{
name: '今日需联系客户',
infoType: 'todayCustomer',
msgCount: 1,
tips: '下次跟进时间为今日的客户'
msgCount: todayCustomerCountRef
},
{
name: '分配给我的线索',
infoType: 'followLeads',
msgCount: 0,
tips: '转移之后未跟进的线索'
msgCount: followLeadsCountRef
},
{
name: '分配给我的客户',
infoType: 'followCustomer',
msgCount: 0,
tips: '转移、领取、分配之后未跟进的客户,默认显示自己负责的客户'
msgCount: followCustomerCountRef
},
{
name: '待进入公海的客户',
infoType: 'putInPoolRemind',
msgCount: 0,
tips: ''
msgCount: putInPoolCustomerRemindCountRef
},
{
name: '待审核合同',
infoType: 'checkContract',
msgCount: 0,
tips: ''
msgCount: checkContractCountRef
},
{
name: '待审核回款',
infoType: 'checkReceivables',
msgCount: 0,
tips: ''
msgCount: checkReceivablesCountRef
},
{
name: '待回款提醒',
infoType: 'remindReceivables',
msgCount: 4,
tips: ''
msgCount: remindReceivablesCountRef
},
{
name: '即将到期的合同',
infoType: 'endContract',
msgCount: 20,
tips: '根据“合同到期时间”及设置的“提前提醒天数”提醒'
msgCount: endContractCountRef
}
])
@ -96,6 +99,18 @@ const leftSides = ref([
const sideClick = (item) => {
leftType.value = item.infoType
}
/** 加载时读取待办数量 */
onMounted(async () => {
BacklogApi.getTodayCustomerCount().then(count => todayCustomerCountRef.value = count)
BacklogApi.getFollowLeadsCount().then(count => followLeadsCountRef.value = count)
BacklogApi.getFollowCustomerCount().then(count => followCustomerCountRef.value = count)
BacklogApi.getPutInPoolCustomerRemindCount().then(count => putInPoolCustomerRemindCountRef.value = count)
BacklogApi.getCheckContractCount().then(count => checkContractCountRef.value = count)
BacklogApi.getCheckReceivablesCount().then(count => checkReceivablesCountRef.value = count)
BacklogApi.getRemindReceivablePlanCount().then(count => remindReceivablesCountRef.value = count)
BacklogApi.getEndContractCount().then(count => endContractCountRef.value = count)
})
</script>
<style lang="scss" scoped>