排班删除和同步告警数据

This commit is contained in:
dy
2025-08-07 14:56:57 +08:00
parent 6023f35674
commit 1a2a9a1035
6 changed files with 52 additions and 18 deletions

View File

@@ -436,13 +436,6 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
}
judgeDate(bo, add);
// AttendanceArrangementGroup attendanceArrangementGroup = new AttendanceArrangementGroup();
// //向排班和考勤组中间表中插入数据
// attendanceArrangementGroup.setGroupId(add.getGroupId());
// attendanceArrangementGroup.setArrangementId(bo.getId());
// arrangementGroupMapper.insert(attendanceArrangementGroup);
//取出当前新增的排班的id
Long ArrangementId = add.getId();
//用获取到的排班id向attendanceUserGroup表中插入数据
@@ -479,21 +472,28 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
* @param bo 排班
* @return 是否修改成功
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Boolean updateByBo(AttendanceArrangementBo bo) {
AttendanceArrangement update = MapstructUtils.convert(bo, AttendanceArrangement.class);
validEntityBeforeSave(update);
judgeDate(bo, update);
// judgeDate(bo, update);
//取出当前排班的id
assert update != null;
Long ArrangementId = update.getId();
//用获取到的排班id向attendanceUserGroup表中更新数据
//根据arrangementId查询出人员组的所有employeeId
List<Long> employeeIdList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, ArrangementId))
.stream().map(AttendanceUserGroup::getEmployeeId).toList();
//根据employeeId和ArrangementId删除attendanceUserGroup表中的数据
userGroupMapper.delete(Wrappers.<AttendanceUserGroup>lambdaQuery().in(AttendanceUserGroup::getEmployeeId, employeeIdList)
.eq(AttendanceUserGroup::getScheduleId, ArrangementId));
//用获取到的排班id向attendanceUserGroup表中批量插入数据
List<AttendanceUserGroup> userGroupList = bo.getUserGroupList();
for (AttendanceUserGroup userGroup : userGroupList) {
userGroup.setScheduleId(ArrangementId);
userGroupMapper.updateById(userGroup);
}
userGroupMapper.insertBatch(userGroupList);
return baseMapper.updateById(update) > 0;
}