1
This commit is contained in:
parent
a7db0253e8
commit
1b64c97626
@ -66,7 +66,7 @@ public class AttendanceUserGroup extends TenantEntity {
|
|||||||
*/
|
*/
|
||||||
private LocalDate endDate;
|
private LocalDate endDate;
|
||||||
|
|
||||||
private SysUser sysUser;
|
// private SysUser sysUser;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -79,7 +79,7 @@ public class AttendanceArrangementVo implements Serializable {
|
|||||||
private AttendanceGroup attendanceGroup;
|
private AttendanceGroup attendanceGroup;
|
||||||
|
|
||||||
//用户组
|
//用户组
|
||||||
private List<AttendanceUserGroup> userGroupList;
|
private List<AttendanceUserGroupVo> userGroupList;
|
||||||
|
|
||||||
//固定排班
|
//固定排班
|
||||||
private AttendanceWeekSet weekSet;
|
private AttendanceWeekSet weekSet;
|
||||||
|
@ -7,6 +7,8 @@ import org.dromara.common.excel.annotation.ExcelDictFormat;
|
|||||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||||
import io.github.linpeilie.annotations.AutoMapper;
|
import io.github.linpeilie.annotations.AutoMapper;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.dromara.system.domain.SysUser;
|
||||||
|
import org.dromara.system.domain.vo.SysUserVo;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
import java.io.Serial;
|
import java.io.Serial;
|
||||||
@ -86,5 +88,7 @@ public class AttendanceUserGroupVo implements Serializable {
|
|||||||
|
|
||||||
private AttendanceScheduleCycle scheduleCycle;
|
private AttendanceScheduleCycle scheduleCycle;
|
||||||
|
|
||||||
|
private SysUserVo sysUser;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.beanutils.BeanUtils;
|
import org.apache.commons.beanutils.BeanUtils;
|
||||||
|
import org.apache.dubbo.config.annotation.DubboReference;
|
||||||
import org.apache.dubbo.config.annotation.DubboService;
|
import org.apache.dubbo.config.annotation.DubboService;
|
||||||
import org.dromara.common.core.utils.MapstructUtils;
|
import org.dromara.common.core.utils.MapstructUtils;
|
||||||
import org.dromara.common.core.utils.StringUtils;
|
import org.dromara.common.core.utils.StringUtils;
|
||||||
@ -17,10 +18,13 @@ import org.dromara.property.domain.*;
|
|||||||
import org.dromara.property.domain.bo.AttendanceArrangementBo;
|
import org.dromara.property.domain.bo.AttendanceArrangementBo;
|
||||||
import org.dromara.property.domain.constant.StatusConstant;
|
import org.dromara.property.domain.constant.StatusConstant;
|
||||||
import org.dromara.property.domain.vo.AttendanceArrangementVo;
|
import org.dromara.property.domain.vo.AttendanceArrangementVo;
|
||||||
|
import org.dromara.property.domain.vo.AttendanceUserGroupVo;
|
||||||
import org.dromara.property.mapper.*;
|
import org.dromara.property.mapper.*;
|
||||||
import org.dromara.property.service.IAttendanceArrangementService;
|
import org.dromara.property.service.IAttendanceArrangementService;
|
||||||
import org.dromara.system.domain.SysUser;
|
import org.dromara.system.domain.SysUser;
|
||||||
|
import org.dromara.system.domain.vo.SysUserVo;
|
||||||
import org.dromara.system.mapper.SysUserMapper;
|
import org.dromara.system.mapper.SysUserMapper;
|
||||||
|
import org.dromara.system.service.ISysUserService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
@ -57,8 +61,8 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
|
|
||||||
private final AttendanceScheduleCycleMapper scheduleCycleMapper;
|
private final AttendanceScheduleCycleMapper scheduleCycleMapper;
|
||||||
|
|
||||||
private final SysUserMapper sysUserMapper;
|
@DubboReference
|
||||||
|
private final ISysUserService sysUserService;
|
||||||
/**
|
/**
|
||||||
* 查询排班
|
* 查询排班
|
||||||
*
|
*
|
||||||
@ -75,7 +79,8 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
vo.setAttendanceGroup(attendanceGroup);
|
vo.setAttendanceGroup(attendanceGroup);
|
||||||
|
|
||||||
//根据id查询排班人员信息
|
//根据id查询排班人员信息
|
||||||
List<AttendanceUserGroup> userGroupList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, id));
|
// List<AttendanceUserGroup> userGroupList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, id));
|
||||||
|
List<AttendanceUserGroupVo> userGroupList = userGroupMapper.selectVoList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, id));
|
||||||
//将排班人员信息添加到排班信息中
|
//将排班人员信息添加到排班信息中
|
||||||
vo.setUserGroupList(userGroupList);
|
vo.setUserGroupList(userGroupList);
|
||||||
return vo;
|
return vo;
|
||||||
@ -100,6 +105,8 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
Page<AttendanceArrangementVo> result = baseMapper.selectVoPage(pageQuery.build(), ge);
|
Page<AttendanceArrangementVo> result = baseMapper.selectVoPage(pageQuery.build(), ge);
|
||||||
|
|
||||||
Page<AttendanceArrangementVo> attendanceArrangementVoPage = result.setRecords(result.getRecords().stream().map(vo -> {
|
Page<AttendanceArrangementVo> attendanceArrangementVoPage = result.setRecords(result.getRecords().stream().map(vo -> {
|
||||||
|
|
||||||
|
|
||||||
//根据当前日期查询在开始时间和结束时间之间的排班信息
|
//根据当前日期查询在开始时间和结束时间之间的排班信息
|
||||||
//从前端查询出来的当前日期,判断是否在排班时间内
|
//从前端查询出来的当前日期,判断是否在排班时间内
|
||||||
if ((bo.getCurrentDate().isAfter(vo.getStartDate()) || bo.getCurrentDate().isEqual(vo.getStartDate())) && (bo.getCurrentDate().isBefore(vo.getEndDate()) || bo.getCurrentDate().isEqual(vo.getEndDate()))) {
|
if ((bo.getCurrentDate().isAfter(vo.getStartDate()) || bo.getCurrentDate().isEqual(vo.getStartDate())) && (bo.getCurrentDate().isBefore(vo.getEndDate()) || bo.getCurrentDate().isEqual(vo.getEndDate()))) {
|
||||||
@ -107,8 +114,20 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
//根据查询出来的result取出shceduleId
|
//根据查询出来的result取出shceduleId
|
||||||
Long scheduleId = vo.getId();
|
Long scheduleId = vo.getId();
|
||||||
//根据排班的id查询出排班的人员详细信息
|
//根据排班的id查询出排班的人员详细信息
|
||||||
List<AttendanceUserGroup> userGroupList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().in(AttendanceUserGroup::getScheduleId, scheduleId));
|
// List<AttendanceUserGroup> userGroupList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().in(AttendanceUserGroup::getScheduleId, scheduleId));
|
||||||
vo.setUserGroupList(userGroupList);
|
List<AttendanceUserGroupVo> userGroupVoList = userGroupMapper.selectVoList(Wrappers.<AttendanceUserGroup>lambdaQuery().in(AttendanceUserGroup::getScheduleId, scheduleId));
|
||||||
|
//通过userGroupList查询出人员的详细信息
|
||||||
|
|
||||||
|
//将userList存到userGroupList中
|
||||||
|
userGroupVoList.forEach(userGroup -> {
|
||||||
|
SysUserVo sysUserVo = sysUserService.selectUserById(userGroup.getEmployeeId());
|
||||||
|
// SysUserVo sysUserVo1 = sysUserService.selectUserById(userGroupVoList.get(0).getEmployeeId());
|
||||||
|
userGroup.setSysUser(sysUserVo);
|
||||||
|
// userGroup.setSysUser(sysUserVo1);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
vo.setUserGroupList(userGroupVoList);
|
||||||
|
|
||||||
//2.查询考勤组信息
|
//2.查询考勤组信息
|
||||||
//根据查询出来的信息取出考勤组的id
|
//根据查询出来的信息取出考勤组的id
|
||||||
@ -261,7 +280,6 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询某个月的日历排班信息的排班列表
|
* 查询某个月的日历排班信息的排班列表
|
||||||
*
|
*
|
||||||
@ -315,16 +333,8 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
// 循环排班列表,查询排班人员信息
|
// 循环排班列表,查询排班人员信息
|
||||||
for (AttendanceArrangementVo vo : result) {
|
for (AttendanceArrangementVo vo : result) {
|
||||||
// 根据排班查询出人员组的详细信息
|
// 根据排班查询出人员组的详细信息
|
||||||
List<AttendanceUserGroup> userGroupList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, vo.getId()));
|
// List<AttendanceUserGroup> userGroupList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, vo.getId()));
|
||||||
|
List<AttendanceUserGroupVo> userGroupList = userGroupMapper.selectVoList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, vo.getId()));
|
||||||
//通过userGroupList查询出人员的详细信息
|
|
||||||
|
|
||||||
//将userList存到userGroupList中
|
|
||||||
userGroupList.forEach(userGroup -> {
|
|
||||||
SysUser sysUser = sysUserMapper.selectById(userGroup.getEmployeeId());
|
|
||||||
userGroup.setSysUser(sysUser);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
// 将排班人员信息添加到排班信息中
|
// 将排班人员信息添加到排班信息中
|
||||||
vo.setUserGroupList(userGroupList);
|
vo.setUserGroupList(userGroupList);
|
||||||
|
|
||||||
@ -454,8 +464,6 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
judgeDate(bo, add);
|
judgeDate(bo, add);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//取出当前新增的排班的id
|
//取出当前新增的排班的id
|
||||||
Long ArrangementId = add.getId();
|
Long ArrangementId = add.getId();
|
||||||
//用获取到的排班id向attendanceUserGroup表中插入数据
|
//用获取到的排班id向attendanceUserGroup表中插入数据
|
||||||
@ -514,10 +522,10 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
Long ArrangementId = update.getId();
|
Long ArrangementId = update.getId();
|
||||||
//根据arrangementId查询出人员组的所有employeeId
|
//根据arrangementId查询出人员组的所有employeeId
|
||||||
List<Long> employeeIdList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, ArrangementId))
|
List<Long> employeeIdList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, ArrangementId))
|
||||||
.stream().map(AttendanceUserGroup::getEmployeeId).toList();
|
.stream().map(AttendanceUserGroup::getEmployeeId).toList();
|
||||||
//根据employeeId和ArrangementId删除attendanceUserGroup表中的数据
|
//根据employeeId和ArrangementId删除attendanceUserGroup表中的数据
|
||||||
userGroupMapper.delete(Wrappers.<AttendanceUserGroup>lambdaQuery().in(AttendanceUserGroup::getEmployeeId, employeeIdList)
|
userGroupMapper.delete(Wrappers.<AttendanceUserGroup>lambdaQuery().in(AttendanceUserGroup::getEmployeeId, employeeIdList)
|
||||||
.eq(AttendanceUserGroup::getScheduleId, ArrangementId));
|
.eq(AttendanceUserGroup::getScheduleId, ArrangementId));
|
||||||
|
|
||||||
//根据排班id获取部门id
|
//根据排班id获取部门id
|
||||||
List<Long> deptIdList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, ArrangementId))
|
List<Long> deptIdList = userGroupMapper.selectList(Wrappers.<AttendanceUserGroup>lambdaQuery().eq(AttendanceUserGroup::getScheduleId, ArrangementId))
|
||||||
@ -602,5 +610,4 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.dubbo.config.annotation.DubboService;
|
||||||
import org.dromara.common.core.constant.CacheNames;
|
import org.dromara.common.core.constant.CacheNames;
|
||||||
import org.dromara.common.core.constant.SystemConstants;
|
import org.dromara.common.core.constant.SystemConstants;
|
||||||
import org.dromara.common.core.exception.ServiceException;
|
import org.dromara.common.core.exception.ServiceException;
|
||||||
@ -44,6 +45,7 @@ import java.util.Map;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Service
|
@Service
|
||||||
|
@DubboService
|
||||||
public class SysUserServiceImpl implements ISysUserService {
|
public class SysUserServiceImpl implements ISysUserService {
|
||||||
|
|
||||||
private final SysUserMapper baseMapper;
|
private final SysUserMapper baseMapper;
|
||||||
|
Loading…
Reference in New Issue
Block a user