苍穹外卖启用禁用员工功能无效

        我在写黑马最新苍穹外卖启用禁用功能无效,因为我也是初学者,我跟着他的思路以及代码一步步来但就是不生效,对此我回看了好几遍确认自己无误后,我猜测可能id查询时出现精度丢失,我决定用自己的思路及方法来重写这一功能。

        首先黑马是用mybatis在mapper中通过注解的方式来实现这一功能。我改写用mybatis-plus来完成这一功能。先在pom中导入坐标依赖。

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.2</version>
</dependency>

  2. 然后再mapper中继承baseMapper

@Mapper
public interface EmployeeMapper extends BaseMapper<Employee> {

}

3.控制层通过id来查询员工信息,这里注意数据库中id是long型,长度有18位,很可能出现精度丢失查询不到的情况,这里就要自己去将id改为string类型来查询或者自己手动去数据库修改id为简单数字。

控制层代码如下

@GetMapping("/{id}")
    public Result<Employee> getById(@PathVariable Integer id) {
        Employee employee = employeeService.getById(id);
        return Result.success(employee);
    }

4.业务层代码

public void startOrStop(Integer status, Long id) {
        LambdaQueryWrapper<Employee> qw = new LambdaQueryWrapper<>();//查询条件构造器
        //根据前端传过来的id获取员工数据
        qw.eq(Employee::getId, id);
        Employee employee = employeeMapper.selectOne(qw);
        //修改用户状态
        employee.setStatus(status);
        //根据mybatis-plus提供的方法修改员工状态,注意这是BaseMapper提供的方法
        employeeMapper.update(employee, qw);
    }

5.最后效果如下

 功能就成功实现啦。

本人也是初学者,将自己学习中遇到的问题分享出来,希望对大家有所帮助,其实最大的问题就是id查询会存在精度丢失,其实后面修改功能不出现回显也很有可能是这种问题,不知道大家会不会也出现这种问题。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值