Commit 6d4701ee by 刘鑫

Merge branch 'develop-16542' into 'develop'

Develop 16542

See merge request !367
2 parents edeb31c7 ea1a7384
...@@ -9,9 +9,9 @@ public class CalendarDetailDTO { ...@@ -9,9 +9,9 @@ public class CalendarDetailDTO {
@lombok.Data @lombok.Data
public static class Request { public static class Request {
@NotBlank @NotBlank(message = "工程师编号不能为空")
private String engineerCode; private String engineerCode;
@NotBlank @NotBlank(message = "所属计划配置编码不能为空")
private String planId; private String planId;
} }
......
...@@ -113,9 +113,6 @@ public class InitEngineerCapacityScheduler { ...@@ -113,9 +113,6 @@ public class InitEngineerCapacityScheduler {
log.warn("工程师:{}存在日期:{}时间切片记录, 无需初始化", engineerCode, date); log.warn("工程师:{}存在日期:{}时间切片记录, 无需初始化", engineerCode, date);
return; return;
} }
//TODO 日历需要添加
// 查询工程师正常的工作时间 并按小时切片: // 查询工程师正常的工作时间 并按小时切片:
EngineerBusinessEntity businessEntity = engineerBusinessDao.getByEngineerCode(engineerCode); EngineerBusinessEntity businessEntity = engineerBusinessDao.getByEngineerCode(engineerCode);
LocalDateTime workStartTime = DateUtils.localDateTimeFromStr(String.format("%s %s:00", date, businessEntity.getWorkOn())); LocalDateTime workStartTime = DateUtils.localDateTimeFromStr(String.format("%s %s:00", date, businessEntity.getWorkOn()));
......
...@@ -218,7 +218,7 @@ public class BusinessTeamServiceImpl implements BusinessTeamService { ...@@ -218,7 +218,7 @@ public class BusinessTeamServiceImpl implements BusinessTeamService {
public void updateTeamEngineers(OrgTeamEntity targetTeam, List<String> engineerCodes) { public void updateTeamEngineers(OrgTeamEntity targetTeam, List<String> engineerCodes) {
// 获取现有的工作队和技术员之间的所有关系 // 获取现有的工作队和技术员之间的所有关系
final String targetTeamId = String.valueOf(targetTeam.getId()); final String targetTeamId = String.valueOf(targetTeam.getTeamId());
List<String> targetTeamWorkDayOfWeek = List.of(targetTeam.getWorkdays().split(",")); List<String> targetTeamWorkDayOfWeek = List.of(targetTeam.getWorkdays().split(","));
List<OrgTeamEngineerEntity> existingRelations = orgTeamEngineerDao.findAllByTeamId(targetTeamId); List<OrgTeamEngineerEntity> existingRelations = orgTeamEngineerDao.findAllByTeamId(targetTeamId);
...@@ -237,6 +237,7 @@ public class BusinessTeamServiceImpl implements BusinessTeamService { ...@@ -237,6 +237,7 @@ public class BusinessTeamServiceImpl implements BusinessTeamService {
//返回任何一个有工作日冲突的工作队 //返回任何一个有工作日冲突的工作队
List<String> fixedWorkDayOfWeek = List.of(team.getWorkdays().split(",")); List<String> fixedWorkDayOfWeek = List.of(team.getWorkdays().split(","));
List<String> workDays = targetTeamWorkDayOfWeek.stream().filter(dayOfWeek -> fixedWorkDayOfWeek.stream().anyMatch(fixDay -> Objects.equals(fixDay, dayOfWeek))) List<String> workDays = targetTeamWorkDayOfWeek.stream().filter(dayOfWeek -> fixedWorkDayOfWeek.stream().anyMatch(fixDay -> Objects.equals(fixDay, dayOfWeek)))
.map(DateUtils::toWeekChinese)
.collect(Collectors.toList()); .collect(Collectors.toList());
if (!CollectionUtils.isEmpty(workDays)) { if (!CollectionUtils.isEmpty(workDays)) {
warnMessage.add(MessageFormat.format(message, engineerCode, team.getTeamName(), StringUtils.join(workDays, ","))); warnMessage.add(MessageFormat.format(message, engineerCode, team.getTeamName(), StringUtils.join(workDays, ",")));
......
...@@ -613,20 +613,11 @@ public class EngineerCalendarServiceImpl implements EngineerCalendarService { ...@@ -613,20 +613,11 @@ public class EngineerCalendarServiceImpl implements EngineerCalendarService {
private EngineerCalendarDTO.Calendar getEmptyCalendar(String teamId, String date) { private EngineerCalendarDTO.Calendar getEmptyCalendar(String teamId, String date) {
// 初始化一天的日历 // 初始化一天的日历
OrgTeamEntity e = orgTeamDao.getByTeamId(teamId);
EngineerCalendarDTO.Calendar calendar = new EngineerCalendarDTO.Calendar(); EngineerCalendarDTO.Calendar calendar = new EngineerCalendarDTO.Calendar();
calendar.setDate(date); calendar.setDate(date);
int dayOfWeek = LocalDate.parse(date).getDayOfWeek().getValue(); int dayOfWeek = LocalDate.parse(date).getDayOfWeek().getValue();
calendar.setWeek(DateUtils.toWeekChinese(dayOfWeek)); calendar.setWeek(DateUtils.toWeekChinese(dayOfWeek));
List<String> workdays = Arrays.asList(e.getWorkdays().split(",")); calendar.setContent(new ArrayList<>());
if (!workdays.contains(String.valueOf(dayOfWeek))) {
EngineerCalendarDTO.Content content = new EngineerCalendarDTO.Content();
content.setType("REST");
content.setTitle("休息");
calendar.setContent(Collections.singletonList(content));
} else {
calendar.setContent(new ArrayList<>());
}
return calendar; return calendar;
} }
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!