fileCom.vue 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <!-- 工序文件 -->
  2. <template>
  3. <div class="mainContentBox">
  4. <avue-crud
  5. ref="crudRef2"
  6. v-model:search="search"
  7. v-model="form"
  8. :data="data"
  9. :option="option"
  10. @row-update="updateRow"
  11. v-model:page="page"
  12. >
  13. <template #menu="{ size, row, index }">
  14. <a v-if="row.filePath" :href="row.filePath"
  15. ><el-button type="primary" text round size="small">下载</el-button>
  16. </a>
  17. </template>
  18. </avue-crud>
  19. </div>
  20. </template>
  21. <script setup>
  22. import { ref, getCurrentInstance } from "vue";
  23. import { useCrud } from "@/hooks/userCrud";
  24. import dictDataUtil from "@/common/configs/dictDataUtil";
  25. import ButtonPermKeys from "@/common/configs/buttonPermission";
  26. import {
  27. useCommonStoreHook,
  28. useDictionaryStore,
  29. useUserStoreHook,
  30. } from "@/store";
  31. // 数据字典相关
  32. const { dicts } = useDictionaryStore();
  33. // 传入一个url,后面不带/
  34. const {
  35. form,
  36. data,
  37. option,
  38. search,
  39. page,
  40. toDeleteIds,
  41. Methords,
  42. Utils,
  43. commonConfig,
  44. } = useCrud({
  45. src: "/api/v1/process/web/traceability/testRecord",
  46. });
  47. const { dataList, createRow, updateRow, deleteRow, searchChange, resetChange } =
  48. Methords; //增删改查
  49. const { selectionChange, multipleDelete } = Methords; //选中和批量删除事件
  50. const { checkBtnPerm, downloadTemplate, exportData } = Utils; //按钮权限等工具
  51. const crudRef = ref(null); //crudRef.value 获取avue-crud对象
  52. const userStore = useUserStoreHook();
  53. const refreshTra = (row) => {
  54. commonConfig.value.params = {
  55. seqNo: row.seqNo,
  56. workOrderCode: row.workOrderCode,
  57. };
  58. dataList();
  59. };
  60. defineExpose({ refreshTra });
  61. option.value = Object.assign(option.value, {
  62. selection: false,
  63. border: true,
  64. index: false,
  65. expandLevel: 3,
  66. headerAlign: "center",
  67. align: "center",
  68. labelWidth: 100,
  69. addBtn: false,
  70. delBtn: false,
  71. viewBtn: false,
  72. editBtn: false,
  73. header: false,
  74. rowKey: "operationId",
  75. column: [
  76. {
  77. label: "工序Id",
  78. prop: "operationId",
  79. display: false,
  80. hide: true,
  81. },
  82. {
  83. label: "工序名称",
  84. prop: "operationName",
  85. display: false,
  86. },
  87. {
  88. label: "文件名称",
  89. prop: "fileName",
  90. display: false,
  91. },
  92. {
  93. label: "录入时间",
  94. prop: "created",
  95. format: "YYYY-MM-DD HH:mm:ss",
  96. valueFormat: "YYYY-MM-DD HH:mm:ss",
  97. type: "datetime",
  98. search: false,
  99. span: 24,
  100. rules: [
  101. {
  102. required: true,
  103. message: "请输入录入时间",
  104. trigger: "blur",
  105. },
  106. ],
  107. },
  108. ],
  109. });
  110. </script>