| | |
| | | public Result<?> addOrUpdatePersonTrainingDetailed(@RequestBody PersonTrainingDetailed personTrainingDetailed) { |
| | | if (ObjectUtils.isEmpty(personTrainingDetailed.getId())) { |
| | | personTrainingDetailed.setState(3); |
| | | personTrainingDetailedService.save(personTrainingDetailed); |
| | | return Result.success(); |
| | | } |
| | | personTrainingDetailedService.saveOrUpdate(personTrainingDetailed); |
| | | // 讲师可能在内部人员和外聘人员之间切换,先显式覆盖两列,避免 updateById 跳过 null 导致旧值残留 |
| | | personTrainingDetailedService.update(null, Wrappers.<PersonTrainingDetailed>lambdaUpdate() |
| | | .eq(PersonTrainingDetailed::getId, personTrainingDetailed.getId()) |
| | | .set(PersonTrainingDetailed::getTrainingLecturerId, personTrainingDetailed.getTrainingLecturerId()) |
| | | .set(PersonTrainingDetailed::getTrainingLecturerName, personTrainingDetailed.getTrainingLecturerName())); |
| | | personTrainingDetailed.setTrainingLecturerId(null); |
| | | personTrainingDetailed.setTrainingLecturerName(null); |
| | | personTrainingDetailedService.updateById(personTrainingDetailed); |
| | | return Result.success(); |
| | | } |
| | | |