wujianwei
2026-01-12 77f08eeab173fd944367f1cd735323896ec36e38
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<template>
  <basicContainer>
    <avue-crud :option="option" :table-loading="pageF.loading" :data="tableData" :page="page"
      :permission="permissionList" :before-open="beforeOpen" v-model="form" ref="crudRef" @row-update="rowUpdate"
      @row-save="rowSave" @refresh-change="refreshChange" @row-del="rowDel" @search-change="searchChange"
      @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
      @size-change="sizeChange" @on-load="onLoad">
      <template #menu-left>
        <el-button type="success" icon="Edit" :disabled="pageF.single"
          v-hasPermi="['cwgl:receivableFeeManagementLog:edit']" @click="handleUpdate">修改
        </el-button>
        <el-button type="danger" icon="Delete" :disabled="pageF.multiple" @click="handleDelete"
          v-hasPermi="['cwgl:receivableFeeManagementLog:remove']">删除
        </el-button>
        <el-button type="warning" plain icon="Download" @click="handleExport"
          v-hasPermi="['cwgl:receivableFeeManagementLog:export']">导出
        </el-button>
      </template>
    </avue-crud>
  </basicContainer>
</template>
 
<script setup name="receivableFeeManagementLog" lang="ts">
import { ReceivableFeeManagementLogI, addReceivableFeeManagementLog, delReceivableFeeManagementLog, exportReceivableFeeManagementLog, getReceivableFeeManagementLog, listReceivableFeeManagementLog, updateReceivableFeeManagementLog } from "@/api/cwgl/receivableFeeManagementLog";
import useCurrentInstance from "@/utils/useCurrentInstance";
import { computed, reactive, ref, toRefs } from "vue";
import { PagesInterface, PageQueryInterface } from "@/utils/globalInterface";
import { usePagePlus } from "@/hooks/usePagePlus";
import { hasPermission } from "@/utils/permissionUtils";
 
const { proxy } = useCurrentInstance();
const crudRef = ref();
 
const permissionList = computed(() => {
  return {
    addBtn: hasPermission(["cwgl:receivableFeeManagementLog:add"]),
    delBtn: hasPermission(["cwgl:receivableFeeManagementLog:remove"]),
    editBtn: hasPermission(["cwgl:receivableFeeManagementLog:edit"]),
    viewBtn: hasPermission(["cwgl:receivableFeeManagementLog:query"]),
  }
})
 
const data = reactive({
  form: <ReceivableFeeManagementLogI>{},
  queryParams: <ReceivableFeeManagementLogI & PageQueryInterface>{},
  page: <PagesInterface>{
    pageSize: 10,
    total: 0,
    currentPage: 1,
  },
  selectionList: [],
})
const { queryParams, form, page, selectionList } = toRefs(data);
const option = ref({
  pageKey: 'ReceivableFeeManagementLog',
  rowKey: 'id',
  column: {
    id: {
      label: '日志ID',
    },
    receivableFeeId: {
      label: '关联的应收费用管理ID',
      rules: [
        {
          required: true,
          message: "关联的应收费用管理ID不能为空", trigger: "blur"
        }
      ],
    },
    operator: {
      label: '操作人',
      rules: [
        {
          required: true,
          message: "操作人不能为空", trigger: "blur"
        }
      ],
    },
    operationTime: {
      label: '操作时间',
      rules: [
        {
          required: true,
          message: "操作时间不能为空", trigger: "blur"
        }
      ],
    },
    operationDesc: {
      label: '操作描述',
      rules: [
        {
          required: true,
          message: "操作描述不能为空", trigger: "blur"
        }
      ],
    },
    createTime: {
      label: '记录创建时间',
      rules: [
        {
          required: true,
          message: "记录创建时间不能为空", trigger: "blur"
        }
      ]
    },
  }
})
 
const { tableData, pageF, rowSave, rowUpdate, rowDel, beforeOpen, searchChange,
  searchReset, selectionChange, onLoad, currentChange, sizeChange, handleDelete, handleExport, handleUpdate, refreshChange } = usePagePlus({
    form: form,
    option: option,
    queryParams: queryParams,
    idKey: 'id',
    page: page.value,
    getListApi: listReceivableFeeManagementLog,
    getDetailApi: getReceivableFeeManagementLog,
    exportApi: exportReceivableFeeManagementLog,
    deleteApi: delReceivableFeeManagementLog,
    addApi: addReceivableFeeManagementLog,
    updateApi: updateReceivableFeeManagementLog,
    handleUpdateFunc: () => {
      crudRef.value.rowEdit(selectionList.value[0]);
    },
    handleSelectionChangeFunc: (selection: any) => {
      selectionList.value = selection;
    }
  })
 
 
</script>