src/main/java/com/example/jz/controller/CauseController.java
@@ -1,18 +1,16 @@ package com.example.jz.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.entity.Cause; import com.example.jz.modle.R; import com.example.jz.modle.dto.CauseDto; import com.example.jz.service.CauseService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.io.Serializable; import java.util.List; /** * 案件表(Cause)表控制层 @@ -22,6 +20,7 @@ */ @RestController @RequestMapping("cause") @Api(tags = "案件区") public class CauseController extends ApiController { /** * 服务对象 @@ -29,60 +28,33 @@ @Resource private CauseService causeService; /** * 分页查询所有数据 * * @param page 分页对象 * @param cause 查询实体 * @return 所有数据 */ @GetMapping public R selectAll(Page<Cause> page, Cause cause) { return success(this.causeService.page(page, new QueryWrapper<>(cause))); @ApiOperation(httpMethod = "POST", value = "添加案件") @PostMapping("/addCause") @ApiResponse(message = "执行成功", code = 200) public R addCause(@RequestBody CauseDto causeDto) { return R.ok(causeService.addCause(causeDto)); } /** * 通过主键查询单条数据 * * @param id 主键 * @return 单条数据 */ @GetMapping("{id}") public R selectOne(@PathVariable Serializable id) { return success(this.causeService.getById(id)); @ApiOperation(httpMethod = "POST", value = "修改案件") @PostMapping("/updateCause") @ApiResponse(message = "执行成功", code = 200) public R updateCause(@RequestBody CauseDto causeDto,Integer id) { return R.ok(causeService.updateCause(causeDto,id)); } /** * 新增数据 * * @param cause 实体对象 * @return 新增结果 */ @PostMapping public R insert(@RequestBody Cause cause) { return success(this.causeService.save(cause)); @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)); } /** * 修改数据 * * @param cause 实体对象 * @return 修改结果 */ @PutMapping public R update(@RequestBody Cause cause) { return success(this.causeService.updateById(cause)); } /** * 删除数据 * * @param idList 主键结合 * @return 删除结果 */ @DeleteMapping public R delete(@RequestParam("idList") List<Long> idList) { return success(this.causeService.removeByIds(idList)); @ApiOperation(httpMethod = "GET", value = "负责人查询") @GetMapping("/getManagerList") @ApiResponse(message = "执行成功", code = 200) public R getManagerList() { return R.ok(causeService.getManagerList()); } } src/main/java/com/example/jz/modle/dto/CauseDto.java
New file @@ -0,0 +1,32 @@ package com.example.jz.modle.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(description = "添加案件字段", value = "CauseDto") public class CauseDto { //案件编号 @ApiModelProperty(dataType = "String", value = "案件编号") private String number; //案件名称 @ApiModelProperty(dataType = "String", value = "案件名称") private String name; //第一次案发时间 @ApiModelProperty(dataType = "Date", value = "第一次案发时间") // @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss.SSS") private Date firstTime; //负责人id @ApiModelProperty(dataType = "Integer", value = "负责人id") private Integer userId; //案件描述 @ApiModelProperty(dataType = "String", value = "案件描述") private String description; } src/main/java/com/example/jz/modle/entity/Group.java
@@ -8,6 +8,7 @@ import lombok.NoArgsConstructor; import lombok.experimental.Accessors; import java.io.Serializable; import java.util.Date; src/main/java/com/example/jz/modle/entity/User.java
@@ -66,7 +66,7 @@ /** * ID */ private String id; private Integer id; public String getNickName() { @@ -173,13 +173,13 @@ this.status = status; } public String getId() { public Integer getId() { return id; } public void setId(String id) { public void setId(Integer id) { this.id = id; } } src/main/java/com/example/jz/modle/vo/CauseVo.java
New file @@ -0,0 +1,47 @@ package com.example.jz.modle.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(description = "案件录入", value = "CauseVo") public class CauseVo { @ApiModelProperty(dataType = "String", value = "群组名称") private Integer id; //案件编号 @ApiModelProperty(dataType = "String", value = "案件编号") private String number; //案件名称 @ApiModelProperty(dataType = "String", value = "案件名称") private String name; //第一次案发时间 @ApiModelProperty(dataType = "Date", value = "第一次案发时间") private Date firstTime; //创建时间 @ApiModelProperty(dataType = "Date", value = "创建时间") private Date ctime; //状态 0未审核 1不予立案 2受理中 3已结案 @ApiModelProperty(dataType = "String", value = "状态 0未审核 1不予立案 2受理中 3已结案") private String status; //负责人id @ApiModelProperty(dataType = "Integer", value = "负责人名称") private String userName; //案件描述 @ApiModelProperty(dataType = "String", value = "案件描述") private String description; //案件报案人数 @ApiModelProperty(dataType = "Integer", value = "案件报案人数") private Integer reportNumber; } src/main/java/com/example/jz/modle/vo/MessageVo.java
@@ -3,6 +3,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; src/main/java/com/example/jz/modle/vo/ReportVo.java
@@ -24,4 +24,8 @@ @ApiModelProperty(value = "报案人身份证号",dataType = "String") //报案人身份证号 private String idcard; //报案人id @ApiModelProperty(value = "id",dataType = "Integer") private Integer id; } src/main/java/com/example/jz/modle/vo/UserVo.java
New file @@ -0,0 +1,18 @@ package com.example.jz.modle.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(description = "负责人",value = "UserVo") public class UserVo { //负责人名称 @ApiModelProperty(dataType = "String",value = "负责人名称") private String userName; //负责人id @ApiModelProperty(dataType = "Integer",value = "负责人id") private Integer userId; } src/main/java/com/example/jz/service/CauseService.java
@@ -1,7 +1,13 @@ package com.example.jz.service; import com.baomidou.mybatisplus.extension.service.IService; import com.example.jz.modle.PageParam; import com.example.jz.modle.dto.CauseDto; import com.example.jz.modle.entity.Cause; import com.example.jz.modle.vo.CauseVo; import com.example.jz.modle.vo.UserVo; import java.util.List; /** * 案件表(Cause)表服务接口 @@ -11,5 +17,22 @@ */ public interface CauseService extends IService<Cause> { /** * @return java.lang.Integer * @Description 添加案件 * @Param [causeDto] **/ Integer addCause(CauseDto causeDto); /** * @Description 获取案件根据条件 * @Param [cause, status] * @return java.util.List<com.example.jz.modle.vo.CauseVo> **/ PageParam<CauseVo> getCauserListByCondition(String cause, Integer status, Integer size, Integer current); List<UserVo> getManagerList(); Integer updateCause(CauseDto causeDto,Integer id); } src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
@@ -1,10 +1,29 @@ package com.example.jz.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.example.jz.dao.CauseDao; import com.example.jz.dao.GroupDao; import com.example.jz.dao.ReportDao; import com.example.jz.dao.UserDao; import com.example.jz.modle.PageParam; import com.example.jz.modle.dto.CauseDto; import com.example.jz.modle.entity.Cause; import com.example.jz.modle.entity.Group; import com.example.jz.modle.entity.Report; import com.example.jz.modle.entity.User; import com.example.jz.modle.vo.CauseVo; import com.example.jz.modle.vo.UserVo; import com.example.jz.service.CauseService; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.stream.Collectors; /** * 案件表(Cause)表服务实现类 @@ -15,5 +34,83 @@ @Service("causeService") public class CauseServiceImpl extends ServiceImpl<CauseDao, Cause> implements CauseService { @Resource CauseDao causeDao; @Resource UserDao userDao; @Resource ReportDao reportDao; @Resource CauseService causeService; @Resource GroupDao groupDao; @Override public Integer addCause(CauseDto causeDto) { //创建案件 Cause cause = new Cause(); BeanUtils.copyProperties(causeDto, cause); cause.setCtime(new Date()); causeService.save(cause); //创建群组 Group group = new Group(); group.setCtime(new Date()); group.setGroupName(causeDto.getName()); group.setUserId(causeDto.getUserId()); group.setCauseId(cause.getId()); return groupDao.insert(group); } @Override public PageParam<CauseVo> getCauserListByCondition(String cause, Integer status, Integer size, Integer current) { QueryWrapper<Cause> causeQueryWrapper = new QueryWrapper<>(); if (StringUtils.isNotBlank(cause)) { causeQueryWrapper.and(a -> a.like(StringUtils.isNotBlank(cause), "number", cause) .or(StringUtils.isNotBlank(cause)) .like(StringUtils.isNotBlank(cause), "name", cause)); } if (status != null) { causeQueryWrapper.eq("status", status); } causeQueryWrapper.orderByDesc("ctime"); PageParam<Cause> causePageParam = new PageParam<>(); if (size != null) { causePageParam.setSize(size); } if (current != null) { causePageParam.setCurrent(current); } PageParam<Cause> causePage = causeDao.selectPage(causePageParam, causeQueryWrapper); List<CauseVo> causeVos = causePage.getRecords().stream().map( a -> { CauseVo causeVo = new CauseVo(); BeanUtils.copyProperties(a, causeVo); causeVo.setUserName(userDao.selectOne(new QueryWrapper<User>().eq("id", a.getUserId())).getRealName()); causeVo.setReportNumber(reportDao.selectCount(new QueryWrapper<Report>().eq("cause_id", a.getId()))); return causeVo; }).collect(Collectors.toList()); PageParam<CauseVo> causeVoPageParam = new PageParam<>(); BeanUtils.copyProperties(causePage, causeVoPageParam); causeVoPageParam.setRecords(causeVos); return causeVoPageParam; } @Override public List<UserVo> getManagerList() { return userDao.selectList(new QueryWrapper<User>().eq("role", 1)).stream().map(a -> { UserVo userVo = new UserVo(); userVo.setUserId(a.getId()); userVo.setUserName(a.getRealName()); return userVo; }).collect(Collectors.toList()); } @Override public Integer updateCause(CauseDto causeDto,Integer id) { Cause cause = new Cause(); BeanUtils.copyProperties(causeDto,cause); cause.setId(id); return causeDao.updateById(cause); } } src/main/java/com/example/jz/service/impl/WorkbenchServiceImpl.java
@@ -66,6 +66,7 @@ @Override public List<ReportVo> getAllCheckPendingList() { //查询待审核人 List<Report> reports = reportDao.selectList(new QueryWrapper<Report>().eq("status", 0).orderByDesc("ctime").last("limit 5")); ArrayList<ReportVo> reportVos = new ArrayList<>(); reports.forEach(a -> { @@ -75,6 +76,7 @@ String regex = "(?<=[\\d]{3})\\d(?=[\\d]{4})"; reportVo.setIdcard(user.getUserIdcard().replaceAll(regex, "*")); reportVo.setMobile(user.getUserMobile()); reportVo.setId(a.getId()); reportVos.add(reportVo); }); return reportVos; src/main/resources/application.yml
@@ -44,4 +44,4 @@ id-type: auto field-strategy: NOT_NULL configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl log-impl: org.apache.ibatis.logging.stdout.StdOutImpl