query.js 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305
  1. /* 数据配置格式
  2. {
  3. // 设备相关
  4. 'device': {
  5. // 设备档案列表编辑/删除操作权限角色
  6. 'hasDeviceRole': ['xtgljs', 'sbgly', 'sbglxzfzr', 'zhsfzr'],
  7. // 设备状态别名
  8. 'stateList': {
  9. '停用': '停用',
  10. '报废': '报废',
  11. '合格': '合格'
  12. },
  13. // 设备档案列表设备类型筛选
  14. 'typeList': {
  15. '检验系统': '检验系统',
  16. '通用设备': '通用设备',
  17. '软件': '软件',
  18. '信息系统': '信息系统'
  19. },
  20. // 设备档案卡关联信息
  21. 'tabList': {
  22. '维护项目': '维护项目',
  23. '附属设备及配件': '附属设备及配件',
  24. '使用与维护记录': '使用与维护记录',
  25. '校准记录': '校准记录',
  26. '维修记录': '维修记录',
  27. '停用、报废记录': '停用、报废记录',
  28. '性能验证记录': '性能验证记录'
  29. },
  30. // 是否显示系统设备编号(形如JYK-XXXX的系统生成编号)
  31. 'hideSysDeviceNo': false
  32. },
  33. // 设备标签
  34. 'deviceTag': {
  35. // 设备标签模板
  36. 'tagName': 'deviceTagTemplateTwo',
  37. 'tagData': {
  38. // 标签标题
  39. 'title': '威宁县人民医院检验科标识卡',
  40. // 标签展示信息
  41. 'columns': [
  42. {
  43. 'label': '仪器名称',
  44. 'field': 'name'
  45. },
  46. {
  47. 'label': '设备编号',
  48. 'field': 'serial'
  49. },
  50. {
  51. 'label': '型号',
  52. 'field': 'model'
  53. },
  54. {
  55. 'label': '责任人',
  56. 'field': 'personInCharge'
  57. },
  58. {
  59. 'label': '设备分组',
  60. 'field': 'deviceGrouping'
  61. },
  62. {
  63. 'label': '放置地点',
  64. 'field': 'placeOfPlacement'
  65. },
  66. {
  67. 'label': '校准时间',
  68. 'field': 'calibrationDate'
  69. },
  70. {
  71. 'label': '下次校准时间',
  72. 'field': 'nextCalibrationDate'
  73. },
  74. {
  75. 'label': '启用日期',
  76. 'field': 'commissioningDate'
  77. },
  78. {
  79. 'label': '设备状态',
  80. 'field': 'deviceStatus'
  81. }
  82. ],
  83. // 标签宽度
  84. 'width': 330
  85. }
  86. },
  87. // 设备检定校准记录列表打印标签配置
  88. 'verificationTag':{
  89. 'tagData': {
  90. // 设备编号是否取值原设备编号
  91. 'originalDevice':true,
  92. // 设备型号是否显示
  93. 'modelNumber':true
  94. }
  95. },
  96. // 风险相关
  97. 'risk': {
  98. // 风险系数计算方式
  99. 'culWays': {
  100. '1': '风险矩阵法',
  101. '2': 'FMEA法',
  102. '3': 'S*P'
  103. }
  104. },
  105. // 设施环境相关
  106. 'facilityEnv': {
  107. // 设施环境类型
  108. 'typeList': {
  109. '01-室内温湿度监控': {
  110. 'label': '室内温湿度监控',
  111. // 功能页面路径
  112. 'path': '/sshjgl/wdjc/snwsdjkcd',
  113. // 对应类型设施环境配置是否显示设备选择
  114. 'showDevice': false,
  115. // 设施环境配置除共用字段外额外显示字段
  116. 'displayField': [],
  117. // 设施环境配置除共用字段外额外必填字段
  118. 'requireField': ['fang_jian_']
  119. },
  120. '02-冰箱温度监控': {
  121. 'label': '冰箱温度监控',
  122. 'path': '/sshjgl/wdjc/bxwdjc',
  123. 'showDevice': true,
  124. 'displayField': ['deviceno1_', 'devicename1_'],
  125. 'requireField': ['deviceno1_', 'devicename1_']
  126. },
  127. '03-温浴箱温度监控': {
  128. 'label': '温浴箱温度监控',
  129. 'path': '/sshjgl/wdjc/wyxwdjkywh',
  130. 'showDevice': true,
  131. 'displayField': ['deviceno1_', 'devicename1_'],
  132. 'requireField': ['deviceno1_', 'devicename1_']
  133. },
  134. '04-阴凉柜温度监控': {
  135. 'label': '阴凉柜温度监控',
  136. 'path': '/sshjgl/wdjc/ylgwdjc',
  137. 'showDevice': true,
  138. 'displayField': ['deviceno1_', 'devicename1_'],
  139. 'requireField': ['deviceno1_', 'devicename1_']
  140. },
  141. '05-纯水机水质监测': {
  142. 'label': '纯水机水质监测',
  143. 'path': '/sshjgl/csjszjcb',
  144. 'showDevice': true,
  145. 'displayField': ['deviceno1_', 'devicename1_'],
  146. 'requireField': []
  147. },
  148. '06-每日安全检查': {
  149. 'label': '每日安全检查',
  150. 'path': '/sshjgl/aqgl/mraqjc',
  151. 'showDevice': false,
  152. 'displayField': [],
  153. 'requireField': []
  154. },
  155. '07-每月安全检查': {
  156. 'label': '每月安全检查',
  157. 'path': '/sshjgl/aqgl/myaqjc',
  158. 'showDevice': true,
  159. 'displayField': ['deviceno1_', 'devicename1_'],
  160. 'requireField': []
  161. },
  162. '08-含氯有效性监测': {
  163. 'label': '含氯有效性监测',
  164. 'path': '/sshjgl/aqgl/hlyxxjc',
  165. 'showDevice': false,
  166. 'displayField': [],
  167. 'requireField': []
  168. },
  169. '10-洗眼器检查': {
  170. 'label': '洗眼器检查',
  171. 'path': '/sshjgl/aqgl/xyqjc',
  172. 'showDevice': true,
  173. 'displayField': ['deviceno1_', 'devicename1_'],
  174. 'requireField': []
  175. },
  176. '11-紧急淋浴器检查': {
  177. 'label': '紧急淋浴器检查',
  178. 'path': '/sshjgl/aqgl/jjlyqjc',
  179. 'showDevice': true,
  180. 'displayField': ['deviceno1_', 'devicename1_'],
  181. 'requireField': []
  182. },
  183. '12-紫外灯消毒': {
  184. 'label': '紫外灯消毒',
  185. 'path': '/sshjgl/aqgl/jykzwdxdjlb',
  186. 'showDevice': true,
  187. 'displayField': ['deviceno1_', 'devicename1_'],
  188. 'requireField': []
  189. },
  190. '13-高压灭菌': {
  191. 'label': '高压灭菌',
  192. 'path': '/sshjgl/aqgl/gymjjlb',
  193. 'showDevice': true,
  194. 'displayField': ['deviceno1_', 'devicename1_'],
  195. 'requireField': []
  196. },
  197. '14-空气消毒机': {
  198. 'label': '空气消毒机',
  199. 'path': '/sshjgl/aqgl/xdjsyjlb',
  200. 'showDevice': true,
  201. 'displayField': ['deviceno1_', 'devicename1_'],
  202. 'requireField': []
  203. },
  204. '15-日常防护消毒': {
  205. 'label': '日常防护消毒',
  206. 'path': '/sshjgl/aqgl/rcfhxd',
  207. 'showDevice': false,
  208. 'displayField': [],
  209. 'requireField': []
  210. },
  211. '16-设备排出废液': {
  212. 'label': '设备排出废液',
  213. 'path': '/sshjgl/aqgl/sbpcfyxd',
  214. 'showDevice': true,
  215. 'displayField': ['deviceno1_', 'devicename1_'],
  216. 'requireField': ['deviceno1_', 'devicename1_']
  217. }
  218. }
  219. },
  220. // 系统通用
  221. 'system': {
  222. // 报表预览、PDF预览页面下载权限
  223. 'highRoles': ['xtgljs', 'syszr', 'zlfzr', 'jsfzr', 'zhsfzr', 'wjglzzc', 'wjgly', 'wjxzjs'],
  224. // 体系运行记录盒显示流程编制时间,默认仅展示完成时间
  225. 'reocrdsBoxShowStartDate': false,
  226. // 体系运行记录盒显示流程完成时间
  227. 'reocrdsBoxShowEndDate': true
  228. },
  229. // 人员技能证书配置
  230. 'ryzsOption': {
  231. // 证书类型配置
  232. 'optionArr': [
  233. '临床医学检验技术',
  234. '病原微生物实验室生物安全',
  235. '艾滋病初筛实验室检测技术上岗证',
  236. '临床基因扩增检验实验室技术',
  237. '产前筛查-生化免疫',
  238. '特种设备作业人员资格证',
  239. '大型设备上岗证'
  240. ]
  241. },
  242. // 培训看板配置
  243. 'pxSpectacularsOption': {
  244. // 内部培训类别占比类型
  245. 'typeProportion': [
  246. '体系文件修订',
  247. '技术',
  248. '质量管理',
  249. '专题教育'
  250. ],
  251. 'version':'1' //用于开启培训重构,为1则开启,没有这个属性则不开启
  252. },
  253. 'examTag': {
  254. 'tagData': {
  255. // 考试阅卷数据展示标签配置,默认根据题序展示,配置后将根据用户展示
  256. 'groupByUser': true
  257. }
  258. }
  259. }
  260. {"device":{"hasDeviceRole":["xtgljs","sbgly","sbglxzfzr","zhsfzr"],"stateList":{"停用":"停用","报废":"报废","合格":"合格"},"typeList":{"检验系统":"检验系统","通用设备":"通用设备","软件":"软件","信息系统":"信息系统"},"tabList":{"维护项目":"维护项目","附属设备及配件":"附属设备及配件","使用与维护记录":"使用与维护记录","校准记录":"校准记录","维修记录":"维修记录","停用、报废记录":"停用、报废记录","性能验证记录":"性能验证记录"},"hideSysDeviceNo":false},"risk":{"culWays":{"1":"风险矩阵法","2":"FMEA法","3":"S*P"}},"facilityEnv":{"typeList":{"01-室内温湿度监控":{"label":"室内温湿度监控","path":"/sshjgl/wdjc/snwsdjkcd","showDevice":false},"02-冰箱温度监控":{"label":"冰箱温度监控","path":"/sshjgl/wdjc/bxwdjc","showDevice":true},"03-温浴箱温度监控":{"label":"温浴箱温度监控","path":"/sshjgl/wdjc/wyxwdjkywh","showDevice":true},"04-阴凉柜温度监控":{"label":"阴凉柜温度监控","path":"/sshjgl/wdjc/ylgwdjc","showDevice":true},"05-纯水机水质监测":{"label":"纯水机水质监测","path":"/sshjgl/csjszjcb","showDevice":true},"06-每日安全检查":{"label":"每日安全检查","path":"/sshjgl/aqgl/mraqjc","showDevice":false},"07-每月安全检查":{"label":"每月安全检查","path":"/sshjgl/aqgl/myaqjc","showDevice":true},"08-含氯有效性监测":{"label":"含氯有效性监测","path":"/sshjgl/aqgl/hlyxxjc","showDevice":false},"10-洗眼器检查":{"label":"洗眼器检查","path":"/sshjgl/aqgl/xyqjc","showDevice":true},"11-紧急淋浴器检查":{"label":"紧急淋浴器检查","path":"/sshjgl/aqgl/jjlyqjc","showDevice":true},"12-紫外灯消毒":{"label":"紫外灯消毒","path":"/sshjgl/aqgl/jykzwdxdjlb","showDevice":true},"13-高压灭菌":{"label":"高压灭菌","path":"/sshjgl/aqgl/gymjjlb","showDevice":true},"14-空气消毒机":{"label":"空气消毒机","path":"/sshjgl/aqgl/xdjsyjlb","showDevice":true},"15-日常防护消毒":{"label":"日常防护消毒","path":"/sshjgl/aqgl/rcfhxd","showDevice":false},"16-设备排出废液":{"label":" 设备排出废液","path":"/sshjgl/aqgl/sbpcfy","showDevice":true}}},"system":{"highRoles":["xtgljs","syszr","zlfzr","jsfzr","wjglzzc","wjgly","sbgly","zhsfzr"]}}
  261. */
  262. import request from '@/business/platform/form/utils/custom/joinCURD.js'
  263. import store from '@/store/index'
  264. import { Message } from 'element-ui'
  265. /**
  266. * 获取全局配置对象
  267. * @param {*} module
  268. * @param {*} key
  269. * @returns
  270. */
  271. export const getSetting = async (module = '', key = '') => {
  272. try {
  273. const org = store.getters.level.first || ''
  274. // const sql = `select setting from t_ipcc where org_ = '${org}' limit 1`
  275. const { variables: { data = [] } = {} } = await request('query', {
  276. key: 'getGlobalSetting',
  277. params: [org]
  278. })
  279. // 如果数据为空或 setting 字段不存在,直接返回空对象
  280. if (data.length === 0 || !data[0]?.setting) {
  281. return {}
  282. }
  283. // 解析 JSON 并处理可能的格式错误
  284. const setting = data[0].setting?.replace(/\n/g, '')
  285. const res = JSON.parse(setting) || {}
  286. // 根据 module 和 key 返回对应的值
  287. if (module) {
  288. const moduleSettings = res[module] || {}
  289. return key ? moduleSettings[key] : moduleSettings
  290. }
  291. return res || {}
  292. } catch (error) {
  293. console.error('获取配置失败:', error)
  294. return Message.warning('数据库字段配置错误!')
  295. }
  296. }