feat(api): 添加电子围栏功能并重构仓库模块

- 新增 shopStoreFence 模块,包含完整的CRUD接口和数据模型
- 将 shopWarehouse 重命名为 shopStoreWarehouse 并更新相关接口
- 配置文件中切换API_BASE_URL到生产环境地址
- 地址管理页面标题从"地址管理"改为"配送管理"
- 配送员页面收益描述从"工资收入"改为"本月配送佣金"
- 用户地址列表增加每月修改次数限制逻辑
- 更新地址数据模型增加updateTime字段
- 页面组件中的收货地址文案统一改为配送地址
- 移除用户优惠券页面中不必要的导航链接
This commit is contained in:
2026-02-07 18:52:35 +08:00
parent 7fb74e9977
commit 1ce6381248
12 changed files with 220 additions and 37 deletions

View File

@@ -0,0 +1,101 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api/index';
import type { ShopStoreFence, ShopStoreFenceParam } from './model';
/**
* 分页查询黄家明_电子围栏
*/
export async function pageShopStoreFence(params: ShopStoreFenceParam) {
const res = await request.get<ApiResult<PageResult<ShopStoreFence>>>(
'/shop/shop-store-fence/page',
params
);
if (res.code === 0) {
return res.data;
}
return Promise.reject(new Error(res.message));
}
/**
* 查询黄家明_电子围栏列表
*/
export async function listShopStoreFence(params?: ShopStoreFenceParam) {
const res = await request.get<ApiResult<ShopStoreFence[]>>(
'/shop/shop-store-fence',
params
);
if (res.code === 0 && res.data) {
return res.data;
}
return Promise.reject(new Error(res.message));
}
/**
* 添加黄家明_电子围栏
*/
export async function addShopStoreFence(data: ShopStoreFence) {
const res = await request.post<ApiResult<unknown>>(
'/shop/shop-store-fence',
data
);
if (res.code === 0) {
return res.message;
}
return Promise.reject(new Error(res.message));
}
/**
* 修改黄家明_电子围栏
*/
export async function updateShopStoreFence(data: ShopStoreFence) {
const res = await request.put<ApiResult<unknown>>(
'/shop/shop-store-fence',
data
);
if (res.code === 0) {
return res.message;
}
return Promise.reject(new Error(res.message));
}
/**
* 删除黄家明_电子围栏
*/
export async function removeShopStoreFence(id?: number) {
const res = await request.del<ApiResult<unknown>>(
'/shop/shop-store-fence/' + id
);
if (res.code === 0) {
return res.message;
}
return Promise.reject(new Error(res.message));
}
/**
* 批量删除黄家明_电子围栏
*/
export async function removeBatchShopStoreFence(data: (number | undefined)[]) {
const res = await request.del<ApiResult<unknown>>(
'/shop/shop-store-fence/batch',
{
data
}
);
if (res.code === 0) {
return res.message;
}
return Promise.reject(new Error(res.message));
}
/**
* 根据id查询黄家明_电子围栏
*/
export async function getShopStoreFence(id: number) {
const res = await request.get<ApiResult<ShopStoreFence>>(
'/shop/shop-store-fence/' + id
);
if (res.code === 0 && res.data) {
return res.data;
}
return Promise.reject(new Error(res.message));
}

View File

@@ -0,0 +1,43 @@
import type { PageParam } from '@/api/index';
/**
* 黄家明_电子围栏
*/
export interface ShopStoreFence {
// 自增ID
id?: number;
// 围栏名称
name?: string;
// 类型 0圆形 1方形
type?: number;
// 定位
location?: string;
// 经度
longitude?: string;
// 纬度
latitude?: string;
// 区域
district?: string;
// 电子围栏轮廓
points?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1冻结
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 黄家明_电子围栏搜索条件
*/
export interface ShopStoreFenceParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,13 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ShopWarehouse, ShopWarehouseParam } from './model';
import type { ApiResult, PageResult } from '@/api/index';
import type { ShopStoreWarehouse, ShopStoreWarehouseParam } from './model';
/**
*
*/
export async function pageShopWarehouse(params: ShopWarehouseParam) {
const res = await request.get<ApiResult<PageResult<ShopWarehouse>>>(
'/shop/shop-warehouse/page',
export async function pageShopStoreWarehouse(params: ShopStoreWarehouseParam) {
const res = await request.get<ApiResult<PageResult<ShopStoreWarehouse>>>(
'/shop/shop-store-warehouse/page',
params
);
if (res.code === 0) {
@@ -19,9 +19,9 @@ export async function pageShopWarehouse(params: ShopWarehouseParam) {
/**
*
*/
export async function listShopWarehouse(params?: ShopWarehouseParam) {
const res = await request.get<ApiResult<ShopWarehouse[]>>(
'/shop/shop-warehouse',
export async function listShopStoreWarehouse(params?: ShopStoreWarehouseParam) {
const res = await request.get<ApiResult<ShopStoreWarehouse[]>>(
'/shop/shop-store-warehouse',
params
);
if (res.code === 0 && res.data) {
@@ -33,9 +33,9 @@ export async function listShopWarehouse(params?: ShopWarehouseParam) {
/**
*
*/
export async function addShopWarehouse(data: ShopWarehouse) {
export async function addShopStoreWarehouse(data: ShopStoreWarehouse) {
const res = await request.post<ApiResult<unknown>>(
'/shop/shop-warehouse',
'/shop/shop-store-warehouse',
data
);
if (res.code === 0) {
@@ -47,9 +47,9 @@ export async function addShopWarehouse(data: ShopWarehouse) {
/**
*
*/
export async function updateShopWarehouse(data: ShopWarehouse) {
export async function updateShopStoreWarehouse(data: ShopStoreWarehouse) {
const res = await request.put<ApiResult<unknown>>(
'/shop/shop-warehouse',
'/shop/shop-store-warehouse',
data
);
if (res.code === 0) {
@@ -61,9 +61,9 @@ export async function updateShopWarehouse(data: ShopWarehouse) {
/**
*
*/
export async function removeShopWarehouse(id?: number) {
export async function removeShopStoreWarehouse(id?: number) {
const res = await request.del<ApiResult<unknown>>(
'/shop/shop-warehouse/' + id
'/shop/shop-store-warehouse/' + id
);
if (res.code === 0) {
return res.message;
@@ -74,9 +74,9 @@ export async function removeShopWarehouse(id?: number) {
/**
*
*/
export async function removeBatchShopWarehouse(data: (number | undefined)[]) {
export async function removeBatchShopStoreWarehouse(data: (number | undefined)[]) {
const res = await request.del<ApiResult<unknown>>(
'/shop/shop-warehouse/batch',
'/shop/shop-store-warehouse/batch',
{
data
}
@@ -90,9 +90,9 @@ export async function removeBatchShopWarehouse(data: (number | undefined)[]) {
/**
* id查询仓库
*/
export async function getShopWarehouse(id: number) {
const res = await request.get<ApiResult<ShopWarehouse>>(
'/shop/shop-warehouse/' + id
export async function getShopStoreWarehouse(id: number) {
const res = await request.get<ApiResult<ShopStoreWarehouse>>(
'/shop/shop-store-warehouse/' + id
);
if (res.code === 0 && res.data) {
return res.data;

View File

@@ -1,9 +1,9 @@
import type { PageParam } from '@/api';
import type { PageParam } from '@/api/index';
/**
*
*/
export interface ShopWarehouse {
export interface ShopStoreWarehouse {
// 自增ID
id?: number;
// 仓库名称
@@ -18,12 +18,12 @@ export interface ShopWarehouse {
realName?: string;
// 联系电话
phone?: string;
// 省份
// 所在省份
province?: string;
// 城市
city: undefined,
// 区
region: undefined,
// 所在城市
city?: string;
// 所在辖
region?: string;
// 经纬度
lngAndLat?: string;
// 用户ID
@@ -34,8 +34,6 @@ export interface ShopWarehouse {
sortNumber?: number;
// 是否删除
isDelete?: number;
// 状态
status?: number;
// 租户id
tenantId?: number;
// 创建时间
@@ -47,7 +45,7 @@ export interface ShopWarehouse {
/**
*
*/
export interface ShopWarehouseParam extends PageParam {
export interface ShopStoreWarehouseParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -38,6 +38,8 @@ export interface ShopUserAddress {
tenantId?: number;
// 注册时间
createTime?: string;
// 更新时间
updateTime?: string;
}
/**