227 lines
4.6 KiB
JavaScript
227 lines
4.6 KiB
JavaScript
/**
|
||
* 仓库服务 - 处理仓库管理、货架管理等
|
||
* @module services/warehouse
|
||
*/
|
||
import request from '@/utils/request'
|
||
|
||
/**
|
||
* 仓库相关 API
|
||
*/
|
||
export const warehouseApi = {
|
||
/**
|
||
* 获取仓库列表
|
||
* @returns {Promise<Array>} 仓库列表
|
||
*/
|
||
getList() {
|
||
return request({
|
||
url: '/zhishu/warehouse/list',
|
||
method: 'GET',
|
||
loading: true
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 获取仓库详情
|
||
* @param {String} id - 仓库 ID
|
||
* @returns {Promise<Object>} 仓库详情
|
||
*/
|
||
getDetail(id) {
|
||
return request({
|
||
url: `/zhishu/warehouse/${id}`,
|
||
method: 'GET'
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 创建仓库
|
||
* @param {Object} data - 仓库信息
|
||
* @param {String} data.name - 仓库名称
|
||
* @param {String} data.address - 仓库地址
|
||
* @param {String} data.remark - 备注
|
||
* @returns {Promise<Object>} 创建结果
|
||
*/
|
||
create(data) {
|
||
return request({
|
||
url: '/zhishu/warehouse/add',
|
||
method: 'POST',
|
||
data,
|
||
loading: true
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 更新仓库信息
|
||
* @param {String} id - 仓库 ID
|
||
* @param {Object} data - 仓库信息
|
||
* @returns {Promise<Object>} 更新结果
|
||
*/
|
||
update(id, data) {
|
||
return request({
|
||
url: `/zhishu/warehouse/${id}`,
|
||
method: 'PUT',
|
||
data
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 删除仓库
|
||
* @param {String} id - 仓库 ID
|
||
* @returns {Promise<Object>} 删除结果
|
||
*/
|
||
delete(id) {
|
||
return request({
|
||
url: `/zhishu/warehouse/${id}`,
|
||
method: 'DELETE',
|
||
loading: true
|
||
})
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 货架相关 API
|
||
*/
|
||
export const shelfApi = {
|
||
/**
|
||
* 获取货架列表
|
||
* @param {String} warehouseId - 仓库 ID
|
||
* @returns {Promise<Array>} 货架列表
|
||
*/
|
||
getList(warehouseId) {
|
||
return request({
|
||
url: '/zhishu/shelf/list',
|
||
method: 'GET',
|
||
data: { warehouseId }
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 创建货架
|
||
* @param {Object} data - 货架信息
|
||
* @param {String} data.warehouseId - 仓库 ID
|
||
* @param {String} data.name - 货架名称
|
||
* @param {String} data.code - 货架编码
|
||
* @returns {Promise<Object>} 创建结果
|
||
*/
|
||
create(data) {
|
||
return request({
|
||
url: '/zhishu/shelf/add',
|
||
method: 'POST',
|
||
data
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 更新货架信息
|
||
* @param {String} id - 货架 ID
|
||
* @param {Object} data - 货架信息
|
||
* @returns {Promise<Object>} 更新结果
|
||
*/
|
||
update(id, data) {
|
||
return request({
|
||
url: `/zhishu/shelf/${id}`,
|
||
method: 'PUT',
|
||
data
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 删除货架
|
||
* @param {String} id - 货架 ID
|
||
* @returns {Promise<Object>} 删除结果
|
||
*/
|
||
delete(id) {
|
||
return request({
|
||
url: `/zhishu/shelf/${id}`,
|
||
method: 'DELETE'
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 获取货架库存
|
||
* @param {String} shelfId - 货架 ID
|
||
* @returns {Promise<Array>} 库存列表
|
||
*/
|
||
getInventory(shelfId) {
|
||
return request({
|
||
url: `/zhishu/shelf/${shelfId}/inventory`,
|
||
method: 'GET'
|
||
})
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 订单查询 API
|
||
*/
|
||
export const orderApi = {
|
||
/**
|
||
* 查询订单列表
|
||
* @param {Object} params - 查询参数
|
||
* @param {String} params.warehouseId - 仓库 ID
|
||
* @param {String} params.status - 订单状态
|
||
* @param {Number} params.pageNum - 页码
|
||
* @param {Number} params.pageSize - 每页数量
|
||
* @returns {Promise<Object>} 订单列表
|
||
*/
|
||
getList(params) {
|
||
return request({
|
||
url: '/zhishu/order/list',
|
||
method: 'GET',
|
||
data: params
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 获取订单详情
|
||
* @param {String} orderId - 订单 ID
|
||
* @returns {Promise<Object>} 订单详情
|
||
*/
|
||
getDetail(orderId) {
|
||
return request({
|
||
url: `/zhishu/order/${orderId}`,
|
||
method: 'GET'
|
||
})
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 闪上书(快速上架)API
|
||
*/
|
||
export const quickShelfApi = {
|
||
/**
|
||
* 批量扫码上架
|
||
* @param {Array} items - 上架项目列表
|
||
* @param {String} items[].isbn - ISBN
|
||
* @param {String} items[].shelfId - 货架 ID
|
||
* @param {Number} items[].quantity - 数量
|
||
* @returns {Promise<Object>} 上架结果
|
||
*/
|
||
batchShelf(items) {
|
||
return request({
|
||
url: '/zhishu/quick-shelf/batch',
|
||
method: 'POST',
|
||
data: { items },
|
||
loading: true
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 获取上架历史
|
||
* @param {Number} pageNum - 页码
|
||
* @param {Number} pageSize - 每页数量
|
||
* @returns {Promise<Object>} 上架历史记录
|
||
*/
|
||
getHistory(pageNum = 1, pageSize = 20) {
|
||
return request({
|
||
url: '/zhishu/quick-shelf/history',
|
||
method: 'GET',
|
||
data: { pageNum, pageSize }
|
||
})
|
||
}
|
||
}
|
||
|
||
export default {
|
||
warehouse: warehouseApi,
|
||
shelf: shelfApi,
|
||
order: orderApi,
|
||
quickShelf: quickShelfApi
|
||
} |