提交 d7d941a5 authored 作者: 刘旭's avatar 刘旭

完成会员收藏,收货地址,行政区分页面

上级 b2551926
......@@ -46,9 +46,6 @@ let props = defineProps({
}
})
console.log(props);
let emits = defineEmits(['sizeChange', 'currentChange'])
// 新条数
......
......@@ -6,7 +6,7 @@ export function listOrder(query: any) {
url: '/order/list',
method: 'get',
params: query,
paramsSerializer: function (params: any) {
paramsSerializer: (params: any) => {
return Qs.stringify(params, { arrayFormat: 'repeat' })
}
})
......
import { request } from '../config'
export function listRegion() {
return request({
url: '/region/list',
method: 'get'
})
}
export function listSubRegion(params: any) {
return request({
url: '/region/clist',
method: 'get',
params
})
}
\ No newline at end of file
......@@ -398,12 +398,10 @@ let currentChange = (val: number) => {
let dataChange = (datatime: any) => {
listQuery.timeArray = datatime
console.log(datatime);
}
let selectChange = (val: any) => {
listQuery.orderStatusArray = val
console.log(val);
}
let handleFilter = () => {
......
<template>
<div class="app-container">
<el-table v-loading="listLoading" :data="list" element-loading-text="正在查询中。。。" row-key="id"
style="width: 100%;margin-bottom: 20px;" border>
<el-table-column label="区域名称" prop="name" />
<el-table-column label="区域类型" prop="type">
<template #default="scope">
{{ typeMap[scope.row.type] }}
</template>
</el-table-column>
<el-table-column label="区域编码" prop="code" />
</el-table>
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { listRegion } from '@/services/api/market/region'
let typeMap = {
'1': '省',
'2': '市',
'3': '区'
} as any
let list = ref([])
let listLoading = ref(true)
let getList = () => {
listLoading.value = true
listRegion().then((res: any) => {
if (res.code === 200) {
list.value = res.data.list
listLoading.value = false
}
}).catch(() => {
list.value = []
listLoading.value = false
})
}
getList()
</script>
<template>
<div class="app-container">
<!-- 查询和其他操作 -->
<div class="filter-container">
<el-input v-model="listQuery.userId" clearable class="filter-item" style="width: 200px;"
placeholder="请输入用户ID" />
<el-input v-model="listQuery.name" clearable class="filter-item" style="width: 200px;"
placeholder="请输入收货人名称" />
<el-button class="filter-item" type="primary" icon="search" @click="handleFilter">查找</el-button>
<el-button :loading="downloadLoading" class="filter-item" type="primary" icon="download"
@click="handleDownload">导出</el-button>
</div>
<!-- 查询结果 -->
<el-table v-loading="listLoading" :data="list" element-loading-text="正在查询中。。。" border fit highlight-current-row>
<el-table-column align="center" width="100px" label="地址ID" prop="id" sortable />
<el-table-column align="center" min-width="100px" label="用户ID" prop="userId" />
<el-table-column align="center" min-width="100px" label="收货人名称" prop="name" />
<el-table-column align="center" min-width="100px" label="手机号码" prop="tel" />
<el-table-column align="center" min-width="300px" label="区域地址">
<template #default="scope">
{{ scope.row.province + scope.row.city + scope.row.county }}
</template>
</el-table-column>
<el-table-column align="center" min-width="300px" label="详细地址" prop="addressDetail" />
<el-table-column align="center" min-width="80px" label="默认" prop="isDefault">
<template #default="scope">
{{ scope.row.isDefault ? '是' : '否' }}
</template>
</el-table-column>
</el-table>
<litemall-page :page-data="listQuery" :total="total" @size-change="sizeChange"
@current-change="currentChange" />
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { listAddress } from '@/services/api/user/user'
import LitemallPage from "@/components/pagination/litemallPage.vue";
let list = ref(null as any)
let total = ref(0)
let listLoading = ref(true)
let listQuery = ref({
page: 1,
limit: 10,
name: undefined,
userId: undefined,
sort: 'add_time',
order: 'desc'
})
let downloadLoading = ref(false)
let getList = () => {
listLoading.value = true
listAddress(listQuery.value).then((res: any) => {
list.value = res.data.list
total.value = res.data.total
listLoading.value = false
}).catch(() => {
list.value = []
total.value = 0
listLoading.value = false
})
}
getList()
let sizeChange = (val: number) => {
listQuery.value.limit = val
getList()
}
let currentChange = (val: number) => {
listQuery.value.page = val
getList()
}
let handleFilter = () => {
listQuery.value.page = 1
getList()
}
let handleDownload = () => {
// downloadLoading.value = true
// import('@/vendor/Export2Excel').then(excel => {
// const tHeader = ['地址ID', '用户ID', '收货人', '手机号', '省', '市', '区', '地址', '是否默认']
// const filterVal = ['id', 'userId', 'name', 'tel', 'province', 'city', 'county', 'addressDetail', 'isDefault']
// excel.export_json_to_excel2(tHeader, list, filterVal, '用户地址信息')
// downloadLoading.value = false
// })
}
</script>
<template>
<div class="app-container">
<!-- 查询和其他操作 -->
<div class="filter-container">
<el-input v-model="listQuery.userId" clearable class="filter-item" style="width: 200px;"
placeholder="请输入用户ID" />
<el-input v-model="listQuery.valueId" clearable class="filter-item" style="width: 200px;"
placeholder="请输入商品ID" />
<el-button class="filter-item" type="primary" icon="search" @click="handleFilter">查找</el-button>
<el-button :loading="downloadLoading" class="filter-item" type="primary" icon="download"
@click="handleDownload">导出</el-button>
</div>
<!-- 查询结果 -->
<el-table v-loading="listLoading" :data="list" element-loading-text="正在查询中。。。" border fit highlight-current-row>
<el-table-column align="center" width="100px" label="收藏ID" prop="id" sortable />
<el-table-column align="center" min-width="100px" label="用户ID" prop="userId" />
<el-table-column align="center" min-width="100px" label="商品ID" prop="valueId" />
<el-table-column align="center" min-width="100px" label="添加时间" prop="addTime" />
</el-table>
<litemall-page :page-data="listQuery" :total="total" @size-change="sizeChange"
@current-change="currentChange" />
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { listCollect } from '@/services/api/user/user'
import LitemallPage from "@/components/pagination/litemallPage.vue";
let list = ref(null as any)
let total = ref(0)
let listLoading = ref(true)
let listQuery = ref({
page: 1,
limit: 10,
userId: undefined,
valueId: undefined,
sort: 'add_time',
order: 'desc'
})
let downloadLoading = ref(false)
let getList = () => {
listLoading.value = true
listCollect(listQuery.value).then((res: any) => {
list.value = res.data.list
total.value = res.data.total
listLoading.value = false
}).catch(() => {
list.value = []
total.value = 0
listLoading.value = false
})
}
getList()
let sizeChange = (val: number) => {
listQuery.value.limit = val
getList()
}
let currentChange = (val: number) => {
listQuery.value.page = val
getList()
}
let handleFilter = () => {
listQuery.value.page = 1
getList()
}
let handleDownload = () => {
// downloadLoading.value = true
// import('@/vendor/Export2Excel').then(excel => {
// const tHeader = ['用户ID', '商品ID', '添加时间']
// const filterVal = ['userId', 'valueId', 'addTime']
// excel.export_json_to_excel2(tHeader, list, filterVal, '用户收藏信息')
// downloadLoading.value = false
// })
}
</script>
......@@ -53,8 +53,6 @@
</el-table-column>
</el-table>
<!-- <pagination v-show="total > 0" :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit"
@pagination="getList" /> -->
<!-- 用户编辑对话框 -->
<el-dialog :visible.sync="userDialogVisible" title="用户编辑">
<el-form ref="userDetail" :model="userDetail" status-icon label-position="left" label-width="100px"
......
......@@ -89,7 +89,7 @@ export default ({ command, mode }) => {
// '/foo': '',
// 选项写法
"/admin": {
target: "http://192.168.0.9:8089/",
target: "http://192.168.0.23/",
// rewrite: (path) => path.replace(/^\/api/, '')
},
// 正则表达式写法
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论