From 7cc3ac34f175e2dacc76a02fb66ae3ba9f747b55 Mon Sep 17 00:00:00 2001
From: zhuguifei <zhuguifei@zhuguifeideiMac.local>
Date: 星期二, 11 三月 2025 08:14:20 +0800
Subject: [PATCH] 调整

---
 eims-ui/apps/web-antd/src/views/eims/components/miant-plan-modal.vue                                  |   49 ++++++++++++
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrderServiceImpl.java |   36 --------
 eims-ui/apps/web-antd/src/views/eims/maint-order/index.vue                                            |    5 
 eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrderMapper.xml                    |    2 
 eims-ui/apps/web-antd/src/api/eims/maint-plan/model.d.ts                                              |    4 
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java                |   24 +-----
 /dev/null                                                                                             |    7 -
 eims-ui/apps/web-antd/src/views/eims/maint-plan/data.tsx                                              |   10 ++
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintPlan.java                   |   15 +++
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintPlanBo.java              |   17 ++++
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java             |    5 +
 eims-ui/apps/web-antd/src/views/eims/maint-plan/index.vue                                             |   16 +++-
 eims-ui/apps/web-antd/src/views/eims/maint-order/data.tsx                                             |   14 +++
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintPlanVo.java              |   16 ++++
 14 files changed, 149 insertions(+), 71 deletions(-)

diff --git a/eims-ui/apps/web-antd/src/api/eims/maint-orditm/index.ts b/eims-ui/apps/web-antd/src/api/eims/maint-orditm/index.ts
deleted file mode 100644
index 8807a5a..0000000
--- a/eims-ui/apps/web-antd/src/api/eims/maint-orditm/index.ts
+++ /dev/null
@@ -1,61 +0,0 @@
-import type { MaintOrditmVO } from './model';
-
-import type { ID, IDS, PageResult } from '#/api/common';
-
-import { commonExport } from '#/api/helper';
-import { requestClient } from '#/api/request';
-
-enum Api {
-  maintOrditmExport = '/eims/maintOrditm/export',
-  maintOrditmList = '/eims/maintOrditm/list',
-  root = '/eims/maintOrditm'
-}
-
-/**
- * 鏌ヨ宸ュ崟鏉$洰鍒楄〃
- * @param query
- * @returns {*}
- */
-
-export function listMaintOrditm(params?: any) {
-  return requestClient.get<PageResult<MaintOrditmVO>>(Api.maintOrditmList, { params });
-}
-
-/**
- * 鏌ヨ宸ュ崟鏉$洰璇︾粏
- * @param maintOrditmId
- */
-export function getMaintOrditm(maintOrditmId: ID) {
-  return requestClient.get<MaintOrditmVO>(`${Api.root}/${maintOrditmId}`);
-}
-
-/**
- * 鏂板宸ュ崟鏉$洰
- * @param data
- */
-export function addMaintOrditm(data: any) {
-  return requestClient.postWithMsg<void>(Api.root, data);
-}
-
-/**
- * 淇敼宸ュ崟鏉$洰
- * @param data
- */
-export function updateMaintOrditm(data: any) {
-  return requestClient.putWithMsg<void>(Api.root, data);
-}
-
-/**
- * 鍒犻櫎宸ュ崟鏉$洰
- * @param maintOrditmId
- */
-export function delMaintOrditm(maintOrditmId: IDS) {
-  return requestClient.deleteWithMsg<void>(`${Api.root}/${maintOrditmId}`);
-}
-/**
- * 瀵煎嚭
- * @param
- */
-export function maintOrditmExport(data: any) {
-  return commonExport(Api.maintOrditmExport, data);
-}
diff --git a/eims-ui/apps/web-antd/src/api/eims/maint-orditm/model.d.ts b/eims-ui/apps/web-antd/src/api/eims/maint-orditm/model.d.ts
deleted file mode 100644
index 0e39a49..0000000
--- a/eims-ui/apps/web-antd/src/api/eims/maint-orditm/model.d.ts
+++ /dev/null
@@ -1,46 +0,0 @@
-export interface MaintOrditmVO {
-  /**
-   *
-   */
-  id: number | string;
-
-  /**
-   * 宸ュ崟id
-   */
-  orderId: number | string;
-
-  /**
-   * 璁惧id
-   */
-  equId: number | string;
-
-  /**
-   * 淇濆吇椤圭洰鍚嶇О
-   */
-  itmName: string;
-
-  /**
-   * 淇濆吇椤圭洰鎿嶄綔鏍囧噯
-   */
-  itmAction: string;
-
-  /**
-   * 淇濆吇鎿嶄綔鐢ㄦ埛
-   */
-  itmUser: number;
-
-  /**
-   * 淇濆吇鏃堕棿
-   */
-  itmTime: string;
-
-  /**
-   * 瀹屾垚鐘舵�侊紙瀛楀吀锛�
-   */
-  status: string;
-
-  /**
-   * 澶囨敞
-   */
-  remark: string;
-}
diff --git a/eims-ui/apps/web-antd/src/api/eims/maint-plan/model.d.ts b/eims-ui/apps/web-antd/src/api/eims/maint-plan/model.d.ts
index 09f143c..2fe4c0c 100644
--- a/eims-ui/apps/web-antd/src/api/eims/maint-plan/model.d.ts
+++ b/eims-ui/apps/web-antd/src/api/eims/maint-plan/model.d.ts
@@ -8,7 +8,9 @@
    * 璁惧id
 
    */
-  equId: number | string;
+  maintName: string;
+  maintNo: number;
+  maintDesc: string;
 
   /**
    * 淇濆吇绫诲瀷锛堝瓧鍏革級
diff --git a/eims-ui/apps/web-antd/src/api/eims/maint-stand/index.ts b/eims-ui/apps/web-antd/src/api/eims/maint-stand/index.ts
deleted file mode 100644
index 0822d12..0000000
--- a/eims-ui/apps/web-antd/src/api/eims/maint-stand/index.ts
+++ /dev/null
@@ -1,61 +0,0 @@
-import type { MaintStandVO } from './model';
-
-import type { ID, IDS, PageResult } from '#/api/common';
-
-import { commonExport } from '#/api/helper';
-import { requestClient } from '#/api/request';
-
-enum Api {
-  maintStandExport = '/eims/maintStand/export',
-  maintStandList = '/eims/maintStand/list',
-  root = '/eims/maintStand'
-}
-
-/**
- * 鏌ヨ淇濆吇鏍囧噯鍒楄〃
- * @param query
- * @returns {*}
- */
-
-export function listMaintStand(params?: any) {
-  return requestClient.get<PageResult<MaintStandVO>>(Api.maintStandList, { params });
-}
-
-/**
- * 鏌ヨ淇濆吇鏍囧噯璇︾粏
- * @param maintStandId
- */
-export function getMaintStand(maintStandId: ID) {
-  return requestClient.get<MaintStandVO>(`${Api.root}/${maintStandId}`);
-}
-
-/**
- * 鏂板淇濆吇鏍囧噯
- * @param data
- */
-export function addMaintStand(data: any) {
-  return requestClient.postWithMsg<void>(Api.root, data);
-}
-
-/**
- * 淇敼淇濆吇鏍囧噯
- * @param data
- */
-export function updateMaintStand(data: any) {
-  return requestClient.putWithMsg<void>(Api.root, data);
-}
-
-/**
- * 鍒犻櫎淇濆吇鏍囧噯
- * @param maintStandId
- */
-export function delMaintStand(maintStandId: IDS) {
-  return requestClient.deleteWithMsg<void>(`${Api.root}/${maintStandId}`);
-}
-/**
- * 瀵煎嚭
- * @param
- */
-export function maintStandExport(data: any) {
-  return commonExport(Api.maintStandExport, data);
-}
diff --git a/eims-ui/apps/web-antd/src/api/eims/maint-stand/model.d.ts b/eims-ui/apps/web-antd/src/api/eims/maint-stand/model.d.ts
deleted file mode 100644
index 8dd1ba4..0000000
--- a/eims-ui/apps/web-antd/src/api/eims/maint-stand/model.d.ts
+++ /dev/null
@@ -1,53 +0,0 @@
-export interface MaintStandVO {
-  /**
-   *
-   */
-  id: string | number;
-
-  /**
-   * 璁惧id
-   */
-  equId: string | number;
-
-  /**
-   * 璁惧缂栫爜
-   */
-  equCode: string;
-
-  /**
-   * 璁惧绫诲瀷
-   */
-  equTypeId: string | number;
-
-  /**
-   * 璧勪骇缂栧彿
-   */
-  assetNo: string;
-
-  /**
-   * 璁惧鍚嶇О
-
-   */
-  equName: string;
-
-  /**
-   * 璁惧鍨嬪彿
-   */
-  modelNo: string;
-
-  /**
-   * 淇濆吇椤圭洰鍚嶇О
-   */
-  name: string;
-
-  /**
-   * 淇濆吇椤圭洰鏍囧噯
-   */
-  stand: string;
-
-  /**
-   * 澶囨敞
-   */
-  remark: string;
-
-}
diff --git a/eims-ui/apps/web-antd/src/views/eims/components/miant-plan-modal.vue b/eims-ui/apps/web-antd/src/views/eims/components/miant-plan-modal.vue
new file mode 100644
index 0000000..ab1b87e
--- /dev/null
+++ b/eims-ui/apps/web-antd/src/views/eims/components/miant-plan-modal.vue
@@ -0,0 +1,49 @@
+<script setup lang="ts">
+import { ref } from 'vue';
+
+import { useVbenModal } from '@vben/common-ui';
+
+import { message } from 'ant-design-vue';
+
+import InnerView from '#/views/eims/maint-plan/index.vue';
+
+const emit = defineEmits<{ updateSelect: [any] }>();
+
+const [BasicModal, modalApi] = useVbenModal({
+  fullscreenButton: false,
+  draggable: true,
+  onCancel: handleCancel,
+  onConfirm: handleConfirm
+});
+const innerView = ref();
+
+async function handleConfirm() {
+  try {
+    modalApi.modalLoading(true);
+    const tableSelect = innerView.value.tableSelect();
+    if (tableSelect.length > 1) {
+      message.error('鏈�澶氬彧鑳介�夋嫨涓�鏉℃暟鎹紒');
+      modalApi.modalLoading(false);
+      return false;
+    }
+    emit('updateSelect', tableSelect[0]);
+    await handleCancel();
+  } catch (error) {
+    console.error(error);
+  } finally {
+    modalApi.modalLoading(false);
+  }
+}
+
+async function handleCancel() {
+  modalApi.close();
+}
+</script>
+
+<template>
+  <BasicModal :fullscreen-button="true" class="w-[800px]">
+    <InnerView ref="innerView" />
+  </BasicModal>
+</template>
+
+<style scoped></style>
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-order/data.tsx b/eims-ui/apps/web-antd/src/views/eims/maint-order/data.tsx
index 8c28042..d3bc2b5 100644
--- a/eims-ui/apps/web-antd/src/views/eims/maint-order/data.tsx
+++ b/eims-ui/apps/web-antd/src/views/eims/maint-order/data.tsx
@@ -84,11 +84,15 @@
     title: '璁惧鍚嶇О',
     field: 'equName',
     minWidth: 200,
-    fixed: 'left'
   },
   {
     title: '璧勪骇缂栧彿',
     field: 'assetNo',
+    minWidth: 160
+  },
+  {
+    title: '淇濆吇椤�',
+    field: 'maintName',
     minWidth: 160
   },
   {
@@ -151,6 +155,14 @@
   },
   {
     component: 'Input',
+    dependencies: {
+      show: () => false,
+      triggerFields: ['']
+    },
+    fieldName: 'planId',
+  },
+  {
+    component: 'Input',
     fieldName: 'equId',
     label: '璁惧id',
     dependencies: {
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-order/index.vue b/eims-ui/apps/web-antd/src/views/eims/maint-order/index.vue
index f5e3edc..b588a79 100644
--- a/eims-ui/apps/web-antd/src/views/eims/maint-order/index.vue
+++ b/eims-ui/apps/web-antd/src/views/eims/maint-order/index.vue
@@ -19,7 +19,6 @@
 
 import { columns, querySchema } from './data';
 import maintOrderDrawer from './maint-order-drawer.vue';
-import SubOrditm from './sub-orditm.vue';
 
 defineExpose({
   tableSelect
@@ -243,7 +242,7 @@
 <template>
   <Page :auto-content-height="true">
     <div class="flex h-full gap-[8px] flex-col">
-      <BasicTable class="h-2/3" table-title="淇濆吇宸ュ崟鍒楄〃">
+      <BasicTable table-title="淇濆吇宸ュ崟鍒楄〃">
         <template #toolbar-tools>
           <Space>
             <a-button v-access:code="['eims:maintOrder:export']" @click="handleDownloadExcel">
@@ -309,7 +308,7 @@
         </template>
       </BasicTable>
       <!--<BasisSubTable :columns="maintStandCol" :list-api="listMaintStand" :req-value="equId" class="h-1/3" req-key="equId" title="淇濆吇瀹炴柦椤圭洰" />-->
-      <SubOrditm :order-id="orderId" class="h-1/3" />
+
     </div>
     <MaintOrderDrawer @reload="tableApi.query()" />
   </Page>
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-order/sub-orditm.vue b/eims-ui/apps/web-antd/src/views/eims/maint-order/sub-orditm.vue
deleted file mode 100644
index 98bf28c..0000000
--- a/eims-ui/apps/web-antd/src/views/eims/maint-order/sub-orditm.vue
+++ /dev/null
@@ -1,147 +0,0 @@
-<script setup lang="ts">
-import type { Recordable } from '@vben/types';
-
-import { nextTick, ref, watch } from 'vue';
-
-import { useVbenDrawer } from '@vben/common-ui';
-import { $t } from '@vben/locales';
-import { getVxePopupContainer } from '@vben/utils';
-
-import { Popconfirm, Space } from 'ant-design-vue';
-
-import { useVbenVxeGrid, type VxeGridProps, vxeSortEvent } from '#/adapter/vxe-table';
-import { listMaintOrditm } from '#/api/eims/maint-orditm';
-import { columns } from '#/views/eims/maint-orditm/data';
-import maintOrditmDrawer from '#/views/eims/maint-orditm/maint-orditm-drawer.vue';
-
-interface Props {
-  orderId?: string;
-}
-
-const props = defineProps<Props>();
-
-const completed = ref<string>('宸插畬鎴�');
-// 鏈洏鐐�
-const uncompleted = ref<string>('鏈畬鎴�');
-
-const gridOptions: VxeGridProps = {
-  checkboxConfig: {
-    // 楂樹寒
-    highlight: true,
-    // 缈婚〉鏃朵繚鐣欓�変腑鐘舵��
-    reserve: true
-    // 鐐瑰嚮琛岄�変腑
-    // trigger: 'row'
-  },
-  columns,
-  height: 'auto',
-  keepSource: true,
-  pagerConfig: {},
-  proxyConfig: {
-    ajax: {
-      query: async ({ page }, formValues = {}) => {
-        if (props.orderId) {
-          const params = { orderId: props.orderId };
-          Object.assign(formValues, params);
-        } else {
-          const params = { orderId: -1 };
-          Object.assign(formValues, params);
-        }
-        return await listMaintOrditm({
-          pageNum: page.currentPage,
-          pageSize: page.pageSize,
-          ...formValues
-        });
-      },
-      querySuccess: () => {
-        nextTick(() => {
-          // eslint-disable-next-line no-use-before-define
-          const data = tableApi?.grid.getData();
-          completed.value = '宸插畬鎴�';
-          uncompleted.value = '鏈畬鎴�';
-          if (data.length <= 0) return false;
-          const wc = data?.filter((i) => i.status === '1')?.length;
-          completed.value = `宸插畬鎴�(${wc})`;
-          uncompleted.value = `鏈畬鎴�(${data.length - wc})`;
-        });
-      }
-    }
-  },
-  rowConfig: {
-    isHover: true,
-    keyField: 'id'
-  },
-  sortConfig: {
-    // 杩滅▼鎺掑簭
-    remote: true,
-    // 鏀寔澶氬瓧娈垫帓搴� 榛樿鍏抽棴
-    multiple: true
-  },
-  id: 'sub-orditm-index'
-};
-
-const [BasicTable, tableApi] = useVbenVxeGrid({
-  gridOptions,
-  gridEvents: {
-    sortChange: (sortParams) => vxeSortEvent(tableApi, sortParams)
-  }
-});
-
-const [MaintOrditmDrawer, maintOrditmDrawerApi] = useVbenDrawer({
-  connectedComponent: maintOrditmDrawer
-});
-
-function handleAdd() {
-  maintOrditmDrawerApi.setData({});
-  maintOrditmDrawerApi.open();
-}
-
-async function handleEdit(record: Recordable<any>) {
-  maintOrditmDrawerApi.setData({ id: record.id });
-  maintOrditmDrawerApi.open();
-}
-
-// 浣跨敤 watch 鐩戝惉 resId 鐨勫彉鍖�
-watch(
-  () => props.orderId,
-  (newVal, oldVal) => {
-    if (newVal !== oldVal && newVal) {
-      tableApi.query();
-    }
-  },
-  { immediate: false }
-);
-</script>
-
-<template>
-  <div class="w-full">
-    <BasicTable table-title="瀹炴柦椤圭洰">
-      <template #toolbar-tools>
-        <Space>
-          <a-button>{{ uncompleted }}</a-button>
-          <a-button type="primary"> {{ completed }}</a-button>
-        </Space>
-      </template>
-
-      <template #equName="{ row }">
-        <Space>
-          <span>{{ row.equName }}</span>
-        </Space>
-      </template>
-
-      <template #action="{ row }">
-        <Space>
-          <ghost-button v-access:code="['eims:maintOrditm:edit']" @click.stop="handleEdit(row)">
-            {{ $t('pages.common.edit') }}
-          </ghost-button>
-          <Popconfirm :get-popup-container="getVxePopupContainer" placement="left" title="纭鍒犻櫎锛�" @confirm="handleDelete(row)">
-            <ghost-button danger v-access:code="['eims:maintOrditm:remove']" @click.stop="">
-              {{ $t('pages.common.delete') }}
-            </ghost-button>
-          </Popconfirm>
-        </Space>
-      </template>
-    </BasicTable>
-    <MaintOrditmDrawer @reload="tableApi.query()" />
-  </div>
-</template>
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-orditm/data.tsx b/eims-ui/apps/web-antd/src/views/eims/maint-orditm/data.tsx
deleted file mode 100644
index 37e58ac..0000000
--- a/eims-ui/apps/web-antd/src/views/eims/maint-orditm/data.tsx
+++ /dev/null
@@ -1,169 +0,0 @@
-import type { VxeGridProps } from '#/adapter/vxe-table';
-
-import { DictEnum } from '@vben/constants';
-import { getPopupContainer } from '@vben/utils';
-
-import { type FormSchemaGetter } from '#/adapter/form';
-import { getDictOptions } from '#/utils/dict';
-import { renderDict } from '#/utils/render';
-
-export const querySchema: FormSchemaGetter = () => [
-  {
-    component: 'Input',
-    fieldName: 'equName',
-    label: '璁惧鍚嶇О'
-  },
-  {
-    component: 'Input',
-    fieldName: 'assetNo',
-    label: '璧勪骇缂栧彿'
-  }
-];
-
-export const columns: VxeGridProps['columns'] = [
-  { type: 'checkbox', width: 60, fixed: 'left' },
-  {
-    title: '鐘舵��',
-    field: 'status',
-    minWidth: 80,
-    slots: {
-      default: ({ row }) => {
-        return renderDict(row.status, DictEnum.EIMS_ORDITM_STATUS);
-      }
-    }
-  },
-  {
-    title: '瀹屾垚鏃堕棿',
-    field: 'itmTime',
-    minWidth: 200
-  },
-  {
-    title: '璁惧鍚嶇О',
-    field: 'equName',
-    minWidth: 160,
-    slots: { default: 'equName' }
-  },
-  {
-    title: '淇濆吇椤圭洰',
-    field: 'itmName',
-    minWidth: 200
-  },
-  {
-    title: '椤圭洰鏍囧噯',
-    field: 'itmAction',
-    minWidth: 200
-  },
-  {
-    title: '淇濆吇鐢ㄦ埛',
-    field: 'itmUserName',
-    minWidth: 200
-  },
-  {
-    field: 'action',
-    fixed: 'right',
-    slots: { default: 'action' },
-    title: '鎿嶄綔',
-    width: 200
-  }
-];
-
-export const drawerSchema: FormSchemaGetter = () => [
-  {
-    component: 'Input',
-    fieldName: 'orderId',
-    label: '宸ュ崟id',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    }
-  },
-  {
-    component: 'Input',
-    fieldName: 'orderName',
-    label: '淇濆吇宸ュ崟'
-  },
-  {
-    component: 'Input',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    },
-    fieldName: 'id'
-  },
-  {
-    component: 'Input',
-    fieldName: 'equId',
-    label: '璁惧id',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    }
-  },
-  {
-    component: 'Input',
-    fieldName: 'equName',
-    label: '璁惧鍚嶇О',
-    componentProps: {
-      readonly: true
-    },
-  },
-  {
-    component: 'Select',
-    componentProps: {
-      allowClear: true,
-      showSearch: true,
-      getPopupContainer
-    },
-    fieldName: 'itmName',
-    label: '淇濆吇椤圭洰',
-  },
-  {
-    component: 'Input',
-    fieldName: 'itmAction',
-    label: '椤圭洰鏍囧噯',
-    componentProps: {
-      readonly: true
-    },
-  },
-  {
-    component: 'Input',
-    fieldName: 'itmUser',
-    label: '淇濆吇浜篿d',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    }
-  },
-  {
-    component: 'Input',
-    fieldName: 'itmUserName',
-    label: '淇濆吇浜�'
-  },
-  {
-    component: 'RadioGroup',
-    componentProps: {
-      buttonStyle: 'solid',
-      options: getDictOptions(DictEnum.EIMS_ORDITM_STATUS),
-      optionType: 'button'
-    },
-    fieldName: 'status',
-    defaultValue: '0',
-    label: '鐘舵��'
-  },
-  {
-    component: 'DatePicker',
-    componentProps: {
-      format: 'YYYY-MM-DD HH:mm:ss',
-      showTime: true,
-      valueFormat: 'YYYY-MM-DD HH:mm:ss',
-      getPopupContainer
-    },
-    fieldName: 'itmTime',
-    label: '瀹屾垚鏃堕棿'
-  },
-  {
-    component: 'Textarea',
-    fieldName: 'remark',
-    label: '澶囨敞'
-  }
-];
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-orditm/index.vue b/eims-ui/apps/web-antd/src/views/eims/maint-orditm/index.vue
deleted file mode 100644
index 014cb93..0000000
--- a/eims-ui/apps/web-antd/src/views/eims/maint-orditm/index.vue
+++ /dev/null
@@ -1,159 +0,0 @@
-<script setup lang="ts">
-import type { Recordable } from '@vben/types';
-
-import { Page, useVbenDrawer, type VbenFormProps } from '@vben/common-ui';
-import { $t } from '@vben/locales';
-import { getVxePopupContainer } from '@vben/utils';
-
-import { Modal, Popconfirm, Space } from 'ant-design-vue';
-
-import { useVbenVxeGrid, vxeCheckboxChecked, type VxeGridProps, vxeSortEvent } from '#/adapter/vxe-table';
-import { delMaintOrditm, listMaintOrditm, maintOrditmExport } from '#/api/eims/maint-orditm';
-import { commonDownloadExcel } from '#/utils/file/download';
-
-import { columns, querySchema } from './data';
-import maintOrditmDrawer from './maint-orditm-drawer.vue';
-
-const formOptions: VbenFormProps = {
-  commonConfig: {
-    labelWidth: 80,
-    componentProps: {
-      allowClear: true
-    }
-  },
-  schema: querySchema(),
-  wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4'
-};
-
-const gridOptions: VxeGridProps = {
-  checkboxConfig: {
-    // 楂樹寒
-    highlight: true,
-    // 缈婚〉鏃朵繚鐣欓�変腑鐘舵��
-    reserve: true
-    // 鐐瑰嚮琛岄�変腑
-    // trigger: 'row'
-  },
-  columns,
-  height: 'auto',
-  keepSource: true,
-  pagerConfig: {},
-  proxyConfig: {
-    ajax: {
-      query: async ({ page }, formValues = {}) => {
-        return await listMaintOrditm({
-          pageNum: page.currentPage,
-          pageSize: page.pageSize,
-          ...formValues
-        });
-      }
-    }
-  },
-  rowConfig: {
-    isHover: true,
-    keyField: 'id'
-  },
-  sortConfig: {
-    // 杩滅▼鎺掑簭
-    remote: true,
-    // 鏀寔澶氬瓧娈垫帓搴� 榛樿鍏抽棴
-    multiple: true
-  },
-  id: 'maint-orditm-index'
-};
-
-const [BasicTable, tableApi] = useVbenVxeGrid({
-  formOptions,
-  gridOptions,
-  gridEvents: {
-    sortChange: (sortParams) => vxeSortEvent(tableApi, sortParams)
-  }
-});
-
-const [MaintOrditmDrawer, maintOrditmDrawerApi] = useVbenDrawer({
-  connectedComponent: maintOrditmDrawer
-});
-
-function handleAdd() {
-  maintOrditmDrawerApi.setData({});
-  maintOrditmDrawerApi.open();
-}
-
-async function handleEdit(record: Recordable<any>) {
-  maintOrditmDrawerApi.setData({ id: record.id });
-  maintOrditmDrawerApi.open();
-}
-
-async function handleDelete(row: Recordable<any>) {
-  await delMaintOrditm(row.id);
-  await tableApi.query();
-}
-
-function handleMultiDelete() {
-  const rows = tableApi.grid.getCheckboxRecords();
-  const ids = rows.map((row: any) => row.id);
-  Modal.confirm({
-    title: '鎻愮ず',
-    okType: 'danger',
-    content: `纭鍒犻櫎閫変腑鐨�${ids.length}鏉¤褰曞悧锛焋,
-    onOk: async () => {
-      await delMaintOrditm(ids);
-      await tableApi.query();
-    }
-  });
-}
-
-function handleDownloadExcel() {
-  commonDownloadExcel(maintOrditmExport, '淇濆吇宸ュ崟鏄庣粏璁板綍', tableApi.formApi.form.values, {
-    fieldMappingTime: formOptions.fieldMappingTime
-  });
-}
-</script>
-
-<template>
-  <Page :auto-content-height="true">
-    <div class="flex h-full gap-[8px]">
-      <BasicTable class="flex-1 overflow-hidden" table-title="淇濆吇宸ュ崟鏄庣粏鍒楄〃">
-        <template #toolbar-tools>
-          <Space>
-            <a-button v-access:code="['eims:maintOrditm:export']" @click="handleDownloadExcel">
-              {{ $t('pages.common.export') }}
-            </a-button>
-            <a-button
-              :disabled="!vxeCheckboxChecked(tableApi)"
-              danger
-              type="primary"
-              v-access:code="['eims:maintOrditm:remove']"
-              @click="handleMultiDelete"
-            >
-              {{ $t('pages.common.delete') }}
-            </a-button>
-            <a-button type="primary" v-access:code="['eims:maintOrditm:add']" @click="handleAdd">
-              {{ $t('pages.common.add') }}
-            </a-button>
-          </Space>
-        </template>
-
-        <template #equName="{ row }">
-          <Space>
-            <span>{{ row.equName }}</span>
-          </Space>
-        </template>
-
-        <template #action="{ row }">
-          <Space>
-            <ghost-button v-access:code="['eims:maintOrditm:edit']" @click.stop="handleEdit(row)">
-              {{ $t('pages.common.edit') }}
-            </ghost-button>
-            <Popconfirm :get-popup-container="getVxePopupContainer" placement="left" title="纭鍒犻櫎锛�" @confirm="handleDelete(row)">
-              <ghost-button danger v-access:code="['eims:maintOrditm:remove']" @click.stop="">
-                {{ $t('pages.common.delete') }}
-              </ghost-button>
-            </Popconfirm>
-          </Space>
-        </template>
-      </BasicTable>
-    </div>
-    <MaintOrditmDrawer @reload="tableApi.query()" />
-  </Page>
-</template>
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-orditm/maint-orditm-drawer.vue b/eims-ui/apps/web-antd/src/views/eims/maint-orditm/maint-orditm-drawer.vue
deleted file mode 100644
index 7341ecd..0000000
--- a/eims-ui/apps/web-antd/src/views/eims/maint-orditm/maint-orditm-drawer.vue
+++ /dev/null
@@ -1,175 +0,0 @@
-<script setup lang="ts">
-import { computed, ref } from 'vue';
-
-import { useVbenDrawer, useVbenModal } from '@vben/common-ui';
-import { $t } from '@vben/locales';
-import { cloneDeep } from '@vben/utils';
-
-import { InputSearch } from 'ant-design-vue';
-
-import { useVbenForm } from '#/adapter/form';
-import { addMaintOrditm, getMaintOrditm, updateMaintOrditm } from '#/api/eims/maint-orditm';
-import { listMaintStand } from '#/api/eims/maint-stand';
-import orderModal from '#/views/eims/components/miant-order-modal.vue';
-import userModal from '#/views/eims/components/user-modal.vue';
-
-import { drawerSchema } from './data';
-
-const emit = defineEmits<{ reload: [] }>();
-
-const isUpdate = ref(false);
-const title = computed(() => {
-  return isUpdate.value ? $t('pages.common.edit') : $t('pages.common.add');
-});
-
-const [BasicForm, formApi] = useVbenForm({
-  commonConfig: {
-    formItemClass: 'col-span-2',
-    componentProps: {
-      class: 'w-full'
-    },
-    labelWidth: 120
-  },
-  schema: drawerSchema(),
-  showDefaultActions: false,
-  wrapperClass: 'grid-cols-2'
-});
-
-const [BasicDrawer, drawerApi] = useVbenDrawer({
-  onCancel: handleCancel,
-  onConfirm: handleConfirm,
-  async onOpenChange(isOpen) {
-    if (!isOpen) {
-      return null;
-    }
-    drawerApi.drawerLoading(true);
-    const { id } = drawerApi.getData() as { id?: number | string };
-    isUpdate.value = !!id;
-    // 鏇存柊 && 璧嬪��
-    if (isUpdate.value && id) {
-      const record = await getMaintOrditm(id);
-      await formApi.setValues(record);
-    }
-
-    drawerApi.drawerLoading(false);
-  }
-});
-
-/**
- * 宸ュ崟鏄庣粏鐨勫姞杞�
- */
-async function setupOrditmOptions(equId: any) {
-  const params = { equId };
-  const userPageResult = await listMaintStand({
-    pageNum: 1,
-    pageSize: 50,
-    ...params
-  });
-  const options = userPageResult?.rows.map((item) => ({
-    label: item.name,
-    value: item.name
-  }));
-  // 绛涢��
-  const filterOption = (input: string, option: any) => {
-    return option.label.toLowerCase().includes(input.toLowerCase());
-  };
-
-  const placeholder = options.length > 0 ? '璇烽�夋嫨' : '璇ュ伐鍗曟殏鏃犳槑缁�';
-  formApi.updateSchema([
-    {
-      componentProps: {
-        options,
-        placeholder,
-        filterOption,
-        async onSelect(name: string) {
-          const item = userPageResult?.rows.find((i) => i.name === name);
-          await formApi.setValues({ itmAction: item?.stand });
-        }
-      },
-      fieldName: 'itmName'
-    }
-  ]);
-}
-
-async function handleConfirm() {
-  try {
-    drawerApi.drawerLoading(true);
-    const { valid } = await formApi.validate();
-    if (!valid) {
-      return;
-    }
-    const data = cloneDeep(await formApi.getValues());
-    await (isUpdate.value ? updateMaintOrditm(data) : addMaintOrditm(data));
-    emit('reload');
-    await handleCancel();
-  } catch (error) {
-    console.error(error);
-  } finally {
-    drawerApi.drawerLoading(false);
-  }
-}
-
-async function handleCancel() {
-  drawerApi.close();
-  await formApi.resetForm();
-}
-
-// order modal
-const [OrderModal, orderModalApi] = useVbenModal({
-  connectedComponent: orderModal,
-  draggable: true,
-  title: '閫夋嫨宸ュ崟'
-});
-
-function handleOrderModal() {
-  orderModalApi.setData({});
-  orderModalApi.open();
-}
-
-/**
- * 鏇存柊閫夋嫨鐨勫伐鍗�
- * @param order
- */
-async function updateOrderSelect(order: any) {
-  await formApi.setValues({ 'orderId': order.id, 'orderName': order.maintCode, 'equId': order.equId, 'equName': order.equName });
-  await setupOrditmOptions(order?.equId);
-}
-
-// user modal
-const [UserModal, userModalApi] = useVbenModal({
-  connectedComponent: userModal,
-  draggable: true,
-  title: '閫夋嫨鎴愬憳'
-});
-
-/**
- * 鎵撳紑閫夋嫨鐢ㄦ埛
- */
-function handleUserModal() {
-  userModalApi.setData({});
-  userModalApi.open();
-}
-
-/**
- * 鏇存柊閫夋嫨鐨勭敤鎴�
- * @param user
- */
-async function updateUserSelect(user: any) {
-  await formApi.setValues({ 'itmUser': user.userId, 'itmUserName': user.nickName });
-}
-</script>
-
-<template>
-  <BasicDrawer :close-on-click-modal="false" :title="title" class="w-[600px]">
-    <BasicForm>
-      <template #orderName="slotProps">
-        <InputSearch :enter-button="true" placeholder="璇烽�夋嫨" @search="handleOrderModal" v-bind="slotProps" />
-      </template>
-      <template #itmUserName="slotProps">
-        <InputSearch :enter-button="true" placeholder="璇烽�夋嫨" @search="handleUserModal" v-bind="slotProps" />
-      </template>
-    </BasicForm>
-    <OrderModal class="w-[1200px]" @update-select="updateOrderSelect" />
-    <UserModal class="w-[1200px]" @select-user="updateUserSelect" />
-  </BasicDrawer>
-</template>
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-plan/data.tsx b/eims-ui/apps/web-antd/src/views/eims/maint-plan/data.tsx
index b96fefd..aa5d7cf 100644
--- a/eims-ui/apps/web-antd/src/views/eims/maint-plan/data.tsx
+++ b/eims-ui/apps/web-antd/src/views/eims/maint-plan/data.tsx
@@ -86,6 +86,11 @@
     }
   },
   {
+    title: '淇濆吇椤�',
+    field: 'maintName',
+    minWidth: 200
+  },
+  {
     title: '淇濆吇绫诲瀷',
     field: 'maintType',
     minWidth: 120,
@@ -163,6 +168,11 @@
     label: '璁惧鍚嶇О'
   },
   {
+    component: 'Input',
+    fieldName: 'maintName',
+    label: '淇濆吇椤�'
+  },
+  {
     component: 'RadioGroup',
     componentProps: {
       buttonStyle: 'solid',
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-plan/index.vue b/eims-ui/apps/web-antd/src/views/eims/maint-plan/index.vue
index ff7c4d5..2927a97 100644
--- a/eims-ui/apps/web-antd/src/views/eims/maint-plan/index.vue
+++ b/eims-ui/apps/web-antd/src/views/eims/maint-plan/index.vue
@@ -11,17 +11,20 @@
 
 import { useVbenVxeGrid, vxeCheckboxChecked, type VxeGridProps, vxeSortEvent } from '#/adapter/vxe-table';
 import { delMaintPlan, listMaintPlan, maintPlanExport } from '#/api/eims/maint-plan';
-import { listMaintStand } from '#/api/eims/maint-stand';
 import { generateCode } from '#/api/eims/utils';
 import { getDeptTree, userList } from '#/api/system/user';
 import { MAINT_ORDER_STATUS } from '#/constants/dict';
 import { commonDownloadExcel } from '#/utils/file/download';
 import BasisSubTable from '#/views/eims/components/basis-sub-table.vue';
 import maintOrderDrawer from '#/views/eims/maint-order/maint-order-drawer.vue';
-import { columns as maintSrandCol } from '#/views/eims/maint-stand/data';
 
 import { columns, querySchema } from './data';
 import maintPlanDrawer from './maint-plan-drawer.vue';
+
+
+defineExpose({
+  tableSelect
+});
 
 const formOptions: VbenFormProps = {
   commonConfig: {
@@ -145,6 +148,7 @@
   }
   const planOrder = {
     equId: record.equId,
+    planId: record.id,
     equName: record.equName,
     maintUser: record.maintUser,
     maintUserName: record.maintUserName,
@@ -230,12 +234,17 @@
 onMounted(async () => {
   await setupDeptSelect();
 });
+
+// 閫変腑鏁版嵁
+function tableSelect() {
+  return tableApi.grid.getCheckboxRecords();
+}
 </script>
 
 <template>
   <Page :auto-content-height="true">
     <div class="flex h-full gap-[8px] flex-col">
-      <BasicTable class="h-2/3" table-title="淇濆吇璁″垝鍒楄〃">
+      <BasicTable  table-title="淇濆吇璁″垝鍒楄〃">
         <template #toolbar-tools>
           <Space>
             <a-button v-access:code="['eims:maintPlan:export']" @click="handleDownloadExcel">
@@ -285,7 +294,6 @@
           </Dropdown>
         </template>
       </BasicTable>
-      <BasisSubTable :columns="maintSrandCol" :list-api="listMaintStand" :req-value="equId" class="h-1/3" req-key="equId" title="淇濆吇瀹炴柦椤圭洰" />
     </div>
     <MaintPlanDrawer @reload="tableApi.query()" />
     <MaintOrderDrawer @reload="tableApi.query()" />
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-stand/data.tsx b/eims-ui/apps/web-antd/src/views/eims/maint-stand/data.tsx
deleted file mode 100644
index bf209fb..0000000
--- a/eims-ui/apps/web-antd/src/views/eims/maint-stand/data.tsx
+++ /dev/null
@@ -1,111 +0,0 @@
-import type { VxeGridProps } from '#/adapter/vxe-table';
-
-import { type FormSchemaGetter } from '#/adapter/form';
-
-export const querySchema: FormSchemaGetter = () => [
-  {
-    component: 'Input',
-    fieldName: 'equName',
-    label: '璁惧鍚嶇О'
-  },
-  {
-    component: 'Input',
-    fieldName: 'assetNo',
-    label: '璧勪骇缂栧彿'
-  }
-];
-
-export const columns: VxeGridProps['columns'] = [
-  { type: 'checkbox', width: 60, fixed: 'left' },
-  {
-    title: '璁惧鍚嶇О',
-    field: 'equName',
-    minWidth: 200,
-    fixed: 'left',
-    slots: { default: 'equName' }
-  },
-  {
-    title: '璧勪骇缂栧彿',
-    field: 'assetNo',
-    minWidth: 160
-  },
-  {
-    title: '淇濆吇椤圭洰',
-    field: 'name',
-    minWidth: 300
-  },
-  {
-    title: '椤圭洰鏍囧噯',
-    field: 'stand',
-    minWidth: 200
-  },
-  {
-    field: 'action',
-    fixed: 'right',
-    slots: { default: 'action' },
-    title: '鎿嶄綔',
-    width: 200
-  }
-];
-
-export const drawerSchema: FormSchemaGetter = () => [
-  {
-    component: 'Input',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    },
-    fieldName: 'id'
-  },
-  {
-    component: 'Input',
-    fieldName: 'equId',
-    label: '璁惧id',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    }
-  },
-  {
-    component: 'Input',
-    fieldName: 'equCode',
-    label: '璁惧缂栫爜',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    }
-  },
-  {
-    component: 'Input',
-    fieldName: 'assetNo',
-    label: '璧勪骇缂栧彿',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    }
-  },
-  {
-    component: 'Input',
-    fieldName: 'modelNo',
-    label: '璁惧鍨嬪彿',
-    dependencies: {
-      show: () => false,
-      triggerFields: ['']
-    }
-  },
-  {
-    component: 'Input',
-    fieldName: 'equName',
-    label: '璁惧鍚嶇О'
-  },
-  {
-    component: 'Textarea',
-    fieldName: 'name',
-    label: '瀹炴柦椤圭洰'
-  },
-  {
-    component: 'Textarea',
-    fieldName: 'stand',
-    label: '瀹炴柦鏍囧噯'
-  }
-];
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-stand/index.vue b/eims-ui/apps/web-antd/src/views/eims/maint-stand/index.vue
deleted file mode 100644
index d399899..0000000
--- a/eims-ui/apps/web-antd/src/views/eims/maint-stand/index.vue
+++ /dev/null
@@ -1,159 +0,0 @@
-<script setup lang="ts">
-import type { Recordable } from '@vben/types';
-
-import { Page, useVbenDrawer, type VbenFormProps } from '@vben/common-ui';
-import { $t } from '@vben/locales';
-import { getVxePopupContainer } from '@vben/utils';
-
-import { Modal, Popconfirm, Space } from 'ant-design-vue';
-
-import { useVbenVxeGrid, vxeCheckboxChecked, type VxeGridProps, vxeSortEvent } from '#/adapter/vxe-table';
-import { delMaintStand, listMaintStand, maintStandExport } from '#/api/eims/maint-stand';
-import { commonDownloadExcel } from '#/utils/file/download';
-
-import { columns, querySchema } from './data';
-import maintStandDrawer from './maint-stand-drawer.vue';
-
-const formOptions: VbenFormProps = {
-  commonConfig: {
-    labelWidth: 80,
-    componentProps: {
-      allowClear: true
-    }
-  },
-  schema: querySchema(),
-  wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4'
-};
-
-const gridOptions: VxeGridProps = {
-  checkboxConfig: {
-    // 楂樹寒
-    highlight: true,
-    // 缈婚〉鏃朵繚鐣欓�変腑鐘舵��
-    reserve: true
-    // 鐐瑰嚮琛岄�変腑
-    // trigger: 'row'
-  },
-  columns,
-  height: 'auto',
-  keepSource: true,
-  pagerConfig: {},
-  proxyConfig: {
-    ajax: {
-      query: async ({ page }, formValues = {}) => {
-        return await listMaintStand({
-          pageNum: page.currentPage,
-          pageSize: page.pageSize,
-          ...formValues
-        });
-      }
-    }
-  },
-  rowConfig: {
-    isHover: true,
-    keyField: 'id'
-  },
-  sortConfig: {
-    // 杩滅▼鎺掑簭
-    remote: true,
-    // 鏀寔澶氬瓧娈垫帓搴� 榛樿鍏抽棴
-    multiple: true
-  },
-  id: 'maint-stand-index'
-};
-
-const [BasicTable, tableApi] = useVbenVxeGrid({
-  formOptions,
-  gridOptions,
-  gridEvents: {
-    sortChange: (sortParams) => vxeSortEvent(tableApi, sortParams)
-  }
-});
-
-const [MaintStandDrawer, maintStandDrawerApi] = useVbenDrawer({
-  connectedComponent: maintStandDrawer
-});
-
-function handleAdd() {
-  maintStandDrawerApi.setData({});
-  maintStandDrawerApi.open();
-}
-
-async function handleEdit(record: Recordable<any>) {
-  maintStandDrawerApi.setData({ id: record.id });
-  maintStandDrawerApi.open();
-}
-
-async function handleDelete(row: Recordable<any>) {
-  await delMaintStand(row.id);
-  await tableApi.query();
-}
-
-function handleMultiDelete() {
-  const rows = tableApi.grid.getCheckboxRecords();
-  const ids = rows.map((row: any) => row.id);
-  Modal.confirm({
-    title: '鎻愮ず',
-    okType: 'danger',
-    content: `纭鍒犻櫎閫変腑鐨�${ids.length}鏉¤褰曞悧锛焋,
-    onOk: async () => {
-      await delMaintStand(ids);
-      await tableApi.query();
-    }
-  });
-}
-
-function handleDownloadExcel() {
-  commonDownloadExcel(maintStandExport, '淇濆吇鏍囧噯璁板綍', tableApi.formApi.form.values, {
-    fieldMappingTime: formOptions.fieldMappingTime
-  });
-}
-</script>
-
-<template>
-  <Page :auto-content-height="true">
-    <div class="flex h-full gap-[8px]">
-      <BasicTable class="flex-1 overflow-hidden" table-title="淇濆吇鏍囧噯鍒楄〃">
-        <template #toolbar-tools>
-          <Space>
-            <a-button v-access:code="['eims:maintStand:export']" @click="handleDownloadExcel">
-              {{ $t('pages.common.export') }}
-            </a-button>
-            <a-button
-              :disabled="!vxeCheckboxChecked(tableApi)"
-              danger
-              type="primary"
-              v-access:code="['eims:maintStand:remove']"
-              @click="handleMultiDelete"
-            >
-              {{ $t('pages.common.delete') }}
-            </a-button>
-            <a-button type="primary" v-access:code="['eims:maintStand:add']" @click="handleAdd">
-              {{ $t('pages.common.add') }}
-            </a-button>
-          </Space>
-        </template>
-
-        <template #equName="{ row }">
-          <Space>
-            <span>{{ row.equName }}</span>
-          </Space>
-        </template>
-
-        <template #action="{ row }">
-          <Space>
-            <ghost-button v-access:code="['eims:maintStand:edit']" @click.stop="handleEdit(row)">
-              {{ $t('pages.common.edit') }}
-            </ghost-button>
-            <Popconfirm :get-popup-container="getVxePopupContainer" placement="left" title="纭鍒犻櫎锛�" @confirm="handleDelete(row)">
-              <ghost-button danger v-access:code="['eims:maintStand:remove']" @click.stop="">
-                {{ $t('pages.common.delete') }}
-              </ghost-button>
-            </Popconfirm>
-          </Space>
-        </template>
-      </BasicTable>
-    </div>
-    <MaintStandDrawer @reload="tableApi.query()" />
-  </Page>
-</template>
diff --git a/eims-ui/apps/web-antd/src/views/eims/maint-stand/maint-stand-drawer.vue b/eims-ui/apps/web-antd/src/views/eims/maint-stand/maint-stand-drawer.vue
deleted file mode 100644
index 1e430fd..0000000
--- a/eims-ui/apps/web-antd/src/views/eims/maint-stand/maint-stand-drawer.vue
+++ /dev/null
@@ -1,111 +0,0 @@
-<script setup lang="ts">
-import { computed, ref } from 'vue';
-
-import { useVbenDrawer, useVbenModal } from '@vben/common-ui';
-import { $t } from '@vben/locales';
-import { cloneDeep } from '@vben/utils';
-
-import { InputSearch } from 'ant-design-vue';
-
-import { useVbenForm } from '#/adapter/form';
-import { addMaintStand, getMaintStand, updateMaintStand } from '#/api/eims/maint-stand';
-
-import equModal from '#/views/eims/components/equ-modal.vue';
-
-import { drawerSchema } from './data';
-import type { MaintStandVO } from '#/api/eims/maint-stand/model';
-
-const emit = defineEmits<{ reload: [] }>();
-
-const isUpdate = ref(false);
-const title = computed(() => {
-  return isUpdate.value ? $t('pages.common.edit') : $t('pages.common.add');
-});
-
-const [BasicForm, formApi] = useVbenForm({
-  commonConfig: {
-    formItemClass: 'col-span-2',
-    componentProps: {
-      class: 'w-full'
-    },
-    labelWidth: 120
-  },
-  schema: drawerSchema(),
-  showDefaultActions: false,
-  wrapperClass: 'grid-cols-2'
-});
-
-const [BasicDrawer, drawerApi] = useVbenDrawer({
-  onCancel: handleCancel,
-  onConfirm: handleConfirm,
-  async onOpenChange(isOpen) {
-    if (!isOpen) {
-      return null;
-    }
-    drawerApi.drawerLoading(true);
-    const { id } = drawerApi.getData() as { id?: number | string };
-    isUpdate.value = !!id;
-    // 鏇存柊 && 璧嬪��
-    if (isUpdate.value && id) {
-      const record = await getMaintStand(id);
-      await formApi.setValues(record);
-    }
-
-    drawerApi.drawerLoading(false);
-  }
-});
-
-async function handleConfirm() {
-  try {
-    drawerApi.drawerLoading(true);
-    const { valid } = await formApi.validate();
-    if (!valid) {
-      return;
-    }
-    const data = cloneDeep(await formApi.getValues());
-    await (isUpdate.value ? updateMaintStand(data) : addMaintStand(data));
-    emit('reload');
-    await handleCancel();
-  } catch (error) {
-    console.error(error);
-  } finally {
-    drawerApi.drawerLoading(false);
-  }
-}
-
-async function handleCancel() {
-  drawerApi.close();
-  await formApi.resetForm();
-}
-
-// equ modal
-const [EquModal, equModalApi] = useVbenModal({
-  connectedComponent: equModal,
-  draggable: true,
-  title: '閫夋嫨璁惧'
-});
-
-function handleEquModal() {
-  equModalApi.setData({});
-  equModalApi.open();
-}
-
-/**
- * 鏇存柊閫夋嫨鐨勮澶�
- * @param equ
- */
-async function updateSelect(equ: any) {
-  await formApi.setValues(equ);
-}
-</script>
-
-<template>
-  <BasicDrawer :close-on-click-modal="false" :title="title" class="w-[600px]">
-    <BasicForm>
-      <template #equName="slotProps">
-        <InputSearch :enter-button="true" placeholder="璇烽�夋嫨" @search="handleEquModal" v-bind="slotProps" />
-      </template>
-    </BasicForm>
-    <EquModal class="w-[1200px]" @update-equ="updateSelect" />
-  </BasicDrawer>
-</template>
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintOrditmController.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintOrditmController.java
deleted file mode 100644
index a0ecd55..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintOrditmController.java
+++ /dev/null
@@ -1,105 +0,0 @@
-package org.dromara.eims.controller;
-
-import java.util.List;
-
-import lombok.RequiredArgsConstructor;
-import jakarta.servlet.http.HttpServletResponse;
-import jakarta.validation.constraints.*;
-import cn.dev33.satoken.annotation.SaCheckPermission;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.validation.annotation.Validated;
-import org.dromara.common.idempotent.annotation.RepeatSubmit;
-import org.dromara.common.log.annotation.Log;
-import org.dromara.common.web.core.BaseController;
-import org.dromara.common.mybatis.core.page.PageQuery;
-import org.dromara.common.core.domain.R;
-import org.dromara.common.core.validate.AddGroup;
-import org.dromara.common.core.validate.EditGroup;
-import org.dromara.common.log.enums.BusinessType;
-import org.dromara.common.excel.utils.ExcelUtil;
-import org.dromara.eims.domain.vo.EimsMaintOrditmVo;
-import org.dromara.eims.domain.bo.EimsMaintOrditmBo;
-import org.dromara.eims.service.IEimsMaintOrditmService;
-import org.dromara.common.mybatis.core.page.TableDataInfo;
-
-/**
- * 宸ュ崟鏉$洰
- *
- * @author zhuguifei
- * @date 2025-03-10
- */
-@Validated
-@RequiredArgsConstructor
-@RestController
-@RequestMapping("/eims/maintOrditm")
-public class EimsMaintOrditmController extends BaseController {
-
-    private final IEimsMaintOrditmService eimsMaintOrditmService;
-
-    /**
-     * 鏌ヨ宸ュ崟鏉$洰鍒楄〃
-     */
-    @SaCheckPermission("eims:maintOrditm:list")
-    @GetMapping("/list")
-    public TableDataInfo<EimsMaintOrditmVo> list(EimsMaintOrditmBo bo, PageQuery pageQuery) {
-        return eimsMaintOrditmService.queryPageList(bo, pageQuery);
-    }
-
-    /**
-     * 瀵煎嚭宸ュ崟鏉$洰鍒楄〃
-     */
-    @SaCheckPermission("eims:maintOrditm:export")
-    @Log(title = "宸ュ崟鏉$洰", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(EimsMaintOrditmBo bo, HttpServletResponse response) {
-        List<EimsMaintOrditmVo> list = eimsMaintOrditmService.queryList(bo);
-        ExcelUtil.exportExcel(list, "宸ュ崟鏉$洰", EimsMaintOrditmVo.class, response);
-    }
-
-    /**
-     * 鑾峰彇宸ュ崟鏉$洰璇︾粏淇℃伅
-     *
-     * @param id 涓婚敭
-     */
-    @SaCheckPermission("eims:maintOrditm:query")
-    @GetMapping("/{id}")
-    public R<EimsMaintOrditmVo> getInfo(@NotNull(message = "涓婚敭涓嶈兘涓虹┖")
-                                     @PathVariable Long id) {
-        return R.ok(eimsMaintOrditmService.queryById(id));
-    }
-
-    /**
-     * 鏂板宸ュ崟鏉$洰
-     */
-    @SaCheckPermission("eims:maintOrditm:add")
-    @Log(title = "宸ュ崟鏉$洰", businessType = BusinessType.INSERT)
-    @RepeatSubmit()
-    @PostMapping()
-    public R<Void> add(@Validated(AddGroup.class) @RequestBody EimsMaintOrditmBo bo) {
-        return toAjax(eimsMaintOrditmService.insertByBo(bo));
-    }
-
-    /**
-     * 淇敼宸ュ崟鏉$洰
-     */
-    @SaCheckPermission("eims:maintOrditm:edit")
-    @Log(title = "宸ュ崟鏉$洰", businessType = BusinessType.UPDATE)
-    @RepeatSubmit()
-    @PutMapping()
-    public R<Void> edit(@Validated(EditGroup.class) @RequestBody EimsMaintOrditmBo bo) {
-        return toAjax(eimsMaintOrditmService.updateByBo(bo));
-    }
-
-    /**
-     * 鍒犻櫎宸ュ崟鏉$洰
-     *
-     * @param ids 涓婚敭涓�
-     */
-    @SaCheckPermission("eims:maintOrditm:remove")
-    @Log(title = "宸ュ崟鏉$洰", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public R<Void> remove(@NotEmpty(message = "涓婚敭涓嶈兘涓虹┖")
-                          @PathVariable Long[] ids) {
-        return toAjax(eimsMaintOrditmService.deleteWithValidByIds(List.of(ids), true));
-    }
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintStandController.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintStandController.java
deleted file mode 100644
index 446302c..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsMaintStandController.java
+++ /dev/null
@@ -1,105 +0,0 @@
-package org.dromara.eims.controller;
-
-import java.util.List;
-
-import lombok.RequiredArgsConstructor;
-import jakarta.servlet.http.HttpServletResponse;
-import jakarta.validation.constraints.*;
-import cn.dev33.satoken.annotation.SaCheckPermission;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.validation.annotation.Validated;
-import org.dromara.common.idempotent.annotation.RepeatSubmit;
-import org.dromara.common.log.annotation.Log;
-import org.dromara.common.web.core.BaseController;
-import org.dromara.common.mybatis.core.page.PageQuery;
-import org.dromara.common.core.domain.R;
-import org.dromara.common.core.validate.AddGroup;
-import org.dromara.common.core.validate.EditGroup;
-import org.dromara.common.log.enums.BusinessType;
-import org.dromara.common.excel.utils.ExcelUtil;
-import org.dromara.eims.domain.vo.EimsMaintStandVo;
-import org.dromara.eims.domain.bo.EimsMaintStandBo;
-import org.dromara.eims.service.IEimsMaintStandService;
-import org.dromara.common.mybatis.core.page.TableDataInfo;
-
-/**
- * 淇濆吇鏍囧噯
- *
- * @author zhuguifei
- * @date 2025-03-04
- */
-@Validated
-@RequiredArgsConstructor
-@RestController
-@RequestMapping("/eims/maintStand")
-public class EimsMaintStandController extends BaseController {
-
-    private final IEimsMaintStandService eimsMaintStandService;
-
-    /**
-     * 鏌ヨ淇濆吇鏍囧噯鍒楄〃
-     */
-    @SaCheckPermission("eims:maintStand:list")
-    @GetMapping("/list")
-    public TableDataInfo<EimsMaintStandVo> list(EimsMaintStandBo bo, PageQuery pageQuery) {
-        return eimsMaintStandService.queryPageList(bo, pageQuery);
-    }
-
-    /**
-     * 瀵煎嚭淇濆吇鏍囧噯鍒楄〃
-     */
-    @SaCheckPermission("eims:maintStand:export")
-    @Log(title = "淇濆吇鏍囧噯", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(EimsMaintStandBo bo, HttpServletResponse response) {
-        List<EimsMaintStandVo> list = eimsMaintStandService.queryList(bo);
-        ExcelUtil.exportExcel(list, "淇濆吇鏍囧噯", EimsMaintStandVo.class, response);
-    }
-
-    /**
-     * 鑾峰彇淇濆吇鏍囧噯璇︾粏淇℃伅
-     *
-     * @param id 涓婚敭
-     */
-    @SaCheckPermission("eims:maintStand:query")
-    @GetMapping("/{id}")
-    public R<EimsMaintStandVo> getInfo(@NotNull(message = "涓婚敭涓嶈兘涓虹┖")
-                                     @PathVariable Long id) {
-        return R.ok(eimsMaintStandService.queryById(id));
-    }
-
-    /**
-     * 鏂板淇濆吇鏍囧噯
-     */
-    @SaCheckPermission("eims:maintStand:add")
-    @Log(title = "淇濆吇鏍囧噯", businessType = BusinessType.INSERT)
-    @RepeatSubmit()
-    @PostMapping()
-    public R<Void> add(@Validated(AddGroup.class) @RequestBody EimsMaintStandBo bo) {
-        return toAjax(eimsMaintStandService.insertByBo(bo));
-    }
-
-    /**
-     * 淇敼淇濆吇鏍囧噯
-     */
-    @SaCheckPermission("eims:maintStand:edit")
-    @Log(title = "淇濆吇鏍囧噯", businessType = BusinessType.UPDATE)
-    @RepeatSubmit()
-    @PutMapping()
-    public R<Void> edit(@Validated(EditGroup.class) @RequestBody EimsMaintStandBo bo) {
-        return toAjax(eimsMaintStandService.updateByBo(bo));
-    }
-
-    /**
-     * 鍒犻櫎淇濆吇鏍囧噯
-     *
-     * @param ids 涓婚敭涓�
-     */
-    @SaCheckPermission("eims:maintStand:remove")
-    @Log(title = "淇濆吇鏍囧噯", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public R<Void> remove(@NotEmpty(message = "涓婚敭涓嶈兘涓虹┖")
-                          @PathVariable Long[] ids) {
-        return toAjax(eimsMaintStandService.deleteWithValidByIds(List.of(ids), true));
-    }
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrditm.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrditm.java
deleted file mode 100644
index 45bd507..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintOrditm.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package org.dromara.eims.domain;
-
-import org.dromara.common.mybatis.core.domain.BaseEntity;
-import com.baomidou.mybatisplus.annotation.*;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-import java.io.Serial;
-
-/**
- * 宸ュ崟鏉$洰瀵硅薄 eims_maint_orditm
- *
- * @author zhuguifei
- * @date 2025-03-10
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-@TableName("eims_maint_orditm")
-public class EimsMaintOrditm extends BaseEntity {
-
-    @Serial
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 
-     */
-    @TableId(value = "id")
-    private Long id;
-
-    /**
-     * 宸ュ崟id
-     */
-    private Long orderId;
-
-    /**
-     * 璁惧id
-     */
-    private Long equId;
-
-    /**
-     * 淇濆吇椤圭洰鍚嶇О
-     */
-    private String itmName;
-
-    /**
-     * 淇濆吇椤圭洰鎿嶄綔鏍囧噯
-     */
-    private String itmAction;
-
-    /**
-     * 淇濆吇鎿嶄綔鐢ㄦ埛
-     */
-    private Long itmUser;
-
-    /**
-     * 淇濆吇鏃堕棿
-     */
-    private Date itmTime;
-
-    /**
-     * 瀹屾垚鐘舵�侊紙瀛楀吀锛�
-     */
-    private String status;
-
-    /**
-     * 澶囨敞
-     */
-    private String remark;
-
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintPlan.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintPlan.java
index 8177bcb..d89d93e 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintPlan.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintPlan.java
@@ -33,6 +33,21 @@
     private Long id;
 
     /**
+     * 淇濆吇椤瑰悕绉�
+     */
+    private String maintName;
+
+    /**
+     * 淇濆吇椤圭紪鍙�
+     */
+    private Integer maintNo;
+
+    /**
+     * 淇濆吇椤规弿杩�
+     */
+    private String maintDesc;
+
+    /**
      * 璁惧id
 
      */
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintStand.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintStand.java
deleted file mode 100644
index d4b9754..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/EimsMaintStand.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package org.dromara.eims.domain;
-
-import org.dromara.common.mybatis.core.domain.BaseEntity;
-import com.baomidou.mybatisplus.annotation.*;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.io.Serial;
-
-/**
- * 淇濆吇鏍囧噯瀵硅薄 eims_maint_stand
- *
- * @author zhuguifei
- * @date 2025-03-04
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-@TableName("eims_maint_stand")
-public class EimsMaintStand extends BaseEntity {
-
-    @Serial
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 
-     */
-    @TableId(value = "id")
-    private Long id;
-
-    /**
-     * 璁惧id
-     */
-    private Long equId;
-
-    /**
-     * 璁惧缂栫爜
-     */
-    private String equCode;
-
-    /**
-     * 璁惧绫诲瀷
-     */
-    private Long equTypeId;
-
-    /**
-     * 璧勪骇缂栧彿
-     */
-    private String assetNo;
-
-    /**
-     * 璁惧鍚嶇О
-
-     */
-    private String equName;
-
-    /**
-     * 璁惧鍨嬪彿
-     */
-    private String modelNo;
-
-    /**
-     * 淇濆吇椤圭洰鍚嶇О
-     */
-    private String name;
-
-    /**
-     * 淇濆吇椤圭洰鏍囧噯
-     */
-    private String stand;
-
-    /**
-     * 澶囨敞
-     */
-    private String remark;
-
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrditmBo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrditmBo.java
deleted file mode 100644
index 560d523..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintOrditmBo.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.dromara.eims.domain.bo;
-
-import org.dromara.eims.domain.EimsMaintOrditm;
-import org.dromara.common.mybatis.core.domain.BaseEntity;
-import org.dromara.common.core.validate.AddGroup;
-import org.dromara.common.core.validate.EditGroup;
-import io.github.linpeilie.annotations.AutoMapper;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import jakarta.validation.constraints.*;
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-/**
- * 宸ュ崟鏉$洰涓氬姟瀵硅薄 eims_maint_orditm
- *
- * @author zhuguifei
- * @date 2025-03-10
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = EimsMaintOrditm.class, reverseConvertGenerate = false)
-public class EimsMaintOrditmBo extends BaseEntity {
-
-    /**
-     *
-     */
-    @NotNull(message = "涓嶈兘涓虹┖", groups = { EditGroup.class })
-    private Long id;
-
-    /**
-     * 宸ュ崟id
-     */
-    @NotNull(message = "宸ュ崟id涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class })
-    private Long orderId;
-
-    /**
-     * 璁惧id
-     */
-    @NotNull(message = "璁惧id涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class })
-    private Long equId;
-
-    /**
-     * 淇濆吇椤圭洰鍚嶇О
-     */
-    @NotBlank(message = "淇濆吇椤圭洰鍚嶇О涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class })
-    private String itmName;
-
-    /**
-     * 淇濆吇椤圭洰鎿嶄綔鏍囧噯
-     */
-    private String itmAction;
-
-    /**
-     * 淇濆吇鎿嶄綔鐢ㄦ埛
-     */
-    @NotNull(message = "淇濆吇鎿嶄綔鐢ㄦ埛涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class })
-    private Long itmUser;
-
-    /**
-     * 淇濆吇鏃堕棿
-     */
-    private Date itmTime;
-
-    /**
-     * 瀹屾垚鐘舵�侊紙瀛楀吀锛�
-     */
-    private String status;
-
-    /**
-     * 澶囨敞
-     */
-    private String remark;
-
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintPlanBo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintPlanBo.java
index 97705cd..f59e6cf 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintPlanBo.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintPlanBo.java
@@ -28,6 +28,23 @@
     @NotNull(message = "涓嶈兘涓虹┖", groups = { EditGroup.class })
     private Long id;
 
+
+    /**
+     * 淇濆吇椤瑰悕绉�
+     */
+    @NotNull(message = "淇濆吇椤瑰悕绉颁笉鑳戒负绌�", groups = { EditGroup.class })
+    private String maintName;
+
+    /**
+     * 淇濆吇椤圭紪鍙�
+     */
+    private Integer maintNo;
+
+    /**
+     * 淇濆吇椤规弿杩�
+     */
+    private String maintDesc;
+
     /**
      * 璁惧id
 
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintStandBo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintStandBo.java
deleted file mode 100644
index 1240e32..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/bo/EimsMaintStandBo.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package org.dromara.eims.domain.bo;
-
-import org.dromara.eims.domain.EimsMaintStand;
-import org.dromara.common.mybatis.core.domain.BaseEntity;
-import org.dromara.common.core.validate.AddGroup;
-import org.dromara.common.core.validate.EditGroup;
-import io.github.linpeilie.annotations.AutoMapper;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import jakarta.validation.constraints.*;
-
-/**
- * 淇濆吇鏍囧噯涓氬姟瀵硅薄 eims_maint_stand
- *
- * @author zhuguifei
- * @date 2025-03-04
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = EimsMaintStand.class, reverseConvertGenerate = false)
-public class EimsMaintStandBo extends BaseEntity {
-
-    /**
-     * 
-     */
-    @NotNull(message = "涓嶈兘涓虹┖", groups = { EditGroup.class })
-    private Long id;
-
-    /**
-     * 璁惧id
-     */
-    @NotNull(message = "璁惧id涓嶈兘涓虹┖", groups = { AddGroup.class, EditGroup.class })
-    private Long equId;
-
-    /**
-     * 璁惧缂栫爜
-     */
-    private String equCode;
-
-    /**
-     * 璁惧绫诲瀷
-     */
-    private Long equTypeId;
-
-    /**
-     * 璧勪骇缂栧彿
-     */
-    private String assetNo;
-
-    /**
-     * 璁惧鍚嶇О
-
-     */
-    private String equName;
-
-    /**
-     * 璁惧鍨嬪彿
-     */
-    private String modelNo;
-
-    /**
-     * 淇濆吇椤圭洰鍚嶇О
-     */
-    private String name;
-
-    /**
-     * 淇濆吇椤圭洰鏍囧噯
-     */
-    private String stand;
-
-    /**
-     * 澶囨敞
-     */
-    @NotBlank(message = "澶囨敞涓嶈兘涓虹┖", groups = { EditGroup.class })
-    private String remark;
-
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java
index e4b457a..784370d 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrderVo.java
@@ -54,6 +54,11 @@
     private String assetNo;
 
     /**
+     * 淇濆吇椤瑰悕绉�
+     */
+    private String maintName;
+
+    /**
      * 璁″垝琛ㄥ啑浣�-淇濆吇绫诲瀷锛堝瓧鍏革級
      */
     @ExcelProperty(value = "璁″垝琛ㄥ啑浣�-淇濆吇绫诲瀷", converter = ExcelDictConvert.class)
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrditmVo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrditmVo.java
deleted file mode 100644
index 98e9d37..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintOrditmVo.java
+++ /dev/null
@@ -1,100 +0,0 @@
-package org.dromara.eims.domain.vo;
-
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import org.dromara.common.translation.annotation.Translation;
-import org.dromara.common.translation.constant.TransConstant;
-import org.dromara.eims.domain.EimsMaintOrditm;
-import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
-import com.alibaba.excel.annotation.ExcelProperty;
-import org.dromara.common.excel.annotation.ExcelDictFormat;
-import org.dromara.common.excel.convert.ExcelDictConvert;
-import io.github.linpeilie.annotations.AutoMapper;
-import lombok.Data;
-
-import java.io.Serial;
-import java.io.Serializable;
-import java.util.Date;
-
-
-
-/**
- * 宸ュ崟鏉$洰瑙嗗浘瀵硅薄 eims_maint_orditm
- *
- * @author zhuguifei
- * @date 2025-03-10
- */
-@Data
-@ExcelIgnoreUnannotated
-@AutoMapper(target = EimsMaintOrditm.class)
-public class EimsMaintOrditmVo implements Serializable {
-
-    @Serial
-    private static final long serialVersionUID = 1L;
-
-    /**
-     *
-     */
-    @ExcelProperty(value = "")
-    private Long id;
-
-    /**
-     * 宸ュ崟id
-     */
-    @ExcelProperty(value = "宸ュ崟id")
-    private Long orderId;
-
-    @Translation(type = TransConstant.MAINT_ORDER_ID_TO_CODE, mapper = "orderId")
-    private String orderName;
-
-    /**
-     * 璁惧id
-     */
-    @ExcelProperty(value = "璁惧id")
-    private Long equId;
-
-    @Translation(type = TransConstant.EQU_ID_TO_NAME, mapper = "equId")
-    private String equName;
-
-    /**
-     * 淇濆吇椤圭洰鍚嶇О
-     */
-    @ExcelProperty(value = "淇濆吇椤圭洰鍚嶇О")
-    private String itmName;
-
-    /**
-     * 淇濆吇椤圭洰鎿嶄綔鏍囧噯
-     */
-    @ExcelProperty(value = "淇濆吇椤圭洰鎿嶄綔鏍囧噯")
-    private String itmAction;
-
-    /**
-     * 淇濆吇鎿嶄綔鐢ㄦ埛
-     */
-    @ExcelProperty(value = "淇濆吇鎿嶄綔鐢ㄦ埛")
-    private Long itmUser;
-
-    @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "itmUser")
-    private String itmUserName;
-
-    /**
-     * 淇濆吇鏃堕棿
-     */
-    @ExcelProperty(value = "淇濆吇鏃堕棿")
-    private Date itmTime;
-
-    /**
-     * 瀹屾垚鐘舵�侊紙瀛楀吀锛�
-     */
-    @ExcelProperty(value = "瀹屾垚鐘舵��", converter = ExcelDictConvert.class)
-    @ExcelDictFormat(dictType = "eims_orditm_status")
-    private String status;
-
-    /**
-     * 澶囨敞
-     */
-    @ExcelProperty(value = "澶囨敞")
-    private String remark;
-
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintPlanVo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintPlanVo.java
index 618029e..c268369 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintPlanVo.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintPlanVo.java
@@ -41,6 +41,22 @@
     @ExcelProperty(value = "")
     private Long id;
 
+
+    /**
+     * 淇濆吇椤瑰悕绉�
+     */
+    private String maintName;
+
+    /**
+     * 淇濆吇椤圭紪鍙�
+     */
+    private Integer maintNo;
+
+    /**
+     * 淇濆吇椤规弿杩�
+     */
+    private String maintDesc;
+
     /**
      * 璁惧id
 
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintStandVo.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintStandVo.java
deleted file mode 100644
index 2247397..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/domain/vo/EimsMaintStandVo.java
+++ /dev/null
@@ -1,93 +0,0 @@
-package org.dromara.eims.domain.vo;
-
-import org.dromara.eims.domain.EimsMaintStand;
-import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
-import com.alibaba.excel.annotation.ExcelProperty;
-import org.dromara.common.excel.annotation.ExcelDictFormat;
-import org.dromara.common.excel.convert.ExcelDictConvert;
-import io.github.linpeilie.annotations.AutoMapper;
-import lombok.Data;
-
-import java.io.Serial;
-import java.io.Serializable;
-import java.util.Date;
-
-
-
-/**
- * 淇濆吇鏍囧噯瑙嗗浘瀵硅薄 eims_maint_stand
- *
- * @author zhuguifei
- * @date 2025-03-04
- */
-@Data
-@ExcelIgnoreUnannotated
-@AutoMapper(target = EimsMaintStand.class)
-public class EimsMaintStandVo implements Serializable {
-
-    @Serial
-    private static final long serialVersionUID = 1L;
-
-    /**
-     *
-     */
-    @ExcelProperty(value = "")
-    private Long id;
-
-    /**
-     * 璁惧id
-     */
-    @ExcelProperty(value = "璁惧id")
-    private Long equId;
-
-    /**
-     * 璁惧缂栫爜
-     */
-    @ExcelProperty(value = "璁惧缂栫爜")
-    private String equCode;
-
-    /**
-     * 璁惧绫诲瀷
-     */
-    @ExcelProperty(value = "璁惧绫诲瀷")
-    private Long equTypeId;
-
-    /**
-     * 璧勪骇缂栧彿
-     */
-    @ExcelProperty(value = "璧勪骇缂栧彿")
-    private String assetNo;
-
-    /**
-     * 璁惧鍚嶇О
-
-     */
-    @ExcelProperty(value = "璁惧鍚嶇О")
-    private String equName;
-
-    /**
-     * 璁惧鍨嬪彿
-     */
-    @ExcelProperty(value = "璁惧鍨嬪彿")
-    private String modelNo;
-
-    /**
-     * 淇濆吇椤圭洰鍚嶇О
-     */
-    @ExcelProperty(value = "淇濆吇椤圭洰鍚嶇О")
-    private String name;
-
-    /**
-     * 淇濆吇椤圭洰鏍囧噯
-     */
-    @ExcelProperty(value = "淇濆吇椤圭洰鏍囧噯")
-    private String stand;
-
-    /**
-     * 澶囨敞
-     */
-    @ExcelProperty(value = "澶囨敞")
-    private String remark;
-
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java
index 1058f6d..4b388cb 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/job/MaintPlanToOrderJob.java
@@ -16,11 +16,8 @@
 import org.dromara.eims.domain.*;
 import org.dromara.eims.domain.bo.EimsMaintPlanBo;
 import org.dromara.eims.domain.vo.EimsMaintPlanVo;
-import org.dromara.eims.domain.vo.EimsMaintStandVo;
 import org.dromara.eims.mapper.EimsMaintOrderMapper;
-import org.dromara.eims.mapper.EimsMaintOrditmMapper;
 import org.dromara.eims.mapper.EimsMaintPlanMapper;
-import org.dromara.eims.mapper.EimsMaintStandMapper;
 import org.dromara.eims.service.IEimsMaintOrderService;
 import org.dromara.eims.service.IEimsMaintPlanService;
 import org.dromara.eims.service.IGenerateCodeService;
@@ -38,9 +35,7 @@
 public class MaintPlanToOrderJob {
     private final EimsMaintOrderMapper orderMapper;
 
-    private final EimsMaintStandMapper standMapper;
 
-    private final EimsMaintOrditmMapper orditmMapper;
 
     private final EimsMaintPlanMapper planMapper;
 
@@ -110,6 +105,7 @@
             order.setId(null);
             order.setStatus(DictConstants.MAINT_ORDER_STATUS_DETAIL.DAIBAOYANG);
             order.setPlanTime(createOrderTime);
+            order.setPlanId(planVo.getId());
             order.setMaintCode(codeService.generateCode("BYZD"));
             EimsMaintPlan plan = MapstructUtils.convert(planVo, EimsMaintPlan.class);
             assert plan != null;
@@ -121,21 +117,9 @@
             if (!flag) continue;
             planMapper.updateById(plan);
 
-            //鐢熸垚淇濆吇鏄庣粏
-            Long equId = plan.getEquId();
-            List<EimsMaintStandVo> standList = standMapper.selectVoList(new LambdaQueryWrapper<EimsMaintStand>().eq(EimsMaintStand::getEquId, equId));
-            //TODO 娌℃湁淇濆吇椤癸紝娣诲姞寮傚父璁板綍
-            if(standList.isEmpty()) continue;
-            for (int j = 0; j < standList.size(); j++) {
-                EimsMaintStandVo stand = standList.get(j);
-                EimsMaintOrditm itm = new EimsMaintOrditm();
-                itm.setOrderId(order.getId());
-                itm.setEquId(equId);
-                itm.setItmName(stand.getName());
-                itm.setItmAction(stand.getStand());
-                itm.setItmUser(order.getMaintUser());
-                orditmMapper.insert(itm);
-            }
+
+
+
         }
         return ExecuteResult.success("淇濆吇璁″垝鐢熸垚淇濆吇宸ュ崟鎴愬姛");
     }
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/mapper/EimsMaintOrditmMapper.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/mapper/EimsMaintOrditmMapper.java
deleted file mode 100644
index 57b4cef..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/mapper/EimsMaintOrditmMapper.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package org.dromara.eims.mapper;
-
-import org.dromara.eims.domain.EimsMaintOrditm;
-import org.dromara.eims.domain.vo.EimsMaintOrditmVo;
-import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
-
-/**
- * 宸ュ崟鏉$洰Mapper鎺ュ彛
- *
- * @author zhuguifei
- * @date 2025-03-10
- */
-public interface EimsMaintOrditmMapper extends BaseMapperPlus<EimsMaintOrditm, EimsMaintOrditmVo> {
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/mapper/EimsMaintStandMapper.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/mapper/EimsMaintStandMapper.java
deleted file mode 100644
index f98e5be..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/mapper/EimsMaintStandMapper.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package org.dromara.eims.mapper;
-
-import org.dromara.eims.domain.EimsMaintStand;
-import org.dromara.eims.domain.vo.EimsMaintStandVo;
-import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
-
-/**
- * 淇濆吇鏍囧噯Mapper鎺ュ彛
- *
- * @author zhuguifei
- * @date 2025-03-04
- */
-public interface EimsMaintStandMapper extends BaseMapperPlus<EimsMaintStand, EimsMaintStandVo> {
-
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/IEimsMaintOrditmService.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/IEimsMaintOrditmService.java
deleted file mode 100644
index 862cbd0..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/IEimsMaintOrditmService.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package org.dromara.eims.service;
-
-import org.dromara.eims.domain.vo.EimsMaintOrditmVo;
-import org.dromara.eims.domain.bo.EimsMaintOrditmBo;
-import org.dromara.common.mybatis.core.page.TableDataInfo;
-import org.dromara.common.mybatis.core.page.PageQuery;
-
-import java.util.Collection;
-import java.util.List;
-
-/**
- * 宸ュ崟鏉$洰Service鎺ュ彛
- *
- * @author zhuguifei
- * @date 2025-03-10
- */
-public interface IEimsMaintOrditmService {
-
-    /**
-     * 鏌ヨ宸ュ崟鏉$洰
-     *
-     * @param id 涓婚敭
-     * @return 宸ュ崟鏉$洰
-     */
-    EimsMaintOrditmVo queryById(Long id);
-
-    /**
-     * 鍒嗛〉鏌ヨ宸ュ崟鏉$洰鍒楄〃
-     *
-     * @param bo        鏌ヨ鏉′欢
-     * @param pageQuery 鍒嗛〉鍙傛暟
-     * @return 宸ュ崟鏉$洰鍒嗛〉鍒楄〃
-     */
-    TableDataInfo<EimsMaintOrditmVo> queryPageList(EimsMaintOrditmBo bo, PageQuery pageQuery);
-
-    /**
-     * 鏌ヨ绗﹀悎鏉′欢鐨勫伐鍗曟潯鐩垪琛�
-     *
-     * @param bo 鏌ヨ鏉′欢
-     * @return 宸ュ崟鏉$洰鍒楄〃
-     */
-    List<EimsMaintOrditmVo> queryList(EimsMaintOrditmBo bo);
-
-    /**
-     * 鏂板宸ュ崟鏉$洰
-     *
-     * @param bo 宸ュ崟鏉$洰
-     * @return 鏄惁鏂板鎴愬姛
-     */
-    Boolean insertByBo(EimsMaintOrditmBo bo);
-
-    /**
-     * 淇敼宸ュ崟鏉$洰
-     *
-     * @param bo 宸ュ崟鏉$洰
-     * @return 鏄惁淇敼鎴愬姛
-     */
-    Boolean updateByBo(EimsMaintOrditmBo bo);
-
-    /**
-     * 鏍¢獙骞舵壒閲忓垹闄ゅ伐鍗曟潯鐩俊鎭�
-     *
-     * @param ids     寰呭垹闄ょ殑涓婚敭闆嗗悎
-     * @param isValid 鏄惁杩涜鏈夋晥鎬ф牎楠�
-     * @return 鏄惁鍒犻櫎鎴愬姛
-     */
-    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/IEimsMaintStandService.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/IEimsMaintStandService.java
deleted file mode 100644
index 536958d..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/IEimsMaintStandService.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package org.dromara.eims.service;
-
-import org.dromara.eims.domain.vo.EimsMaintStandVo;
-import org.dromara.eims.domain.bo.EimsMaintStandBo;
-import org.dromara.common.mybatis.core.page.TableDataInfo;
-import org.dromara.common.mybatis.core.page.PageQuery;
-
-import java.util.Collection;
-import java.util.List;
-
-/**
- * 淇濆吇鏍囧噯Service鎺ュ彛
- *
- * @author zhuguifei
- * @date 2025-03-04
- */
-public interface IEimsMaintStandService {
-
-    /**
-     * 鏌ヨ淇濆吇鏍囧噯
-     *
-     * @param id 涓婚敭
-     * @return 淇濆吇鏍囧噯
-     */
-    EimsMaintStandVo queryById(Long id);
-
-    /**
-     * 鍒嗛〉鏌ヨ淇濆吇鏍囧噯鍒楄〃
-     *
-     * @param bo        鏌ヨ鏉′欢
-     * @param pageQuery 鍒嗛〉鍙傛暟
-     * @return 淇濆吇鏍囧噯鍒嗛〉鍒楄〃
-     */
-    TableDataInfo<EimsMaintStandVo> queryPageList(EimsMaintStandBo bo, PageQuery pageQuery);
-
-    /**
-     * 鏌ヨ绗﹀悎鏉′欢鐨勪繚鍏绘爣鍑嗗垪琛�
-     *
-     * @param bo 鏌ヨ鏉′欢
-     * @return 淇濆吇鏍囧噯鍒楄〃
-     */
-    List<EimsMaintStandVo> queryList(EimsMaintStandBo bo);
-
-    /**
-     * 鏂板淇濆吇鏍囧噯
-     *
-     * @param bo 淇濆吇鏍囧噯
-     * @return 鏄惁鏂板鎴愬姛
-     */
-    Boolean insertByBo(EimsMaintStandBo bo);
-
-    /**
-     * 淇敼淇濆吇鏍囧噯
-     *
-     * @param bo 淇濆吇鏍囧噯
-     * @return 鏄惁淇敼鎴愬姛
-     */
-    Boolean updateByBo(EimsMaintStandBo bo);
-
-    /**
-     * 鏍¢獙骞舵壒閲忓垹闄や繚鍏绘爣鍑嗕俊鎭�
-     *
-     * @param ids     寰呭垹闄ょ殑涓婚敭闆嗗悎
-     * @param isValid 鏄惁杩涜鏈夋晥鎬ф牎楠�
-     * @return 鏄惁鍒犻櫎鎴愬姛
-     */
-    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrderServiceImpl.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrderServiceImpl.java
index 988fc92..472878a 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrderServiceImpl.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrderServiceImpl.java
@@ -15,13 +15,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
-import org.dromara.eims.domain.EimsMaintOrditm;
-import org.dromara.eims.domain.EimsMaintStand;
-import org.dromara.eims.domain.vo.EimsMaintPlanVo;
-import org.dromara.eims.domain.vo.EimsMaintStandVo;
-import org.dromara.eims.domain.vo.EimsRepairResVo;
-import org.dromara.eims.mapper.EimsMaintOrditmMapper;
-import org.dromara.eims.mapper.EimsMaintStandMapper;
+
 import org.dromara.system.domain.SysDept;
 import org.dromara.system.domain.vo.SysDeptVo;
 import org.dromara.system.mapper.SysDeptMapper;
@@ -49,10 +43,8 @@
 public class EimsMaintOrderServiceImpl implements IEimsMaintOrderService, MaintOrderService {
 
     private final EimsMaintOrderMapper baseMapper;
-    private final EimsMaintOrditmMapper orditmMapper;
     private final SysDeptMapper sysDeptMapper;
 
-    private final EimsMaintStandMapper standMapper;
     /**
      * 鏌ヨ淇濆吇宸ュ崟
      *
@@ -168,21 +160,6 @@
         if (flag) {
             bo.setId(add.getId());
 
-            //鐢熸垚淇濆吇鏄庣粏
-            Long equId = bo.getEquId();
-            List<EimsMaintStandVo> standList = standMapper.selectVoList(new LambdaQueryWrapper<EimsMaintStand>().eq(EimsMaintStand::getEquId, equId));
-            //TODO 娌℃湁淇濆吇椤癸紝娣诲姞寮傚父璁板綍
-            for (int j = 0; j < standList.size(); j++) {
-                EimsMaintStandVo stand = standList.get(j);
-                EimsMaintOrditm itm = new EimsMaintOrditm();
-                itm.setOrderId(bo.getId());
-                itm.setEquId(equId);
-                itm.setItmName(stand.getName());
-                itm.setItmAction(stand.getStand());
-                itm.setItmUser(bo.getMaintUser());
-                orditmMapper.insert(itm);
-            }
-
         }
         return flag;
     }
@@ -200,17 +177,6 @@
         EimsMaintOrder update = MapstructUtils.convert(bo, EimsMaintOrder.class);
 
         EimsMaintOrder old = baseMapper.selectById(bo.getId());
-
-        // 淇濆吇鐘舵�佸彉鏇村緟瀹℃牳鏃堕渶瑕佹牎楠屼繚鍏婚」鏁版嵁
-        if(old.getStatus().equals(DictConstants.MAINT_ORDER_STATUS_DETAIL.BAOYANG)&&bo.getStatus().equals(DictConstants.MAINT_ORDER_STATUS_DETAIL.DAIYANZHENG)){
-            LambdaQueryWrapper<EimsMaintOrditm>  itmQueryWrapper = Wrappers.lambdaQuery();
-            itmQueryWrapper.eq(EimsMaintOrditm::getOrderId, bo.getId());
-            List<EimsMaintOrditm> eimsMaintOrditms = orditmMapper.selectList(itmQueryWrapper);
-            List<EimsMaintOrditm> wwc = eimsMaintOrditms.stream().filter(item->!item.getStatus().equals(DictConstants.EIMS_ORDITM_STATUS_DETAIL.YIWANCHENG)).toList();
-             if(!wwc.isEmpty()){
-                return false;
-             }
-        }
 
         validEntityBeforeSave(update);
         return baseMapper.updateById(update) > 0;
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrditmServiceImpl.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrditmServiceImpl.java
deleted file mode 100644
index b3dfde2..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrditmServiceImpl.java
+++ /dev/null
@@ -1,170 +0,0 @@
-package org.dromara.eims.service.impl;
-
-import org.dromara.common.core.constant.DictConstants;
-import org.dromara.common.core.utils.MapstructUtils;
-import org.dromara.common.core.utils.StringUtils;
-import org.dromara.common.mybatis.core.page.TableDataInfo;
-import org.dromara.common.mybatis.core.page.PageQuery;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import lombok.RequiredArgsConstructor;
-import org.dromara.eims.domain.EimsMaintOrder;
-import org.dromara.eims.mapper.EimsMaintOrderMapper;
-import org.springframework.stereotype.Service;
-import org.dromara.eims.domain.bo.EimsMaintOrditmBo;
-import org.dromara.eims.domain.vo.EimsMaintOrditmVo;
-import org.dromara.eims.domain.EimsMaintOrditm;
-import org.dromara.eims.mapper.EimsMaintOrditmMapper;
-import org.dromara.eims.service.IEimsMaintOrditmService;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import java.util.Collection;
-
-/**
- * 宸ュ崟鏉$洰Service涓氬姟灞傚鐞�
- *
- * @author zhuguifei
- * @date 2025-03-10
- */
-@RequiredArgsConstructor
-@Service
-public class EimsMaintOrditmServiceImpl implements IEimsMaintOrditmService {
-
-    private final EimsMaintOrditmMapper baseMapper;
-    private final EimsMaintOrderMapper orderMapper;
-
-    /**
-     * 鏌ヨ宸ュ崟鏉$洰
-     *
-     * @param id 涓婚敭
-     * @return 宸ュ崟鏉$洰
-     */
-    @Override
-    public EimsMaintOrditmVo queryById(Long id){
-        return baseMapper.selectVoById(id);
-    }
-
-    /**
-     * 鍒嗛〉鏌ヨ宸ュ崟鏉$洰鍒楄〃
-     *
-     * @param bo        鏌ヨ鏉′欢
-     * @param pageQuery 鍒嗛〉鍙傛暟
-     * @return 宸ュ崟鏉$洰鍒嗛〉鍒楄〃
-     */
-    @Override
-    public TableDataInfo<EimsMaintOrditmVo> queryPageList(EimsMaintOrditmBo bo, PageQuery pageQuery) {
-        LambdaQueryWrapper<EimsMaintOrditm> lqw = buildQueryWrapper(bo);
-        Page<EimsMaintOrditmVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
-        return TableDataInfo.build(result);
-    }
-
-    /**
-     * 鏌ヨ绗﹀悎鏉′欢鐨勫伐鍗曟潯鐩垪琛�
-     *
-     * @param bo 鏌ヨ鏉′欢
-     * @return 宸ュ崟鏉$洰鍒楄〃
-     */
-    @Override
-    public List<EimsMaintOrditmVo> queryList(EimsMaintOrditmBo bo) {
-        LambdaQueryWrapper<EimsMaintOrditm> lqw = buildQueryWrapper(bo);
-        return baseMapper.selectVoList(lqw);
-    }
-
-    private LambdaQueryWrapper<EimsMaintOrditm> buildQueryWrapper(EimsMaintOrditmBo bo) {
-        Map<String, Object> params = bo.getParams();
-        LambdaQueryWrapper<EimsMaintOrditm> lqw = Wrappers.lambdaQuery();
-        lqw.eq(bo.getOrderId() != null, EimsMaintOrditm::getOrderId, bo.getOrderId());
-        lqw.eq(bo.getEquId() != null, EimsMaintOrditm::getEquId, bo.getEquId());
-        lqw.like(StringUtils.isNotBlank(bo.getItmName()), EimsMaintOrditm::getItmName, bo.getItmName());
-        lqw.eq(StringUtils.isNotBlank(bo.getItmAction()), EimsMaintOrditm::getItmAction, bo.getItmAction());
-        lqw.eq(bo.getItmUser() != null, EimsMaintOrditm::getItmUser, bo.getItmUser());
-        lqw.eq(bo.getItmTime() != null, EimsMaintOrditm::getItmTime, bo.getItmTime());
-        lqw.eq(StringUtils.isNotBlank(bo.getStatus()), EimsMaintOrditm::getStatus, bo.getStatus());
-        return lqw;
-    }
-
-    /**
-     * 鏂板宸ュ崟鏉$洰
-     *
-     * @param bo 宸ュ崟鏉$洰
-     * @return 鏄惁鏂板鎴愬姛
-     */
-    @Override
-    public Boolean insertByBo(EimsMaintOrditmBo bo) {
-        EimsMaintOrditm add = MapstructUtils.convert(bo, EimsMaintOrditm.class);
-        validEntityBeforeSave(add);
-        boolean flag = baseMapper.insert(add) > 0;
-        if (flag) {
-            bo.setId(add.getId());
-        }
-        return flag;
-    }
-
-    /**
-     * 淇敼宸ュ崟鏉$洰
-     *
-     * @param bo 宸ュ崟鏉$洰
-     * @return 鏄惁淇敼鎴愬姛
-     */
-    @Transactional(rollbackFor = Exception.class)
-    @Override
-    public Boolean updateByBo(EimsMaintOrditmBo bo) {
-        EimsMaintOrditm update = MapstructUtils.convert(bo, EimsMaintOrditm.class);
-        // 瀹屾垚宸ュ崟鏄庣粏鍚屾淇敼宸ュ崟鐘舵��
-        //1.绗竴娆″畬鎴愪繚鍏诲伐鍗曟槑缁嗘妸淇濆吇宸ュ崟鐘舵�佷慨鏀逛负 淇濆吇涓�
-        Long orderId = bo.getOrderId();
-        EimsMaintOrder order = orderMapper.selectById(orderId);
-        if(bo.getStatus().equals(DictConstants.EIMS_ORDITM_STATUS_DETAIL.YIWANCHENG)){
-            //娌℃湁瀹屾垚鏃堕棿鑷姩娣诲姞瀹屾垚鏃堕棿
-            if(bo.getItmTime()==null){
-                update.setItmTime(new Date());
-            }
-            if(order.getStatus().equals(DictConstants.MAINT_ORDER_STATUS_DETAIL.DAIBAOYANG)){
-                order.setStatus(DictConstants.MAINT_ORDER_STATUS_DETAIL.BAOYANG);
-                if(order.getStartTime()==null){
-                    order.setStartTime(new Date());
-                }
-                orderMapper.updateById(order);
-            }
-        }
-        validEntityBeforeSave(update);
-        boolean flag = baseMapper.updateById(update) > 0;
-        //2.鏌ヨ鎵�鏈変繚鍏婚」鏄惁閮藉凡瀹屾垚
-        LambdaQueryWrapper<EimsMaintOrditm> queryWrapper = Wrappers.lambdaQuery();
-        queryWrapper.eq(EimsMaintOrditm::getOrderId, bo.getOrderId());
-        List<EimsMaintOrditm> eimsMaintOrditms = baseMapper.selectList(queryWrapper);
-        List<EimsMaintOrditm> wwc = eimsMaintOrditms.stream().filter(item->!item.getStatus().equals(DictConstants.EIMS_ORDITM_STATUS_DETAIL.YIWANCHENG)).toList();
-        if(wwc.isEmpty()){
-            order.setStatus(DictConstants.MAINT_ORDER_STATUS_DETAIL.DAIYANZHENG);
-            orderMapper.updateById(order);
-        }
-
-        return flag;
-    }
-
-    /**
-     * 淇濆瓨鍓嶇殑鏁版嵁鏍¢獙
-     */
-    private void validEntityBeforeSave(EimsMaintOrditm entity){
-        //TODO 鍋氫竴浜涙暟鎹牎楠�,濡傚敮涓�绾︽潫
-    }
-
-    /**
-     * 鏍¢獙骞舵壒閲忓垹闄ゅ伐鍗曟潯鐩俊鎭�
-     *
-     * @param ids     寰呭垹闄ょ殑涓婚敭闆嗗悎
-     * @param isValid 鏄惁杩涜鏈夋晥鎬ф牎楠�
-     * @return 鏄惁鍒犻櫎鎴愬姛
-     */
-    @Override
-    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
-        if(isValid){
-            //TODO 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠�
-        }
-        return baseMapper.deleteByIds(ids) > 0;
-    }
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStandServiceImpl.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStandServiceImpl.java
deleted file mode 100644
index d1e76d2..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintStandServiceImpl.java
+++ /dev/null
@@ -1,135 +0,0 @@
-package org.dromara.eims.service.impl;
-
-import org.dromara.common.core.utils.MapstructUtils;
-import org.dromara.common.core.utils.StringUtils;
-import org.dromara.common.mybatis.core.page.TableDataInfo;
-import org.dromara.common.mybatis.core.page.PageQuery;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import lombok.RequiredArgsConstructor;
-import org.springframework.stereotype.Service;
-import org.dromara.eims.domain.bo.EimsMaintStandBo;
-import org.dromara.eims.domain.vo.EimsMaintStandVo;
-import org.dromara.eims.domain.EimsMaintStand;
-import org.dromara.eims.mapper.EimsMaintStandMapper;
-import org.dromara.eims.service.IEimsMaintStandService;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Collection;
-
-/**
- * 淇濆吇鏍囧噯Service涓氬姟灞傚鐞�
- *
- * @author zhuguifei
- * @date 2025-03-04
- */
-@RequiredArgsConstructor
-@Service
-public class EimsMaintStandServiceImpl implements IEimsMaintStandService {
-
-    private final EimsMaintStandMapper baseMapper;
-
-    /**
-     * 鏌ヨ淇濆吇鏍囧噯
-     *
-     * @param id 涓婚敭
-     * @return 淇濆吇鏍囧噯
-     */
-    @Override
-    public EimsMaintStandVo queryById(Long id){
-        return baseMapper.selectVoById(id);
-    }
-
-    /**
-     * 鍒嗛〉鏌ヨ淇濆吇鏍囧噯鍒楄〃
-     *
-     * @param bo        鏌ヨ鏉′欢
-     * @param pageQuery 鍒嗛〉鍙傛暟
-     * @return 淇濆吇鏍囧噯鍒嗛〉鍒楄〃
-     */
-    @Override
-    public TableDataInfo<EimsMaintStandVo> queryPageList(EimsMaintStandBo bo, PageQuery pageQuery) {
-        LambdaQueryWrapper<EimsMaintStand> lqw = buildQueryWrapper(bo);
-        Page<EimsMaintStandVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
-        return TableDataInfo.build(result);
-    }
-
-    /**
-     * 鏌ヨ绗﹀悎鏉′欢鐨勪繚鍏绘爣鍑嗗垪琛�
-     *
-     * @param bo 鏌ヨ鏉′欢
-     * @return 淇濆吇鏍囧噯鍒楄〃
-     */
-    @Override
-    public List<EimsMaintStandVo> queryList(EimsMaintStandBo bo) {
-        LambdaQueryWrapper<EimsMaintStand> lqw = buildQueryWrapper(bo);
-        return baseMapper.selectVoList(lqw);
-    }
-
-    private LambdaQueryWrapper<EimsMaintStand> buildQueryWrapper(EimsMaintStandBo bo) {
-        Map<String, Object> params = bo.getParams();
-        LambdaQueryWrapper<EimsMaintStand> lqw = Wrappers.lambdaQuery();
-        lqw.eq(bo.getEquId() != null, EimsMaintStand::getEquId, bo.getEquId());
-        lqw.eq(bo.getEquTypeId() != null, EimsMaintStand::getEquTypeId, bo.getEquTypeId());
-        lqw.like(StringUtils.isNotBlank(bo.getAssetNo()), EimsMaintStand::getAssetNo, bo.getAssetNo());
-        lqw.like(StringUtils.isNotBlank(bo.getEquName()), EimsMaintStand::getEquName, bo.getEquName());
-        lqw.like(StringUtils.isNotBlank(bo.getModelNo()), EimsMaintStand::getModelNo, bo.getModelNo());
-        lqw.like(StringUtils.isNotBlank(bo.getName()), EimsMaintStand::getName, bo.getName());
-        lqw.like(StringUtils.isNotBlank(bo.getStand()), EimsMaintStand::getStand, bo.getStand());
-        return lqw;
-    }
-
-    /**
-     * 鏂板淇濆吇鏍囧噯
-     *
-     * @param bo 淇濆吇鏍囧噯
-     * @return 鏄惁鏂板鎴愬姛
-     */
-    @Override
-    public Boolean insertByBo(EimsMaintStandBo bo) {
-        EimsMaintStand add = MapstructUtils.convert(bo, EimsMaintStand.class);
-        validEntityBeforeSave(add);
-        boolean flag = baseMapper.insert(add) > 0;
-        if (flag) {
-            bo.setId(add.getId());
-        }
-        return flag;
-    }
-
-    /**
-     * 淇敼淇濆吇鏍囧噯
-     *
-     * @param bo 淇濆吇鏍囧噯
-     * @return 鏄惁淇敼鎴愬姛
-     */
-    @Override
-    public Boolean updateByBo(EimsMaintStandBo bo) {
-        EimsMaintStand update = MapstructUtils.convert(bo, EimsMaintStand.class);
-        validEntityBeforeSave(update);
-        return baseMapper.updateById(update) > 0;
-    }
-
-    /**
-     * 淇濆瓨鍓嶇殑鏁版嵁鏍¢獙
-     */
-    private void validEntityBeforeSave(EimsMaintStand entity){
-        //TODO 鍋氫竴浜涙暟鎹牎楠�,濡傚敮涓�绾︽潫
-    }
-
-    /**
-     * 鏍¢獙骞舵壒閲忓垹闄や繚鍏绘爣鍑嗕俊鎭�
-     *
-     * @param ids     寰呭垹闄ょ殑涓婚敭闆嗗悎
-     * @param isValid 鏄惁杩涜鏈夋晥鎬ф牎楠�
-     * @return 鏄惁鍒犻櫎鎴愬姛
-     */
-    @Override
-    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
-        if(isValid){
-            //TODO 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠�
-        }
-        return baseMapper.deleteByIds(ids) > 0;
-    }
-}
diff --git a/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrderMapper.xml b/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrderMapper.xml
index e320526..5497c48 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrderMapper.xml
+++ b/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrderMapper.xml
@@ -7,6 +7,7 @@
     </resultMap>
     <select id="selectMaintOrderList" resultMap="EimsMaintOrderResult">
         SELECT mo.*,equ.equ_name equName,equ.equ_code equCode,equ.asset_no assetNo,equ.model_no modelNo,mo.create_time createTime,
+               pl.maint_name maintName,
                us.nick_name maintUserName,dp.dept_name maintDeptName,ue.nick_name verifyUserName,
                CONCAT_WS('', mo.maint_cycle, dd.dict_label) maintCycleUnitName
         FROM eims_maint_order mo
@@ -14,6 +15,7 @@
                  LEFT JOIN sys_user us ON mo.maint_user = us.user_id
                  LEFT JOIN sys_user ue ON mo.verify_user = ue.user_id
                  LEFT JOIN sys_dept dp ON mo.maint_dept = dp.dept_id
+                 LEFT JOIN eims_maint_plan pl ON pl.id = mo.plan_id
                  LEFT JOIN sys_dict_data dd on dd.dict_type = 'maint_cycle_unit' and dd.dict_value = mo.maint_cycle_unit
             ${ew.getCustomSqlSegment}
     </select>
diff --git a/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrditmMapper.xml b/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrditmMapper.xml
deleted file mode 100644
index 0fe9238..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintOrditmMapper.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.dromara.eims.mapper.EimsMaintOrditmMapper">
-
-</mapper>
diff --git a/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintStandMapper.xml b/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintStandMapper.xml
deleted file mode 100644
index 92692fa..0000000
--- a/eims/ruoyi-modules/lb-eims/src/main/resources/mapper/eims/EimsMaintStandMapper.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.dromara.eims.mapper.EimsMaintStandMapper">
-
-</mapper>

--
Gitblit v1.9.3