Commit 16f71e97bcf3d4793b986bb480c88eb1b8a54b91
1 parent
2fcb0c4d
fix: 全量更新人员信息
Showing
5 changed files
with
38 additions
and
7 deletions
Bsth-admin/src/main/java/com/ruoyi/driver/mapper/DriverMapper.java
Bsth-admin/src/main/java/com/ruoyi/driver/service/IDriverService.java
Bsth-admin/src/main/java/com/ruoyi/driver/service/impl/DriverServiceImpl.java
| ... | ... | @@ -218,7 +218,7 @@ public class DriverServiceImpl implements IDriverService { |
| 218 | 218 | List<DriverScheduling> driverSchedulings = cache.getCacheScheduling(ConstDateUtil.getStringNowLocalDate("-")).get(driver.getJobCode()); |
| 219 | 219 | // 只改变车队信息 其他信息由调度接口 和 人事系统决定 本来是不修改的但是人事数据有问题 |
| 220 | 220 | for (DriverScheduling scheduling : driverSchedulings) { |
| 221 | - if (StringUtil.isNotEmpty(driver.getFleetName())){ | |
| 221 | + if (StringUtil.isNotEmpty(driver.getFleetName())) { | |
| 222 | 222 | scheduling.setFleetName(driver.getFleetName()); |
| 223 | 223 | } |
| 224 | 224 | } |
| ... | ... | @@ -373,7 +373,7 @@ public class DriverServiceImpl implements IDriverService { |
| 373 | 373 | } else { |
| 374 | 374 | // 无排班 工种是驾驶员需要酒测 |
| 375 | 375 | if (Objects.isNull(vo)) { |
| 376 | - vos.add(DriverResponseVo.createDriverResponseVo(null, item, null, "驾驶员".equals(item.getPosts()),false, "", "", "")); | |
| 376 | + vos.add(DriverResponseVo.createDriverResponseVo(null, item, null, "驾驶员".equals(item.getPosts()), false, "", "", "")); | |
| 377 | 377 | } else { |
| 378 | 378 | // 特定设备是无需酒精测试的 |
| 379 | 379 | vo.setCheckAlcohol(needCheckAlcoholDevice ? vo.getCheckAlcohol() : false); |
| ... | ... | @@ -462,7 +462,7 @@ public class DriverServiceImpl implements IDriverService { |
| 462 | 462 | log.info("开始人员数据更新"); |
| 463 | 463 | // 数据更新 更新人脸注册标识 更新基本数据 |
| 464 | 464 | for (List<Driver> list : lists) { |
| 465 | - driverMapper.updateSignStatusDriversByJobCodes(list); | |
| 465 | + driverMapper.updateDriverBaseInfoByJobCodes(list, 0); | |
| 466 | 466 | } |
| 467 | 467 | if (insertDrivers.size() > 0) driverMapper.saveDrivers(insertDrivers); |
| 468 | 468 | |
| ... | ... | @@ -470,11 +470,11 @@ public class DriverServiceImpl implements IDriverService { |
| 470 | 470 | log.info("开始删除注册表中对应工号的数据"); |
| 471 | 471 | List<String> updateImageJobCodes = new ArrayList<>(); |
| 472 | 472 | for (Driver driver : updateDrivers) { |
| 473 | - if (StringUtil.isNotEmpty(driver.getImage())){ | |
| 473 | + if (StringUtil.isNotEmpty(driver.getImage())) { | |
| 474 | 474 | updateImageJobCodes.add(driver.getJobCode()); |
| 475 | 475 | } |
| 476 | 476 | } |
| 477 | - if (updateImageJobCodes.size() > 0){ | |
| 477 | + if (updateImageJobCodes.size() > 0) { | |
| 478 | 478 | driverMapper.deleteDeviceIdAssociatedJobCode(updateImageJobCodes); |
| 479 | 479 | } |
| 480 | 480 | log.info("删除注册表中对应工号的数据结束"); |
| ... | ... | @@ -490,7 +490,7 @@ public class DriverServiceImpl implements IDriverService { |
| 490 | 490 | driver.setFleetName(item.getFleetName()); |
| 491 | 491 | driver.setLineName(item.getLineName()); |
| 492 | 492 | try { |
| 493 | - if (StringUtil.isNotEmpty(item.getImageUrl())){ | |
| 493 | + if (StringUtil.isNotEmpty(item.getImageUrl())) { | |
| 494 | 494 | driver.setImage(getNewImageUrl(item.getJobCode(), item.getImageUrl())); |
| 495 | 495 | } |
| 496 | 496 | } catch (IOException e) { |
| ... | ... | @@ -510,7 +510,7 @@ public class DriverServiceImpl implements IDriverService { |
| 510 | 510 | driver.setLineName(item.getLineName()); |
| 511 | 511 | driver.setFaceSignIn(SIGN_FACE_ACTIVE); |
| 512 | 512 | try { |
| 513 | - if (StringUtil.isNotEmpty(item.getImageUrl())){ | |
| 513 | + if (StringUtil.isNotEmpty(item.getImageUrl())) { | |
| 514 | 514 | driver.setImage(getNewImageUrl(item.getJobCode(), item.getImageUrl())); |
| 515 | 515 | } |
| 516 | 516 | } catch (IOException e) { |
| ... | ... | @@ -583,6 +583,11 @@ public class DriverServiceImpl implements IDriverService { |
| 583 | 583 | return driverMapper.queryEmptyJob(jobList); |
| 584 | 584 | } |
| 585 | 585 | |
| 586 | + @Override | |
| 587 | + public void updateDriverBaseInfoByJobCodes(List<Driver> drivers, int filterImage) { | |
| 588 | + driverMapper.updateDriverBaseInfoByJobCodes(drivers, filterImage); | |
| 589 | + } | |
| 590 | + | |
| 586 | 591 | private void sendNotice(List<DriverSignInRecommendation> nowTimerList) { |
| 587 | 592 | List<SysNotice> noticeList = new ArrayList<>(nowTimerList.size()); |
| 588 | 593 | for (DriverSignInRecommendation item : nowTimerList) { | ... | ... |
Bsth-admin/src/main/java/com/ruoyi/job/DriverJob.java
| ... | ... | @@ -410,6 +410,7 @@ public class DriverJob implements InitializingBean { |
| 410 | 410 | drivers.addAll(getDrivers(date, getPersonInfo(accessToken, 100, i))); |
| 411 | 411 | } |
| 412 | 412 | List<String> jobList = drivers.stream().map(Driver::getJobCode).collect(Collectors.toList()); |
| 413 | + DRIVER_SERVICE.updateDriverBaseInfoByJobCodes(drivers, 1); | |
| 413 | 414 | // 删除离职员工 |
| 414 | 415 | handleNotEmptyJob(jobList); |
| 415 | 416 | // 过滤已经存在的员工工号 | ... | ... |
Bsth-admin/src/main/resources/mapper/driver/DriverMapper.xml
| ... | ... | @@ -334,6 +334,27 @@ |
| 334 | 334 | where job_code = #{item.jobCode,jdbcType=VARCHAR} |
| 335 | 335 | </foreach> |
| 336 | 336 | </update> |
| 337 | + <update id="updateDriverBaseInfoByJobCodes"> | |
| 338 | + <foreach collection="list" item="item" separator=";"> | |
| 339 | + update driver set update_time = #{item.updateTime} | |
| 340 | + <if test="item.lineName != null and item.lineName != ''"> | |
| 341 | + ,line_name =#{item.lineName} | |
| 342 | + </if> | |
| 343 | + <if test="item.fleetName != null and item.fleetName != ''"> | |
| 344 | + ,fleet_name =#{item.fleetName} | |
| 345 | + </if> | |
| 346 | + <if test="item.posts != null and item.posts != ''"> | |
| 347 | + ,`posts` =#{item.posts} | |
| 348 | + </if> | |
| 349 | + <if test="item.personnelName != null and item.personnelName != ''"> | |
| 350 | + ,`personnel_name` =#{item.personnelName} | |
| 351 | + </if> | |
| 352 | + <if test="item.image != null and item.image != '' and filterImage == 0"> | |
| 353 | + ,image = #{item.image},face_sign_in = 1 | |
| 354 | + </if> | |
| 355 | + where job_code = #{item.jobCode,jdbcType=VARCHAR} | |
| 356 | + </foreach> | |
| 357 | + </update> | |
| 337 | 358 | |
| 338 | 359 | <delete id="deleteDriverById" parameterType="Long"> |
| 339 | 360 | delete | ... | ... |