common.js 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. import api from '@/api'
  2. export default {
  3. //object转字符串
  4. objectToString(val) {
  5. var data = []
  6. if (val.constructor == Object) {
  7. if (Object.keys(val).length > 0) {
  8. Object.keys(val).forEach(item => {
  9. data.push(
  10. {
  11. key: item,
  12. value: val[item]
  13. }
  14. )
  15. })
  16. } else {
  17. return ''
  18. }
  19. } else if (val.constructor == Array) {
  20. if (val.length > 0) {
  21. data = val
  22. } else {
  23. return ''
  24. }
  25. } else {
  26. return val
  27. }
  28. // 生成字符串
  29. var str = ''
  30. data.forEach(item => {
  31. var value = ''
  32. if (typeof item.value == 'object') {
  33. value = '(' + item.value.join(' OR ') + ')'
  34. } else {
  35. if (item.value) {
  36. value = item.value
  37. } else {
  38. return
  39. }
  40. }
  41. if (str) {
  42. str = str + ' AND ' + item.key + '=' + value
  43. } else {
  44. str = str + item.key + '=' + value
  45. }
  46. })
  47. return str
  48. },
  49. //获取字段列表
  50. getField(array,fun,props){
  51. var type = {
  52. 'Array':'3',
  53. 'DateTime':'2',
  54. 'String':'1'
  55. }
  56. //获取规范数据
  57. var keys = []
  58. var arr = []
  59. if(props){
  60. keys = Object.keys(props)
  61. }
  62. //获取所需要的数据
  63. var newArray = array.filter(item=>{
  64. return fun(item)
  65. })
  66. if(keys.length>0){
  67. newArray.forEach(item=>{
  68. var obj = {}
  69. keys.forEach(key=>{
  70. if(key == 'type'){
  71. obj[key] = type[item[props[key]]] || item[props[key]]
  72. }else{
  73. obj[key] = item[props[key]]
  74. }
  75. })
  76. // 过滤不需要的数据
  77. if (['id'].includes(obj.value) == false) {
  78. arr.push(obj)
  79. }
  80. })
  81. return arr;
  82. }
  83. return newArray
  84. },
  85. //获取表格数据
  86. getColumnData(row,field,prop){
  87. if(field.type == 'Array'){
  88. if(row[field.value]){
  89. if(prop){
  90. return row[field.value].map(item=>{
  91. return item[prop]
  92. }).join('、')
  93. }
  94. return row[field.value].join('、')
  95. }else{
  96. return '--'
  97. }
  98. }else{
  99. return row[field.value] || '--'
  100. }
  101. },
  102. //查看图片
  103. checkViewer(guid){
  104. return `/fileManager/downloadFile?fileId=${guid}`
  105. },
  106. //查看显示栏位管理
  107. async getCustomField(type){
  108. var params = {
  109. tableName:type
  110. }
  111. var a = []
  112. await api.getCustomField(params).then((response) => {
  113. if (response.code == 200) {
  114. a = response.data.data
  115. }
  116. }).catch(error=>{
  117. return []
  118. });
  119. return a
  120. }
  121. }