useWebColumns.ts 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  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. width: item.width || 100,
  13. defaultHidden: !item.showflag,
  14. align: 'center',
  15. // sorter: item.sort ? true : false,
  16. customRender: ({ text }) => {
  17. return (text == null || text == '' || text == undefined) ? '-' : text;
  18. },
  19. };
  20. columns.push(columnsItem);
  21. });
  22. return columns;
  23. };
  24. const arrToChartColumns = (tableHeaderColumns = []) => {
  25. const colors = ['#c23531', '#2f4554', '#61a0a8', '#d48265', '#91c7ae', '#749f83', '#ca8622', '#bda29a', '#6e7074', '#546570', '#c4ccd3'];
  26. const columns: BasicColumn[] = [];
  27. tableHeaderColumns.forEach((item: any, i) => {
  28. const columnsItem = {
  29. legend: item.legend,
  30. seriesName: item.unit,
  31. ymax: item.ymax,
  32. yname: item.yname,
  33. linetype: item.linetype,
  34. yaxispos: item.yaxispos,
  35. color: colors[i],
  36. sort: item.sort,
  37. xRotate: 0,
  38. dataIndex: item.monitorcode,
  39. };
  40. columns.push(columnsItem);
  41. });
  42. return columns;
  43. };
  44. export const getTableHeaderColumns = (webColumnsKey) => {
  45. const key = webColumnsKey;
  46. const allTableHeaderColumnArr = ventStore.getAllTableHeaderColumns;
  47. if (allTableHeaderColumnArr) {
  48. const tabelHeaderColumns = allTableHeaderColumnArr[key];
  49. if (key && key.includes('_chart')) {
  50. return arrToChartColumns(tabelHeaderColumns);
  51. }
  52. return arrToColumns(tabelHeaderColumns);
  53. }
  54. return [];
  55. };
  56. export const getFormSchemaColumns = (webColumnsKey) => {
  57. const key = webColumnsKey;
  58. const allTableHeaderColumnArr = ventStore.getAllTableHeaderColumns;
  59. if (allTableHeaderColumnArr) {
  60. const tabelHeaderColumns = allTableHeaderColumnArr[key];
  61. return tabelHeaderColumns;
  62. // return arrToFormColumns(tabelHeaderColumns);
  63. }
  64. return [];
  65. };
  66. // export const getTableHeaderColumns = async (columnsKey) => {
  67. // const allTableHeaderColumnArr = await ventStore.getAllTableHeaderColumnsAction();
  68. // if (allTableHeaderColumnArr) {
  69. // const tabelHeaderColumns = allTableHeaderColumnArr[columnsKey];
  70. // return arrToColumns(tabelHeaderColumns);
  71. // }
  72. // return [];
  73. // };