useWebColumns.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import { computed, ref } from 'vue';
  2. import { useVentStore } from '/@/store/modules/vent';
  3. import { BasicColumn } from '/@/components/Table';
  4. import { colors } from '/@/views/vent/monitorManager/alarmMonitor/alarm.data';
  5. const ventStore = useVentStore();
  6. const arrToColumns = (tableHeaderColumns = []) => {
  7. const columns: BasicColumn[] = [];
  8. tableHeaderColumns.forEach((item: any) => {
  9. const columnsItem = {
  10. title: item.des, //_dictText
  11. // dataIndex: item.dict ? `${item.monitorcode}_dictText` : item.monitorcode,
  12. dataIndex: item.monitorcode,
  13. width: item.width || 100,
  14. defaultHidden: !item.showflag,
  15. align: 'center',
  16. dict: item.dict,
  17. // sorter: item.sort ? true : false,
  18. customRender: ({ text }) => {
  19. return text == null || text == '' || text == undefined ? '-' : text;
  20. },
  21. };
  22. columns.push(columnsItem);
  23. });
  24. return columns;
  25. };
  26. const arrToChartColumns = (tableHeaderColumns = []) => {
  27. const colors = ['#FDB146', '#00FFA8', '#AE19FF', '#DA3914', '#03C2EC', '#749f83', '#ca8622', '#bda29a', '#6e7074', '#546570', '#c4ccd3'];
  28. const columns: [] = [];
  29. tableHeaderColumns.forEach((item: any, i) => {
  30. const columnsItem = {
  31. legend: item.legend,
  32. seriesName: item.unit ? item.unit : '',
  33. ymax: item.ymax,
  34. yname: item.yname,
  35. linetype: item.linetype,
  36. yaxispos: item.yaxispos,
  37. color: colors[i],
  38. sort: item.sort,
  39. xRotate: 0,
  40. dataIndex: item.monitorcode,
  41. };
  42. columns.push(columnsItem);
  43. });
  44. return columns;
  45. };
  46. export const getTableHeaderColumns = (webColumnsKey) => {
  47. const key = webColumnsKey;
  48. const allTableHeaderColumnArr = ventStore.getAllTableHeaderColumns;
  49. if (allTableHeaderColumnArr) {
  50. const tabelHeaderColumns = allTableHeaderColumnArr[key];
  51. if (key && key.includes('_chart')) {
  52. return arrToChartColumns(tabelHeaderColumns);
  53. }
  54. return arrToColumns(tabelHeaderColumns);
  55. }
  56. return [];
  57. };
  58. export const getFormSchemaColumns = (webColumnsKey) => {
  59. const key = webColumnsKey;
  60. const allTableHeaderColumnArr = ventStore.getAllTableHeaderColumns;
  61. if (allTableHeaderColumnArr) {
  62. const tabelHeaderColumns = allTableHeaderColumnArr[key];
  63. return tabelHeaderColumns;
  64. // return arrToFormColumns(tabelHeaderColumns);
  65. }
  66. return [];
  67. };
  68. // export const getTableHeaderColumns = async (columnsKey) => {
  69. // const allTableHeaderColumnArr = await ventStore.getAllTableHeaderColumnsAction();
  70. // if (allTableHeaderColumnArr) {
  71. // const tabelHeaderColumns = allTableHeaderColumnArr[columnsKey];
  72. // return arrToColumns(tabelHeaderColumns);
  73. // }
  74. // return [];
  75. // };