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
index 951a8553..c990b10e 100644
--- a/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/model.d.ts
+++ b/apps/web-antd/src/api/property/inspectionManagement/inspectionPlan/model.d.ts
@@ -1,4 +1,4 @@
-import type { PageQuery, BaseEntity } from '#/api/common';
+import type {PageQuery, BaseEntity} from '#/api/common';
export interface InspectionPlanVO {
/**
@@ -66,6 +66,28 @@ export interface InspectionPlanVO {
*/
remark: string;
+ /**
+ * 计划时间区间
+ */
+ planDate?: any[];
+
+ /**
+ * 巡检月
+ */
+ inspectionMonth?:string;
+ /**
+ * 巡检日
+ */
+ inspectionDay?:string;
+ /**
+ * 巡检周
+ */
+ inspectionWorkday?:string;
+
+ /**
+ * 状态
+ */
+ state?:string
}
export interface InspectionPlanForm extends BaseEntity {
@@ -133,6 +155,18 @@ export interface InspectionPlanForm extends BaseEntity {
* 备注
*/
remark?: string;
+ /**
+ * 巡检月
+ */
+ inspectionMonth?:string;
+ /**
+ * 巡检日
+ */
+ inspectionDay?:string;
+ /**
+ * 巡检周
+ */
+ inspectionWorkday?:string;
}
@@ -193,7 +227,19 @@ export interface InspectionPlanQuery extends PageQuery {
userId?: string | number;
/**
- * 日期范围参数
- */
+ * 日期范围参数
+ */
params?: any;
+ /**
+ * 巡检月
+ */
+ inspectionMonth?:string;
+ /**
+ * 巡检日
+ */
+ inspectionDay?:string;
+ /**
+ * 巡检周
+ */
+ inspectionWorkday?:string;
}
diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts
index 1fed16ca..98fa9fe7 100644
--- a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts
+++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/data.ts
@@ -2,6 +2,7 @@ import type {FormSchemaGetter} from '#/adapter/form';
import type {VxeGridProps} from '#/adapter/vxe-table';
import {getDictOptions} from "#/utils/dict";
import {renderDict} from "#/utils/render";
+import {z} from "#/adapter/form";
export const querySchema: FormSchemaGetter = () => [
@@ -32,71 +33,65 @@ export const querySchema: FormSchemaGetter = () => [
export const columns: VxeGridProps['columns'] = [
{type: 'checkbox', width: 60},
{
- title: '主键id',
- field: 'id',
- },
- {
- title: '巡检计划名称',
+ title: '计划名称',
field: 'planName',
+ minWidth: 180,
},
{
title: '巡检路线',
field: 'inspectionRouteId',
+ width: 180,
},
{
title: '巡检周期',
field: 'inspectionPlanPeriod',
slots: {
- default: ({ row }) => {
+ default: ({row}) => {
return renderDict(row.inspectionPlanPeriod, 'wy_xjzq');
},
},
+ width: 100,
},
{
- title: '任务提前分组',
+ title: '任务提前分钟',
field: 'beforeTime',
+ width: 120,
},
{
title: '开始日期',
field: 'startDate',
+ width: 120,
},
{
title: '结束日期',
field: 'endDate',
- },
- {
- title: '开始时间',
- field: 'startTime',
- },
- {
- title: '结束时间',
- field: 'endTime',
+ width: 120,
},
{
title: '签到方式',
field: 'signType',
slots: {
- default: ({ row }) => {
+ default: ({row}) => {
return renderDict(row.signType, 'wy_xjqdfs');
},
},
+ width: 120,
},
{
title: '是否允许补检',
field: 'canReexamine',
slots: {
- default: ({ row }) => {
+ default: ({row}) => {
return renderDict(row.canReexamine, 'wy_sf');
},
},
+ width: 120,
},
{
- title: '选择员工',
- field: 'userId',
- },
- {
- title: '备注',
- field: 'remark',
+ title: '状态',
+ field: 'state',
+ width: 120,
+ slots:{default: 'state'}
},
{
field: 'action',
@@ -118,7 +113,7 @@ export const modalSchema: FormSchemaGetter = () => [
},
},
{
- label: '巡检计划名称',
+ label: '计划名称',
fieldName: 'planName',
component: 'Input',
rules: 'required',
@@ -126,61 +121,80 @@ export const modalSchema: FormSchemaGetter = () => [
{
label: '巡检路线',
fieldName: 'inspectionRouteId',
- component: 'Input',
+ component: 'ApiSelect',
rules: 'required',
},
{
label: '巡检周期',
fieldName: 'inspectionPlanPeriod',
- component: 'Input',
+ component: 'Select',
rules: 'required',
componentProps: {
options: getDictOptions('wy_xjzq'),
},
},
{
- label: '任务提前分组',
+ label: '任务提前',
fieldName: 'beforeTime',
component: 'Input',
- rules: 'required',
+ rules: z.number({
+ required_error: "请输入任务提前完成分钟数",
+ invalid_type_error: "请输入任务提前完成分钟数"
+ }),
+ slots: {default: 'beforeTime'},
},
{
- label: '开始日期',
- fieldName: 'startDate',
- component: 'DatePicker',
- componentProps: {
- showTime: true,
- format: 'YYYY-MM-DD HH:mm:ss',
- valueFormat: 'YYYY-MM-DD HH:mm:ss',
+ label: '周',
+ fieldName: 'inspectionWorkday',
+ component: 'CheckboxGroup',
+ rules: 'selectRequired',
+ formItemClass: 'col-span-2',
+ dependencies: {
+ show: (formValue) => formValue.inspectionPlanPeriod == '2',
+ triggerFields: ['inspectionPlanPeriod'],
},
- 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',
+ options: getDictOptions('wy_xq')
+ }
},
{
- label: '开始时间',
- fieldName: 'startTime',
- component: 'DatePicker',
+ label: '月',
+ fieldName: 'inspectionMonth',
+ component: 'CheckboxGroup',
+ rules: 'selectRequired',
+ formItemClass: 'col-span-2',
+ dependencies: {
+ show: (formValue) => formValue.inspectionPlanPeriod == '1',
+ triggerFields: ['inspectionPlanPeriod'],
+ },
componentProps: {
- showTime: true,
- format: 'YYYY-MM-DD HH:mm:ss',
- valueFormat: 'YYYY-MM-DD HH:mm:ss',
- },
- rules: 'required',
+ options: Array.from({ length: 12 }, (_, i) => ({
+ label: `${i + 1}月`,
+ value: (i + 1).toString(),
+ })),
+ }
},
{
- label: '结束时间',
- fieldName: 'endTime',
- component: 'DatePicker',
+ label: '日',
+ fieldName: 'inspectionDay',
+ component: 'CheckboxGroup',
+ rules: 'selectRequired',
+ formItemClass: 'col-span-2',
+ dependencies: {
+ show: (formValue) => formValue.inspectionPlanPeriod == '1',
+ triggerFields: ['inspectionPlanPeriod'],
+ },
+ componentProps: {
+ options: Array.from({ length: 31 }, (_, i) => ({
+ label: `${i + 1}日`,
+ value: (i + 1).toString(),
+ })),
+ }
+ },
+ {
+ label: '计划日期',
+ fieldName: 'planDate',
+ component: 'RangePicker',
componentProps: {
showTime: true,
format: 'YYYY-MM-DD HH:mm:ss',
@@ -200,21 +214,35 @@ export const modalSchema: FormSchemaGetter = () => [
{
label: '允许补检',
fieldName: 'canReexamine',
- component: 'Select',
+ component: 'RadioGroup',
componentProps: {
options: getDictOptions('wy_sf'),
+ buttonStyle: 'solid',
},
rules: 'selectRequired',
},
{
- label: '选择员工',
+ label: '巡检人员',
fieldName: 'userId',
- component: 'Input',
- rules: 'required',
+ component: 'ApiSelect',
+ componentProps:{
+ mode: 'multiple',
+ },
+ rules: z.array(z.string()).min(1, { message: '请选择巡检人员' }),
+ formItemClass: 'col-span-2'
},
{
label: '备注',
fieldName: 'remark',
- component: 'Input',
+ component: 'Textarea',
+ formItemClass: 'col-span-2'
},
];
+
+const weekOptions = (): any[] => {
+ let arr: any[] = []
+ for (let i = 1; i <= 7; i++) {
+ arr.push({label: '星期' + '', value: i})
+ }
+ return arr;
+}
diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue
index c8554f64..2881f7dc 100644
--- a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue
+++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/index.vue
@@ -1,14 +1,8 @@
@@ -154,6 +148,12 @@ function handleDownloadExcel() {
+
+ {{ $t('pages.common.info') }}
+
+
+ tableApi.query()"
+ />
+
+
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
index 65fa155f..77604475 100644
--- a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/inspectionPlan-modal.vue
+++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/inspectionPlan-modal.vue
@@ -1,15 +1,23 @@
-
+
+
+
+
+ 分钟完成
+
+
+
+
diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/plan-detail.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/plan-detail.vue
new file mode 100644
index 00000000..0a46807f
--- /dev/null
+++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPlan/plan-detail.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+ {{ inspectionPlanDetail.planName }}
+
+
+ {{ inspectionPlanDetail.inspectionRouteId }}
+
+
+
+
+
+ {{ inspectionPlanDetail.beforeTime + ' 分钟完成' }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ inspectionPlanDetail.startDate + '\xa0至\xa0' + inspectionPlanDetail.endDate }}
+
+
+
+
+
+
+
+
+ {{ inspectionPlanDetail.projectName }}
+
+
+ {{ inspectionPlanDetail.remark }}
+
+
+ {{ inspectionPlanDetail.state == '1' ? '停用' : '启用' }}
+
+
+
+
diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue
index 77621ef6..156f113a 100644
--- a/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue
+++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionPoint/index.vue
@@ -1,13 +1,7 @@
@@ -129,12 +115,6 @@ function handleDownloadExcel() {
-
- {{ $t('pages.common.export') }}
-
[
{
component: 'Input',
fieldName: 'routeName',
- label: '路线名称',
+ label: '巡检路线名称',
},
];
@@ -15,12 +15,16 @@ export const querySchema: FormSchemaGetter = () => [
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
- title: '主键id',
- field: 'id',
+ title: '巡检路线名称',
+ field: 'routeName',
},
{
- title: '路线名称',
- field: 'routeName',
+ title: '创建时间',
+ field: 'createTime',
+ },
+ {
+ title: '排序',
+ field: 'sort',
},
{
title: '备注',
@@ -46,14 +50,20 @@ export const modalSchema: FormSchemaGetter = () => [
},
},
{
- label: '路线名称',
+ label: '巡检路线名称',
fieldName: 'routeName',
component: 'Input',
rules: 'required',
},
+ {
+ label: '排序',
+ fieldName: 'sort',
+ component: 'Input',
+ rules: 'required',
+ },
{
label: '备注',
fieldName: 'remark',
- component: 'Input',
+ component: 'Textarea',
},
];
diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue
index 400e47f1..a6d4d94a 100644
--- a/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue
+++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionRoute/index.vue
@@ -16,19 +16,17 @@ import {
} from '#/adapter/vxe-table';
import {
- inspectionRouteExport,
inspectionRouteList,
inspectionRouteRemove,
} from '#/api/property/inspectionManagement/inspectionRoute';
import type { InspectionRouteForm } from '#/api/property/inspectionManagement/inspectionRoute/model';
-import { commonDownloadExcel } from '#/utils/file/download';
import inspectionRouteModal from './inspectionRoute-modal.vue';
import { columns, querySchema } from './data';
const formOptions: VbenFormProps = {
commonConfig: {
- labelWidth: 80,
+ labelWidth: 90,
componentProps: {
allowClear: true,
},
@@ -116,12 +114,6 @@ function handleMultiDelete() {
},
});
}
-
-function handleDownloadExcel() {
- commonDownloadExcel(inspectionRouteExport, '巡检路线数据', tableApi.formApi.form.values, {
- fieldMappingTime: formOptions.fieldMappingTime,
- });
-}
@@ -129,12 +121,6 @@ function handleDownloadExcel() {
-
- {{ $t('pages.common.export') }}
-