use of com.ch999.haha.admin.entity.News in project haha by hahafreeasair666.
the class CreditComponent method newsHandle.
private void newsHandle(Adoption li, AdoptionSuccessNewsVO adoptionSuccessNewsVO, Integer times) {
long date = new Date().getTime();
switch(times) {
case 1:
if (date > adoptionSuccessNewsVO.getTime1().getTime()) {
Wrapper<News> newsWrapper = new EntityWrapper<>();
newsWrapper.eq("parentid", li.getAdoptionId()).lt("createtime", adoptionSuccessNewsVO.getTime1());
List<News> news = newsService.selectList(newsWrapper);
// 到时间没写就减10分信誉分
if (CollectionUtils.isEmpty(news)) {
updateUserCredit(li.getUserId(), 10, false);
// 写了就加5分
} else {
updateUserCredit(li.getUserId(), 5, true);
}
li.setFirstHandle(true);
}
break;
case 2:
if (date > adoptionSuccessNewsVO.getTime2().getTime()) {
Wrapper<News> newsWrapper = new EntityWrapper<>();
newsWrapper.eq("parentid", li.getAdoptionId()).lt("createtime", adoptionSuccessNewsVO.getTime2());
List<News> news = newsService.selectList(newsWrapper);
// 到时间没写就减10分信誉分
if (CollectionUtils.isEmpty(news)) {
updateUserCredit(li.getUserId(), 10, false);
// 写了就加5分
} else {
updateUserCredit(li.getUserId(), 5, true);
}
li.setSecondHandle(true);
}
break;
case 3:
if (date > adoptionSuccessNewsVO.getTime3().getTime()) {
Wrapper<News> newsWrapper = new EntityWrapper<>();
newsWrapper.eq("parentid", li.getAdoptionId()).lt("createtime", adoptionSuccessNewsVO.getTime3());
List<News> news = newsService.selectList(newsWrapper);
// 到时间没写就减10分信誉分
if (CollectionUtils.isEmpty(news)) {
updateUserCredit(li.getUserId(), 10, false);
} else {
// 写了就加5分
updateUserCredit(li.getUserId(), 5, true);
}
li.setThirdHandle(true);
}
break;
default:
break;
}
}
use of com.ch999.haha.admin.entity.News in project haha by hahafreeasair666.
the class AdoptionRequestServiceImpl method getMyAdoptionList.
@Override
public PageVO<MyAdoptionVO> getMyAdoptionList(Integer userId, Integer currentPage) {
Integer size = 10;
Wrapper<AdoptionRequest> wrapper = new EntityWrapper<>();
wrapper.eq("userid", userId);
List<MyAdoptionVO> list = new ArrayList<>();
List<AdoptionRequest> adoptionRequests = this.selectList(wrapper);
PageVO<MyAdoptionVO> pageVO = new PageVO<>();
pageVO.setTotalPage((int) Math.ceil(adoptionRequests.size() / (double) size));
pageVO.setCurrentPage(currentPage);
if (CollectionUtils.isNotEmpty(adoptionRequests)) {
if (adoptionRequests.size() > size * (currentPage - 1)) {
adoptionRequests = adoptionRequests.subList(size * (currentPage - 1), size * currentPage > adoptionRequests.size() ? adoptionRequests.size() : size * currentPage);
} else {
adoptionRequests = new ArrayList<>();
}
adoptionRequests.forEach(li -> {
News news = newsService.selectById(li.getNewsId());
MyAdoptionVO myAdoptionVO = new MyAdoptionVO();
myAdoptionVO.setNewsId(li.getNewsId());
myAdoptionVO.setTitle(news.getTitle());
// 组装领养成功与否状态
Adoption adoption = adoptionService.selectOne(new EntityWrapper<Adoption>().eq("adoptionid", li.getNewsId()));
if (adoption.getIsAdoption()) {
myAdoptionVO.setIsSuccess(adoption.getUserId().equals(userId) ? 1 : 2);
} else {
myAdoptionVO.setIsSuccess(0);
}
myAdoptionVO.setPic(getOnePicPath(news));
list.add(myAdoptionVO);
});
}
pageVO.setList(list);
return pageVO;
}
use of com.ch999.haha.admin.entity.News in project haha by hahafreeasair666.
the class CreditComponent method timedTaskOfZan.
/*@Scheduled(fixedRate = 5000*1)
public void testTimedTask(){
System.out.println("哈哈自在如风");
}*/
/**
* 对反馈公告的赞进行每日赞数量检测进行发布者信用积分的修改
*/
@Scheduled(cron = "0 0 0 * * ?")
public void timedTaskOfZan() {
try {
// 对收养反馈公告的赞数量进行发布者信用积分改变
Wrapper<AdoptionFeedBack> wrapper = new EntityWrapper<>();
adoptionFeedBackService.selectList(wrapper).forEach(li -> {
News news = newsService.selectById(li.getNewsId());
if (news.getZan() > li.getLastTimeZan()) {
updateUserCredit(news.getCreateUserId(), getNumber(news.getZan() - li.getLastTimeZan()), true);
li.setLastTimeZan(news.getZan());
adoptionFeedBackService.updateById(li);
}
});
// 对成功收养的反馈公告进行检查对信用积分改变
Wrapper<Adoption> wrapper1 = new EntityWrapper<>();
wrapper1.eq("isadoption", 1);
adoptionService.selectList(wrapper1).forEach(li -> {
AdoptionSuccessNewsVO adoptionSuccessNewsVO = adoptionMapper.checkUserIsSendNews(li.getId());
// 第一次
if (!li.getFirstHandle()) {
newsHandle(li, adoptionSuccessNewsVO, 1);
// 第二次
} else if (!li.getSecondHandle()) {
newsHandle(li, adoptionSuccessNewsVO, 2);
// 第三次
} else if (!li.getThirdHandle()) {
newsHandle(li, adoptionSuccessNewsVO, 3);
}
adoptionService.updateById(li);
});
log.info("定时任务处理完毕 " + new Date());
} catch (Exception e) {
log.error("拉闸,定时任务异常..............");
}
}
use of com.ch999.haha.admin.entity.News in project haha by hahafreeasair666.
the class AdoptionRequestServiceImpl method handleAdoptionInfo.
@Override
public Boolean handleAdoptionInfo(Integer loginUserId, Integer adoptionId, Integer userId) {
News news = newsService.selectById(adoptionId);
if (news == null || !news.getCreateUserId().equals(loginUserId) || !news.getIsAdoptionNews()) {
return null;
}
Wrapper<Adoption> wrapper = new EntityWrapper<>();
wrapper.eq("adoptionid", adoptionId).eq("isadoption", 0);
List<Adoption> adoptions = adoptionService.selectList(wrapper);
if (CollectionUtils.isNotEmpty(adoptions)) {
Wrapper<AdoptionRequest> wrapper1 = new EntityWrapper<>();
wrapper1.eq("newsid", adoptionId).eq("userid", userId);
List<AdoptionRequest> adoptionRequests = this.selectList(wrapper1);
if (CollectionUtils.isEmpty(adoptionRequests)) {
return null;
}
adoptionRequests.get(0).setIsSuccess(true);
adoptions.get(0).setIsAdoption(true);
adoptions.get(0).setUserId(userId);
adoptions.get(0).setAdoptionTime(new Date());
return this.updateById(adoptionRequests.get(0)) && adoptionService.updateById(adoptions.get(0));
}
return null;
}
use of com.ch999.haha.admin.entity.News in project haha by hahafreeasair666.
the class NewsServiceImpl method getNewsById.
@Override
public NewsDetailVO getNewsById(Integer id, Integer userId) {
NewsDetailVO newsDetailVO = newsMapper.selectNewsDetail(id);
if (newsDetailVO != null) {
// 是否已赞
if (userId != null && newsDetailVO.getZan() > 0) {
CommentZanBO one = commentZanRepository.findOne(id.toString());
if (one != null && one.getZanUserList().stream().anyMatch(userId::equals)) {
newsDetailVO.setIsPraised(true);
} else {
newsDetailVO.setIsPraised(false);
}
} else {
newsDetailVO.setIsPraised(false);
}
// 是否能收藏
Wrapper<NewsCollections> wrapper = new EntityWrapper<>();
wrapper.eq("userid", userId).eq("newid", id);
if (newsCollectionsService.selectCount(wrapper) > 0) {
newsDetailVO.setIsCanCollection(false);
} else {
newsDetailVO.setIsCanCollection(true);
}
if (StringUtils.isNotBlank(newsDetailVO.getPic())) {
String[] split = newsDetailVO.getPic().split(",");
List<String> imgMap = new ArrayList<>();
List<Imgs> imgs = imgsService.selectBatchIds(Arrays.asList(split));
imgs.forEach(li -> imgMap.add(li.getImgUrl()));
newsDetailVO.setPicMap(imgMap);
}
// 是否能收养
Wrapper<Adoption> wrapper1 = new EntityWrapper<>();
wrapper1.eq("adoptionid", newsDetailVO.getId()).eq("isadoption", 0);
if (CollectionUtils.isNotEmpty(adoptionService.selectList(wrapper1))) {
newsDetailVO.setIsCanAdoption(true);
} else {
newsDetailVO.setIsCanAdoption(false);
}
// 组装父公告id
if (newsDetailVO.getParentId() != null) {
News news = this.selectById(newsDetailVO.getParentId());
Map<String, Object> map = new HashMap<>();
map.put("id", news.getId());
map.put("title", news.getTitle());
newsDetailVO.setParentNews(map);
}
// 组装反馈公告id
List<News> news = this.selectList(new EntityWrapper<News>().eq("parentid", id).orderBy("createtime", false));
if (CollectionUtils.isNotEmpty(news)) {
Map<String, Object> map = new HashMap<>();
map.put("id", news.get(0).getId());
map.put("title", news.get(0).getTitle());
newsDetailVO.setFeedBackNews(map);
}
}
return newsDetailVO;
}
Aggregations