From 0e9b6603d4ae9d11c1fbc90257ce816c5807b8ff Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 28 十月 2022 16:55:02 +0800 Subject: [PATCH] 批量添加结算消息 --- app/src/main/java/com/yeshi/makemoney/app/service/impl/team/TeamInviteRelationServiceImpl.java | 181 ++++++++++++++++++++++++++++++-------------- 1 files changed, 123 insertions(+), 58 deletions(-) diff --git a/app/src/main/java/com/yeshi/makemoney/app/service/impl/team/TeamInviteRelationServiceImpl.java b/app/src/main/java/com/yeshi/makemoney/app/service/impl/team/TeamInviteRelationServiceImpl.java index 6f9826f..3a2a126 100644 --- a/app/src/main/java/com/yeshi/makemoney/app/service/impl/team/TeamInviteRelationServiceImpl.java +++ b/app/src/main/java/com/yeshi/makemoney/app/service/impl/team/TeamInviteRelationServiceImpl.java @@ -1,79 +1,144 @@ 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); + } } \ No newline at end of file -- Gitblit v1.8.0