Browse Source

禁言、解禁、解散社群接口 init

dev
liuchuang 7 years ago
parent
commit
3e40094dea
  1. 15
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java
  2. 13
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/GroupFeignClient.java
  3. 6
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/GroupFeignClientFallback.java
  4. 12
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java
  5. 8
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java
  6. 32
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/GroupSettingStateDTO.java
  7. 17
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/AppGroupController.java
  8. 17
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/GroupController.java
  9. 12
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java
  10. 25
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java

15
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java

@ -3,6 +3,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
import com.elink.esua.epdc.service.GroupService;
import org.springframework.beans.factory.annotation.Autowired;
@ -39,4 +40,18 @@ public class ApiGroupController {
return groupService.saveGroup(userDetail, formDto);
}
/**
*
* 解散社群
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/10/21 9:51
*/
@PostMapping("disband")
public Result disbandGroup(@RequestBody GroupSettingStateDTO formDto) {
return groupService.disbandGroup(formDto);
}
}

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

@ -2,6 +2,7 @@ package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
import com.elink.esua.epdc.feign.fallback.GroupFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
@ -29,4 +30,16 @@ public interface GroupFeignClient {
*/
@PostMapping(value = "group/epdc-app/group/create", consumes = MediaType.APPLICATION_JSON_VALUE)
Result createGroup(GroupCreateFormDTO formDto);
/**
*
* 解散社群
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/10/21 9:54
*/
@PostMapping(value = "group/epdc-app/group/operate", consumes = MediaType.APPLICATION_JSON_VALUE)
Result disbandGroup(GroupSettingStateDTO formDto);
}

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

@ -3,6 +3,7 @@ package com.elink.esua.epdc.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
import com.elink.esua.epdc.feign.GroupFeignClient;
import org.springframework.stereotype.Component;
@ -18,4 +19,9 @@ public class GroupFeignClientFallback implements GroupFeignClient {
public Result createGroup(GroupCreateFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "createGroup", formDto);
}
@Override
public Result disbandGroup(GroupSettingStateDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "disbandGroup", formDto);
}
}

12
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/GroupService.java

@ -2,6 +2,7 @@ package com.elink.esua.epdc.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
/**
@ -23,4 +24,15 @@ public interface GroupService {
* @since 2019/10/17 13:58
*/
Result saveGroup(TokenDto userDetail, GroupCreateFormDTO formDto);
/**
*
* 解散社群
*
* @params [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/10/21 9:51
*/
Result disbandGroup(GroupSettingStateDTO dto);
}

8
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/GroupServiceImpl.java

@ -4,6 +4,8 @@ import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.enums.GroupStateEnum;
import com.elink.esua.epdc.dto.group.enums.GroupUserStateEnum;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
import com.elink.esua.epdc.dto.group.form.GroupUserFormDTO;
@ -63,4 +65,10 @@ public class GroupServiceImpl implements GroupService {
return groupFeignClient.createGroup(formDto);
}
@Override
public Result disbandGroup(GroupSettingStateDTO dto) {
dto.setState(GroupStateEnum.GROUP_STATE_DISBANDED.getValue());
return groupFeignClient.disbandGroup(dto);
}
}

32
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/GroupSettingStateDTO.java

@ -0,0 +1,32 @@
package com.elink.esua.epdc.dto.group;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
*
* 禁言解禁解散社群DTO
*
* @Authorliuchuang
* @Date2019/10/21 9:21
*/
@Data
public class GroupSettingStateDTO implements Serializable {
private static final long serialVersionUID = -1288250589698851089L;
/**
* 社群ID
*/
@NotBlank(message = "社群id不能为空")
private String id;
/**
* 状态 10解禁15禁言20解散
*/
@NotNull(message = "社群状态不能为空")
private Integer state;
}

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

@ -3,6 +3,7 @@ package com.elink.esua.epdc.modules.group.controller;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
import com.elink.esua.epdc.modules.group.service.GroupService;
import org.springframework.beans.factory.annotation.Autowired;
@ -40,4 +41,20 @@ public class AppGroupController {
ValidatorUtils.validateEntity(formDto);
return groupService.saveGroup(formDto);
}
/**
*
* 禁言解禁解散社群
*
* @params [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/10/21 9:31
*/
@PostMapping("operate")
public Result operate(@RequestBody GroupSettingStateDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto);
return groupService.modifyGroupState(dto);
}
}

17
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/controller/GroupController.java

@ -28,6 +28,7 @@ import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.dto.group.GroupDTO;
import com.elink.esua.epdc.dto.group.GroupManagementDTO;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.modules.group.excel.GroupExcel;
import com.elink.esua.epdc.modules.group.service.GroupService;
import org.springframework.beans.factory.annotation.Autowired;
@ -103,4 +104,20 @@ public class GroupController {
ExcelUtils.exportExcelToTarget(response, null, list, GroupExcel.class);
}
/**
*
* 禁言解禁解散社群
*
* @params [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/10/21 9:31
*/
@PostMapping("operate")
public Result operate(@RequestBody GroupSettingStateDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto);
return groupService.modifyGroupState(dto);
}
}

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

@ -22,6 +22,7 @@ import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.group.GroupDTO;
import com.elink.esua.epdc.dto.group.GroupManagementDTO;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
import com.elink.esua.epdc.modules.group.entity.GroupEntity;
@ -106,4 +107,15 @@ public interface GroupService extends BaseService<GroupEntity> {
* @since 2019/10/17 14:57
*/
Result saveGroup(GroupCreateFormDTO formDto);
/**
*
* 禁言解禁解散社群
*
* @params [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2019/10/21 9:31
*/
Result modifyGroupState(GroupSettingStateDTO dto);
}

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

@ -26,7 +26,9 @@ import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.group.GroupDTO;
import com.elink.esua.epdc.dto.group.GroupManagementDTO;
import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
import com.elink.esua.epdc.dto.group.UserGroupDTO;
import com.elink.esua.epdc.dto.group.enums.GroupStateEnum;
import com.elink.esua.epdc.dto.group.form.GroupCreateFormDTO;
import com.elink.esua.epdc.modules.group.dao.GroupDao;
import com.elink.esua.epdc.modules.group.entity.GroupEntity;
@ -122,4 +124,27 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
return new Result();
}
@Override
@Transactional(rollbackFor = Exception.class)
public Result modifyGroupState(GroupSettingStateDTO dto) {
// 获取社群当前状态
GroupEntity entity = baseDao.selectById(dto.getId());
if (null != entity) {
// 已解散的社群不能禁言和解禁
if ((GroupStateEnum.GROUP_STATE_EXAMINATION_PASSED.getValue().equals(dto.getState())
|| GroupStateEnum.GROUP_STATE_BANNED.getValue().equals(dto.getState()))
&& GroupStateEnum.GROUP_STATE_DISBANDED.getValue().equals(entity.getState())) {
return new Result().error("操作失败,当前社群已解散");
} else {
GroupEntity groupEntity = new GroupEntity();
groupEntity.setId(dto.getId());
groupEntity.setState(dto.getState());
baseDao.updateById(groupEntity);
return new Result();
}
}
return new Result().error("操作失败");
}
}
Loading…
Cancel
Save