初始化

This commit is contained in:
2025-01-27 23:24:42 +08:00
parent c8a96306c4
commit 6ae8339299
421 changed files with 35687 additions and 0 deletions

126
api/oa/app/field/index.ts Normal file
View File

@@ -0,0 +1,126 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { AppField, AppFieldParam } from '@/api/oa/app/field/model';
import { MODULES_API_URL } from '@/config';
/**
* 分页查询项目参数
*/
export async function pageAppField(params: AppFieldParam) {
const res = await request.get<ApiResult<PageResult<AppField>>>(
MODULES_API_URL + '/oa/app-field/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询项目参数列表
*/
export async function listAppField(params?: AppFieldParam) {
const res = await request.get<ApiResult<AppField[]>>(
MODULES_API_URL + '/oa/app-field',
{
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 getAppField(id: number) {
const res = await request.get<ApiResult<AppField>>(
MODULES_API_URL + '/oa/app-field/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加项目参数
*/
export async function addAppField(data: AppField) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-field',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改项目参数
*/
export async function updateAppField(data: AppField) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-field',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除项目参数
*/
export async function removeAppField(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-field/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除项目参数
*/
export async function removeBatchAppField(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-field/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 检查IP是否存在
*/
export async function checkExistence(
field: string,
value: string,
id?: number
) {
const res = await request.get<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-field/existence',
{
params: { field, value, id }
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,24 @@
import type { PageParam } from '@/api';
/**
* 项目参数
*/
export interface AppField {
id?: number;
name?: string;
comments?: string;
userId?: number;
appId?: number;
status?: any;
sortNumber?: any;
createTime?: string;
}
/**
* 项目参数搜索条件
*/
export interface AppFieldParam extends PageParam {
id?: number;
userId?: number;
appId?: number;
}

190
api/oa/app/index.ts Normal file
View File

@@ -0,0 +1,190 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { App, AppParam } from './model/index';
import { MODULES_API_URL } from '@/config';
export async function getCount() {
const res = await request.get(MODULES_API_URL + '/oa/app/data');
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 分页查询应用
*/
export async function pageApp(params: AppParam) {
const res = await request.get<ApiResult<PageResult<App>>>(
MODULES_API_URL + '/oa/app/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询应用列表
*/
export async function listApp(params?: AppParam) {
const res = await request.get<ApiResult<App[]>>(MODULES_API_URL + '/oa/app', {
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 getApp(id: number) {
const res = await request.get<ApiResult<App>>(
MODULES_API_URL + '/oa/app/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加应用
*/
export async function addApp(data: App) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改应用
*/
export async function updateApp(data: App) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除应用
*/
export async function removeApp(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除应用
*/
export async function removeBatchApp(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 检查IP是否存在
*/
export async function checkExistence(
field: string,
value: string,
id?: number
) {
const res = await request.get<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app/existence',
{
params: { field, value, id }
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function getAppSecret(data: App) {
const res = await request.post<ApiResult<App>>(
MODULES_API_URL + '/open/app/getAppSecret',
data
);
if (res.data.code === 0 && res.data.data) {
return res.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function updateAppSecret(data: App) {
const res = await request.post<ApiResult<App>>(
MODULES_API_URL + '/oa/app/updateAppSecret',
data
);
if (res.data.code === 0 && res.data.data) {
return res.data;
}
return Promise.reject(new Error(res.data.message));
}
// 添加菜单
export async function saveMenu(data: App) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app/saveMenu',
data
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
// 添加菜单按钮
export async function saveAuthority(data: any[]) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app/saveAuthority',
data
);
if (res.data.code === 0) {
return res.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询我的项目信息
*/
export async function getMyApp() {
const res = await request.get<ApiResult<App>>(
MODULES_API_URL + '/oa/app/getMyApp'
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

166
api/oa/app/model/index.ts Normal file
View File

@@ -0,0 +1,166 @@
import type { PageParam } from '@/api';
import { AppUser } from '@/api/oa/app/user/model';
import { AppField } from '@/api/oa/app/field/model';
/**
* 应用
*/
export interface App {
// 应用id
appId?: number;
// 应用秘钥
appSecret?: string;
// 英文名称
enName?: string;
// 应用名称
appName?: string;
// 上级id, 0是顶级
parentId?: number;
// 应用编号
appCode?: string;
// 应用图标
appIcon?: string;
appQrcode?: string;
// 应用截图
images?: string;
// 应用类型
appType?: string;
appTypeMultiple?: string[];
// 菜单类型
menuType?: number;
// 应用地址
appUrl?: string;
// 后台管理地址
adminUrl?: string;
// 原型图地址
prototypeUrl?: string;
// 下载地址
downUrl?: string;
// 服务器接口地址
serverUrl?: string;
// 模块接口地址
modulesUrl?: string;
// 回调地址
callbackUrl?: string;
// 腾讯文档地址
gitUrl?: string;
docsUrl?: string;
ipAddress?: string;
fileUrl?: string;
// 应用包名
packageName?: string;
// 点击次数
clicks?: string;
// 安装次数
installs?: string;
// 项目介绍
content?: string;
// 开发者(个人)
developer?: string;
director?: string;
projectDirector?: string;
salesman?: string;
// 续费金额
renewMoney?: string;
// 软件定价
price?: number;
// 评分
score?: string;
// 星级
star?: string;
// 菜单组件地址
component?: string;
// 菜单路由地址
path?: string;
// 权限标识
authority?: string;
// 打开位置
target?: string;
// 是否隐藏, 0否, 1是(仅注册路由不显示在左侧菜单)
hide?: number;
// 菜单侧栏选中的path
active?: string;
// 其它路由元信息
meta?: string;
// 版本
edition?: string;
// 版本号
version?: string;
// 是否已安装
isUse?: number;
// 排序
sortNumber?: number;
// 备注
comments?: any;
tenantName?: string;
companyId?: number;
companyName?: string;
// 租户编号
tenantCode?: string;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 过期时间
expirationTime?: string;
// 应用状态
appStatus?: string;
// 状态
status?: number;
// 发布者
userId?: any;
// 发布者昵称
nickname?: string;
// 子菜单
children?: App[];
// 权限树回显选中状态, 0未选中, 1选中
checked?: boolean;
//
key?: number;
//
value?: number;
//
parentIds?: number[];
//
openType?: number;
//
search?: any;
// 成员管理
users?: AppUser[];
fields?: AppField[];
// 项目需求
requirement?: string;
phone?: string;
file1?: string;
file2?: string;
file3?: string;
showCase?: boolean;
showIndex?: boolean;
recommend?: boolean;
categoryName?: string;
title?: string;
}
/**
* 应用搜索条件
*/
export interface AppParam extends PageParam {
userId?: number;
appName?: any;
appCode?: string;
appId?: number;
developer?: string;
tenantCode?: string;
parentId?: string;
tenantName?: string;
companyName?: string;
companyId?: number;
status?: number;
nickname?: string;
appStatus?: any;
showCase?: boolean;
showIndex?: boolean;
showExpiration?: boolean;
keywords?: any;
sceneType?: string;
}

126
api/oa/app/renew/index.ts Normal file
View File

@@ -0,0 +1,126 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { AppRenew, AppRenewParam } from '@/api/oa/app/renew/model';
import { MODULES_API_URL } from '@/config';
/**
* 分页查询开发成员
*/
export async function pageAppRenew(params: AppRenewParam) {
const res = await request.get<ApiResult<PageResult<AppRenew>>>(
MODULES_API_URL + '/oa/app-renew/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询开发成员列表
*/
export async function listAppRenew(params?: AppRenewParam) {
const res = await request.get<ApiResult<AppRenew[]>>(
MODULES_API_URL + '/oa/app-renew',
{
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 getAppRenew(id: number) {
const res = await request.get<ApiResult<AppRenew>>(
MODULES_API_URL + '/oa/app-renew/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加开发成员
*/
export async function addAppRenew(data: AppRenew) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-renew',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改开发成员
*/
export async function updateAppRenew(data: AppRenew) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-renew',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除开发成员
*/
export async function removeAppRenew(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-renew/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除开发成员
*/
export async function removeBatchAppRenew(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-renew/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 检查IP是否存在
*/
export async function checkExistence(
field: string,
value: string,
id?: number
) {
const res = await request.get<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-renew/existence',
{
params: { field, value, id }
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,40 @@
import type { PageParam } from '@/api';
/**
* 开发成员
*/
export interface AppRenew {
appRenewId?: number;
money?: any;
comments?: string;
startTime?: any;
endTime?: any;
userId?: number;
nickname?: string;
email?: string;
phone?: string;
mobile?: string;
appId?: number;
companyId?: number;
status?: any;
images?: string;
files?: any;
createTime?: string;
editStatus?: boolean;
}
/**
* 开发成员搜索条件
*/
export interface AppRenewParam extends PageParam {
userId?: number;
appId?: number;
}
export interface UserItem {
key: string;
isEdit?: boolean;
number?: string;
name?: string;
department?: string;
}

106
api/oa/app/url/index.ts Normal file
View File

@@ -0,0 +1,106 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { AppUrl, AppUrlParam } from '@/api/oa/app/url/model';
import { MODULES_API_URL } from '@/config';
/**
* 分页查询项目域名
*/
export async function pageAppUrl(params: AppUrlParam) {
const res = await request.get<ApiResult<PageResult<AppUrl>>>(
MODULES_API_URL + '/oa/app-url/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询项目域名列表
*/
export async function listAppUrl(params?: AppUrlParam) {
const res = await request.get<ApiResult<AppUrl[]>>(
MODULES_API_URL + '/oa/app-url',
{
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 getAppUrl(id: number) {
const res = await request.get<ApiResult<AppUrl>>(
MODULES_API_URL + '/oa/app-url/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加项目域名
*/
export async function addAppUrl(data: AppUrl) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-url',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改项目域名
*/
export async function updateAppUrl(data: AppUrl) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-url',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除项目域名
*/
export async function removeAppUrl(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-url/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除项目域名
*/
export async function removeBatchAppUrl(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-url/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,26 @@
import type { PageParam } from '@/api';
/**
* 项目域名
*/
export interface AppUrl {
appUrlId?: number;
name?: string;
domain?: string;
account?: string;
password?: string;
comments?: string;
appId?: number;
status?: any;
sortNumber?: any;
createTime?: string;
}
/**
* 项目域名搜索条件
*/
export interface AppUrlParam extends PageParam {
id?: number;
userId?: number;
appId?: number;
}

126
api/oa/app/user/index.ts Normal file
View File

@@ -0,0 +1,126 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { AppUser, AppUserParam } from '@/api/oa/app/user/model';
import { MODULES_API_URL } from '@/config';
/**
* 分页查询开发成员
*/
export async function pageAppUser(params: AppUserParam) {
const res = await request.get<ApiResult<PageResult<AppUser>>>(
MODULES_API_URL + '/oa/app-user/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询开发成员列表
*/
export async function listAppUser(params?: AppUserParam) {
const res = await request.get<ApiResult<AppUser[]>>(
MODULES_API_URL + '/oa/app-user',
{
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 getAppUser(id: number) {
const res = await request.get<ApiResult<AppUser>>(
MODULES_API_URL + '/oa/app-user/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加开发成员
*/
export async function addAppUser(data: AppUser) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-user',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改开发成员
*/
export async function updateAppUser(data: AppUser) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-user',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除开发成员
*/
export async function removeAppUser(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-user/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除开发成员
*/
export async function removeBatchAppUser(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-user/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 检查IP是否存在
*/
export async function checkExistence(
field: string,
value: string,
id?: number
) {
const res = await request.get<ApiResult<unknown>>(
MODULES_API_URL + '/oa/app-user/existence',
{
params: { field, value, id }
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,37 @@
import type { PageParam } from '@/api';
/**
* 开发成员
*/
export interface AppUser {
// 开发成员id
appUserId?: number;
role?: number;
userId?: number;
username?: string;
nickname?: string;
avatar?: string;
email?: string;
phone?: string;
mobile?: string;
appId?: number;
status?: string;
createTime?: string;
}
/**
* 开发成员搜索条件
*/
export interface AppUserParam extends PageParam {
userId?: number;
appId?: number;
role?: number;
}
export interface UserItem {
key: string;
isEdit?: boolean;
number?: string;
name?: string;
department?: string;
}