CRM:统一日志获取接口
This commit is contained in:
parent
26daa3a1ff
commit
5adf75d15b
@ -85,8 +85,3 @@ export const createContactBusinessList = async (data: ContactBusinessReqVO) => {
|
|||||||
export const deleteContactBusinessList = async (data: ContactBusinessReqVO) => {
|
export const deleteContactBusinessList = async (data: ContactBusinessReqVO) => {
|
||||||
return await request.delete({ url: `/crm/contact/delete-business-list`, data })
|
return await request.delete({ url: `/crm/contact/delete-business-list`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询联系人操作日志
|
|
||||||
export const getOperateLogPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/crm/contact/operate-log-page', params })
|
|
||||||
}
|
|
||||||
|
@ -73,11 +73,6 @@ export const getSimpleCustomerList = async () => {
|
|||||||
return await request.get({ url: `/crm/customer/list-all-simple` })
|
return await request.get({ url: `/crm/customer/list-all-simple` })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询客户操作日志
|
|
||||||
export const getOperateLogPage = async (id: number) => {
|
|
||||||
return await request.get({ url: '/crm/customer/operate-log-page?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// ======================= 业务操作 =======================
|
// ======================= 业务操作 =======================
|
||||||
|
|
||||||
export interface TransferReqVO {
|
export interface TransferReqVO {
|
||||||
|
11
src/api/crm/operateLog/index.ts
Normal file
11
src/api/crm/operateLog/index.ts
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
import request from '@/config/axios'
|
||||||
|
|
||||||
|
export interface OperateLogVO extends PageParam {
|
||||||
|
bizType: number
|
||||||
|
bizId: number
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获得操作日志
|
||||||
|
export const getOperateLogPage = async (params: OperateLogVO) => {
|
||||||
|
return await request.get({ url: `/crm/operate-log/page`, params })
|
||||||
|
}
|
@ -22,8 +22,11 @@ export enum BizTypeEnum {
|
|||||||
CRM_LEADS = 1, // 线索
|
CRM_LEADS = 1, // 线索
|
||||||
CRM_CUSTOMER = 2, // 客户
|
CRM_CUSTOMER = 2, // 客户
|
||||||
CRM_CONTACT = 3, // 联系人
|
CRM_CONTACT = 3, // 联系人
|
||||||
CRM_BUSINESS = 5, // 商机
|
CRM_BUSINESS = 4, // 商机
|
||||||
CRM_CONTRACT = 6 // 合同
|
CRM_CONTRACT = 5, // 合同
|
||||||
|
CRM_PRODUCT = 6, // 产品
|
||||||
|
CRM_RECEIVABLE = 7, // 回款
|
||||||
|
CRM_RECEIVABLE_PLAN = 8 // 回款计划
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -41,8 +41,3 @@ export const deleteProduct = async (id: number) => {
|
|||||||
export const exportProduct = async (params) => {
|
export const exportProduct = async (params) => {
|
||||||
return await request.download({ url: `/crm/product/export-excel`, params })
|
return await request.download({ url: `/crm/product/export-excel`, params })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询产品操作日志
|
|
||||||
export const getOperateLogPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/crm/product/operate-log-page', params })
|
|
||||||
}
|
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-col>
|
</el-col>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script lang="ts" setup>
|
||||||
import { useTagsViewStore } from '@/store/modules/tagsView'
|
import { useTagsViewStore } from '@/store/modules/tagsView'
|
||||||
import * as ContactApi from '@/api/crm/contact'
|
import * as ContactApi from '@/api/crm/contact'
|
||||||
import ContactDetailsHeader from '@/views/crm/contact/detail/ContactDetailsHeader.vue'
|
import ContactDetailsHeader from '@/views/crm/contact/detail/ContactDetailsHeader.vue'
|
||||||
@ -30,6 +30,7 @@ import BusinessList from '@/views/crm/business/components/BusinessList.vue' //
|
|||||||
import PermissionList from '@/views/crm/permission/components/PermissionList.vue' // 团队成员列表(权限)
|
import PermissionList from '@/views/crm/permission/components/PermissionList.vue' // 团队成员列表(权限)
|
||||||
import { BizTypeEnum } from '@/api/crm/permission'
|
import { BizTypeEnum } from '@/api/crm/permission'
|
||||||
import { OperateLogV2VO } from '@/api/system/operatelog'
|
import { OperateLogV2VO } from '@/api/system/operatelog'
|
||||||
|
import { getOperateLogPage } from '@/api/crm/operateLog'
|
||||||
|
|
||||||
defineOptions({ name: 'CrmContactDetail' })
|
defineOptions({ name: 'CrmContactDetail' })
|
||||||
|
|
||||||
@ -57,7 +58,8 @@ const getOperateLog = async (contactId: number) => {
|
|||||||
if (!contactId) {
|
if (!contactId) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const data = await ContactApi.getOperateLogPage({
|
const data = await getOperateLogPage({
|
||||||
|
bizType: BizTypeEnum.CRM_CONTACT,
|
||||||
bizId: contactId
|
bizId: contactId
|
||||||
})
|
})
|
||||||
logList.value = data.list
|
logList.value = data.list
|
||||||
|
@ -91,6 +91,7 @@ import CrmTransferForm from '@/views/crm/permission/components/TransferForm.vue'
|
|||||||
import FollowUpList from '@/views/crm/followup/index.vue'
|
import FollowUpList from '@/views/crm/followup/index.vue'
|
||||||
import { BizTypeEnum } from '@/api/crm/permission'
|
import { BizTypeEnum } from '@/api/crm/permission'
|
||||||
import type { OperateLogV2VO } from '@/api/system/operatelog'
|
import type { OperateLogV2VO } from '@/api/system/operatelog'
|
||||||
|
import { getOperateLogPage } from '@/api/crm/operateLog'
|
||||||
|
|
||||||
defineOptions({ name: 'CrmCustomerDetail' })
|
defineOptions({ name: 'CrmCustomerDetail' })
|
||||||
|
|
||||||
@ -164,7 +165,10 @@ const getOperateLog = async () => {
|
|||||||
if (!customerId.value) {
|
if (!customerId.value) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const data = await CustomerApi.getOperateLogPage(customerId.value)
|
const data = await getOperateLogPage({
|
||||||
|
bizType: BizTypeEnum.CRM_CUSTOMER,
|
||||||
|
bizId: customerId.value
|
||||||
|
})
|
||||||
logList.value = data.list
|
logList.value = data.list
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<ProductDetailsHeader :product="product" :loading="loading" @refresh="getProductData(id)" />
|
<ProductDetailsHeader :loading="loading" :product="product" @refresh="getProductData(id)" />
|
||||||
<el-col>
|
<el-col>
|
||||||
<el-tabs>
|
<el-tabs>
|
||||||
<el-tab-pane label="详细资料">
|
<el-tab-pane label="详细资料">
|
||||||
@ -11,16 +11,19 @@
|
|||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-col>
|
</el-col>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script lang="ts" setup>
|
||||||
import { useTagsViewStore } from '@/store/modules/tagsView'
|
import { useTagsViewStore } from '@/store/modules/tagsView'
|
||||||
import { OperateLogV2VO } from '@/api/system/operatelog'
|
import { OperateLogV2VO } from '@/api/system/operatelog'
|
||||||
import * as ProductApi from '@/api/crm/product'
|
import * as ProductApi from '@/api/crm/product'
|
||||||
import ProductDetailsHeader from '@/views/crm/product/detail/ProductDetailsHeader.vue'
|
import ProductDetailsHeader from '@/views/crm/product/detail/ProductDetailsHeader.vue'
|
||||||
import ProductDetailsInfo from '@/views/crm/product/detail/ProductDetailsInfo.vue'
|
import ProductDetailsInfo from '@/views/crm/product/detail/ProductDetailsInfo.vue'
|
||||||
|
import { BizTypeEnum } from '@/api/crm/permission'
|
||||||
|
import { getOperateLogPage } from '@/api/crm/operateLog'
|
||||||
|
|
||||||
defineOptions({ name: 'CrmProductDetail' })
|
defineOptions({ name: 'CrmProductDetail' })
|
||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
|
const message = useMessage()
|
||||||
const id = Number(route.params.id) // 编号
|
const id = Number(route.params.id) // 编号
|
||||||
const loading = ref(true) // 加载中
|
const loading = ref(true) // 加载中
|
||||||
const product = ref<ProductApi.ProductVO>({} as ProductApi.ProductVO) // 详情
|
const product = ref<ProductApi.ProductVO>({} as ProductApi.ProductVO) // 详情
|
||||||
@ -42,7 +45,8 @@ const getOperateLog = async (productId: number) => {
|
|||||||
if (!productId) {
|
if (!productId) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const data = await ProductApi.getOperateLogPage({
|
const data = await getOperateLogPage({
|
||||||
|
bizType: BizTypeEnum.CRM_PRODUCT,
|
||||||
bizId: productId
|
bizId: productId
|
||||||
})
|
})
|
||||||
logList.value = data.list
|
logList.value = data.list
|
||||||
@ -53,7 +57,7 @@ const { delView } = useTagsViewStore() // 视图操作
|
|||||||
const { currentRoute } = useRouter() // 路由
|
const { currentRoute } = useRouter() // 路由
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
if (!id) {
|
if (!id) {
|
||||||
ElMessage.warning('参数错误,产品不能为空!')
|
message.warning('参数错误,产品不能为空!')
|
||||||
delView(unref(currentRoute))
|
delView(unref(currentRoute))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user