From 52b10180d77f2962e519300469811a911afa3cf2 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期四, 11 一月 2024 17:42:58 +0800
Subject: [PATCH] 保养拆分  页面问题修改

---
 src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardModal.vue      |  950 +++++++++++++++++++++++
 src/views/eam/modules/dailyMaintenanceOrder/FinishDevolutionModal.vue                  |   20 
 src/views/eam/DailyMaintenanceStandard3List.vue                                        |  603 ++++++++++++++
 src/views/eam/modules/dailyMaintenanceOrder/MaintenanceOrderModal.vue                  |   21 
 src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardDetail.vue     |  289 +++++++
 src/views/eam/modules/dailyMaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue         |   74 +
 src/views/eam/DailyMaintenanceStandardList.vue                                         |    7 
 src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardModal.vue       |   58 
 src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardDetail.vue      |   33 
 src/views/eam/modules/maintenancePlan/EquipmentMaintenancePlanForm.vue                 |    5 
 src/views/eam/modules/daily3MaintenanceOrder/MaintenanceOrder3Modal.vue                |    6 
 src/views/eam/Daily3MaintenanceOrderList.vue                                           |    4 
 src/views/eam/modules/daily3MaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue        |   42 
 src/views/eam/DailyMaintenanceOrderList.vue                                            |    4 
 src/views/eam/modules/dailyMaintenanceStandard3/JSelectMaintenanceStandardModal.vue    |  282 ++++++
 src/views/eam/modules/dailyInspectionOrder/DailyInspectionOrderExeDrawer.vue           |   52 
 src/views/eam/modules/specialtyInspectionOrder/SpecialtyInspectionOrderAssignModal.vue |    2 
 17 files changed, 2,342 insertions(+), 110 deletions(-)

diff --git a/src/views/eam/Daily3MaintenanceOrderList.vue b/src/views/eam/Daily3MaintenanceOrderList.vue
index 58808ee..4fc0c35 100644
--- a/src/views/eam/Daily3MaintenanceOrderList.vue
+++ b/src/views/eam/Daily3MaintenanceOrderList.vue
@@ -577,9 +577,9 @@
         //   dataIndex: 'actualWorkingHourQuota',
         // },
         {
-          title: '鎵ц浜�',
+          title: '鎶ュ伐浜�',
           align: "center",
-          dataIndex: 'maintenanceUserName'
+          dataIndex: 'maintenanceUserId'
         },
         {
           title: '闂鍙婄浉搴斿鐞嗘帾鏂芥弿杩�',
diff --git a/src/views/eam/DailyMaintenanceOrderList.vue b/src/views/eam/DailyMaintenanceOrderList.vue
index bf01a53..6b87ca7 100644
--- a/src/views/eam/DailyMaintenanceOrderList.vue
+++ b/src/views/eam/DailyMaintenanceOrderList.vue
@@ -422,9 +422,9 @@
         //   dataIndex: 'actualWorkingHourQuota',
         // },
         {
-          title: '鎵ц浜�',
+          title: '鎶ュ伐浜�',
           align: "center",
-          dataIndex: 'maintenanceUserName'
+          dataIndex: 'maintenanceUserId'
         },
         {
           title: '闂鍙婄浉搴斿鐞嗘帾鏂芥弿杩�',
diff --git a/src/views/eam/DailyMaintenanceStandard3List.vue b/src/views/eam/DailyMaintenanceStandard3List.vue
new file mode 100644
index 0000000..776caca
--- /dev/null
+++ b/src/views/eam/DailyMaintenanceStandard3List.vue
@@ -0,0 +1,603 @@
+<template>
+  <a-card
+    title="涓夌骇淇濆吇鏍囧噯"
+    :bordered='false'
+  >
+    <div class='table-page-search-wrapper'>
+      <a-form
+        layout='inline'
+        @keyup.enter.native='searchQuery'
+      >
+        <a-row :gutter='24'>
+          <a-col
+            :xl='6'
+            :lg='7'
+            :md='8'
+            :sm='24'
+          >
+            <a-form-item label='鏍囧噯缂栫爜'>
+              <a-input
+                placeholder='璇疯緭鍏ユ爣鍑嗙紪鐮�'
+                v-model='queryParam.num'
+              ></a-input>
+            </a-form-item>
+          </a-col>
+          <a-col
+            :xl='6'
+            :lg='7'
+            :md='8'
+            :sm='24'
+          >
+            <a-form-item label='璁惧鍚嶇О'>
+              <a-input
+                placeholder='璇疯緭鍏ヨ澶囧悕绉�'
+                v-model='queryParam.name'
+              ></a-input>
+            </a-form-item>
+          </a-col>
+          <a-col
+            :md="10"
+            :sm="8"
+          >
+            <a-form-item label="鐗堟湰鐘舵��">
+              <a-radio-group
+                v-model="queryParam.versionStatus"
+                @change="onChange"
+                default-value="2"
+              >
+                <a-radio-button value="1">
+                  鏈敓鏁�
+                </a-radio-button>
+                <a-radio-button value="2">
+                  宸茬敓鏁�
+                </a-radio-button>
+                <a-radio-button value="3">
+                  宸插け鏁�
+                </a-radio-button>
+              </a-radio-group>
+            </a-form-item>
+          </a-col>
+          <!-- <a-col
+            :xl='6'
+            :lg='7'
+            :md='8'
+            :sm='24'
+          >
+            <span
+              style='float: left;overflow: hidden;'
+              class='table-page-search-submitButtons'
+            >
+              <a-button
+                type='primary'
+                @click='searchQuery'
+                icon='search'
+              >鏌ヨ</a-button>
+              <a-button
+                type='primary'
+                @click='searchReset'
+                icon='reload'
+                style='margin-left: 8px'
+              >閲嶇疆</a-button>
+            </span>
+          </a-col> -->
+        </a-row>
+      </a-form>
+    </div>
+
+    <div class="table-operator">
+      <a-button
+        @click='handleAdd'
+        type='primary'
+        icon='plus'
+        v-has="'dailyMaintenance3Standard:add'"
+      >缂栧埗</a-button>
+      <a-button
+        type='primary'
+        @click='searchQuery'
+        icon='search'
+      >鏌ヨ</a-button>
+      <a-button
+        type='primary'
+        @click='searchReset'
+        icon='reload'
+        style='margin-left: 8px'
+      >閲嶇疆</a-button>
+      <a-upload
+        name="file"
+        :showUploadList="false"
+        :multiple="false"
+        :headers="tokenHeader"
+        :action="importExcelUrl"
+        @change="handleImportExcel"
+      >
+        <a-button
+          type="primary"
+          icon="import"
+          v-has="'dailyMaintenance3Standard:import'"
+        >瀵煎叆</a-button>
+      </a-upload>
+    </div>
+
+    <!-- table鍖哄煙-begin -->
+    <div>
+      <div
+        class='ant-alert ant-alert-info'
+        style='margin-bottom: 16px;'
+      >
+        <i class='anticon anticon-info-circle ant-alert-icon'></i> 宸查�夋嫨 <a style='font-weight: 600'>{{ selectedRowKeys.length }}</a>椤�
+        <a
+          style='margin-left: 24px'
+          @click='onClearSelected'
+        >娓呯┖</a>
+      </div>
+
+      <a-table
+        ref='table'
+        size='middle'
+        bordered
+        rowKey='id'
+        :scroll="{ x: 'calc(2300px + 50%)', y: 900 }"
+        :columns='columns'
+        :dataSource='dataSource'
+        :pagination='ipagination'
+        :loading='loading'
+        :rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}'
+        :customRow='clickThenSelect'
+        @change='handleTableChange'
+      >
+
+        <!-- <span
+          slot='action'
+          slot-scope='text, record'
+        >
+          <a @click='handleEdit(record)'>缂栬緫</a>
+
+          <a-divider type='vertical' />
+          <a-dropdown>
+            <a class='ant-dropdown-link'>鏇村 <a-icon type='down' /></a>
+            <a-menu slot='overlay'>
+              <a-menu-item>
+                <a-popconfirm
+                  title='纭畾鍒犻櫎鍚�?'
+                  @confirm='() => handleDelete(record.id)'
+                >
+                  <a>鍒犻櫎</a>
+                </a-popconfirm>
+              </a-menu-item>
+            </a-menu>
+          </a-dropdown>
+        </span> -->
+
+        <span
+          slot="action"
+          slot-scope="text, record"
+        >
+          <a
+            v-show="record.versionStatus == '1' && record.approvalStatus == '1' "
+            @click="handleAuditApproval(record)"
+            v-has="'dailyMaintenance3Standard:audit'"
+          >瀹℃牳</a>
+          <a-divider type="vertical" />
+          <a
+            v-show="record.versionStatus == '1' && record.approvalStatus == '4'"
+            @click="handleAuditApproval(record)"
+            v-has="'dailyMaintenance3Standard:againAudit'"
+          >閲嶆柊瀹℃牳</a>
+          <a-divider type="vertical" />
+          <a
+            v-show="record.versionStatus == '1'&& record.approvalStatus == '3' "
+            @click="handleAuditApproval(record)"
+            v-has="'dailyMaintenance3Standard:approval'"
+          >瀹℃壒</a>
+          <a-divider type="vertical" />
+          <a
+            v-show="record.versionStatus == '1' && (record.approvalStatus == '1' || record.approvalStatus == '2')"
+            @click="handleEdit(record)"
+            v-has="'dailyMaintenance3Standard:edit'"
+          >缂栬緫</a>
+          <a-divider type="vertical" />
+          <a-popconfirm
+            v-show="record.versionStatus == '1' && (record.approvalStatus == '1' || record.approvalStatus == '2')"
+            title="纭畾鍒犻櫎鍚�?"
+            @confirm="() => handleDelete(record.id)"
+            v-has="'dailyMaintenance3Standard:delete'"
+          >
+            <a>鍒犻櫎</a>
+          </a-popconfirm>
+          <a-divider type="vertical" />
+          <a
+            v-show="record.versionStatus != '1'"
+            @click="handleRevise(record)"
+            v-has="'dailyMaintenance3Standard:revise'"
+          >鍗囩増</a>
+          <a-divider type="vertical" />
+          <a
+            v-show="record.versionStatus == '2'"
+            @click="handleTakeEffect(record)"
+            v-has="'dailyMaintenance3Standard:loseEfficacy'"
+          >澶辨晥</a>
+        </span>
+
+      </a-table>
+      <a-tabs
+        type="card"
+        defaultActiveKey="1"
+      >
+        <a-tab-pane
+          tab='淇濆吇鏄庣粏'
+          key="1"
+        >
+          <div
+            class="table-operator"
+            style="margin:-16px"
+          >
+            <daily-maintenance-standard-detail :maintenanceStandardId='maintenanceStandardId' />
+          </div>
+        </a-tab-pane>
+        <!-- <a-tab-pane
+          tab='璁″垝鐢ㄦ枡'
+          key="2"
+        >
+          <div
+            class="table-operator"
+            style="margin:-16px"
+          >
+            <maintenance-standard-planning-material :maintenanceStandardId='maintenanceStandardId' />
+          </div>
+        </a-tab-pane>
+        <a-tab-pane
+          tab='鍗遍櫓闃叉帶'
+          key="3"
+        >
+          <div
+            class="table-operator"
+            style="margin:-16px"
+          >
+            <maintenance-standard-safety-requirement :maintenanceStandardId='maintenanceStandardId' />
+          </div>
+        </a-tab-pane>
+        <a-tab-pane
+          tab='浣滀笟鎸囧涔�'
+          key="4"
+        >
+          <div
+            class="table-operator"
+            style="margin:-16px"
+          >
+            <maintenance-standard-work-instruction :maintenanceStandardId='maintenanceStandardId' />
+          </div>
+        </a-tab-pane> -->
+
+      </a-tabs>
+    </div>
+
+    <daily-maintenance-standard-modal
+      ref='modalForm'
+      @ok='modalFormOk'
+    ></daily-maintenance-standard-modal>
+
+    <audit-approval-modal
+      ref='auditApprovalModal'
+      @ok='modalFormOk'
+    ></audit-approval-modal>
+  </a-card>
+</template>
+
+<script>
+
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+
+import { getAction, postAction, requestPut } from '@/api/manage'
+import DailyMaintenanceStandardDetail from './modules/dailyMaintenanceStandard3/DailyMaintenanceStandardDetail'
+import MaintenanceStandardPlanningMaterial from '@/views/eam/modules/dailyMaintenanceStandard/MaintenanceStandardPlanningMaterial'
+import MaintenanceStandardSafetyRequirement from '@/views/eam/modules/dailyMaintenanceStandard/MaintenanceStandardSafetyRequirement'
+import DailyMaintenanceStandardModal from './modules/dailyMaintenanceStandard3/DailyMaintenanceStandardModal'
+import MaintenanceStandardWorkInstruction from '@/views/eam/modules/dailyMaintenanceStandard/MaintenanceStandardWorkInstruction'
+import AuditApprovalModal from './modules/dailyMaintenanceStandard/AuditApprovalModal'
+import '@/assets/less/TableExpand.less'
+
+export default {
+  name: 'DailyMaintenanceStandardList',
+  mixins: [JeecgListMixin],
+  components: {
+    DailyMaintenanceStandardDetail,
+    DailyMaintenanceStandardModal,
+    MaintenanceStandardPlanningMaterial,
+    MaintenanceStandardSafetyRequirement,
+    MaintenanceStandardWorkInstruction,
+    AuditApprovalModal
+  },
+  data() {
+    return {
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          width: 60,
+          align: 'center',
+          customRender: function (t, r, index) {
+            return parseInt(index) + 1
+          }
+        },
+        {
+          title: '鏍囧噯缂栫爜',
+          align: 'center',
+          dataIndex: 'num',
+        },
+        {
+          title: '鏍囧噯绫诲瀷',
+          align: 'center',
+          dataIndex: 'maintenanceTypeName',
+        },
+        {
+          title: '绛惧鐘舵��',
+          align: 'center',
+          dataIndex: 'approvalStatusName',
+        },
+        {
+          title: '缁熶竴缂栫爜',
+          align: 'center',
+          dataIndex: 'equipmentNum',
+        },
+        {
+          title: '璁惧鍚嶇О',
+          align: 'center',
+          dataIndex: 'equipmentName',
+        },
+        {
+          title: '璁惧鍨嬪彿',
+          align: 'center',
+          dataIndex: 'equipmentModel',
+        },
+        {
+          title: '浣跨敤閮ㄩ棬',
+          align: 'center',
+          dataIndex: 'useDepartName',
+        },
+
+        {
+          title: '璐d换鐝粍',
+          align: 'center',
+          dataIndex: 'teamName',
+        },
+        // {
+        //   title: '鐗圭璁惧',
+        //   align: 'center',
+        //   dataIndex: 'specificEquipment',
+        // },
+        {
+          title: '瀹℃牳鎰忚',
+          align: 'center',
+          dataIndex: 'auditFeedback',
+        },
+        {
+          title: '瀹℃壒鎰忚',
+          align: 'center',
+          dataIndex: 'approvalFeedback',
+        },
+        {
+          title: '缂栧埗浜�',
+          align: 'center',
+          dataIndex: 'writePerson',
+        },
+        {
+          title: '瀹℃牳浜�',
+          align: 'center',
+          dataIndex: 'auditPerson',
+        },
+        {
+          title: '瀹℃壒浜�',
+          align: 'center',
+          dataIndex: 'approvalPerson',
+        },
+        {
+          title: '澶辨晥浜�',
+          align: 'center',
+          dataIndex: 'loseEfficacyPerson',
+        },
+        {
+          title: '缂栧埗鏃ユ湡',
+          align: 'center',
+          dataIndex: 'createTime',
+          width: 150,
+        },
+        {
+          title: '鐢熸晥鏃堕棿',
+          align: 'center',
+          dataIndex: 'takeEffectTime',
+          width: 150,
+        },
+        {
+          title: '澶辨晥鏃堕棿',
+          align: 'center',
+          dataIndex: 'loseEfficacyTime',
+          width: 150,
+        },
+        {
+          title: '鐗堟湰',
+          align: 'center',
+          dataIndex: 'version',
+        },
+        {
+          title: '鐗堟湰鐘舵��',
+          align: 'center',
+          dataIndex: 'versionStatusName',
+        },
+        // {
+        //   title: '鍒涘缓浜�',
+        //   align: 'center',
+        //   dataIndex: 'createBy',
+        // },
+
+        // {
+        //   title: '鏇存柊浜�',
+        //   align: 'center',
+        //   dataIndex: 'updateBy',
+        // },
+        // {
+        //   title: '鏇存柊鏃ユ湡',
+        //   align: 'center',
+        //   dataIndex: 'updateTime',
+        // },
+        {
+          title: '鎿嶄綔',
+          dataIndex: 'action',
+          align: 'center',
+          fixed: 'right',
+          scopedSlots: { customRender: 'action' },
+          width: 200,
+        }
+      ],
+      url: {
+        list: '/eam/maintenanceStandard/getMaintenanceStandardList',
+        delete: '/eam/maintenanceStandard/delete',
+        deleteBatch: '/eam/maintenanceStandard/deleteBatch',
+        versionTakeEffect: "/eam/maintenanceStandard/versionTakeEffect",
+        importExcelUrl: "/eam/maintenanceStandard/importExcelOfTwoMaintenance",
+      },
+      /* 鍒嗛〉鍙傛暟 */
+      ipagination: {
+        current: 1,
+        pageSize: 20,
+        pageSizeOptions: ['5', '10', '20', '50'],
+        showTotal: (total, range) => {
+          return range[0] + '-' + range[1] + ' 鍏�' + total + '鏉�'
+        },
+        showQuickJumper: true,
+        showSizeChanger: true,
+        total: 0
+      },
+      maintenanceStandardId: '-1',
+      queryParam: { type: 'daily', maintenanceType: '3' }
+    }
+  },
+  computed: {
+    importExcelUrl: function () {
+      return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
+    }
+  },
+  watch: {
+    selectionRows() {
+      this.$bus.$emit('dailyMaintenanceStandardSelectionRows', this.selectionRows);
+    },
+  },
+  methods: {
+    clickThenSelect(record) {
+      return {
+        on: {
+          click: () => {
+            this.onSelectChange(record.id.split(','), [record])
+          }
+        }
+      }
+    },
+    onClearSelected() {
+      this.selectedRowKeys = []
+      this.selectionRows = []
+      this.maintenanceStandardId = '-1'
+    },
+    onSelectChange(selectedRowKeys, selectionRows) {
+      if (selectedRowKeys.length == 1) {
+        this.maintenanceStandardId = selectionRows[0]['id']
+      } else {
+        this.maintenanceStandardId = '-1'
+      }
+      this.selectedRowKeys = selectedRowKeys
+      this.selectionRows = selectionRows
+    },
+
+    onChange(e) {
+      this.queryParam.versionStatus = e.target.value;
+      this.loadData();
+    },
+
+    loadData(arg) {
+      if (!this.url.list) {
+        this.$message.error('璇疯缃畊rl.list灞炴��!')
+        return
+      }
+      //鍔犺浇鏁版嵁 鑻ヤ紶鍏ュ弬鏁�1鍒欏姞杞界涓�椤电殑鍐呭
+      if (arg === 1) {
+        this.ipagination.current = 1
+      }
+      this.onClearSelected()
+      var params = this.getQueryParams()//鏌ヨ鏉′欢
+      this.loading = true
+      getAction(this.url.list, params).then((res) => {
+        if (res.success) {
+          this.dataSource = res.result.records
+          this.ipagination.total = res.result.total
+        }
+        if (res.code === 510) {
+          this.$message.warning(res.message)
+        }
+        this.loading = false
+      })
+    },
+
+    handleEdit: function (record) {
+      this.$refs.modalForm.edit(record)
+      this.$refs.modalForm.title = '缂栬緫'
+      this.$refs.modalForm.disableSubmit = false
+      this.$refs.modalForm.isRevise = false;
+    },
+    handleAdd: function () {
+      this.$refs.modalForm.add()
+      this.$refs.modalForm.title = '鏂板'
+      this.$refs.modalForm.disableSubmit = false
+      this.$refs.modalForm.isRevise = false;
+    },
+
+    //瀹℃牳瀹℃壒
+    handleAuditApproval: function (record) {
+      this.$refs.auditApprovalModal.showModals(record);
+      this.$refs.auditApprovalModal.title = "瀹℃牳";
+    },
+
+    //鍗囩増
+    handleRevise: function (record) {
+      this.$refs.modalForm.edit(record);
+      this.$refs.modalForm.title = "淇濆吇鏍囧噯鐗堟湰鍗囩骇";
+      this.$refs.modalForm.disableSubmit = false;
+      this.$refs.modalForm.isRevise = true;
+    },
+
+    //澶辨晥
+    handleTakeEffect(record) {
+      const that = this;
+      that.confirmLoading = true;
+      this.$confirm({
+        title: '淇濆吇鏍囧噯鐗堟湰澶辨晥锛�',
+        content: '鎻愮ず锛氱増鏈け鏁堝悗灏嗙姝娇鐢紝璇疯皑鎱庢搷浣滐紒',
+        okText: '纭',
+        cancelText: '鍙栨秷',
+        onOk() {
+          requestPut(that.url.versionTakeEffect, { id: record.id, num: record.num, versionStatus: '3' }).then((res) => {
+            if (res.success) {
+              that.$message.success("鐗堟湰澶辨晥鎴愬姛锛�")
+              that.loadData(1)
+            } else {
+              that.$message.warning("鐗堟湰澶辨晥澶辫触锛�")
+            }
+          }).finally(() => {
+            that.confirmLoading = false;
+          })
+        },
+      })
+    },
+
+    searchReset() {
+      this.maintenanceStandardId = '-1'
+      this.queryParam = { type: 'daily', maintenanceType: '3' }
+      this.loadData(1);
+    },
+  }
+}
+</script>
+<style scoped>
+@import '~@assets/less/common.less';
+.table-operator .ant-btn {
+  margin: 10px 8px 8px 10px;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/eam/DailyMaintenanceStandardList.vue b/src/views/eam/DailyMaintenanceStandardList.vue
index 3a50e65..40619b2 100644
--- a/src/views/eam/DailyMaintenanceStandardList.vue
+++ b/src/views/eam/DailyMaintenanceStandardList.vue
@@ -1,6 +1,6 @@
 <template>
   <a-card
-    title="鍛ㄦ湡鎬т繚鍏绘爣鍑�"
+    title="浜岀骇淇濆吇鏍囧噯"
     :bordered='false'
   >
     <div class='table-page-search-wrapper'>
@@ -113,6 +113,7 @@
         <a-button
           type="primary"
           icon="import"
+          v-has="'dailyMaintenanceStandard:import'"
         >瀵煎叆</a-button>
       </a-upload>
     </div>
@@ -468,7 +469,7 @@
         total: 0
       },
       maintenanceStandardId: '-1',
-      queryParam: { type: 'daily' }
+      queryParam: { type: 'daily', maintenanceType: '2' }
     }
   },
   computed: {
@@ -588,7 +589,7 @@
 
     searchReset() {
       this.maintenanceStandardId = '-1'
-      this.queryParam = { type: 'daily' }
+      this.queryParam = { type: 'daily', maintenanceType: '2' }
       this.loadData(1);
     },
   }
diff --git a/src/views/eam/modules/daily3MaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue b/src/views/eam/modules/daily3MaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue
index 69e6f8a..5f79a1d 100644
--- a/src/views/eam/modules/daily3MaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue
+++ b/src/views/eam/modules/daily3MaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue
@@ -97,7 +97,7 @@
                 >
                   <span
                     v-if="this.model != null"
-                    class="hight"
+                    class="hightColor"
                   >{{ this.model.teamName }}</span>
                   <span
                     v-else
@@ -107,9 +107,9 @@
               </a-col>
             </a-row>
             <a-row :gutter="24">
-              <a-col :span="24">
+              <a-col :span="17">
                 <a-form-item
-                  label="闂鍙婂鐞嗘帾鏂芥弿杩�"
+                  label="闂/澶勭悊鎺柦"
                   :labelCol="{span:3}"
                   :wrapperCol="{span:18}"
                   class="hightColor"
@@ -119,6 +119,21 @@
                     :disabled="this.model.status!='4'"
                     :placeholder="'璇疯緭鍏ラ棶棰樺強澶勭悊鎺柦鎻忚堪'"
                     v-model="model.description"
+                  />
+                </a-form-item>
+              </a-col>
+              <a-col :span="7">
+                <a-form-item
+                  label="鎶ュ伐浜�"
+                  :labelCol="{span:4}"
+                  :wrapperCol="{span:17}"
+                  class="hightColor"
+                >
+                  <a-input
+                    :disabled="this.model.status!='4'"
+                    allow-clear
+                    placeholder="璇疯緭鍏ユ姤宸ヤ汉"
+                    v-model="model.maintenanceUserId"
                   />
                 </a-form-item>
               </a-col>
@@ -417,7 +432,7 @@
 
         },
         {
-          title: '閮ㄤ綅',
+          title: '淇濆吇閮ㄤ綅',
           align: 'center',
           dataIndex: 'location',
         },
@@ -430,12 +445,12 @@
         // },
         // class: "notshow"
         {
-          title: '淇濆吇椤圭洰',
+          title: '淇濆吇鍐呭',
           align: 'center',
           dataIndex: 'maintenanceProjectNum',
         },
         {
-          title: '淇濆吇鏍囧噯',
+          title: '楠屾敹鏍囧噯',
           align: 'center',
           dataIndex: 'standard',
         },
@@ -594,13 +609,26 @@
     handleReport() {
       const that = this;
       that.confirmLoading = true;
+      for (let i = 0; i < that.dataSource.length; i++) {
+        let o = this.dataSource[i]
+        if (o.maintenanceOrderDetailUda1 == null || o.maintenanceOrderDetailUda1 == '') {
+          that.$message.warning("璇峰~鍐欑" + (i + 1) + "淇濆吇浜猴紒");
+          that.confirmLoading = false;
+          return
+        }
+      }
+      if (that.model.maintenanceUserId == null || that.model.maintenanceUserId == "") {
+        that.$message.warning("璇峰~鍐欐姤宸ヤ汉锛�");
+        that.confirmLoading = false;
+        return
+      }
       this.$confirm({
         title: '淇濆吇宸ュ崟鎶ュ伐',
         content: '鎻愮ず锛氭姤宸ュ悗淇濆吇瀹屽伐锛岃璋ㄦ厧鎿嶄綔锛�',
         okText: '纭',
         cancelText: '鍙栨秷',
         onOk() {
-          requestPut(that.url.report, { id: that.model.id, status: '5', description: that.model.description }).then((res) => {
+          requestPut(that.url.report, { id: that.model.id, status: '5', description: that.model.description, dailyMaintenanceOrderDetails: that.dataSource, maintenanceUserId: that.model.maintenanceUserId }).then((res) => {
             if (res.success) {
               that.model.status = '5'
               that.$message.success(res.message)
diff --git a/src/views/eam/modules/daily3MaintenanceOrder/MaintenanceOrder3Modal.vue b/src/views/eam/modules/daily3MaintenanceOrder/MaintenanceOrder3Modal.vue
index 9d7f6c4..2b4b448 100644
--- a/src/views/eam/modules/daily3MaintenanceOrder/MaintenanceOrder3Modal.vue
+++ b/src/views/eam/modules/daily3MaintenanceOrder/MaintenanceOrder3Modal.vue
@@ -425,17 +425,17 @@
           width: 50,
         },
         {
-          title: '閮ㄤ綅',
+          title: '淇濆吇閮ㄤ綅',
           align: 'center',
           dataIndex: 'location'
         },
         {
-          title: '淇濆吇椤圭洰',
+          title: '淇濆吇鍐呭',
           align: 'center',
           dataIndex: 'maintenanceProjectName'
         },
         {
-          title: '淇濆吇鏍囧噯',
+          title: '楠屾敹鏍囧噯',
           align: 'center',
           dataIndex: 'standard'
         },
diff --git a/src/views/eam/modules/dailyInspectionOrder/DailyInspectionOrderExeDrawer.vue b/src/views/eam/modules/dailyInspectionOrder/DailyInspectionOrderExeDrawer.vue
index db7ef0f..ede2781 100644
--- a/src/views/eam/modules/dailyInspectionOrder/DailyInspectionOrderExeDrawer.vue
+++ b/src/views/eam/modules/dailyInspectionOrder/DailyInspectionOrderExeDrawer.vue
@@ -19,6 +19,14 @@
                 type="primary"
                 v-has="'dailyInspectionOrder:SW'"
               >寮�宸�</a-button>
+
+              <a-button
+                :style="{marginRight: '8px'}"
+                @click="handleNormalReport"
+                :disabled="buttonDistable"
+                type="primary"
+                v-has="'dailyInspectionOrder:normalReport'"
+              >缁撴灉鍏ㄩ儴姝e父</a-button>
               <a-button
                 :style="{marginRight: '8px'}"
                 @click="handleReport"
@@ -26,13 +34,6 @@
                 type="primary"
                 v-has="'dailyInspectionOrder:report'"
               >鎶ュ伐</a-button>
-              <a-button
-                :style="{marginRight: '8px'}"
-                @click="handleNormalReport"
-                :disabled="buttonDistable"
-                type="primary"
-                v-has="'dailyInspectionOrder:normalReport'"
-              >缁撴灉姝e父骞舵姤宸�</a-button>
               <a-button
                 :style="{marginRight: '8px'}"
                 @click="handleReset"
@@ -156,6 +157,16 @@
                         alt=""
                         style="max-width:80px;font-size: 12px;font-style: italic;"
                       />
+                      <!-- <j-dict-select-tag
+                        v-if="col.dataIndex == 'inspectionProjectResult' "
+                        allow-clear
+                        @input="handleChange()"
+                        :disabled="record.disabled"
+                        :placeholder="'璇烽�夋嫨鐐规缁撴灉'"
+                        :triggerChange="true"
+                        style="width: 100%"
+                        dictCode="inspection_project_result"
+                      /> -->
                       <a-select
                         v-if="col.dataIndex == 'inspectionProjectResult' "
                         :value="text"
@@ -163,7 +174,6 @@
                         style="width: 100%"
                         :disabled="record.disabled"
                       >
-                        <!-- :options="record.inspectionCycles" -->
                         <a-select-option value="1">姝e父</a-select-option>
                         <a-select-option value="2">寮傚父</a-select-option>
                         <a-select-option value="3">鏁呴殰鍋滄満</a-select-option>
@@ -507,7 +517,7 @@
       this.loadData1(1)
     },
     loadData() {
-      this.loadData1(1)
+      // this.loadData1(1)
     },
     getBackground() {
       return "background-color:rgba(127, 127, 127,0.08)";
@@ -630,8 +640,20 @@
       })
     },
 
-    //鎶ュ伐
+    //鎵�鏈夌粨鏋滄甯�
     handleNormalReport() {
+      const that = this;
+      for (let i = 0; i < that.dataSource.length; i++) {
+        let o = this.dataSource[i]
+        o.inspectionProjectResult = "1"
+        o.abnormalDesc = ""
+        o.treatmentMeasure = null
+      }
+    },
+
+
+    //鎶ュ伐
+    handleNormalReport1() {
       const that = this;
       that.confirmLoading = true;
       let formData = Object.assign(this.model);
@@ -757,11 +779,11 @@
           //   }
           // } else {
           target[column.dataIndex] = value;
-          // if (value == "1") {
-          //   target['judgmentResult'] = "pass";
-          // } else {
-          //   target['judgmentResult'] = "fail";
-          // }
+          if (value == 1) {
+            target['abnormalDesc'] = null;
+          }
+          target['treatmentMeasure'] = null;
+
           // if (value == null || value == "") {
           //   target['judgmentResult'] = "";
           // }
diff --git a/src/views/eam/modules/dailyMaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue b/src/views/eam/modules/dailyMaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue
index 60a0ef4..5e9f9f4 100644
--- a/src/views/eam/modules/dailyMaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue
+++ b/src/views/eam/modules/dailyMaintenanceOrder/DailyMaintenanceOrderExeDrawer.vue
@@ -107,9 +107,9 @@
               </a-col>
             </a-row>
             <a-row :gutter="24">
-              <a-col :span="24">
+              <a-col :span="17">
                 <a-form-item
-                  label="闂鍙婂鐞嗘帾鏂芥弿杩�"
+                  label="闂/澶勭悊鎺柦"
                   :labelCol="{span:3}"
                   :wrapperCol="{span:18}"
                   class="hightColor"
@@ -119,6 +119,21 @@
                     :disabled="this.model.status!='4'"
                     :placeholder="'璇疯緭鍏ラ棶棰樺強澶勭悊鎺柦鎻忚堪'"
                     v-model="model.description"
+                  />
+                </a-form-item>
+              </a-col>
+              <a-col :span="7">
+                <a-form-item
+                  label="鎶ュ伐浜�"
+                  :labelCol="{span:4}"
+                  :wrapperCol="{span:17}"
+                  class="hightColor"
+                >
+                  <a-input
+                    :disabled="this.model.status!='4'"
+                    allow-clear
+                    placeholder="璇疯緭鍏ユ姤宸ヤ汉"
+                    v-model="model.maintenanceUserId"
                   />
                 </a-form-item>
               </a-col>
@@ -417,11 +432,11 @@
           }
 
         },
-        {
-          title: '閮ㄤ綅',
-          align: 'center',
-          dataIndex: 'location',
-        },
+        // {
+        //   title: '閮ㄤ綅',
+        //   align: 'center',
+        //   dataIndex: 'location',
+        // },
         // class: "notshow"
         // {
         //   title: '绀烘剰鍥�',
@@ -431,15 +446,15 @@
         // },
         // class: "notshow"
         {
-          title: '淇濆吇椤圭洰',
+          title: '淇濆吇鍐呭',
           align: 'center',
           dataIndex: 'maintenanceProjectNum',
         },
-        {
-          title: '淇濆吇鏍囧噯',
-          align: 'center',
-          dataIndex: 'standard',
-        },
+        // {
+        //   title: '淇濆吇鏍囧噯',
+        //   align: 'center',
+        //   dataIndex: 'standard',
+        // },
         // {
         //   title: '鏂规硶',
         //   align: 'center',
@@ -599,13 +614,31 @@
     handleReport() {
       const that = this;
       that.confirmLoading = true;
+      for (let i = 0; i < that.dataSource.length; i++) {
+        let o = this.dataSource[i]
+        if (o.maintenanceOrderDetailUda2 == null || o.maintenanceOrderDetailUda2 == '') {
+          that.$message.warning("璇峰~鍐欑" + (i + 1) + "鎵ц鎯呭喌锛�");
+          that.confirmLoading = false;
+          return
+        }
+        if (o.maintenanceOrderDetailUda1 == null || o.maintenanceOrderDetailUda1 == '') {
+          that.$message.warning("璇峰~鍐欑" + (i + 1) + "淇濆吇浜猴紒");
+          that.confirmLoading = false;
+          return
+        }
+      }
+      if (that.model.maintenanceUserId == null || that.model.maintenanceUserId == "") {
+        that.$message.warning("璇峰~鍐欐姤宸ヤ汉锛�");
+        that.confirmLoading = false;
+        return
+      }
       this.$confirm({
         title: '淇濆吇宸ュ崟鎶ュ伐',
         content: '鎻愮ず锛氭姤宸ュ悗淇濆吇瀹屽伐锛岃璋ㄦ厧鎿嶄綔锛�',
         okText: '纭',
         cancelText: '鍙栨秷',
         onOk() {
-          requestPut(that.url.report, { id: that.model.id, status: '5', description: that.model.description }).then((res) => {
+          requestPut(that.url.report, { id: that.model.id, status: '5', description: that.model.description, dailyMaintenanceOrderDetails: that.dataSource, maintenanceUserId: that.model.maintenanceUserId }).then((res) => {
             if (res.success) {
               that.model.status = '5'
               that.$message.success(res.message)
@@ -657,6 +690,19 @@
     handleOk() {
       const that = this
       this.loading = true;
+      for (let i = 0; i < that.dataSource.length; i++) {
+        let o = this.dataSource[i]
+        if (o.maintenanceOrderDetailUda2 == null || o.maintenanceOrderDetailUda2 == '') {
+          that.$message.warning("璇峰~鍐欑" + (i + 1) + "鎵ц鎯呭喌锛�");
+          that.loading = false;
+          return
+        }
+        if (o.maintenanceOrderDetailUda1 == null || o.maintenanceOrderDetailUda1 == '') {
+          that.$message.warning("璇峰~鍐欑" + (i + 1) + "淇濆吇浜猴紒");
+          that.loading = false;
+          return
+        }
+      }
       this.form.validateFields((err, values) => {
         if (!err) {
           that.confirmLoading = true
diff --git a/src/views/eam/modules/dailyMaintenanceOrder/FinishDevolutionModal.vue b/src/views/eam/modules/dailyMaintenanceOrder/FinishDevolutionModal.vue
index ecea2ac..daf2aa3 100644
--- a/src/views/eam/modules/dailyMaintenanceOrder/FinishDevolutionModal.vue
+++ b/src/views/eam/modules/dailyMaintenanceOrder/FinishDevolutionModal.vue
@@ -226,21 +226,21 @@
           dataIndex: 'maintenanceRole'
         },
 
-        {
-          title: '閮ㄤ綅',
-          align: 'center',
-          dataIndex: 'location'
-        },
+        // {
+        //   title: '閮ㄤ綅',
+        //   align: 'center',
+        //   dataIndex: 'location'
+        // },
         {
           title: '淇濆吇椤圭洰',
           align: 'center',
           dataIndex: 'maintenanceProjectName'
         },
-        {
-          title: '淇濆吇鏍囧噯',
-          align: 'center',
-          dataIndex: 'standard'
-        },
+        // {
+        //   title: '淇濆吇鏍囧噯',
+        //   align: 'center',
+        //   dataIndex: 'standard'
+        // },
         {
           title: '鎵ц鎯呭喌',
           align: 'center',
diff --git a/src/views/eam/modules/dailyMaintenanceOrder/MaintenanceOrderModal.vue b/src/views/eam/modules/dailyMaintenanceOrder/MaintenanceOrderModal.vue
index a5c51b5..f7d9086 100644
--- a/src/views/eam/modules/dailyMaintenanceOrder/MaintenanceOrderModal.vue
+++ b/src/views/eam/modules/dailyMaintenanceOrder/MaintenanceOrderModal.vue
@@ -424,21 +424,26 @@
           },
           width: 50,
         },
+        // {
+        //   title: '閮ㄤ綅',
+        //   align: 'center',
+        //   dataIndex: 'location'
+        // },
         {
-          title: '閮ㄤ綅',
+          title: '淇濆吇瑙掕壊',
           align: 'center',
-          dataIndex: 'location'
+          dataIndex: 'maintenanceRole'
         },
         {
-          title: '淇濆吇椤圭洰',
+          title: '淇濆吇鍐呭',
           align: 'center',
           dataIndex: 'maintenanceProjectName'
         },
-        {
-          title: '淇濆吇鏍囧噯',
-          align: 'center',
-          dataIndex: 'standard'
-        },
+        // {
+        //   title: '淇濆吇鏍囧噯',
+        //   align: 'center',
+        //   dataIndex: 'standard'
+        // },
         // {
         //   title: '鏂规硶',
         //   align: 'center',
diff --git a/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardDetail.vue b/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardDetail.vue
index 7059019..22a7fcf 100644
--- a/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardDetail.vue
+++ b/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardDetail.vue
@@ -137,22 +137,27 @@
         //   scopedSlots: { customRender: 'photo' },
         // },
         {
-          title: '淇濆吇椤圭洰',
+          title: '缁翠慨淇濆吇瑙掕壊',
+          align: "center",
+          dataIndex: 'maintenanceRoleName',
+        },
+        {
+          title: '淇濆吇鍐呭',
           align: "center",
           dataIndex: 'name',
 
         },
-        {
-          title: '淇濆吇鏍囧噯',
-          align: "center",
-          dataIndex: 'standard',
+        // {
+        //   title: '淇濆吇鏍囧噯',
+        //   align: "center",
+        //   dataIndex: 'standard',
 
-        },
-        {
-          title: '閮ㄤ綅',
-          align: "center",
-          dataIndex: 'location',
-        },
+        // },
+        // {
+        //   title: '閮ㄤ綅',
+        //   align: "center",
+        //   dataIndex: 'location',
+        // },
         // {
         //   title: '鏂规硶',
         //   align: "center",
@@ -184,11 +189,7 @@
         //   align: "center",
         //   dataIndex: 'maintenanceSpecialtyName',
         // },
-        {
-          title: '缁翠慨淇濆吇瑙掕壊',
-          align: "center",
-          dataIndex: 'maintenanceRoleName',
-        },
+
 
       ],
       url: {
diff --git a/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardModal.vue b/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardModal.vue
index d881f08..4fad2ac 100644
--- a/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardModal.vue
+++ b/src/views/eam/modules/dailyMaintenanceStandard/DailyMaintenanceStandardModal.vue
@@ -158,7 +158,7 @@
           </a-col>
         </a-row>
         <a-row :gutter="24">
-          <a-col :span="12">
+          <!-- <a-col :span="12">
             <a-form-item
               label="淇濆吇绫诲瀷"
               :labelCol="labelCol"
@@ -173,7 +173,7 @@
                 v-decorator="['maintenanceType', validatorRules.maintenanceType]"
               />
             </a-form-item>
-          </a-col>
+          </a-col> -->
           <!-- <a-col :span="12">
             <a-form-item
               label="娲惧伐鏂瑰紡"
@@ -204,8 +204,6 @@
               />
             </a-form-item>
           </a-col>
-        </a-row>
-        <a-row :gutter="24">
           <a-col
             v-if="this.isRevise == true"
             :span="12"
@@ -305,7 +303,7 @@
             style="width: 100%"
             :disabled="false"
           /> -->
-          <a-textarea
+          <!--<a-textarea
             :value="text"
             v-if="col.dataIndex == 'maintenanceRequire'"
             :maxLength="500"
@@ -313,7 +311,7 @@
             placeholder="璇疯緭鍏ュ畨鍏ㄨ姹�"
             @change="(e)=>handleChange(e, record.key, col, index)"
           />
-          <a-textarea
+           <a-textarea
             :value="text"
             v-if="col.dataIndex == 'location'"
             :maxLength="500"
@@ -321,7 +319,7 @@
             placeholder="璇疯緭鍏ヤ繚鍏讳綅缃�"
             @change="(e)=>handleChange(e, record.key, col, index)"
             :disabled="true"
-          />
+          /> 
           <j-image-upload
             :value="text"
             v-if="col.dataIndex == 'photo'"
@@ -330,7 +328,7 @@
             placeholder="璇蜂笂浼犲浘鐗�"
             @change="(e)=>handleChange(e, record.key, col, index)"
           >
-          </j-image-upload>
+          </j-image-upload>-->
           <j-dict-select-tag
             v-if="col.dataIndex == 'maintenanceRole'"
             :value="text"
@@ -338,8 +336,8 @@
             :triggerChange="true"
             dictCode="maintenance_role"
             placeholder="璇烽�夋嫨淇濆吇瑙掕壊"
-            style="width: 100%"
             @change="(e)=>handleChange(e, record.key, col, index)"
+            style="width: 100%"
           />
         </div>
       </template>
@@ -439,17 +437,30 @@
         //   align: 'center',
         //   dataIndex: 'id'
         // },
+        // {
+        //   title: '淇濆吇閮ㄤ綅',
+        //   align: 'center',
+        //   dataIndex: 'location',
+        //   // scopedSlots: { customRender: 'location' },
+        //   // width: 150,
+        // },
         {
-          title: '淇濆吇椤圭洰',
+          title: '淇濆吇瑙掕壊',
+          align: 'center',
+          dataIndex: 'maintenanceRole',
+          scopedSlots: { customRender: 'maintenanceRole' },
+        },
+        {
+          title: '淇濆吇鍐呭',
           align: 'center',
           dataIndex: 'name'
         },
 
-        {
-          title: '淇濆吇鏍囧噯',
-          align: 'center',
-          dataIndex: 'standard'
-        },
+        // {
+        //   title: '楠屾敹鏍囧噯',
+        //   align: 'center',
+        //   dataIndex: 'standard'
+        // },
         // {
         //   title: '鏂规硶',
         //   align: 'center',
@@ -484,13 +495,7 @@
         //   scopedSlots: { customRender: 'photo' },
         //   width: 150,
         // },
-        {
-          title: '淇濆吇閮ㄤ綅',
-          align: 'center',
-          dataIndex: 'location',
-          // scopedSlots: { customRender: 'location' },
-          // width: 150,
-        },
+
         // {
         //   title: '鍛ㄦ湡',
         //   align: 'center',
@@ -498,13 +503,7 @@
         //   scopedSlots: { customRender: 'maintenanceCycleId' },
         //   width: 150,
         // },
-        {
-          title: '淇濆吇瑙掕壊',
-          align: 'center',
-          dataIndex: 'maintenanceRole',
-          scopedSlots: { customRender: 'maintenanceRole' },
-          width: 150,
-        },
+
         {
           title: '鎿嶄綔',
           align: 'center',
@@ -757,6 +756,7 @@
           }
           formData.maintenanceStandardDetaillist = that.dataSource;
           formData.type = 'daily';
+          formData.maintenanceType = '2';
           let obj;
           if (!this.model.id) {
             formData.versionStatus = '1'
diff --git a/src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardDetail.vue b/src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardDetail.vue
new file mode 100644
index 0000000..fd8a858
--- /dev/null
+++ b/src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardDetail.vue
@@ -0,0 +1,289 @@
+<template>
+  <a-card
+    :bordered="false"
+    :class="'cust-erp-sub-tab'"
+  >
+    <!-- 鏌ヨ鍖哄煙 -->
+    <div class="table-page-search-wrapper">
+      <a-form
+        layout="inline"
+        @keyup.enter.native="searchQuery"
+      >
+        <a-row :gutter="24">
+        </a-row>
+      </a-form>
+    </div>
+    <div>
+      <a-table
+        ref="table"
+        size="middle"
+        bordered
+        rowKey="id"
+        :scroll="{x:true}"
+        :columns="columns"
+        :dataSource="dataSource"
+        :pagination="ipagination"
+        :loading="loading"
+        @change="handleTableChange"
+      >
+        <!-- <span
+          slot="photo"
+          slot-scope="text,record"
+        >
+          <Tooltip
+            placement="top"
+            title="棰勮鍥剧墖"
+          >
+            <img
+              v-if=" record.upload.path && (record.upload.format.toLowerCase()=='jpg'||record.upload.format.toLowerCase()=='bmp'||record.upload.format.toLowerCase()=='png'||record.upload.format.toLowerCase()=='jpeg'||record.upload.format.toLowerCase()=='gif')"
+              width="30"
+              height="14"
+              border="1"
+              draggable="false"
+              preview="1"
+              :preview-text="''"
+              :src="record.upload.src"
+            />
+          </Tooltip>
+          <a
+            v-if="record.upload.path && record.upload.format.toLowerCase()=='pdf'"
+            href="javascript:;"
+            @click="view(record.upload)"
+          >
+            棰勮
+          </a>
+        </span> -->
+
+        <template
+          slot="photo"
+          slot-scope="text,record"
+        >
+          <span
+            v-if="!text"
+            style="font-size: 12px;font-style: italic;"
+          >鏃犲浘鐗�</span>
+          <img
+            v-else
+            :src="getImgView(text)"
+            :preview="record.id"
+            height="25px"
+            alt=""
+            style="max-width:80px;font-size: 12px;font-style: italic;"
+          />
+        </template>
+      </a-table>
+    </div>
+    <pdf-view ref="pdfview"></pdf-view>
+  </a-card>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import { getAction } from '@/api/manage'
+import Tooltip from 'ant-design-vue/es/tooltip'
+import { preview } from 'vue-photo-preview'
+import { ACCESS_TOKEN } from '@/store/mutation-types'
+import Vue from 'vue'
+import PdfView from '@views/common/PdfView'
+import { getFileAccessHttpUrl } from '@/api/manage';
+
+export default {
+  name: "MaintenanceStandardModal",
+  components: {
+    Tooltip,
+    PdfView,
+    preview,
+  },
+  mixins: [JeecgListMixin],
+  props: {
+    maintenanceStandardId: {
+      type: String,
+      default: '-1',
+      required: false
+    }
+  },
+  watch: {
+    maintenanceStandardId: {
+      immediate: true,
+      handler(val) {
+        if (!this.maintenanceStandardId) {
+          this.clearList()
+        } else {
+          this.queryParam['maintenanceStandardId'] = val;
+          this.queryParam['delFlag'] = 0;
+          this.loadData(1);
+        }
+      }
+    }
+  },
+  data() {
+    return {
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          width: 100,
+          align: "center",
+          customRender: function (t, r, index) {
+            return parseInt(index) + 1;
+          }
+        },
+
+        // {
+        //   title: '绀烘剰鍥�',
+        //   align: "center",
+        //   dataIndex: 'photo',
+        //   scopedSlots: { customRender: 'photo' },
+        // },
+        {
+          title: '淇濆吇椤圭洰',
+          align: "center",
+          dataIndex: 'name',
+
+        },
+        {
+          title: '淇濆吇鏍囧噯',
+          align: "center",
+          dataIndex: 'standard',
+
+        },
+        {
+          title: '閮ㄤ綅',
+          align: "center",
+          dataIndex: 'location',
+        },
+        // {
+        //   title: '鏂规硶',
+        //   align: "center",
+        //   dataIndex: 'maintenanceMethodName',
+
+        // },
+        // {
+        //   title: '宸ュ叿',
+        //   align: "center",
+        //   dataIndex: 'maintenanceTool',
+        // },
+        // {
+        //   title: '瀹夊叏瑕佹眰',
+        //   align: "center",
+        //   dataIndex: 'maintenanceRequire',
+        // },
+        // {
+        //   title: '宸ユ椂瀹氶',
+        //   align: "center",
+        //   dataIndex: 'workingHourQuota',
+        // },
+        {
+          title: '淇濆吇鍛ㄦ湡',
+          align: "center",
+          dataIndex: 'maintenanceCycleName',
+        },
+        // {
+        //   title: '缁翠繚涓撲笟',
+        //   align: "center",
+        //   dataIndex: 'maintenanceSpecialtyName',
+        // },
+        // {
+        //   title: '缁翠慨淇濆吇瑙掕壊',
+        //   align: "center",
+        //   dataIndex: 'maintenanceRoleName',
+        // },
+
+      ],
+      url: {
+        list: "/eam/maintenanceStandardDetail/getMaintenanceStandardList",//鏁版嵁鏉ユ簮mom_eam_daily_inspection_standard_detail
+      },
+    }
+  },
+  created() {
+  },
+  computed: {
+  },
+  methods: {
+    clearList() {
+      this.dataSource = []
+      this.selectedRowKeys = []
+      this.ipagination.current = 1
+    },
+    loadData(arg) {
+      if (!this.url.list) {
+        this.$message.error("璇疯缃畊rl.list灞炴��!")
+        return
+      }
+      //鍔犺浇鏁版嵁 鑻ヤ紶鍏ュ弬鏁�1鍒欏姞杞界涓�椤电殑鍐呭
+      if (arg === 1) {
+        this.ipagination.current = 1;
+      }
+      var params = this.getQueryParams();//鏌ヨ鏉′欢
+      this.loading = true;
+      getAction(this.url.list, params).then((res) => {
+        if (res.success) {
+          this.dataSource = res.result.records || res.result;
+          // for (let i = 0; i < this.dataSource.length; i++) {
+          //   let r = this.dataSource[i].upload;
+          //   r.src = this.getSrc(this.dataSource[i].upload);
+          // }
+          if (res.result.total) {
+            this.ipagination.total = res.result.total;
+          } else {
+            this.ipagination.total = 0;
+          }
+          //update-end---author:zhangyafei    Date:20201118  for锛氶�傞厤涓嶅垎椤电殑鏁版嵁鍒楄〃------------
+        } else {
+          this.$message.warning(res.message)
+        }
+      }).finally(() => {
+        this.loading = false
+      })
+    },
+
+    getSrc(record) {
+
+      if (!record.path) {
+        return '';
+      }
+      //鏈湴锛歭ocal\Minio锛歮inio\闃块噷浜戯細alioss
+      if (record.uploadType == 'local') {
+
+        let ssoLoginFlag = Vue.ls.get("ssoLoginFlag");
+        let deployMode = Vue.ls.get("deployMode");
+
+        if (ssoLoginFlag && deployMode == "container") {
+          var baseProject = Vue.ls.get("baseProject");
+          console.log("baseProject==>" + baseProject)
+
+          var hostname = window.location.protocol + "//" + window.location.host;
+          var url = hostname + '/' + baseProject + '/sys/common/static';
+          return getFileAccessHttpUrl(record.path + record.encodeName, url, window._CONFIG['hyperTextTransfer'])
+        } else {
+          //鏍规嵁鍙戝竷鐘舵�佷慨鏀筯ttps 鎴� http
+          return getFileAccessHttpUrl(record.path + record.encodeName, this.url.urlDownload, window._CONFIG['hyperTextTransfer'])
+        }
+
+      } else if (record.uploadType == 'alioss') {
+
+        const OSS = require('ali-oss')
+        const client = new OSS({
+          // region浠ユ澀宸炰负渚嬶紙oss-cn-hangzhou锛夛紝鍏朵粬region鎸夊疄闄呮儏鍐靛~鍐欍��
+          region: window._CONFIG['region'],
+          // 闃块噷浜戜富璐﹀彿AccessKey鎷ユ湁鎵�鏈堿PI鐨勮闂潈闄愶紝椋庨櫓寰堥珮銆傚己鐑堝缓璁偍鍒涘缓骞朵娇鐢≧AM璐﹀彿杩涜API璁块棶鎴栨棩甯歌繍缁达紝璇风櫥褰昍AM鎺у埗鍙板垱寤篟AM璐﹀彿銆�
+          accessKeyId: window._CONFIG['accessKeyId'],
+          accessKeySecret: window._CONFIG['accessKeySecret'],
+          bucket: window._CONFIG['bucket'],
+        })
+        // object-key琛ㄧず浠嶰SS涓嬭浇鏂囦欢鏃堕渶瑕佹寚瀹氬寘鍚枃浠跺悗缂�鍦ㄥ唴鐨勫畬鏁磋矾寰勶紝渚嬪abc/efg/123.jpg銆�
+        return client.signatureUrl(record.path)
+      }
+    },
+
+    view(record) {
+      this.$refs.pdfview.showPdf(record.src);
+    },
+
+  }
+}
+</script>
+<style scoped>
+@import '~@assets/less/common.less';
+</style>
diff --git a/src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardModal.vue b/src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardModal.vue
new file mode 100644
index 0000000..7147dcd
--- /dev/null
+++ b/src/views/eam/modules/dailyMaintenanceStandard3/DailyMaintenanceStandardModal.vue
@@ -0,0 +1,950 @@
+<template>
+  <a-modal
+    :title="title"
+    :width="1500"
+    :visible="visible"
+    :maskClosable="false"
+    @ok="handleOk"
+    cancelText="鍏抽棴"
+    @cancel="handleCancel"
+    :confirmLoading="confirmLoading"
+  >
+
+    <a-spin :spinning="confirmLoading">
+      <a-form :form="form">
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item
+              label="鏍囧噯缂栫爜"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allowClear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ユ爣鍑嗙紪鐮�'"
+                v-decorator="[ 'num', validatorRules.num]"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item
+              label="浣跨敤閮ㄩ棬"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <!-- <a-input-search
+                :disabled="disableSubmit"
+                placeholder="璇烽�夋嫨浣跨敤閮ㄩ棬"
+                enter-button
+                @search="onDepartList()"
+                :read-only="true"
+                v-decorator="['useDepartName', validatorRules.useDepartName]"
+              /> 
+              <a-tree-select
+                style="width: 100%"
+                :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
+                :tree-data="treeData"
+                placeholder="璇烽�夋嫨閮ㄩ棬"
+                tree-default-expand-all
+                v-decorator="['departId', validatorRules.useId ]"
+              />-->
+
+              <j-dict-select-tag
+                allow-clear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇烽�夋嫨浣跨敤閮ㄩ棬'"
+                :triggerChange="true"
+                dictCode="sys_depart,depart_name,id,del_flag!='1'"
+                v-decorator="['departId', {}]"
+              />
+            </a-form-item>
+          </a-col>
+          <!-- <a-col :span="12">
+            <a-form-item
+              label="璁惧鍚嶇О"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <j-dict-select-tag
+                allow-clear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇烽�夋嫨鍚嶇О'"
+                :triggerChange="true"
+                dictCode="mom_eam_equipment,name,id,status!='0' and del_flag!='1'"
+                v-decorator="['equipmentId', validatorRules.equipmentId]"
+                @change="(e)=>handle2Change(e)"
+              />
+            </a-form-item>
+          </a-col> -->
+        </a-row>
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item
+              label="璁惧鍚嶇О"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input-search
+                :disabled="disableSubmit"
+                placeholder="璇烽�夋嫨璁惧"
+                enter-button
+                @search="onEquipmentList()"
+                :read-only="true"
+                v-decorator="['equipmentName', validatorRules.equipmentName]"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item
+              label="璐d换鐝粍"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allow-clear
+                :disabled="true"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ヨ矗浠荤彮缁�'"
+                v-decorator="['teamName', {} ]"
+              />
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row
+          hidden
+          :gutter="24"
+        >
+          <a-col :span="12">
+            <a-form-item
+              label="璁惧Id"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allow-clear
+                :disabled="true"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ョ粺涓�缂栫爜/鍚嶇О/鍨嬪彿'"
+                v-decorator="['equipmentId', validatorRules.equipmentId ]"
+              />
+            </a-form-item>
+          </a-col>
+          <!-- <a-col :span="12">
+            <a-form-item
+              label="浣跨敤閮ㄩ棬Id"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allow-clear
+                :disabled="true"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ヤ娇鐢ㄩ儴闂╥d'"
+                v-decorator="['departId', validatorRules.useId ]"
+              />
+            </a-form-item>
+          </a-col> -->
+          <a-col :span="12">
+            <a-form-item
+              label="鐝粍Id"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allow-clear
+                :disabled="true"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ョ彮缁刬d'"
+                v-decorator="['teamId', validatorRules.teamId ]"
+              />
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row :gutter="24">
+          <!-- <a-col :span="12">
+            <a-form-item
+              label="淇濆吇绫诲瀷"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <j-dict-select-tag
+                allow-clear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇烽�夋嫨淇濆吇绫诲瀷'"
+                :triggerChange="true"
+                dictCode="maintenance_type"
+                v-decorator="['maintenanceType', validatorRules.maintenanceType]"
+              />
+            </a-form-item>
+          </a-col> -->
+          <!-- <a-col :span="12">
+            <a-form-item
+              label="娲惧伐鏂瑰紡"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <j-dict-select-tag
+                allow-clear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇烽�夋嫨娲惧伐鏂瑰紡'"
+                :triggerChange="true"
+                dictCode="assign_mode"
+                v-decorator="['assignMode', validatorRules.assignMode]"
+              />
+            </a-form-item>
+          </a-col> -->
+          <a-col :span="12">
+            <a-form-item
+              label="鐗堟湰"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allowClear
+                :disabled="true"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ョ増鏈彿'"
+                v-decorator="[ 'version', validatorRules.version]"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col
+            v-if="this.isRevise == true"
+            :span="12"
+          >
+            <a-form-item
+              label="鍘嗗彶鐗堟湰"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allowClear
+                :disabled="true"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ュ巻鍙茬増鏈彿'"
+                v-decorator="[ 'historyVersion', validatorRules.historyVersion]"
+              />
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <a-row :gutter="24">
+          <a-col :span="24">
+            <a-form-item
+              label="澶囨敞"
+              :labelCol="{span:3}"
+              :wrapperCol="{span:21}"
+            >
+              <a-textarea
+                allowClear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ュ娉�'"
+                v-decorator="[ 'remark', validatorRules.remark]"
+              />
+            </a-form-item>
+          </a-col>
+        </a-row>
+        <!-- <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item
+              label="浣跨敤閮ㄩ棬"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <j-dict-select-tag
+                allow-clear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇蜂娇鐢ㄩ儴闂�'"
+                :triggerChange="true"
+                dictCode="sys_depart,depart_name,id,version = '7' and del_flag!='1'"
+                v-decorator="['departId', validatorRules.departId]"
+                @change="(e)=>handle2Change(e)"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col :span="12">
+            <a-form-item
+              label="璐d换鐝粍"
+              :labelCol="labelCol"
+              :wrapperCol="wrapperCol"
+            >
+              <a-input
+                allowClear
+                :disabled="disableSubmit"
+                :placeholder="disableSubmit?'':'璇疯緭鍏ユ爣鍑嗙紪鐮�'"
+                v-decorator="[ 'teamId', validatorRules.teamId]"
+              />
+            </a-form-item>
+          </a-col>
+        </a-row> -->
+      </a-form>
+    </a-spin>
+    <a-button
+      type="primary"
+      :style="{ marginRight: '8px',marginBottom:'8px' }"
+      :loading="confirmLoading"
+      @click="selectMaintenanceProjects()"
+    >淇濆吇椤圭洰</a-button>
+    <a-table
+      ref="table"
+      bordered
+      size="middle"
+      rowKey='id'
+      :columns="columns"
+      :dataSource="dataSource"
+      :pagination="false"
+    >
+      <template
+        v-for="col in columns"
+        :slot="col.dataIndex"
+        slot-scope='text, record, index'
+      >
+        <div :key="col.dataIndex">
+
+          <!-- <a-select
+            v-if="col.dataIndex == 'maintenanceCycleId'"
+            :value="text"
+            :options="record.maintenanceCycles"
+            @change="(e) => handleChange(e, record.key, col, index)"
+            style="width: 100%"
+            :disabled="false"
+          /> -->
+          <a-textarea
+            :value="text"
+            v-if="col.dataIndex == 'maintenanceRequire'"
+            :maxLength="500"
+            auto-size
+            placeholder="璇疯緭鍏ュ畨鍏ㄨ姹�"
+            @change="(e)=>handleChange(e, record.key, col, index)"
+          />
+          <a-textarea
+            :value="text"
+            v-if="col.dataIndex == 'location'"
+            :maxLength="500"
+            auto-size
+            placeholder="璇疯緭鍏ヤ繚鍏讳綅缃�"
+            @change="(e)=>handleChange(e, record.key, col, index)"
+            :disabled="true"
+          />
+          <j-image-upload
+            :value="text"
+            v-if="col.dataIndex == 'photo'"
+            :isMultiple="false"
+            auto-size
+            placeholder="璇蜂笂浼犲浘鐗�"
+            @change="(e)=>handleChange(e, record.key, col, index)"
+          >
+          </j-image-upload>
+          <j-dict-select-tag
+            v-if="col.dataIndex == 'maintenanceRole'"
+            :value="text"
+            allow-clear
+            :triggerChange="true"
+            dictCode="maintenance_role"
+            placeholder="璇烽�夋嫨淇濆吇瑙掕壊"
+            style="width: 100%"
+            @change="(e)=>handleChange(e, record.key, col, index)"
+          />
+        </div>
+      </template>
+
+      <span
+        slot="action"
+        slot-scope="text, record, index"
+      >
+        <a-popconfirm
+          title="纭畾鍒犻櫎鍚�?"
+          @confirm="() => handleDelete(text,record, index)"
+        >
+          <a>鍒犻櫎</a>
+        </a-popconfirm>
+      </span>
+    </a-table>
+    <template slot="footer">
+      <a-button
+        :style="{marginRight: '8px'}"
+        @click="handleCancel()"
+      >
+        鍏抽棴
+      </a-button>
+
+      <a-button
+        @click="handleOk()"
+        type="primary"
+        :loading="confirmLoading"
+      >纭畾</a-button>
+    </template>
+
+    <pdf-view ref="pdfview"></pdf-view>
+    <upload-model
+      ref="modalForm"
+      @ok="modalFormOk"
+    ></upload-model>
+
+    <equipment-list
+      ref="EquipmentList"
+      @sendEquipmentRecord='sendEquipmentRecord'
+    ></equipment-list>
+
+    <depart-list
+      ref="DepartList"
+      @sendDepartRecord='sendDepartRecord'
+    ></depart-list>
+
+    <j-select-maintenance-standard-modal ref="maintenanceStandardModalForm"></j-select-maintenance-standard-modal>
+  </a-modal>
+
+</template>
+
+<script>
+import { getAction, postAction, requestPut, deleteAction } from '@/api/manage'
+import pick from 'lodash.pick'
+import JMultiSelectTag from '@/components/dict/JMultiSelectTag'
+import { duplicateCheck } from '@/api/api'
+import Tooltip from 'ant-design-vue/es/tooltip'
+import JSelectMaintenanceStandardModal from './JSelectMaintenanceStandardModal'
+// import UploadModel from './UploadModel'
+
+import { preview } from 'vue-photo-preview'
+import { ACCESS_TOKEN } from '@/store/mutation-types'
+import Vue from 'vue'
+import PdfView from '@views/common/PdfView'
+import { getFileAccessHttpUrl } from '@/api/manage';
+import EquipmentList from '.././dailyInspectionStandard/EquipmentList'
+import DepartList from '.././dailyInspectionStandard/DepartList'
+
+export default {
+  name: "MaintenanceStandardModal",
+  components: {
+    JMultiSelectTag,
+    Tooltip,
+    JSelectMaintenanceStandardModal,
+    // UploadModel,
+    PdfView,
+    preview,
+    EquipmentList,
+    DepartList
+  },
+  data() {
+    return {
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          align: 'center',
+          customRender: function (t, r, index) {
+            return parseInt(index) + 1
+          },
+          width: 50,
+        },
+        // {
+        //   title: 'id',
+        //   align: 'center',
+        //   dataIndex: 'id'
+        // },
+        {
+          title: '淇濆吇閮ㄤ綅',
+          align: 'center',
+          dataIndex: 'location',
+          // scopedSlots: { customRender: 'location' },
+          // width: 150,
+        },
+        {
+          title: '淇濆吇鍐呭',
+          align: 'center',
+          dataIndex: 'name'
+        },
+
+        {
+          title: '楠屾敹鏍囧噯',
+          align: 'center',
+          dataIndex: 'standard'
+        },
+        // {
+        //   title: '鏂规硶',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceMethodName'
+        // },
+        // {
+        //   title: '宸ュ叿',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceTool'
+        // },
+        // {
+        //   title: '缁翠繚涓撲笟',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceSpecialtyName'
+        // },
+        // {
+        //   title: '瀹夊叏瑕佹眰',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceRequire',
+        //   scopedSlots: { customRender: 'maintenanceRequire' },
+        //   width: 150,
+        // },
+        // {
+        //   title: '宸ユ椂瀹氶',
+        //   align: 'center',
+        //   dataIndex: 'workingHourQuota'
+        // },
+        // {
+        //   title: '绀烘剰鍥�',
+        //   align: 'center',
+        //   dataIndex: 'photo',
+        //   scopedSlots: { customRender: 'photo' },
+        //   width: 150,
+        // },
+
+        // {
+        //   title: '鍛ㄦ湡',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceCycleId',
+        //   scopedSlots: { customRender: 'maintenanceCycleId' },
+        //   width: 150,
+        // },
+        // {
+        //   title: '淇濆吇瑙掕壊',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceRole',
+        //   scopedSlots: { customRender: 'maintenanceRole' },
+        //   width: 150,
+        // },
+        {
+          title: '鎿嶄綔',
+          align: 'center',
+          dataIndex: 'action',
+          scopedSlots: {
+            customRender: 'action'
+          },
+        }
+      ],
+      title: "鎿嶄綔",
+      visible: false,
+      visible4Confirm: false,
+      disableSubmit: false,
+      codeDisable: true,
+      isRevise: false,
+      model: {},
+      upload: {},
+      maintenanceCycles: {},
+      treeData: [],
+      labelCol: {
+        xs: { span: 24 },
+        sm: { span: 6 },
+      },
+      wrapperCol: {
+        xs: { span: 24 },
+        sm: { span: 18 },
+      },
+      confirmLoading: false,
+      form: this.$form.createForm(this),
+      validatorRules: {
+        num: {
+          rules: [
+            { required: true, message: '璇疯緭鍏ョ紪鐮�!' },
+          ]
+        },
+        teamName: {
+          rules: [
+            { required: true, message: '璇烽�夋嫨璐d换鐝粍!' },
+          ]
+        },
+        useDepartName: {
+          rules: [
+            { required: true, message: '璇烽�夋嫨浣跨敤閮ㄩ棬!' },
+          ]
+        },
+        equipmentName: {
+          rules: [
+            { required: true, message: '璇烽�夋嫨璁惧!' },
+          ]
+        },
+        maintenanceType: {
+          rules: [
+            { required: true, message: '璇烽�夋嫨淇濆吇绫诲瀷!' },
+          ]
+        },
+        version: {
+          rules: [
+            { required: true, message: '璇疯緭鍏ョ増鏈�!' },
+          ]
+        },
+        historyVersion: {
+          rules: [
+            { required: true, message: '璇疯緭鍏ュ巻鍙茬増鏈�!' },
+          ]
+        },
+      },
+      url: {
+        list: "/eam/maintenanceStandardDetail/getMaintenanceStandardDetailListByIds",
+        add: "/eam/maintenanceStandard/add",
+        edit: "/eam/maintenanceStandard/edit",
+        // addDetail: "/eam/maintenanceStandardDetail/add",
+        getMaintenanceCycle: "/eam/maintenanceStandardDetail/getPeriodicMaintenanceCycle",
+        realDelete: "/eam/maintenanceStandardDetail/realDelete",
+        revise: '/eam/maintenanceStandard/revise',
+        getReviseVersion: "/eam/maintenanceStandard/getReviseVersion",
+        loadOptions: '/sys/sysDepart/loadDepartTreeOptions',
+        getNum: '/eam/sysIdentity/getNumNew'
+      },
+
+      dataSource: [],
+      departId: '',
+    }
+  },
+
+
+  mounted() {
+    this.$bus.$on('selectionRows', (data) => {
+      for (let i = 0; i < data.length; i++) {
+        let id = this.getUuiD(15);
+        this.dataSource.push({
+          id: id,
+          maintenanceProjectId: data[i].id,
+          name: data[i].name,
+          standard: data[i].standard,
+          maintenanceMethodName: data[i].maintenanceMethod_dictText,
+          maintenanceTool: data[i].maintenanceTool,
+          location: data[i].location,
+          maintenanceSpecialtyName: data[i].maintenanceSpecialtyId_dictText,
+          maintenanceRequire: data[i].maintenanceRequire,
+          workingHourQuota: data[i].workingHourQuota,
+          // upload: this.upload,
+          // maintenanceCycles: this.maintenanceCycles,
+        })
+
+        // let formData = {};
+        // this.confirmLoading = true;
+        // formData.maintenanceStandardDetailList = this.dataSource
+        // postAction(this.url.addDetail, formData).then((res) => {
+        //   if (res.success) {
+        //     // this.$message.success(res.message);
+        //     // this.$emit('ok');
+        //   } else {
+        //     // that.$message.warning(res.message);
+        //   }
+        // }).finally(() => {
+        //   this.confirmLoading = false;
+        // })
+
+      }
+    })
+  },
+
+  // created() {
+  //   var upload = {};
+  //   upload.path = null;
+  //   upload.format = 'jpg';
+  //   this.upload = upload;
+  // },
+
+
+  methods: {
+
+    //閫夋嫨淇濆吇椤圭洰
+    selectMaintenanceProjects: function () {
+      let ids = [];
+      for (let i = 0; i < this.dataSource.length; i++) {
+        ids.push(this.dataSource[i].maintenanceProjectId);
+      }
+      this.$refs.maintenanceStandardModalForm.showModals(ids);
+      this.$refs.maintenanceStandardModalForm.title = '閫夋嫨淇濆吇椤圭洰';
+      this.$refs.maintenanceStandardModalForm.disableSubmit = false;
+    },
+
+    add() {
+      this.edit({ maintenanceStandardDetaillist: [] })
+      this.getSeq()
+    },
+
+    edit(record) {
+      let that = this;
+      // this.initOptions();
+      // this.getMaintenanceCycle()
+      this.dataSource = [];
+      this.form.resetFields();
+      this.model = Object.assign({}, record);
+      this.visible = true;
+      if (record.maintenanceStandardDetaillist != undefined) {
+        const temp = [...record.maintenanceStandardDetaillist];
+        that.dataSource = temp;
+      }
+      that.$nextTick(() => {
+        that.form.setFieldsValue(pick(that.model, 'num', 'departId', 'teamId', 'equipmentId', 'equipmentName', 'useDepartName', 'useId', 'maintenanceType', 'teamName', 'version', 'remark'));
+      });
+      if (record.id) {
+        // this.maintenanceCycles = []
+        // this.getMaintenanceCycle(this.model.equipmentId)
+        this.codeDisable = true;
+        that.$nextTick(() => {
+          if (that.isRevise) {
+            requestPut(that.url.getReviseVersion, record).then((res) => {
+              if (res.success) {
+                that.form.setFieldsValue({ version: res.result, historyVersion: record.version })
+              }
+            })
+          }
+        }, 200);
+      } else {
+        this.codeDisable = false;
+        that.$nextTick(() => {
+          that.form.setFieldsValue({ "version": "1.0", })
+        });
+      }
+    },
+
+    initOptions() {
+      getAction(this.url.loadOptions).then(res => {
+        if (res.success) {
+          this.treeData = res.result
+        } else {
+          this.$message.warning(res.message)
+        }
+      })
+    },
+
+    getSeq() {
+      getAction(this.url.getNum, { type: 'DailyMaintenanceStandard', length: 4 }).then(res => {
+        if (res.success) {
+          this.form.setFieldsValue({ "num": res.result })
+        }
+      })
+    },
+
+    onEquipmentList() {
+      let data = this.form.getFieldsValue(['departId']);
+      // if (data.departId == null || data.departId == "") {
+      //   this.$message.warning("璇峰厛閫夋嫨浣跨敤閮ㄩ棬锛�");
+      //   return
+      // }
+      this.$refs.EquipmentList.list(data.departId);
+      this.$refs.EquipmentList.title = "閫夋嫨璁惧淇℃伅";
+    },
+    sendEquipmentRecord(data) {
+      this.dataSource = [];
+      let record = data.record;
+      // this.getMaintenanceCycle(record.id)
+      this.form.setFieldsValue({ equipmentId: record.id, equipmentName: record.num + "/" + record.name + "/" + record.model, teamId: record.teamId, teamName: record.teamId_dictText });
+
+    },
+
+    onDepartList() {
+      this.$refs.DepartList.list();
+      this.$refs.DepartList.title = "閫夋嫨浣跨敤閮ㄩ棬";
+    },
+    sendDepartRecord(data) {
+      this.dataSource = [];
+      let record = data.record;
+      this.form.setFieldsValue({ useId: record.id, useDepartName: record.departName, departId: record.id });
+    },
+
+    close() {
+      this.$emit('close');
+      this.visible = false;
+    },
+
+    handleCancel() {
+      this.realDelete()
+      this.close();
+    },
+
+    handleOk() {
+      const that = this;
+      this.form.validateFields((err, values) => {
+        if (!err) {
+          that.confirmLoading = true;
+          let formData = Object.assign(this.model, values);
+          if (that.dataSource.length === 0) {
+            that.$message.warning("璇烽�夋嫨淇濆吇椤圭洰锛�");
+            that.confirmLoading = false;
+            return
+          }
+          formData.maintenanceStandardDetaillist = that.dataSource;
+          formData.type = 'daily';
+          formData.maintenanceType = '3';
+          let obj;
+          if (!this.model.id) {
+            formData.versionStatus = '1'
+            formData.approvalStatus = '1'
+            obj = postAction(this.url.add, formData);
+          } else {
+            if (this.isRevise) {
+              formData.versionStatus = '1'
+              formData.approvalStatus = '1'
+              obj = postAction(this.url.revise, formData);
+            } else {
+              obj = requestPut(this.url.edit, formData, { id: this.model.id });
+            }
+          }
+          obj.then((res) => {
+            if (res.success) {
+              that.$message.success(res.message);
+              that.$emit('ok');
+            } else {
+              that.$message.warning(res.message);
+            }
+          }).finally(() => {
+            that.confirmLoading = false;
+            that.close();
+          })
+        }
+      })
+    },
+
+    handleDelete(text, record, index) {
+      this.dataSource.splice(index, 1);
+    },
+
+    realDelete() {
+      var that = this
+      deleteAction(that.url.realDelete).then(res => {
+        if (res.success) {
+          //閲嶆柊璁$畻鍒嗛〉闂
+          // that.reCalculatePage(1)
+          // that.$message.success(res.message)
+          // that.loadData()
+        } else {
+          // that.$message.warning(res.message)
+        }
+      })
+    },
+
+    getMaintenanceCycle(equipmentId) {
+      getAction(this.url.getMaintenanceCycle, { equipmentId: equipmentId }).then((res) => {
+        if (res.success) {
+          this.maintenanceCycles = res.result
+        }
+      })
+    },
+
+    handle2Change(val) {
+      this.dataSource = [];
+    },
+
+    handleChange(value, key, column, index) {
+      let that = this;
+      const temp = [...that.dataSource];
+      const target = temp.filter(item => key === item.key)[index];
+      if (target) {
+        if (column.dataIndex == 'maintenanceCycleId') {
+          target[column.dataIndex] = value;
+        }
+        if (column.dataIndex == 'maintenanceRequire') {
+          target[column.dataIndex] = value.target.value;
+        }
+        if ('photo' == column.dataIndex) {
+          target['photo'] = value;
+        }
+        if (column.dataIndex == 'location') {
+          target[column.dataIndex] = value.target.value;
+        }
+        if (column.dataIndex == 'maintenanceRole') {
+          target[column.dataIndex] = value;
+        }
+        //鏄剧ず甯﹁繃鏉ョ殑鏁版嵁
+        that.dataSource = temp;
+      }
+    },
+
+    handleUpload: function (record) {
+      this.$refs.modalForm.edit(record);
+      this.$refs.modalForm.title = "鏂囦欢涓婁紶";
+      this.$refs.modalForm.disableSubmit = false;
+    },
+
+    modalFormOk() {
+      let ids = [];
+      for (let i = 0; i < this.dataSource.length; i++) {
+        ids.push(this.dataSource[i].id);
+      }
+      postAction(this.url.list, { ids: ids }).then(res => {
+        if (res.success) {
+
+          this.dataSource = res.result.records || res.result
+          for (let i = 0; i < this.dataSource.length; i++) {
+            let r = this.dataSource[i].upload;
+            r.src = this.getSrc(this.dataSource[i].upload);
+          }
+
+        } else {
+          this.$message.warning(res.message)
+        }
+      })
+    },
+
+    getSrc(record) {
+
+      if (!record.path) {
+        return '';
+      }
+      //鏈湴锛歭ocal\Minio锛歮inio\闃块噷浜戯細alioss
+      if (record.uploadType == 'local') {
+
+        let ssoLoginFlag = Vue.ls.get("ssoLoginFlag");
+        let deployMode = Vue.ls.get("deployMode");
+
+        if (ssoLoginFlag && deployMode == "container") {
+          var baseProject = Vue.ls.get("baseProject");
+          console.log("baseProject==>" + baseProject)
+
+          var hostname = window.location.protocol + "//" + window.location.host;
+          var url = hostname + '/' + baseProject + '/sys/common/static';
+          return getFileAccessHttpUrl(record.path + record.encodeName, url, window._CONFIG['hyperTextTransfer'])
+        } else {
+          //鏍规嵁鍙戝竷鐘舵�佷慨鏀筯ttps 鎴� http
+          return getFileAccessHttpUrl(record.path + record.encodeName, this.url.urlDownload, window._CONFIG['hyperTextTransfer'])
+        }
+
+      } else if (record.uploadType == 'alioss') {
+
+        const OSS = require('ali-oss')
+        const client = new OSS({
+          // region浠ユ澀宸炰负渚嬶紙oss-cn-hangzhou锛夛紝鍏朵粬region鎸夊疄闄呮儏鍐靛~鍐欍��
+          region: window._CONFIG['region'],
+          // 闃块噷浜戜富璐﹀彿AccessKey鎷ユ湁鎵�鏈堿PI鐨勮闂潈闄愶紝椋庨櫓寰堥珮銆傚己鐑堝缓璁偍鍒涘缓骞朵娇鐢≧AM璐﹀彿杩涜API璁块棶鎴栨棩甯歌繍缁达紝璇风櫥褰昍AM鎺у埗鍙板垱寤篟AM璐﹀彿銆�
+          accessKeyId: window._CONFIG['accessKeyId'],
+          accessKeySecret: window._CONFIG['accessKeySecret'],
+          bucket: window._CONFIG['bucket'],
+        })
+        // object-key琛ㄧず浠嶰SS涓嬭浇鏂囦欢鏃堕渶瑕佹寚瀹氬寘鍚枃浠跺悗缂�鍦ㄥ唴鐨勫畬鏁磋矾寰勶紝渚嬪abc/efg/123.jpg銆�
+        return client.signatureUrl(record.path)
+      }
+    },
+
+    view(record) {
+      this.$refs.pdfview.showPdf(record.src);
+    },
+
+    getUuiD(randomLength) {
+      return Number(
+        Math.random()
+          .toString()
+          .substr(2, randomLength) + Date.now()
+      ).toString(36)
+    },
+
+  },
+}
+</script>
+
+<style lang="less" scoped>
+/deep/ .frozenRowClass {
+  color: #c9c9c9;
+}
+.fontweight {
+  font-weight: bold;
+}
+.ant-btn {
+  padding: 0 10px;
+  margin-left: 3px;
+}
+
+.ant-form-item-control {
+  line-height: 0px;
+}
+
+/** 涓昏〃鍗曡闂磋窛 */
+.ant-form .ant-form-item {
+  margin-bottom: 10px;
+}
+
+/** Tab椤甸潰琛岄棿璺� */
+.ant-tabs-content .ant-form-item {
+  margin-bottom: 0px;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/eam/modules/dailyMaintenanceStandard3/JSelectMaintenanceStandardModal.vue b/src/views/eam/modules/dailyMaintenanceStandard3/JSelectMaintenanceStandardModal.vue
new file mode 100644
index 0000000..0852dbe
--- /dev/null
+++ b/src/views/eam/modules/dailyMaintenanceStandard3/JSelectMaintenanceStandardModal.vue
@@ -0,0 +1,282 @@
+<template>
+  <!--鏀寔鍏ㄥ睆缂╂斁-->
+  <a-modal
+    :visible='visible'
+    :title='title'
+    switchFullscreen
+    @ok='handleSubmit'
+    @cancel='close'
+    style='top:50px'
+    cancelText='鍏抽棴'
+    :width='1500'
+  >
+    <a-card :bordered='false'>
+      <div class='table-page-search-wrapper'>
+        <a-form
+          layout='inline'
+          @keyup.enter.native='searchQuery'
+        >
+          <a-row :gutter='24'>
+            <a-col
+              :md='8'
+              :sm='6'
+            >
+              <a-form-item label='淇濆吇椤圭洰鍚嶇О'>
+                <j-input
+                  placeholder='璇疯緭鍏ヤ繚鍏婚」鐩悕绉�'
+                  v-model='queryParam.name'
+                />
+              </a-form-item>
+            </a-col>
+            <a-col :md='3'>
+              <span
+                style='float: left;overflow: hidden;'
+                class='table-page-search-submitButtons'
+              >
+                <a-button
+                  type='primary'
+                  @click='searchQuery'
+                  icon='search'
+                >鏌ヨ</a-button>
+                <a-button
+                  @click='searchReset'
+                  icon='reload'
+                  style='margin-left: 10px'
+                >閲嶇疆</a-button>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+      <a-table
+        ref='table'
+        :scroll='scrollTrigger'
+        size='middle'
+        rowKey='id'
+        bordered
+        :columns='columns'
+        :dataSource='dataSource'
+        :pagination='ipagination'
+        :rowSelection='rowSelection'
+        :loading='loading'
+        @change='handleTableChange'
+      >
+
+      </a-table>
+    </a-card>
+  </a-modal>
+</template>
+
+<script>
+import { filterObj } from '@/utils/util'
+import { getAction } from '@/api/manage'
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+
+export default {
+  name: 'JSelectMaintenanceStandardModal',
+  mixins: [JeecgListMixin],
+  components: {},
+  props: {},
+  data() {
+    return {
+      queryParam: {},
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          width: 50,
+          align: 'center',
+          customRender: function (t, r, index) {
+            return parseInt(index) + 1
+          }
+        },
+        {
+          title: '淇濆吇椤圭洰',
+          align: 'center',
+          dataIndex: 'name'
+        },
+
+        {
+          title: '淇濆吇鏍囧噯',
+          align: 'center',
+          dataIndex: 'standard'
+        },
+        // {
+        //   title: '鏂规硶',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceMethod_dictText'
+        // },
+        // {
+        //   title: '宸ュ叿',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceTool'
+        // },
+        // {
+        //   title: '缁翠繚涓撲笟',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceSpecialtyId_dictText'
+        // },
+        {
+          title: '淇濆吇閮ㄤ綅',
+          align: 'center',
+          dataIndex: 'location'
+        },
+        // {
+        //   title: '瀹夊叏瑕佹眰',
+        //   align: 'center',
+        //   dataIndex: 'maintenanceRequire'
+        // },
+        // {
+        //   title: '宸ユ椂瀹氶',
+        //   align: 'center',
+        //   dataIndex: 'workingHourQuota'
+        // },
+      ],
+      selectedRowKeys: [],
+      oldSelectRows: [],
+      scrollTrigger: {},
+      dataSource: [],
+      selectionRows: [],
+      title: '鏍规嵁鏌ヨ缁撴灉閫夋嫨淇濆吇椤圭洰',
+      ipagination: {
+        current: 1,
+        pageSize: 10,
+        pageSizeOptions: ['5', '10', '30', '50', '100'],
+        showTotal: (total, range) => {
+          return range[0] + '-' + range[1] + ' 鍏�' + total + '鏉�'
+        },
+        showQuickJumper: true,
+        showSizeChanger: true,
+        total: 0
+      },
+      isorter: {
+        column: 'num',
+        order: 'desc'
+      },
+      visible: false,
+      loading: false,
+      url: {
+        list: '/eam/maintenanceProject/list'
+      }
+    }
+  },
+  computed: {
+    rowSelection() {
+      return {
+        type: 'checkbox',
+        onChange: (selectedRowKeys, selectedRows) => {
+          this.selectedRowKeys = selectedRowKeys
+          this.onSelectChange(selectedRows)
+        },
+        getCheckboxProps: record => ({
+          props: {
+            disabled: record.distable
+          }
+        }),
+        selectedRowKeys: this.selectedRowKeys
+      }
+    }
+  },
+
+  methods: {
+
+    async loadData(arg) {
+      if (arg === 1) {
+        this.ipagination.current = 1
+      }
+      let that = this
+      this.loading = true
+      let params = this.getQueryParams()//鏌ヨ鏉′欢
+      await getAction(this.url.list, params).then((res) => {
+        if (res.success) {
+          for (let i = 0; i < res.result.records.length; i++) {
+            if (that.oldSelectRows.indexOf(res.result.records[i].id) > -1) {
+              res.result.records[i].distable = true
+            } else {
+              res.result.records[i].distable = false
+            }
+          }
+          this.dataSource = res.result.records
+          this.ipagination.total = res.result.total
+        }
+        if (res.code === 510) {
+          this.$message.warning(res.message)
+        }
+        this.loading = false
+      })
+    },
+
+    showModals(oldSelectRows) {
+      this.selectionRows = []
+      this.oldSelectRows = oldSelectRows
+      this.visible = true
+      this.loadData(1)
+    },
+    getQueryParams() {
+      let param = Object.assign({}, this.queryParam, this.isorter)
+      param.field = this.getQueryField()
+      param.pageNo = this.ipagination.current
+      param.pageSize = this.ipagination.pageSize
+      return filterObj(param)
+    },
+    //鏌ヨ鏉′欢澶勭悊
+    getQueryField() {
+      let str = 'id,'
+      for (let a = 0; a < this.columns.length; a++) {
+        str += ',' + this.columns[a].dataIndex
+      }
+      return str
+    },
+    searchReset(num) {
+      let that = this
+      this.queryParam = []
+      if (num !== 0) {
+        that.loadData(1)
+      }
+      that.selectborrowIds = []
+    },
+    close() {
+      this.searchReset(0)
+      this.selectedRowKeys = []
+      this.visible = false
+    },
+    handleTableChange(pagination, filters, sorter) {
+      //TODO 绛涢��
+
+      if (Object.keys(sorter).length > 0) {
+        this.isorter.column = sorter.field
+        this.isorter.order = 'ascend' === sorter.order ? 'asc' : 'desc'
+      }
+      this.ipagination = pagination
+      this.loadData()
+    },
+    handleSubmit() {
+      this.$bus.$emit('selectionRows', this.selectionRows)
+      // this.searchReset(0)
+      this.close()
+    },
+    onSelectChange(selectionRows) {
+      this.selectionRows = selectionRows
+    },
+    searchQuery() {
+      this.loadData(1)
+    }
+  }
+}
+</script>
+
+<style scoped>
+.ant-table-tbody .ant-table-row td {
+  padding-top: 10px;
+  padding-bottom: 10px;
+}
+
+#components-layout-demo-custom-trigger .trigger {
+  font-size: 18px;
+  line-height: 64px;
+  padding: 0 24px;
+  cursor: pointer;
+  transition: color 0.3s;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/eam/modules/maintenancePlan/EquipmentMaintenancePlanForm.vue b/src/views/eam/modules/maintenancePlan/EquipmentMaintenancePlanForm.vue
index 7938c7f..d31736e 100644
--- a/src/views/eam/modules/maintenancePlan/EquipmentMaintenancePlanForm.vue
+++ b/src/views/eam/modules/maintenancePlan/EquipmentMaintenancePlanForm.vue
@@ -35,6 +35,7 @@
                 :triggerChange="true"
                 dictCode="maintenance_type"
                 v-model="model.type"
+                @change="(e)=>handleClearTable(e)"
               />
             </a-form-model-item>
           </a-col>
@@ -375,6 +376,10 @@
         }
       })
     },
+
+    handleClearTable(e) {
+      this.equipmentMaintenancePlanDetailTable.dataSource = []
+    }
   }
 }
 </script>
diff --git a/src/views/eam/modules/specialtyInspectionOrder/SpecialtyInspectionOrderAssignModal.vue b/src/views/eam/modules/specialtyInspectionOrder/SpecialtyInspectionOrderAssignModal.vue
index 7414b13..76c651c 100644
--- a/src/views/eam/modules/specialtyInspectionOrder/SpecialtyInspectionOrderAssignModal.vue
+++ b/src/views/eam/modules/specialtyInspectionOrder/SpecialtyInspectionOrderAssignModal.vue
@@ -36,7 +36,7 @@
                 :disabled="true"
                 v-decorator="['inspectionTime', validatorRules.inspectionTime ]"
                 placeholder="璇烽�夋嫨鐐规鏃堕棿"
-                style="width: 100%"
+                style="text-align:left;width: 100%"
                 :showTime="true"
                 dateFormat="YYYY-MM-DD HH:mm:ss"
               />

--
Gitblit v1.9.3