You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

182 lines
4.1 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. ```
  2. TODO:
  3. 1. 数据库文件是否被破坏检查
  4. 2. 数据库文件如果被破坏,自动恢复默认配置
  5. 坐标XY方向约定:
  6. 0 ----------------------->
  7. | (X)
  8. |
  9. |
  10. |
  11. |
  12. |
  13. v(Y)
  14. 舵机位置约定:
  15. 抓手
  16. 1.夹紧位置为0
  17. 2.最大张开位置为300
  18. 3.垂直位置70
  19. 水平位置
  20. 初始位置为0
  21. 2.水平移动舵机初始化位置为200(处于设备最后端)
  22. 复位要求:
  23. 1. 板夹仓推杆电机需要处于零点位置
  24. 2. 光学模组推杆电机需要处于零点位置
  25. 3. 试管架通道中没有试管架
  26. 4. 出料口没有试管架
  27. 5. 进出料位置没有试管
  28. 逻辑漏洞
  29. ```
  30. ```
  31. ```
  32. ```
  33. ==========================模块参数-维护===========================
  34. 参数类型,模块参数:
  35. 模块名称,模块ID,参数ID,参数数值,参数名称
  36. 前端页面:
  37. 一级菜单,模块名称
  38. 二级菜单,参数列表
  39. 功能:
  40. 改,查,刷新到硬件
  41. 后端逻辑:
  42. 执行刷新到硬件后,参数全刷新到底层硬件
  43. 设备开机后,
  44. 首先自动刷新所有参数到硬件。
  45. ```
  46. ```
  47. 硬件服务目标
  48. 单独调试每一个业务动作
  49. 硬件服务参数维护
  50. 1. 每个服务一个数据库
  51. 2. 数据格式为key-val
  52. 表单格式:
  53. key,chName,valType,val
  54. valType:
  55. float
  56. int
  57. bool
  58. Pos3d
  59. RectangularPosSet
  60. ```
  61. 前后端交互:
  62. ```
  63. 前端的代码:
  64. 1. 弹出提示框
  65. 2. 用户交互
  66. 3. 提交数据
  67. 4. 触发机械动作
  68. 后端代码:业务逻辑
  69. 约定:
  70. 1.只要是触发短暂的机械动作,前端均弹出蒙板加载页面。(短暂意味着,不可中断,几分钟的执行完成)
  71. 2.设备主逻辑(非阻塞,调用后端方法)
  72. 启动
  73. 停止
  74. 暂停
  75. 3.配置提交,无机械动作,直接提交到数据库。
  76. ```
  77. ```
  78. 具体业务:
  79. 1. 系统初始化
  80. 登录后,弹出提示话,询问用户是否进行设备初始化。
  81. 如何实现:
  82. 页面切换,弹出提示框,用户点击确认,提交初始化请求到后台。
  83. 后台Service阻塞执行动作,返回执行结果。执行结果中携带是否执行成功。
  84. 2.
  85. 前端:
  86. 1. 弹窗信息提示
  87. 2.
  88. 错误信息的展示:
  89. 后端抛出错误事件
  90. 异常中携带用于展示的错误信息。
  91. 后端执行方法,返回错误码,前端直接显示错误码的信息即可。
  92. 错误码对应的中英文字符串存储在数据库中。
  93. 执行动作,需要执行一些前置动作。由前端进行状态检查,确定需要执行前置动作后,弹出提示框,用户点击确认,然后执行动作。
  94. 哪些动作需要蒙版:
  95. 1. 非设备启动动作外均需要蒙版
  96. 2. 项目手动配置中,根据耗材的减少自动更新状态信息。
  97. 1.总数从后端拿到
  98. 2.用户每提交和选中一个项目后,向后台提交配置,同时返回剩余量。
  99. 3.
  100. *:前端每一次点击,将更新的内容提交到后台,后台返回前端当前页面所有状态信息。(非表单信息)
  101. *:
  102. 后台存储:
  103. 耗材总数
  104. ```
  105. ```
  106. ```
  107. 1. 急诊逻辑
  108. 点击急诊位
  109. ---> 弹出是否添加急诊
  110. ---> 点击确认
  111. ---> 弹出急诊添加涉及到的信息框
  112. 配置好信息后 ---> 点击添加
  113. ```
  114. ```
  115. 1. 执行机械相关的动作都需要加载一个蒙版
  116. 2. 非机械相关的动作,无须蒙版
  117. 3. 每次提交一次请求,都返回两类信息
  118. 1. 是否弹出错误提示框
  119. 2. 全部的前端状态信息。
  120. 4.
  121. ```
  122. ```