From 7559013e609dcd3066ef3cf993801abf6a6b5e80 Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Mon, 10 Nov 2025 11:13:17 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8B=8D=E7=A9=B9=E5=A4=96=E5=8D=96--=E5=91=98?= =?UTF-8?q?=E5=B7=A5=E7=AE=A1=E7=90=86--=E5=88=86=E9=A1=B5=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2--=E6=97=B6=E9=97=B4=E7=BB=9F=E4=B8=80=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/sky/entity/Employee.java | 5 ++-- .../com/sky/config/WebMvcConfiguration.java | 22 +++++++++++++++++ .../controller/admin/EmployeeController.java | 16 +++++++++---- .../java/com/sky/mapper/EmployeeMapper.java | 4 ++++ .../java/com/sky/service/EmployeeService.java | 11 ++++++++- .../sky/service/impl/EmployeeServiceImpl.java | 24 +++++++++++++++++++ .../main/resources/mapper/EmployeeMapper.xml | 9 +++++++ 7 files changed, 84 insertions(+), 7 deletions(-) diff --git a/sky-pojo/src/main/java/com/sky/entity/Employee.java b/sky-pojo/src/main/java/com/sky/entity/Employee.java index 0076cc2..f3535cc 100644 --- a/sky-pojo/src/main/java/com/sky/entity/Employee.java +++ b/sky-pojo/src/main/java/com/sky/entity/Employee.java @@ -1,5 +1,6 @@ package com.sky.entity; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -32,10 +33,10 @@ public class Employee implements Serializable { private Integer status; - //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") +// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")//将对应字段根据指定模式转换为json内容 private LocalDateTime createTime; - //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") +// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; private Long createUser; diff --git a/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java b/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java index ec52adc..4608e21 100644 --- a/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java +++ b/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java @@ -1,10 +1,14 @@ package com.sky.config; import com.sky.interceptor.JwtTokenAdminInterceptor; +import com.sky.json.JacksonObjectMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.http.converter.smile.MappingJackson2SmileHttpMessageConverter; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; @@ -15,6 +19,8 @@ import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; +import java.util.List; + /** * 配置类,注册web层相关组件 */ @@ -68,4 +74,20 @@ public class WebMvcConfiguration extends WebMvcConfigurationSupport { registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); } + + /** + * 扩展springMVC框架的消息转化器 + * @param converters + */ + @Override + protected void extendMessageConverters(List> converters) { + super.extendMessageConverters(converters); + log.info("扩展消息转换器..."); + //创建一个消息转换器对象 + MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(); + //需要为消息转换器设置一个对象转换器,可以将java对象序列化为指定json数据 + converter.setObjectMapper(new JacksonObjectMapper()); + //将自己定义的消息转换器,加入到默认的容器中,并设置自定义转换器为第一个,保证它一定生效 + converters.add(0,converter); + } } diff --git a/sky-server/src/main/java/com/sky/controller/admin/EmployeeController.java b/sky-server/src/main/java/com/sky/controller/admin/EmployeeController.java index 3ace49d..f497233 100644 --- a/sky-server/src/main/java/com/sky/controller/admin/EmployeeController.java +++ b/sky-server/src/main/java/com/sky/controller/admin/EmployeeController.java @@ -3,8 +3,10 @@ package com.sky.controller.admin; import com.sky.constant.JwtClaimsConstant; import com.sky.dto.EmployeeDTO; import com.sky.dto.EmployeeLoginDTO; +import com.sky.dto.EmployeePageQueryDTO; import com.sky.entity.Employee; import com.sky.properties.JwtProperties; +import com.sky.result.PageResult; import com.sky.result.Result; import com.sky.service.EmployeeService; import com.sky.utils.JwtUtil; @@ -13,10 +15,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.Map; @@ -92,4 +91,13 @@ public class EmployeeController { return Result.success(); } + @ApiOperation("员工分页查询") + @GetMapping("/page") + public Result page(EmployeePageQueryDTO employeePageQueryDTO){ + log.info("员工分页查询:{}",employeePageQueryDTO); + //调用业务层的分页功能 + PageResult pageResult = employeeService.pageQuery(employeePageQueryDTO); + return Result.success(pageResult); + } + } diff --git a/sky-server/src/main/java/com/sky/mapper/EmployeeMapper.java b/sky-server/src/main/java/com/sky/mapper/EmployeeMapper.java index 0518b9d..b2bda6c 100644 --- a/sky-server/src/main/java/com/sky/mapper/EmployeeMapper.java +++ b/sky-server/src/main/java/com/sky/mapper/EmployeeMapper.java @@ -1,5 +1,7 @@ package com.sky.mapper; +import com.github.pagehelper.Page; +import com.sky.dto.EmployeePageQueryDTO; import com.sky.entity.Employee; import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Mapper; @@ -23,4 +25,6 @@ public interface EmployeeMapper { @Insert("insert into employee (name, username, password, phone, sex, id_number, create_time, update_time, create_user, update_user) " + "values (#{name},#{username},#{password},#{phone},#{sex},#{idNumber},#{createTime},#{updateTime},#{createUser},#{updateUser})") void insert(Employee employee); + + Page pageQuery(EmployeePageQueryDTO employeePageQueryDTO); } diff --git a/sky-server/src/main/java/com/sky/service/EmployeeService.java b/sky-server/src/main/java/com/sky/service/EmployeeService.java index 2a85904..b558d78 100644 --- a/sky-server/src/main/java/com/sky/service/EmployeeService.java +++ b/sky-server/src/main/java/com/sky/service/EmployeeService.java @@ -2,9 +2,11 @@ package com.sky.service; import com.sky.dto.EmployeeDTO; import com.sky.dto.EmployeeLoginDTO; +import com.sky.dto.EmployeePageQueryDTO; import com.sky.entity.Employee; +import com.sky.result.PageResult; - public interface EmployeeService { +public interface EmployeeService { /** * 员工登录 @@ -17,4 +19,11 @@ import com.sky.entity.Employee; 新增员工 */ void save(EmployeeDTO employeeDTO); + + /** + * 员工分页查询 + * @param employeePageQueryDTO + * @return + */ + PageResult pageQuery(EmployeePageQueryDTO employeePageQueryDTO); } diff --git a/sky-server/src/main/java/com/sky/service/impl/EmployeeServiceImpl.java b/sky-server/src/main/java/com/sky/service/impl/EmployeeServiceImpl.java index 79d4f00..51163b0 100644 --- a/sky-server/src/main/java/com/sky/service/impl/EmployeeServiceImpl.java +++ b/sky-server/src/main/java/com/sky/service/impl/EmployeeServiceImpl.java @@ -1,16 +1,20 @@ package com.sky.service.impl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; import com.sky.constant.MessageConstant; import com.sky.constant.PasswordConstant; import com.sky.constant.StatusConstant; import com.sky.context.BaseContext; import com.sky.dto.EmployeeDTO; import com.sky.dto.EmployeeLoginDTO; +import com.sky.dto.EmployeePageQueryDTO; import com.sky.entity.Employee; import com.sky.exception.AccountLockedException; import com.sky.exception.AccountNotFoundException; import com.sky.exception.PasswordErrorException; import com.sky.mapper.EmployeeMapper; +import com.sky.result.PageResult; import com.sky.service.EmployeeService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; @@ -19,6 +23,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.DigestUtils; import java.time.LocalDateTime; +import java.util.List; @Service @Slf4j @@ -91,4 +96,23 @@ public class EmployeeServiceImpl implements EmployeeService { employeeMapper.insert(employee); } + /** + * 员工分页查询 + * @param employeePageQueryDTO + * @return + */ + @Override + public PageResult pageQuery(EmployeePageQueryDTO employeePageQueryDTO) { + //select * from employee limit 5,5; + //使用PageHelper插件进行分页数据处理 + PageHelper.startPage(employeePageQueryDTO.getPage(), employeePageQueryDTO.getPageSize()); + //调用基本的查询操作 + Page page = employeeMapper.pageQuery(employeePageQueryDTO); + //获取分页查询的结果数据 + List records = page.getResult(); + long total = page.getTotal(); + + return new PageResult(total,records); + } + } diff --git a/sky-server/src/main/resources/mapper/EmployeeMapper.xml b/sky-server/src/main/resources/mapper/EmployeeMapper.xml index 3c3dc8d..4385d41 100644 --- a/sky-server/src/main/resources/mapper/EmployeeMapper.xml +++ b/sky-server/src/main/resources/mapper/EmployeeMapper.xml @@ -2,4 +2,13 @@ +