bireportUtils.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /**
  2. * 多维分析的工具类
  3. */
  4. import $ from 'jquery'
  5. import { Message } from 'element-ui'
  6. /**
  7. * 根据ID查找参数
  8. * @param {*} pid
  9. * @param {*} params
  10. */
  11. export const findParamById = (pid, params)=>{
  12. var ret = null;
  13. for(var i=0; params&&i<params.length; i++){
  14. var p = params[i];
  15. if(p.id == pid){
  16. ret = p;
  17. break;
  18. }
  19. }
  20. return ret;
  21. }
  22. export const findCompById = (id, pageInfo)=>{
  23. var ret = null;
  24. for(let i=0;i<pageInfo.comps.length; i++){
  25. var t = pageInfo.comps[i];
  26. if(t.id == id){
  27. ret = t;
  28. break;
  29. }
  30. }
  31. return ret;
  32. }
  33. export const msginfo = (msg, type)=>{
  34. if(!type || type === 'error'){
  35. Message.error({message:msg, type:"error",showClose: true});
  36. }else{
  37. Message.success({message:msg, type:"success",showClose: true});
  38. }
  39. }
  40. export const kpiExist = (kpiId, kpis)=>{
  41. var ret = false;
  42. if(!kpis || kpis == null){
  43. return ret;
  44. }
  45. for(var i=0; i<kpis.length; i++){
  46. if(kpis[i].kpi_id == kpiId){
  47. ret = true;
  48. break;
  49. }
  50. }
  51. return ret;
  52. }
  53. export const dimExist = (dimId, dims) => {
  54. var ret = false;
  55. if(!dims || dims == null){
  56. return ret;
  57. }
  58. for(var i=0; i<dims.length; i++){
  59. if(dims[i].id == dimId){
  60. ret = true;
  61. break;
  62. }
  63. }
  64. return ret;
  65. }
  66. //查找维度分组
  67. export const findGroup = (dims, group, curNode)=>{
  68. var ret = false;
  69. if(!dims || dims == null){
  70. return ret;
  71. }
  72. for(let m=0; m<dims.length; m++){
  73. if(curNode && curNode == dims[m]){ //curNode存在表示忽略当前节点
  74. continue;
  75. }
  76. if(dims[m].grouptype == group){
  77. ret = true;
  78. break;
  79. }
  80. }
  81. return ret;
  82. }