jinpengyong
2021-04-07 923510deed8c991823db60dbd430bf18d78b98cb
screen-api/src/main/java/com/moral/api/controller/GroupController.java
@@ -6,13 +6,13 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@@ -22,10 +22,10 @@
import com.moral.api.entity.Group;
import com.moral.api.service.GroupService;
import com.moral.api.service.UserGroupService;
import com.moral.api.utils.OperationLogUtils;
import com.moral.constant.ResponseCodeEnum;
import com.moral.constant.ResultMessage;
import com.moral.util.PageResult;
import com.moral.util.WebUtils;
@Slf4j
@Api(tags = {"组"})
@@ -41,11 +41,10 @@
    @ApiOperation(value = "添加组", notes = "添加组")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "groupName", value = "组名", required = true, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String")
    })
    @RequestMapping(value = "addGroup", method = RequestMethod.POST)
    private ResultMessage addGroup(Group group, HttpServletRequest request) {
    @RequestMapping(value = "insert", method = RequestMethod.POST)
    private ResultMessage insert(@RequestBody Group group, HttpServletRequest request) {
        if (group.getGroupName().isEmpty()) {
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
@@ -55,55 +54,66 @@
        if (!result.isEmpty()) {
            return ResultMessage.fail((int) result.get("code"), result.get("msg").toString());
        }
        //日志
        String content = "添加了组:" + group.getGroupName();
        OperationLogUtils.insertLog(request, content);
        return ResultMessage.ok();
    }
    @ApiOperation(value = "删除组", notes = "删除组")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "groupId", value = "组id", required = true, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String")
    })
    @RequestMapping(value = "deleteGroup", method = RequestMethod.POST)
    public ResultMessage deleteGroup(String groupId) {
        if (groupId == null) {
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
    @RequestMapping(value = "delete", method = RequestMethod.POST)
    public ResultMessage delete(@RequestBody Group group, HttpServletRequest request) {
        if (group.getId() == null) {
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
        }
        QueryWrapper<Group> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("id", groupId);
        Group group = groupService.getOne(queryWrapper);
        queryWrapper.eq("id", group.getId());
        group = groupService.getOne(queryWrapper);
        if (group == null) {
            return ResultMessage.fail(ResponseCodeEnum.ACCOUNT_NOT_EXIST.getCode(), ResponseCodeEnum.ACCOUNT_NOT_EXIST.getMsg());
        }
        groupService.deleteGroup(group);
        //日志
        String content = "删除了组:" + group.getGroupName();
        OperationLogUtils.insertLog(request, content);
        return ResultMessage.ok();
    }
    @ApiOperation(value = "修改组信息", notes = "修改组信息")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "groupName", value = "组名", required = true, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String")
    })
    @RequestMapping(value = "updateGroup", method = RequestMethod.POST)
    public ResultMessage updateUser(Group group, HttpServletRequest request) {
    @RequestMapping(value = "update", method = RequestMethod.POST)
    public ResultMessage update(@RequestBody Group group, HttpServletRequest request) {
        String token = request.getHeader("token");
        Map<String, Object> result = groupService.updateGroup(group, token);
        if (!result.isEmpty()) {
            return ResultMessage.fail((int) result.get("code"), result.get("msg").toString());
        }
        //日志
        String content = "修改了组:" + group.getGroupName();
        OperationLogUtils.insertLog(request, content);
        return ResultMessage.ok();
    }
    @ApiOperation(value = "分页查询组列表", notes = "分页查询组列表")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "page", value = "当前页", required = false, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "size", value = "每页条数", required = false, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "page", value = "当前页", required = false, paramType = "query", dataType = "Integer"),
            @ApiImplicitParam(name = "size", value = "每页条数", required = false, paramType = "query", dataType = "Integer"),
            @ApiImplicitParam(name = "order", value = "排序字段", required = false, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "orderType", value = "排序类型,升序:0,降序:1", defaultValue = "0", required = false, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"),
            @ApiImplicitParam(name = "groupName", value = "组名模糊查询", required = false, paramType = "query", dataType = "String")
    })
    @RequestMapping(value = "selectGroups", method = RequestMethod.POST)
    public ResultMessage selectGroups(HttpServletRequest request) {
        Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
    @RequestMapping(value = "select", method = RequestMethod.POST)
    public ResultMessage select(@RequestBody Map<String, Object> parameters, HttpServletRequest request) {
        parameters.put("token", request.getHeader("token"));
        Page<Group> userPage = groupService.selectGroups(parameters);
        PageResult<Group> pageResult = new PageResult<>(
@@ -112,25 +122,27 @@
        return ResultMessage.ok(pageResult);
    }
    @ApiOperation(value = "用户分配组", notes = "用户分配组")
    @ApiOperation(value = "获取用户所属组", notes = "获取用户所属组")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "userId", value = "用户id", required = true, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "groupIds", value = "组id,多个逗号隔开", required = true, paramType = "query", dataType = "String"),
            @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String")
    })
    @RequestMapping(value = "allotGroups", method = RequestMethod.POST)
    public ResultMessage allotGroups(HttpServletRequest request) {
        Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
    @RequestMapping(value = "get-group-ids", method = RequestMethod.GET)
    public ResultMessage getGroupIds(Integer userId){
        List<Integer> groupIds = userGroupService.getGroupIds(userId);
        return ResultMessage.ok(groupIds);
    }
    @ApiOperation(value = "用户分配组", notes = "用户分配组")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String")
    })
    @RequestMapping(value = "allot", method = RequestMethod.POST)
    public ResultMessage allot(@RequestBody Map<String, Object> parameters, HttpServletRequest request) {
        if (!parameters.containsKey("userId")) {
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
        }
        String token = request.getHeader("token");
        String[] groupIds = parameters.get("groupIds").toString().split(",");
        List<Integer> gIds = new ArrayList<>();
        for (String groupId : groupIds) {
            gIds.add(Integer.parseInt(groupId));
        }
        parameters.put("groupIds", gIds);
        userGroupService.allotGroups(parameters, token);
        return ResultMessage.ok();
    }