青羊经侦大队-数据平台
11
baizonghao
2023-05-25 7ea5eece501c98a91555a5358931367e78e9d23b
src/main/java/com/example/jz/controller/GroupController.java
@@ -1,15 +1,17 @@
package com.example.jz.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.api.ApiController;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.jz.modle.R;
import com.example.jz.modle.entity.Announcement;
import com.example.jz.modle.entity.Group;
import com.example.jz.modle.entity.GroupUser;
import com.example.jz.modle.vo.GroupMessageVo;
import com.example.jz.modle.vo.GroupUserVo;
import com.example.jz.service.GroupService;
import com.example.jz.service.GroupUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -17,8 +19,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.Serializable;
import java.util.List;
/**
@@ -38,8 +38,12 @@
    public void setGroupService(GroupService groupService) {
        this.groupService = groupService;
    }
    @Autowired
    GroupUserService groupUserService;
    /**
     * 根据群组id获取当前群组所有的消息
     * 根据群组id获取当前群组所有的消息 修改
     *
     * @param id 群组id
     * @return 当前群组所有的消息
@@ -49,6 +53,51 @@
    @ApiImplicitParam(name = "id", value = "群组id", required = true, dataType = "Integer")
    public R<List<GroupMessageVo>> getAllMessage(@RequestParam("id") Integer id) {
        return R.ok(groupService.getAllMessage(id));
    }
//    @GetMapping("deleteGroupMessage")
//    @ApiOperation(value = "删除群消息")
//    @ApiImplicitParam(name = "messageId", value = "消息id", required = true, dataType = "Integer")
//    public R deleteMessage(@RequestParam("messageId") Integer messageId){
//        boolean flag = groupService.removeById(messageId);
//        return flag ? R.ok(true, "删除成功") : R.failed("删除成功");
//    }
    @GetMapping("getGroupMessage")
    @ApiOperation(value = "获取当前群组消息通过成员或者内容")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "report", value = "群组id", required = true, dataType = "Integer"),
            @ApiImplicitParam(name = "context", value = "群组id", required = true, dataType = "String")
    })
    public R<List<GroupMessageVo>> get(@RequestParam(value = "report", required = false) String reporter, @RequestParam(value = "context", required = false) String context, Integer groupId) {
        return R.ok(groupService.getByCondition(reporter, context, groupId));
    }
    @PutMapping("banSpeech")
    @ApiOperation(value = "禁言")
    @ApiImplicitParam(name = "id", value = "群组id", required = true, dataType = "Integer")
    public R setBanSpeech(@RequestParam("id") Integer id, @RequestParam("groupId") Integer groupId) {
        return R.ok(groupUserService.update(new UpdateWrapper<GroupUser>().set("ban_speech", 1).eq("user_id", id).eq("group_id", groupId)));
    }
    @PutMapping("allowSpeech")
    @ApiOperation(value = "允许发言")
    @ApiImplicitParam(name = "id", value = "群组id", required = true, dataType = "Integer")
    public R setAllowSpeech(@RequestParam("id") Integer id, @RequestParam("groupId") Integer groupId) {
        return R.ok(groupUserService.update(new UpdateWrapper<GroupUser>().set("ban_speech", 0).eq("user_id", id).eq("group_id", groupId)));
    }
    @PutMapping("banSpeechAll")
    @ApiOperation(value = "全部禁言")
    public R setBanSpeechAll(@RequestParam("id") Integer id) {
        return R.ok(groupUserService.update(new UpdateWrapper<GroupUser>().set("ban_speech", 1).eq("group_id", id)));
    }
    @PutMapping("banSpeechRemark")
    @ApiOperation(value = "全部允许发言")
    public R setBanSpeechRemark(@RequestParam("id") Integer id) {
        return R.ok(groupUserService.update(new UpdateWrapper<GroupUser>().set("ban_speech", 0).eq("group_id", id)));
    }
    /**
@@ -78,11 +127,14 @@
            @ApiImplicitParam(name = "id", value = "群组id", required = true, dataType = "Integer")
    })
    public R<Boolean> sendMessage(@RequestParam("id") Integer id, @RequestParam("text") String text) {
        if (StringUtils.isBlank(text)) {
            return R.failed("文本为空");
        }
        return R.ok(groupService.sendMessage(id, text));
    }
    /**
     * 获取群组所有人员列表
     * 获取群组所有人员列表 修改
     *
     * @param id 群组id
     * @return 群组所有人员列表
@@ -93,4 +145,10 @@
    public R<List<GroupUserVo>> getAllUser(@RequestParam("id") Integer id) {
        return R.ok(groupService.getAllUser(id));
    }
}
    @GetMapping("getAllGroupName")
    @ApiOperation(value = "获取群组名称")
    public R<List<Group>> getAllGroupName() {
        return R.ok(groupService.list());
    }
}