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 98fc764..5d1b6ef 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,13 @@ 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.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; @@ -15,6 +18,8 @@ import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; +import java.util.List; + /** * 配置类,注册web层相关组件 */ @@ -65,4 +70,21 @@ 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) { + 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 6dda929..563c18d 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; @@ -12,10 +14,7 @@ import com.sky.vo.EmployeeLoginVO; 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; @@ -90,4 +89,19 @@ public class EmployeeController { } + + /** + * 员工分页查询 + * @param employeePageQueryDTO + * @return + */ + @GetMapping("/page") + @ApiOperation("员工分页查询") + 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 fe49827..2f20fa5 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; @@ -25,4 +27,13 @@ public interface EmployeeMapper { "values" + "(#{name}, #{username}, #{password}, #{phone}, #{sex}, #{idNumber}, #{createTime}, #{updateTime}, #{createUser}, #{updateUser})") void insert(Employee employee); + + + /** + * 分页查询 + * @param employeePageQueryDTO + * @return + */ + + 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 19b7f9e..10ab5b7 100644 --- a/sky-server/src/main/java/com/sky/service/EmployeeService.java +++ b/sky-server/src/main/java/com/sky/service/EmployeeService.java @@ -2,7 +2,9 @@ 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 { @@ -19,4 +21,12 @@ public interface EmployeeService { * @param employeeDTO */ 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 6a38565..677c0ee 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 io.lettuce.core.protocol.BaseRedisCommandBuilder; 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 public class EmployeeServiceImpl implements EmployeeService { @@ -87,4 +92,21 @@ public class EmployeeServiceImpl implements EmployeeService { employeeMapper.insert(employee); } + + /** + * 员工的分页查询 + * @param employeePageQueryDTO + * @return + */ + public PageResult pageQuery(EmployeePageQueryDTO employeePageQueryDTO) { + //select * from employee limt 0, 10 + PageHelper.startPage(employeePageQueryDTO.getPage(), employeePageQueryDTO.getPageSize()); + + Page page = employeeMapper.pageQuery(employeePageQueryDTO); + + long total = page.getTotal(); + List records = page.getResult(); + 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..caa7fe5 100644 --- a/sky-server/src/main/resources/mapper/EmployeeMapper.xml +++ b/sky-server/src/main/resources/mapper/EmployeeMapper.xml @@ -1,5 +1,17 @@ + + + +