山东大学项目实训开发日志——基于vue+springboot的医院耗材管理系统(9)

2023-11-01

 没有想到上一个问题还没有完全结束,解决了之后我们又发现了新的问题。

        关于上一个问题请移步山东大学项目实训开发日志——基于vue+springboot的医院耗材管理系统(8)_About??的博客-CSDN博客

        问题是什么呢,我们发现中心库可以看到全部科室库申请的订单,这一点没有问题;但是不同的科室库之间也能看到彼此的订单。比如说科室库A下订单后,科室库B也可以看到该订单的详情,这一点就出现了问题。

        至于为什么会出现这个问题,是因为当初写代码和测试的时候我们只建立了一个科室库,导致完全没有人想到要在不同的科室库之间设置权限,我们测试添加功能的时候,添加了另外的几个科室库,才发现了这个问题

        经过我们的讨论,我们认为科室库不应该看到其他科室库的订单,所以基于此我们进行了一些改动。

        改动的关键点是根据科室的id进行判断,在后端查看订单时,科室库只能看到与自己id相同的数据,避免了上述问题。

        如图

          代码如下:

前端代码如下:

handleViewCollect(index, row) {
      this.$router.push({
        path: '/cms/relocationDetail',
        query: {collectNo: row.collectNo, collectStatus: row.collectStatus}
      })
    },

/**
     * 获取移库单基本信息
     * 移库第一层数据
     */
    getDataCollect() {
      const billCode = this.$route.query.collectNo;
 
      fetchBill({
        pageNum: 1,
        pageSize: 50,
        keyword: billCode,
        printType: 5
      }).then(res => {
        if (res.data && res.data.list.length !== 0) {
          this.dataCollect = res.data.list[0];
        } else {
          Message.error('获取移库单基本信息失败');
        }
      });
    },


  后端代码如下:

  @ApiOperation("获取指定领用申请单信息")
    @RequestMapping(value = "/{id}", method = RequestMethod.GET)
    @ResponseBody
    public CommonResult<ReagentCollect> getItem(@PathVariable Long id) {
        ReagentCollect collect = collectService.getItem(id);
        return CommonResult.success(collect);
    }
ReagentCollectDetail getItem(Long id);
 
    /**
     * 获取所有领用详细信息列表
     */
 
    List<ReagentCollectDetail> list();
  

这次改动说大不大说小不小,但是它给了我们一个启示,那就是在现实条件下的开发,问题可能出在各种方面,要更细致地设计,规划,开发和测试。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

山东大学项目实训开发日志——基于vue+springboot的医院耗材管理系统(9) 的相关文章

  • 单击按钮重复动画

    我想每次单击按钮时都重复动画 我尝试做某事像这样 https jsfiddle net 91raod7e const dist document querySelector dist document querySelector butto
  • 当条件满足时如何打破CasperJS的重复功能?

    我想知道是否可以打破 casper repeat 循环 我有这个脚本可以做到这一点 在谷歌上搜索特工001 特工002 特工003 特工004 特工005 特工006 直到特工011 我希望它在找到文本 詹姆斯 邦德 后停止循环 现在它找到
  • 从组件传递数据

    我对 Vue 相当陌生 我正在尝试将数据从组件传递到视图 我不确定我是否在使用props正确的 我有一个对话框 当我保存时 我想将数据插入数据库 我也想重复使用addCustomer function 这就是为什么我没有将该函数放置在组件中
  • 在淘汰赛应用程序中使用 setInterval 进行轮询实现?

    我正在尝试使用 setInterval 实现简单的轮询机制 我有一个视图模型如下 define knockout jquery function ko function ViewModel var self this setInterval
  • 在 Javascript 中动态添加事件处理程序

    我在使用 Javascript 时遇到了一个奇怪的问题 我得到的是一个特定格式的字符串 我将尝试用它创建一个表 该表每行只有一个单元格 字符串的格式为 每个单元格 行 需要显示内容 将传递给的参数onmouseover当用户将鼠标移动到显示
  • JavaScript 中的正则表达式用于验证十进制数字

    我想要 JavaScript 中的正则表达式来验证十进制数字 它最多只允许两位小数 例如 它应该允许10 89但不是10 899 它还应该只允许一个句点 例如 它应该允许10 89但不是10 8 9 尝试使用以下表达式 d d 0 2 如果
  • Child_process 处理带有回车符 (\r) 的 STDOUT 流

    我正在编写一个简单的应用程序 它允许工作中的内部系统请求从远程服务器到使用 REST 调用发起的另一个远程服务器的复制过程 使用 rsync 我已经对express框架足够熟悉 并且刚刚开始尝试child process库 并偶然发现了一个
  • 使用 jquery 通配符检查 cookie 名称

    我有一个生成动态 cookie 的表单 例如 webform 62 1234356 62 1234356 可以是任意数字 我需要使用一些通配符检查来检查名称以 webform 开头的 cookie 是否存在 下面不起作用 if cookie
  • nodejs mocha suite 未定义错误

    我正在尝试使用摩卡运行一些测试 但似乎无法克服这个错误 E tdd nodejs cart gt mocha cart test js node js 201 throw e process nextTick error or err Re
  • 将上部字符转换为下部字符,将下部字符转换为上部字符(反之亦然)[重复]

    这个问题在这里已经有答案了 我需要将某些字符串中的所有较低字符转换为较高字符 并将所有较高字符转换为较低字符 例如 var testString heLLoWorld 应该 HEllOwORLD 转换后 在不保存临时字符串的情况下实现此目的
  • 在overlayImage中应用滤镜的方法在哪里?

    我想在overlayImage中应用一个过滤器 唯一的方法是在渲染后在整个画布上应用过滤器 对此没有内置支持 但很容易 破解 var overlayImageUrl load overlay image first fabric Image
  • Sequelize.js - “不关联到”

    我在从数据库获取完整数据时遇到一些问题 那是我的模型 User module exports function sequelize DataTypes return sequelize define user id type DataTyp
  • 如何设置在浏览器的新选项卡(_blank)中打开的pdf文件的标题

    这是我的尝试 是否在新选项卡上打开 但它总是显示test pdf如题 function titlepath path name alert path alert name document title name window open pa
  • 限制 jQuery id 字符串吗?

    简而言之 我的问题是字符串在 jQuery 中作为可搜索 id 或可搜索内容有什么限制 更新 我得到了 ID 部分 但不是为什么我什至无法使用该字符串搜索 html 内容 对于任何愿意告诉我一个正则表达式来将模式从 MM dd yy HH
  • 为什么从浏览器上传到 S3 时出现 403 错误?

    因此 我尝试查看此处之前的答案 但似乎没有任何效果 我正在使用 Dropzone 它似乎发出 OPTIONS 请求来获取所有允许的 CORS 相关信息 但它似乎没有正确返回 因此 通过查看 Chrome 开发工具 我有以下请求标头 Host
  • 如何按字母顺序排序并先小写排序

    如何获得以下排序的结果Food to Eat然后是 食物123 显然 第二个较低的 o 应该将 要吃的食物 带到排序后的第一个项目中 我很惊讶这个问题不容易通过谷歌找到答案 这个壮举没有包含在 javascript 标准中也让我感到惊讶 F
  • Jquery 两个字段的时间差(以小时为单位)

    我的表单中有两个字段 用户可以在其中选择输入时间 start time end time 我想在更改这些字段时重新计算另一个字段的值 我想做的是获取两次之间的小时数 例如 如果我的开始时间为 5 30 结束时间为 7 50 我想将结果 2
  • 将 div 文本分配给变量然后显示它

    我有一个简单的任务 我试图完成学习 JavaScript 但一直无法找到明确的答案 这是代码 div Testing div 基本上我希望将方框 div 中的文本存储到变量中 然后 我想在页面的不同部分显示该变量的文本 使用上面的代码我得到
  • 使用 javascript Array reduce() 方法有什么真正的好处吗?

    reduce 方法的大多数用例都可以使用 for 循环轻松重写 对 JSPerf 的测试表明 reduce 通常会慢 60 75 具体取决于每次迭代内执行的操作 除了能够以 函数式风格 编写代码之外 还有什么真正的理由使用reduce 吗
  • 如何使用引用该键的变量来获取对象键中的值?

    我有一个对象 我可以引用密钥a如下 var obj a A b B c C console log obj a return string A 我想通过使用变量引用对象键来获取值 如下所示 var name a console log ob

随机推荐

  • nginx 添加http header头,进行跨域设置(“add_header“ directive is not allowed)

    有时候我们想对某个项目进行跨域访问限制 不管是静态目录文件 还是其他 动态文件还好说 可以在代码里添加 如php header Access Control Allow Origin http www a com header Access
  • 基于MeSC与交感神经作用关系的压力水平与白发模拟系统和压力规划系统(更新中)

    基于MeSC与交感神经作用关系的压力水平与白发模拟系统和压力规划系统 一个本人的Matlab项目 可用于根据压力水平模拟白发水平 并根据工作情况给出白发量最少的合理的压力规划 这是本学期 数值计算方法 我做的一个期末大作业 模型还未完全更新
  • 方差分析anova

    方差分析 参考 http wiki mbalib com wiki E6 96 B9 E5 B7 AE E5 88 86 E6 9E 90 方差分析 Analysis of Variance 简称ANOVA 什么是方差分析 方差分析 ANO
  • 【Python八股文系列】:100个Python的面试/笔试高频考点

    Python的100个面试 笔试高频考点 本文主要整理了关于Python的面试 笔试的一些考点 可用于查漏补缺 涉及到的一些Python进阶知识 可以查看专栏学习 Python进阶 quad quad 1 解释型和编译型语言的区别 编译型语
  • 调用接口登录禅道_java调用api接口

    api 可以admin登录禅道 看下后台 二次开发 api 可以看下手册 http devel cnezsoft com book extension api intro 43 html http devel cnezsoft com bo
  • SVN使用教程

    摘自 SVN使用教程 地址 https www bilibili com video BV1k4411m7mP from search seid 1516107384812084869 spm id from 333 337 0 0 摘自
  • 笨办法学python 习题29

    习题29 在atom中的代码 people 20 cats 30 dogs 15 if people lt cats print too much cats if people gt cats print not many cats if
  • perl内置的DATA文件句柄

    当前 个人使用 最常见的perl脚本应用场景是针对文本的操作 编写perl脚本的时候 经常要手动创建一个待处理的文本 其实 perl内置了一个DATA文件句柄 就是为了perl脚本测试用的 mark 记录一下 usr local bin p
  • 使用IntelliJ IDEA 15和Maven创建Java Web项目

    1 Maven简介 相对于传统的项目 Maven 下管理和构建的项目真的非常好用和简单 所以这里也强调下 尽量使用此类工具进行项目构建 它可以管理项目的整个生命周期 可以通过其命令做所有相关的工作 其常用命令如下 mvn compile m
  • 深入浅出的webpack构建工具---devTool中SourceMap模式详解(四)

    阅读目录 一 什么是SourceMap 二 理解webpack中的SourceMap的eval inline sourceMap cheap module 三 开发环境和线上环境如何选择sourceMap 回到顶部 一 什么是SourceM
  • 【vue】vue2.5的使用

    简单的vue实例包含一个index html主页文件 一个vue js框架文件 一 标签数据绑定 引用实例中data数据 1 插值表达式 div msg div 2 v text data中属性名 div div 3 v html data
  • 零拷贝的实现原理

    文章目录 引入 DMA PageCache 零拷贝 mmap sendfile SG DMA 使用零拷贝技术的项目 引入 在Java架构直通车 Kafka介绍和高性能原因一节中 介绍了Kafka的Zero Copy技术 本文将深入探究一下Z
  • docker安装和基本操作

    简介 docker的三个基本概念 镜像 Image Docker 镜像可以看作是一个特殊的文件系统 除了提供容器运行时所需的程序 库 资源 配置等文件外 还包含了一些为运行时准备的一些配置参数 如匿名卷 环境变量 用户等 容器 Contai
  • 字符设备(可直接操作硬件--寄存器)

    字符设备驱动 驱动是为用户 应用层 服务的 操作硬件是过程 目的是用户 字符驱动在软件架构中的位置 设备号 当用户访问 文件节点的时候 比如 open dev u32无符号整型 可对应2 32个设备 其中高12bit称为主设备号 低20bi
  • idea连接Tomcat不支持发行版本问题

    会遇到这样的情况 解决方法是点击蓝色那个servlet01 第二步找到语言级别选项 降到可以使用的就行再点击应用确定 接下来就解决了发行版本不可用
  • Vue2 项目小技巧

    生产环境去除 console log 1 安装webpack插件 uglifyjs webpack plugin https www npmjs com package uglifyjs webpack plugin 2 项目build 下
  • idea一键启动多个微服务并设置每个服务的占用内存,优化空间

    1 首先点击Edit Configurations进入修改配置页面 如下图 2 在弹出的页面中点击左上角加号 选中Compount 3 选中创建出来的Compount 点击右侧加号 将微服务都加入进来 我这已经是加入完的了 因此只显示了几个
  • 常用的排序算法及其适用场景

    1 介绍 常用的排序算法主要有冒泡排序 选择排序 插入排序 希尔排序 堆排序 归并排序 快速排序 桶排序等 2 稳定性 稳定的排序算法 冒泡排序 插入排序 不稳定的排序算法 选择排序 希尔排序 堆排序 归并排序 快速排序 3 排序算法的实现
  • 数据库的介绍

    1 什么是数据库 数据库是按照数据结构来组织 存储和管理数据的仓库 通常所说的数据库表示的是数据库的管理系统 并非是在的数据仓库 2 数据库的发展史 2 1早期的数据库 早期的数据库的存储方式是通过大量的分类 比较和表格绘制的机器运行数百万
  • 山东大学项目实训开发日志——基于vue+springboot的医院耗材管理系统(9)

    没有想到上一个问题还没有完全结束 解决了之后我们又发现了新的问题 关于上一个问题请移步山东大学项目实训开发日志 基于vue springboot的医院耗材管理系统 8 About 的博客 CSDN博客 问题是什么呢 我们发现中心库可以看到全