diff --git a/src/api/wms/order/check/detail/index.ts b/src/api/wms/order/check/detail/index.ts new file mode 100644 index 000000000..cc6cc3f5e --- /dev/null +++ b/src/api/wms/order/check/detail/index.ts @@ -0,0 +1,29 @@ +// WMS 盘库单明细 VO +export interface CheckOrderDetailVO { + id?: number + orderId?: number + itemId?: number + itemCode?: string + itemName?: string + unit?: string + skuId?: number + skuCode?: string + skuName?: string + inventoryId?: number + inventoryDetailId?: number + warehouseId?: number + warehouseName?: string + areaId?: number + areaName?: string + batchNo?: string + productionDate?: Date + expirationDate?: Date + receiptTime?: Date + quantity?: number + checkQuantity?: number + differenceQuantity?: number + availableQuantity?: number + amount?: number + remark?: string + createTime?: Date +} diff --git a/src/api/wms/order/check/index.ts b/src/api/wms/order/check/index.ts new file mode 100644 index 000000000..be3c3dbbd --- /dev/null +++ b/src/api/wms/order/check/index.ts @@ -0,0 +1,73 @@ +import request from '@/config/axios' +import { CheckOrderDetailVO } from './detail' + +// WMS 盘库单 VO +export interface CheckOrderVO { + id?: number + no?: string + status?: number + remark?: string + warehouseId?: number + warehouseName?: string + areaId?: number + areaName?: string + totalQuantity?: number + totalAmount?: number + details?: CheckOrderDetailVO[] + createTime?: Date + creator?: string + creatorName?: string + updateTime?: Date + updater?: string + updaterName?: string +} + +// WMS 盘库单 API +export const CheckOrderApi = { + // 查询盘库单分页 + getCheckOrderPage: async (params: any) => { + return await request.get({ url: '/wms/check-order/page', params }) + }, + + // 查询盘库单详情 + getCheckOrder: async (id: number) => { + return await request.get({ url: '/wms/check-order/get?id=' + id }) + }, + + // 查询盘库单明细 + getCheckOrderDetailListByOrderId: async (orderId: number) => { + return await request.get({ + url: '/wms/check-order-detail/list-by-order-id?orderId=' + orderId + }) + }, + + // 新增盘库单 + createCheckOrder: async (data: CheckOrderVO) => { + return await request.post({ url: '/wms/check-order/create', data }) + }, + + // 修改盘库单 + updateCheckOrder: async (data: CheckOrderVO) => { + return await request.put({ url: '/wms/check-order/update', data }) + }, + + // 完成盘库 + completeCheckOrder: async (id: number) => { + return await request.put({ url: '/wms/check-order/complete?id=' + id }) + }, + + // 作废盘库单 + cancelCheckOrder: async (id: number) => { + return await request.put({ url: '/wms/check-order/cancel?id=' + id }) + }, + + // 删除盘库单 + deleteCheckOrder: async (id: number) => { + return await request.delete({ url: '/wms/check-order/delete?id=' + id }) + }, + + // 导出盘库单 + exportCheckOrder: async (params: any) => { + return await request.download({ url: '/wms/check-order/export-excel', params }) + } +} diff --git a/src/api/wms/order/movement/detail/index.ts b/src/api/wms/order/movement/detail/index.ts new file mode 100644 index 000000000..4c10f3d2d --- /dev/null +++ b/src/api/wms/order/movement/detail/index.ts @@ -0,0 +1,29 @@ +// WMS 移库单明细 VO +export interface MovementOrderDetailVO { + id?: number + orderId?: number + itemId?: number + itemCode?: string + itemName?: string + unit?: string + skuId?: number + skuCode?: string + skuName?: string + inventoryDetailId?: number + sourceWarehouseId?: number + sourceWarehouseName?: string + sourceAreaId?: number + sourceAreaName?: string + targetWarehouseId?: number + targetWarehouseName?: string + targetAreaId?: number + targetAreaName?: string + batchNo?: string + productionDate?: Date + expirationDate?: Date + quantity?: number + availableQuantity?: number + amount?: number + remark?: string + createTime?: Date +} diff --git a/src/api/wms/order/movement/index.ts b/src/api/wms/order/movement/index.ts new file mode 100644 index 000000000..b5fcf41a9 --- /dev/null +++ b/src/api/wms/order/movement/index.ts @@ -0,0 +1,77 @@ +import request from '@/config/axios' +import { MovementOrderDetailVO } from './detail' + +// WMS 移库单 VO +export interface MovementOrderVO { + id?: number + no?: string + status?: number + remark?: string + sourceWarehouseId?: number + sourceWarehouseName?: string + sourceAreaId?: number + sourceAreaName?: string + targetWarehouseId?: number + targetWarehouseName?: string + targetAreaId?: number + targetAreaName?: string + totalQuantity?: number + totalAmount?: number + details?: MovementOrderDetailVO[] + createTime?: Date + creator?: string + creatorName?: string + updateTime?: Date + updater?: string + updaterName?: string +} + +// WMS 移库单 API +export const MovementOrderApi = { + // 查询移库单分页 + getMovementOrderPage: async (params: any) => { + return await request.get({ url: '/wms/movement-order/page', params }) + }, + + // 查询移库单详情 + getMovementOrder: async (id: number) => { + return await request.get({ url: '/wms/movement-order/get?id=' + id }) + }, + + // 查询移库单明细 + getMovementOrderDetailListByOrderId: async (orderId: number) => { + return await request.get({ + url: '/wms/movement-order-detail/list-by-order-id?orderId=' + orderId + }) + }, + + // 新增移库单 + createMovementOrder: async (data: MovementOrderVO) => { + return await request.post({ url: '/wms/movement-order/create', data }) + }, + + // 修改移库单 + updateMovementOrder: async (data: MovementOrderVO) => { + return await request.put({ url: '/wms/movement-order/update', data }) + }, + + // 完成移库 + completeMovementOrder: async (id: number) => { + return await request.put({ url: '/wms/movement-order/complete?id=' + id }) + }, + + // 作废移库单 + cancelMovementOrder: async (id: number) => { + return await request.put({ url: '/wms/movement-order/cancel?id=' + id }) + }, + + // 删除移库单 + deleteMovementOrder: async (id: number) => { + return await request.delete({ url: '/wms/movement-order/delete?id=' + id }) + }, + + // 导出移库单 + exportMovementOrder: async (params: any) => { + return await request.download({ url: '/wms/movement-order/export-excel', params }) + } +} diff --git a/src/views/wms/order/check/CheckOrderDetail.vue b/src/views/wms/order/check/CheckOrderDetail.vue new file mode 100644 index 000000000..537d3b1c9 --- /dev/null +++ b/src/views/wms/order/check/CheckOrderDetail.vue @@ -0,0 +1,107 @@ + + + + + 单据信息 + + {{ detailData.no || '-' }} + + + - + + {{ detailData.warehouseName || '-' }} + {{ detailData.areaName || '-' }} + + {{ formatQuantity(detailData.totalQuantity) || '-' }} + + + {{ formatPrice(detailData.totalAmount) || '-' }} + + + {{ formatNullableDate(detailData.createTime) }} + + + {{ detailData.creatorName || detailData.creator || '-' }} + + + {{ formatNullableDate(detailData.updateTime) }} + + + {{ detailData.updaterName || detailData.updater || '-' }} + + {{ detailData.remark || '-' }} + + + 商品明细 + + + + {{ row.itemName || '-' }} + 商品编号:{{ row.itemCode }} + + + + + {{ row.skuName || '-' }} + 规格编号:{{ row.skuCode }} + + + + + {{ formatQuantity(row.quantity) || '-' }} + + + {{ formatQuantity(row.checkQuantity) || '-' }} + + + {{ formatQuantity(row.differenceQuantity) || '-' }} + + + {{ formatPrice(row.amount) || '-' }} + + + + + + + diff --git a/src/views/wms/order/check/CheckOrderForm.vue b/src/views/wms/order/check/CheckOrderForm.vue new file mode 100644 index 000000000..cddadf2a3 --- /dev/null +++ b/src/views/wms/order/check/CheckOrderForm.vue @@ -0,0 +1,388 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 盘库明细 + + + + + 添加商品 + + + + + + + + {{ row.itemName || '-' }} + 商品编号:{{ row.itemCode }} + + + + + {{ row.skuName || '-' }} + 规格编号:{{ row.skuCode }} + + + + + {{ formatQuantity(row.quantity) || '-' }} + + + + + + + + {{ formatQuantity(getDifferenceQuantity(row)) }} + + + + + + + + + + + + + + 删除 + + + + + + + + + + 完成盘库 + + + 作废 + + + + 保存 + 取 消 + + + + + + + diff --git a/src/views/wms/order/check/index.vue b/src/views/wms/order/check/index.vue new file mode 100644 index 000000000..001571b4c --- /dev/null +++ b/src/views/wms/order/check/index.vue @@ -0,0 +1,284 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + + + + 重置 + + + + 新增 + + + + 导出 + + + + + + + + + + + + + {{ detail.itemName || '-' }} + 商品编号:{{ detail.itemCode }} + + + + + {{ detail.skuName || '-' }} + 规格编号:{{ detail.skuCode }} + + + + + {{ formatQuantity(detail.quantity) }} + + + {{ formatQuantity(detail.checkQuantity) }} + + + {{ formatQuantity(detail.differenceQuantity) }} + + + + + + + 单号: + {{ row.no }} + + + + + + + + + + + 仓库:{{ row.warehouseName || '-' }} + 库区:{{ row.areaName || '-' }} + + {{ row.warehouseName || '-' }} + + + + + + 数量: + {{ formatQuantity(row.totalQuantity) }} + + + 金额: + {{ formatPrice(row.totalAmount) }} + + + + + + 创建:{{ formatNullableDate(row.createTime) }} / {{ row.creatorName || row.creator || '-' }} + 更新:{{ formatNullableDate(row.updateTime) }} / {{ row.updaterName || row.updater || '-' }} + + + + + + + + + 修改 + + + + + + + 删除 + + + + + + + + + + + + + + diff --git a/src/views/wms/order/movement/MovementOrderDetail.vue b/src/views/wms/order/movement/MovementOrderDetail.vue new file mode 100644 index 000000000..7f6cc6b64 --- /dev/null +++ b/src/views/wms/order/movement/MovementOrderDetail.vue @@ -0,0 +1,112 @@ + + + + + 单据信息 + + {{ detailData.no || '-' }} + + + - + + + + {{ detailData.sourceWarehouseName || '-' }} / {{ detailData.sourceAreaName || '-' }} + + {{ detailData.sourceWarehouseName || '-' }} + + + + {{ detailData.targetWarehouseName || '-' }} / {{ detailData.targetAreaName || '-' }} + + {{ detailData.targetWarehouseName || '-' }} + + + {{ formatQuantity(detailData.totalQuantity) || '-' }} + + + {{ formatPrice(detailData.totalAmount) || '-' }} + + + {{ formatNullableDate(detailData.createTime) }} + + + {{ detailData.creatorName || detailData.creator || '-' }} + + + {{ formatNullableDate(detailData.updateTime) }} + + + {{ detailData.updaterName || detailData.updater || '-' }} + + + {{ detailData.remark || '-' }} + + + + 商品明细 + + + + {{ row.itemName || '-' }} + 商品编号:{{ row.itemCode }} + + + + + {{ row.skuName || '-' }} + 规格编号:{{ row.skuCode }} + + + + + {{ formatQuantity(row.quantity) || '-' }} + + + {{ formatPrice(row.amount) || '-' }} + + + + + + + + diff --git a/src/views/wms/order/movement/MovementOrderForm.vue b/src/views/wms/order/movement/MovementOrderForm.vue new file mode 100644 index 000000000..94d3194c6 --- /dev/null +++ b/src/views/wms/order/movement/MovementOrderForm.vue @@ -0,0 +1,439 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 移库明细 + + + + + 添加商品 + + + + + + + + {{ row.itemName || '-' }} + 商品编号:{{ row.itemCode }} + + + + + {{ row.skuName || '-' }} + 规格编号:{{ row.skuCode }} + + + + + + {{ formatQuantity(row.availableQuantity) || '-' }} + + + + + + + + + + + + + + + + + + + 删除 + + + + + + + + + + 完成移库 + + + 作废 + + + + 保存 + 取 消 + + + + + + + diff --git a/src/views/wms/order/movement/index.vue b/src/views/wms/order/movement/index.vue new file mode 100644 index 000000000..4469b2535 --- /dev/null +++ b/src/views/wms/order/movement/index.vue @@ -0,0 +1,287 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + + + + 重置 + + + + 新增 + + + + 导出 + + + + + + + + + + + + + {{ detail.itemName || '-' }} + 商品编号:{{ detail.itemCode }} + + + + + {{ detail.skuName || '-' }} + 规格编号:{{ detail.skuCode }} + + + + + {{ formatQuantity(detail.quantity) }} + + + {{ formatPrice(detail.amount) || '-' }} + + + + + + + + 单号: + {{ row.no }} + + + + + + + + + + + 仓库:{{ row.sourceWarehouseName || '-' }} + 库区:{{ row.sourceAreaName || '-' }} + + {{ row.sourceWarehouseName || '-' }} + + + + + + 仓库:{{ row.targetWarehouseName || '-' }} + 库区:{{ row.targetAreaName || '-' }} + + {{ row.targetWarehouseName || '-' }} + + + + + + 数量: + {{ formatQuantity(row.totalQuantity) }} + + + 金额: + {{ formatPrice(row.totalAmount) }} + + + + + + 创建:{{ formatNullableDate(row.createTime) }} / {{ row.creatorName || row.creator || '-' }} + 更新:{{ formatNullableDate(row.updateTime) }} / {{ row.updaterName || row.updater || '-' }} + + + + + + + + + 修改 + + + + + + + 删除 + + + + + + + + + + + + + +