【特种设备开发中遇到的各种BUG】

增加导入按钮后,页面不显示

有可能没有引入JS

import { getToken } from ‘@/utils/auth’

验收填报后,跳转到登录页面

在这里插入图片描述

设备填报后,deptId = 0

在这里插入图片描述
来看代码逻辑
首先SpecEquipment有deptId,
specInspect.getInspectMan()获取的是填报人的真实姓名,并不是username,工号才是username
在这里插入图片描述
因此这里获取用户所属部门的方法应该改为:

userMapper.selectUserByUserName(specInspect.getJobNumber());

推送人列表不全

在这里插入图片描述
测试数据里应该是2个人,但是只显示了一个人

在这里插入图片描述

这个sp就是specPush对象,它在BUG3里没有的deptId,因此只出现了一个推送人。

所以说,这是连环BUG,解决一个,第二个也会跟着解决

访问提示 401 Unauthorized

在这里插入图片描述
在这里插入图片描述
、可以看下前端页面的延迟填报按钮对应的方法。

// 延迟填报
submitDelayInspect(){
      // 封装参数
      const data = {
        id:this.equipmentId,
        nextInspectionDate:this.form.nextInspectionDate
      };
      // 提交
      updateEquipment(data).then(response => {
        this.msgSuccess("延迟成功");
        this.$router.push({ path: "/mobile/equipment/equipment-success-page"})
      });
    },
// 修改特种设备
export function updateEquipment(data) {
  return request({
    url: '/equipment',
    method: 'put',
    data: data
  })
}

在这里插入图片描述
可以看到后台java代码上面,有个@Permission(level = ResourceLevel.SITE, permissionLogin = true),这个注解的作用是 如果没有获取token,则允许用户进行登录

因为在手机端填报,是无需登录的,因此应该改为:@Permission(permissionPublic = true)

像这样的BUG,401未鉴权,大多都是因为(注解不对)这个原因导致的。

403 forbidden

在这里插入图片描述
在这里插入图片描述
这个BUG出现有2个原因。

  • 没有加 @Permission(permissionPublic = true)
  • 加了,但是没有刷新权限。

如果还没有解决,可能是因为put请求和post请求不一样(可以把put改成post,有可能稀里糊涂通过)

posted @ 2022-04-06 08:02  layman~  阅读(39)  评论(0编辑  收藏  举报