已修改5个文件
160 ■■■■■ 文件已修改
src/components/page/GlobalLayout.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/dashboard/WorkshopSectionSignage.vue 81 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/base/EamMaintenanceStandardList.vue 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/eam/maintenance/modules/EamSecondMaintenanceOrderBatchPrintModal.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/flowable/workflow/thirdMaintenance/ThirdMaintenanceFurnaceApprovalModal.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/page/GlobalLayout.vue
@@ -70,7 +70,7 @@
      <!-- layout content -->
      <a-layout-content
        :style="{ height: '100%', paddingTop: fixedHeader ? '59px' : '0' ,background: $route.meta.title=='首页'?'#FEFEFE':''}">
        :style="{ height: '100%', paddingTop: fixedHeader ? '59px' : '0' ,background: $route.meta.title=='首页'?'#FDFDFD':''}">
        <slot></slot>
      </a-layout-content>
src/views/dashboard/WorkshopSectionSignage.vue
@@ -7,31 +7,17 @@
        </div>
        <dv-border-box-9 style="padding: 15px 15px 0">
          <div id="tech_condition_chart" style="width:100%;height: 240px;"></div>
          <div id="warranty_malfunction_chart" style="width:100%;height: 240px;"></div>
          <div>
            <div style="display: flex;flex-direction:column;align-items: center">
              <dv-decoration-11
                style="width:45%;height:60px;color: rgba(0,0,0,.45);font-size: 20px;align-self: flex-start">三保计划
              </dv-decoration-11>
              <div class="support-plan-container">
                <div v-for="(item,index) in supportPlanList" :key="index" class="support-plan-item"
                     :style="{background:item.backgroundColor}" @click="openMaintenanceModal(item)">
                  <div>{{item.planTime}}</div>
                  <div class="plan-value-container">
                    <div class="plan-value">{{$data[item.planValueLabel]}}</div>
                    <div>台</div>
                  </div>
          <div id="tech_condition_chart" style="width:100%;height: 280px;"></div>
          <div id="warranty_malfunction_chart" style="width:100%;height: 280px;"></div>
          <div style="display: flex;flex-direction:column;align-items: center;margin-top: 40px">
            <div class="support-plan-container">
              <div v-for="(item,index) in supportPlanList" :key="index" class="support-plan-item"
                   :style="{background:item.backgroundColor}" @click="openMaintenanceModal(item)">
                <div>{{item.planTime}}</div>
                <div class="plan-value-container">
                  <div class="plan-value">{{$data[item.planValueLabel]}}</div>
                  <div>台</div>
                </div>
              </div>
            </div>
            <div style="display: flex;margin-top: 10px;justify-content: space-between;align-items: center;">
              <dv-decoration-11 style="width:45%;height:60px;font-size: 20px;color: rgba(0,0,0,.45)">二保计划
              </dv-decoration-11>
              <div
                style="flex:1;text-align:center;font-size: 25px;color: rgba(0,0,0,.45);overflow: hidden;text-overflow: ellipsis;white-space: nowrap">
                2024年4月1日大修
              </div>
            </div>
          </div>
@@ -365,46 +351,6 @@
        signageApi.getEquipmentOEEMonthStatisticsApi(this.productionCode)
          .then(res => {
            if (res.success && res.result) {
              const res = {
                result: [
                  {
                    equipmentId: '2140311',
                    overallEquipmentEfficiency: 12
                  },
                  {
                    equipmentId: '2140511',
                    overallEquipmentEfficiency: 32
                  },
                  {
                    equipmentId: '2420011',
                    overallEquipmentEfficiency: 15
                  },
                  {
                    equipmentId: '2140023',
                    overallEquipmentEfficiency: 62
                  },
                  {
                    equipmentId: '2110011',
                    overallEquipmentEfficiency: 46
                  },
                  {
                    equipmentId: '2140211',
                    overallEquipmentEfficiency: 75
                  },
                  {
                    equipmentId: '2144011',
                    overallEquipmentEfficiency: 86
                  },
                  {
                    equipmentId: '2140021',
                    overallEquipmentEfficiency: 97
                  },
                  {
                    equipmentId: '2145031',
                    overallEquipmentEfficiency: 57
                  }
                ]
              }
              this.barChartData = res.result.map(item => {
                return {
                  name: item.equipmentId,
@@ -680,9 +626,9 @@
            const equipmentIdObj = {
              equipmentId: item.equipmentId,
              equipmentName: item.equipmentName,
              openRate: 84,
              startRate: 70,
              utilizationRate: 42
              openRate: 0,
              startRate: 0,
              utilizationRate: 0
            }
            this.first7DaysEfficiencyData.dataList.push(equipmentIdObj)
          }
@@ -1384,7 +1330,6 @@
          justify-content: space-around;
          flex-wrap: wrap;
          color: #fff;
          padding-top: 20px;
          .support-plan-item {
            border-radius: 3px;
src/views/eam/base/EamMaintenanceStandardList.vue
@@ -421,6 +421,79 @@
        this.loadData();
      },
      /* 导入 */
      handleImportExcel(info) {
        this.loading = true;
        if (info.file.status === 'done') {
          this.loading = false;
          // 检查响应内容是否为CSV格式(包含未找到的设备编码)
          if (info.file.response && typeof info.file.response === 'string' &&
            info.file.response.includes('未找到的设备编码')) {
            // 创建CSV文件并下载
            const blob = new Blob([info.file.response], { type: 'text/csv;charset=utf-8' });
            const downloadUrl = window.URL.createObjectURL(blob);
            const link = document.createElement('a');
            link.href = downloadUrl;
            link.setAttribute('download', '未找到的设备编码.csv');
            document.body.appendChild(link);
            link.click();
            document.body.removeChild(link);
            window.URL.revokeObjectURL(downloadUrl);
            // 显示提示信息
            this.$notification.warning({
              message: '导入完成',
              description: '导入成功但存在未找到的设备编码,已下载未找到的设备编码列表'
            });
            this.loadData();
            return;
          }
          // 处理常规JSON响应
          if (info.file.response && info.file.response.success) {
            this.$notification.success({
              message: '导入成功',
              description: info.file.response.message || `${info.file.name} 文件上传成功`
            });
            this.loadData();
          } else {
            const fileName = info.file.name || '未知文件';
            const errorMessage = info.file.response && info.file.response.message
              ? info.file.response.message
              : '导入失败,未知错误';
            this.$notification.error({
              message: '导入失败',
              description: `${fileName} ${errorMessage}`
            });
          }
        } else if (info.file.status === 'error') {
          this.loading = false;
          const fileName = info.file.name || '未知文件';
          let errorMessage = '上传失败,未知错误';
          if (info.file.response) {
            if (info.file.response.message) {
              errorMessage = info.file.response.message;
            } else if (info.file.response.error) {
              errorMessage = info.file.response.error;
            }
          } else if (info.file.error) {
            errorMessage = info.file.error.message || info.file.error;
          }
          this.$notification.error({
            message: '上传失败',
            description: `${fileName} ${errorMessage}`
          });
        }
      },
      batchDel() {
        var ids = ''
        for (var a = 0; a < this.selectedRowKeys.length; a++) {
src/views/eam/maintenance/modules/EamSecondMaintenanceOrderBatchPrintModal.vue
@@ -163,7 +163,7 @@
      close() {
        this.$emit('close')
        this.visible = false
        this.$refs.form.clearValidate()
        if (this.$refs.form) this.$refs.form.clearValidate()
      }
    }
  }
src/views/flowable/workflow/thirdMaintenance/ThirdMaintenanceFurnaceApprovalModal.vue
@@ -243,7 +243,7 @@
        getAction(this.url.queryById, { id: record.dataId })
          .then(res => {
            if (res.success) {
              that.model = Object.assign({ confirmDealType: '1' }, res.result)
              that.model = Object.assign({}, res.result, { confirmDealType: '1' })
              that.model.dataId = record.dataId
              that.model.taskId = record.id
              that.model.userId = record.assignee