青羊经侦大队-数据平台
baizonghao
2023-04-23 4a9a9fa60f52be1e7c91f01df54b3cbae8c11d6c
src/main/java/com/example/jz/controller/CauseController.java
@@ -1,23 +1,37 @@
package com.example.jz.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.api.ApiController;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.jz.dao.GroupDao;
import com.example.jz.dao.GroupUserDao;
import com.example.jz.dao.MessageDao;
import com.example.jz.dao.ReportDao;
import com.example.jz.modle.R;
import com.example.jz.modle.dto.AddReportDto;
import com.example.jz.modle.dto.CauseDto;
import com.example.jz.modle.dto.ReportParamDto;
import com.example.jz.modle.entity.Report;
import com.example.jz.modle.entity.Cause;
import com.example.jz.modle.entity.GroupUser;
import com.example.jz.modle.vo.NewCauseVo;
import com.example.jz.modle.vo.ReportListVo;
import com.example.jz.service.CauseService;
import com.example.jz.service.GroupService;
import com.example.jz.service.ReportService;
import com.example.jz.service.UserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import lombok.SneakyThrows;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.util.List;
/**
 * 案件表(Cause)表控制层
@@ -27,11 +41,12 @@
 */
@RestController
@RequestMapping("cause")
@Api(tags = "案件区")
@Api(tags = "案件区-案件录入")
public class CauseController extends ApiController {
    /**
     * 服务对象
     */
    @Resource
    private CauseService causeService;
    private ReportService reportService;
@@ -46,51 +61,68 @@
    }
    @ApiOperation(httpMethod = "POST", value = "添加案件")
    @ApiOperation(httpMethod = "POST", value = "案件台-案件录入-添加案件")
    @PostMapping("/addCause")
    @ApiResponse(message = "执行成功", code = 200)
    public R addCause(@RequestBody CauseDto causeDto) {
    public R addCause(@RequestBody @Validated CauseDto causeDto) {
        int count = causeService.count(new LambdaQueryWrapper<Cause>().eq(Cause::getName, causeDto.getName()));
        if(count>0){
            return R.failed("该案件名已存在,请重新输入");
        }
        causeService.addCause(causeDto);
        return R.ok();
    }
    @ApiOperation(httpMethod = "PUT", value = "修改案件")
    @ApiOperation(httpMethod = "PUT", value = "案件台-案件录入-修改案件")
    @PutMapping("/updateCause")
    @ApiResponse(message = "执行成功", code = 200)
    public R updateCause(@RequestBody CauseDto causeDto, Integer id) {
    public R updateCause(@RequestBody @Validated CauseDto causeDto, Integer id) {
        return R.ok(causeService.updateCause(causeDto, id));
    }
    @ApiOperation(httpMethod = "GET", value = "案件录入列表")
    @ApiOperation(httpMethod = "GET", value = "案件台-案件录入-案件录入列表")
    @GetMapping("/getCauseList")
    @ApiResponse(message = "执行成功", code = 200)
    public R getCauseList(String cause, Integer status, Integer size, Integer current) {
        return R.ok(causeService.getCauserListByCondition(cause, status, size, current));
    }
    @ApiOperation(httpMethod = "GET", value = "负责人查询")
    @GetMapping("/getVxCauseList")
    @ApiOperation(httpMethod = "GET", value = "微信找案件")
    public R<List<NewCauseVo>> getVxCauseList(@RequestParam String phone){
        List<NewCauseVo> res =  causeService.getVxCauseList(phone);
        return R.ok(res);
    }
    @ApiOperation(httpMethod = "GET", value = "案件台-案件录入-案件录入列表")
    @GetMapping("/getCause")
    @ApiResponse(message = "执行成功", code = 200)
    public R getCause(String cause, Integer status, Integer size, Integer current,Integer id) {
        return R.ok(causeService.getCauserListByCondition(cause, status, size, current,id));
    }
    @ApiOperation(httpMethod = "GET", value = "案件台-案件录入-负责人查询")
    @GetMapping("/getManagerList")
    @ApiResponse(message = "执行成功", code = 200)
    public R getManagerList() {
        return R.ok(causeService.getManagerList());
    }
    @ApiOperation(httpMethod = "GET", value = "获取报案人员")
    @ApiOperation(httpMethod = "GET", value = "案件台-案件录入-获取案件报案人员")
    @GetMapping("/getReporterList")
    @ApiResponse(message = "执行成功", code = 200)
    public R getReporterList(Integer causeId) {
        return R.ok(causeService.getReporterList(causeId));
    }
    @ApiOperation(httpMethod = "GET", value = "获取案件群公告")
    @ApiOperation(httpMethod = "GET", value = "案件台-案件录入-获取案件群公告")
    @GetMapping("/getGroupAnnouncement")
    @ApiResponse(message = "执行成功", code = 200)
    public R getGroupAnnouncement(Integer groupId) {
        return R.ok(causeService.getGroupAnnouncement(groupId));
    }
    @ApiOperation(httpMethod = "DELETE", value = "案件删除")
    @ApiOperation(httpMethod = "DELETE", value = "案件台-案件录入-案件删除")
    @DeleteMapping("/deleteCause")
    @ApiResponse(message = "执行成功", code = 200)
    public R deleteCause(@RequestParam(value = "id") Integer id) {
@@ -98,27 +130,43 @@
        return R.ok();
    }
    @ApiOperation(httpMethod = "POST", value = "案件台-案件录入-案件导入")
    @PostMapping("/upload")
    @ApiResponse(message = "执行成功", code = 200)
    @SneakyThrows
    public R upload(@RequestParam(value = "multipartFile") MultipartFile multipartFile) {
        causeService.loadFile(multipartFile);
        return R.ok();
    }
    @ApiOperation(httpMethod = "POST", value = "案件台-案件录入-报案人员-报案人元导入")
    @PostMapping("/reporterUpload")
    @ApiResponse(message = "执行成功", code = 200)
    @SneakyThrows
    public R uploadReporter(@RequestParam(value = "multipartFile") MultipartFile multipartFile,Integer causeId) {
            causeService.loadFileReport(multipartFile,causeId);
        return R.ok();
    }
    @ApiOperation(httpMethod = "GET", value = "根据群组id查询案件分页")
    @GetMapping("/getAllReportList")
    @ApiResponse(message = "执行成功", code = 200)
    public R<IPage<ReportListVo>> get(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer groupId) {
        return R.ok(reportService.getPageByGroupId(page, reportParamDto, groupId));
    public R<IPage<ReportListVo>> get(Page<ReportListVo> page, ReportParamDto reportParamDto, Integer causeId) {
        return R.ok(reportService.getPageByGroupId(page, reportParamDto, causeId));
    }
    @ApiOperation(httpMethod = "POST", value = "添加人员")
    @PostMapping("/addReporter")
    @ApiResponse(message = "执行成功", code = 200)
    public R<Boolean> get(AddReportDto addReportDto) {
        if (addReportDto.getReporterName() == null || addReportDto.getReporterName().equals("")) {
            return R.failed("报案人员不能为空");
        }
        if (addReportDto.getMobile() == null || addReportDto.getMobile().equals("")) {
            return R.failed("报案人员电话不能为空");
        }
        if (addReportDto.getIdcard() == null || addReportDto.getIdcard().equals("")) {
            return R.failed("报案人员身份证不能为空");
        }
    public R<Boolean> get(@RequestBody AddReportDto addReportDto) {
        return R.ok(causeService.addReportPeople(addReportDto));
    }
    @ApiOperation(httpMethod = "GET", value = "获取案件的id和名称列表")
    @GetMapping("/getCauseIdAndName")
    @ApiResponse(message = "执行成功", code = 200)
    public R getCauseIdAndName() {
        return R.ok(causeService.getCauseIdAndName());
    }
}