pom.xml
@@ -48,12 +48,17 @@ <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> <version>3.0.0</version> </dependency> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.9.3</version> <version>1.9.6</version> </dependency> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.8.3</version> </dependency> </dependencies> src/main/java/com/example/jz/JzApplication.java
@@ -1,9 +1,11 @@ package com.example.jz; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @MapperScan("com.example.jz.dao") public class JzApplication { public static void main(String[] args) { src/main/java/com/example/jz/config/DefaultExceptionHandlerConfig.java
New file @@ -0,0 +1,39 @@ package com.example.jz.config; import com.example.jz.enums.BusinessHttpStatus; import com.example.jz.exception.BusinessException; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.validation.BindException; import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; /** * 自定义错误处理器 */ @Controller @RestControllerAdvice public class DefaultExceptionHandlerConfig { @ExceptionHandler(BindException.class) public ResponseEntity<String> bindExceptionHandler(BindException e) { e.printStackTrace(); return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(e.getBindingResult().getFieldErrors().get(0).getDefaultMessage()); } @ExceptionHandler(MethodArgumentNotValidException.class) public ResponseEntity<String> methodArgumentNotValidExceptionHandler(MethodArgumentNotValidException e) { e.printStackTrace(); return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(e.getBindingResult().getFieldErrors().get(0).getDefaultMessage()); } @ExceptionHandler(BusinessException.class) public ResponseEntity<String> unauthorizedExceptionHandler(BusinessException e) { e.printStackTrace(); return ResponseEntity.status(e.getHttpStatusCode()).body(e.getMessage()); } } src/main/java/com/example/jz/config/MybatisPlusConfig.java
New file @@ -0,0 +1,24 @@ package com.example.jz.config; import com.baomidou.mybatisplus.core.injector.ISqlInjector; import com.baomidou.mybatisplus.extension.plugins.OptimisticLockerInterceptor; import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration @MapperScan({"com.example.jz.dao"}) public class MybatisPlusConfig { /** * 分页插件 * @return PaginationInterceptor */ @Bean @ConditionalOnMissingBean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); } } src/main/java/com/example/jz/controller/AnnouncementController.java
@@ -1,13 +1,12 @@ 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.Announcement; import com.example.jz.service.AnnouncementService; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -37,8 +36,8 @@ * @return 所有数据 */ @GetMapping public R selectAll(Page<Announcement> page, Announcement announcement) { return success(this.announcementService.page(page, new QueryWrapper<>(announcement))); public ResponseEntity<Page<Announcement>> selectAll(Page<Announcement> page, Announcement announcement) { return ResponseEntity.ok(this.announcementService.page(page, new QueryWrapper<>(announcement))); } /** src/main/java/com/example/jz/controller/CauseController.java
File was renamed from src/main/java/com/example/jz/controller/CaseController.java @@ -1,13 +1,11 @@ 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.Case; import com.example.jz.service.CaseService; import com.example.jz.modle.entity.Cause; import com.example.jz.service.CauseService; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -15,30 +13,30 @@ import java.util.List; /** * (Case)表控制层 * (Cause)表控制层 * * @author makejava * @since 2022-07-11 16:35:56 * @since 2022-07-11 16:55:40 */ @RestController @RequestMapping("case") public class CaseController extends ApiController { @RequestMapping("cause") public class CauseController extends ApiController { /** * 服务对象 */ @Resource private CaseService caseService; private CauseService causeService; /** * 分页查询所有数据 * * @param page 分页对象 * @param case 查询实体 * @param cause 查询实体 * @return 所有数据 */ @GetMapping public R selectAll(Page<Case> page, Case case) { return success(this.caseService.page(page, new QueryWrapper<>(case))); public R selectAll(Page<Cause> page, Cause cause) { return success(this.causeService.page(page, new QueryWrapper<>(cause))); } /** @@ -49,29 +47,29 @@ */ @GetMapping("{id}") public R selectOne(@PathVariable Serializable id) { return success(this.caseService.getById(id)); return success(this.causeService.getById(id)); } /** * 新增数据 * * @param case 实体对象 * @param cause 实体对象 * @return 新增结果 */ @PostMapping public R insert(@RequestBody Case case) { return success(this.caseService.save(case)); public R insert(@RequestBody Cause cause) { return success(this.causeService.save(cause)); } /** * 修改数据 * * @param case 实体对象 * @param cause 实体对象 * @return 修改结果 */ @PutMapping public R update(@RequestBody Case case) { return success(this.caseService.updateById(case)); public R update(@RequestBody Cause cause) { return success(this.causeService.updateById(cause)); } /** @@ -82,7 +80,7 @@ */ @DeleteMapping public R delete(@RequestParam("idList") List<Long> idList) { return success(this.caseService.removeByIds(idList)); return success(this.causeService.removeByIds(idList)); } } src/main/java/com/example/jz/controller/GroupUserController.java
@@ -1,7 +1,5 @@ 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; src/main/java/com/example/jz/dao/CaseDao.java
File was deleted src/main/java/com/example/jz/dao/CauseDao.java
New file @@ -0,0 +1,15 @@ package com.example.jz.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.example.jz.modle.entity.Cause; /** * (Cause)表数据库访问层 * * @author makejava * @since 2022-07-11 16:55:40 */ public interface CauseDao extends BaseMapper<Cause> { } src/main/java/com/example/jz/enums/BusinessHttpStatus.java
New file @@ -0,0 +1,58 @@ package com.example.jz.enums; public enum BusinessHttpStatus { // 未登录 UNAUTHORIZED(401, "未授权"); private final int value; private final String msg; BusinessHttpStatus(int value, String msg) { this.value = value; this.msg = msg; } /** * Return the integer value of this status code. */ public int value() { return this.value; } /** * Return the msg of this status code. */ public String getMsg() { return msg; } /** * Return a string representation of this status code. */ @Override public String toString() { return this.value + " " + name(); } public static BusinessHttpStatus valueOf(int statusCode) { BusinessHttpStatus status = resolve(statusCode); if (status == null) { throw new IllegalArgumentException("没有找到该Http状态码包含状态 [" + statusCode + "]"); } return status; } public static BusinessHttpStatus resolve(int statusCode) { for (BusinessHttpStatus status : values()) { if (status.value == statusCode) { return status; } } return null; } } src/main/java/com/example/jz/exception/BusinessException.java
New file @@ -0,0 +1,46 @@ package com.example.jz.exception; import com.example.jz.enums.BusinessHttpStatus; import org.springframework.http.HttpStatus; public class BusinessException extends RuntimeException{ /** * */ private static final long serialVersionUID = -4137688758944857209L; /** * http状态码 */ private Integer httpStatusCode; /** * @param httpStatus http状态码 */ public BusinessException(BusinessHttpStatus httpStatus) { super(httpStatus.getMsg()); this.httpStatusCode = httpStatus.value(); } /** * @param httpStatus http状态码 */ public BusinessException(BusinessHttpStatus httpStatus, String msg) { super(msg); this.httpStatusCode = httpStatus.value(); } public BusinessException(String msg) { super(msg); this.httpStatusCode = HttpStatus.BAD_REQUEST.value(); } public Integer getHttpStatusCode() { return httpStatusCode; } } src/main/java/com/example/jz/modle/entity/Announcement.java
@@ -1,7 +1,9 @@ package com.example.jz.modle.entity; import java.util.Date; import com.baomidou.mybatisplus.extension.activerecord.Model; import java.io.Serializable; /** @@ -20,7 +22,6 @@ private Integer groupId; //创建时间 private Date createTime; public Integer getAnnouncementId() { return announcementId; src/main/java/com/example/jz/modle/entity/Cause.java
File was renamed from src/main/java/com/example/jz/modle/entity/Case.java @@ -5,13 +5,13 @@ import java.io.Serializable; /** * (Case)表实体类 * (Cause)表实体类 * * @author makejava * @since 2022-07-11 16:35:56 * @since 2022-07-11 16:55:40 */ @SuppressWarnings("serial") public class Case extends Model<Case> { public class Cause extends Model<Cause> { //案件ID private Integer id; //头像地址 @@ -28,11 +28,10 @@ private String amountInvolved; //报案材料图片地址 多个用,分隔 private String reportMaterials; //报案方式 private String reportMethod reportMethod; //报案时间 private Date reportTime; //报案方式 private String reportMethod; public Integer getId() { @@ -99,20 +98,6 @@ this.reportMaterials = reportMaterials; } public String getReportMethod reportMethod() { return reportMethod reportMethod; } public void setReportMethod reportMethod(String reportMethod reportMethod) { this.reportMethod reportMethod = reportMethod reportMethod; } public Date getReportTime() { return reportTime; } @@ -121,6 +106,14 @@ this.reportTime = reportTime; } public String getReportMethod() { return reportMethod; } public void setReportMethod(String reportMethod) { this.reportMethod = reportMethod; } /** * 获取主键值 * src/main/java/com/example/jz/service/CaseService.java
File was deleted src/main/java/com/example/jz/service/CauseService.java
New file @@ -0,0 +1,15 @@ package com.example.jz.service; import com.baomidou.mybatisplus.extension.service.IService; import com.example.jz.modle.entity.Cause; /** * (Cause)表服务接口 * * @author makejava * @since 2022-07-11 16:55:41 */ public interface CauseService extends IService<Cause> { } src/main/java/com/example/jz/service/impl/CaseServiceImpl.java
File was deleted src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
New file @@ -0,0 +1,19 @@ package com.example.jz.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.example.jz.dao.CauseDao; import com.example.jz.modle.entity.Cause; import com.example.jz.service.CauseService; import org.springframework.stereotype.Service; /** * (Cause)表服务实现类 * * @author makejava * @since 2022-07-11 16:55:41 */ @Service("causeService") public class CauseServiceImpl extends ServiceImpl<CauseDao, Cause> implements CauseService { } src/main/resources/application.properties
@@ -3,7 +3,7 @@ ### datasource #test spring.datasource.url=jdbc:mysql://42.193.1.25/:3306/job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai spring.datasource.url=jdbc:mysql://42.193.1.25:3306/qyjz?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=321$YcYl@1970! spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver