package com.panzhihua.service_dangjian.service.impl;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.panzhihua.common.model.dtos.partybuilding.NeedProblemInventoryDTO;
|
import com.panzhihua.common.model.dtos.partybuilding.UserRankDTO;
|
import com.panzhihua.common.model.vos.R;
|
import com.panzhihua.common.model.vos.jinhui.JinhuiExperienceActivityVO;
|
import com.panzhihua.common.model.vos.user.SysUserVO;
|
import com.panzhihua.common.service.user.UserService;
|
import com.panzhihua.common.utlis.StringUtils;
|
import com.panzhihua.common.utlis.WxUtil;
|
import com.panzhihua.common.utlis.WxXCXTempSend;
|
import com.panzhihua.service_dangjian.dao.NeedProblemInventoryDAO;
|
import com.panzhihua.service_dangjian.dao.NewStriveForDAO;
|
import com.panzhihua.service_dangjian.service.NeedProblemInventoryService;
|
import com.panzhihua.service_dangjian.service.NewStriveForService;
|
import org.springframework.stereotype.Service;
|
import org.springframework.util.CollectionUtils;
|
|
import javax.annotation.Resource;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @program: springcloud_k8s_panzhihuazhihuishequ
|
* @description: 党组织
|
* @author: huang.hongfa weixin hhf9596 qq 959656820
|
* @create: 2020-11-30 11:40
|
**/
|
@Service
|
public class NeedProblemInventoryServiceImpl extends ServiceImpl<NeedProblemInventoryDAO, NeedProblemInventoryDTO>
|
implements NeedProblemInventoryService
|
{
|
|
@Resource
|
private UserService userService;
|
|
@Override
|
public IPage<NeedProblemInventoryDTO> getList(int pageNum, int pageSize,String search,String classifyId,String status,
|
String kind,
|
String userId,
|
String userIds,
|
String isDisplay,
|
String communityId,
|
Date startTime,
|
Date endTime)
|
{
|
Page page = new Page<>(pageNum,pageSize);
|
return baseMapper.getList(page, search, classifyId,status,kind,userId,userIds,isDisplay,communityId,startTime,endTime);
|
}
|
|
@Override
|
public IPage<NeedProblemInventoryDTO> getMyJoinList(int pageNum, int pageSize,String search,String status,
|
String kind,
|
String userIds,
|
String isDisplay,
|
String userId,
|
Date startTime,
|
Date endTime) {
|
Page page = new Page<>(pageNum,pageSize);
|
return baseMapper.getMyJoinList(page, search, status,kind,userIds,isDisplay,userId,startTime,endTime);
|
}
|
|
@Override
|
public NeedProblemInventoryDTO getDetails(String id,String userIds)
|
{
|
NeedProblemInventoryDTO item=baseMapper.getDetails(id,userIds);
|
|
if(item!=null)
|
{
|
//当前时间
|
long newTime = System.currentTimeMillis();
|
//活动报名时间
|
long applyStartTime = item.getClaimStartTime().getTime();
|
//报名结束时间
|
long applyEndTime = item.getClaimEndTime().getTime();
|
//活动开始时间
|
long activityStartTime = item.getNeedStartTime().getTime();
|
//活动结束时间
|
long activityEndTime = item.getNeedEndTime().getTime();
|
|
|
switch (item.getStatus()) {
|
//待开始
|
case "1":
|
if (newTime > applyEndTime) {
|
//报名结束
|
NeedProblemInventoryDTO vo = new NeedProblemInventoryDTO();
|
vo.setId(item.getId());
|
vo.setStatus("2");
|
item.setStatus("2");
|
baseMapper.editData(vo);
|
}
|
|
break;
|
//报名中
|
case "2":
|
if (newTime > activityEndTime) {
|
NeedProblemInventoryDTO vo = new NeedProblemInventoryDTO();
|
vo.setId(item.getId());
|
vo.setStatus("3");
|
item.setStatus("3");
|
baseMapper.editData(vo);
|
}
|
break;
|
//已开始
|
case "3":
|
|
break;
|
}
|
|
}
|
return item;
|
}
|
|
@Override
|
public int addData(NeedProblemInventoryDTO item)
|
{
|
item.setStatus("1");
|
int num=baseMapper.addData(item);
|
//1问题清单 2需求清单
|
// if(num>0)
|
// {
|
// List<String> openIdList=baseMapper.getOpenIdList(item.getCommunityId());
|
// if(openIdList==null || openIdList.size()<=0)
|
// {
|
// return num;
|
// }
|
// if(item.getKind().equals("1"))
|
// {
|
// WxXCXTempSend util = new WxXCXTempSend();
|
// try {
|
// for (String str:openIdList)
|
// {
|
// WxUtil.sendLongTimeTemplate(str,util.getAccessToken(),"问题清单发布提醒",item.getTitle(),"/packageH/pages/problemDetail/problemDetail?type=1&id="+item.getId());
|
// }
|
// } catch (Exception e) {
|
// e.printStackTrace();
|
// return num;
|
// }
|
// }
|
// else
|
// {
|
// WxXCXTempSend util = new WxXCXTempSend();
|
// try {
|
// for (String str:openIdList)
|
// {
|
// WxUtil.sendLongTimeTemplate(str,util.getAccessToken(),"需求清单发布提醒",item.getTitle(),"/packageH/pages/problemDetail/problemDetail?type=2&id="+item.getId());
|
// }
|
// } catch (Exception e) {
|
// e.printStackTrace();
|
// return num;
|
// }
|
// }
|
// }
|
return num;
|
}
|
|
@Override
|
public int editData(NeedProblemInventoryDTO item) {
|
return baseMapper.editData(item);
|
}
|
|
@Override
|
public int expurgateData(String id) {
|
return baseMapper.expurgateData(id);
|
}
|
|
@Override
|
public R timedNewFightNeedProblemInventoryHandler() {
|
// 定时任务
|
List<NeedProblemInventoryDTO> list = baseMapper.getTimeList();
|
int num=0;
|
int num2=0;
|
|
for (NeedProblemInventoryDTO item : list) {
|
//当前时间
|
long newTime = System.currentTimeMillis();
|
//活动报名时间
|
long applyStartTime = item.getClaimStartTime().getTime();
|
//报名结束时间
|
long applyEndTime = item.getClaimEndTime().getTime();
|
//活动开始时间
|
long activityStartTime = item.getNeedStartTime().getTime();
|
//活动结束时间
|
long activityEndTime = item.getNeedEndTime().getTime();
|
|
|
switch (item.getStatus()) {
|
//待开始
|
case "1":
|
if (newTime > applyEndTime) {
|
//报名结束
|
NeedProblemInventoryDTO vo = new NeedProblemInventoryDTO();
|
vo.setId(item.getId());
|
vo.setStatus("2");
|
baseMapper.editData(vo);
|
num++;
|
}
|
|
break;
|
//报名中
|
case "2":
|
if (newTime > activityEndTime) {
|
NeedProblemInventoryDTO vo = new NeedProblemInventoryDTO();
|
vo.setId(item.getId());
|
vo.setStatus("3");
|
baseMapper.editData(vo);
|
num2++;
|
}
|
break;
|
//已开始
|
case "3":
|
|
break;
|
}
|
|
}
|
return R.ok(num+" "+num2);
|
}
|
}
|