Initial commit

This commit is contained in:
南宁网宿科技
2024-04-24 16:36:46 +08:00
commit 121348e011
991 changed files with 158700 additions and 0 deletions

154
src/api/oa/task/index.ts Normal file
View File

@@ -0,0 +1,154 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { Task, TaskParam } from './model/index';
import { TabsParam } from '@/api/tabs';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询任务
*/
export async function pageTask(params: TaskParam) {
const res = await request.get<ApiResult<PageResult<Task>>>(
MODULES_API_URL + '/oa/task/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询任务列表
*/
export async function listTask(params?: TaskParam) {
const res = await request.get<ApiResult<Task[]>>(
MODULES_API_URL + '/oa/task',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询任务
*/
export async function getTask(id: number) {
const res = await request.get<ApiResult<Task>>(
MODULES_API_URL + '/oa/task/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加任务
*/
export async function addTask(data: Task) {
const res = await request.post<ApiResult<Task>>(
MODULES_API_URL + '/oa/task',
data
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改任务
*/
export async function updateTask(data: Task) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/oa/task',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除任务
*/
export async function removeTask(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/task/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除任务
*/
export async function removeBatchTask(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/task/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function getCount(params?: TabsParam) {
const res = await request.get<ApiResult<TabsParam>>(
MODULES_API_URL + '/oa/task/count',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 获取工单二维码
* @param params
*/
export async function taskQRCode(params: TaskParam) {
const res = await request.get<ApiResult<PageResult<Task>>>(
MODULES_API_URL + '/oa/task/taskQRCode',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 获取邀请加入二维码
* @param params
*/
export async function taskJoinQRCode(params: TaskParam) {
const res = await request.get<ApiResult<PageResult<Task>>>(
MODULES_API_URL + '/oa/task/taskJoinQRCode',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,111 @@
import type { PageParam } from '@/api';
import { TaskRecord } from '@/api/oa/task-record/model';
import { TaskUser } from '@/api/oa/task-user/model';
/**
* 任务
*/
export interface Task {
// 任务id
taskId?: number;
// 任务名称
name?: string;
// 任务类型
taskType?: string;
// 关联应用
appId?: number;
appName?: string;
// 项目ID
projectId?: string;
// 客户ID
customerId?: string;
// 资产ID
assetsId?: string;
// 开始时间
startTime?: string;
// 结束时间
endTime?: string;
// 任务内容
content?: string;
files?: string;
// 任务发起人
promoter?: number;
promoterName?: string;
promoterAlias?: string;
promoterAvatar?: string;
promoterCompanyName?: string;
// 任务状态
progress?: number;
isRead?: boolean;
// 优先级
priority?: string;
// 品质要求
quality?: string;
// 期限(天)
day?: string;
// 排序
sortNumber?: number;
// 备注
comments?: string;
redirect?: string;
// 创建时间
createTime?: string;
updateTime?: string;
// 状态
status?: number;
// 发布者
userId?: any;
// 发布者昵称
nickname?: string;
// 项目名称
projectName?: string;
// 图片集
images?: [];
avatar?: string;
// 受理人
commander?: number;
commanderName?: string;
commanderAlias?: string;
commanderAvatar?: string;
commanderCompanyName?: string;
commanderRealName?: string;
// 最后回复人
lastRealName?: string;
lastAvatar?: string;
lastReadUser?: number;
lastNickname?: string;
recordList?: TaskRecord[];
users?: TaskUser[];
phone?: string;
overdueDays?: string;
phoneXX?: string;
action?: string;
// 机密信息
confidential?: any;
tenantId?: number;
}
/**
* 任务搜索条件
*/
export interface TaskParam extends PageParam {
taskId?: number;
status?: any;
name?: string;
promoter?: number;
promoterName?: string;
commander?: number;
commanderName?: string;
progress?: number;
betweenTime?: any;
userId?: number;
nickname?: string;
keywords?: any;
current?: string;
pending?: number;
appId?: number;
appName?: string;
companyId?: number;
companyName?: string;
taskType?: string;
}

View File

@@ -0,0 +1,9 @@
/**
* 枚举类
*/
export const TOBEARRANGED = 0; // 待安排
export const PENDING = 1; // 待处理
export const PROCESSING = 2; // 处理中
export const TOBECONFIRMED = 3; // 待评价
export const COMPLETED = 4; // 已完成
export const CLOSED = 5; // 已关闭

View File

@@ -0,0 +1,8 @@
export const TASK_STATUS_0 = 0; // 待处理
export const TASK_STATUS_1 = 1; // 已完成
export const ACTION_1 = '派单';
export const ACTION_2 = '已解决';
export const ACTION_3 = '关单';
export const ACTION_4 = '分享';
export const ACTION_5 = '编辑';