Commit 48a15beb authored by shiyu's avatar shiyu

查询签到信息4

parent 15f532a6
......@@ -119,4 +119,10 @@ public class SignInTaskVo implements Entity {
* 是否已参加
*/
private Boolean isJoin = false;
/**
* 是否可以签到
* 在规定的时间段内
*/
private Boolean isSignInAble = true;
}
......@@ -22,6 +22,9 @@ import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Date;
......@@ -100,18 +103,29 @@ public class QdSignInTaskServiceImpl implements QdSignInTaskService {
@Override
public Result findDetail(SignInTaskRequestDto dto) {
try {
SignInTaskVo signInTaskVo = new SignInTaskVo();
long taskId = dto.getId();
SignInTask signInTask = signInTaskDao.findById(taskId);
LocalDateTime now = LocalDateTime.now();
long joinNum = qdUserSignInTaskDao.countByTaskId(taskId);
SignInTaskVo signInTaskVo = new SignInTaskVo();
EntityMapper.copyAttribute(signInTask, signInTaskVo);
signInTaskVo.setJoinPeopleNum(joinNum);
SimpleDateFormat timeFormat = new SimpleDateFormat("H:mm");
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("H:mm");
if (signInTask.getSignInStartTime() != null && signInTask.getSignInEndTime() != null) {
String start = timeFormat.format(signInTask.getSignInStartTime());
String end = timeFormat.format(signInTask.getSignInEndTime());
String timeRange = "每天" + start + " - " + end;
signInTaskVo.setSignInTime(timeRange);
LocalTime localTime = LocalTime.parse(start, dateTimeFormatter);
LocalDate today = LocalDate.now();
LocalDateTime todayStartTime = today.atTime(localTime);
LocalTime endlocalTime = LocalTime.parse(end, dateTimeFormatter);
LocalDateTime todayEndTime = today.atTime(endlocalTime);
if (now.isBefore(todayStartTime) || now.isAfter(todayEndTime)) {
signInTaskVo.setIsSignInAble(false);
}
}
QdUserSignIn qdUserSignIn = qdUserSignInDao.findLastedRecord(dto.getUserId(), taskId);
if (qdUserSignIn != null) {
......
......@@ -19,6 +19,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
@Service
......@@ -59,6 +63,8 @@ public class QdUserSignInTaskServiceImpl implements QdUserSignInTaskService {
@Override
public Result findTaskList(QdUserSignInTaskRequestDto dto) {
try {
LocalDateTime now = LocalDateTime.now();
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("H:mm");
Map<String, Object> map = new HashMap<>();
SimpleDateFormat timeFormat = new SimpleDateFormat("H:mm");
List<SignInTaskVo> selfTaskVoList = new ArrayList<>();
......@@ -78,6 +84,14 @@ public class QdUserSignInTaskServiceImpl implements QdUserSignInTaskService {
String end = timeFormat.format(signInTask.getSignInEndTime());
String timeRange = "每天" + start + " - " + end;
signInTaskVo.setSignInTime(timeRange);
LocalTime localTime = LocalTime.parse(start, dateTimeFormatter);
LocalDate today = LocalDate.now();
LocalDateTime todayStartTime = today.atTime(localTime);
LocalTime endlocalTime = LocalTime.parse(end, dateTimeFormatter);
LocalDateTime todayEndTime = today.atTime(endlocalTime);
if (now.isBefore(todayStartTime) || now.isAfter(todayEndTime)) {
signInTaskVo.setIsSignInAble(false);
}
}
selfTaskVoList.add(signInTaskVo);
}
......@@ -102,6 +116,14 @@ public class QdUserSignInTaskServiceImpl implements QdUserSignInTaskService {
String end = timeFormat.format(signInTask.getSignInEndTime());
String timeRange = "每天" + start + " - " + end;
signInTaskVo.setSignInTime(timeRange);
LocalTime localTime = LocalTime.parse(start, dateTimeFormatter);
LocalDate today = LocalDate.now();
LocalDateTime todayStartTime = today.atTime(localTime);
LocalTime endlocalTime = LocalTime.parse(end, dateTimeFormatter);
LocalDateTime todayEndTime = today.atTime(endlocalTime);
if (now.isBefore(todayStartTime) || now.isAfter(todayEndTime)) {
signInTaskVo.setIsSignInAble(false);
}
}
otherTaskVoList.add(signInTaskVo);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment