Commit beeabda8 authored by shiyu's avatar shiyu

首页

parent 2775663c
...@@ -12,6 +12,8 @@ public class SignInTaskRequestDto extends BaseRequestDto implements Entity { ...@@ -12,6 +12,8 @@ public class SignInTaskRequestDto extends BaseRequestDto implements Entity {
private Long id; private Long id;
private Long userId;
/** /**
* 签到任务名称 * 签到任务名称
*/ */
......
...@@ -40,6 +40,11 @@ public class SignInTaskVo implements Entity { ...@@ -40,6 +40,11 @@ public class SignInTaskVo implements Entity {
*/ */
private Date signInEndTime; private Date signInEndTime;
/**
* 签到时间段
*/
private String signInTime;
/** /**
* 打卡目标天数 * 打卡目标天数
*/ */
...@@ -94,4 +99,19 @@ public class SignInTaskVo implements Entity { ...@@ -94,4 +99,19 @@ public class SignInTaskVo implements Entity {
* 今天是否签到 * 今天是否签到
*/ */
private Boolean isTodaySignIn = false; private Boolean isTodaySignIn = false;
/**
* 连续天数
*/
private Integer consecutiveDays;
/**
* 累计签到天数
*/
private Integer totalDays;
/**
* 领取奖励的标准
*/
private String goalDesc;
} }
package com.wwdz.ch.wx.impl.qiandao; package com.wwdz.ch.wx.impl.qiandao;
import com.wwdz.ch.core.consts.CommConsts;
import com.wwdz.ch.core.consts.qiandao.SignInTaskEnum; import com.wwdz.ch.core.consts.qiandao.SignInTaskEnum;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dao.UserSignInDao;
import com.wwdz.ch.db.dao.qiandao.QdUserSignInDao;
import com.wwdz.ch.db.dao.qiandao.QdUserSignInTaskDao;
import com.wwdz.ch.db.dao.qiandao.SignInTaskDao; import com.wwdz.ch.db.dao.qiandao.SignInTaskDao;
import com.wwdz.ch.db.domain.UserSignIn;
import com.wwdz.ch.db.domain.qiandao.QdUserSignIn;
import com.wwdz.ch.db.domain.qiandao.SignInTask; import com.wwdz.ch.db.domain.qiandao.SignInTask;
import com.wwdz.ch.db.dto.request.qiandao.SignInTaskRequestDto; import com.wwdz.ch.db.dto.request.qiandao.SignInTaskRequestDto;
import com.wwdz.ch.wx.entity.vo.qiandao.SignInTaskVo;
import com.wwdz.ch.wx.service.qiandao.QdSignInTaskService; import com.wwdz.ch.wx.service.qiandao.QdSignInTaskService;
import com.xxdxxs.utils.EntityMapper;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
import java.util.Date; import java.util.Date;
import java.util.List;
@Service @Service
public class QdSignInTaskServiceImpl implements QdSignInTaskService { public class QdSignInTaskServiceImpl implements QdSignInTaskService {
...@@ -21,6 +32,12 @@ public class QdSignInTaskServiceImpl implements QdSignInTaskService { ...@@ -21,6 +32,12 @@ public class QdSignInTaskServiceImpl implements QdSignInTaskService {
@Autowired @Autowired
SignInTaskDao signInTaskDao; SignInTaskDao signInTaskDao;
@Autowired
QdUserSignInTaskDao qdUserSignInTaskDao;
@Autowired
QdUserSignInDao qdUserSignInDao;
@Override @Override
public Result add(SignInTaskRequestDto dto) { public Result add(SignInTaskRequestDto dto) {
try { try {
...@@ -38,4 +55,49 @@ public class QdSignInTaskServiceImpl implements QdSignInTaskService { ...@@ -38,4 +55,49 @@ public class QdSignInTaskServiceImpl implements QdSignInTaskService {
} }
return Result.failed(); return Result.failed();
} }
@Override
public Result findListForHomePage(SignInTaskRequestDto dto) {
try {
dto.setCreatorId(CommConsts.SYSTEM_ACCOUNT.longValue());
dto.setLimit(6);
List<SignInTask> signInTaskList = signInTaskDao.findByPage(dto);
return Result.success(signInTaskList);
} catch (Exception e) {
logger.error("首页查询签到任务失败 error :{}", e);
}
return Result.failed();
}
@Override
public Result findList(SignInTaskRequestDto dto) {
return null;
}
@Override
public Result findDetail(SignInTaskRequestDto dto) {
try {
long taskId = dto.getId();
SignInTask signInTask = signInTaskDao.findById(taskId);
long joinNum = qdUserSignInTaskDao.countByTaskId(taskId);
SignInTaskVo signInTaskVo = new SignInTaskVo();
EntityMapper.copyAttribute(signInTask, signInTaskVo);
signInTaskVo.setJoinPeopleNum(joinNum);
SimpleDateFormat timeFormat = new SimpleDateFormat("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);
}
QdUserSignIn qdUserSignIn = qdUserSignInDao.findLastedRecord(dto.getUserId(), taskId);
return Result.success();
} catch (Exception e) {
logger.error("查询签到任务详情 error:{}", e);
}
return Result.failed();
}
} }
...@@ -43,7 +43,6 @@ public class QdUserSignInNoteServiceImpl implements QdUserSignInNoteService { ...@@ -43,7 +43,6 @@ public class QdUserSignInNoteServiceImpl implements QdUserSignInNoteService {
@Override @Override
public Result findSignInNoteList(QdUserSignInNoteRequestDto dto) { public Result findSignInNoteList(QdUserSignInNoteRequestDto dto) {
try { try {
long userId = dto.getUserId();
//查询多有动态,查询时剔除指定用户 //查询多有动态,查询时剔除指定用户
if (!dto.getOnlySelf()) { if (!dto.getOnlySelf()) {
dto.setUserId(null); dto.setUserId(null);
...@@ -55,7 +54,7 @@ public class QdUserSignInNoteServiceImpl implements QdUserSignInNoteService { ...@@ -55,7 +54,7 @@ public class QdUserSignInNoteServiceImpl implements QdUserSignInNoteService {
QdSignInNoteVo qdSignInNoteVo = new QdSignInNoteVo(); QdSignInNoteVo qdSignInNoteVo = new QdSignInNoteVo();
EntityMapper.copyAttribute(qdUserSignInNote, qdSignInNoteVo); EntityMapper.copyAttribute(qdUserSignInNote, qdSignInNoteVo);
qdSignInNoteVo.setImageList(Arrays.asList(qdUserSignInNote.getImage().split(";"))); qdSignInNoteVo.setImageList(Arrays.asList(qdUserSignInNote.getImage().split(";")));
QdUser qdUser = qdUserDao.queryById(userId); QdUser qdUser = qdUserDao.queryById(qdUserSignInNote.getUserId());
qdSignInNoteVo.setUserAvatar(qdSignInNoteVo.getUserAvatar()); qdSignInNoteVo.setUserAvatar(qdSignInNoteVo.getUserAvatar());
qdSignInNoteVo.setUserName(qdUser.getNickName()); qdSignInNoteVo.setUserName(qdUser.getNickName());
long diffInMillies = Math.abs(new Date().getTime() - qdUserSignInNote.getCreateTime().getTime()); long diffInMillies = Math.abs(new Date().getTime() - qdUserSignInNote.getCreateTime().getTime());
......
package com.wwdz.ch.wx.impl.qiandao;
import com.wwdz.ch.core.consts.CommConsts;
import com.wwdz.ch.core.consts.qiandao.SignInTaskEnum;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dao.qiandao.SignInTaskDao;
import com.wwdz.ch.db.domain.qiandao.SignInTask;
import com.wwdz.ch.db.dto.request.qiandao.SignInTaskRequestDto;
import com.wwdz.ch.wx.service.qiandao.SignInTaskService;
import com.xxdxxs.utils.EntityMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class SignInTaskServiceImpl implements SignInTaskService {
private static final Logger logger = LoggerFactory.getLogger(SignInTaskServiceImpl.class);
@Autowired
SignInTaskDao signInTaskDao;
@Override
public Result add(SignInTaskRequestDto dto) {
try {
SignInTask signInTask = new SignInTask();
EntityMapper.copyAttribute(dto, signInTask);
signInTask.setState(SignInTaskEnum.StateEnum.NOT_START.getCode());
signInTaskDao.insert(signInTask);
return Result.success();
} catch (Exception e) {
logger.error("新增签到任务失败 error :{}", e);
}
return Result.failed();
}
@Override
public Result findListForHomePage(SignInTaskRequestDto dto) {
try {
dto.setCreatorId(CommConsts.SYSTEM_ACCOUNT.longValue());
dto.setLimit(6);
List<SignInTask> signInTaskList = signInTaskDao.findByPage(dto);
return Result.success(signInTaskList);
} catch (Exception e) {
logger.error("首页查询签到任务失败 error :{}", e);
}
return Result.failed();
}
@Override
public Result findList(SignInTaskRequestDto dto) {
try {
} catch (Exception e) {
logger.error("查询签到任务失败 error : {}", e);
}
return Result.failed();
}
}
...@@ -11,4 +11,27 @@ public interface QdSignInTaskService { ...@@ -11,4 +11,27 @@ public interface QdSignInTaskService {
* @return * @return
*/ */
Result add(SignInTaskRequestDto dto); Result add(SignInTaskRequestDto dto);
/**
* 首页查询签到任务
* @param dto
* @return
*/
Result findListForHomePage(SignInTaskRequestDto dto);
/**
* 查询签到任务
* @param dto
* @return
*/
Result findList(SignInTaskRequestDto dto);
/**
* 查询签到任务详情
* @param dto
* @return
*/
Result findDetail(SignInTaskRequestDto dto);
} }
package com.wwdz.ch.wx.service.qiandao;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dto.request.qiandao.SignInTaskRequestDto;
public interface SignInTaskService {
/**
* 新增签到任务
* @param dto
* @return
*/
Result add(SignInTaskRequestDto dto);
/**
* 首页查询签到任务
* @param dto
* @return
*/
Result findListForHomePage(SignInTaskRequestDto dto);
/**
* 查询签到任务
* @param dto
* @return
*/
Result findList(SignInTaskRequestDto dto);
}
...@@ -40,4 +40,22 @@ public class QdSignInTaskController { ...@@ -40,4 +40,22 @@ public class QdSignInTaskController {
} }
return qdSignInTaskService.add(dto); return qdSignInTaskService.add(dto);
} }
@ApiOperation(value = "查询签到任务详情")
@PostMapping("/findDetail")
public Result findDetail(@RequestBody SignInTaskRequestDto dto) {
logger.info("【请求开始】查询签到任务详情,请求参数:{}", JSON.toJSONString(dto));
Validator validator = new Validator(FormHandler.ofEntity(dto));
validator.set("userId", "用户id").must().number()
.set("taskId", "任务id").must().number()
.end();
if (!validator.isValid()) {
return Result.failed(ResultCode.PARAM_ERROR);
}
return qdSignInTaskService.findDetail(dto);
}
} }
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