当前位置: 首页 > news >正文

添加状态信息

1首先在数据字典里加入可借阅和不可借阅状态

2导入数据字典

export default {name: "Book",dicts: ['book_borrow_status'],//导入数据字典data() {return {formData: {name: null,author: null,num: null,price: null,typeId: null,status:null//新加状态属性},

3设置状态按钮

<el-table-column label="是否可借阅" align="center" prop="status"><template slot-scope="scope"><el-switchv-model="scope.row.status"active-value="0"inactive-value="1"@change="handleStatusChange(scope.row)":disabled="scope.row.bookStock === 0"//禁用按钮></el-switch></template></el-table-column>

4设置函数实现状态功能

    handleStatusChange(row){let text = row.status === "0" ? "可借阅" : "不可借阅"this.$modal.confirm('确认要将"' + row.name + '"变为"' + text + '"吗?').then(function() {return changeBookStatus(row.id, row.status)}).then(() => {this.$modal.msgSuccess("设置" + text + "成功")}).catch(function() {row.status = row.status === "0" ? "1" : "0"})},

5实现changeBookStatus

// 图书状态修改
export function changeBookStatus(id, status) {const data = {id,status}return request({url: '/book/book/changeStatus',method: 'put',data: data})
}

6实现后端controller

    /*** 状态修改*/@PreAuthorize("@ss.hasPermi('book:book:edit')")@Log(title = "图书", businessType = BusinessType.UPDATE)@PutMapping("/changeStatus")public AjaxResult changeStatus(@RequestBody Book book){return toAjax(bookService.updateBookStatus(book));}
}

7实现业务逻辑

    /*** 修改图书状态** @param book 图书* @return 结果*/@Overridepublic int updateBookStatus(Book book){return bookMapper.updateBookStatus(book);}
}

8接口连接

IBookService接口

    /*** 修改用户状态** @param book 图书* @return 结果*/public int updateBookStatus(Book book);
}

IBookMapper接口

    public int updateBookStatus(Book book);

9mapper.xml写sql逻辑

    <update id="updateBookStatus" parameterType="Book">update t_book set status = #{status} where id = #{id}</update>

10在service实现类里写业务

当书籍不是空的时候添加自动为可借阅状态

@Overridepublic int insertBook(Book book){
//        if(book.getStatus() != null && "".equals(book.getStatus()))if(book != null &&!StringUtils.hasLength(book.getStatus())){book.setStatus("1");}return bookMapper.insertBook(book);}

当仓库为0的时候设置状态为不可借阅

@Overridepublic int updateBook(Book book){if(book.getBookStock() == 0){book.setStatus("1");}return bookMapper.updateBook(book);}

http://www.lryc.cn/news/594642.html

相关文章:

  • Docker实践:使用Docker部署blog轻量级博客系统
  • Python Matplotlib中的fontdict参数说明
  • 前后端分离项目进阶1---后端
  • 易语言+懒人精灵/按键中控群控教程(手机、主板机、模拟器通用)
  • 子网划分核心原理 (网络原理1)
  • Windows Server2022下使用SQL Server2019开发版搭建高可用集群
  • 如何用纯 HTML 文件实现 Vue.js 应用,并通过 CDN 引入 Element UI
  • 【js(3)】执行上下文/作用域链/垃圾回收与内存泄漏/闭包
  • Vue组件之间通信
  • C语言运算符优先级“潜规则”
  • 数据库的介绍和安装
  • HTTP,HTTPS
  • 文件的写出操作|文件的追加写入操作|文件操作的综合案例
  • mac安装node的步骤
  • IDEA 同时修改某个区域内所有相同变量名
  • 跑腿小程序|基于微信小程序的跑腿平台小程序设计与实现(源码+数据库+文档)
  • Taro 生命周期相关 API 详解
  • Idea或Pycharm上.idea的忽略提交的问题总结
  • Linux初识网络
  • 用 STM32 的 SYSTICK 定时器与端口复用重映射玩转嵌入式开发
  • 分布在内侧内嗅皮层(MEC)的带状细胞对NLP中的深层语义分析有什么积极的影响和启示
  • 微服务的编程测评系统-身份认证-管理员登录前端
  • .NET依赖注入IOC你了解吗?
  • 智能体性能优化:延迟、吞吐量与成本控制
  • 机器阅读理解(MRC)全面解析:任务分类、评估指标与57个数据集资源盘点
  • Nacos安装单例模式
  • 西门子 SIMATIC S7-1500 数字量输入模块:深度剖析与应用指南
  • ABQ-LLM:用于大语言模型的任意比特量化推理加速
  • Zabbix 企业级分布式监控系统深度解析
  • Android 单编 framework 相关产物输出介绍