list.vue 1.4 KB

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