package com.alatus.query; import lombok.Data; @Data public class UserQuery { /** * 主键,自动增长,用户ID */ private Integer id; /** * 登录账号 */ private String loginAct; /** * 登录密码 */ private String loginPwd; /** * 用户姓名 */ private String name; /** * 用户手机 */ private String phone; /** * 用户邮箱 */ private String email; /** * 账户是否没有过期,0已过期 1正常 */ private Integer accountNoExpired; /** * 密码是否没有过期,0已过期 1正常 */ private Integer credentialsNoExpired; /** * 账号是否没有锁定,0已锁定 1正常 */ private Integer accountNoLocked; /** * 账号是否启用,0禁用 1启用 */ private Integer accountEnabled; }
package com.alatus.query; import lombok.Data; @Data public class UserQuery { /** * 主键,自动增长,用户ID */ private Integer id; /** * 登录账号 */ private String loginAct; /** * 登录密码 */ private String loginPwd; /** * 用户姓名 */ private String name; /** * 用户手机 */ private String phone; /** * 用户邮箱 */ private String email; /** * 账户是否没有过期,0已过期 1正常 */ private Integer accountNoExpired; /** * 密码是否没有过期,0已过期 1正常 */ private Integer credentialsNoExpired; /** * 账号是否没有锁定,0已锁定 1正常 */ private Integer accountNoLocked; /** * 账号是否启用,0禁用 1启用 */ private Integer accountEnabled; }
package com.alatus.service.impl; import com.alatus.constant.Constants; import com.alatus.mapper.TUserMapper; import com.alatus.model.TUser; import com.alatus.query.UserQuery; import com.fasterxml.jackson.databind.util.BeanUtil; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import jakarta.annotation.Resource; import org.springframework.beans.BeanUtils; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; import java.util.ArrayList; @Service public class UserServiceImpl implements com.alatus.service.UserService { @Resource private TUserMapper tUserMapper; @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { TUser tUser = tUserMapper.selectByLoginAct(username); if(tUser == null){ throw new UsernameNotFoundException("登陆账号不存在"); } return tUser; } @Override public PageInfo<TUser> getUserByPage(Integer current) { // 设置PageHelper和分页情况 PageHelper.startPage(current, Constants.PAGE_SIZE); // 查询 ArrayList<TUser> list = tUserMapper.selectUserByPage(); // 封装分页到PageInfo中 PageInfo<TUser> info = new PageInfo<>(list); return info; } @Override public TUser getUserById(Integer id) { return tUserMapper.selectDetailById(id); } @Override public int saveUser(UserQuery userQuery) { TUser tUser = new TUser(); // 把query对象的数据复制到user对象里面 // 这个工具类的复制要求是两个对象的属性名要相同,属性要相同 BeanUtils.copyProperties(userQuery,tUser); return tUserMapper.insertSelective(tUser); } }
package com.alatus.service.impl; import com.alatus.constant.Constants; import com.alatus.mapper.TUserMapper; import com.alatus.model.TUser; import com.alatus.query.UserQuery; import com.fasterxml.jackson.databind.util.BeanUtil; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import jakarta.annotation.Resource; import org.springframework.beans.BeanUtils; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; import java.util.ArrayList; @Service public class UserServiceImpl implements com.alatus.service.UserService { @Resource private TUserMapper tUserMapper; @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { TUser tUser = tUserMapper.selectByLoginAct(username); if(tUser == null){ throw new UsernameNotFoundException("登陆账号不存在"); } return tUser; } @Override public PageInfo<TUser> getUserByPage(Integer current) { // 设置PageHelper和分页情况 PageHelper.startPage(current, Constants.PAGE_SIZE); // 查询 ArrayList<TUser> list = tUserMapper.selectUserByPage(); // 封装分页到PageInfo中 PageInfo<TUser> info = new PageInfo<>(list); return info; } @Override public TUser getUserById(Integer id) { return tUserMapper.selectDetailById(id); } @Override public int saveUser(UserQuery userQuery) { TUser tUser = new TUser(); // 把query对象的数据复制到user对象里面 // 这个工具类的复制要求是两个对象的属性名要相同,属性要相同 BeanUtils.copyProperties(userQuery,tUser); return tUserMapper.insertSelective(tUser); } }
package com.alatus.service; import com.alatus.model.TUser; import com.alatus.query.UserQuery; import com.github.pagehelper.PageInfo; import org.springframework.security.core.userdetails.UserDetailsService; public interface UserService extends UserDetailsService { PageInfo<TUser> getUserByPage(Integer current); TUser getUserById(Integer id); int saveUser(UserQuery userQuery); }
package com.alatus.service; import com.alatus.model.TUser; import com.alatus.query.UserQuery; import com.github.pagehelper.PageInfo; import org.springframework.security.core.userdetails.UserDetailsService; public interface UserService extends UserDetailsService { PageInfo<TUser> getUserByPage(Integer current); TUser getUserById(Integer id); int saveUser(UserQuery userQuery); }
package com.alatus.web; import com.alatus.model.TUser; import com.alatus.query.UserQuery; import com.alatus.result.R; import com.alatus.service.UserService; import com.github.pagehelper.PageInfo; import jakarta.annotation.Resource; import org.springframework.security.core.Authentication; import org.springframework.web.bind.annotation.*; @RestController public class UserController { @Resource private UserService userService; // 获取登录信息 @GetMapping(value = "/api/login/info") public R loginInfo(Authentication authentication){ TUser tUser = (TUser) authentication.getPrincipal(); return R.OK(tUser); } //免登录验证 //因为发送的请求过来首先会过filter那一关,能到这说明token验证都通过了,我们直接返回200即可 @GetMapping(value = "/api/login/free") public R freeLogin(){ return R.OK(); } // 查询用户列表 @GetMapping(value = "/api/users") // 传递参数current,可传可不传, public R userPage(@RequestParam(value = "current",required = false) Integer current){ if(current == null){ current = 1; } // 返回结果为PageInfo PageInfo<TUser> userByPage = userService.getUserByPage(current); return R.OK(userByPage); } @GetMapping(value = "/api/user/{id}") public R userDetail(@PathVariable(value = "id")Integer id){ TUser tUser = userService.getUserById(id); return R.OK(tUser); } @PostMapping(value = "/api/user/add") public R addUser(UserQuery userQuery){ int save = userService.saveUser(userQuery); return save >= 1 ? R.OK() : R.FAIL(); } }
package com.alatus.web; import com.alatus.model.TUser; import com.alatus.query.UserQuery; import com.alatus.result.R; import com.alatus.service.UserService; import com.github.pagehelper.PageInfo; import jakarta.annotation.Resource; import org.springframework.security.core.Authentication; import org.springframework.web.bind.annotation.*; @RestController public class UserController { @Resource private UserService userService; // 获取登录信息 @GetMapping(value = "/api/login/info") public R loginInfo(Authentication authentication){ TUser tUser = (TUser) authentication.getPrincipal(); return R.OK(tUser); } //免登录验证 //因为发送的请求过来首先会过filter那一关,能到这说明token验证都通过了,我们直接返回200即可 @GetMapping(value = "/api/login/free") public R freeLogin(){ return R.OK(); } // 查询用户列表 @GetMapping(value = "/api/users") // 传递参数current,可传可不传, public R userPage(@RequestParam(value = "current",required = false) Integer current){ if(current == null){ current = 1; } // 返回结果为PageInfo PageInfo<TUser> userByPage = userService.getUserByPage(current); return R.OK(userByPage); } @GetMapping(value = "/api/user/{id}") public R userDetail(@PathVariable(value = "id")Integer id){ TUser tUser = userService.getUserById(id); return R.OK(tUser); } @PostMapping(value = "/api/user/add") public R addUser(UserQuery userQuery){ int save = userService.saveUser(userQuery); return save >= 1 ? R.OK() : R.FAIL(); } }
文章来源地址https://www.toymoban.com/news/detail-832146.html
文章来源:https://www.toymoban.com/news/detail-832146.html
到了这里,关于CRM项目使用Query映射类封装前端提交的数据用BeanUtils工具类转为Model对象保存到数据库中------CRM项目的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!