From 2c11634cfa1f763b2972a463cc536dbe7750badf Mon Sep 17 00:00:00 2001 From: weicw <594098497@qq.com> Date: Mon, 5 Jun 2023 22:57:25 +0800 Subject: [PATCH] =?UTF-8?q?=E9=98=B2=E5=9D=A0=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/tower/fall/index.ts | 124 +++++ src/api/tower/fall/model/index.ts | 31 ++ src/api/tower/provider/index.ts | 112 +++++ src/api/tower/provider/model/index.ts | 55 +++ .../TowerModel/components/select-data.vue | 155 +++++++ src/components/TowerModel/index.vue | 61 +++ src/views/tower/fall/components/fall-edit.vue | 426 ++++++++++++++++++ src/views/tower/fall/components/import.vue | 111 +++++ src/views/tower/fall/components/search.vue | 203 +++++++++ src/views/tower/fall/index.vue | 302 +++++++++++++ 10 files changed, 1580 insertions(+) create mode 100644 src/api/tower/fall/index.ts create mode 100644 src/api/tower/fall/model/index.ts create mode 100644 src/api/tower/provider/index.ts create mode 100644 src/api/tower/provider/model/index.ts create mode 100644 src/components/TowerModel/components/select-data.vue create mode 100644 src/components/TowerModel/index.vue create mode 100644 src/views/tower/fall/components/fall-edit.vue create mode 100644 src/views/tower/fall/components/import.vue create mode 100644 src/views/tower/fall/components/search.vue create mode 100644 src/views/tower/fall/index.vue diff --git a/src/api/tower/fall/index.ts b/src/api/tower/fall/index.ts new file mode 100644 index 0000000..c9dda1b --- /dev/null +++ b/src/api/tower/fall/index.ts @@ -0,0 +1,124 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { TowerFall, TowerFallParam } from '@/api/tower/fall/model'; +/** + * 分页查询防坠器 + */ +export async function pageTowerFall(params: TowerFallParam) { + const res = await request.get>>( + '/tower/tower-fall/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询防坠器列表 + */ +export async function listTowerFall(params?: TowerFallParam) { + const res = await request.get>('/tower/tower-fall', { + params + }); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加防坠器 + */ +export async function addTowerFall(data: TowerFall) { + const res = await request.post>('/tower/tower-fall', data); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改防坠器 + */ +export async function updateTowerFall(data: TowerFall) { + const res = await request.put>('/tower/tower-fall', data); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 绑定防坠器 + */ +export async function bindTowerFall(data: TowerFall) { + const res = await request.put>( + '/tower/tower-fall/bind', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除防坠器 + */ +export async function removeTowerFall(id?: number) { + const res = await request.delete>( + '/tower/tower-fall/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量添加防坠器 + */ +export async function addBatchTowerFall(data: TowerFall[]) { + const res = await request.post>( + '/tower/tower-fall/batch', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量修改防坠器状态 + */ +export async function updateBatchTowerFall(data: TowerFall[]) { + const res = await request.put>( + '/tower/tower-fall/status', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除防坠器 + */ +export async function removeBatchTowerFall(data: (number | undefined)[]) { + const res = await request.delete>( + '/tower/tower-fall/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/tower/fall/model/index.ts b/src/api/tower/fall/model/index.ts new file mode 100644 index 0000000..b6d22d7 --- /dev/null +++ b/src/api/tower/fall/model/index.ts @@ -0,0 +1,31 @@ +import type { PageParam } from '@/api'; + +export interface TowerFall { + id?: number; + code?: string; + model?: string; + factory?: string; + factoryDate?: string; + discardDate?: string; + file1?: string; + file2?: string; + file3?: string; + file4?: string; + users?: string; + status?: number; + comments?: string; + userId?: number; + deleted?: number; + tenantId?: number; + createTime?: number; + maxRatedLoad?: string; +} + +/** + * 搜索条件 + */ +export interface TowerFallParam extends PageParam { + id?: number; + name?: string; + status?: number; +} diff --git a/src/api/tower/provider/index.ts b/src/api/tower/provider/index.ts new file mode 100644 index 0000000..38bdde5 --- /dev/null +++ b/src/api/tower/provider/index.ts @@ -0,0 +1,112 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { TowerProvider, TowerProviderParam } from './model'; +// const merchantCode = String(localStorage.getItem('merchantCode')); + +/** + * 分页查询设备型号 + */ +export async function pageTowerProvider(params: TowerProviderParam) { + const res = await request.get>>( + '/tower/tower-provider/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询设备型号列表 + */ +export async function listTowerProvider(params?: TowerProviderParam) { + const res = await request.get>( + '/tower/tower-provider', + { + params + }); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加设备型号 + */ +export async function addTowerProvider(data: TowerProvider) { + const res = await request.post>( + '/tower/tower-provider', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改设备型号 + */ +export async function updateTowerProvider(data: TowerProvider) { + const res = await request.put>( + '/tower/tower-provider', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除设备型号 + */ +export async function removeTowerProvider(id?: number) { + const res = await request.delete>( + '/tower/tower-provider/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除设备型号 + */ +export async function removeBatchTowerProvider(data: (number | undefined)[]) { + const res = await request.delete>( + '/tower/tower-model/provider', + { + 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>( + '/tower/tower-model/provider', + { + params: { field, value, id } + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/tower/provider/model/index.ts b/src/api/tower/provider/model/index.ts new file mode 100644 index 0000000..8ac866e --- /dev/null +++ b/src/api/tower/provider/model/index.ts @@ -0,0 +1,55 @@ +import type { PageParam } from '@/api'; + +/** + * 型号分类 + */ +export interface TowerProvider { + // 型号分类id + id?: number; + // 所属设备 + equipment: string; + // 型号分类 + title?: string; + // 型号分类图片 + image?: string; + // 使用年限 + yearLife?: number; + // 上级分类 + parentId?: number; + // 是否隐藏 + hide?: number; + // 封面图 + avatar?: string; + // 用户ID + userId?: string; + // 所属门店ID + shopId?: string; + // 排序 + sortNumber?: number; + // 备注 + comments?: string; + // 状态 + status?: number; + // 创建时间 + createTime?: string; + // 更新时间 + updateTime?: string; + // + key?: number; + // + merchantCode?: string; + value?: number; + // 子菜单 + children?: TowerProvider[]; +} + +/** + * 型号分类搜索条件 + */ +export interface TowerProviderParam extends PageParam { + title?: string; + categoryId?: string; + yearLife?: number; + // 商户编号 + merchantCode?: string; +} diff --git a/src/components/TowerModel/components/select-data.vue b/src/components/TowerModel/components/select-data.vue new file mode 100644 index 0000000..85dba2e --- /dev/null +++ b/src/components/TowerModel/components/select-data.vue @@ -0,0 +1,155 @@ + + + + diff --git a/src/components/TowerModel/index.vue b/src/components/TowerModel/index.vue new file mode 100644 index 0000000..b4d482c --- /dev/null +++ b/src/components/TowerModel/index.vue @@ -0,0 +1,61 @@ + + + diff --git a/src/views/tower/fall/components/fall-edit.vue b/src/views/tower/fall/components/fall-edit.vue new file mode 100644 index 0000000..d6f042f --- /dev/null +++ b/src/views/tower/fall/components/fall-edit.vue @@ -0,0 +1,426 @@ + + + + + + + diff --git a/src/views/tower/fall/components/import.vue b/src/views/tower/fall/components/import.vue new file mode 100644 index 0000000..84f9df2 --- /dev/null +++ b/src/views/tower/fall/components/import.vue @@ -0,0 +1,111 @@ + + + + diff --git a/src/views/tower/fall/components/search.vue b/src/views/tower/fall/components/search.vue new file mode 100644 index 0000000..971d505 --- /dev/null +++ b/src/views/tower/fall/components/search.vue @@ -0,0 +1,203 @@ + + + + diff --git a/src/views/tower/fall/index.vue b/src/views/tower/fall/index.vue new file mode 100644 index 0000000..1c4e13e --- /dev/null +++ b/src/views/tower/fall/index.vue @@ -0,0 +1,302 @@ + + + + + + +