list.vue 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <template>
  2. <CommonListPage
  3. :title="querys.title || undefined"
  4. :load="loadData"
  5. :itemType="querys.itemType as any || undefined"
  6. :detailsPage="querys.detailsPage || undefined"
  7. :detailsParams="{
  8. mainBodyId: querys.mainBodyId || undefined,
  9. mainBodyColumnId: querys.mainBodyColumnId || undefined,
  10. modelId: querys.modelId || undefined,
  11. }"
  12. :intitalSearch="querys.search"
  13. />
  14. </template>
  15. <script setup lang="ts">
  16. import { useLoadQuerys, stringDotNumbersToNumbers } from '@/common/composeabe/LoadQuerys';
  17. import CommonListPage from './CommonListPage.vue';
  18. import CommonContent, { GetContentListParams } from '@/api/CommonContent';
  19. const { querys } = useLoadQuerys({
  20. villageId: 0,
  21. mainBodyId: 0,
  22. mainBodyColumnId: '',
  23. modelId: 0,
  24. itemType: '',
  25. detailsPage: '',
  26. title: '',
  27. region: '',
  28. search: '',
  29. });
  30. async function loadData(
  31. page: number,
  32. pageSize: number,
  33. searchText: string,
  34. dropDownValues: number[]
  35. ) {
  36. const mainBodyColumnId = stringDotNumbersToNumbers(querys.value.mainBodyColumnId);
  37. const res = await CommonContent.getContentList(new GetContentListParams().setSelfValues({
  38. villageId: querys.value.villageId || undefined,
  39. mainBodyId: querys.value.mainBodyId || undefined,
  40. mainBodyColumnId: mainBodyColumnId || undefined,
  41. modelId: querys.value.modelId || undefined,
  42. keywords: searchText,
  43. region: querys.value.region || undefined,
  44. }), page, pageSize);
  45. for (const element of res.list || []) {
  46. if (!element.desc && element.from)
  47. element.desc = `来源:${element.from}`;
  48. }
  49. return res;
  50. }
  51. </script>