| | |
| | | package com.yeshi.makemoney.app.service.impl.team; |
| | | |
| | | import java.lang.Exception; |
| | | import javax.annotation.Resource; |
| | | import org.springframework.stereotype.Service; |
| | | import java.util.Date; |
| | | import org.yeshi.utils.bean.BeanUtil; |
| | | import java.util.List; |
| | | import com.yeshi.makemoney.app.dao.team.TeamInviteRelationMapper; |
| | | import com.yeshi.makemoney.app.dao.team.TeamInviteRelationMapper.DaoQuery; |
| | | import com.yeshi.makemoney.app.entity.team.TeamInviteRelation; |
| | | import com.yeshi.makemoney.app.exception.team.TeamInviteRelationException; |
| | | import com.yeshi.makemoney.app.service.inter.team.TeamInviteRelationService; |
| | | import com.yeshi.makemoney.app.service.query.team.TeamInviteRelationQuery; |
| | | import com.yeshi.makemoney.app.dao.team.TeamInviteRelationMapper.DaoQuery; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.yeshi.utils.bean.BeanUtil; |
| | | |
| | | import org.springframework.data.mongodb.core.query.Criteria; |
| | | import org.springframework.data.mongodb.core.query.Query; |
| | | import javax.annotation.Resource; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | @Service |
| | | public class TeamInviteRelationServiceImpl implements TeamInviteRelationService{ |
| | | public class TeamInviteRelationServiceImpl implements TeamInviteRelationService { |
| | | |
| | | @Resource |
| | | private TeamInviteRelationMapper teamInviteRelationMapper; |
| | | @Resource |
| | | private TeamInviteRelationMapper teamInviteRelationMapper; |
| | | |
| | | @Override |
| | | public List<TeamInviteRelation> list(TeamInviteRelationQuery teamInviteRelationQuery, int page, int pageSize) { |
| | | DaoQuery daoQuery = new DaoQuery(); |
| | | try { |
| | | BeanUtil.copyProperties(teamInviteRelationQuery, daoQuery); |
| | | } catch (IllegalAccessException e) { |
| | | e.printStackTrace(); |
| | | @Override |
| | | public List<TeamInviteRelation> list(TeamInviteRelationQuery teamInviteRelationQuery, int page, int pageSize) { |
| | | DaoQuery daoQuery = new DaoQuery(); |
| | | daoQuery.minCreateTime = teamInviteRelationQuery.toStartTime(); |
| | | daoQuery.maxCreateTime = teamInviteRelationQuery.toEndTime(); |
| | | if (teamInviteRelationQuery.getBoss() != null) { |
| | | if (teamInviteRelationQuery.getBoss()) { |
| | | daoQuery.uid = teamInviteRelationQuery.getUid(); |
| | | } else { |
| | | daoQuery.targetUid = teamInviteRelationQuery.getUid(); |
| | | } |
| | | } else { |
| | | daoQuery.tuid = teamInviteRelationQuery.getUid(); |
| | | } |
| | | daoQuery.start = (page - 1) * pageSize; |
| | | daoQuery.count = pageSize; |
| | | return teamInviteRelationMapper.list(daoQuery); |
| | | } |
| | | daoQuery.start=(page-1)*pageSize; |
| | | daoQuery.count=pageSize; |
| | | return teamInviteRelationMapper.list(daoQuery); |
| | | } |
| | | |
| | | @Override |
| | | public long count(TeamInviteRelationQuery teamInviteRelationQuery) { |
| | | DaoQuery daoQuery = new DaoQuery(); |
| | | try { |
| | | BeanUtil.copyProperties(teamInviteRelationQuery, daoQuery); |
| | | } catch (IllegalAccessException e) { |
| | | e.printStackTrace(); |
| | | @Override |
| | | public long count(TeamInviteRelationQuery teamInviteRelationQuery) { |
| | | DaoQuery daoQuery = new DaoQuery(); |
| | | try { |
| | | BeanUtil.copyProperties(teamInviteRelationQuery, daoQuery); |
| | | } catch (IllegalAccessException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return teamInviteRelationMapper.count(daoQuery); |
| | | } |
| | | return teamInviteRelationMapper.count(daoQuery); |
| | | } |
| | | |
| | | @Override |
| | | public TeamInviteRelation get(Long id) { |
| | | return teamInviteRelationMapper.selectByPrimaryKey(id); |
| | | } |
| | | @Override |
| | | public TeamInviteRelation get(Long id) { |
| | | return teamInviteRelationMapper.selectByPrimaryKey(id); |
| | | } |
| | | |
| | | @Override |
| | | public void add(TeamInviteRelation teamInviteRelation) throws Exception { |
| | | if(teamInviteRelation.getCreateTime()==null){ |
| | | teamInviteRelation.setCreateTime(new Date()); |
| | | } |
| | | //保存 |
| | | teamInviteRelationMapper.insertSelective(teamInviteRelation); |
| | | } |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public void add(TeamInviteRelation teamInviteRelation) throws TeamInviteRelationException { |
| | | |
| | | @Override |
| | | public void update(TeamInviteRelation teamInviteRelation) { |
| | | if(teamInviteRelation.getUpdateTime()==null){ |
| | | teamInviteRelation.setUpdateTime(new Date()); |
| | | } |
| | | //保存 |
| | | teamInviteRelationMapper.updateByPrimaryKey(teamInviteRelation); |
| | | } |
| | | if (teamInviteRelation.getUid() == null || teamInviteRelation.getTargetUid() == null) { |
| | | throw new TeamInviteRelationException(TeamInviteRelationException.CODE_PARAMS_NOT_ENOUGH, "参数不完整"); |
| | | } |
| | | |
| | | @Override |
| | | public void delete(List<Long> idList) { |
| | | for (Long id : idList){ |
| | | teamInviteRelationMapper.deleteByPrimaryKey(id); |
| | | } |
| | | } |
| | | //查询下家是否已经有上家 |
| | | if (getBossUid(teamInviteRelation.getTargetUid()) != null) { |
| | | throw new TeamInviteRelationException(TeamInviteRelationException.CODE_ALREADY_INVITED, "已被邀请"); |
| | | } |
| | | |
| | | if (teamInviteRelation.getState() == null) { |
| | | teamInviteRelation.setState(TeamInviteRelation.STATE_VALID); |
| | | } |
| | | |
| | | if (teamInviteRelation.getCreateTime() == null) { |
| | | teamInviteRelation.setCreateTime(new Date()); |
| | | } |
| | | |
| | | |
| | | //保存 |
| | | teamInviteRelationMapper.insertSelective(teamInviteRelation); |
| | | |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void update(TeamInviteRelation teamInviteRelation) { |
| | | if (teamInviteRelation.getUpdateTime() == null) { |
| | | teamInviteRelation.setUpdateTime(new Date()); |
| | | } |
| | | //保存 |
| | | teamInviteRelationMapper.updateByPrimaryKey(teamInviteRelation); |
| | | } |
| | | |
| | | @Override |
| | | public void delete(List<Long> idList) { |
| | | for (Long id : idList) { |
| | | teamInviteRelationMapper.deleteByPrimaryKey(id); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public Long getBossUid(Long uid) { |
| | | DaoQuery daoQuery = new DaoQuery(); |
| | | daoQuery.targetUid = uid; |
| | | daoQuery.state = TeamInviteRelation.STATE_VALID; |
| | | daoQuery.count = 1; |
| | | List<TeamInviteRelation> list = teamInviteRelationMapper.list(daoQuery); |
| | | if (list == null || list.size() == 0) { |
| | | return null; |
| | | } |
| | | return list.get(0).getUid(); |
| | | } |
| | | |
| | | @Override |
| | | public List<TeamInviteRelation> getFirstTeamList(Long uid, int page, int pageSize) { |
| | | DaoQuery daoQuery = new DaoQuery(); |
| | | daoQuery.uid = uid; |
| | | daoQuery.state = TeamInviteRelation.STATE_VALID; |
| | | daoQuery.start = (page - 1) * pageSize; |
| | | daoQuery.count = pageSize; |
| | | return teamInviteRelationMapper.list(daoQuery); |
| | | } |
| | | |
| | | @Override |
| | | public long countFirstTeam(Long uid) { |
| | | DaoQuery daoQuery = new DaoQuery(); |
| | | daoQuery.uid = uid; |
| | | daoQuery.state = TeamInviteRelation.STATE_VALID; |
| | | return teamInviteRelationMapper.count(daoQuery); |
| | | } |
| | | |
| | | @Override |
| | | public List<TeamInviteRelation> getSecondTeamList(Long uid, int page, int pageSize) { |
| | | return teamInviteRelationMapper.listSecondTeam(uid, (page - 1) * pageSize, pageSize); |
| | | } |
| | | |
| | | @Override |
| | | public long countSecondTeam(Long uid) { |
| | | return teamInviteRelationMapper.countSecondTeam(uid); |
| | | } |
| | | |
| | | |
| | | } |