7f616cfc0eeb35dd08cbd070b81661d351386c95..58d9de1523811b28990e6dae854f82e323d6347c
2026-03-20
yys 配置
58d9de 对比 | 目录
2026-03-20 maven
yys 设备批次保养和巡检
1bf89a 对比 | 目录
2026-03-20 maven
yys 修改员工查询
ced428 对比 | 目录
已修改6个文件
122 ■■■■ 文件已修改
src/main/java/com/ruoyi/device/pojo/MaintenanceTask.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/inspectiontask/pojo/TimingTask.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskJob.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application-jyhjCopy.yml 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/staff/StaffJoinLeaveRecordMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/device/pojo/MaintenanceTask.java
@@ -41,6 +41,9 @@
    @ApiModelProperty(value = "设备id")
    private Long taskId;
    @ApiModelProperty(value = "批量设备id")
    private String taskIds;
    @ApiModelProperty(value = "频次")
    @Excel(name = "频次")
    private String frequencyType;
src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java
@@ -49,8 +49,8 @@
            }
            // 2. 创建并保存巡检任务记录 - 这就是您提供的代码应该放的位置
            DeviceMaintenance deviceMaintenance = createInspectionTask(timingTask);
            deviceMaintenanceService.save(deviceMaintenance);
            List<DeviceMaintenance> deviceMaintenance = createInspectionTask(timingTask);
            deviceMaintenanceService.saveBatch(deviceMaintenance);
            // 3. 更新定时任务的执行时间
            if (!tasks.isEmpty()) {
@@ -84,24 +84,33 @@
    }
    // 这就是您提供的代码封装成的方法
    private DeviceMaintenance createInspectionTask(MaintenanceTask timingTask) {
        DeviceMaintenance inspectionTask = new DeviceMaintenance();
    private List<DeviceMaintenance> createInspectionTask(MaintenanceTask timingTask) {
        List<DeviceMaintenance> inspectionTasks = new java.util.ArrayList<>();
        String[] split = timingTask.getTaskIds().split(",");
        String[] split1 = timingTask.getTaskName().split(",");
        String[] split2 = timingTask.getDeviceModel().split(",");
        int i = 0;
        for (String s : split) {
            DeviceMaintenance inspectionTask = new DeviceMaintenance();
            // 复制基本属性
            inspectionTask.setDeviceName(split1[i]);
            inspectionTask.setMaintenanceTaskId(timingTask.getId());
            inspectionTask.setDeviceLedgerId(Long.parseLong(s));
            inspectionTask.setMaintenancePlanTime(LocalDateTime.now());
            inspectionTask.setFrequencyType(timingTask.getFrequencyType());
            inspectionTask.setFrequencyDetail(timingTask.getFrequencyDetail());
            inspectionTask.setTenantId(timingTask.getTenantId());
            inspectionTask.setStatus(0);
            inspectionTask.setDeviceModel(split2[i]);
            inspectionTask.setCreateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
            inspectionTask.setUpdateTime(LocalDateTime.now());
            inspectionTask.setCreateTime(LocalDateTime.now());
            inspectionTask.setUpdateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
            i++;
            inspectionTasks.add(inspectionTask);
        }
        // 复制基本属性
        inspectionTask.setDeviceName(timingTask.getTaskName());
        inspectionTask.setMaintenanceTaskId(timingTask.getId());
        inspectionTask.setDeviceLedgerId(timingTask.getTaskId());
        inspectionTask.setMaintenancePlanTime(LocalDateTime.now());
        inspectionTask.setFrequencyType(timingTask.getFrequencyType());
        inspectionTask.setFrequencyDetail(timingTask.getFrequencyDetail());
        inspectionTask.setTenantId(timingTask.getTenantId());
        inspectionTask.setStatus(0);
        inspectionTask.setDeviceModel(timingTask.getDeviceModel());
        inspectionTask.setCreateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
        inspectionTask.setUpdateTime(LocalDateTime.now());
        inspectionTask.setCreateTime(LocalDateTime.now());
        inspectionTask.setUpdateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
        return inspectionTask;
        return inspectionTasks;
    }
src/main/java/com/ruoyi/inspectiontask/pojo/TimingTask.java
@@ -41,6 +41,9 @@
    @ApiModelProperty(value = "设备id")
    private Integer taskId;
    @ApiModelProperty(value = "批量设备id")
    private String taskIds;
    @ApiModelProperty(value = "巡检人")
    @Excel(name = "执行巡检人")
    private String inspectorIds;
src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskJob.java
@@ -62,8 +62,11 @@
//            }
            // 2. 创建并保存巡检任务记录 - 这就是您提供的代码应该放的位置
            InspectionTask inspectionTask = createInspectionTask(timingTask);
            inspectionTaskMapper.insert(inspectionTask);
            List<InspectionTask> inspectionTask = createInspectionTask(timingTask);
            for (InspectionTask task : inspectionTask) {
                inspectionTaskMapper.insert(task);
            }
            // 3. 更新定时任务的执行时间
            if (!tasks.isEmpty()) {
@@ -103,21 +106,28 @@
    }
    // 这就是您提供的代码封装成的方法
    private InspectionTask createInspectionTask(TimingTask timingTask) {
        InspectionTask inspectionTask = new InspectionTask();
    private List<InspectionTask> createInspectionTask(TimingTask timingTask) {
        List<InspectionTask> inspectionTasks = new java.util.ArrayList<>();
        String[] split = timingTask.getTaskIds().split(",");
        String[] split1 = timingTask.getTaskName().split(",");
        int i = 0;
        for (String s : split) {
            InspectionTask inspectionTask = new InspectionTask();
            // 复制基本属性
            inspectionTask.setTaskName(split1[i]);
            inspectionTask.setTaskId(Integer.parseInt(s));
            inspectionTask.setInspectorId(timingTask.getInspectorIds());
            inspectionTask.setInspectionLocation(timingTask.getInspectionLocation());
            inspectionTask.setRemarks("自动生成自定时任务ID: " + timingTask.getId());
            inspectionTask.setRegistrantId(timingTask.getRegistrantId());
            inspectionTask.setFrequencyType(timingTask.getFrequencyType());
            inspectionTask.setFrequencyDetail(timingTask.getFrequencyDetail());
            inspectionTask.setTenantId(timingTask.getTenantId());
            inspectionTasks.add(inspectionTask);
        }
        // 复制基本属性
        inspectionTask.setTaskName(timingTask.getTaskName());
        inspectionTask.setTaskId(timingTask.getTaskId());
        inspectionTask.setInspectorId(timingTask.getInspectorIds());
        inspectionTask.setInspectionLocation(timingTask.getInspectionLocation());
        inspectionTask.setRemarks("自动生成自定时任务ID: " + timingTask.getId());
        inspectionTask.setRegistrantId(timingTask.getRegistrantId());
        inspectionTask.setFrequencyType(timingTask.getFrequencyType());
        inspectionTask.setFrequencyDetail(timingTask.getFrequencyDetail());
        inspectionTask.setTenantId(timingTask.getTenantId());
        return inspectionTask;
        return inspectionTasks;
    }
src/main/resources/application-jyhjCopy.yml
@@ -156,6 +156,31 @@
        max-active: 8
        # #连接池最大阻塞等待时间(使用负值表示没有限制)
        max-wait: -1ms
  # Quartz定时任务配置(新增部分)
  quartz:
    job-store-type: jdbc  # 使用数据库存储
    jdbc:
      initialize-schema: never  # 首次运行时自动创建表结构,成功后改为never
      schema: classpath:org/quartz/impl/jdbcjobstore/tables_mysql_innodb.sql  # MySQL表结构脚本
    properties:
      org:
        quartz:
          scheduler:
            instanceName: RuoYiScheduler
            instanceId: AUTO
          jobStore:
            class: org.quartz.impl.jdbcjobstore.JobStoreTX
            driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate  # MySQL适配
            tablePrefix: qrtz_  # 表名前缀,与脚本一致
            isClustered: false  # 单节点模式(集群需改为true)
            clusterCheckinInterval: 10000
            txIsolationLevelSerializable: true
          threadPool:
            class: org.quartz.simpl.SimpleThreadPool
            threadCount: 10  # 线程池大小
            threadPriority: 5
            makeThreadsDaemons: true
          updateCheck: false  # 关闭版本检查
# token配置
token:
src/main/resources/mapper/staff/StaffJoinLeaveRecordMapper.xml
@@ -12,8 +12,8 @@
        <if test="staffJoinLeaveRecord.staffName != null and staffJoinLeaveRecord.staffName != '' ">
            AND t1.staff_name LIKE CONCAT('%',#{staffJoinLeaveRecord.staffName},'%')
        </if>
        <if test="staffOnJob.deptPositionId != null">
            AND t1.dept_position_id = #{staffOnJob.deptPositionId}
        <if test="staffJoinLeaveRecord.deptPositionId != null">
            AND t1.dept_position_id = #{staffJoinLeaveRecord.deptPositionId}
        </if>
        <if test="staffJoinLeaveRecord.entryDateStart != null and staffJoinLeaveRecord.entryDateStart != '' ">
            and t1.contract_start_time like concat('%',#{staffJoinLeaveRecord.entryDateStart},'%')