| | |
| | | package com.ruoyi.staff.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | |
| | | import com.ruoyi.project.system.domain.SysUser; |
| | | import com.ruoyi.project.system.mapper.SysUserMapper; |
| | | import com.ruoyi.staff.dto.StaffLeaveDto; |
| | | import com.ruoyi.staff.mapper.PersonalAttendanceRecordsMapper; |
| | | import com.ruoyi.staff.mapper.StaffLeaveMapper; |
| | | import com.ruoyi.staff.mapper.StaffOnJobMapper; |
| | | import com.ruoyi.staff.pojo.PersonalAttendanceRecords; |
| | | import com.ruoyi.staff.pojo.StaffOnJob; |
| | | import com.ruoyi.staff.service.StaffLeaveService; |
| | | import lombok.AllArgsConstructor; |
| | |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static com.ruoyi.common.enums.StaffLeaveReason.StaffLeaveReasonOther; |
| | | |
| | |
| | | |
| | | @Autowired |
| | | private SysUserMapper sysUserMapper; |
| | | |
| | | @Autowired |
| | | private PersonalAttendanceRecordsMapper personalAttendanceRecordsMapper; |
| | | |
| | | //新增离职列表分页查询 |
| | | @Override |
| | |
| | | SysUser sysUser = sysUserMapper.selectUserByUserName(staffOnJob.getStaffNo()); |
| | | if (sysUser != null) { |
| | | sysUser.setStatus("1"); |
| | | sysUser.setDelFlag("2"); |
| | | sysUserMapper.updateUser(sysUser); |
| | | } |
| | | |
| | |
| | | |
| | | String reason = staffLeaveDto.getReason(); |
| | | leave.setReason(reason); |
| | | leave.setLeaveDate(staffLeaveDto.getLeaveDate()); |
| | | // 校验离职原因是否为其他,如果是其他,备注赋值 |
| | | if (StaffLeaveReasonOther.getCode().equals(reason)){ |
| | | leave.setRemark(staffLeaveDto.getRemark()); |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int del(List<Integer> ids) { |
| | | List<StaffLeave> staffLeaves = staffLeaveMapper.selectBatchIds(ids); |
| | | // 查询离职记录,获取对应的staffOnJobId |
| | | List<Long> staffOnJobIds = staffLeaves.stream() |
| | | .map(StaffLeave::getStaffOnJobId) |
| | | .collect(Collectors.toList()); |
| | | |
| | | // 删除打卡记录 |
| | | if (!staffOnJobIds.isEmpty()) { |
| | | personalAttendanceRecordsMapper.delete(new LambdaQueryWrapper<PersonalAttendanceRecords>() |
| | | .in(PersonalAttendanceRecords::getStaffOnJobId, staffOnJobIds)); |
| | | } |
| | | |
| | | // 删除员工台账 |
| | | staffOnJobMapper.deleteBatchIds(staffOnJobIds); |
| | | |
| | | // 删除离职数据 |
| | | return staffLeaveMapper.deleteBatchIds(ids); |
| | | } |