You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

commonCrudConfig.ts 3.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. import { ref } from 'vue'
  2. // crud表格配置
  3. export default function crudConfig(fields = {}) {
  4. const field = ref({
  5. tabSize: 'small', //Table 的尺寸 large / default /small (默认default)
  6. searchShow: true, //是否显示搜索模块(默认false)
  7. border: true, //是否添加边框(默认false)
  8. dialogCustom: true, //自定义Dialog (默认false),配合查看使用
  9. dialogFooter: true, //隐藏弹窗页脚显示 (默认false)
  10. dialogWidth: '50%', //dialog宽度 (默认40%)
  11. crudChildShow: true, //是否显示CURD子操作栏 (默认true)
  12. paginStart: true, //是否显示分页查询 (默认false)
  13. isPageSizes: true,
  14. pageLayout: 'total, sizes, prev, pager, next, jumper',
  15. titleDialog: '', //table 标题
  16. paging: {
  17. pageSize: 10,
  18. currentPage: 1,
  19. total: 0,
  20. specifiedSuccessTotalNum: 0,
  21. specifiedFailTotalNum: 0,
  22. specifiedWaitTotalNum: 0,
  23. specifiedExpiredTotalNum: 0,
  24. specifiedCancelTotalNum: 0,
  25. },
  26. crudShow: true, //是否显示CURD操作栏 (默认true)
  27. crud: {
  28. //配合crudShow,为true是可配置此
  29. add: false,
  30. edit: false,
  31. delete: false,
  32. derive: false, //导出
  33. search: false,
  34. refresh: false,
  35. cudText: [
  36. { label: '成功消息总数:', key: 'specifiedSuccessTotalNum' ,unit:''},
  37. { label: '失败消息总数:', key: 'specifiedFailTotalNum' ,unit:''},
  38. { label: '待发送消息总数:', key: 'specifiedWaitTotalNum' ,unit:''},
  39. // { label: '过期消息总数:', key: 'specifiedExpiredTotalNum' ,unit:''},
  40. // { label: '取消消息总数:', key: 'specifiedCancelTotalNum' ,unit:''},
  41. ],
  42. },
  43. searchOperation: {
  44. isDownload: false, //开启下载
  45. isAdd: false,
  46. isTransferMachine: false,
  47. isToLead: false, //导入
  48. },
  49. tableSize: -1,
  50. operateShow: true, //是否为表格添加操作栏(默认true)
  51. operateTitle: '操作', //操作栏标题(默认为"")
  52. operateFixed: false, //操作栏是否固定(默认false)
  53. operateWidth: '200', //操作栏宽度
  54. operate: {
  55. edit: false, //是否编辑(默认true)
  56. delete: false, //是否删除(默认true)
  57. announcement: false, // 公告
  58. remark: false, // 查看
  59. info: false, //详情
  60. forbidden: false, // 禁用
  61. enable: false, // 启用
  62. authorization: false, // 授权
  63. cancel: false, // 取消订单
  64. writeOff: false, // 注销
  65. make: false, // 补缴
  66. },
  67. extend: [
  68. {
  69. type: 'index',
  70. label: '序号',
  71. },
  72. ],
  73. field: [
  74. {
  75. prop: 'title',
  76. label: '消息标题',
  77. funRuleStarts: true,
  78. funRule(val) {
  79. if (val) {
  80. return val
  81. } else {
  82. return '暂无数据'
  83. }
  84. },
  85. },
  86. {
  87. label: '描述',
  88. prop: 'description',
  89. },
  90. {
  91. label: '发送结果',
  92. prop: 'taskStatus',
  93. },
  94. {
  95. label: '推送时间',
  96. prop: 'sendTime',
  97. funRuleStarts: true,
  98. funRule(val) {
  99. if (val) {
  100. return val.replace(/T/, ' ')
  101. } else {
  102. return '暂无数据'
  103. }
  104. },
  105. },
  106. {
  107. label: '创建时间',
  108. prop: 'insertTime',
  109. },
  110. {
  111. label: '重新发送消息次数',
  112. prop: 'retryNum',
  113. },
  114. ],
  115. ...fields,
  116. })
  117. return {
  118. field,
  119. }
  120. }