进销存系统_用户管理(10)
Posted 上善若水
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进销存系统_用户管理(10)相关的知识,希望对你有一定的参考价值。
一、代码结构
二、用户管理模块
2.1、用户基本信息管理
- 界面原型
- 用户主页列表查询流程
- 代码
MybatisPlusConfig.java
package com.xbmu.admin.config;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Bean;
/**
* MybatisPlus配置类
* @author bitaotao
* @since 2021-09-15
*/
@SpringBootConfiguration
public class MybatisPlusConfig {
@Bean
public MybatisPlusInterceptor paginationInnerInterceptor(){
MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.mysql));
return mybatisPlusInterceptor;
}
}
BaseQuery.java
package com.xbmu.admin.query;
import lombok.Data;
/**
* <p>
* 基本查询,分页参数
* </p>
*
* @author bitaotao
* @since 2021-09-15
*/
@Data
public class BaseQuery {
private Integer page = 1;
private Integer limit = 10;
}
UserQuery.java
package com.xbmu.admin.query;
import lombok.Data;
/**
* <p>
* 用户查询条件
* </p>
*
* @author bitaotao
* @since 2021-09-15
*/
@Data
public class UserQuery extends BaseQuery{
private String userName;
}
UserController.java
/**
* 用户管理主页
* @return
*/
@RequestMapping("index")
public String index(){
return "user/user";
}
/**
* 用户列表查询接口
* @param userQuery 用户查询条件
* @return
*/
@RequestMapping("list")
@ResponseBody
public Map<String,Object> userList(UserQuery userQuery){
return userService.userList(userQuery);
}
UserServiceImpl.java
@Override
public Map<String, Object> userList(UserQuery userQuery) {
IPage<User> page = new Page<User>(userQuery.getPage(),userQuery.getLimit());
QueryWrapper<User> queryWrapper = new QueryWrapper<User>();
queryWrapper.eq("is_del",0);
if(StringUtils.isNotBlank(userQuery.getUserName())){
queryWrapper.like("user_name",userQuery.getUserName());
}
page = this.baseMapper.selectPage(page,queryWrapper);
Map<String,Object> resultMap = new HashMap<>();
resultMap.put("code",0);
resultMap.put("msg","");
resultMap.put("data",page.getRecords());
resultMap.put("count",page.getTotal());
return resultMap;
}
2.2、添加 | 更新用户记录
- 界面原型
1.添加用户记录
2.更新用户记录
- 添加 | 更新用户记录流程
- 代码
UserController.java
/**
* 添加 / 更新用户页
* @param id
* @param model
* @return
*/
@RequestMapping("addOrUpdateUserPage")
public String addOrUpdatePage(Integer id, Model model){
if(null != id){
model.addAttribute("user",userService.getById(id));
}
return "user/add_update";
}
/**
* 保存用户信息
* @param user 用户对象
* @return
*/
@RequestMapping("save")
@ResponseBody
public RespBean saveUser(User user){
userService.saveUser(user);
return RespBean.success("用户记录添加成功!");
}
/**
* 更新用户信息
* @param user 用户对象
* @return
*/
@RequestMapping("update")
@ResponseBody
public RespBean updateUser(User user){
userService.updateUser(user);
return RespBean.success("用户记录更新成功!");
}
UserServiceImpl.java
/**
* 保存用户对象
* @param user 用户对象
*/
@Override
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public void saveUser(User user) {
/**
* 用户名
* 非空 不可重复
* 用户密码默认123456
* 用户默认有效
*/
AssertUtil.isTrue(StringUtils.isBlank(user.getUsername()),"用户名不能为空!");
AssertUtil.isTrue(null != this.findUserByUserName(user.getUsername()),"用户名已存在!");
user.setPassword(passwordEncoder.encode("123456"));
user.setIsDel(0);
AssertUtil.isTrue(!(this.save(user)),"用户记录添加失败!");
}
/**
* 更新用户对象
* @param user 用户对象
*/
@Override
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public void updateUser(User user) {
/**
* 用户名
* 非空 不可重复
*/
AssertUtil.isTrue(StringUtils.isBlank(user.getUsername()),"用户名不能为空!");
User tempUser = this.findUserByUserName(user.getUsername());
AssertUtil.isTrue(null != tempUser && !(tempUser.getId().equals(user.getId())),"用户名已存在!");
AssertUtil.isTrue(!(this.updateById(user)),"用户记录更新失败!");
}
2.3、删除用户记录
- 界面原型
- 删除用户记录流程
- 代码
UserController.java
/**
* 删除用户
* @param ids 用户id,集合
* @return
*/
@RequestMapping("delete")
@ResponseBody
public RespBean deleteUser(Integer[] ids){
userService.deleteUser(ids);
return RespBean.success("用户记录删除成功!");
}
UserServiceImpl.java
@Override
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public void deleteUser(Integer[] ids) {
AssertUtil.isTrue(null == ids || ids.length == 0,"请选择待删除的记录id!");
List<User> users = new ArrayList<>();
for (Integer id : ids) {
User tempUser = this.getById(id);
tempUser.setIsDel(1);
users.add(tempUser);
}
AssertUtil.isTrue(!(this.updateBatchById(users)),"用户记录删除失败!");
}
以上是关于进销存系统_用户管理(10)的主要内容,如果未能解决你的问题,请参考以下文章
进销存系统_SpringSecurity权限框架&登录&用户密码加密&退出