Browse Source

修改网格长入群

dev
liuchuang 6 years ago
parent
commit
f6827a3645
  1. 4
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/async/GroupTask.java
  2. 2
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java
  3. 2
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java
  4. 36
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java
  5. 3
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java
  6. 2
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java
  7. 77
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java

4
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/async/GroupTask.java

@ -7,6 +7,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
/** /**
* *
* 友邻社群模块 * 友邻社群模块
@ -30,7 +32,7 @@ public class GroupTask {
* @since 2019/11/21 10:21 * @since 2019/11/21 10:21
*/ */
@Async @Async
public void joinGridPartyGroup(GroupUserFormDTO formDto) { public void joinGridPartyGroup(List<GroupUserFormDTO> formDto) {
groupFeignClient.joinGridPartyGroup(formDto); groupFeignClient.joinGridPartyGroup(formDto);
} }

2
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java

@ -216,5 +216,5 @@ public interface GroupFeignClient {
* @since 2019/11/21 10:35 * @since 2019/11/21 10:35
*/ */
@PostMapping(value = "group/epdc-app/group/joinPartyGroup", consumes = MediaType.APPLICATION_JSON_VALUE) @PostMapping(value = "group/epdc-app/group/joinPartyGroup", consumes = MediaType.APPLICATION_JSON_VALUE)
Result joinGridPartyGroup(@RequestBody GroupUserFormDTO formDto); Result joinGridPartyGroup(@RequestBody List<GroupUserFormDTO> formDto);
} }

2
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java

@ -96,7 +96,7 @@ public class GroupFeignClientFallback implements GroupFeignClient {
} }
@Override @Override
public Result joinGridPartyGroup(GroupUserFormDTO formDto) { public Result joinGridPartyGroup(List<GroupUserFormDTO> formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "joinGridPartyGroup", formDto); return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "joinGridPartyGroup", formDto);
} }
} }

36
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java

@ -51,6 +51,8 @@ import javax.servlet.http.HttpServletRequest;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -299,7 +301,7 @@ public class AppUserServiceImpl implements AppUserService {
EpdcAppAuthorizationDTO authorization = this.packageEpdcAppAuthorization(tokenDto, newAppUser.getGrid(), AppUserStatesEnum.STATE_REGISTERED.value()); EpdcAppAuthorizationDTO authorization = this.packageEpdcAppAuthorization(tokenDto, newAppUser.getGrid(), AppUserStatesEnum.STATE_REGISTERED.value());
// 网格长加入网格党员群并设置为群主 // 网格长加入网格党员群并设置为群主
this.joinGridPartyGroup(newAppUser, newAppUser.getGridId(), NumConstant.ONE_STR); this.joinGridPartyGroup(newAppUser, userGridList, NumConstant.ONE_STR);
return new Result().ok(authorization); return new Result().ok(authorization);
} }
@ -727,7 +729,9 @@ public class AppUserServiceImpl implements AppUserService {
registeredUser = userResult.getUserDTO(); registeredUser = userResult.getUserDTO();
// 用户已认证为党员,绑定网格时加入该网格党员群 // 用户已认证为党员,绑定网格时加入该网格党员群
if (NumConstant.ONE_STR.equals(registeredUser.getPartyFlag())) { if (NumConstant.ONE_STR.equals(registeredUser.getPartyFlag())) {
this.joinGridPartyGroup(registeredUser, userResult.getGridId(), NumConstant.ZERO_STR); UserGridRelationDTO userGridRelationDto = new UserGridRelationDTO();
userGridRelationDto.setGridId(userResult.getGridId());
this.joinGridPartyGroup(registeredUser, Collections.singletonList(userGridRelationDto), NumConstant.ZERO_STR);
} }
} }
@ -1010,17 +1014,23 @@ public class AppUserServiceImpl implements AppUserService {
* @author liuchuang * @author liuchuang
* @since 2019/11/21 10:58 * @since 2019/11/21 10:58
*/ */
private void joinGridPartyGroup(UserDTO userDto, Long gridId, String lordFlag) { private void joinGridPartyGroup(UserDTO userDto, List<UserGridRelationDTO> userGridList, String lordFlag) {
GroupUserFormDTO formDto = new GroupUserFormDTO(); List<GroupUserFormDTO> formDTOList = new ArrayList<>(userGridList.size());
formDto.setUserId(userDto.getId()); for (UserGridRelationDTO dto:
formDto.setNickname(userDto.getNickname()); userGridList) {
formDto.setUserAvatar(userDto.getFaceImg()); GroupUserFormDTO formDto = new GroupUserFormDTO();
formDto.setMobile(userDto.getMobile()); formDto.setUserId(userDto.getId());
formDto.setPartyMember(userDto.getPartyFlag()); formDto.setNickname(userDto.getNickname());
formDto.setState(GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()); formDto.setUserAvatar(userDto.getFaceImg());
formDto.setLordFlag(lordFlag); formDto.setMobile(userDto.getMobile());
formDto.setGridId(gridId); formDto.setPartyMember(userDto.getPartyFlag());
groupFeignClient.joinGridPartyGroup(formDto); formDto.setState(GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue());
formDto.setLordFlag(lordFlag);
formDto.setGridId(dto.getGridId());
formDTOList.add(formDto);
}
groupFeignClient.joinGridPartyGroup(formDTOList);
// groupTask.joinGridPartyGroup(formDto); // groupTask.joinGridPartyGroup(formDto);
} }

3
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java

@ -255,8 +255,7 @@ public class AppGroupController {
* @since 2019/11/21 10:35 * @since 2019/11/21 10:35
*/ */
@PostMapping("joinPartyGroup") @PostMapping("joinPartyGroup")
public Result joinGridPartyGroup(@RequestBody GroupUserFormDTO formDto) { public Result joinGridPartyGroup(@RequestBody List<GroupUserFormDTO> formDto) {
ValidatorUtils.validateEntity(formDto);
return groupService.joinGridPartyGroup(formDto); return groupService.joinGridPartyGroup(formDto);
} }

2
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java

@ -271,7 +271,7 @@ public interface GroupService extends BaseService<GroupEntity> {
* @author liuchuang * @author liuchuang
* @since 2019/11/21 10:39 * @since 2019/11/21 10:39
*/ */
Result joinGridPartyGroup(GroupUserFormDTO formDto); Result joinGridPartyGroup(List<GroupUserFormDTO> formDto);
/** /**
* *

77
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java

@ -360,27 +360,42 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Result joinGridPartyGroup(GroupUserFormDTO formDto) { public Result joinGridPartyGroup(List<GroupUserFormDTO> formDtoList) {
// 获取网格党员群 List<UserGroupEntity> insertEntity = new ArrayList<>();
GroupDTO groupDto = this.getPartyGroupInfoByGridId(formDto.getGridId()); List<UserGroupEntity> updateEntity = new ArrayList<>();
if (null == groupDto) { for (GroupUserFormDTO formDto:
return new Result().error("网格党员群不存在"); formDtoList) {
} // 校验信息
// 校验用户是否已加入党员群 if (!this.checkGroupUserInfo(formDto)) {
int[] states = {GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()}; continue;
UserGroupDTO userGroupDto = userGroupService.getGroupUserInfo(groupDto.getId(), formDto.getUserId(), states);
if (null == userGroupDto) {
UserGroupEntity userGroupEntity = ConvertUtils.sourceToTarget(formDto, UserGroupEntity.class);
userGroupEntity.setGroupId(groupDto.getId());
userGroupService.insert(userGroupEntity);
} else {
// 更新用户为党员群群主
if (NumConstant.ZERO_STR.equals(userGroupDto.getLordFlag()) && NumConstant.ONE_STR.equals(formDto.getLordFlag())) {
UserGroupEntity userGroupEntity = new UserGroupEntity();
userGroupEntity.setId(userGroupDto.getId());
userGroupEntity.setLordFlag(formDto.getLordFlag());
userGroupService.updateById(userGroupEntity);
} }
// 获取网格党员群
GroupDTO groupDto = this.getPartyGroupInfoByGridId(formDto.getGridId());
if (null == groupDto) {
continue;
}
// 校验用户是否已加入党员群
int[] states = {GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()};
UserGroupDTO userGroupDto = userGroupService.getGroupUserInfo(groupDto.getId(), formDto.getUserId(), states);
if (null == userGroupDto) {
UserGroupEntity userGroupEntity = ConvertUtils.sourceToTarget(formDto, UserGroupEntity.class);
userGroupEntity.setGroupId(groupDto.getId());
insertEntity.add(userGroupEntity);
} else {
// 更新用户为党员群群主
if (NumConstant.ZERO_STR.equals(userGroupDto.getLordFlag()) && NumConstant.ONE_STR.equals(formDto.getLordFlag())) {
UserGroupEntity userGroupEntity = new UserGroupEntity();
userGroupEntity.setId(userGroupDto.getId());
userGroupEntity.setLordFlag(formDto.getLordFlag());
updateEntity.add(userGroupEntity);
}
}
}
if (insertEntity.size() > 0) {
userGroupService.insertBatch(insertEntity);
}
if (updateEntity.size() > 0) {
userGroupService.updateBatchById(updateEntity);
} }
return new Result(); return new Result();
@ -458,4 +473,26 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
public Result<List<String>> listPartyMemberGridId() { public Result<List<String>> listPartyMemberGridId() {
return new Result<List<String>>().ok(baseDao.listPartyMemberGridId()); return new Result<List<String>>().ok(baseDao.listPartyMemberGridId());
} }
/**
*
* 校验信息
*
* @params [formDto]
* @return boolean
* @author liuchuang
* @since 2019/12/19 16:39
*/
private boolean checkGroupUserInfo(GroupUserFormDTO formDto) {
if (StringUtils.isEmpty(formDto.getUserId())) {
return false;
}
if (StringUtils.isEmpty(formDto.getNickname())) {
return false;
}
if (StringUtils.isEmpty(formDto.getUserAvatar())) {
return false;
}
return !StringUtils.isEmpty(formDto.getMobile());
}
} }

Loading…
Cancel
Save