Browse Source

志愿者团队调整

ftature/screen
Jackwang 4 years ago
parent
commit
088a3fdd39
  1. 12
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VolunteerTeamController.java
  2. 5
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/VolunteerInfoDTO.java
  3. 1
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/VolunteerInfoController.java
  4. 18
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/VlounteerTeamRealationDao.java
  5. 74
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/VolunteerInfoServiceImpl.java
  6. 11
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/VlounteerTeamRealationDao.xml

12
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VolunteerTeamController.java

@ -152,4 +152,16 @@ public class VolunteerTeamController {
return volunteerTeamService.getAllTeamListByName(dto);
}
/**
* @describe: 后台管理-根据名称获取所有志愿团队列表
* @author wangtong
* @date 2021/12/6 16:59
* @params [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
@GetMapping("getSysAllTeamListByName")
public Result getSysAllTeamListByName(VolunteerUnionFormDTO dto){
return volunteerTeamService.getAllTeamListByName(dto);
}
}

5
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/VolunteerInfoDTO.java

@ -238,4 +238,9 @@ public class VolunteerInfoDTO implements Serializable {
* 志愿团队id
*/
private List<String> teamIds;
/**
* 后台管理-志愿团队id
*/
private List<String> teamIdList;
}

1
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/VolunteerInfoController.java

@ -133,6 +133,7 @@ public class VolunteerInfoController {
dto.setVolunteerOrder(formDto.getVolunteerOrder());
dto.setId(formDto.getId());
dto.setTagId(formDto.getTagId());
dto.setTeamIdList(formDto.getTeamIdList());
volunteerInfoService.update(dto);
return new Result();
}

18
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/VlounteerTeamRealationDao.java

@ -91,4 +91,22 @@ public interface VlounteerTeamRealationDao extends BaseDao<VlounteerTeamRealatio
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
List<VolunteerInfoDTO> selectVolunteerByTeamId(VolunteerUnionFormDTO dto);
/**
* @describe: 通过志愿者id获取信息
* @author wangtong
* @date 2021/12/6 17:54
* @params [volunteerId]
* @return java.util.List<com.elink.esua.epdc.entity.VlounteerTeamRealationEntity>
*/
List<VlounteerTeamRealationEntity> selectByVolunteerId(@Param("volunteerId") String volunteerId);
/**
* @describe: 查询志愿者下的所有团队id
* @author wangtong
* @date 2021/12/6 18:12
* @params [volunteerId]
* @return java.util.List<java.lang.String>
*/
List<String> selectIdsByVoId(@Param("volunteerId") String volunteerId);
}

74
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/VolunteerInfoServiceImpl.java

@ -19,7 +19,6 @@ package com.elink.esua.epdc.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil;
import com.alibaba.nacos.client.naming.utils.CollectionUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.async.NewsTask;
@ -126,7 +125,9 @@ public class VolunteerInfoServiceImpl extends BaseServiceImpl<VolunteerInfoDao,
*/
@Override
public VolunteerInfoDTO getVolunteerDetail(String id) {
return baseDao.getVolunteerDetail(id);
VolunteerInfoDTO result = baseDao.getVolunteerDetail(id);
result.setTeamIdList(vlounteerTeamRealationDao.selectIdsByVoId(result.getId()));
return result;
}
@Override
@ -178,6 +179,39 @@ public class VolunteerInfoServiceImpl extends BaseServiceImpl<VolunteerInfoDao,
tagDto.setVolunteerId(dto.getId());
tagDto.setTagId(dto.getTagId());
volunteerTagRelationService.insertOrUpdateVolunteerTag(tagDto);
//更新志愿团队信息
//查询已加入的团队
List<VlounteerTeamRealationEntity> havedInfo = vlounteerTeamRealationDao.selectByVolunteerId(entity.getId());
//删除未选中的团队
for(VlounteerTeamRealationEntity have : havedInfo){
Boolean isHave = false;
for(String teamId : dto.getTeamIdList()){
if(have.getTeamId().equals(teamId)){
isHave = true;
break;
}
}
if(!isHave){
vlounteerTeamRealationDao.deleteById(have.getId());
}
}
// 新增录入的团队
for(String teamId : dto.getTeamIdList()){
Boolean isHave = false;
for(VlounteerTeamRealationEntity have : havedInfo){
if(have.getTeamId().equals(teamId)){
isHave = true;
break;
}
}
if(!isHave){
VlounteerTeamRealationEntity newEntity = new VlounteerTeamRealationEntity();
newEntity.setTeamId(teamId);
newEntity.setVolunteerId(entity.getId());
vlounteerTeamRealationDao.insert(newEntity);
}
}
}
@Override
@ -482,16 +516,36 @@ public class VolunteerInfoServiceImpl extends BaseServiceImpl<VolunteerInfoDao,
}
private void updateVolunteerTeam(VolunteerInfoEntity volunteerEntity, EpdcCompleteVolunteerInfoV2FormDTO dto) {
vlounteerTeamRealationDao.deleteByVolunteerId(volunteerEntity.getId());
if(!CollectionUtils.isEmpty(dto.getTeamIdList())){
List<VlounteerTeamRealationEntity> entityList = new ArrayList();
//查询已加入的团队
List<VlounteerTeamRealationEntity> havedInfo = vlounteerTeamRealationDao.selectByVolunteerId(volunteerEntity.getId());
//删除未选中的团队
for(VlounteerTeamRealationEntity have : havedInfo){
Boolean isHave = false;
for(String teamId : dto.getTeamIdList()){
VlounteerTeamRealationEntity entity = new VlounteerTeamRealationEntity();
entity.setVolunteerId(volunteerEntity.getId());
entity.setTeamId(teamId);
entityList.add(entity);
if(have.getTeamId().equals(teamId)){
isHave = true;
break;
}
}
if(!isHave){
vlounteerTeamRealationDao.deleteById(have.getId());
}
}
// 新增录入的团队
for(String teamId : dto.getTeamIdList()){
Boolean isHave = false;
for(VlounteerTeamRealationEntity have : havedInfo){
if(have.getTeamId().equals(teamId)){
isHave = true;
break;
}
}
if(!isHave){
VlounteerTeamRealationEntity newEntity = new VlounteerTeamRealationEntity();
newEntity.setTeamId(teamId);
newEntity.setVolunteerId(volunteerEntity.getId());
vlounteerTeamRealationDao.insert(newEntity);
}
vlounteerTeamRealationService.insertBatch(entityList);
}
}

11
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/VlounteerTeamRealationDao.xml

@ -78,6 +78,17 @@
select * from epdc_vlounteer_team_realation where TEAM_ID=#{id}
AND DEL_FLAG='0'
</select>
<select id="selectByVolunteerId" resultType="com.elink.esua.epdc.entity.VlounteerTeamRealationEntity">
select * from epdc_vlounteer_team_realation
where del_flag='0'
and VOLUNTEER_ID=#{volunteerId}
</select>
<select id="selectIdsByVoId" resultType="java.lang.String">
select TEAM_ID
from epdc_vlounteer_team_realation
where del_flag='0'
and VOLUNTEER_ID=#{volunteerId}
</select>
</mapper>

Loading…
Cancel
Save