|
|
@@ -4,13 +4,14 @@
|
|
|
<template #headerLeft>
|
|
|
<app-filter :options="filterOptons">
|
|
|
<template #before>
|
|
|
- <el-date-picker type="daterange" effect="dark" start-placeholder="开始日期" end-placeholder="结束日期" value-format="YYYYMMDD"
|
|
|
- v-model="filterDate" />
|
|
|
+ <el-date-picker type="daterange" effect="dark" :editable="false" :clearable="false"
|
|
|
+ start-placeholder="开始日期" end-placeholder="结束日期" :value-format="valueformat" v-model="dateValue"
|
|
|
+ @visible-change="visibleChange" @calendar-change="calendarChange" :disabled-date="disabledDate" />
|
|
|
</template>
|
|
|
</app-filter>
|
|
|
</template>
|
|
|
- <!-- 方向 -->
|
|
|
- <template #buyorsell="{ value }">
|
|
|
+ <!-- 方向 -->
|
|
|
+ <template #buyorsell="{ value }">
|
|
|
{{ getBuyOrSellName(value) }}
|
|
|
</template>
|
|
|
<!-- 类型 -->
|
|
|
@@ -29,13 +30,17 @@
|
|
|
<template #ordertime="{ value }">
|
|
|
{{ formatDate(value) }}
|
|
|
</template>
|
|
|
+ <template #append>
|
|
|
+ <el-button size="small" plain @click="loadMore" v-if="pageIndex < pageCount">加载更多</el-button>
|
|
|
+ </template>
|
|
|
</app-table>
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts" setup>
|
|
|
-import { shallowRef, reactive } from 'vue'
|
|
|
+import { ref, computed } from 'vue'
|
|
|
import { formatDate } from '@/filters'
|
|
|
import { useDataFilter } from '@/hooks/datatable'
|
|
|
+import { useDateRange } from '@/hooks/date-picker'
|
|
|
import { useRequest } from '@/hooks/request'
|
|
|
import { queryHisTradeOrderDetail } from '@/services/api/order'
|
|
|
import { getBuyOrSellName, getWRTradeOrderStatusName, getWRTradeOrderStatusList } from '@/constants/order'
|
|
|
@@ -43,29 +48,30 @@ import AppTable from '@pc/components/base/table/index.vue'
|
|
|
import AppFilter from '@pc/components/base/table-filter/index.vue'
|
|
|
|
|
|
const { filterOptons, getQueryParams } = useDataFilter<Model.HisTradeOrderDetailReq>()
|
|
|
-const filterDate = shallowRef<string[]>([])
|
|
|
+const { dateValue, valueformat, visibleChange, calendarChange, disabledDate } = useDateRange()
|
|
|
+const dataList = ref<Model.HisTradeOrderDetailRsp[]>([])
|
|
|
|
|
|
-filterOptons.selectList = [
|
|
|
- {
|
|
|
- key: 'orderStatus',
|
|
|
- selectedValue: 3,
|
|
|
- options: getWRTradeOrderStatusList().filter(e => { return [1, 2, 3, 4, 6, 7, 8, 9, 10, 11].includes(e.value)}),
|
|
|
- locked: true,
|
|
|
- }
|
|
|
-]
|
|
|
-
|
|
|
-const formData = reactive<Model.HisTradeOrderDetailReq>({
|
|
|
- tradeMode: '46',
|
|
|
-})
|
|
|
+const startDate = computed(() => dateValue.value[0])
|
|
|
+const endDate = computed(() => dateValue.value[1])
|
|
|
|
|
|
-const { loading, dataList, run } = useRequest(queryHisTradeOrderDetail, {
|
|
|
+const { loading, run, pageIndex, pageCount } = useRequest(queryHisTradeOrderDetail, {
|
|
|
params: {
|
|
|
- ...formData
|
|
|
+ pagesize: 30,
|
|
|
+ pageflag: 1,
|
|
|
+ tradeMode: '46',
|
|
|
+ orderStatus: '3',
|
|
|
+ startDate: startDate.value,
|
|
|
+ endDate: endDate.value
|
|
|
},
|
|
|
- manual: true
|
|
|
+ onSuccess: (res) => {
|
|
|
+ if (pageIndex.value === 1) {
|
|
|
+ dataList.value = []
|
|
|
+ }
|
|
|
+ dataList.value.push(...res.data)
|
|
|
+ }
|
|
|
})
|
|
|
|
|
|
-const tableColumns = shallowRef<Model.TableColumn[]>([
|
|
|
+const tableColumns = ref<Model.TableColumn[]>([
|
|
|
{ prop: 'orderid', label: '委托单号' },
|
|
|
{ prop: 'goodsname', label: '商品代码/名称' },
|
|
|
{ prop: 'buyorsell', label: '方向' },
|
|
|
@@ -77,20 +83,36 @@ const tableColumns = shallowRef<Model.TableColumn[]>([
|
|
|
{ prop: 'ordertime', label: '委托时间' },
|
|
|
])
|
|
|
|
|
|
-filterOptons.buttonList = [
|
|
|
- { lable: '查询', className: 'el-button--info', onClick: () => onSearch() },
|
|
|
- { lable: '重置', className: 'el-button--info', onClick: () => onSearch(true) }
|
|
|
+filterOptons.selectList = [
|
|
|
+ {
|
|
|
+ key: 'orderStatus',
|
|
|
+ selectedValue: 3,
|
|
|
+ options: getWRTradeOrderStatusList().filter(e => { return [1, 2, 3, 4, 6, 7, 8, 9, 10, 11].includes(e.value) }),
|
|
|
+ locked: true,
|
|
|
+ }
|
|
|
]
|
|
|
|
|
|
-const onSearch = (clear = false) => {
|
|
|
- if (clear) {
|
|
|
- filterDate.value = []
|
|
|
+filterOptons.buttonList = [
|
|
|
+ {
|
|
|
+ lable: '查询',
|
|
|
+ className: 'el-button--info',
|
|
|
+ onClick: () => {
|
|
|
+ pageIndex.value = 1
|
|
|
+ onSearch()
|
|
|
+ }
|
|
|
}
|
|
|
+]
|
|
|
+
|
|
|
+const loadMore = () => {
|
|
|
+ pageIndex.value++
|
|
|
+ onSearch()
|
|
|
+}
|
|
|
+
|
|
|
+const onSearch = () => {
|
|
|
getQueryParams((qs) => {
|
|
|
- qs.startDate = filterDate.value[0]
|
|
|
- qs.endDate = filterDate.value[1]
|
|
|
+ qs.startDate = startDate.value
|
|
|
+ qs.endDate = endDate.value
|
|
|
run(qs)
|
|
|
- }, clear)
|
|
|
+ })
|
|
|
}
|
|
|
-
|
|
|
</script>
|