车间能级提升-智能设备管理系统
zhuguifei
2025-04-24 bef4312ca5a28088c462290a9c5ad356fbb06141
Merge branch 'main' of http://lanpucloud.cn:1111/r/eims-master
已修改15个文件
170 ■■■■■ 文件已修改
eims-ui/apps/web-antd/src/layouts/basic.vue 72 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims-ui/apps/web-antd/src/views/_core/authentication/login.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims-ui/apps/web-antd/src/views/eims/insp-plan/insp-plan-import-modal.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims-ui/apps/web-antd/src/views/eims/maint-plan/maint-plan-import-modal.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-admin/src/main/resources/application-prod.yml 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsEquServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsInspectPlanServiceImpl.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsInspectRecordServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsInventoryServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrderServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintPlanServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairRecordServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairResServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsSpareServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eims-ui/apps/web-antd/src/layouts/basic.vue
@@ -40,15 +40,15 @@
const tenantStore = useTenantStore();
const menus = computed(() => {
  const defaultMenus = [
    {
      handler: () => {
        openWindow(VBEN_DOC_URL, {
          target: '_blank',
        });
      },
      icon: BookOpenText,
      text: $t('ui.widgets.document'),
    },
    // {
    //   handler: () => {
    //     openWindow(VBEN_DOC_URL, {
    //       target: '_blank',
    //     });
    //   },
    //   icon: BookOpenText,
    //   text: $t('ui.widgets.document'),
    // },
    {
      handler: () => {
        router.push('/profile');
@@ -56,33 +56,33 @@
      icon: UserOutlined,
      text: $t('ui.widgets.profile'),
    },
    {
      handler: () => {
        openWindow('https://gitee.com/dapppp/ruoyi-plus-vben5', {
          target: '_blank',
        });
      },
      icon: () => h(GiteeIcon, { class: 'text-red-800' }),
      text: 'Gitee项目地址',
    },
    {
      handler: () => {
        openWindow(VBEN_GITHUB_URL, {
          target: '_blank',
        });
      },
      icon: GitHubOutlined,
      text: 'Vben官方地址',
    },
    {
      handler: () => {
        openWindow(`${VBEN_GITHUB_URL}/issues`, {
          target: '_blank',
        });
      },
      icon: CircleHelp,
      text: $t('ui.widgets.qa'),
    },
    // {
    //   handler: () => {
    //     openWindow('https://gitee.com/dapppp/ruoyi-plus-vben5', {
    //       target: '_blank',
    //     });
    //   },
    //   icon: () => h(GiteeIcon, { class: 'text-red-800' }),
    //   text: 'Gitee项目地址',
    // },
    // {
    //   handler: () => {
    //     openWindow(VBEN_GITHUB_URL, {
    //       target: '_blank',
    //     });
    //   },
    //   icon: GitHubOutlined,
    //   text: 'Vben官方地址',
    // },
    // {
    //   handler: () => {
    //     openWindow(`${VBEN_GITHUB_URL}/issues`, {
    //       target: '_blank',
    //     });
    //   },
    //   icon: CircleHelp,
    //   text: $t('ui.widgets.qa'),
    // },
  ];
  /**
   * 租户选中状态 不显示个人中心
eims-ui/apps/web-antd/src/views/_core/authentication/login.vue
@@ -93,7 +93,7 @@
        class: 'focus:border-primary',
        placeholder: $t('authentication.usernameTip'),
      },
      defaultValue: 'admin',
      defaultValue: 'test',
      fieldName: 'username',
      label: $t('authentication.username'),
      rules: z.string().min(1, { message: $t('authentication.usernameTip') }),
@@ -104,7 +104,7 @@
        class: 'focus:border-primary',
        placeholder: $t('authentication.password'),
      },
      defaultValue: 'admin123',
      defaultValue: '123456',
      fieldName: 'password',
      label: $t('authentication.password'),
      rules: z.string().min(5, { message: $t('authentication.passwordTip') }),
eims-ui/apps/web-antd/src/views/eims/insp-plan/insp-plan-import-modal.vue
@@ -101,12 +101,12 @@
      <div class="flex items-center gap-2">
        <span class="text-red-500">⚠️特别注意⚠️:请下载模版保持导入文件表头和模版一致后导入</span>
      </div>
<!--      <div class="flex items-center gap-2">-->
<!--        <span :class="{ 'text-red-500': checked }">-->
<!--          是否更新/覆盖已存在的点检计划数据-->
<!--        </span>-->
<!--        <Switch v-model:checked="checked" />-->
<!--      </div>-->
      <div class="flex items-center gap-2">
        <span :class="{ 'text-red-500': checked }">
          是否更新/覆盖已存在的点检计划数据
        </span>
        <Switch v-model:checked="checked" />
      </div>
    </div>
  </BasicModal>
</template>
eims-ui/apps/web-antd/src/views/eims/maint-plan/maint-plan-import-modal.vue
@@ -101,12 +101,12 @@
      <div class="flex items-center gap-2">
        <span class="text-red-500">⚠️特别注意⚠️:请下载模版保持导入文件表头和模版一致后导入</span>
      </div>
<!--      <div class="flex items-center gap-2">-->
<!--        <span :class="{ 'text-red-500': checked }">-->
<!--          是否更新/覆盖已存在的保养计划数据-->
<!--        </span>-->
<!--        <Switch v-model:checked="checked" />-->
<!--      </div>-->
      <div class="flex items-center gap-2">
        <span :class="{ 'text-red-500': checked }">
          是否更新/覆盖已存在的保养计划数据
        </span>
        <Switch v-model:checked="checked" />
      </div>
    </div>
  </BasicModal>
</template>
eims/ruoyi-admin/src/main/resources/application-prod.yml
@@ -52,13 +52,13 @@
          username: root
          password: 123456
        # 从库数据源
        slave:
          lazy: true
          type: ${spring.datasource.type}
          driverClassName: com.mysql.cj.jdbc.Driver
          url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
          username:
          password:
#        slave:
#          lazy: true
#          type: ${spring.datasource.type}
#          driverClassName: com.mysql.cj.jdbc.Driver
#          url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
#          username:
#          password:
#        oracle:
#          type: ${spring.datasource.type}
#          driverClassName: oracle.jdbc.OracleDriver
@@ -212,7 +212,7 @@
      client-id: 449c4*********937************759
      client-secret: ac7***********1e0************28d
      redirect-uri: ${justauth.address}/social-callback?source=topiam
      scopes: [ openid, email, phone, profile ]
      scopes: [openid, email, phone, profile]
    qq:
      client-id: 10**********6
      client-secret: 1f7d08**********5b7**********29e
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsEquServiceImpl.java
@@ -119,6 +119,8 @@
        lqw.eq(bo.getServiceLife() != null, EimsEqu::getServiceLife, bo.getServiceLife());
        lqw.between(params.get("beginTime") != null && params.get("endTime") != null,
            EimsEqu::getDeployDate, params.get("beginTime"), params.get("endTime"));
        // 按创建日期倒序
        lqw.orderByDesc(EimsEqu::getCreateTime);
        return lqw;
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsInspectPlanServiceImpl.java
@@ -104,6 +104,8 @@
        lqw.eq(bo.getInspUser() != null, EimsInspectPlan::getInspUser, bo.getInspUser());
        lqw.eq(bo.getInspDept() != null, EimsInspectPlan::getInspDept, bo.getInspDept());
        lqw.eq(StringUtils.isNotBlank(bo.getStatus()), EimsInspectPlan::getStatus, bo.getStatus());
        // 按创建时间倒序
        lqw.orderByDesc(EimsInspectPlan::getCreateTime);
        return lqw;
    }
    private QueryWrapper<EimsInspectPlan> buildWrapper(EimsInspectPlanBo bo) {
@@ -207,11 +209,6 @@
    @Override
    public String importData(MultipartFile file, boolean updateSupport) throws IOException, IOException {
        int successNum = 0;
        int failureNum = 0;
        StringBuilder successMsg = new StringBuilder();
        StringBuilder failureMsg = new StringBuilder();
        // 点检项目列表(假设存在对应的点检项VO)
        InspectCheckItemImportListener checkItemImportListener = new InspectCheckItemImportListener(updateSupport);
        EasyExcel.read(file.getInputStream(), InspectCheckItemVo.class, checkItemImportListener).headRowNumber(3).sheet().doRead();
@@ -228,17 +225,30 @@
            .map(String::trim)
            .orElseThrow(() -> new ServiceException("导入失败,无法读取固定资产编号"));
        // 查询设备信息
        QueryWrapper<EimsEqu> query = new QueryWrapper<>();
        query.eq("asset_no", assetNo);
        EimsEquVo equVo = equMapper.selectVoOne(query);
        if (equVo == null) throw new ServiceException("设备未找到,请先在设备台帐中添加");
        int successNum = 0;
        int failureNum = 0;
        StringBuilder successMsg = new StringBuilder();
        StringBuilder failureMsg = new StringBuilder();
        for (InspectCheckItemVo itemVo : successList) {
            if ("设备状态卡状态".equals(itemVo.getItemName())) break;
            // 如果允许覆盖,则删除已存在的记录
            if (updateSupport) {
                LambdaQueryWrapper<EimsInspectPlan> deleteWrapper = Wrappers.lambdaQuery();
                deleteWrapper.eq(EimsInspectPlan::getEquId, equVo.getEquId())
                    .eq(EimsInspectPlan::getInspName, itemVo.getItemName())
                    .eq(EimsInspectPlan::getStatus, "0");
                baseMapper.delete(deleteWrapper);
            }
            // 新增点检计划
            EimsInspectPlanBo bo = new EimsInspectPlanBo();
            bo.setEquId(equVo.getEquId());
            bo.setInspName(itemVo.getItemName());
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsInspectRecordServiceImpl.java
@@ -104,6 +104,8 @@
        lqw.eq(bo.getInspTime() != null, EimsInspectRecord::getInspTime, bo.getInspTime());
        lqw.eq(bo.getPlanTime() != null, EimsInspectRecord::getPlanTime, bo.getPlanTime());
        lqw.eq(bo.getVerifyUser() != null, EimsInspectRecord::getVerifyUser, bo.getVerifyUser());
        // 按创建时间倒序
        lqw.orderByDesc(EimsInspectRecord::getCreateTime);
        return lqw;
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsInventoryServiceImpl.java
@@ -112,7 +112,8 @@
            EimsInventory::getCreateBy, params.get("beginCreateBy"), params.get("endCreateBy"));
        lqw.eq(bo.getUserDept() != null, EimsInventory::getUserDept, bo.getUserDept());
        lqw.eq(bo.getInventoryUser() != null, EimsInventory::getInventoryUser, bo.getInventoryUser());
        // 按创建时间倒序
        lqw.orderByDesc(EimsInventory::getCreateTime);
        return lqw;
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintOrderServiceImpl.java
@@ -185,6 +185,8 @@
        lqw.eq(StringUtils.isNotBlank(bo.getStatus()), EimsMaintOrder::getStatus, bo.getStatus());
        lqw.eq(bo.getPlanTime() != null, EimsMaintOrder::getPlanTime, bo.getPlanTime());
        lqw.eq(bo.getPlanId() != null, EimsMaintOrder::getPlanId, bo.getPlanId());
        // 按创建时间倒序
        lqw.orderByDesc(EimsMaintOrder::getCreateTime);
        return lqw;
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsMaintPlanServiceImpl.java
@@ -99,6 +99,8 @@
        lqw.eq(bo.getMaintUser() != null, EimsMaintPlan::getMaintUser, bo.getMaintUser());
        lqw.eq(bo.getMaintDept() != null, EimsMaintPlan::getMaintDept, bo.getMaintDept());
        lqw.eq(bo.getStatus() != null, EimsMaintPlan::getStatus, bo.getStatus());
        // 按创建时间倒序
        lqw.orderByDesc(EimsMaintPlan::getCreateTime);
        return lqw;
    }
@@ -321,6 +323,17 @@
                maintPlanBo.setMaintNextTime(nextTime);
            }
            // 如果允许覆盖,则删除已存在的相同条件记录
            if (updateSupport) {
                LambdaQueryWrapper<EimsMaintPlan> deleteWrapper = Wrappers.lambdaQuery();
                deleteWrapper.eq(EimsMaintPlan::getEquId, maintPlanBo.getEquId())
                    .eq(EimsMaintPlan::getMaintName, maintPlanBo.getMaintName())
                    .eq(EimsMaintPlan::getStatus, maintPlanBo.getStatus())
                    .eq(EimsMaintPlan::getMaintCycle, maintPlanBo.getMaintCycle())
                    .eq(EimsMaintPlan::getMaintCycleUnit, maintPlanBo.getMaintCycleUnit());
                baseMapper.delete(deleteWrapper);
            }
            if (!insertByBo(maintPlanBo)) {
                failureNum++;
                failureMsg.append(failureNum).append("、设备:").append(eimsEquVo.getEquName()).append(",导入失败<br>");
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairRecordServiceImpl.java
@@ -76,6 +76,8 @@
        lqw.eq(bo.getHandleTime() != null, EimsRepairRecord::getHandleTime, bo.getHandleTime());
        lqw.eq(bo.getOperaUser() != null, EimsRepairRecord::getOperaUser, bo.getOperaUser());
        lqw.eq(StringUtils.isNotBlank(bo.getOpera()), EimsRepairRecord::getOpera, bo.getOpera());
        // 按创建时间倒序
        lqw.orderByDesc(EimsRepairRecord::getCreateTime);
        return lqw;
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairReqServiceImpl.java
@@ -167,6 +167,8 @@
        lqw.eq(bo.getRepairDept() != null, EimsRepairReq::getRepairDept, bo.getRepairDept());
        lqw.eq(bo.getRepairUser() != null, EimsRepairReq::getRepairUser, bo.getRepairUser());
        lqw.eq(StringUtils.isNotBlank(bo.getFaultType()), EimsRepairReq::getFaultType, bo.getFaultType());
        // 按创建时间倒序
        lqw.orderByDesc(EimsRepairReq::getCreateTime);
        return lqw;
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsRepairResServiceImpl.java
@@ -98,6 +98,8 @@
            EimsRepairRes::getStartTime, params.get("beginStartTime"), params.get("endStartTime"));
        lqw.between(params.get("beginEndTime") != null && params.get("endEndTime") != null,
            EimsRepairRes::getEndTime, params.get("beginEndTime"), params.get("endEndTime"));
        // 按创建时间倒序
        lqw.orderByDesc(EimsRepairRes::getCreateTime);
        return lqw;
    }
eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/service/impl/EimsSpareServiceImpl.java
@@ -90,6 +90,8 @@
        lqw.like(StringUtils.isNotBlank(bo.getMadeIn()), EimsSpare::getMadeIn, bo.getMadeIn());
        lqw.like(StringUtils.isNotBlank(bo.getSupplier()), EimsSpare::getSupplier, bo.getSupplier());
        lqw.eq(StringUtils.isNotBlank(bo.getUnit()), EimsSpare::getUnit, bo.getUnit());
        // 按创建时间倒序
        lqw.orderByDesc(EimsSpare::getCreateTime);
        return lqw;
    }