From ed2e88b99e597398d291256fcff8cb117418fa42 Mon Sep 17 00:00:00 2001 From: 15683799673 Date: Thu, 10 Jul 2025 08:45:59 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=94=B5=E6=A2=AF?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/sis/elevatorInfo/index.ts | 61 ++++ .../src/api/sis/elevatorInfo/model.d.ts | 294 ++++++++++++++++++ .../src/views/sis/elevatorInfo/data.ts | 231 ++++++++++++++ .../sis/elevatorInfo/elevatorInfo-modal.vue | 142 +++++++++ .../src/views/sis/elevatorInfo/index.vue | 182 +++++++++++ apps/web-antd/vite.config.mts | 3 +- 6 files changed, 912 insertions(+), 1 deletion(-) create mode 100644 apps/web-antd/src/api/sis/elevatorInfo/index.ts create mode 100644 apps/web-antd/src/api/sis/elevatorInfo/model.d.ts create mode 100644 apps/web-antd/src/views/sis/elevatorInfo/data.ts create mode 100644 apps/web-antd/src/views/sis/elevatorInfo/elevatorInfo-modal.vue create mode 100644 apps/web-antd/src/views/sis/elevatorInfo/index.vue diff --git a/apps/web-antd/src/api/sis/elevatorInfo/index.ts b/apps/web-antd/src/api/sis/elevatorInfo/index.ts new file mode 100644 index 00000000..83501334 --- /dev/null +++ b/apps/web-antd/src/api/sis/elevatorInfo/index.ts @@ -0,0 +1,61 @@ +import type { ElevatorInfoVO, ElevatorInfoForm, ElevatorInfoQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询电梯基本信息列表 +* @param params +* @returns 电梯基本信息列表 +*/ +export function elevatorInfoList(params?: ElevatorInfoQuery) { + return requestClient.get>('/sis/elevatorInfo/list', { params }); +} + +/** + * 导出电梯基本信息列表 + * @param params + * @returns 电梯基本信息列表 + */ +export function elevatorInfoExport(params?: ElevatorInfoQuery) { + return commonExport('/sis/elevatorInfo/export', params ?? {}); +} + +/** + * 查询电梯基本信息详情 + * @param elevatorId id + * @returns 电梯基本信息详情 + */ +export function elevatorInfoInfo(elevatorId: ID) { + return requestClient.get(`/sis/elevatorInfo/${elevatorId}`); +} + +/** + * 新增电梯基本信息 + * @param data + * @returns void + */ +export function elevatorInfoAdd(data: ElevatorInfoForm) { + return requestClient.postWithMsg('/sis/elevatorInfo', data); +} + +/** + * 更新电梯基本信息 + * @param data + * @returns void + */ +export function elevatorInfoUpdate(data: ElevatorInfoForm) { + return requestClient.putWithMsg('/sis/elevatorInfo', data); +} + +/** + * 删除电梯基本信息 + * @param elevatorId id + * @returns void + */ +export function elevatorInfoRemove(elevatorId: ID | IDS) { + return requestClient.deleteWithMsg(`/sis/elevatorInfo/${elevatorId}`); +} diff --git a/apps/web-antd/src/api/sis/elevatorInfo/model.d.ts b/apps/web-antd/src/api/sis/elevatorInfo/model.d.ts new file mode 100644 index 00000000..f9fe457a --- /dev/null +++ b/apps/web-antd/src/api/sis/elevatorInfo/model.d.ts @@ -0,0 +1,294 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface ElevatorInfoVO { + /** + * + */ + elevatorId: string | number; + + /** + * 电梯编号 + */ + elevatorCode: string; + + /** + * 电梯名称 + */ + elevatorName: string; + + /** + * 安装位置 + */ + location: string; + + /** + * 品牌 + */ + brand: string; + + /** + * 型号 + */ + model: string; + + /** + * 生产日期 + */ + manufactureDate: string; + + /** + * 安装日期 + */ + installationDate: string; + + /** + * 最大载重(kg) + */ + maxLoad: number; + + /** + * 服务楼层数 + */ + floorsServed: number; + + /** + * 维保公司 + */ + maintenanceCompany: string; + + /** + * 维保电话 + */ + maintenancePhone: string; + + /** + * 上次年检日期 + */ + lastInspectionDate: string; + + /** + * 下次年检日期 + */ + nextInspectionDate: string; + + /** + * 梯控厂商 + */ + controlFactory: string; + + /** + * 梯控设备ip + */ + controlIp: string; + + /** + * 梯控设备编码 + */ + controlPort: number; + + /** + * 梯控设备登录账号 + */ + controlAccount: string; + + /** + * 梯控设备登录密码 + */ + controlPwd: string; + +} + +export interface ElevatorInfoForm extends BaseEntity { + /** + * + */ + elevatorId?: string | number; + + /** + * 电梯编号 + */ + elevatorCode?: string; + + /** + * 电梯名称 + */ + elevatorName?: string; + + /** + * 安装位置 + */ + location?: string; + + /** + * 品牌 + */ + brand?: string; + + /** + * 型号 + */ + model?: string; + + /** + * 生产日期 + */ + manufactureDate?: string; + + /** + * 安装日期 + */ + installationDate?: string; + + /** + * 最大载重(kg) + */ + maxLoad?: number; + + /** + * 服务楼层数 + */ + floorsServed?: number; + + /** + * 维保公司 + */ + maintenanceCompany?: string; + + /** + * 维保电话 + */ + maintenancePhone?: string; + + /** + * 上次年检日期 + */ + lastInspectionDate?: string; + + /** + * 下次年检日期 + */ + nextInspectionDate?: string; + + /** + * 梯控厂商 + */ + controlFactory?: string; + + /** + * 梯控设备ip + */ + controlIp?: string; + + /** + * 梯控设备编码 + */ + controlPort?: number; + + /** + * 梯控设备登录账号 + */ + controlAccount?: string; + + /** + * 梯控设备登录密码 + */ + controlPwd?: string; + +} + +export interface ElevatorInfoQuery extends PageQuery { + /** + * 电梯编号 + */ + elevatorCode?: string; + + /** + * 电梯名称 + */ + elevatorName?: string; + + /** + * 安装位置 + */ + location?: string; + + /** + * 品牌 + */ + brand?: string; + + /** + * 型号 + */ + model?: string; + + /** + * 生产日期 + */ + manufactureDate?: string; + + /** + * 安装日期 + */ + installationDate?: string; + + /** + * 最大载重(kg) + */ + maxLoad?: number; + + /** + * 服务楼层数 + */ + floorsServed?: number; + + /** + * 维保公司 + */ + maintenanceCompany?: string; + + /** + * 维保电话 + */ + maintenancePhone?: string; + + /** + * 上次年检日期 + */ + lastInspectionDate?: string; + + /** + * 下次年检日期 + */ + nextInspectionDate?: string; + + /** + * 梯控厂商 + */ + controlFactory?: string; + + /** + * 梯控设备ip + */ + controlIp?: string; + + /** + * 梯控设备编码 + */ + controlPort?: number; + + /** + * 梯控设备登录账号 + */ + controlAccount?: string; + + /** + * 梯控设备登录密码 + */ + controlPwd?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/views/sis/elevatorInfo/data.ts b/apps/web-antd/src/views/sis/elevatorInfo/data.ts new file mode 100644 index 00000000..bc9b3a52 --- /dev/null +++ b/apps/web-antd/src/views/sis/elevatorInfo/data.ts @@ -0,0 +1,231 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'elevatorCode', + label: '电梯编号', + }, + { + component: 'Input', + fieldName: 'elevatorName', + label: '电梯名称', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '电梯编号', + field: 'elevatorCode', + }, + { + title: '电梯名称', + field: 'elevatorName', + }, + { + title: '安装位置', + field: 'location', + }, + { + title: '品牌', + field: 'brand', + }, + { + title: '型号', + field: 'model', + }, + { + title: '生产日期', + field: 'manufactureDate', + }, + { + title: '安装日期', + field: 'installationDate', + }, + { + title: '最大载重(kg)', + field: 'maxLoad', + }, + { + title: '服务楼层数', + field: 'floorsServed', + }, + { + title: '维保公司', + field: 'maintenanceCompany', + }, + /*{ + title: '维保电话', + field: 'maintenancePhone', + }, + { + title: '上次年检日期', + field: 'lastInspectionDate', + }, + { + title: '下次年检日期', + field: 'nextInspectionDate', + },*/ + { + title: '梯控厂商', + field: 'controlFactory', + }, + { + title: '梯控ip', + field: 'controlIp', + }, + { + title: '梯控端口', + field: 'controlPort', + }, + { + title: '梯控账号', + field: 'controlAccount', + }, + { + title: '梯控密码', + field: 'controlPwd', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '', + fieldName: 'elevatorId', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '电梯名称', + fieldName: 'elevatorName', + component: 'Input', + rules: 'required', + }, + { + component: 'TreeSelect', + fieldName: 'unitId', + defaultValue: undefined, + label: '社区建筑', + rules: 'selectRequired', + }, + { + label: '安装位置', + fieldName: 'location', + component: 'Input', + rules: 'required', + }, + { + label: '品牌', + fieldName: 'brand', + component: 'Input', + }, + { + label: '型号', + fieldName: 'model', + component: 'Input', + }, + { + label: '生产日期', + fieldName: 'manufactureDate', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '安装日期', + fieldName: 'installationDate', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '最大载重(kg)', + fieldName: 'maxLoad', + component: 'Input', + }, + { + label: '服务楼层数', + fieldName: 'floorsServed', + component: 'Input', + }, + { + label: '维保公司', + fieldName: 'maintenanceCompany', + component: 'Input', + }, + /* { + label: '维保电话', + fieldName: 'maintenancePhone', + component: 'Input', + }, + { + label: '上次年检日期', + fieldName: 'lastInspectionDate', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '下次年检日期', + fieldName: 'nextInspectionDate', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + },*/ + { + label: '梯控厂商', + fieldName: 'controlFactory', + component: 'Input', + rules: 'required', + }, + { + label: '梯控ip', + fieldName: 'controlIp', + component: 'Input', + rules: 'required', + }, + { + label: '梯控端口', + fieldName: 'controlPort', + component: 'Input', + rules: 'required', + }, + { + label: '梯控账号', + fieldName: 'controlAccount', + component: 'Input', + rules: 'required', + }, + { + label: '梯控密码', + fieldName: 'controlPwd', + component: 'Input', + rules: 'required', + }, +]; diff --git a/apps/web-antd/src/views/sis/elevatorInfo/elevatorInfo-modal.vue b/apps/web-antd/src/views/sis/elevatorInfo/elevatorInfo-modal.vue new file mode 100644 index 00000000..32c2b403 --- /dev/null +++ b/apps/web-antd/src/views/sis/elevatorInfo/elevatorInfo-modal.vue @@ -0,0 +1,142 @@ + + + + diff --git a/apps/web-antd/src/views/sis/elevatorInfo/index.vue b/apps/web-antd/src/views/sis/elevatorInfo/index.vue new file mode 100644 index 00000000..721e23db --- /dev/null +++ b/apps/web-antd/src/views/sis/elevatorInfo/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/vite.config.mts b/apps/web-antd/vite.config.mts index b9b62d33..24d61422 100644 --- a/apps/web-antd/vite.config.mts +++ b/apps/web-antd/vite.config.mts @@ -28,7 +28,8 @@ export default defineConfig(async () => { changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, ''), // mock代理目标地址 - target: 'http://192.168.43.169:8080', + // target: 'http://192.168.43.169:8080', + target: 'http://127.0.0.1:8080', // target: 'http://192.168.0.108:8080', // target: 'http://192.168.0.106:8080', // target: 'http://47.109.37.87:3010', From 2373bd4957bdac04bca9891cb73ea59f00ecb906 Mon Sep 17 00:00:00 2001 From: FLL <2162874245@qq.com> Date: Thu, 10 Jul 2025 14:30:51 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E9=A2=84=E7=BA=A6=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../businessManagement/workOrdersType/data.ts | 2 +- .../workOrdersType/workOrdersType-detail.vue | 5 ----- .../roomBooking/conferenceReservations/index.vue | 12 +----------- 3 files changed, 2 insertions(+), 17 deletions(-) diff --git a/apps/web-antd/src/views/property/businessManagement/workOrdersType/data.ts b/apps/web-antd/src/views/property/businessManagement/workOrdersType/data.ts index b8d89579..56133e2b 100644 --- a/apps/web-antd/src/views/property/businessManagement/workOrdersType/data.ts +++ b/apps/web-antd/src/views/property/businessManagement/workOrdersType/data.ts @@ -98,7 +98,7 @@ export const modalSchema: FormSchemaGetter = () => [ }, { label: '完成时效(小时)', - fieldName: 'isTransfers', + fieldName: 'completionNumber', component: 'Input', rules: 'required', }, diff --git a/apps/web-antd/src/views/property/businessManagement/workOrdersType/workOrdersType-detail.vue b/apps/web-antd/src/views/property/businessManagement/workOrdersType/workOrdersType-detail.vue index 67c71dfb..a35b7f64 100644 --- a/apps/web-antd/src/views/property/businessManagement/workOrdersType/workOrdersType-detail.vue +++ b/apps/web-antd/src/views/property/businessManagement/workOrdersType/workOrdersType-detail.vue @@ -41,11 +41,6 @@ async function handleOpenChange(open: boolean) { :is="renderDict(workOrdersTypeInfoDetail.operationMode,'pro_operation_pattern')" /> - - - {{ workOrdersTypeInfoDetail.sort }} diff --git a/apps/web-antd/src/views/property/roomBooking/conferenceReservations/index.vue b/apps/web-antd/src/views/property/roomBooking/conferenceReservations/index.vue index 7aeaea4e..927037a7 100644 --- a/apps/web-antd/src/views/property/roomBooking/conferenceReservations/index.vue +++ b/apps/web-antd/src/views/property/roomBooking/conferenceReservations/index.vue @@ -4,8 +4,6 @@ @@ -80,6 +78,7 @@ const formState = reactive({ }); const simpleImage = Empty.PRESENTED_IMAGE_SIMPLE; +const meetingList = ref([]) async function handleSearch() { let hours = ''; if (formState.openHours && formState.openHours.length) { @@ -107,15 +106,6 @@ function handleAdd(id:string) { modalApi.setData({id}); modalApi.open(); } - -const onFinish = (values: any) => { - console.log('Success:', values); -}; -const onFinishFailed = (errorInfo: any) => { - console.log('Failed:', errorInfo); -}; - -const meetingList = ref([]) + diff --git a/apps/web-antd/src/views/property/businessManagement/workOrders/work-orders-detail.vue b/apps/web-antd/src/views/property/businessManagement/workOrders/work-orders-detail.vue index dd1f38de..55a0a35b 100644 --- a/apps/web-antd/src/views/property/businessManagement/workOrders/work-orders-detail.vue +++ b/apps/web-antd/src/views/property/businessManagement/workOrders/work-orders-detail.vue @@ -24,7 +24,7 @@ const [BasicModal, modalApi] = useVbenModal({ }); const orderDetail = shallowRef(null); - +const handleRecords=ref([]) async function handleOpenChange(open: boolean) { if (!open) { return null; @@ -34,6 +34,13 @@ async function handleOpenChange(open: boolean) { const {id} = modalApi.getData() as { id: number | string }; // 赋值 orderDetail.value = await workOrdersInfo(id); + if(orderDetail.value){ + handleRecords.value=[ + {type:orderDetail.value.typeName,time:orderDetail.value.compleTime,personName:orderDetail.value.handlerText}, + {type:'跟进',time:orderDetail.value.dispatchTime,personName:orderDetail.value.initiatorNameText}, + {type:'创建工单',time:orderDetail.value.createTime,personName:orderDetail.value.initiatorNameText}, + ] + } modalApi.modalLoading(false); } @@ -52,18 +59,16 @@ async function handleOpenChange(open: boolean) { {{ orderDetail.orderName }} - + {{orderDetail.typeName}} - {{ orderDetail.rentalPeriod }} + {{ orderDetail.initiatorNameText+'-'+orderDetail.initiatorPhone}} {{ orderDetail.dispatchTime }} - {{ orderDetail.totalAmount + "元" }} + {{ orderDetail.handlerText }} {{ orderDetail.location }} @@ -74,7 +79,7 @@ async function handleOpenChange(open: boolean) { {{ orderDetail.compleTime }} - + @@ -86,11 +91,11 @@ async function handleOpenChange(open: boolean) { 处理记录 - - -

类型:

-

时间:

-

处理人:

+ + +

类型:{{item.type}}

+

时间:{{item.time}}

+

处理人:{{item.personName}}

diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/data.ts new file mode 100644 index 00000000..a270c375 --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/data.ts @@ -0,0 +1,59 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'itemName', + label: '项目名称', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '主键id', + field: 'id', + }, + { + title: '项目名称', + field: 'itemName', + }, + { + title: '备注', + field: 'remark', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键id', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '项目名称', + fieldName: 'itemName', + component: 'Input', + rules: 'required', + }, + { + label: '备注', + fieldName: 'remark', + component: 'Input', + }, +]; diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/index.vue new file mode 100644 index 00000000..bff83954 --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/inspectionItem-modal.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/inspectionItem-modal.vue new file mode 100644 index 00000000..7c60dcea --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/inspectionItem-modal.vue @@ -0,0 +1,101 @@ + + + + From f642b56e55d1cf983c6bbdede68d5616ba2d6378 Mon Sep 17 00:00:00 2001 From: FLL <2162874245@qq.com> Date: Thu, 10 Jul 2025 16:20:21 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E9=A2=84=E7=BA=A6=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/src/views/property/clean/cleanSettings/data.ts | 2 +- .../greenPlantRentalManagement/leasePogramManagement/data.ts | 3 ++- .../conferenceReservations/conferenceReservations-modal.vue | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/web-antd/src/views/property/clean/cleanSettings/data.ts b/apps/web-antd/src/views/property/clean/cleanSettings/data.ts index 8c95647a..b376ed7e 100644 --- a/apps/web-antd/src/views/property/clean/cleanSettings/data.ts +++ b/apps/web-antd/src/views/property/clean/cleanSettings/data.ts @@ -189,6 +189,6 @@ export const modalSchema: FormSchemaGetter = () => [ { label: '备注', fieldName: 'remark', - component: 'Input', + component: 'Textarea', }, ]; diff --git a/apps/web-antd/src/views/property/greenPlantRentalManagement/leasePogramManagement/data.ts b/apps/web-antd/src/views/property/greenPlantRentalManagement/leasePogramManagement/data.ts index 4e746939..5941cced 100644 --- a/apps/web-antd/src/views/property/greenPlantRentalManagement/leasePogramManagement/data.ts +++ b/apps/web-antd/src/views/property/greenPlantRentalManagement/leasePogramManagement/data.ts @@ -120,6 +120,7 @@ export const modalSchema: FormSchemaGetter = () => [ label: '价格体系', fieldName: 'price', component: 'Input', + rules: 'required', }, { label: '状态', @@ -134,6 +135,6 @@ export const modalSchema: FormSchemaGetter = () => [ { label: '备注', fieldName: 'remarks', - component: 'Input', + component: 'Textarea', }, ]; diff --git a/apps/web-antd/src/views/property/roomBooking/conferenceReservations/conferenceReservations-modal.vue b/apps/web-antd/src/views/property/roomBooking/conferenceReservations/conferenceReservations-modal.vue index 11e0c516..1b90d85b 100644 --- a/apps/web-antd/src/views/property/roomBooking/conferenceReservations/conferenceReservations-modal.vue +++ b/apps/web-antd/src/views/property/roomBooking/conferenceReservations/conferenceReservations-modal.vue @@ -118,6 +118,7 @@ async function queryAddServices() { unit: item.unit, quantity: 0 })) + console.log(res,addServiceList.value); } async function queryPersonData() { From 804e51ac7e87b5d00f97c0862b2428dbc874c93e Mon Sep 17 00:00:00 2001 From: FLL <2162874245@qq.com> Date: Thu, 10 Jul 2025 16:20:47 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E9=A2=84=E7=BA=A6=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/vite.config.mts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/web-antd/vite.config.mts b/apps/web-antd/vite.config.mts index 632523d8..cccd52f6 100644 --- a/apps/web-antd/vite.config.mts +++ b/apps/web-antd/vite.config.mts @@ -27,7 +27,7 @@ export default defineConfig(async () => { changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, ''), // mock代理目标地址 - target: 'http://192.168.43.169:8080', + target: 'http://192.168.1.101:8080', // target: 'http://192.168.0.108:8080', // target: 'http://192.168.0.106:8080', // target: 'http://47.109.37.87:3010', From af0cfc3804f7b5b971f09e53533b2928d239d02f Mon Sep 17 00:00:00 2001 From: FLL <2162874245@qq.com> Date: Thu, 10 Jul 2025 17:31:58 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E9=A2=84=E7=BA=A6=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inspectionPoint/index.ts | 61 ++++++ .../inspectionPoint/model.d.ts | 139 +++++++++++++ .../inspectionTask/index.ts | 61 ++++++ .../inspectionTask/model.d.ts | 169 +++++++++++++++ .../inspectionItem/data.ts | 19 +- .../inspectionPoint/data.ts | 149 ++++++++++++++ .../inspectionPoint/index.vue | 182 +++++++++++++++++ .../inspectionPoint/inspectionPoint-modal.vue | 101 +++++++++ .../inspectionTask/data.ts | 192 ++++++++++++++++++ .../inspectionTask/index.vue | 182 +++++++++++++++++ .../inspectionTask/inspectionTask-modal.vue | 101 +++++++++ 11 files changed, 1351 insertions(+), 5 deletions(-) create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/index.ts create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/model.d.ts create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionTask/index.ts create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionTask/model.d.ts create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/data.ts create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/inspectionPoint-modal.vue create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionTask/data.ts create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionTask/index.vue create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionTask/inspectionTask-modal.vue diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/index.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/index.ts new file mode 100644 index 00000000..c96eb528 --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/index.ts @@ -0,0 +1,61 @@ +import type { InspectionPointVO, InspectionPointForm, InspectionPointQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询巡检点列表 +* @param params +* @returns 巡检点列表 +*/ +export function inspectionPointList(params?: InspectionPointQuery) { + return requestClient.get>('/property/inspectionPoint/list', { params }); +} + +/** + * 导出巡检点列表 + * @param params + * @returns 巡检点列表 + */ +export function inspectionPointExport(params?: InspectionPointQuery) { + return commonExport('/property/inspectionPoint/export', params ?? {}); +} + +/** + * 查询巡检点详情 + * @param id id + * @returns 巡检点详情 + */ +export function inspectionPointInfo(id: ID) { + return requestClient.get(`/property/inspectionPoint/${id}`); +} + +/** + * 新增巡检点 + * @param data + * @returns void + */ +export function inspectionPointAdd(data: InspectionPointForm) { + return requestClient.postWithMsg('/property/inspectionPoint', data); +} + +/** + * 更新巡检点 + * @param data + * @returns void + */ +export function inspectionPointUpdate(data: InspectionPointForm) { + return requestClient.putWithMsg('/property/inspectionPoint', data); +} + +/** + * 删除巡检点 + * @param id id + * @returns void + */ +export function inspectionPointRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/inspectionPoint/${id}`); +} diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/model.d.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/model.d.ts new file mode 100644 index 00000000..dd4e4824 --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionPoint/model.d.ts @@ -0,0 +1,139 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface InspectionPointVO { + /** + * 主键id + */ + id: string | number; + + /** + * 巡检项目id + */ + itemId: string | number; + + /** + * 巡检点名称 + */ + pointName: string; + + /** + * 巡检点类型 + */ + pointType: number; + + /** + * nfc编码 + */ + nfcCode: string; + + /** + * 备注 + */ + remark: string; + + /** + * 创建人id + */ + createById: string | number; + + /** + * 更新人id + */ + updateById: string | number; + + /** + * 搜索值 + */ + searchValue: string; + +} + +export interface InspectionPointForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 巡检项目id + */ + itemId?: string | number; + + /** + * 巡检点名称 + */ + pointName?: string; + + /** + * 巡检点类型 + */ + pointType?: number; + + /** + * nfc编码 + */ + nfcCode?: string; + + /** + * 备注 + */ + remark?: string; + + /** + * 创建人id + */ + createById?: string | number; + + /** + * 更新人id + */ + updateById?: string | number; + + /** + * 搜索值 + */ + searchValue?: string; + +} + +export interface InspectionPointQuery extends PageQuery { + /** + * 巡检项目id + */ + itemId?: string | number; + + /** + * 巡检点名称 + */ + pointName?: string; + + /** + * 巡检点类型 + */ + pointType?: number; + + /** + * nfc编码 + */ + nfcCode?: string; + + /** + * 创建人id + */ + createById?: string | number; + + /** + * 更新人id + */ + updateById?: string | number; + + /** + * 搜索值 + */ + searchValue?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionTask/index.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionTask/index.ts new file mode 100644 index 00000000..1d94e435 --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionTask/index.ts @@ -0,0 +1,61 @@ +import type { InspectionTaskVO, InspectionTaskForm, InspectionTaskQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询巡检任务列表 +* @param params +* @returns 巡检任务列表 +*/ +export function inspectionTaskList(params?: InspectionTaskQuery) { + return requestClient.get>('/property/inspectionTask/list', { params }); +} + +/** + * 导出巡检任务列表 + * @param params + * @returns 巡检任务列表 + */ +export function inspectionTaskExport(params?: InspectionTaskQuery) { + return commonExport('/property/inspectionTask/export', params ?? {}); +} + +/** + * 查询巡检任务详情 + * @param id id + * @returns 巡检任务详情 + */ +export function inspectionTaskInfo(id: ID) { + return requestClient.get(`/property/inspectionTask/${id}`); +} + +/** + * 新增巡检任务 + * @param data + * @returns void + */ +export function inspectionTaskAdd(data: InspectionTaskForm) { + return requestClient.postWithMsg('/property/inspectionTask', data); +} + +/** + * 更新巡检任务 + * @param data + * @returns void + */ +export function inspectionTaskUpdate(data: InspectionTaskForm) { + return requestClient.putWithMsg('/property/inspectionTask', data); +} + +/** + * 删除巡检任务 + * @param id id + * @returns void + */ +export function inspectionTaskRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/inspectionTask/${id}`); +} diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionTask/model.d.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionTask/model.d.ts new file mode 100644 index 00000000..80d0adbb --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionTask/model.d.ts @@ -0,0 +1,169 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface InspectionTaskVO { + /** + * 主键id + */ + id: string | number; + + /** + * 巡检计划id + */ + inspectionPlanId: string | number; + + /** + * 实际巡检时间 + */ + actInsTime: string; + + /** + * 当前巡检人 + */ + actUserId: string | number; + + /** + * 巡检方式 + */ + taskType: string; + + /** + * 转移描述 + */ + transferDesc: string; + + /** + * 巡检状态 + */ + status: string; + + /** + * 备注 + */ + remark: string; + + /** + * 创建人id + */ + createById: string | number; + + /** + * 更新人id + */ + updateById: string | number; + + /** + * 搜索值 + */ + searchValue: string; + +} + +export interface InspectionTaskForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 巡检计划id + */ + inspectionPlanId?: string | number; + + /** + * 实际巡检时间 + */ + actInsTime?: string; + + /** + * 当前巡检人 + */ + actUserId?: string | number; + + /** + * 巡检方式 + */ + taskType?: string; + + /** + * 转移描述 + */ + transferDesc?: string; + + /** + * 巡检状态 + */ + status?: string; + + /** + * 备注 + */ + remark?: string; + + /** + * 创建人id + */ + createById?: string | number; + + /** + * 更新人id + */ + updateById?: string | number; + + /** + * 搜索值 + */ + searchValue?: string; + +} + +export interface InspectionTaskQuery extends PageQuery { + /** + * 巡检计划id + */ + inspectionPlanId?: string | number; + + /** + * 实际巡检时间 + */ + actInsTime?: string; + + /** + * 当前巡检人 + */ + actUserId?: string | number; + + /** + * 巡检方式 + */ + taskType?: string; + + /** + * 转移描述 + */ + transferDesc?: string; + + /** + * 巡检状态 + */ + status?: string; + + /** + * 创建人id + */ + createById?: string | number; + + /** + * 更新人id + */ + updateById?: string | number; + + /** + * 搜索值 + */ + searchValue?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/data.ts index a270c375..1cc20e42 100644 --- a/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/data.ts +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionItem/data.ts @@ -3,10 +3,15 @@ import type { VxeGridProps } from '#/adapter/vxe-table'; export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'id', + label: '编号', + }, { component: 'Input', fieldName: 'itemName', - label: '项目名称', + label: '巡检项目', }, ]; @@ -15,13 +20,17 @@ export const querySchema: FormSchemaGetter = () => [ export const columns: VxeGridProps['columns'] = [ { type: 'checkbox', width: 60 }, { - title: '主键id', + title: '编号', field: 'id', }, { - title: '项目名称', + title: '巡检项目', field: 'itemName', }, + { + title: '创建时间', + field: 'createTime', + }, { title: '备注', field: 'remark', @@ -46,7 +55,7 @@ export const modalSchema: FormSchemaGetter = () => [ }, }, { - label: '项目名称', + label: '巡检项目', fieldName: 'itemName', component: 'Input', rules: 'required', @@ -54,6 +63,6 @@ export const modalSchema: FormSchemaGetter = () => [ { label: '备注', fieldName: 'remark', - component: 'Input', + component: 'Textarea', }, ]; diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/data.ts new file mode 100644 index 00000000..d4fd584f --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/data.ts @@ -0,0 +1,149 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'itemId', + label: '巡检项目id', + }, + { + component: 'Input', + fieldName: 'pointName', + label: '巡检点名称', + }, + { + component: 'Select', + componentProps: { + }, + fieldName: 'pointType', + label: '巡检点类型', + }, + { + component: 'Input', + fieldName: 'nfcCode', + label: 'nfc编码', + }, + { + component: 'Input', + fieldName: 'createById', + label: '创建人id', + }, + { + component: 'Input', + fieldName: 'updateById', + label: '更新人id', + }, + { + component: 'Input', + fieldName: 'searchValue', + label: '搜索值', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '主键id', + field: 'id', + }, + { + title: '巡检项目id', + field: 'itemId', + }, + { + title: '巡检点名称', + field: 'pointName', + }, + { + title: '巡检点类型', + field: 'pointType', + }, + { + title: 'nfc编码', + field: 'nfcCode', + }, + { + title: '备注', + field: 'remark', + }, + { + title: '创建人id', + field: 'createById', + }, + { + title: '更新人id', + field: 'updateById', + }, + { + title: '搜索值', + field: 'searchValue', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键id', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '巡检项目id', + fieldName: 'itemId', + component: 'Input', + rules: 'required', + }, + { + label: '巡检点名称', + fieldName: 'pointName', + component: 'Input', + rules: 'required', + }, + { + label: '巡检点类型', + fieldName: 'pointType', + component: 'Select', + componentProps: { + }, + rules: 'selectRequired', + }, + { + label: 'nfc编码', + fieldName: 'nfcCode', + component: 'Input', + }, + { + label: '备注', + fieldName: 'remark', + component: 'Textarea', + }, + { + label: '创建人id', + fieldName: 'createById', + component: 'Input', + }, + { + label: '更新人id', + fieldName: 'updateById', + component: 'Input', + }, + { + label: '搜索值', + fieldName: 'searchValue', + component: 'Input', + }, +]; diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue new file mode 100644 index 00000000..77621ef6 --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/inspectionPoint-modal.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/inspectionPoint-modal.vue new file mode 100644 index 00000000..5cd51b95 --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/inspectionPoint-modal.vue @@ -0,0 +1,101 @@ + + + + diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/data.ts new file mode 100644 index 00000000..c12ee44d --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/data.ts @@ -0,0 +1,192 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'inspectionPlanId', + label: '巡检计划id', + }, + { + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + fieldName: 'actInsTime', + label: '实际巡检时间', + }, + { + component: 'Input', + fieldName: 'actUserId', + label: '当前巡检人', + }, + { + component: 'Select', + componentProps: { + }, + fieldName: 'taskType', + label: '巡检方式', + }, + { + component: 'Textarea', + fieldName: 'transferDesc', + label: '转移描述', + }, + { + component: 'RadioGroup', + componentProps: { + buttonStyle: 'solid', + optionType: 'button', + }, + fieldName: 'status', + label: '巡检状态', + }, + { + component: 'Input', + fieldName: 'createById', + label: '创建人id', + }, + { + component: 'Input', + fieldName: 'updateById', + label: '更新人id', + }, + { + component: 'Input', + fieldName: 'searchValue', + label: '搜索值', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '主键id', + field: 'id', + }, + { + title: '巡检计划id', + field: 'inspectionPlanId', + }, + { + title: '实际巡检时间', + field: 'actInsTime', + }, + { + title: '当前巡检人', + field: 'actUserId', + }, + { + title: '巡检方式', + field: 'taskType', + }, + { + title: '转移描述', + field: 'transferDesc', + }, + { + title: '巡检状态', + field: 'status', + }, + { + title: '备注', + field: 'remark', + }, + { + title: '创建人id', + field: 'createById', + }, + { + title: '更新人id', + field: 'updateById', + }, + { + title: '搜索值', + field: 'searchValue', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键id', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '巡检计划id', + fieldName: 'inspectionPlanId', + component: 'Input', + }, + { + label: '实际巡检时间', + fieldName: 'actInsTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '当前巡检人', + fieldName: 'actUserId', + component: 'Input', + }, + { + label: '巡检方式', + fieldName: 'taskType', + component: 'Select', + componentProps: { + }, + }, + { + label: '转移描述', + fieldName: 'transferDesc', + component: 'Textarea', + }, + { + label: '巡检状态', + fieldName: 'status', + component: 'RadioGroup', + componentProps: { + buttonStyle: 'solid', + optionType: 'button', + }, + }, + { + label: '备注', + fieldName: 'remark', + component: 'Input', + }, + { + label: '创建人id', + fieldName: 'createById', + component: 'Input', + }, + { + label: '更新人id', + fieldName: 'updateById', + component: 'Input', + }, + { + label: '搜索值', + fieldName: 'searchValue', + component: 'Input', + }, +]; diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/index.vue new file mode 100644 index 00000000..e257535e --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/inspectionTask-modal.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/inspectionTask-modal.vue new file mode 100644 index 00000000..b1d11246 --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionTask/inspectionTask-modal.vue @@ -0,0 +1,101 @@ + + + + From 1d9096e594f0cba4937b81a3cdedd8cf1f1a4c1d Mon Sep 17 00:00:00 2001 From: dev_ljl <2590379346@qq.com> Date: Thu, 10 Jul 2025 17:33:46 +0800 Subject: [PATCH 7/7] =?UTF-8?q?1=E3=80=81=E5=B7=A1=E6=A3=80=E7=AE=A1?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inspectionPlan/index.ts | 61 +++++ .../inspectionPlan/model.d.ts | 199 ++++++++++++++++ .../inspectionRoute/index.ts | 61 +++++ .../inspectionRoute/model.d.ts | 49 ++++ .../inspectionPlan/data.ts | 220 ++++++++++++++++++ .../inspectionPlan/index.vue | 182 +++++++++++++++ .../inspectionPlan/inspectionPlan-modal.vue | 101 ++++++++ .../inspectionRoute/data.ts | 59 +++++ .../inspectionRoute/index.vue | 182 +++++++++++++++ .../inspectionRoute/inspectionRoute-modal.vue | 101 ++++++++ 10 files changed, 1215 insertions(+) create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/index.ts create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/model.d.ts create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/index.ts create mode 100644 apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/model.d.ts create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/inspectionPlan-modal.vue create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/data.ts create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue create mode 100644 apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/inspectionRoute-modal.vue diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/index.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/index.ts new file mode 100644 index 00000000..2411dcb8 --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/index.ts @@ -0,0 +1,61 @@ +import type { InspectionPlanVO, InspectionPlanForm, InspectionPlanQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询巡检计划列表 +* @param params +* @returns 巡检计划列表 +*/ +export function inspectionPlanList(params?: InspectionPlanQuery) { + return requestClient.get>('/property/inspectionPlan/list', { params }); +} + +/** + * 导出巡检计划列表 + * @param params + * @returns 巡检计划列表 + */ +export function inspectionPlanExport(params?: InspectionPlanQuery) { + return commonExport('/property/inspectionPlan/export', params ?? {}); +} + +/** + * 查询巡检计划详情 + * @param id id + * @returns 巡检计划详情 + */ +export function inspectionPlanInfo(id: ID) { + return requestClient.get(`/property/inspectionPlan/${id}`); +} + +/** + * 新增巡检计划 + * @param data + * @returns void + */ +export function inspectionPlanAdd(data: InspectionPlanForm) { + return requestClient.postWithMsg('/property/inspectionPlan', data); +} + +/** + * 更新巡检计划 + * @param data + * @returns void + */ +export function inspectionPlanUpdate(data: InspectionPlanForm) { + return requestClient.putWithMsg('/property/inspectionPlan', data); +} + +/** + * 删除巡检计划 + * @param id id + * @returns void + */ +export function inspectionPlanRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/inspectionPlan/${id}`); +} diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/model.d.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/model.d.ts new file mode 100644 index 00000000..951a8553 --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/model.d.ts @@ -0,0 +1,199 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface InspectionPlanVO { + /** + * 主键id + */ + id: string | number; + + /** + * 巡检计划名称 + */ + planName: string; + + /** + * 巡检路线id + */ + inspectionRouteId: string | number; + + /** + * 巡检周期 + */ + inspectionPlanPeriod: number; + + /** + * 任务提前分组 + */ + beforeTime: number; + + /** + * 开始日期 + */ + startDate: string; + + /** + * 结束日期 + */ + endDate: string; + + /** + * 开始时间 + */ + startTime: string; + + /** + * 结束时间 + */ + endTime: string; + + /** + * 签到方式(0现场定位,1现场定位) + */ + signType: number; + + /** + * 允许补检(0允许1不允许) + */ + canReexamine: number; + + /** + * 选择员工 + */ + userId: string | number; + + /** + * 备注 + */ + remark: string; + +} + +export interface InspectionPlanForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 巡检计划名称 + */ + planName?: string; + + /** + * 巡检路线id + */ + inspectionRouteId?: string | number; + + /** + * 巡检周期 + */ + inspectionPlanPeriod?: number; + + /** + * 任务提前分组 + */ + beforeTime?: number; + + /** + * 开始日期 + */ + startDate?: string; + + /** + * 结束日期 + */ + endDate?: string; + + /** + * 开始时间 + */ + startTime?: string; + + /** + * 结束时间 + */ + endTime?: string; + + /** + * 签到方式(0现场定位,1现场定位) + */ + signType?: number; + + /** + * 允许补检(0允许1不允许) + */ + canReexamine?: number; + + /** + * 选择员工 + */ + userId?: string | number; + + /** + * 备注 + */ + remark?: string; + +} + +export interface InspectionPlanQuery extends PageQuery { + /** + * 巡检计划名称 + */ + planName?: string; + + /** + * 巡检路线id + */ + inspectionRouteId?: string | number; + + /** + * 巡检周期 + */ + inspectionPlanPeriod?: number; + + /** + * 任务提前分组 + */ + beforeTime?: number; + + /** + * 开始日期 + */ + startDate?: string; + + /** + * 结束日期 + */ + endDate?: string; + + /** + * 开始时间 + */ + startTime?: string; + + /** + * 结束时间 + */ + endTime?: string; + + /** + * 签到方式(0现场定位,1现场定位) + */ + signType?: number; + + /** + * 允许补检(0允许1不允许) + */ + canReexamine?: number; + + /** + * 选择员工 + */ + userId?: string | number; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/index.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/index.ts new file mode 100644 index 00000000..84eb165c --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/index.ts @@ -0,0 +1,61 @@ +import type { InspectionRouteVO, InspectionRouteForm, InspectionRouteQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询巡检路线列表 +* @param params +* @returns 巡检路线列表 +*/ +export function inspectionRouteList(params?: InspectionRouteQuery) { + return requestClient.get>('/property/inspectionRoute/list', { params }); +} + +/** + * 导出巡检路线列表 + * @param params + * @returns 巡检路线列表 + */ +export function inspectionRouteExport(params?: InspectionRouteQuery) { + return commonExport('/property/inspectionRoute/export', params ?? {}); +} + +/** + * 查询巡检路线详情 + * @param id id + * @returns 巡检路线详情 + */ +export function inspectionRouteInfo(id: ID) { + return requestClient.get(`/property/inspectionRoute/${id}`); +} + +/** + * 新增巡检路线 + * @param data + * @returns void + */ +export function inspectionRouteAdd(data: InspectionRouteForm) { + return requestClient.postWithMsg('/property/inspectionRoute', data); +} + +/** + * 更新巡检路线 + * @param data + * @returns void + */ +export function inspectionRouteUpdate(data: InspectionRouteForm) { + return requestClient.putWithMsg('/property/inspectionRoute', data); +} + +/** + * 删除巡检路线 + * @param id id + * @returns void + */ +export function inspectionRouteRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/inspectionRoute/${id}`); +} diff --git a/apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/model.d.ts b/apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/model.d.ts new file mode 100644 index 00000000..5b4b0836 --- /dev/null +++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionRoute/model.d.ts @@ -0,0 +1,49 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface InspectionRouteVO { + /** + * 主键id + */ + id: string | number; + + /** + * 路线名称 + */ + routeName: string; + + /** + * 备注 + */ + remark: string; + +} + +export interface InspectionRouteForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 路线名称 + */ + routeName?: string; + + /** + * 备注 + */ + remark?: string; + +} + +export interface InspectionRouteQuery extends PageQuery { + /** + * 路线名称 + */ + routeName?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts new file mode 100644 index 00000000..1fed16ca --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts @@ -0,0 +1,220 @@ +import type {FormSchemaGetter} from '#/adapter/form'; +import type {VxeGridProps} from '#/adapter/vxe-table'; +import {getDictOptions} from "#/utils/dict"; +import {renderDict} from "#/utils/render"; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'planName', + label: '计划名称', + }, + + { + component: 'Select', + componentProps: { + options: getDictOptions('wy_xjzq'), + }, + fieldName: 'inspectionPlanPeriod', + label: '巡检周期', + }, + { + component: 'Select', + componentProps: { + options: getDictOptions('wy_xjqdfs'), + }, + fieldName: 'signType', + label: '签到方式', + }, +]; + +export const columns: VxeGridProps['columns'] = [ + {type: 'checkbox', width: 60}, + { + title: '主键id', + field: 'id', + }, + { + title: '巡检计划名称', + field: 'planName', + }, + { + title: '巡检路线', + field: 'inspectionRouteId', + }, + { + title: '巡检周期', + field: 'inspectionPlanPeriod', + slots: { + default: ({ row }) => { + return renderDict(row.inspectionPlanPeriod, 'wy_xjzq'); + }, + }, + }, + { + title: '任务提前分组', + field: 'beforeTime', + }, + { + title: '开始日期', + field: 'startDate', + }, + { + title: '结束日期', + field: 'endDate', + }, + { + title: '开始时间', + field: 'startTime', + }, + { + title: '结束时间', + field: 'endTime', + }, + { + title: '签到方式', + field: 'signType', + slots: { + default: ({ row }) => { + return renderDict(row.signType, 'wy_xjqdfs'); + }, + }, + }, + { + title: '是否允许补检', + field: 'canReexamine', + slots: { + default: ({ row }) => { + return renderDict(row.canReexamine, 'wy_sf'); + }, + }, + }, + { + title: '选择员工', + field: 'userId', + }, + { + title: '备注', + field: 'remark', + }, + { + field: 'action', + fixed: 'right', + slots: {default: 'action'}, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键id', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '巡检计划名称', + fieldName: 'planName', + component: 'Input', + rules: 'required', + }, + { + label: '巡检路线', + fieldName: 'inspectionRouteId', + component: 'Input', + rules: 'required', + }, + { + label: '巡检周期', + fieldName: 'inspectionPlanPeriod', + component: 'Input', + rules: 'required', + componentProps: { + options: getDictOptions('wy_xjzq'), + }, + }, + { + label: '任务提前分组', + fieldName: 'beforeTime', + component: 'Input', + rules: 'required', + }, + { + label: '开始日期', + fieldName: 'startDate', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + rules: 'required', + }, + { + label: '结束日期', + fieldName: 'endDate', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + rules: 'required', + }, + { + label: '开始时间', + fieldName: 'startTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + rules: 'required', + }, + { + label: '结束时间', + fieldName: 'endTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + rules: 'required', + }, + { + label: '签到方式', + fieldName: 'signType', + component: 'Select', + componentProps: { + options: getDictOptions('wy_xjqdfs'), + }, + rules: 'selectRequired', + }, + { + label: '允许补检', + fieldName: 'canReexamine', + component: 'Select', + componentProps: { + options: getDictOptions('wy_sf'), + }, + rules: 'selectRequired', + }, + { + label: '选择员工', + fieldName: 'userId', + component: 'Input', + rules: 'required', + }, + { + label: '备注', + fieldName: 'remark', + component: 'Input', + }, +]; diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue new file mode 100644 index 00000000..c8554f64 --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/inspectionPlan-modal.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/inspectionPlan-modal.vue new file mode 100644 index 00000000..65fa155f --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/inspectionPlan-modal.vue @@ -0,0 +1,101 @@ + + + + diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/data.ts new file mode 100644 index 00000000..ca886e6c --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/data.ts @@ -0,0 +1,59 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'routeName', + label: '路线名称', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '主键id', + field: 'id', + }, + { + title: '路线名称', + field: 'routeName', + }, + { + title: '备注', + field: 'remark', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键id', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '路线名称', + fieldName: 'routeName', + component: 'Input', + rules: 'required', + }, + { + label: '备注', + fieldName: 'remark', + component: 'Input', + }, +]; diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue new file mode 100644 index 00000000..400e47f1 --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/inspectionRoute-modal.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/inspectionRoute-modal.vue new file mode 100644 index 00000000..52ced73e --- /dev/null +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/inspectionRoute-modal.vue @@ -0,0 +1,101 @@ + + + +