Compare commits

...

2 Commits

Author SHA1 Message Date
dy
f79c5bf59b Merge branch 'master' of http://47.109.37.87:3000/by2025/SmartParks
Some checks are pending
Gitea Actions Demo / Explore-Gitea-Actions (push) Waiting to run
2025-08-12 16:18:35 +08:00
dy
1b64c97626 1 2025-08-12 16:17:54 +08:00
5 changed files with 36 additions and 23 deletions

View File

@@ -66,7 +66,7 @@ public class AttendanceUserGroup extends TenantEntity {
*/ */
private LocalDate endDate; private LocalDate endDate;
private SysUser sysUser; // private SysUser sysUser;
} }

View File

@@ -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;

View File

@@ -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;
} }

View File

@@ -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表中插入数据
@@ -602,5 +610,4 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS
} }
} }

View File

@@ -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;