page-search.vue 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <template>
  2. <ele-card :body-style="{ paddingBottom: '8px' }">
  3. <ProSearch
  4. :items="formItems"
  5. ref="searchRef"
  6. @search="search"
  7. :initKeys="initKeys"
  8. />
  9. </ele-card>
  10. </template>
  11. <script setup>
  12. import { reactive, ref } from 'vue';
  13. import ProSearch from '@/components/CommonPage/ProSearch2.vue';
  14. const emit = defineEmits(['search']);
  15. const searchRef = ref(null);
  16. const formItems = reactive([
  17. { type: 'input', label: '原订单ID', prop: 'originOrderId' },
  18. { type: 'input', label: '退回订单ID', prop: 'refundOrderId' },
  19. { type: 'input', label: '用户ID', prop: 'userId' },
  20. { type: 'input', label: '寄件人手机号', prop: 'sendMobile' },
  21. { type: 'input', label: '退回运单号', prop: 'refundWaybillCode' },
  22. {
  23. type: 'select',
  24. label: '状态',
  25. prop: 'status',
  26. options: [
  27. { label: '申请退款', value: 1 },
  28. { label: '审核通过', value: 2 },
  29. { label: '审核驳回', value: 3 },
  30. { label: '超时关闭', value: 4 },
  31. { label: '卖家已发货', value: 5 },
  32. { label: '已完成', value: 6 }
  33. ]
  34. },
  35. {
  36. type: 'select',
  37. label: '退款类型',
  38. prop: 'refundType',
  39. options: [
  40. { label: '极速退款', value: '0' },
  41. { label: '退货退款', value: '1' },
  42. { label: '仅退款', value: '2' }
  43. ]
  44. },
  45. {
  46. type: 'daterange',
  47. label: '创建时间',
  48. prop: 'dateRange',
  49. keys: ['createTimeStart', 'createTimeEnd'],
  50. props: {
  51. format: 'YYYY-MM-DD HH:mm:ss',
  52. valueFormat: 'YYYY-MM-DD HH:mm:ss',
  53. onChange: (val) => {
  54. searchRef.value?.setData({
  55. createTimeStart: val && val.length > 0 ? val[0] : '',
  56. createTimeEnd: val && val.length > 0 ? val[1] : ''
  57. });
  58. }
  59. }
  60. }
  61. ]);
  62. const initKeys = reactive({
  63. originOrderId: '',
  64. refundOrderId: '',
  65. userId: '',
  66. sendMobile: '',
  67. refundWaybillCode: '',
  68. status: '',
  69. refundType: '',
  70. createTimeStart: '',
  71. createTimeEnd: ''
  72. });
  73. const search = (data) => {
  74. let params = JSON.parse(JSON.stringify(data));
  75. delete params.dateRange;
  76. emit('search', params);
  77. };
  78. </script>