use-feedback.ts 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { STATUS, Records, QueryFeedback, getFeedbackList } from '@/api/feedback/feedback';
  2. import { onMounted, ref } from 'vue';
  3. export function useFeedbackList() {
  4. const feedbackList = ref<Records[]>([]);
  5. const pageNumber = ref<number>(1);
  6. const pageSize = ref<number>(10);
  7. const problemStatus = ref<STATUS>(STATUS.unhandled);
  8. const queryDescription = ref<string>('');
  9. const totalPage = ref<number>();
  10. const totalRow = ref<number>();
  11. const getList = () => {
  12. const params: QueryFeedback = {
  13. pageNumber: pageNumber.value,
  14. pageSize: pageSize.value,
  15. //problemDescription: queryDescription.value
  16. problemStatus: problemStatus.value,
  17. };
  18. if (queryDescription.value) {
  19. params.problemDescription = queryDescription.value;
  20. }
  21. getFeedbackList(params).then((res) => {
  22. feedbackList.value = res.records;
  23. totalPage.value = res.totalPage;
  24. totalRow.value = res.totalRow;
  25. });
  26. };
  27. onMounted(() => {
  28. getList();
  29. });
  30. return {
  31. feedbackList,
  32. pageNumber,
  33. pageSize,
  34. problemStatus,
  35. queryDescription,
  36. totalPage,
  37. totalRow,
  38. getList,
  39. };
  40. }
  41. export default useFeedbackList;