diff --git a/apps/web-antd/src/views/member/user/detail/index.vue b/apps/web-antd/src/views/member/user/detail/index.vue
index 3ca8a3924..dc22d816b 100644
--- a/apps/web-antd/src/views/member/user/detail/index.vue
+++ b/apps/web-antd/src/views/member/user/detail/index.vue
@@ -22,6 +22,7 @@ import BalanceList from './modules/balance-list.vue';
import BasicInfo from './modules/basic-info.vue';
import CouponList from './modules/coupon-list.vue';
import ExperienceRecordList from './modules/experience-record-list.vue';
+import FavoriteList from './modules/favorite-list.vue';
import OrderList from './modules/order-list.vue';
import PointList from './modules/point-list.vue';
import SignList from './modules/sign-list.vue';
@@ -109,10 +110,7 @@ onMounted(async () => {
-
-
-
收藏记录
-
+
diff --git a/apps/web-antd/src/views/member/user/detail/modules/address-list.vue b/apps/web-antd/src/views/member/user/detail/modules/address-list.vue
index e94e2b19f..488058e07 100644
--- a/apps/web-antd/src/views/member/user/detail/modules/address-list.vue
+++ b/apps/web-antd/src/views/member/user/detail/modules/address-list.vue
@@ -2,9 +2,7 @@
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import type { MemberAddressApi } from '#/api/member/address';
-import { h } from 'vue';
-
-import { Tag } from 'ant-design-vue';
+import { DICT_TYPE } from '@vben/constants';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
import { getAddressList } from '#/api/member/address';
@@ -13,58 +11,52 @@ const props = defineProps<{
userId: number;
}>();
+const columns = [
+ {
+ field: 'id',
+ title: '地址编号',
+ minWidth: 100,
+ },
+ {
+ field: 'name',
+ title: '收件人名称',
+ minWidth: 120,
+ },
+ {
+ field: 'mobile',
+ title: '手机号',
+ minWidth: 130,
+ },
+ {
+ field: 'areaId',
+ title: '地区编码',
+ minWidth: 120,
+ },
+ {
+ field: 'detailAddress',
+ title: '收件详细地址',
+ minWidth: 200,
+ },
+ {
+ field: 'defaultStatus',
+ title: '是否默认',
+ minWidth: 100,
+ cellRender: {
+ name: 'CellDict',
+ props: { type: DICT_TYPE.INFRA_BOOLEAN_STRING },
+ },
+ },
+ {
+ field: 'createTime',
+ title: '创建时间',
+ formatter: 'formatDateTime',
+ minWidth: 160,
+ },
+];
+
const [Grid] = useVbenVxeGrid({
gridOptions: {
- columns: [
- {
- field: 'id',
- title: '地址编号',
- minWidth: 100,
- },
- {
- field: 'name',
- title: '收件人名称',
- minWidth: 120,
- },
- {
- field: 'mobile',
- title: '手机号',
- minWidth: 130,
- },
- {
- field: 'areaId',
- title: '地区编码',
- minWidth: 120,
- },
- {
- field: 'detailAddress',
- title: '收件详细地址',
- minWidth: 200,
- },
- {
- field: 'defaultStatus',
- title: '是否默认',
- minWidth: 100,
- slots: {
- default: ({ row }) => {
- return h(
- Tag,
- {
- class: 'mr-1',
- color: row.defaultStatus ? 'blue' : 'red',
- },
- () => (row.defaultStatus ? '是' : '否'),
- );
- },
- },
- },
- {
- field: 'createTime',
- title: '创建时间',
- minWidth: 180,
- formatter: 'formatDateTime',
- },
- ],
+ columns,
keepSource: true,
pagerConfig: {
enabled: false,
diff --git a/apps/web-ele/src/views/member/user/detail/modules/user-favorite-list.vue b/apps/web-antd/src/views/member/user/detail/modules/favorite-list.vue
similarity index 53%
rename from apps/web-ele/src/views/member/user/detail/modules/user-favorite-list.vue
rename to apps/web-antd/src/views/member/user/detail/modules/favorite-list.vue
index 2c12a7ca7..f91a2c3e0 100644
--- a/apps/web-ele/src/views/member/user/detail/modules/user-favorite-list.vue
+++ b/apps/web-antd/src/views/member/user/detail/modules/favorite-list.vue
@@ -11,59 +11,64 @@ const props = defineProps<{
userId: number;
}>();
+const columns = [
+ {
+ field: 'id',
+ title: '商品编号',
+ minWidth: 100,
+ },
+ {
+ field: 'picUrl',
+ title: '商品图',
+ minWidth: 100,
+ cellRender: {
+ name: 'CellImage',
+ props: {
+ width: 24,
+ height: 24,
+ },
+ },
+ },
+ {
+ field: 'name',
+ title: '商品名称',
+ minWidth: 200,
+ },
+ {
+ field: 'price',
+ title: '商品售价',
+ formatter: 'formatAmount2',
+ minWidth: 120,
+ },
+ {
+ field: 'salesCount',
+ title: '销量',
+ minWidth: 100,
+ },
+ {
+ field: 'createTime',
+ title: '收藏时间',
+ formatter: 'formatDateTime',
+ minWidth: 160,
+ },
+ {
+ field: 'status',
+ title: '状态',
+ minWidth: 100,
+ cellRender: {
+ name: 'CellDict',
+ props: { type: DICT_TYPE.PRODUCT_SPU_STATUS },
+ },
+ },
+];
+
const [Grid] = useVbenVxeGrid({
gridOptions: {
- columns: [
- {
- field: 'id',
- title: '商品编号',
- },
- {
- field: 'picUrl',
- title: '商品图',
- cellRender: {
- name: 'CellImage',
- props: {
- height: 40,
- width: 40,
- },
- },
- },
- {
- field: 'name',
- title: '商品名称',
- },
- {
- field: 'price',
- title: '商品售价',
- },
- {
- field: 'salesCount',
- title: '销量',
- },
- {
- field: 'createTime',
- title: '收藏时间',
- formatter: 'formatDateTime',
- },
- {
- field: 'status',
- title: '状态',
- cellRender: {
- name: 'CellDict',
- props: { type: DICT_TYPE.PRODUCT_SPU_STATUS },
- },
- },
- ],
+ columns,
keepSource: true,
pagerConfig: {
pageSize: 10,
},
- expandConfig: {
- trigger: 'row',
- expandAll: true,
- padding: true,
- },
proxyConfig: {
ajax: {
query: async ({ page }, formValues) => {
@@ -78,13 +83,13 @@ const [Grid] = useVbenVxeGrid({
},
rowConfig: {
keyField: 'id',
+ isHover: true,
},
toolbarConfig: {
refresh: true,
search: true,
},
} as VxeTableGridOptions,
- separator: false,
});
diff --git a/apps/web-ele/src/views/member/user/detail/index.vue b/apps/web-ele/src/views/member/user/detail/index.vue
index 2e53412f2..025390443 100644
--- a/apps/web-ele/src/views/member/user/detail/index.vue
+++ b/apps/web-ele/src/views/member/user/detail/index.vue
@@ -16,17 +16,17 @@ import { $t } from '#/locales';
import Form from '../modules/form.vue';
import AccountInfo from './modules/account-info.vue';
+import AddressList from './modules/address-list.vue';
import AfterSaleList from './modules/after-sale-list.vue';
import BalanceList from './modules/balance-list.vue';
import BasicInfo from './modules/basic-info.vue';
import CouponList from './modules/coupon-list.vue';
import ExperienceRecordList from './modules/experience-record-list.vue';
+import FavoriteList from './modules/favorite-list.vue';
import OrderList from './modules/order-list.vue';
import PointList from './modules/point-list.vue';
import SignList from './modules/sign-list.vue';
-import UserAddressList from './modules/user-address-list.vue';
import UserBrokerageList from './modules/user-brokerage-list.vue';
-import UserFavoriteList from './modules/user-favorite-list.vue';
const route = useRoute();
const { closeCurrentTab, refreshTab } = useTabs();
@@ -104,7 +104,7 @@ onMounted(async () => {
-
+
@@ -113,10 +113,7 @@ onMounted(async () => {
-
-
-
-
+
diff --git a/apps/web-ele/src/views/member/user/detail/modules/address-list.vue b/apps/web-ele/src/views/member/user/detail/modules/address-list.vue
new file mode 100644
index 000000000..488058e07
--- /dev/null
+++ b/apps/web-ele/src/views/member/user/detail/modules/address-list.vue
@@ -0,0 +1,87 @@
+
+
+
+
+
diff --git a/apps/web-ele/src/views/member/user/detail/modules/favorite-list.vue b/apps/web-ele/src/views/member/user/detail/modules/favorite-list.vue
new file mode 100644
index 000000000..f91a2c3e0
--- /dev/null
+++ b/apps/web-ele/src/views/member/user/detail/modules/favorite-list.vue
@@ -0,0 +1,98 @@
+
+
+
+
+
diff --git a/apps/web-ele/src/views/member/user/detail/modules/user-address-list.vue b/apps/web-ele/src/views/member/user/detail/modules/user-address-list.vue
deleted file mode 100644
index a897234fd..000000000
--- a/apps/web-ele/src/views/member/user/detail/modules/user-address-list.vue
+++ /dev/null
@@ -1,94 +0,0 @@
-
-
-
-
-