zhaowei
2025-04-25 d2547913ef2e150d8bb18bc8f7423515c7ed71d0
1、调整设备台账铭牌二维码大小
2、待机停机页面功能开发
已修改6个文件
183 ■■■■ 文件已修改
src/views/eam/equipment/modules/NameplateModal.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/repair/modules/EamReportRepairList/EamReportRepairModal.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/mdc/base/modules/EquipmentStandbyShutDown/EquipmentStandbyShutdownList.vue 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/mdc/base/modules/EquipmentStandbyShutDown/EquipmentStandbyShutdownModal.vue 130 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/modules/SelectDeviceDrawer.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/equipment/modules/NameplateModal.vue
@@ -18,8 +18,10 @@
        <tbody>
        <tr>
          <td rowspan="3">
            <QrcodeVue :value="httpUrl+item.id"/>
          <td rowspan="3" align="center">
            <div style="height: 80%;width: 50%">
              <QrcodeVue :value="httpUrl+item.id" :size="50"/>
            </div>
          </td>
          <td>设备编号</td>
          <td>{{ item.equipmentCode }}</td>
@@ -42,8 +44,10 @@
        </tr>
        <tr>
          <td rowspan="3">
            <QrcodeVue :value="item.equipmentCode"/>
          <td rowspan="3" align="center">
            <div style="height: 80%;width: 50%">
              <QrcodeVue :value="item.equipmentCode" :size="50"/>
            </div>
          </td>
          <td>出厂编号</td>
          <td>{{ item.factoryNumber }}</td>
src/views/eam/repair/modules/EamReportRepairList/EamReportRepairModal.vue
@@ -234,7 +234,8 @@
        return {
          disabledHours: () => range(moment().hour() + 1, 24),
          disabledMinutes: () => range(moment().minute(), 60)
          disabledMinutes: () => range(moment().minute() + 1, 60),
          disabledSeconds: () => range(moment().second() + 1, 60)
        }
      },
src/views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue
@@ -145,7 +145,7 @@
            </a-tab-pane>
            <a-tab-pane key='3' tab='流程图'>
              <img :src="imageSrc" alt="Fetched Image"/>-->
              <img :src="imageSrc" alt="Fetched Image"/>
            </a-tab-pane>
          </template>
@@ -365,7 +365,6 @@
        const param = { id: record.dataId }
        let res = await getAction(this.url.queryById, param);
        this.tableRowRecord = Object.assign({}, res.result);
        debugger
        if (this.tableRowRecord.imageFiles) {
          let obj = JSON.parse(this.tableRowRecord.imageFiles)
          this.tableRowRecord.fileList = [...obj]
src/views/mdc/base/modules/EquipmentStandbyShutDown/EquipmentStandbyShutdownList.vue
@@ -6,17 +6,26 @@
        <a-form layout="inline" @keyup.enter.native="searchQuery">
          <a-row :gutter="24">
            <a-col :md="4" :sm="4">
              <a-form-item label="日期">
                <a-date-picker value-format="YYYY-MM-DD" style="width: 100%" v-model="queryParam.theDate"/>
              <a-form-item label="停机日期">
                <a-date-picker placeholder="请选择停机日期" value-format="YYYY-MM-DD" style="width: 100%"
                               v-model="queryParam.theDate" :allow-clear="false"/>
              </a-form-item>
            </a-col>
            <a-col :md="2" :sm="2" :xs="2">
            <a-col :md="4" :sm="4" :xs="4">
              <a-space>
              <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
                <a-button @click="searchReset" icon="reload">重置</a-button>
              </a-space>
            </a-col>
          </a-row>
        </a-form>
      </div>
    </div>
    <!-- 操作按钮区域 -->
    <div class="table-operator">
      <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
    </div>
    <div style="overflow: hidden;width: 100%;flex: 1" id="DeviceList">
@@ -30,7 +39,7 @@
        </template>
        <template slot="action" slot-scope="text, record">
          <a @click="handleReport(record)">上报</a>
          <a @click="handleEdit(record)">编辑</a>
          <a-divider type="vertical"/>
@@ -99,22 +108,21 @@
          width: 200
        },
        {
          title: '开始时间',
            title: '停机日期',
          align: 'center',
          dataIndex: 'startDate',
            dataIndex: 'theDate',
          width: 150
        },
        {
          title: '结束时间',
            title: '停机时长(min)',
          align: 'center',
          dataIndex: 'endDate',
            dataIndex: 'downLong',
          width: 150
        },
        {
          title: '备注',
          align: 'center',
          dataIndex: 'remark',
          width: 200
            dataIndex: 'remark'
        },
        {
          title: '操作',
@@ -161,9 +169,9 @@
    }
  },
  methods: {
    handleReport(record) {
      this.$refs.modalForm.edit(record)
      this.$refs.modalForm.title = '上报'
      searchReset() {
        this.queryParam = { theDate: moment().subtract('days', 1).format('YYYY-MM-DD') }
        this.loadData(1)
    },
    handleWindowResize() {
src/views/mdc/base/modules/EquipmentStandbyShutDown/EquipmentStandbyShutdownModal.vue
@@ -1,9 +1,18 @@
<template>
  <a-modal :title="title" :width="500" :visible="visible" :confirmLoading="confirmLoading" @ok="handleOk"
           @cancel="handleCancel" cancelText="关闭">
    <a-spin :spinning="confirmLoading">
      <a-form-model ref="form" :form="form" :model="model" :rules="validatorRules" :labelCol="labelColLong"
    <a-spin :spinning="spinning">
      <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelColLong"
                    :wrapperCol="wrapperColLong">
        <a-row :gutter="24">
          <a-col :span="24">
            <a-form-model-item label="设备组" prop="equipmentIds">
              <a-input-search readOnly v-model="model.equipmentIds" @search="deviceSearch" enter-button
                              placeholder="请选择设备"/>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24">
            <a-form-model-item label="停机类型" prop="downtimeType">
@@ -14,6 +23,7 @@
              </a-radio-group>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
@@ -30,6 +40,38 @@
        <a-row :gutter="24">
          <a-col :span="24">
            <a-form-model-item label="停机日期" prop="theDate">
              <a-date-picker v-model="model.theDate" placeholder="请选择停机日期" value-format="YYYY-MM-DD"
                             style="width: 100%"/>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24">
            <a-form-model-item label="停机时长(min)" prop="downLong">
              <a-input-number v-model="model.downLong" :min="1" :step="1" :precision="0" placeholder="请输入停机时长(min)"
                              style="width: 100%"/>
            </a-form-model-item>
          </a-col>
        </a-row>
        <!--<a-row :gutter="24">-->
        <!--<a-col :span="12">-->
        <!--<a-form-model-item label="开始时间" prop="startTime">-->
        <!--<a-time-picker v-model="model.startTime" value-format="HH:mm:ss" style="width: 100%"/>-->
        <!--</a-form-model-item>-->
        <!--</a-col>-->
        <!--<a-col :span="12">-->
        <!--<a-form-model-item label="结束时间" prop="endTime">-->
        <!--<a-time-picker v-model="model.endTime" value-format="HH:mm:ss" style="width: 100%"/>-->
        <!--</a-form-model-item>-->
        <!--</a-col>-->
        <!--</a-row>-->
        <a-row :gutter="24">
          <a-col :span="24">
            <a-form-model-item label="备注">
              <a-textarea v-model="model.remark" placeholder="请输入备注"/>
            </a-form-model-item>
@@ -37,59 +79,68 @@
        </a-row>
      </a-form-model>
    </a-spin>
    <select-device-drawer ref="selectDeviceDrawer" @selectFinished="selectOK" :title="'选择设备'"/>
  </a-modal>
</template>
<script>
import { getAction, postAction } from '@api/manage'
  import SelectDeviceDrawer from '../../../../system/modules/SelectDeviceDrawer'
export default {
  name: 'EquipmentStandbyShutdownModal',
  components: {},
    components: { SelectDeviceDrawer },
  props: {},
  data() {
    return {
      title: '',
      visible: false,
      model: {},
        equipmentList: [],
      downtimeDescriptionList: [],
      labelColLong: {
        xs: {
          span: 24
        },
        sm: {
          span: 5
        }
          xs: { span: 24 },
          sm: { span: 6 }
      },
      wrapperColLong: {
        xs: {
          span: 24
        },
        sm: {
          span: 17
        }
          xs: { span: 24 },
          sm: { span: 16 }
      },
      confirmLoading: false,
      form: this.$form.createForm(this),
        spinning: false,
        disableSelectDevice: false,
      validatorRules: {
          equipmentIds: [
            { required: true, message: '请选择设备', trigger: 'change' }
          ],
        downtimeType: [
          {
            required: true, message: '请选择停机类型'
          }
            { required: true, message: '请选择停机类型' }
        ],
        reasonId: [
          {
            required: true, message: '请选择停机原因'
          }
            { required: true, message: '请选择停机原因' }
          ],
          theDate: [
            { required: true, message: '请选择停机日期' }
          ],
          downLong: [
            { required: true, message: '请输入停机时长(min)' }
        ]
      },
      url: {
          add: '/mdc/mdcDowntime/add',
        edit: '/mdc/mdcDowntime/edit',
        getDowntimeDescriptionListByDowntimeType: '/mdc/mdcDowntimeReason/downtimeReasonList'
      }
    }
  },
  methods: {
      add() {
        this.edit({
          downtimeType: 0
        })
      },
    edit(record) {
      this.model = Object.assign({}, record)
      this.getDowntimeDescriptionListByApi()
@@ -111,26 +162,37 @@
    getDowntimeDescriptionListByApi() {
      const that = this
      this.downtimeDescriptionList = []
        this.spinning = true
      getAction(this.url.getDowntimeDescriptionListByDowntimeType, { downtimeType: this.model.downtimeType })
        .then(res => {
          if (res.success) that.downtimeDescriptionList = res.result
          })
          .finally(() => {
            that.spinning = false
        })
    },
    handleOk() {
      const that = this
      // 触发表单验证
        console.log('model', this.model)
      this.$refs.form.validate(valid => {
        if (valid) {
          that.confirmLoading = true
          postAction(this.url.edit, that.model)
            that.confirmLoading = that.spinning = true
            let url
            if (!that.model.id) {
              url = that.url.add
            } else {
              url = that.url.edit
            }
            postAction(url, that.model)
            .then((res) => {
              if (res.success) {
                that.$notification.success({
                  message: '消息',
                  description: res.message
                })
                that.$emit('ok', res.result)
                  that.$emit('ok')
                that.handleCancel()
              } else {
                that.$notification.warning({
@@ -140,7 +202,7 @@
              }
            })
            .finally(() => {
              that.confirmLoading = false
                that.confirmLoading = that.spinning = false
            })
        } else {
          return false
@@ -148,6 +210,22 @@
      })
    },
      deviceSearch() {
        this.$refs.selectDeviceDrawer.visible = true
        this.$refs.selectDeviceDrawer.selectedRowKeys = []
        this.$refs.selectDeviceDrawer.selectedRows = []
        this.$refs.selectDeviceDrawer.checkedKeys = this.model.equipmentIds ? this.model.equipmentIds.split(',') : []
      },
      /**
       * 选择已有设备后点击确定时触发
       * @param data 已选择的设备
       */
      selectOK(data) {
        this.$set(this.model, 'equipmentIds', data.join(','))
        if (this.model.equipmentIds) this.$refs.form.clearValidate('equipmentIds')
      },
    handleCancel() {
      this.visible = false
      this.removeValidate()
src/views/system/modules/SelectDeviceDrawer.vue
@@ -96,6 +96,7 @@
        expandedKeys: [],
        checkedKeys: [],
        autoExpandParent: true,
        searchValue: '',
        url: {
          getBaseTree: '/mdc/mdcEquipment/queryTreeListByProduction'
        },