package com.panzhihua.service_dangjian.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.panzhihua.common.model.vos.R;
|
import com.panzhihua.common.model.vos.partybuilding.PageActivityMembersVO;
|
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingActivityVO;
|
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingMemberVO;
|
import com.panzhihua.service_dangjian.dao.ComBpActivityDAO;
|
import com.panzhihua.service_dangjian.dao.ComPbActivityMemberDAO;
|
import com.panzhihua.service_dangjian.dao.ComPbMemberDAO;
|
import com.panzhihua.service_dangjian.model.dos.ComBpActivityDO;
|
import com.panzhihua.service_dangjian.model.dos.ComPbActivityMemberDO;
|
import com.panzhihua.service_dangjian.model.dos.ComPbMemberDO;
|
import com.panzhihua.service_dangjian.service.ComBpActivityService;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.stereotype.Service;
|
import org.springframework.util.ObjectUtils;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
/**
|
* @program: springcloud_k8s_panzhihuazhihuishequ
|
* @description: 党员活动
|
* @author: huang.hongfa weixin hhf9596 qq 959656820
|
* @create: 2020-12-01 09:16
|
**/
|
@Service
|
public class ComBpActivityServiceImpl implements ComBpActivityService {
|
@Resource
|
private ComBpActivityDAO comBpActivityDAO;
|
@Resource
|
private ComPbActivityMemberDAO comPbActivityMemberDAO;
|
@Resource
|
private ComPbMemberDAO comPbMemberDAO;
|
|
/**
|
* 查询某个党员加入的所有党员活动
|
*
|
* @param partyBuildingActivityVO 查询参数
|
* @return 活动集合
|
*/
|
@Override
|
public R listPartyMemberActivities(PartyBuildingActivityVO partyBuildingActivityVO) {
|
List<PartyBuildingActivityVO> partyBuildingActivityVOS = comBpActivityDAO.listPartyMemberActivities(partyBuildingActivityVO);
|
return R.ok(partyBuildingActivityVOS);
|
}
|
|
/**
|
* 活动报名名单分页查询
|
*
|
* @param pageActivityMembersVO 查询参数 手机号 名字
|
* @return 分页数据
|
*/
|
@Override
|
public R pageActivityMembers(PageActivityMembersVO pageActivityMembersVO) {
|
Page page = new Page<>();
|
Long pageNum = pageActivityMembersVO.getPageNum();
|
Long pageSize = pageActivityMembersVO.getPageSize();
|
if (ObjectUtils.isEmpty(pageNum)) {
|
pageNum = 1l;
|
}
|
if (ObjectUtils.isEmpty(pageSize)) {
|
pageSize = 10l;
|
}
|
page.setSize(pageSize);
|
page.setCurrent(pageNum);
|
IPage<PageActivityMembersVO> iPage = comPbActivityMemberDAO.pageActivityMembers(page, pageActivityMembersVO);
|
return R.ok(iPage);
|
}
|
|
/**
|
* 党员活动详情
|
*
|
* @param id 活动id
|
* @return 活动详情内容
|
*/
|
@Override
|
public R activityinfo(Long id) {
|
ComBpActivityDO comBpActivityDO = comBpActivityDAO.selectById(id);
|
if (ObjectUtils.isEmpty(comBpActivityDO)) {
|
return R.fail();
|
}
|
PartyBuildingActivityVO partyBuildingActivityVO=new PartyBuildingActivityVO();
|
BeanUtils.copyProperties(comBpActivityDO,partyBuildingActivityVO);
|
List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList(new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getActivityId, id));
|
if (!ObjectUtils.isEmpty(comPbActivityMemberDOS)) {
|
List<Long> collect = comPbActivityMemberDOS.stream().map(ComPbActivityMemberDO::getMemberId).collect(Collectors.toList());
|
List<ComPbMemberDO> comPbMemberDOS = comPbMemberDAO.selectList(new QueryWrapper<ComPbMemberDO>().lambda().in(ComPbMemberDO::getId, collect));
|
List<PartyBuildingMemberVO> partyBuildingMemberVOS=new ArrayList<>();
|
comPbMemberDOS.forEach(comPbMemberDO -> {
|
PartyBuildingMemberVO partyBuildingMemberVO=new PartyBuildingMemberVO();
|
BeanUtils.copyProperties(comPbMemberDO,partyBuildingMemberVO);
|
partyBuildingMemberVOS.add(partyBuildingMemberVO);
|
});
|
partyBuildingActivityVO.setPartyBuildingMemberVOS(partyBuildingMemberVOS);
|
}
|
return R.ok(partyBuildingActivityVO);
|
}
|
|
/**
|
* 新增党员活动
|
*
|
* @param partyBuildingActivityVO 参数
|
* @return 新增结果
|
*/
|
@Override
|
public R addactivity(PartyBuildingActivityVO partyBuildingActivityVO) {
|
ComBpActivityDO comBpActivityDO=new ComBpActivityDO();
|
BeanUtils.copyProperties(partyBuildingActivityVO,comBpActivityDO);
|
comBpActivityDO.setCreateAt(new Date());
|
int insert = comBpActivityDAO.insert(comBpActivityDO);
|
if (insert>0) {
|
return R.ok();
|
}
|
return R.fail();
|
}
|
|
/**
|
* 编辑党员活动
|
*
|
* @param partyBuildingActivityVO 编辑内容
|
* @return 编辑结果
|
*/
|
@Override
|
public R updateActivity(PartyBuildingActivityVO partyBuildingActivityVO) {
|
ComBpActivityDO comBpActivityDO=new ComBpActivityDO();
|
BeanUtils.copyProperties(partyBuildingActivityVO,comBpActivityDO);
|
int update = comBpActivityDAO.updateById(comBpActivityDO);
|
if (update>0) {
|
return R.ok();
|
}
|
return R.fail();
|
}
|
|
/**
|
* 发布党员活动
|
*
|
* @param id 主键id
|
* @return 发布结果
|
*/
|
@Override
|
public R releaseActivity(Long id) {
|
ComBpActivityDO comBpActivityDO=new ComBpActivityDO();
|
comBpActivityDO.setId(id);
|
comBpActivityDO.setStatus(2);
|
comBpActivityDO.setReleaseTime(new Date());
|
int update = comBpActivityDAO.updateById(comBpActivityDO);
|
if (update>0) {
|
return R.ok();
|
}
|
return R.fail();
|
}
|
|
/**
|
* 删除党员活动
|
*
|
* @param id 主键id
|
* @return 删除结果
|
*/
|
@Override
|
public R deleteActivity(Long id) {
|
int delete = comBpActivityDAO.deleteById(id);
|
if (delete>0) {
|
return R.ok();
|
}
|
return R.fail();
|
}
|
|
/**
|
* 分页查询党员活动
|
*
|
* @param partyBuildingActivityVO 查询条件
|
* @return 查询结果
|
*/
|
@Override
|
public R pageActivity(PartyBuildingActivityVO partyBuildingActivityVO) {
|
Page page = new Page<>();
|
Long pageNum = partyBuildingActivityVO.getPageNum();
|
Long pageSize = partyBuildingActivityVO.getPageSize();
|
if (ObjectUtils.isEmpty(pageNum)) {
|
pageNum = 1l;
|
}
|
if (ObjectUtils.isEmpty(pageSize)) {
|
pageSize = 10l;
|
}
|
page.setSize(pageSize);
|
page.setCurrent(pageNum);
|
IPage<PageActivityMembersVO> iPage = comBpActivityDAO.pageActivity(page, partyBuildingActivityVO);
|
return R.ok(iPage);
|
}
|
|
/**
|
* 取消活动
|
*
|
* @param partyBuildingActivityVO 取消原因
|
* @return 操作结果
|
*/
|
@Override
|
public R cancelActivity(PartyBuildingActivityVO partyBuildingActivityVO) {
|
ComBpActivityDO comBpActivityDO=new ComBpActivityDO();
|
comBpActivityDO.setId(partyBuildingActivityVO.getId());
|
comBpActivityDO.setCancelReason(partyBuildingActivityVO.getCancelReason());
|
comBpActivityDO.setCreateBy(partyBuildingActivityVO.getCreateBy());
|
int update = comBpActivityDAO.updateById(comBpActivityDO);
|
if (update>0) {
|
return R.ok();
|
}
|
return R.fail();
|
}
|
|
|
}
|