代码上传
This commit is contained in:
parent
f647208b6e
commit
28994465f8
|
@ -1,8 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export const getActivityList = async (params) => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/activity/list',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// BPM 流程分类 VO
|
|
||||||
export interface CategoryVO {
|
|
||||||
id: number // 分类编号
|
|
||||||
name: string // 分类名
|
|
||||||
code: string // 分类标志
|
|
||||||
status: number // 分类状态
|
|
||||||
sort: number // 分类排序
|
|
||||||
}
|
|
||||||
|
|
||||||
// BPM 流程分类 API
|
|
||||||
export const CategoryApi = {
|
|
||||||
// 查询流程分类分页
|
|
||||||
getCategoryPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/bpm/category/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询流程分类列表
|
|
||||||
getCategorySimpleList: async () => {
|
|
||||||
return await request.get({ url: `/bpm/category/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询流程分类详情
|
|
||||||
getCategory: async (id: number) => {
|
|
||||||
return await request.get({ url: `/bpm/category/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增流程分类
|
|
||||||
createCategory: async (data: CategoryVO) => {
|
|
||||||
return await request.post({ url: `/bpm/category/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改流程分类
|
|
||||||
updateCategory: async (data: CategoryVO) => {
|
|
||||||
return await request.put({ url: `/bpm/category/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除流程分类
|
|
||||||
deleteCategory: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/bpm/category/delete?id=` + id })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,22 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export const getProcessDefinition = async (id: number, key?: string) => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/process-definition/get',
|
|
||||||
params: { id, key }
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getProcessDefinitionPage = async (params) => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/process-definition/page',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getProcessDefinitionList = async (params) => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/process-definition/list',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,56 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export type FormVO = {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
conf: string
|
|
||||||
fields: string[]
|
|
||||||
status: number
|
|
||||||
remark: string
|
|
||||||
createTime: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建工作流的表单定义
|
|
||||||
export const createForm = async (data: FormVO) => {
|
|
||||||
return await request.post({
|
|
||||||
url: '/bpm/form/create',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新工作流的表单定义
|
|
||||||
export const updateForm = async (data: FormVO) => {
|
|
||||||
return await request.put({
|
|
||||||
url: '/bpm/form/update',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除工作流的表单定义
|
|
||||||
export const deleteForm = async (id: number) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: '/bpm/form/delete?id=' + id
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得工作流的表单定义
|
|
||||||
export const getForm = async (id: number) => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/form/get?id=' + id
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得工作流的表单定义分页
|
|
||||||
export const getFormPage = async (params) => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/form/page',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得动态表单的精简列表
|
|
||||||
export const getFormSimpleList = async () => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/form/simple-list'
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export type LeaveVO = {
|
|
||||||
id: number
|
|
||||||
status: number
|
|
||||||
type: number
|
|
||||||
reason: string
|
|
||||||
processInstanceId: string
|
|
||||||
startTime: string
|
|
||||||
endTime: string
|
|
||||||
createTime: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建请假申请
|
|
||||||
export const createLeave = async (data: LeaveVO) => {
|
|
||||||
return await request.post({ url: '/bpm/oa/leave/create', data: data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得请假申请
|
|
||||||
export const getLeave = async (id: number) => {
|
|
||||||
return await request.get({ url: '/bpm/oa/leave/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得请假申请分页
|
|
||||||
export const getLeavePage = async (params: PageParam) => {
|
|
||||||
return await request.get({ url: '/bpm/oa/leave/page', params })
|
|
||||||
}
|
|
|
@ -1,59 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export type ProcessDefinitionVO = {
|
|
||||||
id: string
|
|
||||||
version: number
|
|
||||||
deploymentTIme: string
|
|
||||||
suspensionState: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export type ModelVO = {
|
|
||||||
id: number
|
|
||||||
formName: string
|
|
||||||
key: string
|
|
||||||
name: string
|
|
||||||
description: string
|
|
||||||
category: string
|
|
||||||
formType: number
|
|
||||||
formId: number
|
|
||||||
formCustomCreatePath: string
|
|
||||||
formCustomViewPath: string
|
|
||||||
processDefinition: ProcessDefinitionVO
|
|
||||||
status: number
|
|
||||||
remark: string
|
|
||||||
createTime: string
|
|
||||||
bpmnXml: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getModelPage = async (params) => {
|
|
||||||
return await request.get({ url: '/bpm/model/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getModel = async (id: number) => {
|
|
||||||
return await request.get({ url: '/bpm/model/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const updateModel = async (data: ModelVO) => {
|
|
||||||
return await request.put({ url: '/bpm/model/update', data: data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 任务状态修改
|
|
||||||
export const updateModelState = async (id: number, state: number) => {
|
|
||||||
const data = {
|
|
||||||
id: id,
|
|
||||||
state: state
|
|
||||||
}
|
|
||||||
return await request.put({ url: '/bpm/model/update-state', data: data })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const createModel = async (data: ModelVO) => {
|
|
||||||
return await request.post({ url: '/bpm/model/create', data: data })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const deleteModel = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/bpm/model/delete?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const deployModel = async (id: number) => {
|
|
||||||
return await request.post({ url: '/bpm/model/deploy?id=' + id })
|
|
||||||
}
|
|
|
@ -1,42 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// BPM 流程表达式 VO
|
|
||||||
export interface ProcessExpressionVO {
|
|
||||||
id: number // 编号
|
|
||||||
name: string // 表达式名字
|
|
||||||
status: number // 表达式状态
|
|
||||||
expression: string // 表达式
|
|
||||||
}
|
|
||||||
|
|
||||||
// BPM 流程表达式 API
|
|
||||||
export const ProcessExpressionApi = {
|
|
||||||
// 查询BPM 流程表达式分页
|
|
||||||
getProcessExpressionPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/bpm/process-expression/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询BPM 流程表达式详情
|
|
||||||
getProcessExpression: async (id: number) => {
|
|
||||||
return await request.get({ url: `/bpm/process-expression/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增BPM 流程表达式
|
|
||||||
createProcessExpression: async (data: ProcessExpressionVO) => {
|
|
||||||
return await request.post({ url: `/bpm/process-expression/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改BPM 流程表达式
|
|
||||||
updateProcessExpression: async (data: ProcessExpressionVO) => {
|
|
||||||
return await request.put({ url: `/bpm/process-expression/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除BPM 流程表达式
|
|
||||||
deleteProcessExpression: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/bpm/process-expression/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出BPM 流程表达式 Excel
|
|
||||||
exportProcessExpression: async (params) => {
|
|
||||||
return await request.download({ url: `/bpm/process-expression/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,68 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export type Task = {
|
|
||||||
id: string
|
|
||||||
name: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export type ProcessInstanceVO = {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
processDefinitionId: string
|
|
||||||
category: string
|
|
||||||
result: number
|
|
||||||
tasks: Task[]
|
|
||||||
fields: string[]
|
|
||||||
status: number
|
|
||||||
remark: string
|
|
||||||
businessKey: string
|
|
||||||
createTime: string
|
|
||||||
endTime: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export type ProcessInstanceCopyVO = {
|
|
||||||
type: number
|
|
||||||
taskName: string
|
|
||||||
taskKey: string
|
|
||||||
processInstanceName: string
|
|
||||||
processInstanceKey: string
|
|
||||||
startUserId: string
|
|
||||||
options: string[]
|
|
||||||
reason: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getProcessInstanceMyPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/bpm/process-instance/my-page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getProcessInstanceManagerPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/bpm/process-instance/manager-page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const createProcessInstance = async (data) => {
|
|
||||||
return await request.post({ url: '/bpm/process-instance/create', data: data })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const cancelProcessInstanceByStartUser = async (id: number, reason: string) => {
|
|
||||||
const data = {
|
|
||||||
id: id,
|
|
||||||
reason: reason
|
|
||||||
}
|
|
||||||
return await request.delete({ url: '/bpm/process-instance/cancel-by-start-user', data: data })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const cancelProcessInstanceByAdmin = async (id: number, reason: string) => {
|
|
||||||
const data = {
|
|
||||||
id: id,
|
|
||||||
reason: reason
|
|
||||||
}
|
|
||||||
return await request.delete({ url: '/bpm/process-instance/cancel-by-admin', data: data })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getProcessInstance = async (id: string) => {
|
|
||||||
return await request.get({ url: '/bpm/process-instance/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getProcessInstanceCopyPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/bpm/process-instance/copy/page', params })
|
|
||||||
}
|
|
|
@ -1,40 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// BPM 流程监听器 VO
|
|
||||||
export interface ProcessListenerVO {
|
|
||||||
id: number // 编号
|
|
||||||
name: string // 监听器名字
|
|
||||||
type: string // 监听器类型
|
|
||||||
status: number // 监听器状态
|
|
||||||
event: string // 监听事件
|
|
||||||
valueType: string // 监听器值类型
|
|
||||||
value: string // 监听器值
|
|
||||||
}
|
|
||||||
|
|
||||||
// BPM 流程监听器 API
|
|
||||||
export const ProcessListenerApi = {
|
|
||||||
// 查询流程监听器分页
|
|
||||||
getProcessListenerPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/bpm/process-listener/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询流程监听器详情
|
|
||||||
getProcessListener: async (id: number) => {
|
|
||||||
return await request.get({ url: `/bpm/process-listener/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增流程监听器
|
|
||||||
createProcessListener: async (data: ProcessListenerVO) => {
|
|
||||||
return await request.post({ url: `/bpm/process-listener/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改流程监听器
|
|
||||||
updateProcessListener: async (data: ProcessListenerVO) => {
|
|
||||||
return await request.put({ url: `/bpm/process-listener/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除流程监听器
|
|
||||||
deleteProcessListener: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/bpm/process-listener/delete?id=` + id })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,66 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export type TaskVO = {
|
|
||||||
id: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getTaskTodoPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/bpm/task/todo-page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getTaskDonePage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/bpm/task/done-page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getTaskManagerPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/bpm/task/manager-page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const approveTask = async (data: any) => {
|
|
||||||
return await request.put({ url: '/bpm/task/approve', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const rejectTask = async (data: any) => {
|
|
||||||
return await request.put({ url: '/bpm/task/reject', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getTaskListByProcessInstanceId = async (processInstanceId: string) => {
|
|
||||||
return await request.get({
|
|
||||||
url: '/bpm/task/list-by-process-instance-id?processInstanceId=' + processInstanceId
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取所有可回退的节点
|
|
||||||
export const getTaskListByReturn = async (id: string) => {
|
|
||||||
return await request.get({ url: '/bpm/task/list-by-return', params: { id } })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 回退
|
|
||||||
export const returnTask = async (data: any) => {
|
|
||||||
return await request.put({ url: '/bpm/task/return', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 委派
|
|
||||||
export const delegateTask = async (data: any) => {
|
|
||||||
return await request.put({ url: '/bpm/task/delegate', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 转派
|
|
||||||
export const transferTask = async (data: any) => {
|
|
||||||
return await request.put({ url: '/bpm/task/transfer', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 加签
|
|
||||||
export const signCreateTask = async (data: any) => {
|
|
||||||
return await request.put({ url: '/bpm/task/create-sign', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 减签
|
|
||||||
export const signDeleteTask = async (data: any) => {
|
|
||||||
return await request.delete({ url: '/bpm/task/delete-sign', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取减签任务列表
|
|
||||||
export const getChildrenTaskList = async (id: string) => {
|
|
||||||
return await request.get({ url: '/bpm/task/list-by-parent-task-id?parentTaskId=' + id })
|
|
||||||
}
|
|
|
@ -1,47 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export type UserGroupVO = {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
description: string
|
|
||||||
userIds: number[]
|
|
||||||
status: number
|
|
||||||
remark: string
|
|
||||||
createTime: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建用户组
|
|
||||||
export const createUserGroup = async (data: UserGroupVO) => {
|
|
||||||
return await request.post({
|
|
||||||
url: '/bpm/user-group/create',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新用户组
|
|
||||||
export const updateUserGroup = async (data: UserGroupVO) => {
|
|
||||||
return await request.put({
|
|
||||||
url: '/bpm/user-group/update',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除用户组
|
|
||||||
export const deleteUserGroup = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/bpm/user-group/delete?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得用户组
|
|
||||||
export const getUserGroup = async (id: number) => {
|
|
||||||
return await request.get({ url: '/bpm/user-group/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得用户组分页
|
|
||||||
export const getUserGroupPage = async (params) => {
|
|
||||||
return await request.get({ url: '/bpm/user-group/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取用户组精简信息列表
|
|
||||||
export const getUserGroupSimpleList = async (): Promise<UserGroupVO[]> => {
|
|
||||||
return await request.get({ url: '/bpm/user-group/simple-list' })
|
|
||||||
}
|
|
|
@ -1,98 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { TransferReqVO } from '@/api/crm/permission'
|
|
||||||
|
|
||||||
export interface BusinessVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
customerId: number
|
|
||||||
customerName?: string
|
|
||||||
followUpStatus: boolean
|
|
||||||
contactLastTime: Date
|
|
||||||
contactNextTime: Date
|
|
||||||
ownerUserId: number
|
|
||||||
ownerUserName?: string // 负责人的用户名称
|
|
||||||
ownerUserDept?: string // 负责人的部门名称
|
|
||||||
statusTypeId: number
|
|
||||||
statusTypeName?: string
|
|
||||||
statusId: number
|
|
||||||
statusName?: string
|
|
||||||
endStatus: number
|
|
||||||
endRemark: string
|
|
||||||
dealTime: Date
|
|
||||||
totalProductPrice: number
|
|
||||||
totalPrice: number
|
|
||||||
discountPercent: number
|
|
||||||
remark: string
|
|
||||||
creator: string // 创建人
|
|
||||||
creatorName?: string // 创建人名称
|
|
||||||
createTime: Date // 创建时间
|
|
||||||
updateTime: Date // 更新时间
|
|
||||||
products?: [
|
|
||||||
{
|
|
||||||
id: number
|
|
||||||
productId: number
|
|
||||||
productName: string
|
|
||||||
productNo: string
|
|
||||||
productUnit: number
|
|
||||||
productPrice: number
|
|
||||||
businessPrice: number
|
|
||||||
count: number
|
|
||||||
totalPrice: number
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 商机列表
|
|
||||||
export const getBusinessPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/business/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 商机列表,基于指定客户
|
|
||||||
export const getBusinessPageByCustomer = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/business/page-by-customer`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 商机详情
|
|
||||||
export const getBusiness = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/business/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得 CRM 商机列表(精简)
|
|
||||||
export const getSimpleBusinessList = async () => {
|
|
||||||
return await request.get({ url: `/crm/business/simple-all-list` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增 CRM 商机
|
|
||||||
export const createBusiness = async (data: BusinessVO) => {
|
|
||||||
return await request.post({ url: `/crm/business/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改 CRM 商机
|
|
||||||
export const updateBusiness = async (data: BusinessVO) => {
|
|
||||||
return await request.put({ url: `/crm/business/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改 CRM 商机状态
|
|
||||||
export const updateBusinessStatus = async (data: BusinessVO) => {
|
|
||||||
return await request.put({ url: `/crm/business/update-status`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除 CRM 商机
|
|
||||||
export const deleteBusiness = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/business/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出 CRM 商机 Excel
|
|
||||||
export const exportBusiness = async (params) => {
|
|
||||||
return await request.download({ url: `/crm/business/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 联系人关联商机列表
|
|
||||||
export const getBusinessPageByContact = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/business/page-by-contact`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 商机转移
|
|
||||||
export const transferBusiness = async (data: TransferReqVO) => {
|
|
||||||
return await request.put({ url: '/crm/business/transfer', data })
|
|
||||||
}
|
|
|
@ -1,68 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface BusinessStatusTypeVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
deptIds: number[]
|
|
||||||
statuses?: {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
percent: number
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export const DEFAULT_STATUSES = [
|
|
||||||
{
|
|
||||||
endStatus: 1,
|
|
||||||
key: '结束',
|
|
||||||
name: '赢单',
|
|
||||||
percent: 100
|
|
||||||
},
|
|
||||||
{
|
|
||||||
endStatus: 2,
|
|
||||||
key: '结束',
|
|
||||||
name: '输单',
|
|
||||||
percent: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
endStatus: 3,
|
|
||||||
key: '结束',
|
|
||||||
name: '无效',
|
|
||||||
percent: 0
|
|
||||||
}
|
|
||||||
]
|
|
||||||
|
|
||||||
// 查询商机状态组列表
|
|
||||||
export const getBusinessStatusPage = async (params: any) => {
|
|
||||||
return await request.get({ url: `/crm/business-status/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增商机状态组
|
|
||||||
export const createBusinessStatus = async (data: BusinessStatusTypeVO) => {
|
|
||||||
return await request.post({ url: `/crm/business-status/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改商机状态组
|
|
||||||
export const updateBusinessStatus = async (data: BusinessStatusTypeVO) => {
|
|
||||||
return await request.put({ url: `/crm/business-status/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询商机状态类型详情
|
|
||||||
export const getBusinessStatus = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/business-status/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除商机状态
|
|
||||||
export const deleteBusinessStatus = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/business-status/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商机状态组列表
|
|
||||||
export const getBusinessStatusTypeSimpleList = async () => {
|
|
||||||
return await request.get({ url: `/crm/business-status/type-simple-list` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商机阶段列表
|
|
||||||
export const getBusinessStatusSimpleList = async (typeId: number) => {
|
|
||||||
return await request.get({ url: `/crm/business-status/status-simple-list`, params: { typeId } })
|
|
||||||
}
|
|
|
@ -1,78 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { TransferReqVO } from '@/api/crm/permission'
|
|
||||||
|
|
||||||
export interface ClueVO {
|
|
||||||
id: number // 编号
|
|
||||||
name: string // 线索名称
|
|
||||||
followUpStatus: boolean // 跟进状态
|
|
||||||
contactLastTime: Date // 最后跟进时间
|
|
||||||
contactLastContent: string // 最后跟进内容
|
|
||||||
contactNextTime: Date // 下次联系时间
|
|
||||||
ownerUserId: number // 负责人的用户编号
|
|
||||||
ownerUserName?: string // 负责人的用户名称
|
|
||||||
ownerUserDept?: string // 负责人的部门名称
|
|
||||||
transformStatus: boolean // 转化状态
|
|
||||||
customerId: number // 客户编号
|
|
||||||
customerName?: string // 客户名称
|
|
||||||
mobile: string // 手机号
|
|
||||||
telephone: string // 电话
|
|
||||||
qq: string // QQ
|
|
||||||
wechat: string // wechat
|
|
||||||
email: string // email
|
|
||||||
areaId: number // 所在地
|
|
||||||
areaName?: string // 所在地名称
|
|
||||||
detailAddress: string // 详细地址
|
|
||||||
industryId: number // 所属行业
|
|
||||||
level: number // 客户等级
|
|
||||||
source: number // 客户来源
|
|
||||||
remark: string // 备注
|
|
||||||
creator: string // 创建人
|
|
||||||
creatorName?: string // 创建人名称
|
|
||||||
createTime: Date // 创建时间
|
|
||||||
updateTime: Date // 更新时间
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询线索列表
|
|
||||||
export const getCluePage = async (params: any) => {
|
|
||||||
return await request.get({ url: `/crm/clue/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询线索详情
|
|
||||||
export const getClue = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/clue/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增线索
|
|
||||||
export const createClue = async (data: ClueVO) => {
|
|
||||||
return await request.post({ url: `/crm/clue/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改线索
|
|
||||||
export const updateClue = async (data: ClueVO) => {
|
|
||||||
return await request.put({ url: `/crm/clue/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除线索
|
|
||||||
export const deleteClue = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/clue/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出线索 Excel
|
|
||||||
export const exportClue = async (params) => {
|
|
||||||
return await request.download({ url: `/crm/clue/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 线索转移
|
|
||||||
export const transferClue = async (data: TransferReqVO) => {
|
|
||||||
return await request.put({ url: '/crm/clue/transfer', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 线索转化为客户
|
|
||||||
export const transformClue = async (id: number) => {
|
|
||||||
return await request.put({ url: '/crm/clue/transform', params: { id } })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得分配给我的、待跟进的线索数量
|
|
||||||
export const getFollowClueCount = async () => {
|
|
||||||
return await request.get({ url: '/crm/clue/follow-count' })
|
|
||||||
}
|
|
|
@ -1,113 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { TransferReqVO } from '@/api/crm/permission'
|
|
||||||
|
|
||||||
export interface ContactVO {
|
|
||||||
id: number // 编号
|
|
||||||
name: string // 联系人名称
|
|
||||||
customerId: number // 客户编号
|
|
||||||
customerName?: string // 客户名称
|
|
||||||
contactLastTime: Date // 最后跟进时间
|
|
||||||
contactLastContent: string // 最后跟进内容
|
|
||||||
contactNextTime: Date // 下次联系时间
|
|
||||||
ownerUserId: number // 负责人的用户编号
|
|
||||||
ownerUserName?: string // 负责人的用户名称
|
|
||||||
ownerUserDept?: string // 负责人的部门名称
|
|
||||||
mobile: string // 手机号
|
|
||||||
telephone: string // 电话
|
|
||||||
qq: string // QQ
|
|
||||||
wechat: string // wechat
|
|
||||||
email: string // email
|
|
||||||
areaId: number // 所在地
|
|
||||||
areaName?: string // 所在地名称
|
|
||||||
detailAddress: string // 详细地址
|
|
||||||
sex: number // 性别
|
|
||||||
master: boolean // 是否主联系人
|
|
||||||
post: string // 职务
|
|
||||||
parentId: number // 上级联系人编号
|
|
||||||
parentName?: string // 上级联系人名称
|
|
||||||
remark: string // 备注
|
|
||||||
creator: string // 创建人
|
|
||||||
creatorName?: string // 创建人名称
|
|
||||||
createTime: Date // 创建时间
|
|
||||||
updateTime: Date // 更新时间
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface ContactBusinessReqVO {
|
|
||||||
contactId: number
|
|
||||||
businessIds: number[]
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface ContactBusiness2ReqVO {
|
|
||||||
businessId: number
|
|
||||||
contactIds: number[]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 联系人列表
|
|
||||||
export const getContactPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/contact/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 联系人列表,基于指定客户
|
|
||||||
export const getContactPageByCustomer = async (params: any) => {
|
|
||||||
return await request.get({ url: `/crm/contact/page-by-customer`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 联系人列表,基于指定商机
|
|
||||||
export const getContactPageByBusiness = async (params: any) => {
|
|
||||||
return await request.get({ url: `/crm/contact/page-by-business`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 联系人详情
|
|
||||||
export const getContact = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/contact/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增 CRM 联系人
|
|
||||||
export const createContact = async (data: ContactVO) => {
|
|
||||||
return await request.post({ url: `/crm/contact/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改 CRM 联系人
|
|
||||||
export const updateContact = async (data: ContactVO) => {
|
|
||||||
return await request.put({ url: `/crm/contact/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除 CRM 联系人
|
|
||||||
export const deleteContact = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/contact/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出 CRM 联系人 Excel
|
|
||||||
export const exportContact = async (params) => {
|
|
||||||
return await request.download({ url: `/crm/contact/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得 CRM 联系人列表(精简)
|
|
||||||
export const getSimpleContactList = async () => {
|
|
||||||
return await request.get({ url: `/crm/contact/simple-all-list` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 批量新增联系人商机关联
|
|
||||||
export const createContactBusinessList = async (data: ContactBusinessReqVO) => {
|
|
||||||
return await request.post({ url: `/crm/contact/create-business-list`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 批量新增联系人商机关联
|
|
||||||
export const createContactBusinessList2 = async (data: ContactBusiness2ReqVO) => {
|
|
||||||
return await request.post({ url: `/crm/contact/create-business-list2`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 解除联系人商机关联
|
|
||||||
export const deleteContactBusinessList = async (data: ContactBusinessReqVO) => {
|
|
||||||
return await request.delete({ url: `/crm/contact/delete-business-list`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 解除联系人商机关联
|
|
||||||
export const deleteContactBusinessList2 = async (data: ContactBusiness2ReqVO) => {
|
|
||||||
return await request.delete({ url: `/crm/contact/delete-business-list2`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 联系人转移
|
|
||||||
export const transferContact = async (data: TransferReqVO) => {
|
|
||||||
return await request.put({ url: '/crm/contact/transfer', data })
|
|
||||||
}
|
|
|
@ -1,16 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ContractConfigVO {
|
|
||||||
notifyEnabled?: boolean
|
|
||||||
notifyDays?: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取合同配置
|
|
||||||
export const getContractConfig = async () => {
|
|
||||||
return await request.get({ url: `/crm/contract-config/get` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新合同配置
|
|
||||||
export const saveContractConfig = async (data: ContractConfigVO) => {
|
|
||||||
return await request.put({ url: `/crm/contract-config/save`, data })
|
|
||||||
}
|
|
|
@ -1,114 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { TransferReqVO } from '@/api/crm/permission'
|
|
||||||
|
|
||||||
export interface ContractVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
no: string
|
|
||||||
customerId: number
|
|
||||||
customerName?: string
|
|
||||||
businessId: number
|
|
||||||
businessName: string
|
|
||||||
contactLastTime: Date
|
|
||||||
ownerUserId: number
|
|
||||||
ownerUserName?: string
|
|
||||||
ownerUserDeptName?: string
|
|
||||||
processInstanceId: number
|
|
||||||
auditStatus: number
|
|
||||||
orderDate: Date
|
|
||||||
startTime: Date
|
|
||||||
endTime: Date
|
|
||||||
totalProductPrice: number
|
|
||||||
discountPercent: number
|
|
||||||
totalPrice: number
|
|
||||||
totalReceivablePrice: number
|
|
||||||
signContactId: number
|
|
||||||
signContactName?: string
|
|
||||||
signUserId: number
|
|
||||||
signUserName: string
|
|
||||||
remark: string
|
|
||||||
createTime?: Date
|
|
||||||
creator: string
|
|
||||||
creatorName: string
|
|
||||||
updateTime?: Date
|
|
||||||
products?: [
|
|
||||||
{
|
|
||||||
id: number
|
|
||||||
productId: number
|
|
||||||
productName: string
|
|
||||||
productNo: string
|
|
||||||
productUnit: number
|
|
||||||
productPrice: number
|
|
||||||
contractPrice: number
|
|
||||||
count: number
|
|
||||||
totalPrice: number
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 合同列表
|
|
||||||
export const getContractPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/contract/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 联系人列表,基于指定客户
|
|
||||||
export const getContractPageByCustomer = async (params: any) => {
|
|
||||||
return await request.get({ url: `/crm/contract/page-by-customer`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 联系人列表,基于指定商机
|
|
||||||
export const getContractPageByBusiness = async (params: any) => {
|
|
||||||
return await request.get({ url: `/crm/contract/page-by-business`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 合同详情
|
|
||||||
export const getContract = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/contract/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询 CRM 合同下拉列表
|
|
||||||
export const getContractSimpleList = async (customerId: number) => {
|
|
||||||
return await request.get({
|
|
||||||
url: `/crm/contract/simple-list?customerId=${customerId}`
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增 CRM 合同
|
|
||||||
export const createContract = async (data: ContractVO) => {
|
|
||||||
return await request.post({ url: `/crm/contract/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改 CRM 合同
|
|
||||||
export const updateContract = async (data: ContractVO) => {
|
|
||||||
return await request.put({ url: `/crm/contract/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除 CRM 合同
|
|
||||||
export const deleteContract = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/contract/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出 CRM 合同 Excel
|
|
||||||
export const exportContract = async (params) => {
|
|
||||||
return await request.download({ url: `/crm/contract/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 提交审核
|
|
||||||
export const submitContract = async (id: number) => {
|
|
||||||
return await request.put({ url: `/crm/contract/submit?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 合同转移
|
|
||||||
export const transferContract = async (data: TransferReqVO) => {
|
|
||||||
return await request.put({ url: '/crm/contract/transfer', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得待审核合同数量
|
|
||||||
export const getAuditContractCount = async () => {
|
|
||||||
return await request.get({ url: '/crm/contract/audit-count' })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得即将到期(提醒)的合同数量
|
|
||||||
export const getRemindContractCount = async () => {
|
|
||||||
return await request.get({ url: '/crm/contract/remind-count' })
|
|
||||||
}
|
|
|
@ -1,132 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { TransferReqVO } from '@/api/crm/permission'
|
|
||||||
|
|
||||||
export interface CustomerVO {
|
|
||||||
id: number // 编号
|
|
||||||
name: string // 客户名称
|
|
||||||
followUpStatus: boolean // 跟进状态
|
|
||||||
contactLastTime: Date // 最后跟进时间
|
|
||||||
contactLastContent: string // 最后跟进内容
|
|
||||||
contactNextTime: Date // 下次联系时间
|
|
||||||
ownerUserId: number // 负责人的用户编号
|
|
||||||
ownerUserName?: string // 负责人的用户名称
|
|
||||||
ownerUserDept?: string // 负责人的部门名称
|
|
||||||
lockStatus?: boolean
|
|
||||||
dealStatus?: boolean
|
|
||||||
mobile: string // 手机号
|
|
||||||
telephone: string // 电话
|
|
||||||
qq: string // QQ
|
|
||||||
wechat: string // wechat
|
|
||||||
email: string // email
|
|
||||||
areaId: number // 所在地
|
|
||||||
areaName?: string // 所在地名称
|
|
||||||
detailAddress: string // 详细地址
|
|
||||||
industryId: number // 所属行业
|
|
||||||
level: number // 客户等级
|
|
||||||
source: number // 客户来源
|
|
||||||
remark: string // 备注
|
|
||||||
creator: string // 创建人
|
|
||||||
creatorName?: string // 创建人名称
|
|
||||||
createTime: Date // 创建时间
|
|
||||||
updateTime: Date // 更新时间
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询客户列表
|
|
||||||
export const getCustomerPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/customer/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 进入公海客户提醒的客户列表
|
|
||||||
export const getPutPoolRemindCustomerPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/customer/put-pool-remind-page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得待进入公海客户数量
|
|
||||||
export const getPutPoolRemindCustomerCount = async () => {
|
|
||||||
return await request.get({ url: `/crm/customer/put-pool-remind-count` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得今日需联系客户数量
|
|
||||||
export const getTodayContactCustomerCount = async () => {
|
|
||||||
return await request.get({ url: `/crm/customer/today-contact-count` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得分配给我、待跟进的线索数量的客户数量
|
|
||||||
export const getFollowCustomerCount = async () => {
|
|
||||||
return await request.get({ url: `/crm/customer/follow-count` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询客户详情
|
|
||||||
export const getCustomer = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/customer/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增客户
|
|
||||||
export const createCustomer = async (data: CustomerVO) => {
|
|
||||||
return await request.post({ url: `/crm/customer/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改客户
|
|
||||||
export const updateCustomer = async (data: CustomerVO) => {
|
|
||||||
return await request.put({ url: `/crm/customer/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新客户的成交状态
|
|
||||||
export const updateCustomerDealStatus = async (id: number, dealStatus: boolean) => {
|
|
||||||
return await request.put({ url: `/crm/customer/update-deal-status`, params: { id, dealStatus } })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除客户
|
|
||||||
export const deleteCustomer = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/customer/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出客户 Excel
|
|
||||||
export const exportCustomer = async (params: any) => {
|
|
||||||
return await request.download({ url: `/crm/customer/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 下载客户导入模板
|
|
||||||
export const importCustomerTemplate = () => {
|
|
||||||
return request.download({ url: '/crm/customer/get-import-template' })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导入客户
|
|
||||||
export const handleImport = async (formData) => {
|
|
||||||
return await request.upload({ url: `/crm/customer/import`, data: formData })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 客户列表
|
|
||||||
export const getCustomerSimpleList = async () => {
|
|
||||||
return await request.get({ url: `/crm/customer/simple-list` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// ======================= 业务操作 =======================
|
|
||||||
|
|
||||||
// 客户转移
|
|
||||||
export const transferCustomer = async (data: TransferReqVO) => {
|
|
||||||
return await request.put({ url: '/crm/customer/transfer', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 锁定/解锁客户
|
|
||||||
export const lockCustomer = async (id: number, lockStatus: boolean) => {
|
|
||||||
return await request.put({ url: `/crm/customer/lock`, data: { id, lockStatus } })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 领取公海客户
|
|
||||||
export const receiveCustomer = async (ids: any[]) => {
|
|
||||||
return await request.put({ url: '/crm/customer/receive', params: { ids: ids.join(',') } })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 分配公海给对应负责人
|
|
||||||
export const distributeCustomer = async (ids: any[], ownerUserId: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: '/crm/customer/distribute',
|
|
||||||
data: { ids: ids, ownerUserId }
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 客户放入公海
|
|
||||||
export const putCustomerPool = async (id: number) => {
|
|
||||||
return await request.put({ url: `/crm/customer/put-pool?id=${id}` })
|
|
||||||
}
|
|
|
@ -1,49 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CustomerLimitConfigVO {
|
|
||||||
id?: number
|
|
||||||
type?: number
|
|
||||||
userIds?: string
|
|
||||||
deptIds?: string
|
|
||||||
maxCount?: number
|
|
||||||
dealCountEnabled?: boolean
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 客户限制配置类型
|
|
||||||
*/
|
|
||||||
export enum LimitConfType {
|
|
||||||
/**
|
|
||||||
* 拥有客户数限制
|
|
||||||
*/
|
|
||||||
CUSTOMER_QUANTITY_LIMIT = 1,
|
|
||||||
/**
|
|
||||||
* 锁定客户数限制
|
|
||||||
*/
|
|
||||||
CUSTOMER_LOCK_LIMIT = 2
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询客户限制配置列表
|
|
||||||
export const getCustomerLimitConfigPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/customer-limit-config/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询客户限制配置详情
|
|
||||||
export const getCustomerLimitConfig = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/customer-limit-config/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增客户限制配置
|
|
||||||
export const createCustomerLimitConfig = async (data: CustomerLimitConfigVO) => {
|
|
||||||
return await request.post({ url: `/crm/customer-limit-config/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改客户限制配置
|
|
||||||
export const updateCustomerLimitConfig = async (data: CustomerLimitConfigVO) => {
|
|
||||||
return await request.put({ url: `/crm/customer-limit-config/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除客户限制配置
|
|
||||||
export const deleteCustomerLimitConfig = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/customer-limit-config/delete?id=` + id })
|
|
||||||
}
|
|
|
@ -1,19 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CustomerPoolConfigVO {
|
|
||||||
enabled?: boolean
|
|
||||||
contactExpireDays?: number
|
|
||||||
dealExpireDays?: number
|
|
||||||
notifyEnabled?: boolean
|
|
||||||
notifyDays?: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取客户公海规则设置
|
|
||||||
export const getCustomerPoolConfig = async () => {
|
|
||||||
return await request.get({ url: `/crm/customer-pool-config/get` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新客户公海规则设置
|
|
||||||
export const saveCustomerPoolConfig = async (data: CustomerPoolConfigVO) => {
|
|
||||||
return await request.put({ url: `/crm/customer-pool-config/save`, data })
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// 跟进记录 VO
|
|
||||||
export interface FollowUpRecordVO {
|
|
||||||
id: number // 编号
|
|
||||||
bizType: number // 数据类型
|
|
||||||
bizId: number // 数据编号
|
|
||||||
type: number // 跟进类型
|
|
||||||
content: string // 跟进内容
|
|
||||||
picUrls: string[] // 图片
|
|
||||||
fileUrls: string[] // 附件
|
|
||||||
nextTime: Date // 下次联系时间
|
|
||||||
businessIds: number[] // 关联的商机编号数组
|
|
||||||
businesses: {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
}[] // 关联的商机数组
|
|
||||||
contactIds: number[] // 关联的联系人编号数组
|
|
||||||
contacts: {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
}[] // 关联的联系人数组
|
|
||||||
creator: string
|
|
||||||
creatorName?: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 跟进记录 API
|
|
||||||
export const FollowUpRecordApi = {
|
|
||||||
// 查询跟进记录分页
|
|
||||||
getFollowUpRecordPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/crm/follow-up-record/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增跟进记录
|
|
||||||
createFollowUpRecord: async (data: FollowUpRecordVO) => {
|
|
||||||
return await request.post({ url: `/crm/follow-up-record/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除跟进记录
|
|
||||||
deleteFollowUpRecord: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/follow-up-record/delete?id=` + id })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
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 })
|
|
||||||
}
|
|
|
@ -1,72 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface PermissionVO {
|
|
||||||
id?: number // 数据权限编号
|
|
||||||
userId: number // 用户编号
|
|
||||||
bizType: number // Crm 类型
|
|
||||||
bizId: number // Crm 类型数据编号
|
|
||||||
level: number // 权限级别
|
|
||||||
toBizTypes?: number[] // 同时添加至
|
|
||||||
deptName?: string // 部门名称
|
|
||||||
nickname?: string // 用户昵称
|
|
||||||
postNames?: string[] // 岗位名称数组
|
|
||||||
createTime?: Date
|
|
||||||
ids?: number[]
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface TransferReqVO {
|
|
||||||
id: number // 模块编号
|
|
||||||
newOwnerUserId: number // 新负责人的用户编号
|
|
||||||
oldOwnerPermissionLevel?: number // 老负责人加入团队后的权限级别
|
|
||||||
toBizTypes?: number[] // 转移客户时,需要额外有【联系人】【商机】【合同】的 checkbox 选择
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* CRM 业务类型枚举
|
|
||||||
*
|
|
||||||
* @author HUIHUI
|
|
||||||
*/
|
|
||||||
export enum BizTypeEnum {
|
|
||||||
CRM_CLUE = 1, // 线索
|
|
||||||
CRM_CUSTOMER = 2, // 客户
|
|
||||||
CRM_CONTACT = 3, // 联系人
|
|
||||||
CRM_BUSINESS = 4, // 商机
|
|
||||||
CRM_CONTRACT = 5, // 合同
|
|
||||||
CRM_PRODUCT = 6, // 产品
|
|
||||||
CRM_RECEIVABLE = 7, // 回款
|
|
||||||
CRM_RECEIVABLE_PLAN = 8 // 回款计划
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* CRM 数据权限级别枚举
|
|
||||||
*/
|
|
||||||
export enum PermissionLevelEnum {
|
|
||||||
OWNER = 1, // 负责人
|
|
||||||
READ = 2, // 只读
|
|
||||||
WRITE = 3 // 读写
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得数据权限列表(查询团队成员列表)
|
|
||||||
export const getPermissionList = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/permission/list`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建数据权限(新增团队成员)
|
|
||||||
export const createPermission = async (data: PermissionVO) => {
|
|
||||||
return await request.post({ url: `/crm/permission/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 编辑数据权限(修改团队成员权限级别)
|
|
||||||
export const updatePermission = async (data) => {
|
|
||||||
return await request.put({ url: `/crm/permission/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除数据权限(删除团队成员)
|
|
||||||
export const deletePermissionBatch = async (val: number[]) => {
|
|
||||||
return await request.delete({ url: '/crm/permission/delete?ids=' + val.join(',') })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除自己的数据权限(退出团队)
|
|
||||||
export const deleteSelfPermission = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/crm/permission/delete-self?id=' + id })
|
|
||||||
}
|
|
|
@ -1,33 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// TODO @zange:挪到 product 下,建个 category 包,挪进去哈;
|
|
||||||
export interface ProductCategoryVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
parentId: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询产品分类详情
|
|
||||||
export const getProductCategory = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/product-category/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增产品分类
|
|
||||||
export const createProductCategory = async (data: ProductCategoryVO) => {
|
|
||||||
return await request.post({ url: `/crm/product-category/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改产品分类
|
|
||||||
export const updateProductCategory = async (data: ProductCategoryVO) => {
|
|
||||||
return await request.put({ url: `/crm/product-category/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除产品分类
|
|
||||||
export const deleteProductCategory = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/product-category/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 产品分类列表
|
|
||||||
export const getProductCategoryList = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/product-category/list`, params })
|
|
||||||
}
|
|
|
@ -1,49 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ProductVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
no: string
|
|
||||||
unit: number
|
|
||||||
price: number
|
|
||||||
status: number
|
|
||||||
categoryId: number
|
|
||||||
categoryName?: string
|
|
||||||
description: string
|
|
||||||
ownerUserId: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询产品列表
|
|
||||||
export const getProductPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/product/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得产品精简列表
|
|
||||||
export const getProductSimpleList = async () => {
|
|
||||||
return await request.get({ url: `/crm/product/simple-list` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询产品详情
|
|
||||||
export const getProduct = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/product/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增产品
|
|
||||||
export const createProduct = async (data: ProductVO) => {
|
|
||||||
return await request.post({ url: `/crm/product/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改产品
|
|
||||||
export const updateProduct = async (data: ProductVO) => {
|
|
||||||
return await request.put({ url: `/crm/product/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除产品
|
|
||||||
export const deleteProduct = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/product/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出产品 Excel
|
|
||||||
export const exportProduct = async (params) => {
|
|
||||||
return await request.download({ url: `/crm/product/export-excel`, params })
|
|
||||||
}
|
|
|
@ -1,73 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ReceivableVO {
|
|
||||||
id: number
|
|
||||||
no: string
|
|
||||||
planId?: number
|
|
||||||
customerId?: number
|
|
||||||
customerName?: string
|
|
||||||
contractId?: number
|
|
||||||
contract?: {
|
|
||||||
id?: number
|
|
||||||
name?: string
|
|
||||||
no: string
|
|
||||||
totalPrice: number
|
|
||||||
}
|
|
||||||
auditStatus: number
|
|
||||||
processInstanceId: number
|
|
||||||
returnTime: Date
|
|
||||||
returnType: number
|
|
||||||
price: number
|
|
||||||
ownerUserId: number
|
|
||||||
ownerUserName?: string
|
|
||||||
remark: string
|
|
||||||
creator: string // 创建人
|
|
||||||
creatorName?: string // 创建人名称
|
|
||||||
createTime: Date // 创建时间
|
|
||||||
updateTime: Date // 更新时间
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询回款列表
|
|
||||||
export const getReceivablePage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/receivable/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询回款列表
|
|
||||||
export const getReceivablePageByCustomer = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/receivable/page-by-customer`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询回款详情
|
|
||||||
export const getReceivable = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/receivable/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增回款
|
|
||||||
export const createReceivable = async (data: ReceivableVO) => {
|
|
||||||
return await request.post({ url: `/crm/receivable/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改回款
|
|
||||||
export const updateReceivable = async (data: ReceivableVO) => {
|
|
||||||
return await request.put({ url: `/crm/receivable/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除回款
|
|
||||||
export const deleteReceivable = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/receivable/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出回款 Excel
|
|
||||||
export const exportReceivable = async (params) => {
|
|
||||||
return await request.download({ url: `/crm/receivable/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 提交审核
|
|
||||||
export const submitReceivable = async (id: number) => {
|
|
||||||
return await request.put({ url: `/crm/receivable/submit?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得待审核回款数量
|
|
||||||
export const getAuditReceivableCount = async () => {
|
|
||||||
return await request.get({ url: '/crm/receivable/audit-count' })
|
|
||||||
}
|
|
|
@ -1,74 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ReceivablePlanVO {
|
|
||||||
id: number
|
|
||||||
period: number
|
|
||||||
receivableId: number
|
|
||||||
price: number
|
|
||||||
returnTime: Date
|
|
||||||
remindDays: number
|
|
||||||
returnType: number
|
|
||||||
remindTime: Date
|
|
||||||
customerId: number
|
|
||||||
customerName?: string
|
|
||||||
contractId?: number
|
|
||||||
contractNo?: string
|
|
||||||
ownerUserId: number
|
|
||||||
ownerUserName?: string
|
|
||||||
remark: string
|
|
||||||
creator: string // 创建人
|
|
||||||
creatorName?: string // 创建人名称
|
|
||||||
createTime: Date // 创建时间
|
|
||||||
updateTime: Date // 更新时间
|
|
||||||
receivable?: {
|
|
||||||
price: number
|
|
||||||
returnTime: Date
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询回款计划列表
|
|
||||||
export const getReceivablePlanPage = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/receivable-plan/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询回款计划列表
|
|
||||||
export const getReceivablePlanPageByCustomer = async (params) => {
|
|
||||||
return await request.get({ url: `/crm/receivable-plan/page-by-customer`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询回款计划详情
|
|
||||||
export const getReceivablePlan = async (id: number) => {
|
|
||||||
return await request.get({ url: `/crm/receivable-plan/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询回款计划下拉数据
|
|
||||||
export const getReceivablePlanSimpleList = async (customerId: number, contractId: number) => {
|
|
||||||
return await request.get({
|
|
||||||
url: `/crm/receivable-plan/simple-list?customerId=${customerId}&contractId=${contractId}`
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增回款计划
|
|
||||||
export const createReceivablePlan = async (data: ReceivablePlanVO) => {
|
|
||||||
return await request.post({ url: `/crm/receivable-plan/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改回款计划
|
|
||||||
export const updateReceivablePlan = async (data: ReceivablePlanVO) => {
|
|
||||||
return await request.put({ url: `/crm/receivable-plan/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除回款计划
|
|
||||||
export const deleteReceivablePlan = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/crm/receivable-plan/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出回款计划 Excel
|
|
||||||
export const exportReceivablePlan = async (params) => {
|
|
||||||
return await request.download({ url: `/crm/receivable-plan/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得待回款提醒数量
|
|
||||||
export const getReceivablePlanRemindCount = async () => {
|
|
||||||
return await request.get({ url: '/crm/receivable-plan/remind-count' })
|
|
||||||
}
|
|
|
@ -1,168 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CrmStatisticsCustomerSummaryByDateRespVO {
|
|
||||||
time: string
|
|
||||||
customerCreateCount: number
|
|
||||||
customerDealCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsCustomerSummaryByUserRespVO {
|
|
||||||
ownerUserName: string
|
|
||||||
customerCreateCount: number
|
|
||||||
customerDealCount: number
|
|
||||||
contractPrice: number
|
|
||||||
receivablePrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsFollowUpSummaryByDateRespVO {
|
|
||||||
time: string
|
|
||||||
followUpRecordCount: number
|
|
||||||
followUpCustomerCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsFollowUpSummaryByUserRespVO {
|
|
||||||
ownerUserName: string
|
|
||||||
followupRecordCount: number
|
|
||||||
followupCustomerCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsFollowUpSummaryByTypeRespVO {
|
|
||||||
followUpType: string
|
|
||||||
followUpRecordCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsCustomerContractSummaryRespVO {
|
|
||||||
customerName: string
|
|
||||||
contractName: string
|
|
||||||
totalPrice: number
|
|
||||||
receivablePrice: number
|
|
||||||
customerType: string
|
|
||||||
customerSource: string
|
|
||||||
ownerUserName: string
|
|
||||||
creatorUserName: string
|
|
||||||
createTime: Date
|
|
||||||
orderDate: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsPoolSummaryByDateRespVO {
|
|
||||||
time: string
|
|
||||||
customerPutCount: number
|
|
||||||
customerTakeCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsPoolSummaryByUserRespVO {
|
|
||||||
ownerUserName: string
|
|
||||||
customerPutCount: number
|
|
||||||
customerTakeCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsCustomerDealCycleByDateRespVO {
|
|
||||||
time: string
|
|
||||||
customerDealCycle: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsCustomerDealCycleByUserRespVO {
|
|
||||||
ownerUserName: string
|
|
||||||
customerDealCycle: number
|
|
||||||
customerDealCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsCustomerDealCycleByAreaRespVO {
|
|
||||||
areaName: string
|
|
||||||
customerDealCycle: number
|
|
||||||
customerDealCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsCustomerDealCycleByProductRespVO {
|
|
||||||
productName: string
|
|
||||||
customerDealCycle: number
|
|
||||||
customerDealCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 客户分析 API
|
|
||||||
export const StatisticsCustomerApi = {
|
|
||||||
// 1.1 客户总量分析(按日期)
|
|
||||||
getCustomerSummaryByDate: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-customer-summary-by-date',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 1.2 客户总量分析(按用户)
|
|
||||||
getCustomerSummaryByUser: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-customer-summary-by-user',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 2.1 客户跟进次数分析(按日期)
|
|
||||||
getFollowUpSummaryByDate: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-follow-up-summary-by-date',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 2.2 客户跟进次数分析(按用户)
|
|
||||||
getFollowUpSummaryByUser: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-follow-up-summary-by-user',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 3.1 获取客户跟进方式统计数
|
|
||||||
getFollowUpSummaryByType: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-follow-up-summary-by-type',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 4.1 合同摘要信息(客户转化率页面)
|
|
||||||
getContractSummary: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-contract-summary',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 5.1 获取客户公海分析(按日期)
|
|
||||||
getPoolSummaryByDate: (param: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-pool-summary-by-date',
|
|
||||||
params: param
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 5.2 获取客户公海分析(按用户)
|
|
||||||
getPoolSummaryByUser: (param: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-pool-summary-by-user',
|
|
||||||
params: param
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 6.1 获取客户成交周期(按日期)
|
|
||||||
getCustomerDealCycleByDate: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-customer-deal-cycle-by-date',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 6.2 获取客户成交周期(按用户)
|
|
||||||
getCustomerDealCycleByUser: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-customer-deal-cycle-by-user',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 6.2 获取客户成交周期(按用户)
|
|
||||||
getCustomerDealCycleByArea: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-customer-deal-cycle-by-area',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 6.2 获取客户成交周期(按用户)
|
|
||||||
getCustomerDealCycleByProduct: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-customer/get-customer-deal-cycle-by-product',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,58 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CrmStatisticFunnelRespVO {
|
|
||||||
customerCount: number // 客户数
|
|
||||||
businessCount: number // 商机数
|
|
||||||
businessWinCount: number // 赢单数
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsBusinessSummaryByDateRespVO {
|
|
||||||
time: string // 时间
|
|
||||||
businessCreateCount: number // 商机数
|
|
||||||
totalPrice: number | string // 商机金额
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticsBusinessInversionRateSummaryByDateRespVO {
|
|
||||||
time: string // 时间
|
|
||||||
businessCount: number // 商机数量
|
|
||||||
businessWinCount: number // 赢单商机数
|
|
||||||
}
|
|
||||||
|
|
||||||
// 客户分析 API
|
|
||||||
export const StatisticFunnelApi = {
|
|
||||||
// 1. 获取销售漏斗统计数据
|
|
||||||
getFunnelSummary: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-funnel/get-funnel-summary',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 2. 获取商机结束状态统计
|
|
||||||
getBusinessSummaryByEndStatus: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-funnel/get-business-summary-by-end-status',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 3. 获取新增商机分析(按日期)
|
|
||||||
getBusinessSummaryByDate: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-funnel/get-business-summary-by-date',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 4. 获取商机转化率分析(按日期)
|
|
||||||
getBusinessInversionRateSummaryByDate: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-funnel/get-business-inversion-rate-summary-by-date',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 5. 获取商机列表(按日期)
|
|
||||||
getBusinessPageByDate: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-funnel/get-business-page-by-date',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,33 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface StatisticsPerformanceRespVO {
|
|
||||||
time: string
|
|
||||||
currentMonthCount: number
|
|
||||||
lastMonthCount: number
|
|
||||||
lastYearCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 排行 API
|
|
||||||
export const StatisticsPerformanceApi = {
|
|
||||||
// 员工获得合同金额统计
|
|
||||||
getContractPricePerformance: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-performance/get-contract-price-performance',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 员工获得回款统计
|
|
||||||
getReceivablePricePerformance: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-performance/get-receivable-price-performance',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
//员工获得签约合同数量统计
|
|
||||||
getContractCountPerformance: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-performance/get-contract-count-performance',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,60 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CrmStatisticCustomerBaseRespVO {
|
|
||||||
customerCount: number
|
|
||||||
dealCount: number
|
|
||||||
dealPortion: string | number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticCustomerIndustryRespVO extends CrmStatisticCustomerBaseRespVO {
|
|
||||||
industryId: number
|
|
||||||
industryPortion: string | number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticCustomerSourceRespVO extends CrmStatisticCustomerBaseRespVO {
|
|
||||||
source: number
|
|
||||||
sourcePortion: string | number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticCustomerLevelRespVO extends CrmStatisticCustomerBaseRespVO {
|
|
||||||
level: number
|
|
||||||
levelPortion: string | number
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface CrmStatisticCustomerAreaRespVO extends CrmStatisticCustomerBaseRespVO {
|
|
||||||
areaId: number
|
|
||||||
areaName: string
|
|
||||||
areaPortion: string | number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 客户分析 API
|
|
||||||
export const StatisticsPortraitApi = {
|
|
||||||
// 1. 获取客户行业统计数据
|
|
||||||
getCustomerIndustry: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-portrait/get-customer-industry-summary',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 2. 获取客户来源统计数据
|
|
||||||
getCustomerSource: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-portrait/get-customer-source-summary',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 3. 获取客户级别统计数据
|
|
||||||
getCustomerLevel: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-portrait/get-customer-level-summary',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 4. 获取客户地区统计数据
|
|
||||||
getCustomerArea: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-portrait/get-customer-area-summary',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,67 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface StatisticsRankRespVO {
|
|
||||||
count: number
|
|
||||||
nickname: string
|
|
||||||
deptName: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 排行 API
|
|
||||||
export const StatisticsRankApi = {
|
|
||||||
// 获得合同排行榜
|
|
||||||
getContractPriceRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-contract-price-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获得回款排行榜
|
|
||||||
getReceivablePriceRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-receivable-price-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 签约合同排行
|
|
||||||
getContractCountRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-contract-count-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 产品销量排行
|
|
||||||
getProductSalesRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-product-sales-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 新增客户数排行
|
|
||||||
getCustomerCountRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-customer-count-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 新增联系人数排行
|
|
||||||
getContactsCountRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-contacts-count-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 跟进次数排行
|
|
||||||
getFollowCountRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-follow-count-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 跟进客户数排行
|
|
||||||
getFollowCustomerCountRank: (params: any) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/crm/statistics-rank/get-follow-customer-count-rank',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
49
src/api/dict/dict.data.ts
Normal file
49
src/api/dict/dict.data.ts
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
import request from '@/config/axios'
|
||||||
|
|
||||||
|
export type DictDataVO = {
|
||||||
|
id: number | undefined
|
||||||
|
sort: number | undefined
|
||||||
|
label: string
|
||||||
|
value: string
|
||||||
|
dictType: string
|
||||||
|
status: number
|
||||||
|
colorType: string
|
||||||
|
cssClass: string
|
||||||
|
remark: string
|
||||||
|
createTime: Date
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询字典数据(精简)列表
|
||||||
|
export const getSimpleDictDataList = () => {
|
||||||
|
return request.get({ url: '/system/dict-data/simple-list' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询字典数据列表
|
||||||
|
export const getDictDataPage = (params: PageParam) => {
|
||||||
|
return request.get({ url: '/system/dict-data/page', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询字典数据详情
|
||||||
|
export const getDictData = (id: number) => {
|
||||||
|
return request.get({ url: '/system/dict-data/get?id=' + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增字典数据
|
||||||
|
export const createDictData = (data: DictDataVO) => {
|
||||||
|
return request.post({ url: '/system/dict-data/create', data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改字典数据
|
||||||
|
export const updateDictData = (data: DictDataVO) => {
|
||||||
|
return request.put({ url: '/system/dict-data/update', data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除字典数据
|
||||||
|
export const deleteDictData = (id: number) => {
|
||||||
|
return request.delete({ url: '/system/dict-data/delete?id=' + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 导出字典类型数据
|
||||||
|
export const exportDictData = (params) => {
|
||||||
|
return request.download({ url: '/system/dict-data/export', params })
|
||||||
|
}
|
44
src/api/dict/dict.type.ts
Normal file
44
src/api/dict/dict.type.ts
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
import request from '@/config/axios'
|
||||||
|
|
||||||
|
export type DictTypeVO = {
|
||||||
|
id: number | undefined
|
||||||
|
name: string
|
||||||
|
type: string
|
||||||
|
status: number
|
||||||
|
remark: string
|
||||||
|
createTime: Date
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询字典(精简)列表
|
||||||
|
export const getSimpleDictTypeList = () => {
|
||||||
|
return request.get({ url: '/system/dict-type/list-all-simple' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询字典列表
|
||||||
|
export const getDictTypePage = (params: PageParam) => {
|
||||||
|
return request.get({ url: '/system/dict-type/page', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询字典详情
|
||||||
|
export const getDictType = (id: number) => {
|
||||||
|
return request.get({ url: '/system/dict-type/get?id=' + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增字典
|
||||||
|
export const createDictType = (data: DictTypeVO) => {
|
||||||
|
return request.post({ url: '/system/dict-type/create', data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改字典
|
||||||
|
export const updateDictType = (data: DictTypeVO) => {
|
||||||
|
return request.put({ url: '/system/dict-type/update', data })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除字典
|
||||||
|
export const deleteDictType = (id: number) => {
|
||||||
|
return request.delete({ url: '/system/dict-type/delete?id=' + id })
|
||||||
|
}
|
||||||
|
// 导出字典类型
|
||||||
|
export const exportDictType = (params) => {
|
||||||
|
return request.download({ url: '/system/dict-type/export', params })
|
||||||
|
}
|
|
@ -1,61 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 结算账户 VO
|
|
||||||
export interface AccountVO {
|
|
||||||
id: number // 结算账户编号
|
|
||||||
no: string // 账户编码
|
|
||||||
remark: string // 备注
|
|
||||||
status: number // 开启状态
|
|
||||||
sort: number // 排序
|
|
||||||
defaultStatus: boolean // 是否默认
|
|
||||||
name: string // 账户名称
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 结算账户 API
|
|
||||||
export const AccountApi = {
|
|
||||||
// 查询结算账户分页
|
|
||||||
getAccountPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/account/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询结算账户精简列表
|
|
||||||
getAccountSimpleList: async () => {
|
|
||||||
return await request.get({ url: `/erp/account/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询结算账户详情
|
|
||||||
getAccount: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/account/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增结算账户
|
|
||||||
createAccount: async (data: AccountVO) => {
|
|
||||||
return await request.post({ url: `/erp/account/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改结算账户
|
|
||||||
updateAccount: async (data: AccountVO) => {
|
|
||||||
return await request.put({ url: `/erp/account/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改结算账户默认状态
|
|
||||||
updateAccountDefaultStatus: async (id: number, defaultStatus: boolean) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/account/update-default-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
defaultStatus
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除结算账户
|
|
||||||
deleteAccount: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/erp/account/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出结算账户 Excel
|
|
||||||
exportAccount: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/account/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,61 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 付款单 VO
|
|
||||||
export interface FinancePaymentVO {
|
|
||||||
id: number // 付款单编号
|
|
||||||
no: string // 付款单号
|
|
||||||
supplierId: number // 供应商编号
|
|
||||||
paymentTime: Date // 付款时间
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 付款单 API
|
|
||||||
export const FinancePaymentApi = {
|
|
||||||
// 查询付款单分页
|
|
||||||
getFinancePaymentPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/finance-payment/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询付款单详情
|
|
||||||
getFinancePayment: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/finance-payment/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增付款单
|
|
||||||
createFinancePayment: async (data: FinancePaymentVO) => {
|
|
||||||
return await request.post({ url: `/erp/finance-payment/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改付款单
|
|
||||||
updateFinancePayment: async (data: FinancePaymentVO) => {
|
|
||||||
return await request.put({ url: `/erp/finance-payment/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新付款单的状态
|
|
||||||
updateFinancePaymentStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/finance-payment/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除付款单
|
|
||||||
deleteFinancePayment: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/finance-payment/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出付款单 Excel
|
|
||||||
exportFinancePayment: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/finance-payment/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,61 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 收款单 VO
|
|
||||||
export interface FinanceReceiptVO {
|
|
||||||
id: number // 收款单编号
|
|
||||||
no: string // 收款单号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
receiptTime: Date // 收款时间
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 收款单 API
|
|
||||||
export const FinanceReceiptApi = {
|
|
||||||
// 查询收款单分页
|
|
||||||
getFinanceReceiptPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/finance-receipt/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询收款单详情
|
|
||||||
getFinanceReceipt: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/finance-receipt/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增收款单
|
|
||||||
createFinanceReceipt: async (data: FinanceReceiptVO) => {
|
|
||||||
return await request.post({ url: `/erp/finance-receipt/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改收款单
|
|
||||||
updateFinanceReceipt: async (data: FinanceReceiptVO) => {
|
|
||||||
return await request.put({ url: `/erp/finance-receipt/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新收款单的状态
|
|
||||||
updateFinanceReceiptStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/finance-receipt/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除收款单
|
|
||||||
deleteFinanceReceipt: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/finance-receipt/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出收款单 Excel
|
|
||||||
exportFinanceReceipt: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/finance-receipt/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,49 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 产品分类 VO
|
|
||||||
export interface ProductCategoryVO {
|
|
||||||
id: number // 分类编号
|
|
||||||
parentId: number // 父分类编号
|
|
||||||
name: string // 分类名称
|
|
||||||
code: string // 分类编码
|
|
||||||
sort: number // 分类排序
|
|
||||||
status: number // 开启状态
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 产品分类 API
|
|
||||||
export const ProductCategoryApi = {
|
|
||||||
// 查询产品分类列表
|
|
||||||
getProductCategoryList: async () => {
|
|
||||||
return await request.get({ url: `/erp/product-category/list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品分类精简列表
|
|
||||||
getProductCategorySimpleList: async () => {
|
|
||||||
return await request.get({ url: `/erp/product-category/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品分类详情
|
|
||||||
getProductCategory: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/product-category/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增产品分类
|
|
||||||
createProductCategory: async (data: ProductCategoryVO) => {
|
|
||||||
return await request.post({ url: `/erp/product-category/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改产品分类
|
|
||||||
updateProductCategory: async (data: ProductCategoryVO) => {
|
|
||||||
return await request.put({ url: `/erp/product-category/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除产品分类
|
|
||||||
deleteProductCategory: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/erp/product-category/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出产品分类 Excel
|
|
||||||
exportProductCategory: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/product-category/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,57 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 产品 VO
|
|
||||||
export interface ProductVO {
|
|
||||||
id: number // 产品编号
|
|
||||||
name: string // 产品名称
|
|
||||||
barCode: string // 产品条码
|
|
||||||
categoryId: number // 产品类型编号
|
|
||||||
unitId: number // 单位编号
|
|
||||||
unitName?: string // 单位名字
|
|
||||||
status: number // 产品状态
|
|
||||||
standard: string // 产品规格
|
|
||||||
remark: string // 产品备注
|
|
||||||
expiryDay: number // 保质期天数
|
|
||||||
weight: number // 重量(kg)
|
|
||||||
purchasePrice: number // 采购价格,单位:元
|
|
||||||
salePrice: number // 销售价格,单位:元
|
|
||||||
minPrice: number // 最低价格,单位:元
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 产品 API
|
|
||||||
export const ProductApi = {
|
|
||||||
// 查询产品分页
|
|
||||||
getProductPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/product/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品精简列表
|
|
||||||
getProductSimpleList: async () => {
|
|
||||||
return await request.get({ url: `/erp/product/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品详情
|
|
||||||
getProduct: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/product/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增产品
|
|
||||||
createProduct: async (data: ProductVO) => {
|
|
||||||
return await request.post({ url: `/erp/product/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改产品
|
|
||||||
updateProduct: async (data: ProductVO) => {
|
|
||||||
return await request.put({ url: `/erp/product/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除产品
|
|
||||||
deleteProduct: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/erp/product/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出产品 Excel
|
|
||||||
exportProduct: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/product/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,46 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 产品单位 VO
|
|
||||||
export interface ProductUnitVO {
|
|
||||||
id: number // 单位编号
|
|
||||||
name: string // 单位名字
|
|
||||||
status: number // 单位状态
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 产品单位 API
|
|
||||||
export const ProductUnitApi = {
|
|
||||||
// 查询产品单位分页
|
|
||||||
getProductUnitPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/product-unit/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品单位精简列表
|
|
||||||
getProductUnitSimpleList: async () => {
|
|
||||||
return await request.get({ url: `/erp/product-unit/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品单位详情
|
|
||||||
getProductUnit: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/product-unit/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增产品单位
|
|
||||||
createProductUnit: async (data: ProductUnitVO) => {
|
|
||||||
return await request.post({ url: `/erp/product-unit/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改产品单位
|
|
||||||
updateProductUnit: async (data: ProductUnitVO) => {
|
|
||||||
return await request.put({ url: `/erp/product-unit/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除产品单位
|
|
||||||
deleteProductUnit: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/erp/product-unit/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出产品单位 Excel
|
|
||||||
exportProductUnit: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/product-unit/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,64 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 采购入库 VO
|
|
||||||
export interface PurchaseInVO {
|
|
||||||
id: number // 入库工单编号
|
|
||||||
no: string // 采购入库号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
inTime: Date // 入库时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
outCount: number // 采购出库数量
|
|
||||||
returnCount: number // 采购退货数量
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 采购入库 API
|
|
||||||
export const PurchaseInApi = {
|
|
||||||
// 查询采购入库分页
|
|
||||||
getPurchaseInPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/purchase-in/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询采购入库详情
|
|
||||||
getPurchaseIn: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/purchase-in/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增采购入库
|
|
||||||
createPurchaseIn: async (data: PurchaseInVO) => {
|
|
||||||
return await request.post({ url: `/erp/purchase-in/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改采购入库
|
|
||||||
updatePurchaseIn: async (data: PurchaseInVO) => {
|
|
||||||
return await request.put({ url: `/erp/purchase-in/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新采购入库的状态
|
|
||||||
updatePurchaseInStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/purchase-in/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除采购入库
|
|
||||||
deletePurchaseIn: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/purchase-in/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出采购入库 Excel
|
|
||||||
exportPurchaseIn: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/purchase-in/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,64 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 采购订单 VO
|
|
||||||
export interface PurchaseOrderVO {
|
|
||||||
id: number // 订单工单编号
|
|
||||||
no: string // 采购订单号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
orderTime: Date // 订单时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
outCount: number // 采购出库数量
|
|
||||||
returnCount: number // 采购退货数量
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 采购订单 API
|
|
||||||
export const PurchaseOrderApi = {
|
|
||||||
// 查询采购订单分页
|
|
||||||
getPurchaseOrderPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/purchase-order/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询采购订单详情
|
|
||||||
getPurchaseOrder: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/purchase-order/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增采购订单
|
|
||||||
createPurchaseOrder: async (data: PurchaseOrderVO) => {
|
|
||||||
return await request.post({ url: `/erp/purchase-order/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改采购订单
|
|
||||||
updatePurchaseOrder: async (data: PurchaseOrderVO) => {
|
|
||||||
return await request.put({ url: `/erp/purchase-order/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新采购订单的状态
|
|
||||||
updatePurchaseOrderStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/purchase-order/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除采购订单
|
|
||||||
deletePurchaseOrder: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/purchase-order/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出采购订单 Excel
|
|
||||||
exportPurchaseOrder: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/purchase-order/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,62 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 采购退货 VO
|
|
||||||
export interface PurchaseReturnVO {
|
|
||||||
id: number // 采购退货编号
|
|
||||||
no: string // 采购退货号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
returnTime: Date // 退货时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 采购退货 API
|
|
||||||
export const PurchaseReturnApi = {
|
|
||||||
// 查询采购退货分页
|
|
||||||
getPurchaseReturnPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/purchase-return/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询采购退货详情
|
|
||||||
getPurchaseReturn: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/purchase-return/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增采购退货
|
|
||||||
createPurchaseReturn: async (data: PurchaseReturnVO) => {
|
|
||||||
return await request.post({ url: `/erp/purchase-return/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改采购退货
|
|
||||||
updatePurchaseReturn: async (data: PurchaseReturnVO) => {
|
|
||||||
return await request.put({ url: `/erp/purchase-return/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新采购退货的状态
|
|
||||||
updatePurchaseReturnStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/purchase-return/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除采购退货
|
|
||||||
deletePurchaseReturn: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/purchase-return/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出采购退货 Excel
|
|
||||||
exportPurchaseReturn: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/purchase-return/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,58 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 供应商 VO
|
|
||||||
export interface SupplierVO {
|
|
||||||
id: number // 供应商编号
|
|
||||||
name: string // 供应商名称
|
|
||||||
contact: string // 联系人
|
|
||||||
mobile: string // 手机号码
|
|
||||||
telephone: string // 联系电话
|
|
||||||
email: string // 电子邮箱
|
|
||||||
fax: string // 传真
|
|
||||||
remark: string // 备注
|
|
||||||
status: number // 开启状态
|
|
||||||
sort: number // 排序
|
|
||||||
taxNo: string // 纳税人识别号
|
|
||||||
taxPercent: number // 税率
|
|
||||||
bankName: string // 开户行
|
|
||||||
bankAccount: string // 开户账号
|
|
||||||
bankAddress: string // 开户地址
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 供应商 API
|
|
||||||
export const SupplierApi = {
|
|
||||||
// 查询供应商分页
|
|
||||||
getSupplierPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/supplier/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获得供应商精简列表
|
|
||||||
getSupplierSimpleList: async () => {
|
|
||||||
return await request.get({ url: `/erp/supplier/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询供应商详情
|
|
||||||
getSupplier: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/supplier/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增供应商
|
|
||||||
createSupplier: async (data: SupplierVO) => {
|
|
||||||
return await request.post({ url: `/erp/supplier/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改供应商
|
|
||||||
updateSupplier: async (data: SupplierVO) => {
|
|
||||||
return await request.put({ url: `/erp/supplier/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除供应商
|
|
||||||
deleteSupplier: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/erp/supplier/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出供应商 Excel
|
|
||||||
exportSupplier: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/supplier/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,58 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 客户 VO
|
|
||||||
export interface CustomerVO {
|
|
||||||
id: number // 客户编号
|
|
||||||
name: string // 客户名称
|
|
||||||
contact: string // 联系人
|
|
||||||
mobile: string // 手机号码
|
|
||||||
telephone: string // 联系电话
|
|
||||||
email: string // 电子邮箱
|
|
||||||
fax: string // 传真
|
|
||||||
remark: string // 备注
|
|
||||||
status: number // 开启状态
|
|
||||||
sort: number // 排序
|
|
||||||
taxNo: string // 纳税人识别号
|
|
||||||
taxPercent: number // 税率
|
|
||||||
bankName: string // 开户行
|
|
||||||
bankAccount: string // 开户账号
|
|
||||||
bankAddress: string // 开户地址
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 客户 API
|
|
||||||
export const CustomerApi = {
|
|
||||||
// 查询客户分页
|
|
||||||
getCustomerPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/customer/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询客户精简列表
|
|
||||||
getCustomerSimpleList: async () => {
|
|
||||||
return await request.get({ url: `/erp/customer/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询客户详情
|
|
||||||
getCustomer: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/customer/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增客户
|
|
||||||
createCustomer: async (data: CustomerVO) => {
|
|
||||||
return await request.post({ url: `/erp/customer/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改客户
|
|
||||||
updateCustomer: async (data: CustomerVO) => {
|
|
||||||
return await request.put({ url: `/erp/customer/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除客户
|
|
||||||
deleteCustomer: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/erp/customer/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出客户 Excel
|
|
||||||
exportCustomer: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/customer/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,64 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 销售订单 VO
|
|
||||||
export interface SaleOrderVO {
|
|
||||||
id: number // 订单工单编号
|
|
||||||
no: string // 销售订单号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
orderTime: Date // 订单时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
outCount: number // 销售出库数量
|
|
||||||
returnCount: number // 销售退货数量
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 销售订单 API
|
|
||||||
export const SaleOrderApi = {
|
|
||||||
// 查询销售订单分页
|
|
||||||
getSaleOrderPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/sale-order/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询销售订单详情
|
|
||||||
getSaleOrder: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/sale-order/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增销售订单
|
|
||||||
createSaleOrder: async (data: SaleOrderVO) => {
|
|
||||||
return await request.post({ url: `/erp/sale-order/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改销售订单
|
|
||||||
updateSaleOrder: async (data: SaleOrderVO) => {
|
|
||||||
return await request.put({ url: `/erp/sale-order/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新销售订单的状态
|
|
||||||
updateSaleOrderStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/sale-order/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除销售订单
|
|
||||||
deleteSaleOrder: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/sale-order/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出销售订单 Excel
|
|
||||||
exportSaleOrder: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/sale-order/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,62 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 销售出库 VO
|
|
||||||
export interface SaleOutVO {
|
|
||||||
id: number // 销售出库编号
|
|
||||||
no: string // 销售出库号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
outTime: Date // 出库时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 销售出库 API
|
|
||||||
export const SaleOutApi = {
|
|
||||||
// 查询销售出库分页
|
|
||||||
getSaleOutPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/sale-out/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询销售出库详情
|
|
||||||
getSaleOut: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/sale-out/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增销售出库
|
|
||||||
createSaleOut: async (data: SaleOutVO) => {
|
|
||||||
return await request.post({ url: `/erp/sale-out/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改销售出库
|
|
||||||
updateSaleOut: async (data: SaleOutVO) => {
|
|
||||||
return await request.put({ url: `/erp/sale-out/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新销售出库的状态
|
|
||||||
updateSaleOutStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/sale-out/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除销售出库
|
|
||||||
deleteSaleOut: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/sale-out/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出销售出库 Excel
|
|
||||||
exportSaleOut: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/sale-out/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,62 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 销售退货 VO
|
|
||||||
export interface SaleReturnVO {
|
|
||||||
id: number // 销售退货编号
|
|
||||||
no: string // 销售退货号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
returnTime: Date // 退货时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 销售退货 API
|
|
||||||
export const SaleReturnApi = {
|
|
||||||
// 查询销售退货分页
|
|
||||||
getSaleReturnPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/sale-return/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询销售退货详情
|
|
||||||
getSaleReturn: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/sale-return/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增销售退货
|
|
||||||
createSaleReturn: async (data: SaleReturnVO) => {
|
|
||||||
return await request.post({ url: `/erp/sale-return/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改销售退货
|
|
||||||
updateSaleReturn: async (data: SaleReturnVO) => {
|
|
||||||
return await request.put({ url: `/erp/sale-return/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新销售退货的状态
|
|
||||||
updateSaleReturnStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/sale-return/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除销售退货
|
|
||||||
deleteSaleReturn: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/sale-return/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出销售退货 Excel
|
|
||||||
exportSaleReturn: async (params: any) => {
|
|
||||||
return await request.download({ url: `/erp/sale-return/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 采购全局统计 VO
|
|
||||||
export interface ErpPurchaseSummaryRespVO {
|
|
||||||
todayPrice: number // 今日采购金额
|
|
||||||
yesterdayPrice: number // 昨日采购金额
|
|
||||||
monthPrice: number // 本月采购金额
|
|
||||||
yearPrice: number // 今年采购金额
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 采购时间段统计 VO
|
|
||||||
export interface ErpPurchaseTimeSummaryRespVO {
|
|
||||||
time: string // 时间
|
|
||||||
price: number // 采购金额
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 采购统计 API
|
|
||||||
export const PurchaseStatisticsApi = {
|
|
||||||
// 获得采购统计
|
|
||||||
getPurchaseSummary: async (): Promise<ErpPurchaseSummaryRespVO> => {
|
|
||||||
return await request.get({ url: `/erp/purchase-statistics/summary` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获得采购时间段统计
|
|
||||||
getPurchaseTimeSummary: async (): Promise<ErpPurchaseTimeSummaryRespVO[]> => {
|
|
||||||
return await request.get({ url: `/erp/purchase-statistics/time-summary` })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 销售全局统计 VO
|
|
||||||
export interface ErpSaleSummaryRespVO {
|
|
||||||
todayPrice: number // 今日销售金额
|
|
||||||
yesterdayPrice: number // 昨日销售金额
|
|
||||||
monthPrice: number // 本月销售金额
|
|
||||||
yearPrice: number // 今年销售金额
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 销售时间段统计 VO
|
|
||||||
export interface ErpSaleTimeSummaryRespVO {
|
|
||||||
time: string // 时间
|
|
||||||
price: number // 销售金额
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 销售统计 API
|
|
||||||
export const SaleStatisticsApi = {
|
|
||||||
// 获得销售统计
|
|
||||||
getSaleSummary: async (): Promise<ErpSaleSummaryRespVO> => {
|
|
||||||
return await request.get({ url: `/erp/sale-statistics/summary` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获得销售时间段统计
|
|
||||||
getSaleTimeSummary: async (): Promise<ErpSaleTimeSummaryRespVO[]> => {
|
|
||||||
return await request.get({ url: `/erp/sale-statistics/time-summary` })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,61 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 库存盘点单 VO
|
|
||||||
export interface StockCheckVO {
|
|
||||||
id: number // 出库编号
|
|
||||||
no: string // 出库单号
|
|
||||||
outTime: Date // 出库时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 库存盘点单 API
|
|
||||||
export const StockCheckApi = {
|
|
||||||
// 查询库存盘点单分页
|
|
||||||
getStockCheckPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/stock-check/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询库存盘点单详情
|
|
||||||
getStockCheck: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock-check/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增库存盘点单
|
|
||||||
createStockCheck: async (data: StockCheckVO) => {
|
|
||||||
return await request.post({ url: `/erp/stock-check/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改库存盘点单
|
|
||||||
updateStockCheck: async (data: StockCheckVO) => {
|
|
||||||
return await request.put({ url: `/erp/stock-check/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新库存盘点单的状态
|
|
||||||
updateStockCheckStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/stock-check/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除库存盘点单
|
|
||||||
deleteStockCheck: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/stock-check/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出库存盘点单 Excel
|
|
||||||
exportStockCheck: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/stock-check/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,62 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 其它入库单 VO
|
|
||||||
export interface StockInVO {
|
|
||||||
id: number // 入库编号
|
|
||||||
no: string // 入库单号
|
|
||||||
supplierId: number // 供应商编号
|
|
||||||
inTime: Date // 入库时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 其它入库单 API
|
|
||||||
export const StockInApi = {
|
|
||||||
// 查询其它入库单分页
|
|
||||||
getStockInPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/stock-in/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询其它入库单详情
|
|
||||||
getStockIn: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock-in/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增其它入库单
|
|
||||||
createStockIn: async (data: StockInVO) => {
|
|
||||||
return await request.post({ url: `/erp/stock-in/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改其它入库单
|
|
||||||
updateStockIn: async (data: StockInVO) => {
|
|
||||||
return await request.put({ url: `/erp/stock-in/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新其它入库单的状态
|
|
||||||
updateStockInStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/stock-in/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除其它入库单
|
|
||||||
deleteStockIn: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/stock-in/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出其它入库单 Excel
|
|
||||||
exportStockIn: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/stock-in/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,61 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 库存调度单 VO
|
|
||||||
export interface StockMoveVO {
|
|
||||||
id: number // 出库编号
|
|
||||||
no: string // 出库单号
|
|
||||||
outTime: Date // 出库时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 库存调度单 API
|
|
||||||
export const StockMoveApi = {
|
|
||||||
// 查询库存调度单分页
|
|
||||||
getStockMovePage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/stock-move/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询库存调度单详情
|
|
||||||
getStockMove: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock-move/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增库存调度单
|
|
||||||
createStockMove: async (data: StockMoveVO) => {
|
|
||||||
return await request.post({ url: `/erp/stock-move/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改库存调度单
|
|
||||||
updateStockMove: async (data: StockMoveVO) => {
|
|
||||||
return await request.put({ url: `/erp/stock-move/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新库存调度单的状态
|
|
||||||
updateStockMoveStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/stock-move/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除库存调度单
|
|
||||||
deleteStockMove: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/stock-move/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出库存调度单 Excel
|
|
||||||
exportStockMove: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/stock-move/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,62 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 其它出库单 VO
|
|
||||||
export interface StockOutVO {
|
|
||||||
id: number // 出库编号
|
|
||||||
no: string // 出库单号
|
|
||||||
customerId: number // 客户编号
|
|
||||||
outTime: Date // 出库时间
|
|
||||||
totalCount: number // 合计数量
|
|
||||||
totalPrice: number // 合计金额,单位:元
|
|
||||||
status: number // 状态
|
|
||||||
remark: string // 备注
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 其它出库单 API
|
|
||||||
export const StockOutApi = {
|
|
||||||
// 查询其它出库单分页
|
|
||||||
getStockOutPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/stock-out/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询其它出库单详情
|
|
||||||
getStockOut: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock-out/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增其它出库单
|
|
||||||
createStockOut: async (data: StockOutVO) => {
|
|
||||||
return await request.post({ url: `/erp/stock-out/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改其它出库单
|
|
||||||
updateStockOut: async (data: StockOutVO) => {
|
|
||||||
return await request.put({ url: `/erp/stock-out/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 更新其它出库单的状态
|
|
||||||
updateStockOutStatus: async (id: number, status: number) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/stock-out/update-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除其它出库单
|
|
||||||
deleteStockOut: async (ids: number[]) => {
|
|
||||||
return await request.delete({
|
|
||||||
url: `/erp/stock-out/delete`,
|
|
||||||
params: {
|
|
||||||
ids: ids.join(',')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出其它出库单 Excel
|
|
||||||
exportStockOut: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/stock-out/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 产品库存明细 VO
|
|
||||||
export interface StockRecordVO {
|
|
||||||
id: number // 编号
|
|
||||||
productId: number // 产品编号
|
|
||||||
warehouseId: number // 仓库编号
|
|
||||||
count: number // 出入库数量
|
|
||||||
totalCount: number // 总库存量
|
|
||||||
bizType: number // 业务类型
|
|
||||||
bizId: number // 业务编号
|
|
||||||
bizItemId: number // 业务项编号
|
|
||||||
bizNo: string // 业务单号
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 产品库存明细 API
|
|
||||||
export const StockRecordApi = {
|
|
||||||
// 查询产品库存明细分页
|
|
||||||
getStockRecordPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/stock-record/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品库存明细详情
|
|
||||||
getStockRecord: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock-record/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出产品库存明细 Excel
|
|
||||||
exportStockRecord: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/stock-record/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,41 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 产品库存 VO
|
|
||||||
export interface StockVO {
|
|
||||||
// 编号
|
|
||||||
id: number
|
|
||||||
// 产品编号
|
|
||||||
productId: number
|
|
||||||
// 仓库编号
|
|
||||||
warehouseId: number
|
|
||||||
// 库存数量
|
|
||||||
count: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 产品库存 API
|
|
||||||
export const StockApi = {
|
|
||||||
// 查询产品库存分页
|
|
||||||
getStockPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/stock/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品库存详情
|
|
||||||
getStock: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询产品库存详情
|
|
||||||
getStock2: async (productId: number, warehouseId: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock/get`, params: { productId, warehouseId } })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获得产品库存数量
|
|
||||||
getStockCount: async (productId: number) => {
|
|
||||||
return await request.get({ url: `/erp/stock/get-count`, params: { productId } })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出产品库存 Excel
|
|
||||||
exportStock: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/stock/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,64 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// ERP 仓库 VO
|
|
||||||
export interface WarehouseVO {
|
|
||||||
id: number // 仓库编号
|
|
||||||
name: string // 仓库名称
|
|
||||||
address: string // 仓库地址
|
|
||||||
sort: number // 排序
|
|
||||||
remark: string // 备注
|
|
||||||
principal: string // 负责人
|
|
||||||
warehousePrice: number // 仓储费,单位:元
|
|
||||||
truckagePrice: number // 搬运费,单位:元
|
|
||||||
status: number // 开启状态
|
|
||||||
defaultStatus: boolean // 是否默认
|
|
||||||
}
|
|
||||||
|
|
||||||
// ERP 仓库 API
|
|
||||||
export const WarehouseApi = {
|
|
||||||
// 查询仓库分页
|
|
||||||
getWarehousePage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/erp/warehouse/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询仓库精简列表
|
|
||||||
getWarehouseSimpleList: async () => {
|
|
||||||
return await request.get({ url: `/erp/warehouse/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询仓库详情
|
|
||||||
getWarehouse: async (id: number) => {
|
|
||||||
return await request.get({ url: `/erp/warehouse/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增仓库
|
|
||||||
createWarehouse: async (data: WarehouseVO) => {
|
|
||||||
return await request.post({ url: `/erp/warehouse/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改仓库
|
|
||||||
updateWarehouse: async (data: WarehouseVO) => {
|
|
||||||
return await request.put({ url: `/erp/warehouse/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改仓库默认状态
|
|
||||||
updateWarehouseDefaultStatus: async (id: number, defaultStatus: boolean) => {
|
|
||||||
return await request.put({
|
|
||||||
url: `/erp/warehouse/update-default-status`,
|
|
||||||
params: {
|
|
||||||
id,
|
|
||||||
defaultStatus
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除仓库
|
|
||||||
deleteWarehouse: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/erp/warehouse/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 导出仓库 Excel
|
|
||||||
exportWarehouse: async (params) => {
|
|
||||||
return await request.download({ url: `/erp/warehouse/export-excel`, params })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,34 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ApiAccessLogVO {
|
|
||||||
id: number
|
|
||||||
traceId: string
|
|
||||||
userId: number
|
|
||||||
userType: number
|
|
||||||
applicationName: string
|
|
||||||
requestMethod: string
|
|
||||||
requestParams: string
|
|
||||||
responseBody: string
|
|
||||||
requestUrl: string
|
|
||||||
userIp: string
|
|
||||||
userAgent: string
|
|
||||||
operateModule: string
|
|
||||||
operateName: string
|
|
||||||
operateType: number
|
|
||||||
beginTime: Date
|
|
||||||
endTime: Date
|
|
||||||
duration: number
|
|
||||||
resultCode: number
|
|
||||||
resultMsg: string
|
|
||||||
createTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询列表API 访问日志
|
|
||||||
export const getApiAccessLogPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/infra/api-access-log/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出API 访问日志
|
|
||||||
export const exportApiAccessLog = (params) => {
|
|
||||||
return request.download({ url: '/infra/api-access-log/export-excel', params })
|
|
||||||
}
|
|
|
@ -1,48 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ApiErrorLogVO {
|
|
||||||
id: number
|
|
||||||
traceId: string
|
|
||||||
userId: number
|
|
||||||
userType: number
|
|
||||||
applicationName: string
|
|
||||||
requestMethod: string
|
|
||||||
requestParams: string
|
|
||||||
requestUrl: string
|
|
||||||
userIp: string
|
|
||||||
userAgent: string
|
|
||||||
exceptionTime: Date
|
|
||||||
exceptionName: string
|
|
||||||
exceptionMessage: string
|
|
||||||
exceptionRootCauseMessage: string
|
|
||||||
exceptionStackTrace: string
|
|
||||||
exceptionClassName: string
|
|
||||||
exceptionFileName: string
|
|
||||||
exceptionMethodName: string
|
|
||||||
exceptionLineNumber: number
|
|
||||||
processUserId: number
|
|
||||||
processStatus: number
|
|
||||||
processTime: Date
|
|
||||||
resultCode: number
|
|
||||||
createTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询列表API 访问日志
|
|
||||||
export const getApiErrorLogPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/infra/api-error-log/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新 API 错误日志的处理状态
|
|
||||||
export const updateApiErrorLogPage = (id: number, processStatus: number) => {
|
|
||||||
return request.put({
|
|
||||||
url: '/infra/api-error-log/update-status?id=' + id + '&processStatus=' + processStatus
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出API 访问日志
|
|
||||||
export const exportApiErrorLog = (params) => {
|
|
||||||
return request.download({
|
|
||||||
url: '/infra/api-error-log/export-excel',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,122 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export type CodegenTableVO = {
|
|
||||||
id: number
|
|
||||||
tableId: number
|
|
||||||
isParentMenuIdValid: boolean
|
|
||||||
dataSourceConfigId: number
|
|
||||||
scene: number
|
|
||||||
tableName: string
|
|
||||||
tableComment: string
|
|
||||||
remark: string
|
|
||||||
moduleName: string
|
|
||||||
businessName: string
|
|
||||||
className: string
|
|
||||||
classComment: string
|
|
||||||
author: string
|
|
||||||
createTime: Date
|
|
||||||
updateTime: Date
|
|
||||||
templateType: number
|
|
||||||
parentMenuId: number
|
|
||||||
}
|
|
||||||
|
|
||||||
export type CodegenColumnVO = {
|
|
||||||
id: number
|
|
||||||
tableId: number
|
|
||||||
columnName: string
|
|
||||||
dataType: string
|
|
||||||
columnComment: string
|
|
||||||
nullable: number
|
|
||||||
primaryKey: number
|
|
||||||
ordinalPosition: number
|
|
||||||
javaType: string
|
|
||||||
javaField: string
|
|
||||||
dictType: string
|
|
||||||
example: string
|
|
||||||
createOperation: number
|
|
||||||
updateOperation: number
|
|
||||||
listOperation: number
|
|
||||||
listOperationCondition: string
|
|
||||||
listOperationResult: number
|
|
||||||
htmlType: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export type DatabaseTableVO = {
|
|
||||||
name: string
|
|
||||||
comment: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export type CodegenDetailVO = {
|
|
||||||
table: CodegenTableVO
|
|
||||||
columns: CodegenColumnVO[]
|
|
||||||
}
|
|
||||||
|
|
||||||
export type CodegenPreviewVO = {
|
|
||||||
filePath: string
|
|
||||||
code: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export type CodegenUpdateReqVO = {
|
|
||||||
table: CodegenTableVO | any
|
|
||||||
columns: CodegenColumnVO[]
|
|
||||||
}
|
|
||||||
|
|
||||||
export type CodegenCreateListReqVO = {
|
|
||||||
dataSourceConfigId: number
|
|
||||||
tableNames: string[]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询列表代码生成表定义
|
|
||||||
export const getCodegenTableList = (dataSourceConfigId: number) => {
|
|
||||||
return request.get({ url: '/infra/codegen/table/list?dataSourceConfigId=' + dataSourceConfigId })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询列表代码生成表定义
|
|
||||||
export const getCodegenTablePage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/infra/codegen/table/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询详情代码生成表定义
|
|
||||||
export const getCodegenTable = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/codegen/detail?tableId=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增代码生成表定义
|
|
||||||
export const createCodegenTable = (data: CodegenCreateListReqVO) => {
|
|
||||||
return request.post({ url: '/infra/codegen/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改代码生成表定义
|
|
||||||
export const updateCodegenTable = (data: CodegenUpdateReqVO) => {
|
|
||||||
return request.put({ url: '/infra/codegen/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 基于数据库的表结构,同步数据库的表和字段定义
|
|
||||||
export const syncCodegenFromDB = (id: number) => {
|
|
||||||
return request.put({ url: '/infra/codegen/sync-from-db?tableId=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 预览生成代码
|
|
||||||
export const previewCodegen = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/codegen/preview?tableId=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 下载生成代码
|
|
||||||
export const downloadCodegen = (id: number) => {
|
|
||||||
return request.download({ url: '/infra/codegen/download?tableId=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得表定义
|
|
||||||
export const getSchemaTableList = (params) => {
|
|
||||||
return request.get({ url: '/infra/codegen/db/table/list', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 基于数据库的表结构,创建代码生成器的表定义
|
|
||||||
export const createCodegenList = (data) => {
|
|
||||||
return request.post({ url: '/infra/codegen/create-list', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除代码生成表定义
|
|
||||||
export const deleteCodegenTable = (id: number) => {
|
|
||||||
return request.delete({ url: '/infra/codegen/delete?tableId=' + id })
|
|
||||||
}
|
|
|
@ -1,48 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ConfigVO {
|
|
||||||
id: number | undefined
|
|
||||||
category: string
|
|
||||||
name: string
|
|
||||||
key: string
|
|
||||||
value: string
|
|
||||||
type: number
|
|
||||||
visible: boolean
|
|
||||||
remark: string
|
|
||||||
createTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询参数列表
|
|
||||||
export const getConfigPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/infra/config/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询参数详情
|
|
||||||
export const getConfig = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/config/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 根据参数键名查询参数值
|
|
||||||
export const getConfigKey = (configKey: string) => {
|
|
||||||
return request.get({ url: '/infra/config/get-value-by-key?key=' + configKey })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增参数
|
|
||||||
export const createConfig = (data: ConfigVO) => {
|
|
||||||
return request.post({ url: '/infra/config/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改参数
|
|
||||||
export const updateConfig = (data: ConfigVO) => {
|
|
||||||
return request.put({ url: '/infra/config/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除参数
|
|
||||||
export const deleteConfig = (id: number) => {
|
|
||||||
return request.delete({ url: '/infra/config/delete?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出参数
|
|
||||||
export const exportConfig = (params) => {
|
|
||||||
return request.download({ url: '/infra/config/export', params })
|
|
||||||
}
|
|
|
@ -1,35 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface DataSourceConfigVO {
|
|
||||||
id: number | undefined
|
|
||||||
name: string
|
|
||||||
url: string
|
|
||||||
username: string
|
|
||||||
password: string
|
|
||||||
createTime?: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增数据源配置
|
|
||||||
export const createDataSourceConfig = (data: DataSourceConfigVO) => {
|
|
||||||
return request.post({ url: '/infra/data-source-config/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改数据源配置
|
|
||||||
export const updateDataSourceConfig = (data: DataSourceConfigVO) => {
|
|
||||||
return request.put({ url: '/infra/data-source-config/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除数据源配置
|
|
||||||
export const deleteDataSourceConfig = (id: number) => {
|
|
||||||
return request.delete({ url: '/infra/data-source-config/delete?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询数据源配置详情
|
|
||||||
export const getDataSourceConfig = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/data-source-config/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询数据源配置列表
|
|
||||||
export const getDataSourceConfigList = () => {
|
|
||||||
return request.get({ url: '/infra/data-source-config/list' })
|
|
||||||
}
|
|
|
@ -1,40 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface Demo01ContactVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
sex: number
|
|
||||||
birthday: Date
|
|
||||||
description: string
|
|
||||||
avatar: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询示例联系人分页
|
|
||||||
export const getDemo01ContactPage = async (params) => {
|
|
||||||
return await request.get({ url: `/infra/demo01-contact/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询示例联系人详情
|
|
||||||
export const getDemo01Contact = async (id: number) => {
|
|
||||||
return await request.get({ url: `/infra/demo01-contact/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增示例联系人
|
|
||||||
export const createDemo01Contact = async (data: Demo01ContactVO) => {
|
|
||||||
return await request.post({ url: `/infra/demo01-contact/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改示例联系人
|
|
||||||
export const updateDemo01Contact = async (data: Demo01ContactVO) => {
|
|
||||||
return await request.put({ url: `/infra/demo01-contact/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除示例联系人
|
|
||||||
export const deleteDemo01Contact = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/infra/demo01-contact/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出示例联系人 Excel
|
|
||||||
export const exportDemo01Contact = async (params) => {
|
|
||||||
return await request.download({ url: `/infra/demo01-contact/export-excel`, params })
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface Demo02CategoryVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
parentId: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询示例分类列表
|
|
||||||
export const getDemo02CategoryList = async () => {
|
|
||||||
return await request.get({ url: `/infra/demo02-category/list` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询示例分类详情
|
|
||||||
export const getDemo02Category = async (id: number) => {
|
|
||||||
return await request.get({ url: `/infra/demo02-category/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增示例分类
|
|
||||||
export const createDemo02Category = async (data: Demo02CategoryVO) => {
|
|
||||||
return await request.post({ url: `/infra/demo02-category/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改示例分类
|
|
||||||
export const updateDemo02Category = async (data: Demo02CategoryVO) => {
|
|
||||||
return await request.put({ url: `/infra/demo02-category/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除示例分类
|
|
||||||
export const deleteDemo02Category = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/infra/demo02-category/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出示例分类 Excel
|
|
||||||
export const exportDemo02Category = async (params) => {
|
|
||||||
return await request.download({ url: `/infra/demo02-category/export-excel`, params })
|
|
||||||
}
|
|
|
@ -1,91 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface Demo03StudentVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
sex: number
|
|
||||||
birthday: Date
|
|
||||||
description: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询学生分页
|
|
||||||
export const getDemo03StudentPage = async (params) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询学生详情
|
|
||||||
export const getDemo03Student = async (id: number) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增学生
|
|
||||||
export const createDemo03Student = async (data: Demo03StudentVO) => {
|
|
||||||
return await request.post({ url: `/infra/demo03-student/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改学生
|
|
||||||
export const updateDemo03Student = async (data: Demo03StudentVO) => {
|
|
||||||
return await request.put({ url: `/infra/demo03-student/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除学生
|
|
||||||
export const deleteDemo03Student = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/infra/demo03-student/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出学生 Excel
|
|
||||||
export const exportDemo03Student = async (params) => {
|
|
||||||
return await request.download({ url: `/infra/demo03-student/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// ==================== 子表(学生课程) ====================
|
|
||||||
|
|
||||||
// 获得学生课程分页
|
|
||||||
export const getDemo03CoursePage = async (params) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/demo03-course/page`, params })
|
|
||||||
}
|
|
||||||
// 新增学生课程
|
|
||||||
export const createDemo03Course = async (data) => {
|
|
||||||
return await request.post({ url: `/infra/demo03-student/demo03-course/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改学生课程
|
|
||||||
export const updateDemo03Course = async (data) => {
|
|
||||||
return await request.put({ url: `/infra/demo03-student/demo03-course/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除学生课程
|
|
||||||
export const deleteDemo03Course = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/infra/demo03-student/demo03-course/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得学生课程
|
|
||||||
export const getDemo03Course = async (id: number) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/demo03-course/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// ==================== 子表(学生班级) ====================
|
|
||||||
|
|
||||||
// 获得学生班级分页
|
|
||||||
export const getDemo03GradePage = async (params) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/demo03-grade/page`, params })
|
|
||||||
}
|
|
||||||
// 新增学生班级
|
|
||||||
export const createDemo03Grade = async (data) => {
|
|
||||||
return await request.post({ url: `/infra/demo03-student/demo03-grade/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改学生班级
|
|
||||||
export const updateDemo03Grade = async (data) => {
|
|
||||||
return await request.put({ url: `/infra/demo03-student/demo03-grade/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除学生班级
|
|
||||||
export const deleteDemo03Grade = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/infra/demo03-student/demo03-grade/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得学生班级
|
|
||||||
export const getDemo03Grade = async (id: number) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/demo03-grade/get?id=` + id })
|
|
||||||
}
|
|
|
@ -1,57 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface Demo03StudentVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
sex: number
|
|
||||||
birthday: Date
|
|
||||||
description: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询学生分页
|
|
||||||
export const getDemo03StudentPage = async (params) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询学生详情
|
|
||||||
export const getDemo03Student = async (id: number) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增学生
|
|
||||||
export const createDemo03Student = async (data: Demo03StudentVO) => {
|
|
||||||
return await request.post({ url: `/infra/demo03-student/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改学生
|
|
||||||
export const updateDemo03Student = async (data: Demo03StudentVO) => {
|
|
||||||
return await request.put({ url: `/infra/demo03-student/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除学生
|
|
||||||
export const deleteDemo03Student = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/infra/demo03-student/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出学生 Excel
|
|
||||||
export const exportDemo03Student = async (params) => {
|
|
||||||
return await request.download({ url: `/infra/demo03-student/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// ==================== 子表(学生课程) ====================
|
|
||||||
|
|
||||||
// 获得学生课程列表
|
|
||||||
export const getDemo03CourseListByStudentId = async (studentId) => {
|
|
||||||
return await request.get({
|
|
||||||
url: `/infra/demo03-student/demo03-course/list-by-student-id?studentId=` + studentId
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// ==================== 子表(学生班级) ====================
|
|
||||||
|
|
||||||
// 获得学生班级
|
|
||||||
export const getDemo03GradeByStudentId = async (studentId) => {
|
|
||||||
return await request.get({
|
|
||||||
url: `/infra/demo03-student/demo03-grade/get-by-student-id?studentId=` + studentId
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,57 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface Demo03StudentVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
sex: number
|
|
||||||
birthday: Date
|
|
||||||
description: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询学生分页
|
|
||||||
export const getDemo03StudentPage = async (params) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询学生详情
|
|
||||||
export const getDemo03Student = async (id: number) => {
|
|
||||||
return await request.get({ url: `/infra/demo03-student/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增学生
|
|
||||||
export const createDemo03Student = async (data: Demo03StudentVO) => {
|
|
||||||
return await request.post({ url: `/infra/demo03-student/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改学生
|
|
||||||
export const updateDemo03Student = async (data: Demo03StudentVO) => {
|
|
||||||
return await request.put({ url: `/infra/demo03-student/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除学生
|
|
||||||
export const deleteDemo03Student = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/infra/demo03-student/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出学生 Excel
|
|
||||||
export const exportDemo03Student = async (params) => {
|
|
||||||
return await request.download({ url: `/infra/demo03-student/export-excel`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// ==================== 子表(学生课程) ====================
|
|
||||||
|
|
||||||
// 获得学生课程列表
|
|
||||||
export const getDemo03CourseListByStudentId = async (studentId) => {
|
|
||||||
return await request.get({
|
|
||||||
url: `/infra/demo03-student/demo03-course/list-by-student-id?studentId=` + studentId
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// ==================== 子表(学生班级) ====================
|
|
||||||
|
|
||||||
// 获得学生班级
|
|
||||||
export const getDemo03GradeByStudentId = async (studentId) => {
|
|
||||||
return await request.get({
|
|
||||||
url: `/infra/demo03-student/demo03-grade/get-by-student-id?studentId=` + studentId
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,61 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface FileClientConfig {
|
|
||||||
basePath: string
|
|
||||||
host?: string
|
|
||||||
port?: number
|
|
||||||
username?: string
|
|
||||||
password?: string
|
|
||||||
mode?: string
|
|
||||||
endpoint?: string
|
|
||||||
bucket?: string
|
|
||||||
accessKey?: string
|
|
||||||
accessSecret?: string
|
|
||||||
domain: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface FileConfigVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
storage?: number
|
|
||||||
master: boolean
|
|
||||||
visible: boolean
|
|
||||||
config: FileClientConfig
|
|
||||||
remark: string
|
|
||||||
createTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询文件配置列表
|
|
||||||
export const getFileConfigPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/infra/file-config/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询文件配置详情
|
|
||||||
export const getFileConfig = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/file-config/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新文件配置为主配置
|
|
||||||
export const updateFileConfigMaster = (id: number) => {
|
|
||||||
return request.put({ url: '/infra/file-config/update-master?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增文件配置
|
|
||||||
export const createFileConfig = (data: FileConfigVO) => {
|
|
||||||
return request.post({ url: '/infra/file-config/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改文件配置
|
|
||||||
export const updateFileConfig = (data: FileConfigVO) => {
|
|
||||||
return request.put({ url: '/infra/file-config/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除文件配置
|
|
||||||
export const deleteFileConfig = (id: number) => {
|
|
||||||
return request.delete({ url: '/infra/file-config/delete?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 测试文件配置
|
|
||||||
export const testFileConfig = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/file-config/test?id=' + id })
|
|
||||||
}
|
|
|
@ -1,63 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface JobVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
status: number
|
|
||||||
handlerName: string
|
|
||||||
handlerParam: string
|
|
||||||
cronExpression: string
|
|
||||||
retryCount: number
|
|
||||||
retryInterval: number
|
|
||||||
monitorTimeout: number
|
|
||||||
createTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 任务列表
|
|
||||||
export const getJobPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/infra/job/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 任务详情
|
|
||||||
export const getJob = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/job/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增任务
|
|
||||||
export const createJob = (data: JobVO) => {
|
|
||||||
return request.post({ url: '/infra/job/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改定时任务调度
|
|
||||||
export const updateJob = (data: JobVO) => {
|
|
||||||
return request.put({ url: '/infra/job/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除定时任务调度
|
|
||||||
export const deleteJob = (id: number) => {
|
|
||||||
return request.delete({ url: '/infra/job/delete?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出定时任务调度
|
|
||||||
export const exportJob = (params) => {
|
|
||||||
return request.download({ url: '/infra/job/export-excel', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 任务状态修改
|
|
||||||
export const updateJobStatus = (id: number, status: number) => {
|
|
||||||
const params = {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
return request.put({ url: '/infra/job/update-status', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 定时任务立即执行一次
|
|
||||||
export const runJob = (id: number) => {
|
|
||||||
return request.put({ url: '/infra/job/trigger?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得定时任务的下 n 次执行时间
|
|
||||||
export const getJobNextTimes = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/job/get_next_times?id=' + id })
|
|
||||||
}
|
|
|
@ -1,33 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface JobLogVO {
|
|
||||||
id: number
|
|
||||||
jobId: number
|
|
||||||
handlerName: string
|
|
||||||
handlerParam: string
|
|
||||||
cronExpression: string
|
|
||||||
executeIndex: string
|
|
||||||
beginTime: Date
|
|
||||||
endTime: Date
|
|
||||||
duration: string
|
|
||||||
status: number
|
|
||||||
createTime: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 任务日志列表
|
|
||||||
export const getJobLogPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/infra/job-log/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 任务日志详情
|
|
||||||
export const getJobLog = (id: number) => {
|
|
||||||
return request.get({ url: '/infra/job-log/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出定时任务日志
|
|
||||||
export const exportJobLog = (params) => {
|
|
||||||
return request.download({
|
|
||||||
url: '/infra/job-log/export-excel',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取redis 监控信息
|
|
||||||
*/
|
|
||||||
export const getCache = () => {
|
|
||||||
return request.get({ url: '/infra/redis/get-monitor-info' })
|
|
||||||
}
|
|
|
@ -1,176 +0,0 @@
|
||||||
export interface RedisMonitorInfoVO {
|
|
||||||
info: RedisInfoVO
|
|
||||||
dbSize: number
|
|
||||||
commandStats: RedisCommandStatsVO[]
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface RedisInfoVO {
|
|
||||||
io_threaded_reads_processed: string
|
|
||||||
tracking_clients: string
|
|
||||||
uptime_in_seconds: string
|
|
||||||
cluster_connections: string
|
|
||||||
current_cow_size: string
|
|
||||||
maxmemory_human: string
|
|
||||||
aof_last_cow_size: string
|
|
||||||
master_replid2: string
|
|
||||||
mem_replication_backlog: string
|
|
||||||
aof_rewrite_scheduled: string
|
|
||||||
total_net_input_bytes: string
|
|
||||||
rss_overhead_ratio: string
|
|
||||||
hz: string
|
|
||||||
current_cow_size_age: string
|
|
||||||
redis_build_id: string
|
|
||||||
errorstat_BUSYGROUP: string
|
|
||||||
aof_last_bgrewrite_status: string
|
|
||||||
multiplexing_api: string
|
|
||||||
client_recent_max_output_buffer: string
|
|
||||||
allocator_resident: string
|
|
||||||
mem_fragmentation_bytes: string
|
|
||||||
aof_current_size: string
|
|
||||||
repl_backlog_first_byte_offset: string
|
|
||||||
tracking_total_prefixes: string
|
|
||||||
redis_mode: string
|
|
||||||
redis_git_dirty: string
|
|
||||||
aof_delayed_fsync: string
|
|
||||||
allocator_rss_bytes: string
|
|
||||||
repl_backlog_histlen: string
|
|
||||||
io_threads_active: string
|
|
||||||
rss_overhead_bytes: string
|
|
||||||
total_system_memory: string
|
|
||||||
loading: string
|
|
||||||
evicted_keys: string
|
|
||||||
maxclients: string
|
|
||||||
cluster_enabled: string
|
|
||||||
redis_version: string
|
|
||||||
repl_backlog_active: string
|
|
||||||
mem_aof_buffer: string
|
|
||||||
allocator_frag_bytes: string
|
|
||||||
io_threaded_writes_processed: string
|
|
||||||
instantaneous_ops_per_sec: string
|
|
||||||
used_memory_human: string
|
|
||||||
total_error_replies: string
|
|
||||||
role: string
|
|
||||||
maxmemory: string
|
|
||||||
used_memory_lua: string
|
|
||||||
rdb_current_bgsave_time_sec: string
|
|
||||||
used_memory_startup: string
|
|
||||||
used_cpu_sys_main_thread: string
|
|
||||||
lazyfree_pending_objects: string
|
|
||||||
aof_pending_bio_fsync: string
|
|
||||||
used_memory_dataset_perc: string
|
|
||||||
allocator_frag_ratio: string
|
|
||||||
arch_bits: string
|
|
||||||
used_cpu_user_main_thread: string
|
|
||||||
mem_clients_normal: string
|
|
||||||
expired_time_cap_reached_count: string
|
|
||||||
unexpected_error_replies: string
|
|
||||||
mem_fragmentation_ratio: string
|
|
||||||
aof_last_rewrite_time_sec: string
|
|
||||||
master_replid: string
|
|
||||||
aof_rewrite_in_progress: string
|
|
||||||
lru_clock: string
|
|
||||||
maxmemory_policy: string
|
|
||||||
run_id: string
|
|
||||||
latest_fork_usec: string
|
|
||||||
tracking_total_items: string
|
|
||||||
total_commands_processed: string
|
|
||||||
expired_keys: string
|
|
||||||
errorstat_ERR: string
|
|
||||||
used_memory: string
|
|
||||||
module_fork_in_progress: string
|
|
||||||
errorstat_WRONGPASS: string
|
|
||||||
aof_buffer_length: string
|
|
||||||
dump_payload_sanitizations: string
|
|
||||||
mem_clients_slaves: string
|
|
||||||
keyspace_misses: string
|
|
||||||
server_time_usec: string
|
|
||||||
executable: string
|
|
||||||
lazyfreed_objects: string
|
|
||||||
db0: string
|
|
||||||
used_memory_peak_human: string
|
|
||||||
keyspace_hits: string
|
|
||||||
rdb_last_cow_size: string
|
|
||||||
aof_pending_rewrite: string
|
|
||||||
used_memory_overhead: string
|
|
||||||
active_defrag_hits: string
|
|
||||||
tcp_port: string
|
|
||||||
uptime_in_days: string
|
|
||||||
used_memory_peak_perc: string
|
|
||||||
current_save_keys_processed: string
|
|
||||||
blocked_clients: string
|
|
||||||
total_reads_processed: string
|
|
||||||
expire_cycle_cpu_milliseconds: string
|
|
||||||
sync_partial_err: string
|
|
||||||
used_memory_scripts_human: string
|
|
||||||
aof_current_rewrite_time_sec: string
|
|
||||||
aof_enabled: string
|
|
||||||
process_supervised: string
|
|
||||||
master_repl_offset: string
|
|
||||||
used_memory_dataset: string
|
|
||||||
used_cpu_user: string
|
|
||||||
rdb_last_bgsave_status: string
|
|
||||||
tracking_total_keys: string
|
|
||||||
atomicvar_api: string
|
|
||||||
allocator_rss_ratio: string
|
|
||||||
client_recent_max_input_buffer: string
|
|
||||||
clients_in_timeout_table: string
|
|
||||||
aof_last_write_status: string
|
|
||||||
mem_allocator: string
|
|
||||||
used_memory_scripts: string
|
|
||||||
used_memory_peak: string
|
|
||||||
process_id: string
|
|
||||||
master_failover_state: string
|
|
||||||
errorstat_NOAUTH: string
|
|
||||||
used_cpu_sys: string
|
|
||||||
repl_backlog_size: string
|
|
||||||
connected_slaves: string
|
|
||||||
current_save_keys_total: string
|
|
||||||
gcc_version: string
|
|
||||||
total_system_memory_human: string
|
|
||||||
sync_full: string
|
|
||||||
connected_clients: string
|
|
||||||
module_fork_last_cow_size: string
|
|
||||||
total_writes_processed: string
|
|
||||||
allocator_active: string
|
|
||||||
total_net_output_bytes: string
|
|
||||||
pubsub_channels: string
|
|
||||||
current_fork_perc: string
|
|
||||||
active_defrag_key_hits: string
|
|
||||||
rdb_changes_since_last_save: string
|
|
||||||
instantaneous_input_kbps: string
|
|
||||||
used_memory_rss_human: string
|
|
||||||
configured_hz: string
|
|
||||||
expired_stale_perc: string
|
|
||||||
active_defrag_misses: string
|
|
||||||
used_cpu_sys_children: string
|
|
||||||
number_of_cached_scripts: string
|
|
||||||
sync_partial_ok: string
|
|
||||||
used_memory_lua_human: string
|
|
||||||
rdb_last_save_time: string
|
|
||||||
pubsub_patterns: string
|
|
||||||
slave_expires_tracked_keys: string
|
|
||||||
redis_git_sha1: string
|
|
||||||
used_memory_rss: string
|
|
||||||
rdb_last_bgsave_time_sec: string
|
|
||||||
os: string
|
|
||||||
mem_not_counted_for_evict: string
|
|
||||||
active_defrag_running: string
|
|
||||||
rejected_connections: string
|
|
||||||
aof_rewrite_buffer_length: string
|
|
||||||
total_forks: string
|
|
||||||
active_defrag_key_misses: string
|
|
||||||
allocator_allocated: string
|
|
||||||
aof_base_size: string
|
|
||||||
instantaneous_output_kbps: string
|
|
||||||
second_repl_offset: string
|
|
||||||
rdb_bgsave_in_progress: string
|
|
||||||
used_cpu_user_children: string
|
|
||||||
total_connections_received: string
|
|
||||||
migrate_cached_sockets: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface RedisCommandStatsVO {
|
|
||||||
command: string
|
|
||||||
calls: number
|
|
||||||
usec: number
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface BannerVO {
|
|
||||||
id: number
|
|
||||||
title: string
|
|
||||||
picUrl: string
|
|
||||||
status: number
|
|
||||||
url: string
|
|
||||||
position: number
|
|
||||||
sort: number
|
|
||||||
memo: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询Banner管理列表
|
|
||||||
export const getBannerPage = async (params) => {
|
|
||||||
return await request.get({ url: `/promotion/banner/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询Banner管理详情
|
|
||||||
export const getBanner = async (id: number) => {
|
|
||||||
return await request.get({ url: `/promotion/banner/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增Banner管理
|
|
||||||
export const createBanner = async (data: BannerVO) => {
|
|
||||||
return await request.post({ url: `/promotion/banner/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改Banner管理
|
|
||||||
export const updateBanner = async (data: BannerVO) => {
|
|
||||||
return await request.put({ url: `/promotion/banner/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除Banner管理
|
|
||||||
export const deleteBanner = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/promotion/banner/delete?id=` + id })
|
|
||||||
}
|
|
|
@ -1,61 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 商品品牌
|
|
||||||
*/
|
|
||||||
export interface BrandVO {
|
|
||||||
/**
|
|
||||||
* 品牌编号
|
|
||||||
*/
|
|
||||||
id?: number
|
|
||||||
/**
|
|
||||||
* 品牌名称
|
|
||||||
*/
|
|
||||||
name: string
|
|
||||||
/**
|
|
||||||
* 品牌图片
|
|
||||||
*/
|
|
||||||
picUrl: string
|
|
||||||
/**
|
|
||||||
* 品牌排序
|
|
||||||
*/
|
|
||||||
sort?: number
|
|
||||||
/**
|
|
||||||
* 品牌描述
|
|
||||||
*/
|
|
||||||
description?: string
|
|
||||||
/**
|
|
||||||
* 开启状态
|
|
||||||
*/
|
|
||||||
status: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建商品品牌
|
|
||||||
export const createBrand = (data: BrandVO) => {
|
|
||||||
return request.post({ url: '/product/brand/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新商品品牌
|
|
||||||
export const updateBrand = (data: BrandVO) => {
|
|
||||||
return request.put({ url: '/product/brand/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除商品品牌
|
|
||||||
export const deleteBrand = (id: number) => {
|
|
||||||
return request.delete({ url: `/product/brand/delete?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品品牌
|
|
||||||
export const getBrand = (id: number) => {
|
|
||||||
return request.get({ url: `/product/brand/get?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品品牌列表
|
|
||||||
export const getBrandParam = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/product/brand/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品品牌精简信息列表
|
|
||||||
export const getSimpleBrandList = () => {
|
|
||||||
return request.get({ url: '/product/brand/list-all-simple' })
|
|
||||||
}
|
|
|
@ -1,56 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 产品分类
|
|
||||||
*/
|
|
||||||
export interface CategoryVO {
|
|
||||||
/**
|
|
||||||
* 分类编号
|
|
||||||
*/
|
|
||||||
id?: number
|
|
||||||
/**
|
|
||||||
* 父分类编号
|
|
||||||
*/
|
|
||||||
parentId?: number
|
|
||||||
/**
|
|
||||||
* 分类名称
|
|
||||||
*/
|
|
||||||
name: string
|
|
||||||
/**
|
|
||||||
* 移动端分类图
|
|
||||||
*/
|
|
||||||
picUrl: string
|
|
||||||
/**
|
|
||||||
* 分类排序
|
|
||||||
*/
|
|
||||||
sort: number
|
|
||||||
/**
|
|
||||||
* 开启状态
|
|
||||||
*/
|
|
||||||
status: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建商品分类
|
|
||||||
export const createCategory = (data: CategoryVO) => {
|
|
||||||
return request.post({ url: '/product/category/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新商品分类
|
|
||||||
export const updateCategory = (data: CategoryVO) => {
|
|
||||||
return request.put({ url: '/product/category/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除商品分类
|
|
||||||
export const deleteCategory = (id: number) => {
|
|
||||||
return request.delete({ url: `/product/category/delete?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品分类
|
|
||||||
export const getCategory = (id: number) => {
|
|
||||||
return request.get({ url: `/product/category/get?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品分类列表
|
|
||||||
export const getCategoryList = (params: any) => {
|
|
||||||
return request.get({ url: '/product/category/list', params })
|
|
||||||
}
|
|
|
@ -1,49 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CommentVO {
|
|
||||||
id: number
|
|
||||||
userId: number
|
|
||||||
userNickname: string
|
|
||||||
userAvatar: string
|
|
||||||
anonymous: boolean
|
|
||||||
orderId: number
|
|
||||||
orderItemId: number
|
|
||||||
spuId: number
|
|
||||||
spuName: string
|
|
||||||
skuId: number
|
|
||||||
visible: boolean
|
|
||||||
scores: number
|
|
||||||
descriptionScores: number
|
|
||||||
benefitScores: number
|
|
||||||
content: string
|
|
||||||
picUrls: string
|
|
||||||
replyStatus: boolean
|
|
||||||
replyUserId: number
|
|
||||||
replyContent: string
|
|
||||||
replyTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询商品评论列表
|
|
||||||
export const getCommentPage = async (params) => {
|
|
||||||
return await request.get({ url: `/product/comment/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询商品评论详情
|
|
||||||
export const getComment = async (id: number) => {
|
|
||||||
return await request.get({ url: `/product/comment/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 添加自评
|
|
||||||
export const createComment = async (data: CommentVO) => {
|
|
||||||
return await request.post({ url: `/product/comment/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 显示 / 隐藏评论
|
|
||||||
export const updateCommentVisible = async (data: any) => {
|
|
||||||
return await request.put({ url: `/product/comment/update-visible`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 商家回复
|
|
||||||
export const replyComment = async (data: any) => {
|
|
||||||
return await request.put({ url: `/product/comment/reply`, data })
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface Favorite {
|
|
||||||
id?: number
|
|
||||||
userId?: string // 用户编号
|
|
||||||
spuId?: number | null // 商品 SPU 编号
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得 ProductFavorite 列表
|
|
||||||
export const getFavoritePage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/product/favorite/page', params })
|
|
||||||
}
|
|
|
@ -1,93 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 商品属性
|
|
||||||
*/
|
|
||||||
export interface PropertyVO {
|
|
||||||
id?: number
|
|
||||||
/** 名称 */
|
|
||||||
name: string
|
|
||||||
/** 备注 */
|
|
||||||
remark?: string
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 属性值
|
|
||||||
*/
|
|
||||||
export interface PropertyValueVO {
|
|
||||||
id?: number
|
|
||||||
/** 属性项的编号 */
|
|
||||||
propertyId?: number
|
|
||||||
/** 名称 */
|
|
||||||
name: string
|
|
||||||
/** 备注 */
|
|
||||||
remark?: string
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 商品属性值的明细
|
|
||||||
*/
|
|
||||||
export interface PropertyValueDetailVO {
|
|
||||||
/** 属性项的编号 */
|
|
||||||
propertyId: number // 属性的编号
|
|
||||||
/** 属性的名称 */
|
|
||||||
propertyName: string
|
|
||||||
/** 属性值的编号 */
|
|
||||||
valueId: number
|
|
||||||
/** 属性值的名称 */
|
|
||||||
valueName: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// ------------------------ 属性项 -------------------
|
|
||||||
|
|
||||||
// 创建属性项
|
|
||||||
export const createProperty = (data: PropertyVO) => {
|
|
||||||
return request.post({ url: '/product/property/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新属性项
|
|
||||||
export const updateProperty = (data: PropertyVO) => {
|
|
||||||
return request.put({ url: '/product/property/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除属性项
|
|
||||||
export const deleteProperty = (id: number) => {
|
|
||||||
return request.delete({ url: `/product/property/delete?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得属性项
|
|
||||||
export const getProperty = (id: number): Promise<PropertyVO> => {
|
|
||||||
return request.get({ url: `/product/property/get?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得属性项分页
|
|
||||||
export const getPropertyPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/product/property/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// ------------------------ 属性值 -------------------
|
|
||||||
|
|
||||||
// 获得属性值分页
|
|
||||||
export const getPropertyValuePage = (params: PageParam & any) => {
|
|
||||||
return request.get({ url: '/product/property/value/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得属性值
|
|
||||||
export const getPropertyValue = (id: number): Promise<PropertyValueVO> => {
|
|
||||||
return request.get({ url: `/product/property/value/get?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建属性值
|
|
||||||
export const createPropertyValue = (data: PropertyValueVO) => {
|
|
||||||
return request.post({ url: '/product/property/value/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新属性值
|
|
||||||
export const updatePropertyValue = (data: PropertyValueVO) => {
|
|
||||||
return request.put({ url: '/product/property/value/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除属性值
|
|
||||||
export const deletePropertyValue = (id: number) => {
|
|
||||||
return request.delete({ url: `/product/property/value/delete?id=${id}` })
|
|
||||||
}
|
|
|
@ -1,109 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface Property {
|
|
||||||
propertyId?: number // 属性编号
|
|
||||||
propertyName?: string // 属性名称
|
|
||||||
valueId?: number // 属性值编号
|
|
||||||
valueName?: string // 属性值名称
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Sku {
|
|
||||||
id?: number // 商品 SKU 编号
|
|
||||||
name?: string // 商品 SKU 名称
|
|
||||||
spuId?: number // SPU 编号
|
|
||||||
properties?: Property[] // 属性数组
|
|
||||||
price?: number | string // 商品价格
|
|
||||||
marketPrice?: number | string // 市场价
|
|
||||||
costPrice?: number | string // 成本价
|
|
||||||
barCode?: string // 商品条码
|
|
||||||
picUrl?: string // 图片地址
|
|
||||||
stock?: number // 库存
|
|
||||||
weight?: number // 商品重量,单位:kg 千克
|
|
||||||
volume?: number // 商品体积,单位:m^3 平米
|
|
||||||
firstBrokeragePrice?: number | string // 一级分销的佣金
|
|
||||||
secondBrokeragePrice?: number | string // 二级分销的佣金
|
|
||||||
salesCount?: number // 商品销量
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface GiveCouponTemplate {
|
|
||||||
id?: number
|
|
||||||
name?: string // 优惠券名称
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Spu {
|
|
||||||
id?: number
|
|
||||||
name?: string // 商品名称
|
|
||||||
categoryId?: number // 商品分类
|
|
||||||
keyword?: string // 关键字
|
|
||||||
unit?: number | undefined // 单位
|
|
||||||
picUrl?: string // 商品封面图
|
|
||||||
sliderPicUrls?: string[] // 商品轮播图
|
|
||||||
introduction?: string // 商品简介
|
|
||||||
deliveryTypes?: number[] // 配送方式
|
|
||||||
deliveryTemplateId?: number | undefined // 运费模版
|
|
||||||
brandId?: number // 商品品牌编号
|
|
||||||
specType?: boolean // 商品规格
|
|
||||||
subCommissionType?: boolean // 分销类型
|
|
||||||
skus?: Sku[] // sku数组
|
|
||||||
description?: string // 商品详情
|
|
||||||
sort?: number // 商品排序
|
|
||||||
giveIntegral?: number // 赠送积分
|
|
||||||
virtualSalesCount?: number // 虚拟销量
|
|
||||||
price?: number // 商品价格
|
|
||||||
salesCount?: number // 商品销量
|
|
||||||
marketPrice?: number // 市场价
|
|
||||||
costPrice?: number // 成本价
|
|
||||||
stock?: number // 商品库存
|
|
||||||
createTime?: Date // 商品创建时间
|
|
||||||
status?: number // 商品状态
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得 Spu 列表
|
|
||||||
export const getSpuPage = (params: PageParam) => {
|
|
||||||
return request.get({ url: '/product/spu/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得 Spu 列表 tabsCount
|
|
||||||
export const getTabsCount = () => {
|
|
||||||
return request.get({ url: '/product/spu/get-count' })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建商品 Spu
|
|
||||||
export const createSpu = (data: Spu) => {
|
|
||||||
return request.post({ url: '/product/spu/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新商品 Spu
|
|
||||||
export const updateSpu = (data: Spu) => {
|
|
||||||
return request.put({ url: '/product/spu/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新商品 Spu status
|
|
||||||
export const updateStatus = (data: { id: number; status: number }) => {
|
|
||||||
return request.put({ url: '/product/spu/update-status', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品 Spu
|
|
||||||
export const getSpu = (id: number) => {
|
|
||||||
return request.get({ url: `/product/spu/get-detail?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品 Spu 详情列表
|
|
||||||
export const getSpuDetailList = (ids: number[]) => {
|
|
||||||
return request.get({ url: `/product/spu/list?spuIds=${ids}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除商品 Spu
|
|
||||||
export const deleteSpu = (id: number) => {
|
|
||||||
return request.delete({ url: `/product/spu/delete?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出商品 Spu Excel
|
|
||||||
export const exportSpu = async (params) => {
|
|
||||||
return await request.download({ url: '/product/spu/export', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得商品 SPU 精简列表
|
|
||||||
export const getSpuSimpleList = async () => {
|
|
||||||
return request.get({ url: '/product/spu/list-all-simple' })
|
|
||||||
}
|
|
|
@ -1,42 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ArticleVO {
|
|
||||||
id: number
|
|
||||||
categoryId: number
|
|
||||||
title: string
|
|
||||||
author: string
|
|
||||||
picUrl: string
|
|
||||||
introduction: string
|
|
||||||
browseCount: string
|
|
||||||
sort: number
|
|
||||||
status: number
|
|
||||||
spuId: number
|
|
||||||
recommendHot: boolean
|
|
||||||
recommendBanner: boolean
|
|
||||||
content: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询文章管理列表
|
|
||||||
export const getArticlePage = async (params: any) => {
|
|
||||||
return await request.get({ url: `/promotion/article/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询文章管理详情
|
|
||||||
export const getArticle = async (id: number) => {
|
|
||||||
return await request.get({ url: `/promotion/article/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增文章管理
|
|
||||||
export const createArticle = async (data: ArticleVO) => {
|
|
||||||
return await request.post({ url: `/promotion/article/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改文章管理
|
|
||||||
export const updateArticle = async (data: ArticleVO) => {
|
|
||||||
return await request.put({ url: `/promotion/article/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除文章管理
|
|
||||||
export const deleteArticle = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/promotion/article/delete?id=` + id })
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface ArticleCategoryVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
picUrl: string
|
|
||||||
status: number
|
|
||||||
sort: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询文章分类列表
|
|
||||||
export const getArticleCategoryPage = async (params) => {
|
|
||||||
return await request.get({ url: `/promotion/article-category/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询文章分类精简信息列表
|
|
||||||
export const getSimpleArticleCategoryList = async () => {
|
|
||||||
return await request.get({ url: `/promotion/article-category/list-all-simple` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询文章分类详情
|
|
||||||
export const getArticleCategory = async (id: number) => {
|
|
||||||
return await request.get({ url: `/promotion/article-category/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增文章分类
|
|
||||||
export const createArticleCategory = async (data: ArticleCategoryVO) => {
|
|
||||||
return await request.post({ url: `/promotion/article-category/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改文章分类
|
|
||||||
export const updateArticleCategory = async (data: ArticleCategoryVO) => {
|
|
||||||
return await request.put({ url: `/promotion/article-category/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除文章分类
|
|
||||||
export const deleteArticleCategory = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/promotion/article-category/delete?id=` + id })
|
|
||||||
}
|
|
|
@ -1,68 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { Sku, Spu } from '@/api/mall/product/spu'
|
|
||||||
|
|
||||||
export interface BargainActivityVO {
|
|
||||||
id?: number
|
|
||||||
name?: string
|
|
||||||
startTime?: Date
|
|
||||||
endTime?: Date
|
|
||||||
status?: number
|
|
||||||
helpMaxCount?: number // 达到该人数,才能砍到低价
|
|
||||||
bargainCount?: number // 最大帮砍次数
|
|
||||||
totalLimitCount?: number // 最大购买次数
|
|
||||||
spuId: number
|
|
||||||
skuId: number
|
|
||||||
bargainFirstPrice: number // 砍价起始价格,单位分
|
|
||||||
bargainMinPrice: number // 砍价底价
|
|
||||||
stock: number // 活动库存
|
|
||||||
randomMinPrice?: number // 用户每次砍价的最小金额,单位:分
|
|
||||||
randomMaxPrice?: number // 用户每次砍价的最大金额,单位:分
|
|
||||||
}
|
|
||||||
|
|
||||||
// 砍价活动所需属性。选择的商品和属性的时候使用方便使用活动的通用封装
|
|
||||||
export interface BargainProductVO {
|
|
||||||
spuId: number
|
|
||||||
skuId: number
|
|
||||||
bargainFirstPrice: number // 砍价起始价格,单位分
|
|
||||||
bargainMinPrice: number // 砍价底价
|
|
||||||
stock: number // 活动库存
|
|
||||||
}
|
|
||||||
|
|
||||||
// 扩展 Sku 配置
|
|
||||||
export type SkuExtension = Sku & {
|
|
||||||
productConfig: BargainProductVO
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface SpuExtension extends Spu {
|
|
||||||
skus: SkuExtension[] // 重写类型
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询砍价活动列表
|
|
||||||
export const getBargainActivityPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/promotion/bargain-activity/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询砍价活动详情
|
|
||||||
export const getBargainActivity = async (id: number) => {
|
|
||||||
return await request.get({ url: '/promotion/bargain-activity/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增砍价活动
|
|
||||||
export const createBargainActivity = async (data: BargainActivityVO) => {
|
|
||||||
return await request.post({ url: '/promotion/bargain-activity/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改砍价活动
|
|
||||||
export const updateBargainActivity = async (data: BargainActivityVO) => {
|
|
||||||
return await request.put({ url: '/promotion/bargain-activity/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 关闭砍价活动
|
|
||||||
export const closeBargainActivity = async (id: number) => {
|
|
||||||
return await request.put({ url: '/promotion/bargain-activity/close?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除砍价活动
|
|
||||||
export const deleteBargainActivity = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/promotion/bargain-activity/delete?id=' + id })
|
|
||||||
}
|
|
|
@ -1,14 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface BargainHelpVO {
|
|
||||||
id: number
|
|
||||||
record: number
|
|
||||||
userId: number
|
|
||||||
reducePrice: number
|
|
||||||
endTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询砍价记录列表
|
|
||||||
export const getBargainHelpPage = async (params) => {
|
|
||||||
return await request.get({ url: `/promotion/bargain-help/page`, params })
|
|
||||||
}
|
|
|
@ -1,19 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface BargainRecordVO {
|
|
||||||
id: number
|
|
||||||
activityId: number
|
|
||||||
userId: number
|
|
||||||
spuId: number
|
|
||||||
skuId: number
|
|
||||||
bargainFirstPrice: number
|
|
||||||
bargainPrice: number
|
|
||||||
status: number
|
|
||||||
orderId: number
|
|
||||||
endTime: Date
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询砍价记录列表
|
|
||||||
export const getBargainRecordPage = async (params) => {
|
|
||||||
return await request.get({ url: `/promotion/bargain-record/page`, params })
|
|
||||||
}
|
|
|
@ -1,66 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { Sku, Spu } from '@/api/mall/product/spu'
|
|
||||||
|
|
||||||
export interface CombinationActivityVO {
|
|
||||||
id?: number
|
|
||||||
name?: string
|
|
||||||
spuId?: number
|
|
||||||
totalLimitCount?: number
|
|
||||||
singleLimitCount?: number
|
|
||||||
startTime?: Date
|
|
||||||
endTime?: Date
|
|
||||||
userSize?: number
|
|
||||||
totalCount?: number
|
|
||||||
successCount?: number
|
|
||||||
orderUserCount?: number
|
|
||||||
virtualGroup?: number
|
|
||||||
status?: number
|
|
||||||
limitDuration?: number
|
|
||||||
products: CombinationProductVO[]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 拼团活动所需属性
|
|
||||||
export interface CombinationProductVO {
|
|
||||||
spuId: number
|
|
||||||
skuId: number
|
|
||||||
combinationPrice: number // 拼团价格
|
|
||||||
}
|
|
||||||
|
|
||||||
// 扩展 Sku 配置
|
|
||||||
export type SkuExtension = Sku & {
|
|
||||||
productConfig: CombinationProductVO
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface SpuExtension extends Spu {
|
|
||||||
skus: SkuExtension[] // 重写类型
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询拼团活动列表
|
|
||||||
export const getCombinationActivityPage = async (params) => {
|
|
||||||
return await request.get({ url: '/promotion/combination-activity/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询拼团活动详情
|
|
||||||
export const getCombinationActivity = async (id: number) => {
|
|
||||||
return await request.get({ url: '/promotion/combination-activity/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增拼团活动
|
|
||||||
export const createCombinationActivity = async (data: CombinationActivityVO) => {
|
|
||||||
return await request.post({ url: '/promotion/combination-activity/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改拼团活动
|
|
||||||
export const updateCombinationActivity = async (data: CombinationActivityVO) => {
|
|
||||||
return await request.put({ url: '/promotion/combination-activity/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 关闭拼团活动
|
|
||||||
export const closeCombinationActivity = async (id: number) => {
|
|
||||||
return await request.put({ url: '/promotion/combination-activity/close?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除拼团活动
|
|
||||||
export const deleteCombinationActivity = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/promotion/combination-activity/delete?id=' + id })
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CombinationRecordVO {
|
|
||||||
id: number // 拼团记录编号
|
|
||||||
activityId: number // 拼团活动编号
|
|
||||||
nickname: string // 用户昵称
|
|
||||||
avatar: string // 用户头像
|
|
||||||
headId: number // 团长编号
|
|
||||||
expireTime: string // 过期时间
|
|
||||||
userSize: number // 可参团人数
|
|
||||||
userCount: number // 已参团人数
|
|
||||||
status: number // 拼团状态
|
|
||||||
spuName: string // 商品名字
|
|
||||||
picUrl: string // 商品图片
|
|
||||||
virtualGroup: boolean // 是否虚拟成团
|
|
||||||
startTime: string // 开始时间 (订单付款后开始的时间)
|
|
||||||
endTime: string // 结束时间(成团时间/失败时间)
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询拼团记录列表
|
|
||||||
export const getCombinationRecordPage = async (params: any) => {
|
|
||||||
return await request.get({ url: '/promotion/combination-record/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得拼团记录的概要信息
|
|
||||||
export const getCombinationRecordSummary = async () => {
|
|
||||||
return await request.get({ url: '/promotion/combination-record/get-summary' })
|
|
||||||
}
|
|
|
@ -1,26 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// TODO @dhb52:vo 缺少
|
|
||||||
|
|
||||||
// 删除优惠劵
|
|
||||||
export const deleteCoupon = async (id: number) => {
|
|
||||||
return request.delete({
|
|
||||||
url: `/promotion/coupon/delete?id=${id}`
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得优惠劵分页
|
|
||||||
export const getCouponPage = async (params: PageParam) => {
|
|
||||||
return request.get({
|
|
||||||
url: '/promotion/coupon/page',
|
|
||||||
params: params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 发送优惠券
|
|
||||||
export const sendCoupon = async (data: any) => {
|
|
||||||
return request.post({
|
|
||||||
url: '/promotion/coupon/send',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,90 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface CouponTemplateVO {
|
|
||||||
id: number
|
|
||||||
name: string
|
|
||||||
status: number
|
|
||||||
totalCount: number
|
|
||||||
takeLimitCount: number
|
|
||||||
takeType: number
|
|
||||||
usePrice: number
|
|
||||||
productScope: number
|
|
||||||
productScopeValues: number[]
|
|
||||||
validityType: number
|
|
||||||
validStartTime: Date
|
|
||||||
validEndTime: Date
|
|
||||||
fixedStartTerm: number
|
|
||||||
fixedEndTerm: number
|
|
||||||
discountType: number
|
|
||||||
discountPercent: number
|
|
||||||
discountPrice: number
|
|
||||||
discountLimitPrice: number
|
|
||||||
takeCount: number
|
|
||||||
useCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建优惠劵模板
|
|
||||||
export function createCouponTemplate(data: CouponTemplateVO) {
|
|
||||||
return request.post({
|
|
||||||
url: '/promotion/coupon-template/create',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新优惠劵模板
|
|
||||||
export function updateCouponTemplate(data: CouponTemplateVO) {
|
|
||||||
return request.put({
|
|
||||||
url: '/promotion/coupon-template/update',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新优惠劵模板的状态
|
|
||||||
export function updateCouponTemplateStatus(id: number, status: [0, 1]) {
|
|
||||||
const data = {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
return request.put({
|
|
||||||
url: '/promotion/coupon-template/update-status',
|
|
||||||
data: data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除优惠劵模板
|
|
||||||
export function deleteCouponTemplate(id: number) {
|
|
||||||
return request.delete({
|
|
||||||
url: '/promotion/coupon-template/delete?id=' + id
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得优惠劵模板
|
|
||||||
export function getCouponTemplate(id: number) {
|
|
||||||
return request.get({
|
|
||||||
url: '/promotion/coupon-template/get?id=' + id
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得优惠劵模板分页
|
|
||||||
export function getCouponTemplatePage(params: PageParam) {
|
|
||||||
return request.get({
|
|
||||||
url: '/promotion/coupon-template/page',
|
|
||||||
params: params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得优惠劵模板分页
|
|
||||||
export function getCouponTemplateList(ids: number[]) {
|
|
||||||
return request.get({
|
|
||||||
url: `/promotion/coupon-template/list?ids=${ids}`
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出优惠劵模板 Excel
|
|
||||||
export function exportCouponTemplateExcel(params: PageParam) {
|
|
||||||
return request.get({
|
|
||||||
url: '/promotion/coupon-template/export-excel',
|
|
||||||
params: params,
|
|
||||||
responseType: 'blob'
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,60 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { Sku, Spu } from '@/api/mall/product/spu'
|
|
||||||
|
|
||||||
export interface DiscountActivityVO {
|
|
||||||
id?: number
|
|
||||||
spuId?: number
|
|
||||||
name?: string
|
|
||||||
status?: number
|
|
||||||
remark?: string
|
|
||||||
startTime?: Date
|
|
||||||
endTime?: Date
|
|
||||||
products?: DiscountProductVO[]
|
|
||||||
}
|
|
||||||
// 限时折扣相关 属性
|
|
||||||
export interface DiscountProductVO {
|
|
||||||
spuId: number
|
|
||||||
skuId: number
|
|
||||||
discountType: number
|
|
||||||
discountPercent: number
|
|
||||||
discountPrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 扩展 Sku 配置
|
|
||||||
export type SkuExtension = Sku & {
|
|
||||||
productConfig: DiscountProductVO
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface SpuExtension extends Spu {
|
|
||||||
skus: SkuExtension[] // 重写类型
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询限时折扣活动列表
|
|
||||||
export const getDiscountActivityPage = async (params) => {
|
|
||||||
return await request.get({ url: '/promotion/discount-activity/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询限时折扣活动详情
|
|
||||||
export const getDiscountActivity = async (id: number) => {
|
|
||||||
return await request.get({ url: '/promotion/discount-activity/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增限时折扣活动
|
|
||||||
export const createDiscountActivity = async (data: DiscountActivityVO) => {
|
|
||||||
return await request.post({ url: '/promotion/discount-activity/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改限时折扣活动
|
|
||||||
export const updateDiscountActivity = async (data: DiscountActivityVO) => {
|
|
||||||
return await request.put({ url: '/promotion/discount-activity/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 关闭限时折扣活动
|
|
||||||
export const closeDiscountActivity = async (id: number) => {
|
|
||||||
return await request.put({ url: '/promotion/discount-activity/close?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除限时折扣活动
|
|
||||||
export const deleteDiscountActivity = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/promotion/discount-activity/delete?id=' + id })
|
|
||||||
}
|
|
|
@ -1,45 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface DiyPageVO {
|
|
||||||
id?: number
|
|
||||||
templateId?: number
|
|
||||||
name: string
|
|
||||||
remark: string
|
|
||||||
previewPicUrls: string[]
|
|
||||||
property: string
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询装修页面列表
|
|
||||||
export const getDiyPagePage = async (params: any) => {
|
|
||||||
return await request.get({ url: `/promotion/diy-page/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询装修页面详情
|
|
||||||
export const getDiyPage = async (id: number) => {
|
|
||||||
return await request.get({ url: `/promotion/diy-page/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增装修页面
|
|
||||||
export const createDiyPage = async (data: DiyPageVO) => {
|
|
||||||
return await request.post({ url: `/promotion/diy-page/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改装修页面
|
|
||||||
export const updateDiyPage = async (data: DiyPageVO) => {
|
|
||||||
return await request.put({ url: `/promotion/diy-page/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除装修页面
|
|
||||||
export const deleteDiyPage = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/promotion/diy-page/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得装修页面属性
|
|
||||||
export const getDiyPageProperty = async (id: number) => {
|
|
||||||
return await request.get({ url: `/promotion/diy-page/get-property?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新装修页面属性
|
|
||||||
export const updateDiyPageProperty = async (data: DiyPageVO) => {
|
|
||||||
return await request.put({ url: `/promotion/diy-page/update-property`, data })
|
|
||||||
}
|
|
|
@ -1,58 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { DiyPageVO } from '@/api/mall/promotion/diy/page'
|
|
||||||
|
|
||||||
export interface DiyTemplateVO {
|
|
||||||
id?: number
|
|
||||||
name: string
|
|
||||||
used: boolean
|
|
||||||
usedTime?: Date
|
|
||||||
remark: string
|
|
||||||
previewPicUrls: string[]
|
|
||||||
property: string
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface DiyTemplatePropertyVO extends DiyTemplateVO {
|
|
||||||
pages: DiyPageVO[]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询装修模板列表
|
|
||||||
export const getDiyTemplatePage = async (params: any) => {
|
|
||||||
return await request.get({ url: `/promotion/diy-template/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询装修模板详情
|
|
||||||
export const getDiyTemplate = async (id: number) => {
|
|
||||||
return await request.get({ url: `/promotion/diy-template/get?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增装修模板
|
|
||||||
export const createDiyTemplate = async (data: DiyTemplateVO) => {
|
|
||||||
return await request.post({ url: `/promotion/diy-template/create`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改装修模板
|
|
||||||
export const updateDiyTemplate = async (data: DiyTemplateVO) => {
|
|
||||||
return await request.put({ url: `/promotion/diy-template/update`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除装修模板
|
|
||||||
export const deleteDiyTemplate = async (id: number) => {
|
|
||||||
return await request.delete({ url: `/promotion/diy-template/delete?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 使用装修模板
|
|
||||||
export const useDiyTemplate = async (id: number) => {
|
|
||||||
return await request.put({ url: `/promotion/diy-template/use?id=` + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得装修模板属性
|
|
||||||
export const getDiyTemplateProperty = async (id: number) => {
|
|
||||||
return await request.get<DiyTemplatePropertyVO>({
|
|
||||||
url: `/promotion/diy-template/get-property?id=` + id
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新装修模板属性
|
|
||||||
export const updateDiyTemplateProperty = async (data: DiyTemplateVO) => {
|
|
||||||
return await request.put({ url: `/promotion/diy-template/update-property`, data })
|
|
||||||
}
|
|
|
@ -1,48 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface DiscountActivityVO {
|
|
||||||
id?: number
|
|
||||||
name?: string
|
|
||||||
startTime?: Date
|
|
||||||
endTime?: Date
|
|
||||||
remark?: string
|
|
||||||
conditionType?: number
|
|
||||||
productScope?: number
|
|
||||||
productSpuIds?: number[]
|
|
||||||
rules?: DiscountProductVO[]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 优惠规则
|
|
||||||
export interface DiscountProductVO {
|
|
||||||
limit: number
|
|
||||||
discountPrice: number
|
|
||||||
freeDelivery: boolean
|
|
||||||
point: number
|
|
||||||
couponIds: number[]
|
|
||||||
couponCounts: number[]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增满减送活动
|
|
||||||
export const createRewardActivity = async (data: DiscountActivityVO) => {
|
|
||||||
return await request.post({ url: '/promotion/reward-activity/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 更新满减送活动
|
|
||||||
export const updateRewardActivity = async (data: DiscountActivityVO) => {
|
|
||||||
return await request.put({ url: '/promotion/reward-activity/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询满减送活动列表
|
|
||||||
export const getRewardActivityPage = async (params) => {
|
|
||||||
return await request.get({ url: '/promotion/reward-activity/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询满减送活动详情
|
|
||||||
export const getReward = async (id: number) => {
|
|
||||||
return await request.get({ url: '/promotion/reward-activity/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除限时折扣活动
|
|
||||||
export const deleteRewardActivity = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/promotion/reward-activity/delete?id=' + id })
|
|
||||||
}
|
|
|
@ -1,68 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { Sku, Spu } from '@/api/mall/product/spu'
|
|
||||||
|
|
||||||
export interface SeckillActivityVO {
|
|
||||||
id?: number
|
|
||||||
spuId?: number
|
|
||||||
name?: string
|
|
||||||
status?: number
|
|
||||||
remark?: string
|
|
||||||
startTime?: Date
|
|
||||||
endTime?: Date
|
|
||||||
sort?: number
|
|
||||||
configIds?: string
|
|
||||||
orderCount?: number
|
|
||||||
userCount?: number
|
|
||||||
totalPrice?: number
|
|
||||||
totalLimitCount?: number
|
|
||||||
singleLimitCount?: number
|
|
||||||
stock?: number
|
|
||||||
totalStock?: number
|
|
||||||
products?: SeckillProductVO[]
|
|
||||||
}
|
|
||||||
|
|
||||||
// 秒杀活动所需属性
|
|
||||||
export interface SeckillProductVO {
|
|
||||||
skuId: number
|
|
||||||
seckillPrice: number
|
|
||||||
stock: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 扩展 Sku 配置
|
|
||||||
export type SkuExtension = Sku & {
|
|
||||||
productConfig: SeckillProductVO
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface SpuExtension extends Spu {
|
|
||||||
skus: SkuExtension[] // 重写类型
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询秒杀活动列表
|
|
||||||
export const getSeckillActivityPage = async (params) => {
|
|
||||||
return await request.get({ url: '/promotion/seckill-activity/page', params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询秒杀活动详情
|
|
||||||
export const getSeckillActivity = async (id: number) => {
|
|
||||||
return await request.get({ url: '/promotion/seckill-activity/get?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增秒杀活动
|
|
||||||
export const createSeckillActivity = async (data: SeckillActivityVO) => {
|
|
||||||
return await request.post({ url: '/promotion/seckill-activity/create', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 修改秒杀活动
|
|
||||||
export const updateSeckillActivity = async (data: SeckillActivityVO) => {
|
|
||||||
return await request.put({ url: '/promotion/seckill-activity/update', data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 关闭秒杀活动
|
|
||||||
export const closeSeckillActivity = async (id: number) => {
|
|
||||||
return await request.put({ url: '/promotion/seckill-activity/close?id=' + id })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 删除秒杀活动
|
|
||||||
export const deleteSeckillActivity = async (id: number) => {
|
|
||||||
return await request.delete({ url: '/promotion/seckill-activity/delete?id=' + id })
|
|
||||||
}
|
|
|
@ -1,53 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
// 秒杀时段 VO
|
|
||||||
export interface SeckillConfigVO {
|
|
||||||
id: number // 编号
|
|
||||||
name: string // 秒杀时段名称
|
|
||||||
startTime: string // 开始时间点
|
|
||||||
endTime: string // 结束时间点
|
|
||||||
sliderPicUrls: string[] // 秒杀轮播图
|
|
||||||
status: number // 活动状态
|
|
||||||
}
|
|
||||||
|
|
||||||
// 秒杀时段 API
|
|
||||||
export const SeckillConfigApi = {
|
|
||||||
// 查询秒杀时段分页
|
|
||||||
getSeckillConfigPage: async (params: any) => {
|
|
||||||
return await request.get({ url: `/promotion/seckill-config/page`, params })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询秒杀时段列表
|
|
||||||
getSimpleSeckillConfigList: async () => {
|
|
||||||
return await request.get({ url: `/promotion/seckill-config/simple-list` })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 查询秒杀时段详情
|
|
||||||
getSeckillConfig: async (id: number) => {
|
|
||||||
return await request.get({ url: `/promotion/seckill-config/get?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 新增秒杀时段
|
|
||||||
createSeckillConfig: async (data: SeckillConfigVO) => {
|
|
||||||
return await request.post({ url: `/promotion/seckill-config/create`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改秒杀时段
|
|
||||||
updateSeckillConfig: async (data: SeckillConfigVO) => {
|
|
||||||
return await request.put({ url: `/promotion/seckill-config/update`, data })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 删除秒杀时段
|
|
||||||
deleteSeckillConfig: async (id: number) => {
|
|
||||||
return await request.delete({ url: `/promotion/seckill-config/delete?id=` + id })
|
|
||||||
},
|
|
||||||
|
|
||||||
// 修改时段配置状态
|
|
||||||
updateSeckillConfigStatus: async (id: number, status: number) => {
|
|
||||||
const data = {
|
|
||||||
id,
|
|
||||||
status
|
|
||||||
}
|
|
||||||
return request.put({ url: '/promotion/seckill-config/update-status', data: data })
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,5 +0,0 @@
|
||||||
/** 数据对照 Response VO */
|
|
||||||
export interface DataComparisonRespVO<T> {
|
|
||||||
value: T
|
|
||||||
reference: T
|
|
||||||
}
|
|
|
@ -1,123 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import dayjs from 'dayjs'
|
|
||||||
import { DataComparisonRespVO } from '@/api/mall/statistics/common'
|
|
||||||
import { formatDate } from '@/utils/formatTime'
|
|
||||||
|
|
||||||
/** 会员分析 Request VO */
|
|
||||||
export interface MemberAnalyseReqVO {
|
|
||||||
times: dayjs.ConfigType[]
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员分析 Response VO */
|
|
||||||
export interface MemberAnalyseRespVO {
|
|
||||||
visitUserCount: number
|
|
||||||
orderUserCount: number
|
|
||||||
payUserCount: number
|
|
||||||
atv: number
|
|
||||||
comparison: DataComparisonRespVO<MemberAnalyseComparisonRespVO>
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员分析对照数据 Response VO */
|
|
||||||
export interface MemberAnalyseComparisonRespVO {
|
|
||||||
registerUserCount: number
|
|
||||||
visitUserCount: number
|
|
||||||
rechargeUserCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员地区统计 Response VO */
|
|
||||||
export interface MemberAreaStatisticsRespVO {
|
|
||||||
areaId: number
|
|
||||||
areaName: string
|
|
||||||
userCount: number
|
|
||||||
orderCreateUserCount: number
|
|
||||||
orderPayUserCount: number
|
|
||||||
orderPayPrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员性别统计 Response VO */
|
|
||||||
export interface MemberSexStatisticsRespVO {
|
|
||||||
sex: number
|
|
||||||
userCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员统计 Response VO */
|
|
||||||
export interface MemberSummaryRespVO {
|
|
||||||
userCount: number
|
|
||||||
rechargeUserCount: number
|
|
||||||
rechargePrice: number
|
|
||||||
expensePrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员终端统计 Response VO */
|
|
||||||
export interface MemberTerminalStatisticsRespVO {
|
|
||||||
terminal: number
|
|
||||||
userCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员数量统计 Response VO */
|
|
||||||
export interface MemberCountRespVO {
|
|
||||||
/** 用户访问量 */
|
|
||||||
visitUserCount: string
|
|
||||||
/** 注册用户数量 */
|
|
||||||
registerUserCount: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 会员注册数量 Response VO */
|
|
||||||
export interface MemberRegisterCountRespVO {
|
|
||||||
date: string
|
|
||||||
count: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询会员统计
|
|
||||||
export const getMemberSummary = () => {
|
|
||||||
return request.get<MemberSummaryRespVO>({
|
|
||||||
url: '/statistics/member/summary'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询会员分析数据
|
|
||||||
export const getMemberAnalyse = (params: MemberAnalyseReqVO) => {
|
|
||||||
return request.get<MemberAnalyseRespVO>({
|
|
||||||
url: '/statistics/member/analyse',
|
|
||||||
params: { times: [formatDate(params.times[0]), formatDate(params.times[1])] }
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 按照省份,查询会员统计列表
|
|
||||||
export const getMemberAreaStatisticsList = () => {
|
|
||||||
return request.get<MemberAreaStatisticsRespVO[]>({
|
|
||||||
url: '/statistics/member/area-statistics-list'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 按照性别,查询会员统计列表
|
|
||||||
export const getMemberSexStatisticsList = () => {
|
|
||||||
return request.get<MemberSexStatisticsRespVO[]>({
|
|
||||||
url: '/statistics/member/sex-statistics-list'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 按照终端,查询会员统计列表
|
|
||||||
export const getMemberTerminalStatisticsList = () => {
|
|
||||||
return request.get<MemberTerminalStatisticsRespVO[]>({
|
|
||||||
url: '/statistics/member/terminal-statistics-list'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得用户数量量对照
|
|
||||||
export const getUserCountComparison = () => {
|
|
||||||
return request.get<DataComparisonRespVO<MemberCountRespVO>>({
|
|
||||||
url: '/statistics/member/user-count-comparison'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得会员注册数量列表
|
|
||||||
export const getMemberRegisterCountList = (
|
|
||||||
beginTime: dayjs.ConfigType,
|
|
||||||
endTime: dayjs.ConfigType
|
|
||||||
) => {
|
|
||||||
return request.get<MemberRegisterCountRespVO[]>({
|
|
||||||
url: '/statistics/member/register-count-list',
|
|
||||||
params: { times: [formatDate(beginTime), formatDate(endTime)] }
|
|
||||||
})
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
/** 支付统计 */
|
|
||||||
export interface PaySummaryRespVO {
|
|
||||||
/** 充值金额,单位分 */
|
|
||||||
rechargePrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 获取钱包充值金额 */
|
|
||||||
export const getWalletRechargePrice = async () => {
|
|
||||||
return await request.get<PaySummaryRespVO>({ url: `/statistics/pay/summary` })
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import { DataComparisonRespVO } from '@/api/mall/statistics/common'
|
|
||||||
|
|
||||||
export interface ProductStatisticsVO {
|
|
||||||
id: number
|
|
||||||
day: string
|
|
||||||
spuId: number
|
|
||||||
spuName: string
|
|
||||||
spuPicUrl: string
|
|
||||||
browseCount: number
|
|
||||||
browseUserCount: number
|
|
||||||
favoriteCount: number
|
|
||||||
cartCount: number
|
|
||||||
orderCount: number
|
|
||||||
orderPayCount: number
|
|
||||||
orderPayPrice: number
|
|
||||||
afterSaleCount: number
|
|
||||||
afterSaleRefundPrice: number
|
|
||||||
browseConvertPercent: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 商品统计 API
|
|
||||||
export const ProductStatisticsApi = {
|
|
||||||
// 获得商品统计分析
|
|
||||||
getProductStatisticsAnalyse: (params: any) => {
|
|
||||||
return request.get<DataComparisonRespVO<ProductStatisticsVO>>({
|
|
||||||
url: '/statistics/product/analyse',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获得商品状况明细
|
|
||||||
getProductStatisticsList: (params: any) => {
|
|
||||||
return request.get<ProductStatisticsVO[]>({
|
|
||||||
url: '/statistics/product/list',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 导出获得商品状况明细 Excel
|
|
||||||
exportProductStatisticsExcel: (params: any) => {
|
|
||||||
return request.download({
|
|
||||||
url: '/statistics/product/export-excel',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获得商品排行榜分页
|
|
||||||
getProductStatisticsRankPage: async (params: any) => {
|
|
||||||
return await request.get({
|
|
||||||
url: `/statistics/product/rank-page`,
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,119 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
import dayjs from 'dayjs'
|
|
||||||
import { formatDate } from '@/utils/formatTime'
|
|
||||||
import { DataComparisonRespVO } from '@/api/mall/statistics/common'
|
|
||||||
|
|
||||||
/** 交易统计 Response VO */
|
|
||||||
export interface TradeSummaryRespVO {
|
|
||||||
yesterdayOrderCount: number
|
|
||||||
monthOrderCount: number
|
|
||||||
yesterdayPayPrice: number
|
|
||||||
monthPayPrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 交易状况 Request VO */
|
|
||||||
export interface TradeTrendReqVO {
|
|
||||||
times: [dayjs.ConfigType, dayjs.ConfigType]
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 交易状况统计 Response VO */
|
|
||||||
export interface TradeTrendSummaryRespVO {
|
|
||||||
time: string
|
|
||||||
turnoverPrice: number
|
|
||||||
orderPayPrice: number
|
|
||||||
rechargePrice: number
|
|
||||||
expensePrice: number
|
|
||||||
walletPayPrice: number
|
|
||||||
brokerageSettlementPrice: number
|
|
||||||
afterSaleRefundPrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 交易订单数量 Response VO */
|
|
||||||
export interface TradeOrderCountRespVO {
|
|
||||||
/** 待发货 */
|
|
||||||
undelivered?: number
|
|
||||||
/** 待核销 */
|
|
||||||
pickUp?: number
|
|
||||||
/** 退款中 */
|
|
||||||
afterSaleApply?: number
|
|
||||||
/** 提现待审核 */
|
|
||||||
auditingWithdraw?: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 交易订单统计 Response VO */
|
|
||||||
export interface TradeOrderSummaryRespVO {
|
|
||||||
/** 支付订单商品数 */
|
|
||||||
orderPayCount?: number
|
|
||||||
/** 总支付金额,单位:分 */
|
|
||||||
orderPayPrice?: number
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 订单量趋势统计 Response VO */
|
|
||||||
export interface TradeOrderTrendRespVO {
|
|
||||||
/** 日期 */
|
|
||||||
date: string
|
|
||||||
/** 订单数量 */
|
|
||||||
orderPayCount: number
|
|
||||||
/** 订单支付金额 */
|
|
||||||
orderPayPrice: number
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询交易统计
|
|
||||||
export const getTradeStatisticsSummary = () => {
|
|
||||||
return request.get<DataComparisonRespVO<TradeSummaryRespVO>>({
|
|
||||||
url: '/statistics/trade/summary'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得交易状况统计
|
|
||||||
export const getTradeStatisticsAnalyse = (params: TradeTrendReqVO) => {
|
|
||||||
return request.get<DataComparisonRespVO<TradeTrendSummaryRespVO>>({
|
|
||||||
url: '/statistics/trade/analyse',
|
|
||||||
params: formatDateParam(params)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得交易状况明细
|
|
||||||
export const getTradeStatisticsList = (params: TradeTrendReqVO) => {
|
|
||||||
return request.get<TradeTrendSummaryRespVO[]>({
|
|
||||||
url: '/statistics/trade/list',
|
|
||||||
params: formatDateParam(params)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 导出交易状况明细
|
|
||||||
export const exportTradeStatisticsExcel = (params: TradeTrendReqVO) => {
|
|
||||||
return request.download({
|
|
||||||
url: '/statistics/trade/export-excel',
|
|
||||||
params: formatDateParam(params)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得交易订单数量
|
|
||||||
export const getOrderCount = async () => {
|
|
||||||
return await request.get<TradeOrderCountRespVO>({ url: `/statistics/trade/order-count` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得交易订单数量对照
|
|
||||||
export const getOrderComparison = async () => {
|
|
||||||
return await request.get<DataComparisonRespVO<TradeOrderSummaryRespVO>>({
|
|
||||||
url: `/statistics/trade/order-comparison`
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得订单量趋势统计
|
|
||||||
export const getOrderCountTrendComparison = (
|
|
||||||
type: number,
|
|
||||||
beginTime: dayjs.ConfigType,
|
|
||||||
endTime: dayjs.ConfigType
|
|
||||||
) => {
|
|
||||||
return request.get<DataComparisonRespVO<TradeOrderTrendRespVO>[]>({
|
|
||||||
url: '/statistics/trade/order-count-trend',
|
|
||||||
params: { type, beginTime: formatDate(beginTime), endTime: formatDate(endTime) }
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 时间参数需要格式化, 确保接口能识别 */
|
|
||||||
const formatDateParam = (params: TradeTrendReqVO) => {
|
|
||||||
return { times: [formatDate(params.times[0]), formatDate(params.times[1])] } as TradeTrendReqVO
|
|
||||||
}
|
|
|
@ -1,75 +0,0 @@
|
||||||
import request from '@/config/axios'
|
|
||||||
|
|
||||||
export interface TradeAfterSaleVO {
|
|
||||||
id?: number | null // 售后编号,主键自增
|
|
||||||
no?: string // 售后单号
|
|
||||||
status?: number | null // 退款状态
|
|
||||||
way?: number | null // 售后方式
|
|
||||||
type?: number | null // 售后类型
|
|
||||||
userId?: number | null // 用户编号
|
|
||||||
applyReason?: string // 申请原因
|
|
||||||
applyDescription?: string // 补充描述
|
|
||||||
applyPicUrls?: string[] // 补充凭证图片
|
|
||||||
orderId?: number | null // 交易订单编号
|
|
||||||
orderNo?: string // 订单流水号
|
|
||||||
orderItemId?: number | null // 交易订单项编号
|
|
||||||
spuId?: number | null // 商品 SPU 编号
|
|
||||||
spuName?: string // 商品 SPU 名称
|
|
||||||
skuId?: number | null // 商品 SKU 编号
|
|
||||||
properties?: ProductPropertiesVO[] // 属性数组
|
|
||||||
picUrl?: string // 商品图片
|
|
||||||
count?: number | null // 退货商品数量
|
|
||||||
auditTime?: Date // 审批时间
|
|
||||||
auditUserId?: number | null // 审批人
|
|
||||||
auditReason?: string // 审批备注
|
|
||||||
refundPrice?: number | null // 退款金额,单位:分。
|
|
||||||
payRefundId?: number | null // 支付退款编号
|
|
||||||
refundTime?: Date // 退款时间
|
|
||||||
logisticsId?: number | null // 退货物流公司编号
|
|
||||||
logisticsNo?: string // 退货物流单号
|
|
||||||
deliveryTime?: Date // 退货时间
|
|
||||||
receiveTime?: Date // 收货时间
|
|
||||||
receiveReason?: string // 收货备注
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface ProductPropertiesVO {
|
|
||||||
propertyId?: number | null // 属性的编号
|
|
||||||
propertyName?: string // 属性的名称
|
|
||||||
valueId?: number | null //属性值的编号
|
|
||||||
valueName?: string // 属性值的名称
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得交易售后分页
|
|
||||||
export const getAfterSalePage = async (params) => {
|
|
||||||
return await request.get({ url: `/trade/after-sale/page`, params })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获得交易售后详情
|
|
||||||
export const getAfterSale = async (id: any) => {
|
|
||||||
return await request.get({ url: `/trade/after-sale/get-detail?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 同意售后
|
|
||||||
export const agree = async (id: any) => {
|
|
||||||
return await request.put({ url: `/trade/after-sale/agree?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 拒绝售后
|
|
||||||
export const disagree = async (data: any) => {
|
|
||||||
return await request.put({ url: `/trade/after-sale/disagree`, data })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 确认收货
|
|
||||||
export const receive = async (id: any) => {
|
|
||||||
return await request.put({ url: `/trade/after-sale/receive?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 拒绝收货
|
|
||||||
export const refuse = async (id: any) => {
|
|
||||||
return await request.put({ url: `/trade/after-sale/refuse?id=${id}` })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 确认退款
|
|
||||||
export const refund = async (id: any) => {
|
|
||||||
return await request.put({ url: `/trade/after-sale/refund?id=${id}` })
|
|
||||||
}
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user